simplify, but still not quite right
getting there...