reworked first controller