I hate copy constructor ! fix needed