ivars should have underscores prefixing them