refactored profiling and tested property/constructor speeds