Hmm, maybe approach in prevoius commits not good. New approach