 Yet it takes 40 KB of the binary! We can see there's
            some validation code at the top to instantiate a <tt>ScopedDepthTracker</tt>, check if it exceeds a max depth, report an error, and so on - all this code is 
            identical for each of the "T" types used to expand this template. The real difference is on line 172 where the <tt>T::Validate</tt> function is called. It makes 
            sense that this is unique to each type T as it's a direct call - perhaps in some cases it can inline a