Halfway to training form, compiles, NOT COMPLETE