don't use this if you aren't using trainCap