public static void clearMemoizationTables(Keyword timestampname) {
    { MemoizationTable table = null;
      Cons iter000 = Stella.$ALL_MEMOIZATION_TABLES$.theConsList;

      for (;!(iter000 == Stella.NIL); iter000 = iter000.rest) {
        table = ((MemoizationTable)(iter000.value));
        { boolean foundP000 = false;

          { Keyword ts = null;
            Cons iter001 = table.timestamps;

            loop001 : for (;!(iter001 == Stella.NIL); iter001 = iter001.rest) {
              ts = ((Keyword)(iter001.value));
              if (ts == timestampname) {
                foundP000 = true;
                break loop001;
              }
            }
          }
          if (foundP000) {
            if (Surrogate.subtypeOfP(Stella_Object.safePrimaryType(table), Stella.SGT_STELLA_MRU_MEMOIZATION_TABLE)) {
              { MruMemoizationTable table000 = ((MruMemoizationTable)(table));

                if (table000.mruBucketsVector != null) {
                  table000.mruBucketsVector.clear();
                }
                if (table000.lruBucketsVector != null) {
                  table000.lruBucketsVector.clear();
                }
                table000.freeEntries = table000.maxEntries;
              }
            }
            else {
              table.hashTable = null;
            }
          }
        }
      }
    }
  }