do not access entities directly