change order of struct's guard argument
check that the right error is thrown
*actually* make it fail
fix guard args
struct's guard works now, fix translation errors