Making rational class; probably isn't worth the time