completed kata. Might refactor reassembly logic.