It is really tricky for me to guess your intention. On a single hand you are stating that equally a and b are public (no top underscore of their names) so I really should theoretically be permitted to obtain/mutate (get/set) equally. But Then you definately specify an specific mutator only https://jmsmanesar.in/