so broken, but the right idea, I think