made lazy reflection creation more robust and tested it better