module_name="c432"
cp work/cpp_bits/${module_name}_o0.cpp  work/cpp_bits/${module_name}_o0_vec.cpp
vim 	-c "open work/cpp_bits/${module_name}_o0_vec.cpp" \n	-c "1,$ s/io_generator_outer/io_generator_outer_vec" \
	-c ":wq!" 
vim 	-c "open work/cpp_bits/${module_name}_o0_vec.cpp" \
	-c "1,$ s/vec_vec/vec" \
	-c "1,$ s/bool/uint64_t/g" \
	-c "1,$ s/!/\~/g" \
	-c "1,$ s/&&/and/g" \
	-c "1,$ s/and/\&/g" \
	-c "1,$ s/false/uint64_t(0)/g" \
	-c "1,$ s/true/64'hffffffffffffffff/g" \
	-c ":wq!" 
cp work/cpp_bits/${module_name}_o1.cpp  work/cpp_bits/${module_name}_o1_vec.cpp
vim 	-c "open work/cpp_bits/${module_name}_o1_vec.cpp" \n	-c "1,$ s/io_generator_outer/io_generator_outer_vec" \
	-c ":wq!" 
vim 	-c "open work/cpp_bits/${module_name}_o1_vec.cpp" \
	-c "1,$ s/vec_vec/vec" \
	-c "1,$ s/bool/uint64_t/g" \
	-c "1,$ s/!/\~/g" \
	-c "1,$ s/&&/and/g" \
	-c "1,$ s/and/\&/g" \
	-c "1,$ s/false/uint64_t(0)/g" \
	-c "1,$ s/true/64'hffffffffffffffff/g" \
	-c ":wq!" 
cp work/cpp_bits/${module_name}_o2.cpp  work/cpp_bits/${module_name}_o2_vec.cpp
vim 	-c "open work/cpp_bits/${module_name}_o2_vec.cpp" \n	-c "1,$ s/io_generator_outer/io_generator_outer_vec" \
	-c ":wq!" 
vim 	-c "open work/cpp_bits/${module_name}_o2_vec.cpp" \
	-c "1,$ s/vec_vec/vec" \
	-c "1,$ s/bool/uint64_t/g" \
	-c "1,$ s/!/\~/g" \
	-c "1,$ s/&&/and/g" \
	-c "1,$ s/and/\&/g" \
	-c "1,$ s/false/uint64_t(0)/g" \
	-c "1,$ s/true/64'hffffffffffffffff/g" \
	-c ":wq!" 
cp work/cpp_bits/${module_name}_o3.cpp  work/cpp_bits/${module_name}_o3_vec.cpp
vim 	-c "open work/cpp_bits/${module_name}_o3_vec.cpp" \n	-c "1,$ s/io_generator_outer/io_generator_outer_vec" \
	-c ":wq!" 
vim 	-c "open work/cpp_bits/${module_name}_o3_vec.cpp" \
	-c "1,$ s/vec_vec/vec" \
	-c "1,$ s/bool/uint64_t/g" \
	-c "1,$ s/!/\~/g" \
	-c "1,$ s/&&/and/g" \
	-c "1,$ s/and/\&/g" \
	-c "1,$ s/false/uint64_t(0)/g" \
	-c "1,$ s/true/64'hffffffffffffffff/g" \
	-c ":wq!" 
cp work/cpp_bits/${module_name}_o4.cpp  work/cpp_bits/${module_name}_o4_vec.cpp
vim 	-c "open work/cpp_bits/${module_name}_o4_vec.cpp" \n	-c "1,$ s/io_generator_outer/io_generator_outer_vec" \
	-c ":wq!" 
vim 	-c "open work/cpp_bits/${module_name}_o4_vec.cpp" \
	-c "1,$ s/vec_vec/vec" \
	-c "1,$ s/bool/uint64_t/g" \
	-c "1,$ s/!/\~/g" \
	-c "1,$ s/&&/and/g" \
	-c "1,$ s/and/\&/g" \
	-c "1,$ s/false/uint64_t(0)/g" \
	-c "1,$ s/true/64'hffffffffffffffff/g" \
	-c ":wq!" 
cp work/cpp_bits/${module_name}_o5.cpp  work/cpp_bits/${module_name}_o5_vec.cpp
vim 	-c "open work/cpp_bits/${module_name}_o5_vec.cpp" \n	-c "1,$ s/io_generator_outer/io_generator_outer_vec" \
	-c ":wq!" 
vim 	-c "open work/cpp_bits/${module_name}_o5_vec.cpp" \
	-c "1,$ s/vec_vec/vec" \
	-c "1,$ s/bool/uint64_t/g" \
	-c "1,$ s/!/\~/g" \
	-c "1,$ s/&&/and/g" \
	-c "1,$ s/and/\&/g" \
	-c "1,$ s/false/uint64_t(0)/g" \
	-c "1,$ s/true/64'hffffffffffffffff/g" \
	-c ":wq!" 
cp work/cpp_bits/${module_name}_o6.cpp  work/cpp_bits/${module_name}_o6_vec.cpp
vim 	-c "open work/cpp_bits/${module_name}_o6_vec.cpp" \n	-c "1,$ s/io_generator_outer/io_generator_outer_vec" \
	-c ":wq!" 
vim 	-c "open work/cpp_bits/${module_name}_o6_vec.cpp" \
	-c "1,$ s/vec_vec/vec" \
	-c "1,$ s/bool/uint64_t/g" \
	-c "1,$ s/!/\~/g" \
	-c "1,$ s/&&/and/g" \
	-c "1,$ s/and/\&/g" \
	-c "1,$ s/false/uint64_t(0)/g" \
	-c "1,$ s/true/64'hffffffffffffffff/g" \
	-c ":wq!" 
