Finished design; as yet untested (scary o.o)