Why do this `@SuppressWarnings("serial")`? Presumably that's for the nested classes? Why not just let eclipse auto-generate some `serialVersionUID`s? No strong feelings though.