static bool smallestList_contains(O l, O o) { if (l == null) false; if (l << Pair) ret pairContains(l/Pair, o); if (l << Triple) ret tripleContains(l/Triple, o); if (l instanceof O[]) ret contains((O[]) l, o); ret l == o; }