classes need to be public, sort of