I believe this line will actually save the @goal instance with new attributes (if they're valid, of course). You can get rid of line 23!