fix: encapsulation