provide internal bonaparte adapter methods
refine equals()