nsider the problem of keeping track of which methods are defined where
in a deeply nested class hierarchy.
(This problem comes up in some of the later chapters in this book:
we wrote so many classes that incrementally extended their predecessors for pedagogical purposes
that we lost track of what was defined where.)
To create a table of method definitions,
we first need to find the ancestors of the last class in the hierarchy:</p>
<div class="code-sample lang-js" title="find-ancestors.js">
<div class="highl