remove doExtend function