change set_first functional