public class org.ehcache.impl.internal.store.heap.OnHeapStore$Provider extends org.ehcache.impl.store.BaseStore$BaseStoreProvider implements org.ehcache.core.spi.store.tiering.CachingTier$Provider, org.ehcache.core.spi.store.tiering.HigherCachingTier$Provider
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.ehcache.impl.internal.store.heap.OnHeapStore$Provider
  super_class: org.ehcache.impl.store.BaseStore$BaseStoreProvider
{
  private final java.util.Map<org.ehcache.core.spi.store.Store<?, ?>, java.util.List<org.ehcache.spi.copy.Copier<?>>> createdStores;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Lorg/ehcache/core/spi/store/Store<**>;Ljava/util/List<Lorg/ehcache/spi/copy/Copier<*>;>;>;

  private final java.util.Map<org.ehcache.impl.internal.store.heap.OnHeapStore<?, ?>, org.ehcache.core.statistics.OperationStatistic<?>[]> tierOperationStatistics;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Lorg/ehcache/impl/internal/store/heap/OnHeapStore<**>;[Lorg/ehcache/core/statistics/OperationStatistic<*>;>;

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
         0: .line 1619
            aload 0 /* this */
            invokespecial org.ehcache.impl.store.BaseStore$BaseStoreProvider.<init>:()V
         1: .line 1621
            aload 0 /* this */
            new org.ehcache.core.collections.ConcurrentWeakIdentityHashMap
            dup
            invokespecial org.ehcache.core.collections.ConcurrentWeakIdentityHashMap.<init>:()V
            putfield org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.createdStores:Ljava/util/Map;
         2: .line 1622
            aload 0 /* this */
            new org.ehcache.core.collections.ConcurrentWeakIdentityHashMap
            dup
            invokespecial org.ehcache.core.collections.ConcurrentWeakIdentityHashMap.<init>:()V
            putfield org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.tierOperationStatistics:Ljava/util/Map;
         3: .line 1619
            return
        end local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/ehcache/impl/internal/store/heap/OnHeapStore$Provider;

  protected org.ehcache.config.ResourceType<org.ehcache.config.SizedResourcePool> getResourceType();
    descriptor: ()Lorg/ehcache/config/ResourceType;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
         0: .line 1626
            getstatic org.ehcache.config.ResourceType$Core.HEAP:Lorg/ehcache/config/ResourceType$Core;
            areturn
        end local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/ehcache/impl/internal/store/heap/OnHeapStore$Provider;
    Signature: ()Lorg/ehcache/config/ResourceType<Lorg/ehcache/config/SizedResourcePool;>;

  public int rank(java.util.Set<org.ehcache.config.ResourceType<?>>, java.util.Collection<org.ehcache.spi.service.ServiceConfiguration<?, ?>>);
    descriptor: (Ljava/util/Set;Ljava/util/Collection;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
        start local 1 // java.util.Set resourceTypes
        start local 2 // java.util.Collection serviceConfigs
         0: .line 1631
            aload 1 /* resourceTypes */
            aload 0 /* this */
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.getResourceType:()Lorg/ehcache/config/ResourceType;
            invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
            invokeinterface java.util.Set.equals:(Ljava/lang/Object;)Z
            ifeq 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 2 // java.util.Collection serviceConfigs
        end local 1 // java.util.Set resourceTypes
        end local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Lorg/ehcache/impl/internal/store/heap/OnHeapStore$Provider;
            0    3     1   resourceTypes  Ljava/util/Set<Lorg/ehcache/config/ResourceType<*>;>;
            0    3     2  serviceConfigs  Ljava/util/Collection<Lorg/ehcache/spi/service/ServiceConfiguration<**>;>;
    Signature: (Ljava/util/Set<Lorg/ehcache/config/ResourceType<*>;>;Ljava/util/Collection<Lorg/ehcache/spi/service/ServiceConfiguration<**>;>;)I
    MethodParameters:
                Name  Flags
      resourceTypes   
      serviceConfigs  

  public int rankCachingTier(java.util.Set<org.ehcache.config.ResourceType<?>>, java.util.Collection<org.ehcache.spi.service.ServiceConfiguration<?, ?>>);
    descriptor: (Ljava/util/Set;Ljava/util/Collection;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
        start local 1 // java.util.Set resourceTypes
        start local 2 // java.util.Collection serviceConfigs
         0: .line 1636
            aload 0 /* this */
            aload 1 /* resourceTypes */
            aload 2 /* serviceConfigs */
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.rank:(Ljava/util/Set;Ljava/util/Collection;)I
            ireturn
        end local 2 // java.util.Collection serviceConfigs
        end local 1 // java.util.Set resourceTypes
        end local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lorg/ehcache/impl/internal/store/heap/OnHeapStore$Provider;
            0    1     1   resourceTypes  Ljava/util/Set<Lorg/ehcache/config/ResourceType<*>;>;
            0    1     2  serviceConfigs  Ljava/util/Collection<Lorg/ehcache/spi/service/ServiceConfiguration<**>;>;
    Signature: (Ljava/util/Set<Lorg/ehcache/config/ResourceType<*>;>;Ljava/util/Collection<Lorg/ehcache/spi/service/ServiceConfiguration<**>;>;)I
    MethodParameters:
                Name  Flags
      resourceTypes   
      serviceConfigs  

  public <K, V> org.ehcache.impl.internal.store.heap.OnHeapStore<K, V> createStore(org.ehcache.core.spi.store.Store$Configuration<K, V>, org.ehcache.spi.service.ServiceConfiguration<?, ?>[]);
    descriptor: (Lorg/ehcache/core/spi/store/Store$Configuration;[Lorg/ehcache/spi/service/ServiceConfiguration;)Lorg/ehcache/impl/internal/store/heap/OnHeapStore;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=10, locals=4, args_size=3
        start local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
        start local 1 // org.ehcache.core.spi.store.Store$Configuration storeConfig
        start local 2 // org.ehcache.spi.service.ServiceConfiguration[] serviceConfigs
         0: .line 1641
            aload 0 /* this */
            aload 1 /* storeConfig */
            new org.ehcache.impl.store.DefaultStoreEventDispatcher
            dup
            aload 1 /* storeConfig */
            invokeinterface org.ehcache.core.spi.store.Store$Configuration.getDispatcherConcurrency:()I
            invokespecial org.ehcache.impl.store.DefaultStoreEventDispatcher.<init>:(I)V
            aload 2 /* serviceConfigs */
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.createStoreInternal:(Lorg/ehcache/core/spi/store/Store$Configuration;Lorg/ehcache/core/events/StoreEventDispatcher;[Lorg/ehcache/spi/service/ServiceConfiguration;)Lorg/ehcache/impl/internal/store/heap/OnHeapStore;
            astore 3 /* store */
        start local 3 // org.ehcache.impl.internal.store.heap.OnHeapStore store
         1: .line 1643
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.tierOperationStatistics:Ljava/util/Map;
            aload 3 /* store */
            iconst_2
            anewarray org.ehcache.core.statistics.OperationStatistic
            dup
            iconst_0
         2: .line 1644
            aload 0 /* this */
            aload 3 /* store */
            ldc "get"
            getstatic org.ehcache.core.statistics.TierOperationOutcomes.GET_TRANSLATION:Ljava/util/Map;
            ldc "get"
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.createTranslatedStatistic:(Lorg/ehcache/impl/store/BaseStore;Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)Lorg/ehcache/core/statistics/OperationStatistic;
            aastore
            dup
            iconst_1
         3: .line 1645
            aload 0 /* this */
            aload 3 /* store */
            ldc "eviction"
            getstatic org.ehcache.core.statistics.TierOperationOutcomes.EVICTION_TRANSLATION:Ljava/util/Map;
            ldc "eviction"
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.createTranslatedStatistic:(Lorg/ehcache/impl/store/BaseStore;Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)Lorg/ehcache/core/statistics/OperationStatistic;
            aastore
         4: .line 1643
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 1647
            aload 3 /* store */
            areturn
        end local 3 // org.ehcache.impl.internal.store.heap.OnHeapStore store
        end local 2 // org.ehcache.spi.service.ServiceConfiguration[] serviceConfigs
        end local 1 // org.ehcache.core.spi.store.Store$Configuration storeConfig
        end local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0            this  Lorg/ehcache/impl/internal/store/heap/OnHeapStore$Provider;
            0    6     1     storeConfig  Lorg/ehcache/core/spi/store/Store$Configuration<TK;TV;>;
            0    6     2  serviceConfigs  [Lorg/ehcache/spi/service/ServiceConfiguration;
            1    6     3           store  Lorg/ehcache/impl/internal/store/heap/OnHeapStore<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/ehcache/core/spi/store/Store$Configuration<TK;TV;>;[Lorg/ehcache/spi/service/ServiceConfiguration<**>;)Lorg/ehcache/impl/internal/store/heap/OnHeapStore<TK;TV;>;
    MethodParameters:
                Name  Flags
      storeConfig     
      serviceConfigs  

  public <K, V> org.ehcache.impl.internal.store.heap.OnHeapStore<K, V> createStoreInternal(org.ehcache.core.spi.store.Store$Configuration<K, V>, org.ehcache.core.events.StoreEventDispatcher<K, V>, org.ehcache.spi.service.ServiceConfiguration<?, ?>[]);
    descriptor: (Lorg/ehcache/core/spi/store/Store$Configuration;Lorg/ehcache/core/events/StoreEventDispatcher;[Lorg/ehcache/spi/service/ServiceConfiguration;)Lorg/ehcache/impl/internal/store/heap/OnHeapStore;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=11, locals=12, args_size=4
        start local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
        start local 1 // org.ehcache.core.spi.store.Store$Configuration storeConfig
        start local 2 // org.ehcache.core.events.StoreEventDispatcher eventDispatcher
        start local 3 // org.ehcache.spi.service.ServiceConfiguration[] serviceConfigs
         0: .line 1652
            aload 0 /* this */
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.getServiceProvider:()Lorg/ehcache/spi/service/ServiceProvider;
            ldc Lorg/ehcache/core/spi/time/TimeSourceService;
            invokeinterface org.ehcache.spi.service.ServiceProvider.getService:(Ljava/lang/Class;)Lorg/ehcache/spi/service/Service;
            checkcast org.ehcache.core.spi.time.TimeSourceService
            invokeinterface org.ehcache.core.spi.time.TimeSourceService.getTimeSource:()Lorg/ehcache/core/spi/time/TimeSource;
            astore 4 /* timeSource */
        start local 4 // org.ehcache.core.spi.time.TimeSource timeSource
         1: .line 1653
            aload 0 /* this */
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.getServiceProvider:()Lorg/ehcache/spi/service/ServiceProvider;
            ldc Lorg/ehcache/spi/copy/CopyProvider;
            invokeinterface org.ehcache.spi.service.ServiceProvider.getService:(Ljava/lang/Class;)Lorg/ehcache/spi/service/Service;
            checkcast org.ehcache.spi.copy.CopyProvider
            astore 5 /* copyProvider */
        start local 5 // org.ehcache.spi.copy.CopyProvider copyProvider
         2: .line 1654
            aload 5 /* copyProvider */
            aload 1 /* storeConfig */
            invokeinterface org.ehcache.core.spi.store.Store$Configuration.getKeyType:()Ljava/lang/Class;
            aload 1 /* storeConfig */
            invokeinterface org.ehcache.core.spi.store.Store$Configuration.getKeySerializer:()Lorg/ehcache/spi/serialization/Serializer;
            aload 3 /* serviceConfigs */
            invokeinterface org.ehcache.spi.copy.CopyProvider.createKeyCopier:(Ljava/lang/Class;Lorg/ehcache/spi/serialization/Serializer;[Lorg/ehcache/spi/service/ServiceConfiguration;)Lorg/ehcache/spi/copy/Copier;
            astore 6 /* keyCopier */
        start local 6 // org.ehcache.spi.copy.Copier keyCopier
         3: .line 1655
            aload 5 /* copyProvider */
            aload 1 /* storeConfig */
            invokeinterface org.ehcache.core.spi.store.Store$Configuration.getValueType:()Ljava/lang/Class;
            aload 1 /* storeConfig */
            invokeinterface org.ehcache.core.spi.store.Store$Configuration.getValueSerializer:()Lorg/ehcache/spi/serialization/Serializer;
            aload 3 /* serviceConfigs */
            invokeinterface org.ehcache.spi.copy.CopyProvider.createValueCopier:(Ljava/lang/Class;Lorg/ehcache/spi/serialization/Serializer;[Lorg/ehcache/spi/service/ServiceConfiguration;)Lorg/ehcache/spi/copy/Copier;
            astore 7 /* valueCopier */
        start local 7 // org.ehcache.spi.copy.Copier valueCopier
         4: .line 1657
            iconst_2
            anewarray org.ehcache.spi.copy.Copier
            dup
            iconst_0
            aload 6 /* keyCopier */
            aastore
            dup
            iconst_1
            aload 7 /* valueCopier */
            aastore
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            astore 8 /* copiers */
        start local 8 // java.util.List copiers
         5: .line 1659
            aload 0 /* this */
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.getServiceProvider:()Lorg/ehcache/spi/service/ServiceProvider;
            ldc Lorg/ehcache/core/spi/store/heap/SizeOfEngineProvider;
            invokeinterface org.ehcache.spi.service.ServiceProvider.getService:(Ljava/lang/Class;)Lorg/ehcache/spi/service/Service;
            checkcast org.ehcache.core.spi.store.heap.SizeOfEngineProvider
            astore 9 /* sizeOfEngineProvider */
        start local 9 // org.ehcache.core.spi.store.heap.SizeOfEngineProvider sizeOfEngineProvider
         6: .line 1660
            aload 9 /* sizeOfEngineProvider */
         7: .line 1661
            aload 1 /* storeConfig */
            invokeinterface org.ehcache.core.spi.store.Store$Configuration.getResourcePools:()Lorg/ehcache/config/ResourcePools;
            getstatic org.ehcache.config.ResourceType$Core.HEAP:Lorg/ehcache/config/ResourceType$Core;
            invokeinterface org.ehcache.config.ResourcePools.getPoolForResource:(Lorg/ehcache/config/ResourceType;)Lorg/ehcache/config/ResourcePool;
            checkcast org.ehcache.config.SizedResourcePool
            invokeinterface org.ehcache.config.SizedResourcePool.getUnit:()Lorg/ehcache/config/ResourceUnit;
            aload 3 /* serviceConfigs */
         8: .line 1660
            invokeinterface org.ehcache.core.spi.store.heap.SizeOfEngineProvider.createSizeOfEngine:(Lorg/ehcache/config/ResourceUnit;[Lorg/ehcache/spi/service/ServiceConfiguration;)Lorg/ehcache/core/spi/store/heap/SizeOfEngine;
            astore 10 /* sizeOfEngine */
        start local 10 // org.ehcache.core.spi.store.heap.SizeOfEngine sizeOfEngine
         9: .line 1662
            new org.ehcache.impl.internal.store.heap.OnHeapStore
            dup
            aload 1 /* storeConfig */
            aload 4 /* timeSource */
            aload 6 /* keyCopier */
            aload 7 /* valueCopier */
            aload 10 /* sizeOfEngine */
            aload 2 /* eventDispatcher */
            invokedynamic get()Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  org/ehcache/impl/internal/concurrent/ConcurrentHashMap.<init>()V (8)
                  ()Lorg/ehcache/impl/internal/concurrent/EvictingConcurrentMap;
            aload 0 /* this */
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.getServiceProvider:()Lorg/ehcache/spi/service/ServiceProvider;
            ldc Lorg/ehcache/core/spi/service/StatisticsService;
            invokeinterface org.ehcache.spi.service.ServiceProvider.getService:(Ljava/lang/Class;)Lorg/ehcache/spi/service/Service;
            checkcast org.ehcache.core.spi.service.StatisticsService
            invokespecial org.ehcache.impl.internal.store.heap.OnHeapStore.<init>:(Lorg/ehcache/core/spi/store/Store$Configuration;Lorg/ehcache/core/spi/time/TimeSource;Lorg/ehcache/spi/copy/Copier;Lorg/ehcache/spi/copy/Copier;Lorg/ehcache/core/spi/store/heap/SizeOfEngine;Lorg/ehcache/core/events/StoreEventDispatcher;Ljava/util/function/Supplier;Lorg/ehcache/core/spi/service/StatisticsService;)V
            astore 11 /* onHeapStore */
        start local 11 // org.ehcache.impl.internal.store.heap.OnHeapStore onHeapStore
        10: .line 1663
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.createdStores:Ljava/util/Map;
            aload 11 /* onHeapStore */
            aload 8 /* copiers */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 1664
            aload 11 /* onHeapStore */
            areturn
        end local 11 // org.ehcache.impl.internal.store.heap.OnHeapStore onHeapStore
        end local 10 // org.ehcache.core.spi.store.heap.SizeOfEngine sizeOfEngine
        end local 9 // org.ehcache.core.spi.store.heap.SizeOfEngineProvider sizeOfEngineProvider
        end local 8 // java.util.List copiers
        end local 7 // org.ehcache.spi.copy.Copier valueCopier
        end local 6 // org.ehcache.spi.copy.Copier keyCopier
        end local 5 // org.ehcache.spi.copy.CopyProvider copyProvider
        end local 4 // org.ehcache.core.spi.time.TimeSource timeSource
        end local 3 // org.ehcache.spi.service.ServiceConfiguration[] serviceConfigs
        end local 2 // org.ehcache.core.events.StoreEventDispatcher eventDispatcher
        end local 1 // org.ehcache.core.spi.store.Store$Configuration storeConfig
        end local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   12     0                  this  Lorg/ehcache/impl/internal/store/heap/OnHeapStore$Provider;
            0   12     1           storeConfig  Lorg/ehcache/core/spi/store/Store$Configuration<TK;TV;>;
            0   12     2       eventDispatcher  Lorg/ehcache/core/events/StoreEventDispatcher<TK;TV;>;
            0   12     3        serviceConfigs  [Lorg/ehcache/spi/service/ServiceConfiguration;
            1   12     4            timeSource  Lorg/ehcache/core/spi/time/TimeSource;
            2   12     5          copyProvider  Lorg/ehcache/spi/copy/CopyProvider;
            3   12     6             keyCopier  Lorg/ehcache/spi/copy/Copier<TK;>;
            4   12     7           valueCopier  Lorg/ehcache/spi/copy/Copier<TV;>;
            5   12     8               copiers  Ljava/util/List<Lorg/ehcache/spi/copy/Copier<*>;>;
            6   12     9  sizeOfEngineProvider  Lorg/ehcache/core/spi/store/heap/SizeOfEngineProvider;
            9   12    10          sizeOfEngine  Lorg/ehcache/core/spi/store/heap/SizeOfEngine;
           10   12    11           onHeapStore  Lorg/ehcache/impl/internal/store/heap/OnHeapStore<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/ehcache/core/spi/store/Store$Configuration<TK;TV;>;Lorg/ehcache/core/events/StoreEventDispatcher<TK;TV;>;[Lorg/ehcache/spi/service/ServiceConfiguration<**>;)Lorg/ehcache/impl/internal/store/heap/OnHeapStore<TK;TV;>;
    MethodParameters:
                 Name  Flags
      storeConfig      
      eventDispatcher  
      serviceConfigs   

  public void releaseStore(org.ehcache.core.spi.store.Store<?, ?>);
    descriptor: (Lorg/ehcache/core/spi/store/Store;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
        start local 1 // org.ehcache.core.spi.store.Store resource
         0: .line 1669
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.createdStores:Ljava/util/Map;
            aload 1 /* resource */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            astore 2 /* copiers */
        start local 2 // java.util.List copiers
         1: .line 1670
            aload 2 /* copiers */
            ifnonnull 3
         2: .line 1671
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Given store is not managed by this provider : "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* resource */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 1673
      StackMap locals: java.util.List
      StackMap stack:
            aload 1 /* resource */
            checkcast org.ehcache.impl.internal.store.heap.OnHeapStore
            astore 3 /* onHeapStore */
        start local 3 // org.ehcache.impl.internal.store.heap.OnHeapStore onHeapStore
         4: .line 1674
            aload 3 /* onHeapStore */
            invokestatic org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.close:(Lorg/ehcache/impl/internal/store/heap/OnHeapStore;)V
         5: .line 1675
            aload 0 /* this */
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.getServiceProvider:()Lorg/ehcache/spi/service/ServiceProvider;
            ldc Lorg/ehcache/core/spi/service/StatisticsService;
            invokeinterface org.ehcache.spi.service.ServiceProvider.getService:(Ljava/lang/Class;)Lorg/ehcache/spi/service/Service;
            checkcast org.ehcache.core.spi.service.StatisticsService
            aload 3 /* onHeapStore */
            invokeinterface org.ehcache.core.spi.service.StatisticsService.cleanForNode:(Ljava/lang/Object;)V
         6: .line 1676
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.tierOperationStatistics:Ljava/util/Map;
            aload 3 /* onHeapStore */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 1678
            aload 0 /* this */
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.getServiceProvider:()Lorg/ehcache/spi/service/ServiceProvider;
            ldc Lorg/ehcache/spi/copy/CopyProvider;
            invokeinterface org.ehcache.spi.service.ServiceProvider.getService:(Ljava/lang/Class;)Lorg/ehcache/spi/service/Service;
            checkcast org.ehcache.spi.copy.CopyProvider
            astore 4 /* copyProvider */
        start local 4 // org.ehcache.spi.copy.CopyProvider copyProvider
         8: .line 1679
            aload 2 /* copiers */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 14
      StackMap locals: org.ehcache.impl.internal.store.heap.OnHeapStore$Provider org.ehcache.core.spi.store.Store java.util.List org.ehcache.impl.internal.store.heap.OnHeapStore org.ehcache.spi.copy.CopyProvider top java.util.Iterator
      StackMap stack:
         9: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.ehcache.spi.copy.Copier
            astore 5 /* copier */
        start local 5 // org.ehcache.spi.copy.Copier copier
        10: .line 1681
            aload 4 /* copyProvider */
            aload 5 /* copier */
            invokeinterface org.ehcache.spi.copy.CopyProvider.releaseCopier:(Lorg/ehcache/spi/copy/Copier;)V
        11: .line 1682
            goto 14
      StackMap locals: org.ehcache.impl.internal.store.heap.OnHeapStore$Provider org.ehcache.core.spi.store.Store java.util.List org.ehcache.impl.internal.store.heap.OnHeapStore org.ehcache.spi.copy.CopyProvider org.ehcache.spi.copy.Copier java.util.Iterator
      StackMap stack: java.lang.Exception
        12: astore 7 /* e */
        start local 7 // java.lang.Exception e
        13: .line 1683
            new java.lang.IllegalStateException
            dup
            ldc "Exception while releasing Copier instance."
            aload 7 /* e */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 7 // java.lang.Exception e
        end local 5 // org.ehcache.spi.copy.Copier copier
        14: .line 1679
      StackMap locals: org.ehcache.impl.internal.store.heap.OnHeapStore$Provider org.ehcache.core.spi.store.Store java.util.List org.ehcache.impl.internal.store.heap.OnHeapStore org.ehcache.spi.copy.CopyProvider top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        15: .line 1686
            return
        end local 4 // org.ehcache.spi.copy.CopyProvider copyProvider
        end local 3 // org.ehcache.impl.internal.store.heap.OnHeapStore onHeapStore
        end local 2 // java.util.List copiers
        end local 1 // org.ehcache.core.spi.store.Store resource
        end local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   16     0          this  Lorg/ehcache/impl/internal/store/heap/OnHeapStore$Provider;
            0   16     1      resource  Lorg/ehcache/core/spi/store/Store<**>;
            1   16     2       copiers  Ljava/util/List<Lorg/ehcache/spi/copy/Copier<*>;>;
            4   16     3   onHeapStore  Lorg/ehcache/impl/internal/store/heap/OnHeapStore<**>;
            8   16     4  copyProvider  Lorg/ehcache/spi/copy/CopyProvider;
           10   14     5        copier  Lorg/ehcache/spi/copy/Copier<*>;
           13   14     7             e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          10    11      12  Class java.lang.Exception
    Signature: (Lorg/ehcache/core/spi/store/Store<**>;)V
    MethodParameters:
          Name  Flags
      resource  

  static void close(org.ehcache.impl.internal.store.heap.OnHeapStore<?, ?>);
    descriptor: (Lorg/ehcache/impl/internal/store/heap/OnHeapStore;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore onHeapStore
         0: .line 1689
            aload 0 /* onHeapStore */
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore.clear:()V
         1: .line 1690
            return
        end local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore onHeapStore
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0  onHeapStore  Lorg/ehcache/impl/internal/store/heap/OnHeapStore<**>;
    Signature: (Lorg/ehcache/impl/internal/store/heap/OnHeapStore<**>;)V
    MethodParameters:
             Name  Flags
      onHeapStore  

  public void initStore(org.ehcache.core.spi.store.Store<?, ?>);
    descriptor: (Lorg/ehcache/core/spi/store/Store;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
        start local 1 // org.ehcache.core.spi.store.Store resource
         0: .line 1694
            aload 0 /* this */
            aload 1 /* resource */
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.checkResource:(Ljava/lang/Object;)V
         1: .line 1696
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.createdStores:Ljava/util/Map;
            aload 1 /* resource */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            astore 2 /* copiers */
        start local 2 // java.util.List copiers
         2: .line 1697
            aload 2 /* copiers */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 8
      StackMap locals: org.ehcache.impl.internal.store.heap.OnHeapStore$Provider org.ehcache.core.spi.store.Store java.util.List top java.util.Iterator
      StackMap stack:
         3: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.ehcache.spi.copy.Copier
            astore 3 /* copier */
        start local 3 // org.ehcache.spi.copy.Copier copier
         4: .line 1698
            aload 3 /* copier */
            instanceof org.ehcache.impl.copy.SerializingCopier
            ifeq 8
         5: .line 1699
            aload 3 /* copier */
            checkcast org.ehcache.impl.copy.SerializingCopier
            invokevirtual org.ehcache.impl.copy.SerializingCopier.getSerializer:()Lorg/ehcache/spi/serialization/Serializer;
            astore 5 /* serializer */
        start local 5 // org.ehcache.spi.serialization.Serializer serializer
         6: .line 1700
            aload 5 /* serializer */
            instanceof org.ehcache.spi.serialization.StatefulSerializer
            ifeq 8
         7: .line 1701
            aload 5 /* serializer */
            checkcast org.ehcache.spi.serialization.StatefulSerializer
            new org.ehcache.impl.serialization.TransientStateRepository
            dup
            invokespecial org.ehcache.impl.serialization.TransientStateRepository.<init>:()V
            invokeinterface org.ehcache.spi.serialization.StatefulSerializer.init:(Lorg/ehcache/spi/persistence/StateRepository;)V
        end local 5 // org.ehcache.spi.serialization.Serializer serializer
        end local 3 // org.ehcache.spi.copy.Copier copier
         8: .line 1697
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         9: .line 1705
            return
        end local 2 // java.util.List copiers
        end local 1 // org.ehcache.core.spi.store.Store resource
        end local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lorg/ehcache/impl/internal/store/heap/OnHeapStore$Provider;
            0   10     1    resource  Lorg/ehcache/core/spi/store/Store<**>;
            2   10     2     copiers  Ljava/util/List<Lorg/ehcache/spi/copy/Copier<*>;>;
            4    8     3      copier  Lorg/ehcache/spi/copy/Copier<*>;
            6    8     5  serializer  Lorg/ehcache/spi/serialization/Serializer<*>;
    Signature: (Lorg/ehcache/core/spi/store/Store<**>;)V
    MethodParameters:
          Name  Flags
      resource  

  private void checkResource(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
        start local 1 // java.lang.Object resource
         0: .line 1708
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.createdStores:Ljava/util/Map;
            aload 1 /* resource */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 2
         1: .line 1709
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Given store is not managed by this provider : "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* resource */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1711
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object resource
        end local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/ehcache/impl/internal/store/heap/OnHeapStore$Provider;
            0    3     1  resource  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      resource  

  public void stop();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
         0: .line 1716
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.createdStores:Ljava/util/Map;
            invokeinterface java.util.Map.clear:()V
         1: .line 1717
            goto 5
      StackMap locals:
      StackMap stack: java.lang.Throwable
         2: astore 1
         3: .line 1718
            aload 0 /* this */
            invokespecial org.ehcache.impl.store.BaseStore$BaseStoreProvider.stop:()V
         4: .line 1719
            aload 1
            athrow
         5: .line 1718
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokespecial org.ehcache.impl.store.BaseStore$BaseStoreProvider.stop:()V
         6: .line 1720
            return
        end local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/ehcache/impl/internal/store/heap/OnHeapStore$Provider;
      Exception table:
        from    to  target  type
           0     2       2  any

  public <K, V> org.ehcache.core.spi.store.tiering.CachingTier<K, V> createCachingTier(org.ehcache.core.spi.store.Store$Configuration<K, V>, org.ehcache.spi.service.ServiceConfiguration<?, ?>[]);
    descriptor: (Lorg/ehcache/core/spi/store/Store$Configuration;[Lorg/ehcache/spi/service/ServiceConfiguration;)Lorg/ehcache/core/spi/store/tiering/CachingTier;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=10, locals=4, args_size=3
        start local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
        start local 1 // org.ehcache.core.spi.store.Store$Configuration storeConfig
        start local 2 // org.ehcache.spi.service.ServiceConfiguration[] serviceConfigs
         0: .line 1724
            aload 0 /* this */
            aload 1 /* storeConfig */
            invokestatic org.ehcache.core.events.NullStoreEventDispatcher.nullStoreEventDispatcher:()Lorg/ehcache/core/events/StoreEventDispatcher;
            aload 2 /* serviceConfigs */
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.createStoreInternal:(Lorg/ehcache/core/spi/store/Store$Configuration;Lorg/ehcache/core/events/StoreEventDispatcher;[Lorg/ehcache/spi/service/ServiceConfiguration;)Lorg/ehcache/impl/internal/store/heap/OnHeapStore;
            astore 3 /* cachingTier */
        start local 3 // org.ehcache.impl.internal.store.heap.OnHeapStore cachingTier
         1: .line 1726
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.tierOperationStatistics:Ljava/util/Map;
            aload 3 /* cachingTier */
            iconst_2
            anewarray org.ehcache.core.statistics.OperationStatistic
            dup
            iconst_0
         2: .line 1727
            aload 0 /* this */
            aload 3 /* cachingTier */
            ldc "get"
            getstatic org.ehcache.core.statistics.TierOperationOutcomes.GET_OR_COMPUTEIFABSENT_TRANSLATION:Ljava/util/Map;
            ldc "getOrComputeIfAbsent"
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.createTranslatedStatistic:(Lorg/ehcache/impl/store/BaseStore;Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)Lorg/ehcache/core/statistics/OperationStatistic;
            aastore
            dup
            iconst_1
         3: .line 1728
            aload 0 /* this */
            aload 3 /* cachingTier */
            ldc "eviction"
            getstatic org.ehcache.core.statistics.TierOperationOutcomes.EVICTION_TRANSLATION:Ljava/util/Map;
            ldc "eviction"
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.createTranslatedStatistic:(Lorg/ehcache/impl/store/BaseStore;Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)Lorg/ehcache/core/statistics/OperationStatistic;
            aastore
         4: .line 1726
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 1731
            aload 3 /* cachingTier */
            areturn
        end local 3 // org.ehcache.impl.internal.store.heap.OnHeapStore cachingTier
        end local 2 // org.ehcache.spi.service.ServiceConfiguration[] serviceConfigs
        end local 1 // org.ehcache.core.spi.store.Store$Configuration storeConfig
        end local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0            this  Lorg/ehcache/impl/internal/store/heap/OnHeapStore$Provider;
            0    6     1     storeConfig  Lorg/ehcache/core/spi/store/Store$Configuration<TK;TV;>;
            0    6     2  serviceConfigs  [Lorg/ehcache/spi/service/ServiceConfiguration;
            1    6     3     cachingTier  Lorg/ehcache/impl/internal/store/heap/OnHeapStore<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/ehcache/core/spi/store/Store$Configuration<TK;TV;>;[Lorg/ehcache/spi/service/ServiceConfiguration<**>;)Lorg/ehcache/core/spi/store/tiering/CachingTier<TK;TV;>;
    MethodParameters:
                Name  Flags
      storeConfig     
      serviceConfigs  

  public void releaseCachingTier(org.ehcache.core.spi.store.tiering.CachingTier<?, ?>);
    descriptor: (Lorg/ehcache/core/spi/store/tiering/CachingTier;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
        start local 1 // org.ehcache.core.spi.store.tiering.CachingTier resource
         0: .line 1736
            aload 0 /* this */
            aload 1 /* resource */
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.checkResource:(Ljava/lang/Object;)V
         1: .line 1738
            aload 1 /* resource */
            invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidateAll:()V
         2: .line 1739
            goto 5
      StackMap locals:
      StackMap stack: org.ehcache.spi.resilience.StoreAccessException
         3: astore 2 /* e */
        start local 2 // org.ehcache.spi.resilience.StoreAccessException e
         4: .line 1740
            getstatic org.ehcache.impl.internal.store.heap.OnHeapStore.LOG:Lorg/slf4j/Logger;
            ldc "Invalidation failure while releasing caching tier"
            aload 2 /* e */
            invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 2 // org.ehcache.spi.resilience.StoreAccessException e
         5: .line 1742
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* resource */
            checkcast org.ehcache.core.spi.store.Store
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.releaseStore:(Lorg/ehcache/core/spi/store/Store;)V
         6: .line 1743
            return
        end local 1 // org.ehcache.core.spi.store.tiering.CachingTier resource
        end local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lorg/ehcache/impl/internal/store/heap/OnHeapStore$Provider;
            0    7     1  resource  Lorg/ehcache/core/spi/store/tiering/CachingTier<**>;
            4    5     2         e  Lorg/ehcache/spi/resilience/StoreAccessException;
      Exception table:
        from    to  target  type
           1     2       3  Class org.ehcache.spi.resilience.StoreAccessException
    Signature: (Lorg/ehcache/core/spi/store/tiering/CachingTier<**>;)V
    MethodParameters:
          Name  Flags
      resource  

  public void initCachingTier(org.ehcache.core.spi.store.tiering.CachingTier<?, ?>);
    descriptor: (Lorg/ehcache/core/spi/store/tiering/CachingTier;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
        start local 1 // org.ehcache.core.spi.store.tiering.CachingTier resource
         0: .line 1747
            aload 0 /* this */
            aload 1 /* resource */
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.checkResource:(Ljava/lang/Object;)V
         1: .line 1748
            return
        end local 1 // org.ehcache.core.spi.store.tiering.CachingTier resource
        end local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/ehcache/impl/internal/store/heap/OnHeapStore$Provider;
            0    2     1  resource  Lorg/ehcache/core/spi/store/tiering/CachingTier<**>;
    Signature: (Lorg/ehcache/core/spi/store/tiering/CachingTier<**>;)V
    MethodParameters:
          Name  Flags
      resource  

  public <K, V> org.ehcache.core.spi.store.tiering.HigherCachingTier<K, V> createHigherCachingTier(org.ehcache.core.spi.store.Store$Configuration<K, V>, org.ehcache.spi.service.ServiceConfiguration<?, ?>[]);
    descriptor: (Lorg/ehcache/core/spi/store/Store$Configuration;[Lorg/ehcache/spi/service/ServiceConfiguration;)Lorg/ehcache/core/spi/store/tiering/HigherCachingTier;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=10, locals=4, args_size=3
        start local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
        start local 1 // org.ehcache.core.spi.store.Store$Configuration storeConfig
        start local 2 // org.ehcache.spi.service.ServiceConfiguration[] serviceConfigs
         0: .line 1752
            aload 0 /* this */
            aload 1 /* storeConfig */
            new org.ehcache.impl.store.DefaultStoreEventDispatcher
            dup
            aload 1 /* storeConfig */
         1: .line 1753
            invokeinterface org.ehcache.core.spi.store.Store$Configuration.getDispatcherConcurrency:()I
            invokespecial org.ehcache.impl.store.DefaultStoreEventDispatcher.<init>:(I)V
            aload 2 /* serviceConfigs */
         2: .line 1752
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.createStoreInternal:(Lorg/ehcache/core/spi/store/Store$Configuration;Lorg/ehcache/core/events/StoreEventDispatcher;[Lorg/ehcache/spi/service/ServiceConfiguration;)Lorg/ehcache/impl/internal/store/heap/OnHeapStore;
            astore 3 /* higherCachingTier */
        start local 3 // org.ehcache.impl.internal.store.heap.OnHeapStore higherCachingTier
         3: .line 1755
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.tierOperationStatistics:Ljava/util/Map;
            aload 3 /* higherCachingTier */
            iconst_2
            anewarray org.ehcache.core.statistics.OperationStatistic
            dup
            iconst_0
         4: .line 1756
            aload 0 /* this */
            aload 3 /* higherCachingTier */
            ldc "get"
            getstatic org.ehcache.core.statistics.TierOperationOutcomes.GET_OR_COMPUTEIFABSENT_TRANSLATION:Ljava/util/Map;
            ldc "getOrComputeIfAbsent"
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.createTranslatedStatistic:(Lorg/ehcache/impl/store/BaseStore;Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)Lorg/ehcache/core/statistics/OperationStatistic;
            aastore
            dup
            iconst_1
         5: .line 1757
            aload 0 /* this */
            aload 3 /* higherCachingTier */
            ldc "eviction"
            getstatic org.ehcache.core.statistics.TierOperationOutcomes.EVICTION_TRANSLATION:Ljava/util/Map;
            ldc "eviction"
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.createTranslatedStatistic:(Lorg/ehcache/impl/store/BaseStore;Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)Lorg/ehcache/core/statistics/OperationStatistic;
            aastore
         6: .line 1755
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 1760
            aload 3 /* higherCachingTier */
            areturn
        end local 3 // org.ehcache.impl.internal.store.heap.OnHeapStore higherCachingTier
        end local 2 // org.ehcache.spi.service.ServiceConfiguration[] serviceConfigs
        end local 1 // org.ehcache.core.spi.store.Store$Configuration storeConfig
        end local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    8     0               this  Lorg/ehcache/impl/internal/store/heap/OnHeapStore$Provider;
            0    8     1        storeConfig  Lorg/ehcache/core/spi/store/Store$Configuration<TK;TV;>;
            0    8     2     serviceConfigs  [Lorg/ehcache/spi/service/ServiceConfiguration;
            3    8     3  higherCachingTier  Lorg/ehcache/impl/internal/store/heap/OnHeapStore<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/ehcache/core/spi/store/Store$Configuration<TK;TV;>;[Lorg/ehcache/spi/service/ServiceConfiguration<**>;)Lorg/ehcache/core/spi/store/tiering/HigherCachingTier<TK;TV;>;
    MethodParameters:
                Name  Flags
      storeConfig     
      serviceConfigs  

  public void releaseHigherCachingTier(org.ehcache.core.spi.store.tiering.HigherCachingTier<?, ?>);
    descriptor: (Lorg/ehcache/core/spi/store/tiering/HigherCachingTier;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
        start local 1 // org.ehcache.core.spi.store.tiering.HigherCachingTier resource
         0: .line 1765
            aload 0 /* this */
            aload 1 /* resource */
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.releaseCachingTier:(Lorg/ehcache/core/spi/store/tiering/CachingTier;)V
         1: .line 1766
            return
        end local 1 // org.ehcache.core.spi.store.tiering.HigherCachingTier resource
        end local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/ehcache/impl/internal/store/heap/OnHeapStore$Provider;
            0    2     1  resource  Lorg/ehcache/core/spi/store/tiering/HigherCachingTier<**>;
    Signature: (Lorg/ehcache/core/spi/store/tiering/HigherCachingTier<**>;)V
    MethodParameters:
          Name  Flags
      resource  

  public void initHigherCachingTier(org.ehcache.core.spi.store.tiering.HigherCachingTier<?, ?>);
    descriptor: (Lorg/ehcache/core/spi/store/tiering/HigherCachingTier;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
        start local 1 // org.ehcache.core.spi.store.tiering.HigherCachingTier resource
         0: .line 1770
            aload 0 /* this */
            aload 1 /* resource */
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.checkResource:(Ljava/lang/Object;)V
         1: .line 1771
            return
        end local 1 // org.ehcache.core.spi.store.tiering.HigherCachingTier resource
        end local 0 // org.ehcache.impl.internal.store.heap.OnHeapStore$Provider this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/ehcache/impl/internal/store/heap/OnHeapStore$Provider;
            0    2     1  resource  Lorg/ehcache/core/spi/store/tiering/HigherCachingTier<**>;
    Signature: (Lorg/ehcache/core/spi/store/tiering/HigherCachingTier<**>;)V
    MethodParameters:
          Name  Flags
      resource  

  public org.ehcache.core.spi.store.Store createStore(org.ehcache.core.spi.store.Store$Configuration, org.ehcache.spi.service.ServiceConfiguration[]);
    descriptor: (Lorg/ehcache/core/spi/store/Store$Configuration;[Lorg/ehcache/spi/service/ServiceConfiguration;)Lorg/ehcache/core/spi/store/Store;
    flags: (0x10c1) ACC_PUBLIC, ACC_BRIDGE, ACC_VARARGS, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            checkcast org.ehcache.core.spi.store.Store$Configuration
            aload 2
            invokevirtual org.ehcache.impl.internal.store.heap.OnHeapStore$Provider.createStore:(Lorg/ehcache/core/spi/store/Store$Configuration;[Lorg/ehcache/spi/service/ServiceConfiguration;)Lorg/ehcache/impl/internal/store/heap/OnHeapStore;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void start(org.ehcache.spi.service.ServiceProvider);
    descriptor: (Lorg/ehcache/spi/service/ServiceProvider;)V
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokespecial org.ehcache.impl.store.BaseStore$BaseStoreProvider.start:(Lorg/ehcache/spi/service/ServiceProvider;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "OnHeapStore.java"
NestHost: org.ehcache.impl.internal.store.heap.OnHeapStore
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public final Core = org.ehcache.config.ResourceType$Core of org.ehcache.config.ResourceType
  public abstract Configuration = org.ehcache.core.spi.store.Store$Configuration of org.ehcache.core.spi.store.Store
  public abstract Provider = org.ehcache.core.spi.store.tiering.CachingTier$Provider of org.ehcache.core.spi.store.tiering.CachingTier
  public abstract Provider = org.ehcache.core.spi.store.tiering.HigherCachingTier$Provider of org.ehcache.core.spi.store.tiering.HigherCachingTier
  public Provider = org.ehcache.impl.internal.store.heap.OnHeapStore$Provider of org.ehcache.impl.internal.store.heap.OnHeapStore
  protected abstract BaseStoreProvider = org.ehcache.impl.store.BaseStore$BaseStoreProvider of org.ehcache.impl.store.BaseStore
    RuntimeVisibleAnnotations: 
      org.ehcache.spi.service.ServiceDependencies(value = {Lorg/ehcache/core/spi/time/TimeSourceService;, Lorg/ehcache/spi/copy/CopyProvider;, Lorg/ehcache/core/spi/store/heap/SizeOfEngineProvider;})