not sure about this approach, but it's working