bunch of stuff but cancel button is broken