Refactor and reflections