simplify and get working