Use ivars for storage instead of hash