BaseInstanceAdapter now has an internal field and constructor