got rid of prototype copying. Led to convoluted code