For class methods, lookup walks the class's singleton-class chain. For a subclass B < A, what are the first members of B.singleton_class.ancestors and what does that ordering enable?
class A; end
class B < A; end
p B.singleton_class.ancestors.first(4)