done with reflection and config file uploaded