The code as it currently stands only has two nested fmaps / foldMaps / traverses.
The reason he can do that is because Scope is defined as an "f (Var b a)". Since Scope is only a functor if f is also functor, that means you can fmap over f, regardless of what it is. But in addition to that Var is also a functor. So you can fmap over f, and then fmap over the Var inside the f, which ends up being two nested fmaps. That same condition exists for foldable and traversable.