map dynamic inheritance