improving inner class support