class freemarker.core.BuiltInsForSequences
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: freemarker.core.BuiltInsForSequences
  super_class: java.lang.Object
{
  private static boolean isBuggySeqButGoodCollection(freemarker.template.TemplateModel);
    descriptor: (Lfreemarker/template/TemplateModel;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // freemarker.template.TemplateModel model
         0: .line 863
            aload 0 /* model */
            instanceof freemarker.ext.beans.CollectionModel
            ifeq 3
         1: .line 864
            aload 0 /* model */
            checkcast freemarker.ext.beans.CollectionModel
            invokevirtual freemarker.ext.beans.CollectionModel.getSupportsIndexedAccess:()Z
            ifeq 2
            iconst_0
            goto 4
      StackMap locals:
      StackMap stack:
         2: iconst_1
            goto 4
         3: .line 865
      StackMap locals:
      StackMap stack:
            iconst_0
         4: .line 863
      StackMap locals:
      StackMap stack: int
            ireturn
        end local 0 // freemarker.template.TemplateModel model
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0  model  Lfreemarker/template/TemplateModel;
    MethodParameters:
       Name  Flags
      model  

  private static boolean modelsEqual(int, freemarker.template.TemplateModel, freemarker.template.TemplateModel, freemarker.core.Environment);
    descriptor: (ILfreemarker/template/TemplateModel;Lfreemarker/template/TemplateModel;Lfreemarker/core/Environment;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=12, locals=5, args_size=4
        start local 0 // int seqItemIndex
        start local 1 // freemarker.template.TemplateModel seqItem
        start local 2 // freemarker.template.TemplateModel searchedItem
        start local 3 // freemarker.core.Environment env
         0: .line 874
            aload 1 /* seqItem */
            aconst_null
         1: .line 875
            iconst_1
            aconst_null
         2: .line 876
            aload 2 /* searchedItem */
            aconst_null
         3: .line 877
            aconst_null
            iconst_0
         4: .line 878
            iconst_1
            iconst_1
            iconst_1
         5: .line 879
            aload 3 /* env */
         6: .line 873
            invokestatic freemarker.core.EvalUtil.compare:(Lfreemarker/template/TemplateModel;Lfreemarker/core/Expression;ILjava/lang/String;Lfreemarker/template/TemplateModel;Lfreemarker/core/Expression;Lfreemarker/core/Expression;ZZZZLfreemarker/core/Environment;)Z
         7: ireturn
         8: .line 880
      StackMap locals:
      StackMap stack: freemarker.template.TemplateException
            astore 4 /* ex */
        start local 4 // freemarker.template.TemplateException ex
         9: .line 881
            new freemarker.core._TemplateModelException
            dup
            aload 4 /* ex */
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
        10: .line 882
            ldc "This error has occurred when comparing sequence item at 0-based index "
            aastore
            dup
            iconst_1
            iload 0 /* seqItemIndex */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
        11: .line 883
            ldc " to the searched item:\n"
            aastore
            dup
            iconst_3
            new freemarker.core._DelayedGetMessage
            dup
            aload 4 /* ex */
            invokespecial freemarker.core._DelayedGetMessage.<init>:(Ljava/lang/Throwable;)V
        12: .line 881
            aastore
            invokespecial freemarker.core._TemplateModelException.<init>:(Ljava/lang/Throwable;[Ljava/lang/Object;)V
            athrow
        end local 4 // freemarker.template.TemplateException ex
        end local 3 // freemarker.core.Environment env
        end local 2 // freemarker.template.TemplateModel searchedItem
        end local 1 // freemarker.template.TemplateModel seqItem
        end local 0 // int seqItemIndex
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   13     0  seqItemIndex  I
            0   13     1       seqItem  Lfreemarker/template/TemplateModel;
            0   13     2  searchedItem  Lfreemarker/template/TemplateModel;
            0   13     3           env  Lfreemarker/core/Environment;
            9   13     4            ex  Lfreemarker/template/TemplateException;
      Exception table:
        from    to  target  type
           0     7       8  Class freemarker.template.TemplateException
    Exceptions:
      throws freemarker.template.TemplateModelException
    MethodParameters:
              Name  Flags
      seqItemIndex  
      seqItem       
      searchedItem  
      env           

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // freemarker.core.BuiltInsForSequences this
         0: .line 956
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // freemarker.core.BuiltInsForSequences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lfreemarker/core/BuiltInsForSequences;
}
SourceFile: "BuiltInsForSequences.java"
NestMembers:
  freemarker.core.BuiltInsForSequences$MinOrMaxBI  freemarker.core.BuiltInsForSequences$chunkBI  freemarker.core.BuiltInsForSequences$chunkBI$BIMethod  freemarker.core.BuiltInsForSequences$chunkBI$ChunkedSequence  freemarker.core.BuiltInsForSequences$chunkBI$ChunkedSequence$1  freemarker.core.BuiltInsForSequences$firstBI  freemarker.core.BuiltInsForSequences$joinBI  freemarker.core.BuiltInsForSequences$joinBI$BIMethodForCollection  freemarker.core.BuiltInsForSequences$lastBI  freemarker.core.BuiltInsForSequences$maxBI  freemarker.core.BuiltInsForSequences$minBI  freemarker.core.BuiltInsForSequences$reverseBI  freemarker.core.BuiltInsForSequences$reverseBI$ReverseSequence  freemarker.core.BuiltInsForSequences$seq_containsBI  freemarker.core.BuiltInsForSequences$seq_containsBI$BIMethodForCollection  freemarker.core.BuiltInsForSequences$seq_containsBI$BIMethodForSequence  freemarker.core.BuiltInsForSequences$seq_index_ofBI  freemarker.core.BuiltInsForSequences$seq_index_ofBI$BIMethod  freemarker.core.BuiltInsForSequences$sequenceBI  freemarker.core.BuiltInsForSequences$sortBI  freemarker.core.BuiltInsForSequences$sortBI$BooleanKVPComparator  freemarker.core.BuiltInsForSequences$sortBI$DateKVPComparator  freemarker.core.BuiltInsForSequences$sortBI$KVP  freemarker.core.BuiltInsForSequences$sortBI$LexicalKVPComparator  freemarker.core.BuiltInsForSequences$sortBI$NumericalKVPComparator  freemarker.core.BuiltInsForSequences$sort_byBI  freemarker.core.BuiltInsForSequences$sort_byBI$BIMethod
InnerClasses:
  private abstract MinOrMaxBI = freemarker.core.BuiltInsForSequences$MinOrMaxBI of freemarker.core.BuiltInsForSequences
  chunkBI = freemarker.core.BuiltInsForSequences$chunkBI of freemarker.core.BuiltInsForSequences
  firstBI = freemarker.core.BuiltInsForSequences$firstBI of freemarker.core.BuiltInsForSequences
  joinBI = freemarker.core.BuiltInsForSequences$joinBI of freemarker.core.BuiltInsForSequences
  lastBI = freemarker.core.BuiltInsForSequences$lastBI of freemarker.core.BuiltInsForSequences
  maxBI = freemarker.core.BuiltInsForSequences$maxBI of freemarker.core.BuiltInsForSequences
  minBI = freemarker.core.BuiltInsForSequences$minBI of freemarker.core.BuiltInsForSequences
  reverseBI = freemarker.core.BuiltInsForSequences$reverseBI of freemarker.core.BuiltInsForSequences
  seq_containsBI = freemarker.core.BuiltInsForSequences$seq_containsBI of freemarker.core.BuiltInsForSequences
  seq_index_ofBI = freemarker.core.BuiltInsForSequences$seq_index_ofBI of freemarker.core.BuiltInsForSequences
  sequenceBI = freemarker.core.BuiltInsForSequences$sequenceBI of freemarker.core.BuiltInsForSequences
  sortBI = freemarker.core.BuiltInsForSequences$sortBI of freemarker.core.BuiltInsForSequences
  sort_byBI = freemarker.core.BuiltInsForSequences$sort_byBI of freemarker.core.BuiltInsForSequences