as mentioned before - this looks simplifiable