setter applying fixed
unstable, still strugling with shared vars
some refactoring