Refactoring with reflection experimental 1
reflection calculate