check for null in trainOnce()
add getters