/usr/bin/ld: /tmp/cch01q11.o: in function `main':
stub.cpp:(.text.startup+0x128): undefined reference to `init(int, int, std::vector<int, std::allocator<int> >, std::vector<int, std::allocator<int> >)'
/usr/bin/ld: stub.cpp:(.text.startup+0x169): undefined reference to `count_ways(int, int)'
/usr/bin/ld: /tmp/ccMsw0A1.o: in function `clear()':
circuit.cpp:(.text+0xbd): undefined reference to `move_outside(int)'
/usr/bin/ld: /tmp/ccMsw0A1.o: in function `calc(int, int)':
circuit.cpp:(.text+0x135): undefined reference to `move_outside(int)'
/usr/bin/ld: circuit.cpp:(.text+0x16c): undefined reference to `move_inside(int)'
/usr/bin/ld: circuit.cpp:(.text+0x171): undefined reference to `press_button()'
/usr/bin/ld: circuit.cpp:(.text+0x1f0): undefined reference to `move_inside(int)'
/usr/bin/ld: circuit.cpp:(.text+0x1f5): undefined reference to `press_button()'
/usr/bin/ld: circuit.cpp:(.text+0x213): undefined reference to `move_outside(int)'
/usr/bin/ld: circuit.cpp:(.text+0x221): undefined reference to `press_button()'
/usr/bin/ld: circuit.cpp:(.text+0x266): undefined reference to `move_outside(int)'
/usr/bin/ld: /tmp/ccMsw0A1.o: in function `min_cardinality(int)':
circuit.cpp:(.text+0x2e7): undefined reference to `move_inside(int)'
/usr/bin/ld: circuit.cpp:(.text+0x2ec): undefined reference to `press_button()'
/usr/bin/ld: circuit.cpp:(.text+0x312): undefined reference to `move_outside(int)'
/usr/bin/ld: circuit.cpp:(.text+0x36b): undefined reference to `move_outside(int)'
/usr/bin/ld: /tmp/ccMsw0A1.o: in function `add(int)':
circuit.cpp:(.text+0x26): undefined reference to `move_inside(int)'
/usr/bin/ld: /tmp/ccMsw0A1.o: in function `del(int)':
circuit.cpp:(.text+0x56): undefined reference to `move_outside(int)'
collect2: error: ld returned 1 exit status