Simplified and made ivar/properties safer