This issue I was seeing is that scope resolution appears to be different for classes declared within methods compared to “stand-alone” classes. ie. the attached code snippet prints
Outer (defined in function)
Outer (defined in function)
Inner (standalone)
Inner (standalone)