(function (_, kotlin_kotlin) {
  'use strict';
  //region block: imports
  var imul = Math.imul;
  var protoOf = kotlin_kotlin.$_$.uc;
  var interfaceMeta = kotlin_kotlin.$_$.vb;
  var setMetadataFor = kotlin_kotlin.$_$.vc;
  var VOID = kotlin_kotlin.$_$.f;
  var StringCompanionObject_instance = kotlin_kotlin.$_$.a5;
  var Unit_instance = kotlin_kotlin.$_$.m5;
  var emptyList = kotlin_kotlin.$_$.i7;
  var LazyThreadSafetyMode_PUBLICATION_getInstance = kotlin_kotlin.$_$.i;
  var lazy = kotlin_kotlin.$_$.dj;
  var classMeta = kotlin_kotlin.$_$.jb;
  var getKClassFromExpression = kotlin_kotlin.$_$.d;
  var KProperty1 = kotlin_kotlin.$_$.td;
  var getPropertyCallableRef = kotlin_kotlin.$_$.sb;
  var THROW_CCE = kotlin_kotlin.$_$.fi;
  var Entry = kotlin_kotlin.$_$.x5;
  var isInterface = kotlin_kotlin.$_$.ec;
  var IllegalArgumentException_init_$Create$ = kotlin_kotlin.$_$.u1;
  var zip = kotlin_kotlin.$_$.ca;
  var toMap = kotlin_kotlin.$_$.u9;
  var LinkedHashMap_init_$Create$ = kotlin_kotlin.$_$.v;
  var toString = kotlin_kotlin.$_$.zc;
  var IllegalStateException_init_$Create$ = kotlin_kotlin.$_$.a2;
  var mapCapacity = kotlin_kotlin.$_$.k8;
  var LinkedHashMap_init_$Create$_0 = kotlin_kotlin.$_$.u;
  var Map = kotlin_kotlin.$_$.y5;
  var IllegalArgumentException_init_$Init$ = kotlin_kotlin.$_$.r1;
  var objectCreate = kotlin_kotlin.$_$.sc;
  var captureStack = kotlin_kotlin.$_$.db;
  var IllegalArgumentException_init_$Init$_0 = kotlin_kotlin.$_$.t1;
  var IllegalArgumentException_init_$Init$_1 = kotlin_kotlin.$_$.v1;
  var IllegalArgumentException = kotlin_kotlin.$_$.vh;
  var listOf = kotlin_kotlin.$_$.i8;
  var collectionSizeOrDefault = kotlin_kotlin.$_$.n6;
  var ArrayList_init_$Create$ = kotlin_kotlin.$_$.l;
  var KClass = kotlin_kotlin.$_$.qd;
  var Triple = kotlin_kotlin.$_$.ii;
  var getKClass = kotlin_kotlin.$_$.e;
  var Pair = kotlin_kotlin.$_$.ci;
  var LinkedHashMap = kotlin_kotlin.$_$.u5;
  var MutableMap = kotlin_kotlin.$_$.a6;
  var HashMap = kotlin_kotlin.$_$.q5;
  var LinkedHashSet = kotlin_kotlin.$_$.v5;
  var MutableSet = kotlin_kotlin.$_$.b6;
  var Set = kotlin_kotlin.$_$.c6;
  var HashSet = kotlin_kotlin.$_$.r5;
  var ArrayList = kotlin_kotlin.$_$.o5;
  var MutableList = kotlin_kotlin.$_$.z5;
  var List = kotlin_kotlin.$_$.w5;
  var Collection = kotlin_kotlin.$_$.p5;
  var copyToArray = kotlin_kotlin.$_$.e7;
  var _Result___get_value__impl__bjfvqg = kotlin_kotlin.$_$.g3;
  var _Result___get_isFailure__impl__jpiriv = kotlin_kotlin.$_$.f3;
  var Result = kotlin_kotlin.$_$.di;
  var ensureNotNull = kotlin_kotlin.$_$.yi;
  var equals = kotlin_kotlin.$_$.mb;
  var getStringHashCode = kotlin_kotlin.$_$.tb;
  var Iterator = kotlin_kotlin.$_$.t5;
  var isBlank = kotlin_kotlin.$_$.cf;
  var toList = kotlin_kotlin.$_$.s9;
  var ArrayList_init_$Create$_0 = kotlin_kotlin.$_$.m;
  var HashSet_init_$Create$ = kotlin_kotlin.$_$.s;
  var toHashSet = kotlin_kotlin.$_$.p9;
  var toBooleanArray = kotlin_kotlin.$_$.o9;
  var withIndex = kotlin_kotlin.$_$.ba;
  var to = kotlin_kotlin.$_$.mj;
  var lazy_0 = kotlin_kotlin.$_$.ej;
  var contentEquals = kotlin_kotlin.$_$.q6;
  var until = kotlin_kotlin.$_$.pd;
  var joinToString = kotlin_kotlin.$_$.z7;
  var objectMeta = kotlin_kotlin.$_$.tc;
  var Long = kotlin_kotlin.$_$.yh;
  var Char = kotlin_kotlin.$_$.nh;
  var Duration__toIsoString_impl_9h6wsm = kotlin_kotlin.$_$.t2;
  var Duration = kotlin_kotlin.$_$.jh;
  var Companion_getInstance = kotlin_kotlin.$_$.e5;
  var toIntOrNull = kotlin_kotlin.$_$.rg;
  var hashCode = kotlin_kotlin.$_$.ub;
  var ArrayList_init_$Create$_1 = kotlin_kotlin.$_$.n;
  var HashSet_init_$Create$_0 = kotlin_kotlin.$_$.t;
  var LinkedHashSet_init_$Create$ = kotlin_kotlin.$_$.x;
  var LinkedHashSet_init_$Create$_0 = kotlin_kotlin.$_$.y;
  var HashMap_init_$Create$ = kotlin_kotlin.$_$.p;
  var HashMap_init_$Create$_0 = kotlin_kotlin.$_$.q;
  var LinkedHashMap_init_$Create$_1 = kotlin_kotlin.$_$.w;
  var isArray = kotlin_kotlin.$_$.wb;
  var arrayIterator = kotlin_kotlin.$_$.bb;
  var asList = kotlin_kotlin.$_$.g6;
  var step = kotlin_kotlin.$_$.od;
  var getValue = kotlin_kotlin.$_$.t7;
  var longArray = kotlin_kotlin.$_$.kc;
  var Companion_getInstance_0 = kotlin_kotlin.$_$.g5;
  var get_lastIndex = kotlin_kotlin.$_$.c8;
  var countTrailingZeroBits = kotlin_kotlin.$_$.wi;
  var indexOf = kotlin_kotlin.$_$.u7;
  var contentToString = kotlin_kotlin.$_$.u6;
  var Enum = kotlin_kotlin.$_$.sh;
  var fillArrayVal = kotlin_kotlin.$_$.ob;
  var HashSet_init_$Create$_1 = kotlin_kotlin.$_$.r;
  var KTypeParameter = kotlin_kotlin.$_$.ud;
  var booleanArray = kotlin_kotlin.$_$.cb;
  var emptyMap = kotlin_kotlin.$_$.j7;
  var contentHashCode = kotlin_kotlin.$_$.t6;
  var Companion_getInstance_1 = kotlin_kotlin.$_$.f5;
  var isCharArray = kotlin_kotlin.$_$.zb;
  var charArray = kotlin_kotlin.$_$.fb;
  var DoubleCompanionObject_instance = kotlin_kotlin.$_$.w4;
  var isDoubleArray = kotlin_kotlin.$_$.bc;
  var FloatCompanionObject_instance = kotlin_kotlin.$_$.x4;
  var isFloatArray = kotlin_kotlin.$_$.cc;
  var isLongArray = kotlin_kotlin.$_$.fc;
  var Companion_getInstance_2 = kotlin_kotlin.$_$.k5;
  var _ULongArray___get_size__impl__ju6dtr = kotlin_kotlin.$_$.h4;
  var ULongArray = kotlin_kotlin.$_$.ni;
  var _ULongArray___init__impl__twm1l3 = kotlin_kotlin.$_$.d4;
  var _ULong___init__impl__c78o9k = kotlin_kotlin.$_$.a4;
  var ULongArray__get_impl_pr71q9 = kotlin_kotlin.$_$.f4;
  var _ULong___get_data__impl__fggpzb = kotlin_kotlin.$_$.b4;
  var IntCompanionObject_instance = kotlin_kotlin.$_$.y4;
  var isIntArray = kotlin_kotlin.$_$.dc;
  var Companion_getInstance_3 = kotlin_kotlin.$_$.j5;
  var _UIntArray___get_size__impl__r6l8ci = kotlin_kotlin.$_$.y3;
  var UIntArray = kotlin_kotlin.$_$.li;
  var _UIntArray___init__impl__ghjpc6 = kotlin_kotlin.$_$.u3;
  var _UInt___init__impl__l7qpdl = kotlin_kotlin.$_$.q3;
  var UIntArray__get_impl_gp5kza = kotlin_kotlin.$_$.w3;
  var _UInt___get_data__impl__f0vqqw = kotlin_kotlin.$_$.s3;
  var ShortCompanionObject_instance = kotlin_kotlin.$_$.z4;
  var isShortArray = kotlin_kotlin.$_$.gc;
  var Companion_getInstance_4 = kotlin_kotlin.$_$.l5;
  var _UShortArray___get_size__impl__jqto1b = kotlin_kotlin.$_$.q4;
  var UShortArray = kotlin_kotlin.$_$.pi;
  var _UShortArray___init__impl__9b26ef = kotlin_kotlin.$_$.m4;
  var _UShort___init__impl__jigrne = kotlin_kotlin.$_$.j4;
  var UShortArray__get_impl_fnbhmx = kotlin_kotlin.$_$.o4;
  var _UShort___get_data__impl__g0245 = kotlin_kotlin.$_$.k4;
  var ByteCompanionObject_instance = kotlin_kotlin.$_$.v4;
  var isByteArray = kotlin_kotlin.$_$.yb;
  var Companion_getInstance_5 = kotlin_kotlin.$_$.i5;
  var _UByteArray___get_size__impl__h6pkdv = kotlin_kotlin.$_$.o3;
  var UByteArray = kotlin_kotlin.$_$.ji;
  var _UByteArray___init__impl__ip4y9n = kotlin_kotlin.$_$.l3;
  var _UByte___init__impl__g9hnc4 = kotlin_kotlin.$_$.h3;
  var UByteArray__get_impl_t5f3hv = kotlin_kotlin.$_$.m3;
  var _UByte___get_data__impl__jof9qr = kotlin_kotlin.$_$.i3;
  var BooleanCompanionObject_instance = kotlin_kotlin.$_$.u4;
  var isBooleanArray = kotlin_kotlin.$_$.xb;
  var coerceAtLeast = kotlin_kotlin.$_$.hd;
  var copyOf = kotlin_kotlin.$_$.y6;
  var copyOf_0 = kotlin_kotlin.$_$.a7;
  var copyOf_1 = kotlin_kotlin.$_$.b7;
  var copyOf_2 = kotlin_kotlin.$_$.w6;
  var _ULongArray___get_storage__impl__28e64j = kotlin_kotlin.$_$.i4;
  var _ULongArray___init__impl__twm1l3_0 = kotlin_kotlin.$_$.e4;
  var ULongArray__set_impl_z19mvh = kotlin_kotlin.$_$.g4;
  var copyOf_3 = kotlin_kotlin.$_$.d7;
  var _UIntArray___get_storage__impl__92a0v0 = kotlin_kotlin.$_$.z3;
  var _UIntArray___init__impl__ghjpc6_0 = kotlin_kotlin.$_$.v3;
  var UIntArray__set_impl_7f2zu2 = kotlin_kotlin.$_$.x3;
  var copyOf_4 = kotlin_kotlin.$_$.v6;
  var _UShortArray___get_storage__impl__t2jpv5 = kotlin_kotlin.$_$.r4;
  var _UShortArray___init__impl__9b26ef_0 = kotlin_kotlin.$_$.n4;
  var UShortArray__set_impl_6d8whp = kotlin_kotlin.$_$.p4;
  var copyOf_5 = kotlin_kotlin.$_$.z6;
  var _UByteArray___get_storage__impl__d4kctt = kotlin_kotlin.$_$.p3;
  var _UByteArray___init__impl__ip4y9n_0 = kotlin_kotlin.$_$.k3;
  var UByteArray__set_impl_jvcicn = kotlin_kotlin.$_$.n3;
  var copyOf_6 = kotlin_kotlin.$_$.x6;
  var Unit = kotlin_kotlin.$_$.ri;
  var trimIndent = kotlin_kotlin.$_$.eh;
  var equals_0 = kotlin_kotlin.$_$.we;
  var charSequenceLength = kotlin_kotlin.$_$.hb;
  var charSequenceGet = kotlin_kotlin.$_$.gb;
  var toString_0 = kotlin_kotlin.$_$.c3;
  var titlecase = kotlin_kotlin.$_$.jg;
  var isLowerCase = kotlin_kotlin.$_$.hf;
  var PrimitiveClasses_getInstance = kotlin_kotlin.$_$.c5;
  var ULong = kotlin_kotlin.$_$.oi;
  var UInt = kotlin_kotlin.$_$.mi;
  var UShort = kotlin_kotlin.$_$.qi;
  var UByte = kotlin_kotlin.$_$.ki;
  var mapOf = kotlin_kotlin.$_$.m8;
  var lastOrNull = kotlin_kotlin.$_$.f8;
  var get_lastIndex_0 = kotlin_kotlin.$_$.d8;
  var asSequence = kotlin_kotlin.$_$.h6;
  var get_js = kotlin_kotlin.$_$.ic;
  var findAssociatedObject = kotlin_kotlin.$_$.c;
  var get_indices = kotlin_kotlin.$_$.x7;
  var IndexOutOfBoundsException_init_$Create$ = kotlin_kotlin.$_$.e2;
  var get_indices_0 = kotlin_kotlin.$_$.w7;
  var Companion_instance = kotlin_kotlin.$_$.h5;
  var _Result___init__impl__xyqfz8 = kotlin_kotlin.$_$.d3;
  var createFailure = kotlin_kotlin.$_$.xi;
  //endregion
  //region block: pre-declaration
  setMetadataFor(SerializationStrategy, 'SerializationStrategy', interfaceMeta);
  setMetadataFor(DeserializationStrategy, 'DeserializationStrategy', interfaceMeta);
  setMetadataFor(KSerializer, 'KSerializer', interfaceMeta, VOID, [SerializationStrategy, DeserializationStrategy]);
  setMetadataFor(AbstractPolymorphicSerializer, 'AbstractPolymorphicSerializer', classMeta, VOID, [KSerializer]);
  setMetadataFor(PolymorphicSerializer, 'PolymorphicSerializer', classMeta, AbstractPolymorphicSerializer);
  setMetadataFor(_no_name_provided__qut3iv, VOID, classMeta);
  setMetadataFor(SealedClassSerializer, 'SealedClassSerializer', classMeta, AbstractPolymorphicSerializer);
  setMetadataFor(StringFormat, 'StringFormat', interfaceMeta);
  setMetadataFor(BinaryFormat, 'BinaryFormat', interfaceMeta);
  setMetadataFor(SerializationException, 'SerializationException', classMeta, IllegalArgumentException, VOID, SerializationException_init_$Create$);
  setMetadataFor(UnknownFieldException, 'UnknownFieldException', classMeta, SerializationException);
  setMetadataFor(MissingFieldException, 'MissingFieldException', classMeta, SerializationException);
  function get_isNullable() {
    return false;
  }
  function get_isInline() {
    return false;
  }
  function get_annotations() {
    return emptyList();
  }
  setMetadataFor(SerialDescriptor, 'SerialDescriptor', interfaceMeta);
  setMetadataFor(ContextDescriptor, 'ContextDescriptor', classMeta, VOID, [SerialDescriptor]);
  setMetadataFor(elementDescriptors$1$1, VOID, classMeta, VOID, [Iterator]);
  setMetadataFor(_no_name_provided__qut3iv_0, VOID, classMeta);
  setMetadataFor(elementNames$1$1, VOID, classMeta, VOID, [Iterator]);
  setMetadataFor(_no_name_provided__qut3iv_1, VOID, classMeta);
  setMetadataFor(ClassSerialDescriptorBuilder, 'ClassSerialDescriptorBuilder', classMeta);
  setMetadataFor(CachedNames, 'CachedNames', interfaceMeta);
  setMetadataFor(SerialDescriptorImpl, 'SerialDescriptorImpl', classMeta, VOID, [SerialDescriptor, CachedNames]);
  setMetadataFor(WrappedSerialDescriptor, 'WrappedSerialDescriptor', classMeta, VOID, [SerialDescriptor]);
  setMetadataFor(SerialKind, 'SerialKind', classMeta);
  setMetadataFor(ENUM, 'ENUM', objectMeta, SerialKind);
  setMetadataFor(CONTEXTUAL, 'CONTEXTUAL', objectMeta, SerialKind);
  setMetadataFor(PrimitiveKind, 'PrimitiveKind', classMeta, SerialKind);
  setMetadataFor(BOOLEAN, 'BOOLEAN', objectMeta, PrimitiveKind);
  setMetadataFor(BYTE, 'BYTE', objectMeta, PrimitiveKind);
  setMetadataFor(CHAR, 'CHAR', objectMeta, PrimitiveKind);
  setMetadataFor(SHORT, 'SHORT', objectMeta, PrimitiveKind);
  setMetadataFor(INT, 'INT', objectMeta, PrimitiveKind);
  setMetadataFor(LONG, 'LONG', objectMeta, PrimitiveKind);
  setMetadataFor(FLOAT, 'FLOAT', objectMeta, PrimitiveKind);
  setMetadataFor(DOUBLE, 'DOUBLE', objectMeta, PrimitiveKind);
  setMetadataFor(STRING, 'STRING', objectMeta, PrimitiveKind);
  setMetadataFor(StructureKind, 'StructureKind', classMeta, SerialKind);
  setMetadataFor(CLASS, 'CLASS', objectMeta, StructureKind);
  setMetadataFor(LIST, 'LIST', objectMeta, StructureKind);
  setMetadataFor(MAP, 'MAP', objectMeta, StructureKind);
  setMetadataFor(OBJECT, 'OBJECT', objectMeta, StructureKind);
  setMetadataFor(PolymorphicKind, 'PolymorphicKind', classMeta, SerialKind);
  setMetadataFor(SEALED, 'SEALED', objectMeta, PolymorphicKind);
  setMetadataFor(OPEN, 'OPEN', objectMeta, PolymorphicKind);
  function decodeSerializableValue(deserializer) {
    return deserializer.x4a(this);
  }
  setMetadataFor(Decoder, 'Decoder', interfaceMeta);
  function decodeSequentially() {
    return false;
  }
  function decodeCollectionSize(descriptor) {
    return -1;
  }
  function decodeSerializableElement$default(descriptor, index, deserializer, previousValue, $super) {
    previousValue = previousValue === VOID ? null : previousValue;
    return $super === VOID ? this.z4e(descriptor, index, deserializer, previousValue) : $super.z4e.call(this, descriptor, index, deserializer, previousValue);
  }
  setMetadataFor(CompositeDecoder, 'CompositeDecoder', interfaceMeta);
  setMetadataFor(AbstractDecoder, 'AbstractDecoder', classMeta, VOID, [Decoder, CompositeDecoder]);
  function encodeNotNullMark() {
  }
  function beginCollection(descriptor, collectionSize) {
    return this.n4e(descriptor);
  }
  function encodeSerializableValue(serializer, value) {
    serializer.w4a(this, value);
  }
  function encodeNullableSerializableValue(serializer, value) {
    var isNullabilitySupported = serializer.v4a().g4c();
    if (isNullabilitySupported) {
      return this.e4g(isInterface(serializer, SerializationStrategy) ? serializer : THROW_CCE(), value);
    }
    if (value == null) {
      this.h4f();
    } else {
      this.h4g();
      this.e4g(serializer, value);
    }
  }
  setMetadataFor(Encoder, 'Encoder', interfaceMeta);
  function shouldEncodeElementDefault(descriptor, index) {
    return true;
  }
  setMetadataFor(CompositeEncoder, 'CompositeEncoder', interfaceMeta);
  setMetadataFor(AbstractEncoder, 'AbstractEncoder', classMeta, VOID, [Encoder, CompositeEncoder]);
  setMetadataFor(Companion, 'Companion', objectMeta);
  setMetadataFor(NothingSerializer_0, 'NothingSerializer', objectMeta, VOID, [KSerializer]);
  setMetadataFor(DurationSerializer, 'DurationSerializer', objectMeta, VOID, [KSerializer]);
  setMetadataFor(ListLikeDescriptor, 'ListLikeDescriptor', classMeta, VOID, [SerialDescriptor]);
  setMetadataFor(ArrayListClassDesc, 'ArrayListClassDesc', classMeta, ListLikeDescriptor);
  setMetadataFor(HashSetClassDesc, 'HashSetClassDesc', classMeta, ListLikeDescriptor);
  setMetadataFor(LinkedHashSetClassDesc, 'LinkedHashSetClassDesc', classMeta, ListLikeDescriptor);
  setMetadataFor(MapLikeDescriptor, 'MapLikeDescriptor', classMeta, VOID, [SerialDescriptor]);
  setMetadataFor(HashMapClassDesc, 'HashMapClassDesc', classMeta, MapLikeDescriptor);
  setMetadataFor(LinkedHashMapClassDesc, 'LinkedHashMapClassDesc', classMeta, MapLikeDescriptor);
  setMetadataFor(ArrayClassDesc, 'ArrayClassDesc', classMeta, ListLikeDescriptor);
  setMetadataFor(PrimitiveArrayDescriptor, 'PrimitiveArrayDescriptor', classMeta, ListLikeDescriptor);
  setMetadataFor(AbstractCollectionSerializer, 'AbstractCollectionSerializer', classMeta, VOID, [KSerializer]);
  setMetadataFor(CollectionLikeSerializer, 'CollectionLikeSerializer', classMeta, AbstractCollectionSerializer);
  setMetadataFor(CollectionSerializer, 'CollectionSerializer', classMeta, CollectionLikeSerializer);
  setMetadataFor(ArrayListSerializer, 'ArrayListSerializer', classMeta, CollectionSerializer);
  setMetadataFor(HashSetSerializer, 'HashSetSerializer', classMeta, CollectionSerializer);
  setMetadataFor(LinkedHashSetSerializer, 'LinkedHashSetSerializer', classMeta, CollectionSerializer);
  setMetadataFor(MapLikeSerializer, 'MapLikeSerializer', classMeta, AbstractCollectionSerializer);
  setMetadataFor(HashMapSerializer, 'HashMapSerializer', classMeta, MapLikeSerializer);
  setMetadataFor(LinkedHashMapSerializer, 'LinkedHashMapSerializer', classMeta, MapLikeSerializer);
  setMetadataFor(ReferenceArraySerializer, 'ReferenceArraySerializer', classMeta, CollectionLikeSerializer);
  setMetadataFor(PrimitiveArraySerializer, 'PrimitiveArraySerializer', classMeta, CollectionLikeSerializer);
  setMetadataFor(PrimitiveArrayBuilder, 'PrimitiveArrayBuilder', classMeta);
  setMetadataFor(Companion_0, 'Companion', objectMeta);
  setMetadataFor(ElementMarker, 'ElementMarker', classMeta);
  setMetadataFor(EnumSerializer, 'EnumSerializer', classMeta, VOID, [KSerializer]);
  setMetadataFor(PluginGeneratedSerialDescriptor, 'PluginGeneratedSerialDescriptor', classMeta, VOID, [SerialDescriptor, CachedNames]);
  setMetadataFor(EnumDescriptor, 'EnumDescriptor', classMeta, PluginGeneratedSerialDescriptor);
  setMetadataFor(InlineClassDescriptor, 'InlineClassDescriptor', classMeta, PluginGeneratedSerialDescriptor);
  function typeParametersSerializers() {
    return get_EMPTY_SERIALIZER_ARRAY();
  }
  setMetadataFor(GeneratedSerializer, 'GeneratedSerializer', interfaceMeta, VOID, [KSerializer]);
  setMetadataFor(InlinePrimitiveDescriptor$1, VOID, classMeta, VOID, [GeneratedSerializer]);
  setMetadataFor(NoOpEncoder, 'NoOpEncoder', objectMeta, AbstractEncoder);
  setMetadataFor(NothingSerialDescriptor, 'NothingSerialDescriptor', objectMeta, VOID, [SerialDescriptor]);
  setMetadataFor(NullableSerializer, 'NullableSerializer', classMeta, VOID, [KSerializer]);
  setMetadataFor(SerialDescriptorForNullable, 'SerialDescriptorForNullable', classMeta, VOID, [SerialDescriptor, CachedNames]);
  setMetadataFor(ObjectSerializer, 'ObjectSerializer', classMeta, VOID, [KSerializer]);
  setMetadataFor(SerializerFactory, 'SerializerFactory', interfaceMeta);
  setMetadataFor(CharArraySerializer_0, 'CharArraySerializer', objectMeta, PrimitiveArraySerializer, [KSerializer, PrimitiveArraySerializer]);
  setMetadataFor(DoubleArraySerializer_0, 'DoubleArraySerializer', objectMeta, PrimitiveArraySerializer, [KSerializer, PrimitiveArraySerializer]);
  setMetadataFor(FloatArraySerializer_0, 'FloatArraySerializer', objectMeta, PrimitiveArraySerializer, [KSerializer, PrimitiveArraySerializer]);
  setMetadataFor(LongArraySerializer_0, 'LongArraySerializer', objectMeta, PrimitiveArraySerializer, [KSerializer, PrimitiveArraySerializer]);
  setMetadataFor(ULongArraySerializer_0, 'ULongArraySerializer', objectMeta, PrimitiveArraySerializer, [KSerializer, PrimitiveArraySerializer]);
  setMetadataFor(IntArraySerializer_0, 'IntArraySerializer', objectMeta, PrimitiveArraySerializer, [KSerializer, PrimitiveArraySerializer]);
  setMetadataFor(UIntArraySerializer_0, 'UIntArraySerializer', objectMeta, PrimitiveArraySerializer, [KSerializer, PrimitiveArraySerializer]);
  setMetadataFor(ShortArraySerializer_0, 'ShortArraySerializer', objectMeta, PrimitiveArraySerializer, [KSerializer, PrimitiveArraySerializer]);
  setMetadataFor(UShortArraySerializer_0, 'UShortArraySerializer', objectMeta, PrimitiveArraySerializer, [KSerializer, PrimitiveArraySerializer]);
  setMetadataFor(ByteArraySerializer_0, 'ByteArraySerializer', objectMeta, PrimitiveArraySerializer, [KSerializer, PrimitiveArraySerializer]);
  setMetadataFor(UByteArraySerializer_0, 'UByteArraySerializer', objectMeta, PrimitiveArraySerializer, [KSerializer, PrimitiveArraySerializer]);
  setMetadataFor(BooleanArraySerializer_0, 'BooleanArraySerializer', objectMeta, PrimitiveArraySerializer, [KSerializer, PrimitiveArraySerializer]);
  setMetadataFor(CharArrayBuilder, 'CharArrayBuilder', classMeta, PrimitiveArrayBuilder);
  setMetadataFor(DoubleArrayBuilder, 'DoubleArrayBuilder', classMeta, PrimitiveArrayBuilder);
  setMetadataFor(FloatArrayBuilder, 'FloatArrayBuilder', classMeta, PrimitiveArrayBuilder);
  setMetadataFor(LongArrayBuilder, 'LongArrayBuilder', classMeta, PrimitiveArrayBuilder);
  setMetadataFor(ULongArrayBuilder, 'ULongArrayBuilder', classMeta, PrimitiveArrayBuilder);
  setMetadataFor(IntArrayBuilder, 'IntArrayBuilder', classMeta, PrimitiveArrayBuilder);
  setMetadataFor(UIntArrayBuilder, 'UIntArrayBuilder', classMeta, PrimitiveArrayBuilder);
  setMetadataFor(ShortArrayBuilder, 'ShortArrayBuilder', classMeta, PrimitiveArrayBuilder);
  setMetadataFor(UShortArrayBuilder, 'UShortArrayBuilder', classMeta, PrimitiveArrayBuilder);
  setMetadataFor(ByteArrayBuilder, 'ByteArrayBuilder', classMeta, PrimitiveArrayBuilder);
  setMetadataFor(UByteArrayBuilder, 'UByteArrayBuilder', classMeta, PrimitiveArrayBuilder);
  setMetadataFor(BooleanArrayBuilder, 'BooleanArrayBuilder', classMeta, PrimitiveArrayBuilder);
  setMetadataFor(StringSerializer, 'StringSerializer', objectMeta, VOID, [KSerializer]);
  setMetadataFor(CharSerializer, 'CharSerializer', objectMeta, VOID, [KSerializer]);
  setMetadataFor(DoubleSerializer, 'DoubleSerializer', objectMeta, VOID, [KSerializer]);
  setMetadataFor(FloatSerializer, 'FloatSerializer', objectMeta, VOID, [KSerializer]);
  setMetadataFor(LongSerializer, 'LongSerializer', objectMeta, VOID, [KSerializer]);
  setMetadataFor(IntSerializer, 'IntSerializer', objectMeta, VOID, [KSerializer]);
  setMetadataFor(ShortSerializer, 'ShortSerializer', objectMeta, VOID, [KSerializer]);
  setMetadataFor(ByteSerializer, 'ByteSerializer', objectMeta, VOID, [KSerializer]);
  setMetadataFor(BooleanSerializer, 'BooleanSerializer', objectMeta, VOID, [KSerializer]);
  setMetadataFor(UnitSerializer, 'UnitSerializer', objectMeta, VOID, [KSerializer]);
  setMetadataFor(PrimitiveSerialDescriptor_0, 'PrimitiveSerialDescriptor', classMeta, VOID, [SerialDescriptor]);
  setMetadataFor(TaggedDecoder, 'TaggedDecoder', classMeta, VOID, [Decoder, CompositeDecoder]);
  setMetadataFor(NamedValueDecoder, 'NamedValueDecoder', classMeta, TaggedDecoder);
  setMetadataFor(MapEntry, 'MapEntry', classMeta, VOID, [Entry]);
  setMetadataFor(KeyValueSerializer, 'KeyValueSerializer', classMeta, VOID, [KSerializer]);
  setMetadataFor(MapEntrySerializer_0, 'MapEntrySerializer', classMeta, KeyValueSerializer);
  setMetadataFor(PairSerializer_0, 'PairSerializer', classMeta, KeyValueSerializer);
  setMetadataFor(TripleSerializer_0, 'TripleSerializer', classMeta, VOID, [KSerializer]);
  setMetadataFor(ULongSerializer, 'ULongSerializer', objectMeta, VOID, [KSerializer]);
  setMetadataFor(UIntSerializer, 'UIntSerializer', objectMeta, VOID, [KSerializer]);
  setMetadataFor(UShortSerializer, 'UShortSerializer', objectMeta, VOID, [KSerializer]);
  setMetadataFor(UByteSerializer, 'UByteSerializer', objectMeta, VOID, [KSerializer]);
  setMetadataFor(SerializersModule, 'SerializersModule', classMeta);
  setMetadataFor(SerialModuleImpl, 'SerialModuleImpl', classMeta, SerializersModule);
  setMetadataFor(ContextualProvider, 'ContextualProvider', classMeta);
  setMetadataFor(Argless, 'Argless', classMeta, ContextualProvider);
  setMetadataFor(WithTypeArguments, 'WithTypeArguments', classMeta, ContextualProvider);
  function contextual(kClass, serializer) {
    return this.v4u(kClass, SerializersModuleCollector$contextual$lambda(serializer));
  }
  setMetadataFor(SerializersModuleCollector, 'SerializersModuleCollector', interfaceMeta);
  setMetadataFor(SerializersModuleBuilder, 'SerializersModuleBuilder', classMeta, VOID, [SerializersModuleCollector]);
  setMetadataFor(SerializerAlreadyRegisteredException, 'SerializerAlreadyRegisteredException', classMeta, IllegalArgumentException);
  setMetadataFor(SerializableWith, 'SerializableWith', classMeta, VOID, VOID, VOID, 0);
  setMetadataFor(createCache$1, VOID, classMeta);
  setMetadataFor(createParametrizedCache$1, VOID, classMeta);
  //endregion
  function KSerializer() {
  }
  function SerializationStrategy() {
  }
  function DeserializationStrategy() {
  }
  function PolymorphicSerializer$descriptor$delegate$lambda$lambda(this$0) {
    return function ($this$buildSerialDescriptor) {
      $this$buildSerialDescriptor.g4b('type', serializer_2(StringCompanionObject_instance).v4a());
      $this$buildSerialDescriptor.g4b('value', buildSerialDescriptor('kotlinx.serialization.Polymorphic<' + this$0.h4b_1.f7() + '>', CONTEXTUAL_getInstance(), []));
      $this$buildSerialDescriptor.a4b_1 = this$0.i4b_1;
      return Unit_instance;
    };
  }
  function PolymorphicSerializer$descriptor$delegate$lambda(this$0) {
    return function () {
      var tmp = OPEN_getInstance();
      return withContext(buildSerialDescriptor('kotlinx.serialization.Polymorphic', tmp, [], PolymorphicSerializer$descriptor$delegate$lambda$lambda(this$0)), this$0.h4b_1);
    };
  }
  function PolymorphicSerializer(baseClass) {
    AbstractPolymorphicSerializer.call(this);
    this.h4b_1 = baseClass;
    this.i4b_1 = emptyList();
    var tmp = this;
    var tmp_0 = LazyThreadSafetyMode_PUBLICATION_getInstance();
    tmp.j4b_1 = lazy(tmp_0, PolymorphicSerializer$descriptor$delegate$lambda(this));
  }
  protoOf(PolymorphicSerializer).k4b = function () {
    return this.h4b_1;
  };
  protoOf(PolymorphicSerializer).v4a = function () {
    // Inline function 'kotlin.getValue' call
    var this_0 = this.j4b_1;
    descriptor$factory();
    return this_0.t2();
  };
  protoOf(PolymorphicSerializer).toString = function () {
    return 'kotlinx.serialization.PolymorphicSerializer(baseClass: ' + this.h4b_1 + ')';
  };
  function findPolymorphicSerializer(_this__u8e3s4, encoder, value) {
    var tmp0_elvis_lhs = _this__u8e3s4.n4b(encoder, value);
    var tmp;
    if (tmp0_elvis_lhs == null) {
      throwSubtypeNotRegistered(getKClassFromExpression(value), _this__u8e3s4.k4b());
    } else {
      tmp = tmp0_elvis_lhs;
    }
    return tmp;
  }
  function findPolymorphicSerializer_0(_this__u8e3s4, decoder, klassName) {
    var tmp0_elvis_lhs = _this__u8e3s4.m4b(decoder, klassName);
    var tmp;
    if (tmp0_elvis_lhs == null) {
      throwSubtypeNotRegistered_0(klassName, _this__u8e3s4.k4b());
    } else {
      tmp = tmp0_elvis_lhs;
    }
    return tmp;
  }
  function descriptor$factory() {
    return getPropertyCallableRef('descriptor', 1, KProperty1, function (receiver) {
      return receiver.v4a();
    }, null);
  }
  function SealedClassSerializer$descriptor$delegate$lambda$lambda$lambda(this$0) {
    return function ($this$buildSerialDescriptor) {
      // Inline function 'kotlin.collections.iterator' call
      var tmp0_iterator = this$0.s4b_1.q2().w();
      while (tmp0_iterator.f()) {
        var element = tmp0_iterator.e();
        // Inline function 'kotlinx.serialization.SealedClassSerializer.descriptor$delegate.<anonymous>.<anonymous>.<anonymous>.<anonymous>' call
        // Inline function 'kotlin.collections.component1' call
        var name = element.s2();
        // Inline function 'kotlin.collections.component2' call
        var serializer = element.t2();
        $this$buildSerialDescriptor.g4b(name, serializer.v4a());
      }
      return Unit_instance;
    };
  }
  function SealedClassSerializer$descriptor$delegate$lambda$lambda(this$0) {
    return function ($this$buildSerialDescriptor) {
      $this$buildSerialDescriptor.g4b('type', serializer_2(StringCompanionObject_instance).v4a());
      var tmp = 'kotlinx.serialization.Sealed<' + this$0.o4b_1.f7() + '>';
      var tmp_0 = CONTEXTUAL_getInstance();
      var elementDescriptor = buildSerialDescriptor(tmp, tmp_0, [], SealedClassSerializer$descriptor$delegate$lambda$lambda$lambda(this$0));
      $this$buildSerialDescriptor.g4b('value', elementDescriptor);
      $this$buildSerialDescriptor.a4b_1 = this$0.p4b_1;
      return Unit_instance;
    };
  }
  function SealedClassSerializer$descriptor$delegate$lambda($serialName, this$0) {
    return function () {
      var tmp = SEALED_getInstance();
      return buildSerialDescriptor($serialName, tmp, [], SealedClassSerializer$descriptor$delegate$lambda$lambda(this$0));
    };
  }
  function _no_name_provided__qut3iv($this) {
    this.t4b_1 = $this;
  }
  protoOf(_no_name_provided__qut3iv).o = function () {
    return this.t4b_1.w();
  };
  protoOf(_no_name_provided__qut3iv).u4b = function (element) {
    // Inline function 'kotlinx.serialization.SealedClassSerializer.<anonymous>' call
    return element.t2().v4a().v4b();
  };
  protoOf(_no_name_provided__qut3iv).p = function (element) {
    return this.u4b((!(element == null) ? isInterface(element, Entry) : false) ? element : THROW_CCE());
  };
  function SealedClassSerializer(serialName, baseClass, subclasses, subclassSerializers) {
    AbstractPolymorphicSerializer.call(this);
    this.o4b_1 = baseClass;
    this.p4b_1 = emptyList();
    var tmp = this;
    var tmp_0 = LazyThreadSafetyMode_PUBLICATION_getInstance();
    tmp.q4b_1 = lazy(tmp_0, SealedClassSerializer$descriptor$delegate$lambda(serialName, this));
    if (!(subclasses.length === subclassSerializers.length)) {
      throw IllegalArgumentException_init_$Create$('All subclasses of sealed class ' + this.o4b_1.f7() + ' should be marked @Serializable');
    }
    this.r4b_1 = toMap(zip(subclasses, subclassSerializers));
    var tmp_1 = this;
    // Inline function 'kotlin.collections.mapValues' call
    // Inline function 'kotlin.collections.aggregate' call
    // Inline function 'kotlin.collections.groupingBy' call
    var this_0 = this.r4b_1.q2();
    // Inline function 'kotlin.collections.aggregateTo' call
    var this_1 = new _no_name_provided__qut3iv(this_0);
    // Inline function 'kotlin.collections.mutableMapOf' call
    var destination = LinkedHashMap_init_$Create$();
    // Inline function 'kotlin.collections.iterator' call
    var tmp0_iterator = this_1.o();
    while (tmp0_iterator.f()) {
      var e = tmp0_iterator.e();
      var key = this_1.p(e);
      var accumulator = destination.q(key);
      // Inline function 'kotlin.collections.set' call
      // Inline function 'kotlinx.serialization.SealedClassSerializer.<anonymous>' call
      accumulator == null && !destination.r(key);
      if (!(accumulator == null)) {
        // Inline function 'kotlin.error' call
        var message = "Multiple sealed subclasses of '" + this.o4b_1 + "' have the same serial name '" + key + "':" + (" '" + accumulator.s2() + "', '" + e.s2() + "'");
        throw IllegalStateException_init_$Create$(toString(message));
      }
      destination.s(key, e);
    }
    // Inline function 'kotlin.collections.mapValuesTo' call
    var destination_0 = LinkedHashMap_init_$Create$_0(mapCapacity(destination.u()));
    // Inline function 'kotlin.collections.associateByTo' call
    var tmp0_iterator_0 = destination.q2().w();
    while (tmp0_iterator_0.f()) {
      var element = tmp0_iterator_0.e();
      // Inline function 'kotlin.collections.mapValuesTo.<anonymous>' call
      var tmp_2 = element.s2();
      // Inline function 'kotlinx.serialization.SealedClassSerializer.<anonymous>' call
      var tmp$ret$7 = element.t2().t2();
      destination_0.s(tmp_2, tmp$ret$7);
    }
    tmp_1.s4b_1 = destination_0;
  }
  protoOf(SealedClassSerializer).k4b = function () {
    return this.o4b_1;
  };
  protoOf(SealedClassSerializer).v4a = function () {
    // Inline function 'kotlin.getValue' call
    var this_0 = this.q4b_1;
    descriptor$factory_0();
    return this_0.t2();
  };
  protoOf(SealedClassSerializer).m4b = function (decoder, klassName) {
    // Inline function 'kotlin.collections.get' call
    var this_0 = this.s4b_1;
    var tmp0_elvis_lhs = (isInterface(this_0, Map) ? this_0 : THROW_CCE()).q(klassName);
    return tmp0_elvis_lhs == null ? protoOf(AbstractPolymorphicSerializer).m4b.call(this, decoder, klassName) : tmp0_elvis_lhs;
  };
  protoOf(SealedClassSerializer).n4b = function (encoder, value) {
    var tmp0_elvis_lhs = this.r4b_1.q(getKClassFromExpression(value));
    var tmp1_safe_receiver = tmp0_elvis_lhs == null ? protoOf(AbstractPolymorphicSerializer).n4b.call(this, encoder, value) : tmp0_elvis_lhs;
    var tmp;
    if (tmp1_safe_receiver == null) {
      tmp = null;
    } else {
      // Inline function 'kotlinx.serialization.internal.cast' call
      tmp = isInterface(tmp1_safe_receiver, SerializationStrategy) ? tmp1_safe_receiver : THROW_CCE();
    }
    return tmp;
  };
  function descriptor$factory_0() {
    return getPropertyCallableRef('descriptor', 1, KProperty1, function (receiver) {
      return receiver.v4a();
    }, null);
  }
  function StringFormat() {
  }
  function BinaryFormat() {
  }
  function SerializationException_init_$Init$($this) {
    IllegalArgumentException_init_$Init$($this);
    SerializationException.call($this);
    return $this;
  }
  function SerializationException_init_$Create$() {
    var tmp = SerializationException_init_$Init$(objectCreate(protoOf(SerializationException)));
    captureStack(tmp, SerializationException_init_$Create$);
    return tmp;
  }
  function SerializationException_init_$Init$_0(message, $this) {
    IllegalArgumentException_init_$Init$_0(message, $this);
    SerializationException.call($this);
    return $this;
  }
  function SerializationException_init_$Create$_0(message) {
    var tmp = SerializationException_init_$Init$_0(message, objectCreate(protoOf(SerializationException)));
    captureStack(tmp, SerializationException_init_$Create$_0);
    return tmp;
  }
  function SerializationException_init_$Init$_1(message, cause, $this) {
    IllegalArgumentException_init_$Init$_1(message, cause, $this);
    SerializationException.call($this);
    return $this;
  }
  function SerializationException() {
    captureStack(this, SerializationException);
  }
  function UnknownFieldException_init_$Init$(index, $this) {
    UnknownFieldException.call($this, 'An unknown field for index ' + index);
    return $this;
  }
  function UnknownFieldException_init_$Create$(index) {
    var tmp = UnknownFieldException_init_$Init$(index, objectCreate(protoOf(UnknownFieldException)));
    captureStack(tmp, UnknownFieldException_init_$Create$);
    return tmp;
  }
  function UnknownFieldException(message) {
    SerializationException_init_$Init$_0(message, this);
    captureStack(this, UnknownFieldException);
  }
  function MissingFieldException_init_$Init$(missingFields, serialName, $this) {
    MissingFieldException.call($this, missingFields, missingFields.u() === 1 ? "Field '" + missingFields.v(0) + "' is required for type with serial name '" + serialName + "', but it was missing" : 'Fields ' + missingFields + " are required for type with serial name '" + serialName + "', but they were missing", null);
    return $this;
  }
  function MissingFieldException_init_$Create$(missingFields, serialName) {
    var tmp = MissingFieldException_init_$Init$(missingFields, serialName, objectCreate(protoOf(MissingFieldException)));
    captureStack(tmp, MissingFieldException_init_$Create$);
    return tmp;
  }
  function MissingFieldException_init_$Init$_0(missingField, $this) {
    MissingFieldException.call($this, listOf(missingField), "Field '" + missingField + "' is required, but it was missing", null);
    return $this;
  }
  function MissingFieldException_init_$Create$_0(missingField) {
    var tmp = MissingFieldException_init_$Init$_0(missingField, objectCreate(protoOf(MissingFieldException)));
    captureStack(tmp, MissingFieldException_init_$Create$_0);
    return tmp;
  }
  function MissingFieldException(missingFields, message, cause) {
    SerializationException_init_$Init$_1(message, cause, this);
    captureStack(this, MissingFieldException);
    this.b4c_1 = missingFields;
  }
  function serializerOrNull(_this__u8e3s4) {
    var tmp0_elvis_lhs = compiledSerializerImpl(_this__u8e3s4);
    return tmp0_elvis_lhs == null ? builtinSerializerOrNull(_this__u8e3s4) : tmp0_elvis_lhs;
  }
  function serializersForParameters(_this__u8e3s4, typeArguments, failOnMissingTypeArgSerializer) {
    var tmp;
    if (failOnMissingTypeArgSerializer) {
      // Inline function 'kotlin.collections.map' call
      // Inline function 'kotlin.collections.mapTo' call
      var destination = ArrayList_init_$Create$(collectionSizeOrDefault(typeArguments, 10));
      var tmp0_iterator = typeArguments.w();
      while (tmp0_iterator.f()) {
        var item = tmp0_iterator.e();
        // Inline function 'kotlinx.serialization.serializersForParameters.<anonymous>' call
        var tmp$ret$0 = serializer(_this__u8e3s4, item);
        destination.i1(tmp$ret$0);
      }
      tmp = destination;
    } else {
      // Inline function 'kotlin.collections.map' call
      // Inline function 'kotlin.collections.mapTo' call
      var destination_0 = ArrayList_init_$Create$(collectionSizeOrDefault(typeArguments, 10));
      var tmp0_iterator_0 = typeArguments.w();
      while (tmp0_iterator_0.f()) {
        var item_0 = tmp0_iterator_0.e();
        // Inline function 'kotlinx.serialization.serializersForParameters.<anonymous>' call
        var tmp0_elvis_lhs = serializerOrNull_0(_this__u8e3s4, item_0);
        var tmp_0;
        if (tmp0_elvis_lhs == null) {
          return null;
        } else {
          tmp_0 = tmp0_elvis_lhs;
        }
        var tmp$ret$3 = tmp_0;
        destination_0.i1(tmp$ret$3);
      }
      tmp = destination_0;
    }
    var serializers = tmp;
    return serializers;
  }
  function parametrizedSerializerOrNull(_this__u8e3s4, serializers, elementClassifierIfArray) {
    var tmp0_elvis_lhs = builtinParametrizedSerializer(_this__u8e3s4, serializers, elementClassifierIfArray);
    return tmp0_elvis_lhs == null ? compiledParametrizedSerializer(_this__u8e3s4, serializers) : tmp0_elvis_lhs;
  }
  function serializer(_this__u8e3s4, type) {
    var tmp0_elvis_lhs = serializerByKTypeImpl(_this__u8e3s4, type, true);
    var tmp;
    if (tmp0_elvis_lhs == null) {
      platformSpecificSerializerNotRegistered(kclass(type));
    } else {
      tmp = tmp0_elvis_lhs;
    }
    return tmp;
  }
  function serializerOrNull_0(_this__u8e3s4, type) {
    return serializerByKTypeImpl(_this__u8e3s4, type, false);
  }
  function builtinParametrizedSerializer(_this__u8e3s4, serializers, elementClassifierIfArray) {
    var tmp;
    if (((_this__u8e3s4.equals(getKClass(Collection)) ? true : _this__u8e3s4.equals(getKClass(List))) ? true : _this__u8e3s4.equals(getKClass(MutableList))) ? true : _this__u8e3s4.equals(getKClass(ArrayList))) {
      tmp = new ArrayListSerializer(serializers.v(0));
    } else if (_this__u8e3s4.equals(getKClass(HashSet))) {
      tmp = new HashSetSerializer(serializers.v(0));
    } else if ((_this__u8e3s4.equals(getKClass(Set)) ? true : _this__u8e3s4.equals(getKClass(MutableSet))) ? true : _this__u8e3s4.equals(getKClass(LinkedHashSet))) {
      tmp = new LinkedHashSetSerializer(serializers.v(0));
    } else if (_this__u8e3s4.equals(getKClass(HashMap))) {
      tmp = new HashMapSerializer(serializers.v(0), serializers.v(1));
    } else if ((_this__u8e3s4.equals(getKClass(Map)) ? true : _this__u8e3s4.equals(getKClass(MutableMap))) ? true : _this__u8e3s4.equals(getKClass(LinkedHashMap))) {
      tmp = new LinkedHashMapSerializer(serializers.v(0), serializers.v(1));
    } else if (_this__u8e3s4.equals(getKClass(Entry))) {
      tmp = MapEntrySerializer(serializers.v(0), serializers.v(1));
    } else if (_this__u8e3s4.equals(getKClass(Pair))) {
      tmp = PairSerializer(serializers.v(0), serializers.v(1));
    } else if (_this__u8e3s4.equals(getKClass(Triple))) {
      tmp = TripleSerializer(serializers.v(0), serializers.v(1), serializers.v(2));
    } else {
      var tmp_0;
      if (isReferenceArray(_this__u8e3s4)) {
        var tmp_1 = elementClassifierIfArray();
        tmp_0 = ArraySerializer((!(tmp_1 == null) ? isInterface(tmp_1, KClass) : false) ? tmp_1 : THROW_CCE(), serializers.v(0));
      } else {
        tmp_0 = null;
      }
      tmp = tmp_0;
    }
    return tmp;
  }
  function compiledParametrizedSerializer(_this__u8e3s4, serializers) {
    // Inline function 'kotlin.collections.toTypedArray' call
    var tmp$ret$0 = copyToArray(serializers);
    return constructSerializerForGivenTypeArgs(_this__u8e3s4, tmp$ret$0.slice());
  }
  function serializerByKTypeImpl(_this__u8e3s4, type, failOnMissingTypeArgSerializer) {
    var rootClass = kclass(type);
    var isNullable = type.v7();
    // Inline function 'kotlin.collections.map' call
    var this_0 = type.u7();
    // Inline function 'kotlin.collections.mapTo' call
    var destination = ArrayList_init_$Create$(collectionSizeOrDefault(this_0, 10));
    var tmp0_iterator = this_0.w();
    while (tmp0_iterator.f()) {
      var item = tmp0_iterator.e();
      // Inline function 'kotlinx.serialization.serializerByKTypeImpl.<anonymous>' call
      var tmp$ret$1;
      $l$block: {
        // Inline function 'kotlin.requireNotNull' call
        var value = item.el_1;
        // Inline function 'kotlin.contracts.contract' call
        if (value == null) {
          // Inline function 'kotlinx.serialization.serializerByKTypeImpl.<anonymous>.<anonymous>' call
          var message = 'Star projections in type arguments are not allowed, but had ' + type;
          throw IllegalArgumentException_init_$Create$(toString(message));
        } else {
          tmp$ret$1 = value;
          break $l$block;
        }
      }
      var tmp$ret$2 = tmp$ret$1;
      destination.i1(tmp$ret$2);
    }
    var typeArguments = destination;
    var tmp;
    if (typeArguments.c1()) {
      tmp = findCachedSerializer(rootClass, isNullable);
    } else {
      // Inline function 'kotlin.Result.getOrNull' call
      var this_1 = findParametrizedCachedSerializer(rootClass, typeArguments, isNullable);
      var tmp_0;
      if (_Result___get_isFailure__impl__jpiriv(this_1)) {
        tmp_0 = null;
      } else {
        var tmp_1 = _Result___get_value__impl__bjfvqg(this_1);
        tmp_0 = (tmp_1 == null ? true : !(tmp_1 == null)) ? tmp_1 : THROW_CCE();
      }
      tmp = tmp_0;
    }
    var cachedSerializer = tmp;
    if (cachedSerializer == null)
      null;
    else {
      // Inline function 'kotlin.let' call
      // Inline function 'kotlin.contracts.contract' call
      return cachedSerializer;
    }
    var tmp_2;
    if (typeArguments.c1()) {
      tmp_2 = _this__u8e3s4.d4c(rootClass);
    } else {
      var tmp1_elvis_lhs = serializersForParameters(_this__u8e3s4, typeArguments, failOnMissingTypeArgSerializer);
      var tmp_3;
      if (tmp1_elvis_lhs == null) {
        return null;
      } else {
        tmp_3 = tmp1_elvis_lhs;
      }
      var serializers = tmp_3;
      var tmp2_elvis_lhs = parametrizedSerializerOrNull(rootClass, serializers, serializerByKTypeImpl$lambda(typeArguments));
      tmp_2 = tmp2_elvis_lhs == null ? _this__u8e3s4.c4c(rootClass, serializers) : tmp2_elvis_lhs;
    }
    var contextualSerializer = tmp_2;
    var tmp_4;
    if (contextualSerializer == null) {
      tmp_4 = null;
    } else {
      // Inline function 'kotlinx.serialization.internal.cast' call
      tmp_4 = isInterface(contextualSerializer, KSerializer) ? contextualSerializer : THROW_CCE();
    }
    var tmp4_safe_receiver = tmp_4;
    return tmp4_safe_receiver == null ? null : nullable(tmp4_safe_receiver, isNullable);
  }
  function nullable(_this__u8e3s4, shouldBeNullable) {
    if (shouldBeNullable)
      return get_nullable(_this__u8e3s4);
    return isInterface(_this__u8e3s4, KSerializer) ? _this__u8e3s4 : THROW_CCE();
  }
  function serializer_0(type) {
    return serializer(EmptySerializersModule_0(), type);
  }
  function serializer_1(_this__u8e3s4) {
    var tmp0_elvis_lhs = serializerOrNull(_this__u8e3s4);
    var tmp;
    if (tmp0_elvis_lhs == null) {
      serializerNotRegistered(_this__u8e3s4);
    } else {
      tmp = tmp0_elvis_lhs;
    }
    return tmp;
  }
  function serializerByKTypeImpl$lambda($typeArguments) {
    return function () {
      return $typeArguments.v(0).t7();
    };
  }
  function get_SERIALIZERS_CACHE() {
    _init_properties_SerializersCache_kt__hgwi2p();
    return SERIALIZERS_CACHE;
  }
  var SERIALIZERS_CACHE;
  function get_SERIALIZERS_CACHE_NULLABLE() {
    _init_properties_SerializersCache_kt__hgwi2p();
    return SERIALIZERS_CACHE_NULLABLE;
  }
  var SERIALIZERS_CACHE_NULLABLE;
  function get_PARAMETRIZED_SERIALIZERS_CACHE() {
    _init_properties_SerializersCache_kt__hgwi2p();
    return PARAMETRIZED_SERIALIZERS_CACHE;
  }
  var PARAMETRIZED_SERIALIZERS_CACHE;
  function get_PARAMETRIZED_SERIALIZERS_CACHE_NULLABLE() {
    _init_properties_SerializersCache_kt__hgwi2p();
    return PARAMETRIZED_SERIALIZERS_CACHE_NULLABLE;
  }
  var PARAMETRIZED_SERIALIZERS_CACHE_NULLABLE;
  function findCachedSerializer(clazz, isNullable) {
    _init_properties_SerializersCache_kt__hgwi2p();
    var tmp;
    if (!isNullable) {
      var tmp0_safe_receiver = get_SERIALIZERS_CACHE().e4c(clazz);
      var tmp_0;
      if (tmp0_safe_receiver == null) {
        tmp_0 = null;
      } else {
        // Inline function 'kotlinx.serialization.internal.cast' call
        tmp_0 = isInterface(tmp0_safe_receiver, KSerializer) ? tmp0_safe_receiver : THROW_CCE();
      }
      tmp = tmp_0;
    } else {
      tmp = get_SERIALIZERS_CACHE_NULLABLE().e4c(clazz);
    }
    return tmp;
  }
  function findParametrizedCachedSerializer(clazz, types, isNullable) {
    _init_properties_SerializersCache_kt__hgwi2p();
    var tmp;
    if (!isNullable) {
      var tmp_0 = get_PARAMETRIZED_SERIALIZERS_CACHE().f4c(clazz, types);
      tmp = new Result(tmp_0) instanceof Result ? tmp_0 : THROW_CCE();
    } else {
      tmp = get_PARAMETRIZED_SERIALIZERS_CACHE_NULLABLE().f4c(clazz, types);
    }
    return tmp;
  }
  function SERIALIZERS_CACHE$lambda(it) {
    _init_properties_SerializersCache_kt__hgwi2p();
    return serializerOrNull(it);
  }
  function SERIALIZERS_CACHE_NULLABLE$lambda(it) {
    _init_properties_SerializersCache_kt__hgwi2p();
    var tmp0_safe_receiver = serializerOrNull(it);
    var tmp1_safe_receiver = tmp0_safe_receiver == null ? null : get_nullable(tmp0_safe_receiver);
    var tmp;
    if (tmp1_safe_receiver == null) {
      tmp = null;
    } else {
      // Inline function 'kotlinx.serialization.internal.cast' call
      tmp = isInterface(tmp1_safe_receiver, KSerializer) ? tmp1_safe_receiver : THROW_CCE();
    }
    return tmp;
  }
  function PARAMETRIZED_SERIALIZERS_CACHE$lambda(clazz, types) {
    _init_properties_SerializersCache_kt__hgwi2p();
    var serializers = ensureNotNull(serializersForParameters(EmptySerializersModule_0(), types, true));
    return parametrizedSerializerOrNull(clazz, serializers, PARAMETRIZED_SERIALIZERS_CACHE$lambda$lambda(types));
  }
  function PARAMETRIZED_SERIALIZERS_CACHE$lambda$lambda($types) {
    return function () {
      return $types.v(0).t7();
    };
  }
  function PARAMETRIZED_SERIALIZERS_CACHE_NULLABLE$lambda(clazz, types) {
    _init_properties_SerializersCache_kt__hgwi2p();
    var serializers = ensureNotNull(serializersForParameters(EmptySerializersModule_0(), types, true));
    var tmp0_safe_receiver = parametrizedSerializerOrNull(clazz, serializers, PARAMETRIZED_SERIALIZERS_CACHE_NULLABLE$lambda$lambda(types));
    var tmp1_safe_receiver = tmp0_safe_receiver == null ? null : get_nullable(tmp0_safe_receiver);
    var tmp;
    if (tmp1_safe_receiver == null) {
      tmp = null;
    } else {
      // Inline function 'kotlinx.serialization.internal.cast' call
      tmp = isInterface(tmp1_safe_receiver, KSerializer) ? tmp1_safe_receiver : THROW_CCE();
    }
    return tmp;
  }
  function PARAMETRIZED_SERIALIZERS_CACHE_NULLABLE$lambda$lambda($types) {
    return function () {
      return $types.v(0).t7();
    };
  }
  var properties_initialized_SerializersCache_kt_q8kf25;
  function _init_properties_SerializersCache_kt__hgwi2p() {
    if (!properties_initialized_SerializersCache_kt_q8kf25) {
      properties_initialized_SerializersCache_kt_q8kf25 = true;
      SERIALIZERS_CACHE = createCache(SERIALIZERS_CACHE$lambda);
      SERIALIZERS_CACHE_NULLABLE = createCache(SERIALIZERS_CACHE_NULLABLE$lambda);
      PARAMETRIZED_SERIALIZERS_CACHE = createParametrizedCache(PARAMETRIZED_SERIALIZERS_CACHE$lambda);
      PARAMETRIZED_SERIALIZERS_CACHE_NULLABLE = createParametrizedCache(PARAMETRIZED_SERIALIZERS_CACHE_NULLABLE$lambda);
    }
  }
  function get_nullable(_this__u8e3s4) {
    var tmp;
    if (_this__u8e3s4.v4a().g4c()) {
      tmp = isInterface(_this__u8e3s4, KSerializer) ? _this__u8e3s4 : THROW_CCE();
    } else {
      tmp = new NullableSerializer(_this__u8e3s4);
    }
    return tmp;
  }
  function serializer_2(_this__u8e3s4) {
    return StringSerializer_getInstance();
  }
  function serializer_3(_this__u8e3s4) {
    return CharSerializer_getInstance();
  }
  function CharArraySerializer() {
    return CharArraySerializer_getInstance();
  }
  function serializer_4(_this__u8e3s4) {
    return DoubleSerializer_getInstance();
  }
  function DoubleArraySerializer() {
    return DoubleArraySerializer_getInstance();
  }
  function serializer_5(_this__u8e3s4) {
    return FloatSerializer_getInstance();
  }
  function FloatArraySerializer() {
    return FloatArraySerializer_getInstance();
  }
  function serializer_6(_this__u8e3s4) {
    return LongSerializer_getInstance();
  }
  function LongArraySerializer() {
    return LongArraySerializer_getInstance();
  }
  function serializer_7(_this__u8e3s4) {
    return ULongSerializer_getInstance();
  }
  function ULongArraySerializer() {
    return ULongArraySerializer_getInstance();
  }
  function serializer_8(_this__u8e3s4) {
    return IntSerializer_getInstance();
  }
  function IntArraySerializer() {
    return IntArraySerializer_getInstance();
  }
  function serializer_9(_this__u8e3s4) {
    return UIntSerializer_getInstance();
  }
  function UIntArraySerializer() {
    return UIntArraySerializer_getInstance();
  }
  function serializer_10(_this__u8e3s4) {
    return ShortSerializer_getInstance();
  }
  function ShortArraySerializer() {
    return ShortArraySerializer_getInstance();
  }
  function serializer_11(_this__u8e3s4) {
    return UShortSerializer_getInstance();
  }
  function UShortArraySerializer() {
    return UShortArraySerializer_getInstance();
  }
  function serializer_12(_this__u8e3s4) {
    return ByteSerializer_getInstance();
  }
  function ByteArraySerializer() {
    return ByteArraySerializer_getInstance();
  }
  function serializer_13(_this__u8e3s4) {
    return UByteSerializer_getInstance();
  }
  function UByteArraySerializer() {
    return UByteArraySerializer_getInstance();
  }
  function serializer_14(_this__u8e3s4) {
    return BooleanSerializer_getInstance();
  }
  function BooleanArraySerializer() {
    return BooleanArraySerializer_getInstance();
  }
  function serializer_15(_this__u8e3s4) {
    return UnitSerializer_getInstance();
  }
  function NothingSerializer() {
    return NothingSerializer_getInstance();
  }
  function serializer_16(_this__u8e3s4) {
    return DurationSerializer_getInstance();
  }
  function MapEntrySerializer(keySerializer, valueSerializer) {
    return new MapEntrySerializer_0(keySerializer, valueSerializer);
  }
  function PairSerializer(keySerializer, valueSerializer) {
    return new PairSerializer_0(keySerializer, valueSerializer);
  }
  function TripleSerializer(aSerializer, bSerializer, cSerializer) {
    return new TripleSerializer_0(aSerializer, bSerializer, cSerializer);
  }
  function ArraySerializer(kClass, elementSerializer) {
    return new ReferenceArraySerializer(kClass, elementSerializer);
  }
  function ListSerializer(elementSerializer) {
    return new ArrayListSerializer(elementSerializer);
  }
  function SetSerializer(elementSerializer) {
    return new LinkedHashSetSerializer(elementSerializer);
  }
  function MapSerializer(keySerializer, valueSerializer) {
    return new LinkedHashMapSerializer(keySerializer, valueSerializer);
  }
  function withContext(_this__u8e3s4, context) {
    return new ContextDescriptor(_this__u8e3s4, context);
  }
  function ContextDescriptor(original, kClass) {
    this.h4c_1 = original;
    this.i4c_1 = kClass;
    this.j4c_1 = this.h4c_1.v4b() + '<' + this.i4c_1.f7() + '>';
  }
  protoOf(ContextDescriptor).k4c = function () {
    return this.h4c_1.k4c();
  };
  protoOf(ContextDescriptor).l4c = function () {
    return this.h4c_1.l4c();
  };
  protoOf(ContextDescriptor).m4c = function () {
    return this.h4c_1.m4c();
  };
  protoOf(ContextDescriptor).g4c = function () {
    return this.h4c_1.g4c();
  };
  protoOf(ContextDescriptor).n4c = function () {
    return this.h4c_1.n4c();
  };
  protoOf(ContextDescriptor).o4c = function (index) {
    return this.h4c_1.o4c(index);
  };
  protoOf(ContextDescriptor).p4c = function (index) {
    return this.h4c_1.p4c(index);
  };
  protoOf(ContextDescriptor).q4c = function (name) {
    return this.h4c_1.q4c(name);
  };
  protoOf(ContextDescriptor).r4c = function (index) {
    return this.h4c_1.r4c(index);
  };
  protoOf(ContextDescriptor).s4c = function (index) {
    return this.h4c_1.s4c(index);
  };
  protoOf(ContextDescriptor).v4b = function () {
    return this.j4c_1;
  };
  protoOf(ContextDescriptor).equals = function (other) {
    var tmp0_elvis_lhs = other instanceof ContextDescriptor ? other : null;
    var tmp;
    if (tmp0_elvis_lhs == null) {
      return false;
    } else {
      tmp = tmp0_elvis_lhs;
    }
    var another = tmp;
    return equals(this.h4c_1, another.h4c_1) ? another.i4c_1.equals(this.i4c_1) : false;
  };
  protoOf(ContextDescriptor).hashCode = function () {
    var result = this.i4c_1.hashCode();
    result = imul(31, result) + getStringHashCode(this.j4c_1) | 0;
    return result;
  };
  protoOf(ContextDescriptor).toString = function () {
    return 'ContextDescriptor(kClass: ' + this.i4c_1 + ', original: ' + this.h4c_1 + ')';
  };
  function get_capturedKClass(_this__u8e3s4) {
    var tmp;
    if (_this__u8e3s4 instanceof ContextDescriptor) {
      tmp = _this__u8e3s4.i4c_1;
    } else {
      if (_this__u8e3s4 instanceof SerialDescriptorForNullable) {
        tmp = get_capturedKClass(_this__u8e3s4.t4c_1);
      } else {
        tmp = null;
      }
    }
    return tmp;
  }
  function getPolymorphicDescriptors(_this__u8e3s4, descriptor) {
    var tmp0_elvis_lhs = get_capturedKClass(descriptor);
    var tmp;
    if (tmp0_elvis_lhs == null) {
      return emptyList();
    } else {
      tmp = tmp0_elvis_lhs;
    }
    var kClass = tmp;
    // Inline function 'kotlin.collections.map' call
    // Inline function 'kotlin.collections.orEmpty' call
    var tmp1_safe_receiver = (_this__u8e3s4 instanceof SerialModuleImpl ? _this__u8e3s4 : THROW_CCE()).x4c_1.q(kClass);
    var tmp0_elvis_lhs_0 = tmp1_safe_receiver == null ? null : tmp1_safe_receiver.p2();
    var this_0 = tmp0_elvis_lhs_0 == null ? emptyList() : tmp0_elvis_lhs_0;
    // Inline function 'kotlin.collections.mapTo' call
    var destination = ArrayList_init_$Create$(collectionSizeOrDefault(this_0, 10));
    var tmp0_iterator = this_0.w();
    while (tmp0_iterator.f()) {
      var item = tmp0_iterator.e();
      // Inline function 'kotlinx.serialization.descriptors.getPolymorphicDescriptors.<anonymous>' call
      var tmp$ret$1 = item.v4a();
      destination.i1(tmp$ret$1);
    }
    return destination;
  }
  function getContextualDescriptor(_this__u8e3s4, descriptor) {
    var tmp0_safe_receiver = get_capturedKClass(descriptor);
    var tmp;
    if (tmp0_safe_receiver == null) {
      tmp = null;
    } else {
      // Inline function 'kotlin.let' call
      // Inline function 'kotlin.contracts.contract' call
      // Inline function 'kotlinx.serialization.descriptors.getContextualDescriptor.<anonymous>' call
      var tmp0_safe_receiver_0 = _this__u8e3s4.d4c(tmp0_safe_receiver);
      tmp = tmp0_safe_receiver_0 == null ? null : tmp0_safe_receiver_0.v4a();
    }
    return tmp;
  }
  function SerialDescriptor() {
  }
  function get_elementDescriptors(_this__u8e3s4) {
    // Inline function 'kotlin.collections.Iterable' call
    return new _no_name_provided__qut3iv_0(_this__u8e3s4);
  }
  function get_elementNames(_this__u8e3s4) {
    // Inline function 'kotlin.collections.Iterable' call
    return new _no_name_provided__qut3iv_1(_this__u8e3s4);
  }
  function elementDescriptors$1$1($this_elementDescriptors) {
    this.c4d_1 = $this_elementDescriptors;
    this.b4d_1 = $this_elementDescriptors.l4c();
  }
  protoOf(elementDescriptors$1$1).f = function () {
    return this.b4d_1 > 0;
  };
  protoOf(elementDescriptors$1$1).e = function () {
    var tmp = this.c4d_1.l4c();
    var tmp1 = this.b4d_1;
    this.b4d_1 = tmp1 - 1 | 0;
    return this.c4d_1.p4c(tmp - tmp1 | 0);
  };
  function _no_name_provided__qut3iv_0($this_elementDescriptors) {
    this.d4d_1 = $this_elementDescriptors;
  }
  protoOf(_no_name_provided__qut3iv_0).w = function () {
    // Inline function 'kotlinx.serialization.descriptors.<get-elementDescriptors>.<anonymous>' call
    return new elementDescriptors$1$1(this.d4d_1);
  };
  function elementNames$1$1($this_elementNames) {
    this.f4d_1 = $this_elementNames;
    this.e4d_1 = $this_elementNames.l4c();
  }
  protoOf(elementNames$1$1).f = function () {
    return this.e4d_1 > 0;
  };
  protoOf(elementNames$1$1).e = function () {
    var tmp = this.f4d_1.l4c();
    var tmp1 = this.e4d_1;
    this.e4d_1 = tmp1 - 1 | 0;
    return this.f4d_1.r4c(tmp - tmp1 | 0);
  };
  function _no_name_provided__qut3iv_1($this_elementNames) {
    this.g4d_1 = $this_elementNames;
  }
  protoOf(_no_name_provided__qut3iv_1).w = function () {
    // Inline function 'kotlinx.serialization.descriptors.<get-elementNames>.<anonymous>' call
    return new elementNames$1$1(this.g4d_1);
  };
  function buildSerialDescriptor(serialName, kind, typeParameters, builder) {
    var tmp;
    if (builder === VOID) {
      tmp = buildSerialDescriptor$lambda;
    } else {
      tmp = builder;
    }
    builder = tmp;
    // Inline function 'kotlin.require' call
    // Inline function 'kotlin.text.isNotBlank' call
    // Inline function 'kotlin.contracts.contract' call
    if (!!isBlank(serialName)) {
      // Inline function 'kotlinx.serialization.descriptors.buildSerialDescriptor.<anonymous>' call
      var message = 'Blank serial names are prohibited';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    // Inline function 'kotlin.require' call
    // Inline function 'kotlin.contracts.contract' call
    if (!!equals(kind, CLASS_getInstance())) {
      // Inline function 'kotlinx.serialization.descriptors.buildSerialDescriptor.<anonymous>' call
      var message_0 = "For StructureKind.CLASS please use 'buildClassSerialDescriptor' instead";
      throw IllegalArgumentException_init_$Create$(toString(message_0));
    }
    var sdBuilder = new ClassSerialDescriptorBuilder(serialName);
    builder(sdBuilder);
    return new SerialDescriptorImpl(serialName, kind, sdBuilder.b4b_1.u(), toList(typeParameters), sdBuilder);
  }
  function ClassSerialDescriptorBuilder(serialName) {
    this.y4a_1 = serialName;
    this.z4a_1 = false;
    this.a4b_1 = emptyList();
    this.b4b_1 = ArrayList_init_$Create$_0();
    this.c4b_1 = HashSet_init_$Create$();
    this.d4b_1 = ArrayList_init_$Create$_0();
    this.e4b_1 = ArrayList_init_$Create$_0();
    this.f4b_1 = ArrayList_init_$Create$_0();
  }
  protoOf(ClassSerialDescriptorBuilder).h4d = function (elementName, descriptor, annotations, isOptional) {
    // Inline function 'kotlin.require' call
    // Inline function 'kotlin.contracts.contract' call
    if (!this.c4b_1.i1(elementName)) {
      // Inline function 'kotlinx.serialization.descriptors.ClassSerialDescriptorBuilder.element.<anonymous>' call
      var message = "Element with name '" + elementName + "' is already registered in " + this.y4a_1;
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    // Inline function 'kotlin.collections.plusAssign' call
    this.b4b_1.i1(elementName);
    // Inline function 'kotlin.collections.plusAssign' call
    this.d4b_1.i1(descriptor);
    // Inline function 'kotlin.collections.plusAssign' call
    this.e4b_1.i1(annotations);
    // Inline function 'kotlin.collections.plusAssign' call
    this.f4b_1.i1(isOptional);
  };
  protoOf(ClassSerialDescriptorBuilder).g4b = function (elementName, descriptor, annotations, isOptional, $super) {
    annotations = annotations === VOID ? emptyList() : annotations;
    isOptional = isOptional === VOID ? false : isOptional;
    var tmp;
    if ($super === VOID) {
      this.h4d(elementName, descriptor, annotations, isOptional);
      tmp = Unit_instance;
    } else {
      tmp = $super.h4d.call(this, elementName, descriptor, annotations, isOptional);
    }
    return tmp;
  };
  function buildClassSerialDescriptor(serialName, typeParameters, builderAction) {
    var tmp;
    if (builderAction === VOID) {
      tmp = buildClassSerialDescriptor$lambda;
    } else {
      tmp = builderAction;
    }
    builderAction = tmp;
    // Inline function 'kotlin.require' call
    // Inline function 'kotlin.text.isNotBlank' call
    // Inline function 'kotlin.contracts.contract' call
    if (!!isBlank(serialName)) {
      // Inline function 'kotlinx.serialization.descriptors.buildClassSerialDescriptor.<anonymous>' call
      var message = 'Blank serial names are prohibited';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    var sdBuilder = new ClassSerialDescriptorBuilder(serialName);
    builderAction(sdBuilder);
    return new SerialDescriptorImpl(serialName, CLASS_getInstance(), sdBuilder.b4b_1.u(), toList(typeParameters), sdBuilder);
  }
  function _get__hashCode__tgwhef($this) {
    // Inline function 'kotlin.getValue' call
    var this_0 = $this.t4d_1;
    _hashCode$factory();
    return this_0.t2();
  }
  function SerialDescriptorImpl$_hashCode$delegate$lambda(this$0) {
    return function () {
      return hashCodeImpl(this$0, this$0.s4d_1);
    };
  }
  function SerialDescriptorImpl$toString$lambda(this$0) {
    return function (it) {
      return this$0.r4c(it) + ': ' + this$0.p4c(it).v4b();
    };
  }
  function SerialDescriptorImpl(serialName, kind, elementsCount, typeParameters, builder) {
    this.i4d_1 = serialName;
    this.j4d_1 = kind;
    this.k4d_1 = elementsCount;
    this.l4d_1 = builder.a4b_1;
    this.m4d_1 = toHashSet(builder.b4b_1);
    var tmp = this;
    // Inline function 'kotlin.collections.toTypedArray' call
    var this_0 = builder.b4b_1;
    tmp.n4d_1 = copyToArray(this_0);
    this.o4d_1 = compactArray(builder.d4b_1);
    var tmp_0 = this;
    // Inline function 'kotlin.collections.toTypedArray' call
    var this_1 = builder.e4b_1;
    tmp_0.p4d_1 = copyToArray(this_1);
    this.q4d_1 = toBooleanArray(builder.f4b_1);
    var tmp_1 = this;
    // Inline function 'kotlin.collections.map' call
    var this_2 = withIndex(this.n4d_1);
    // Inline function 'kotlin.collections.mapTo' call
    var destination = ArrayList_init_$Create$(collectionSizeOrDefault(this_2, 10));
    var tmp0_iterator = this_2.w();
    while (tmp0_iterator.f()) {
      var item = tmp0_iterator.e();
      // Inline function 'kotlinx.serialization.descriptors.SerialDescriptorImpl.name2Index.<anonymous>' call
      var tmp$ret$2 = to(item.xf_1, item.wf_1);
      destination.i1(tmp$ret$2);
    }
    tmp_1.r4d_1 = toMap(destination);
    this.s4d_1 = compactArray(typeParameters);
    var tmp_2 = this;
    tmp_2.t4d_1 = lazy_0(SerialDescriptorImpl$_hashCode$delegate$lambda(this));
  }
  protoOf(SerialDescriptorImpl).v4b = function () {
    return this.i4d_1;
  };
  protoOf(SerialDescriptorImpl).n4c = function () {
    return this.j4d_1;
  };
  protoOf(SerialDescriptorImpl).l4c = function () {
    return this.k4d_1;
  };
  protoOf(SerialDescriptorImpl).k4c = function () {
    return this.l4d_1;
  };
  protoOf(SerialDescriptorImpl).u4d = function () {
    return this.m4d_1;
  };
  protoOf(SerialDescriptorImpl).r4c = function (index) {
    return getChecked(this.n4d_1, index);
  };
  protoOf(SerialDescriptorImpl).q4c = function (name) {
    var tmp0_elvis_lhs = this.r4d_1.q(name);
    var tmp;
    if (tmp0_elvis_lhs == null) {
      tmp = -3;
    } else {
      tmp = tmp0_elvis_lhs;
    }
    return tmp;
  };
  protoOf(SerialDescriptorImpl).o4c = function (index) {
    return getChecked(this.p4d_1, index);
  };
  protoOf(SerialDescriptorImpl).p4c = function (index) {
    return getChecked(this.o4d_1, index);
  };
  protoOf(SerialDescriptorImpl).s4c = function (index) {
    return getChecked_0(this.q4d_1, index);
  };
  protoOf(SerialDescriptorImpl).equals = function (other) {
    var tmp$ret$0;
    $l$block_5: {
      // Inline function 'kotlinx.serialization.internal.equalsImpl' call
      if (this === other) {
        tmp$ret$0 = true;
        break $l$block_5;
      }
      if (!(other instanceof SerialDescriptorImpl)) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      if (!(this.v4b() === other.v4b())) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      // Inline function 'kotlinx.serialization.descriptors.SerialDescriptorImpl.equals.<anonymous>' call
      if (!contentEquals(this.s4d_1, other.s4d_1)) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      if (!(this.l4c() === other.l4c())) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      var inductionVariable = 0;
      var last = this.l4c();
      if (inductionVariable < last)
        do {
          var index = inductionVariable;
          inductionVariable = inductionVariable + 1 | 0;
          if (!(this.p4c(index).v4b() === other.p4c(index).v4b())) {
            tmp$ret$0 = false;
            break $l$block_5;
          }
          if (!equals(this.p4c(index).n4c(), other.p4c(index).n4c())) {
            tmp$ret$0 = false;
            break $l$block_5;
          }
        }
         while (inductionVariable < last);
      tmp$ret$0 = true;
    }
    return tmp$ret$0;
  };
  protoOf(SerialDescriptorImpl).hashCode = function () {
    return _get__hashCode__tgwhef(this);
  };
  protoOf(SerialDescriptorImpl).toString = function () {
    var tmp = until(0, this.k4d_1);
    var tmp_0 = this.i4d_1 + '(';
    return joinToString(tmp, ', ', tmp_0, ')', VOID, VOID, SerialDescriptorImpl$toString$lambda(this));
  };
  function PrimitiveSerialDescriptor(serialName, kind) {
    // Inline function 'kotlin.require' call
    // Inline function 'kotlin.text.isNotBlank' call
    // Inline function 'kotlin.contracts.contract' call
    if (!!isBlank(serialName)) {
      // Inline function 'kotlinx.serialization.descriptors.PrimitiveSerialDescriptor.<anonymous>' call
      var message = 'Blank serial names are prohibited';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    return PrimitiveDescriptorSafe(serialName, kind);
  }
  function SerialDescriptor_0(serialName, original) {
    // Inline function 'kotlin.require' call
    // Inline function 'kotlin.text.isNotBlank' call
    // Inline function 'kotlin.contracts.contract' call
    if (!!isBlank(serialName)) {
      // Inline function 'kotlinx.serialization.descriptors.SerialDescriptor.<anonymous>' call
      var message = 'Blank serial names are prohibited';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    // Inline function 'kotlin.require' call
    var tmp = original.n4c();
    // Inline function 'kotlin.contracts.contract' call
    if (!!(tmp instanceof PrimitiveKind)) {
      // Inline function 'kotlinx.serialization.descriptors.SerialDescriptor.<anonymous>' call
      var message_0 = "For primitive descriptors please use 'PrimitiveSerialDescriptor' instead";
      throw IllegalArgumentException_init_$Create$(toString(message_0));
    }
    // Inline function 'kotlin.require' call
    // Inline function 'kotlin.contracts.contract' call
    if (!!(serialName === original.v4b())) {
      // Inline function 'kotlinx.serialization.descriptors.SerialDescriptor.<anonymous>' call
      var message_1 = 'The name of the wrapped descriptor (' + serialName + ') cannot be the same as the name of the original descriptor (' + original.v4b() + ')';
      throw IllegalArgumentException_init_$Create$(toString(message_1));
    }
    return new WrappedSerialDescriptor(serialName, original);
  }
  function WrappedSerialDescriptor(serialName, original) {
    this.v4d_1 = serialName;
    this.w4d_1 = original;
  }
  protoOf(WrappedSerialDescriptor).v4b = function () {
    return this.v4d_1;
  };
  protoOf(WrappedSerialDescriptor).k4c = function () {
    return this.w4d_1.k4c();
  };
  protoOf(WrappedSerialDescriptor).l4c = function () {
    return this.w4d_1.l4c();
  };
  protoOf(WrappedSerialDescriptor).m4c = function () {
    return this.w4d_1.m4c();
  };
  protoOf(WrappedSerialDescriptor).g4c = function () {
    return this.w4d_1.g4c();
  };
  protoOf(WrappedSerialDescriptor).n4c = function () {
    return this.w4d_1.n4c();
  };
  protoOf(WrappedSerialDescriptor).o4c = function (index) {
    return this.w4d_1.o4c(index);
  };
  protoOf(WrappedSerialDescriptor).p4c = function (index) {
    return this.w4d_1.p4c(index);
  };
  protoOf(WrappedSerialDescriptor).q4c = function (name) {
    return this.w4d_1.q4c(name);
  };
  protoOf(WrappedSerialDescriptor).r4c = function (index) {
    return this.w4d_1.r4c(index);
  };
  protoOf(WrappedSerialDescriptor).s4c = function (index) {
    return this.w4d_1.s4c(index);
  };
  function buildSerialDescriptor$lambda($this$null) {
    return Unit_instance;
  }
  function buildClassSerialDescriptor$lambda($this$null) {
    return Unit_instance;
  }
  function _hashCode$factory() {
    return getPropertyCallableRef('_hashCode', 1, KProperty1, function (receiver) {
      return _get__hashCode__tgwhef(receiver);
    }, null);
  }
  function ENUM() {
    ENUM_instance = this;
    SerialKind.call(this);
  }
  var ENUM_instance;
  function ENUM_getInstance() {
    if (ENUM_instance == null)
      new ENUM();
    return ENUM_instance;
  }
  function CONTEXTUAL() {
    CONTEXTUAL_instance = this;
    SerialKind.call(this);
  }
  var CONTEXTUAL_instance;
  function CONTEXTUAL_getInstance() {
    if (CONTEXTUAL_instance == null)
      new CONTEXTUAL();
    return CONTEXTUAL_instance;
  }
  function SerialKind() {
  }
  protoOf(SerialKind).toString = function () {
    return ensureNotNull(getKClassFromExpression(this).f7());
  };
  protoOf(SerialKind).hashCode = function () {
    return getStringHashCode(this.toString());
  };
  function BOOLEAN() {
    BOOLEAN_instance = this;
    PrimitiveKind.call(this);
  }
  var BOOLEAN_instance;
  function BOOLEAN_getInstance() {
    if (BOOLEAN_instance == null)
      new BOOLEAN();
    return BOOLEAN_instance;
  }
  function BYTE() {
    BYTE_instance = this;
    PrimitiveKind.call(this);
  }
  var BYTE_instance;
  function BYTE_getInstance() {
    if (BYTE_instance == null)
      new BYTE();
    return BYTE_instance;
  }
  function CHAR() {
    CHAR_instance = this;
    PrimitiveKind.call(this);
  }
  var CHAR_instance;
  function CHAR_getInstance() {
    if (CHAR_instance == null)
      new CHAR();
    return CHAR_instance;
  }
  function SHORT() {
    SHORT_instance = this;
    PrimitiveKind.call(this);
  }
  var SHORT_instance;
  function SHORT_getInstance() {
    if (SHORT_instance == null)
      new SHORT();
    return SHORT_instance;
  }
  function INT() {
    INT_instance = this;
    PrimitiveKind.call(this);
  }
  var INT_instance;
  function INT_getInstance() {
    if (INT_instance == null)
      new INT();
    return INT_instance;
  }
  function LONG() {
    LONG_instance = this;
    PrimitiveKind.call(this);
  }
  var LONG_instance;
  function LONG_getInstance() {
    if (LONG_instance == null)
      new LONG();
    return LONG_instance;
  }
  function FLOAT() {
    FLOAT_instance = this;
    PrimitiveKind.call(this);
  }
  var FLOAT_instance;
  function FLOAT_getInstance() {
    if (FLOAT_instance == null)
      new FLOAT();
    return FLOAT_instance;
  }
  function DOUBLE() {
    DOUBLE_instance = this;
    PrimitiveKind.call(this);
  }
  var DOUBLE_instance;
  function DOUBLE_getInstance() {
    if (DOUBLE_instance == null)
      new DOUBLE();
    return DOUBLE_instance;
  }
  function STRING() {
    STRING_instance = this;
    PrimitiveKind.call(this);
  }
  var STRING_instance;
  function STRING_getInstance() {
    if (STRING_instance == null)
      new STRING();
    return STRING_instance;
  }
  function PrimitiveKind() {
    SerialKind.call(this);
  }
  function CLASS() {
    CLASS_instance = this;
    StructureKind.call(this);
  }
  var CLASS_instance;
  function CLASS_getInstance() {
    if (CLASS_instance == null)
      new CLASS();
    return CLASS_instance;
  }
  function LIST() {
    LIST_instance = this;
    StructureKind.call(this);
  }
  var LIST_instance;
  function LIST_getInstance() {
    if (LIST_instance == null)
      new LIST();
    return LIST_instance;
  }
  function MAP() {
    MAP_instance = this;
    StructureKind.call(this);
  }
  var MAP_instance;
  function MAP_getInstance() {
    if (MAP_instance == null)
      new MAP();
    return MAP_instance;
  }
  function OBJECT() {
    OBJECT_instance = this;
    StructureKind.call(this);
  }
  var OBJECT_instance;
  function OBJECT_getInstance() {
    if (OBJECT_instance == null)
      new OBJECT();
    return OBJECT_instance;
  }
  function StructureKind() {
    SerialKind.call(this);
  }
  function SEALED() {
    SEALED_instance = this;
    PolymorphicKind.call(this);
  }
  var SEALED_instance;
  function SEALED_getInstance() {
    if (SEALED_instance == null)
      new SEALED();
    return SEALED_instance;
  }
  function OPEN() {
    OPEN_instance = this;
    PolymorphicKind.call(this);
  }
  var OPEN_instance;
  function OPEN_getInstance() {
    if (OPEN_instance == null)
      new OPEN();
    return OPEN_instance;
  }
  function PolymorphicKind() {
    SerialKind.call(this);
  }
  function AbstractDecoder() {
  }
  protoOf(AbstractDecoder).x4d = function () {
    throw SerializationException_init_$Create$_0('' + getKClassFromExpression(this) + " can't retrieve untyped values");
  };
  protoOf(AbstractDecoder).y4d = function () {
    return true;
  };
  protoOf(AbstractDecoder).z4d = function () {
    return null;
  };
  protoOf(AbstractDecoder).a4e = function () {
    var tmp = this.x4d();
    return typeof tmp === 'boolean' ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).b4e = function () {
    var tmp = this.x4d();
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).c4e = function () {
    var tmp = this.x4d();
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).d4e = function () {
    var tmp = this.x4d();
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).e4e = function () {
    var tmp = this.x4d();
    return tmp instanceof Long ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).f4e = function () {
    var tmp = this.x4d();
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).g4e = function () {
    var tmp = this.x4d();
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).h4e = function () {
    var tmp = this.x4d();
    return tmp instanceof Char ? tmp.rb_1 : THROW_CCE();
  };
  protoOf(AbstractDecoder).i4e = function () {
    var tmp = this.x4d();
    return typeof tmp === 'string' ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).j4e = function (enumDescriptor) {
    var tmp = this.x4d();
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).k4e = function (descriptor) {
    return this;
  };
  protoOf(AbstractDecoder).l4e = function (deserializer, previousValue) {
    return this.m4e(deserializer);
  };
  protoOf(AbstractDecoder).n4e = function (descriptor) {
    return this;
  };
  protoOf(AbstractDecoder).o4e = function (descriptor) {
  };
  protoOf(AbstractDecoder).p4e = function (descriptor, index) {
    return this.a4e();
  };
  protoOf(AbstractDecoder).q4e = function (descriptor, index) {
    return this.b4e();
  };
  protoOf(AbstractDecoder).r4e = function (descriptor, index) {
    return this.c4e();
  };
  protoOf(AbstractDecoder).s4e = function (descriptor, index) {
    return this.d4e();
  };
  protoOf(AbstractDecoder).t4e = function (descriptor, index) {
    return this.e4e();
  };
  protoOf(AbstractDecoder).u4e = function (descriptor, index) {
    return this.f4e();
  };
  protoOf(AbstractDecoder).v4e = function (descriptor, index) {
    return this.g4e();
  };
  protoOf(AbstractDecoder).w4e = function (descriptor, index) {
    return this.h4e();
  };
  protoOf(AbstractDecoder).x4e = function (descriptor, index) {
    return this.i4e();
  };
  protoOf(AbstractDecoder).y4e = function (descriptor, index) {
    return this.k4e(descriptor.p4c(index));
  };
  protoOf(AbstractDecoder).z4e = function (descriptor, index, deserializer, previousValue) {
    return this.l4e(deserializer, previousValue);
  };
  protoOf(AbstractDecoder).b4f = function (descriptor, index, deserializer, previousValue) {
    // Inline function 'kotlinx.serialization.encoding.decodeIfNullable' call
    var isNullabilitySupported = deserializer.v4a().g4c();
    var tmp;
    if (isNullabilitySupported ? true : this.y4d()) {
      // Inline function 'kotlinx.serialization.encoding.AbstractDecoder.decodeNullableSerializableElement.<anonymous>' call
      tmp = this.l4e(deserializer, previousValue);
    } else {
      tmp = this.z4d();
    }
    return tmp;
  };
  function AbstractEncoder() {
  }
  protoOf(AbstractEncoder).n4e = function (descriptor) {
    return this;
  };
  protoOf(AbstractEncoder).o4e = function (descriptor) {
  };
  protoOf(AbstractEncoder).f4f = function (descriptor, index) {
    return true;
  };
  protoOf(AbstractEncoder).g4f = function (value) {
    throw SerializationException_init_$Create$_0('Non-serializable ' + getKClassFromExpression(value) + ' is not supported by ' + getKClassFromExpression(this) + ' encoder');
  };
  protoOf(AbstractEncoder).h4f = function () {
    throw SerializationException_init_$Create$_0("'null' is not supported by default");
  };
  protoOf(AbstractEncoder).i4f = function (value) {
    return this.g4f(value);
  };
  protoOf(AbstractEncoder).j4f = function (value) {
    return this.g4f(value);
  };
  protoOf(AbstractEncoder).k4f = function (value) {
    return this.g4f(value);
  };
  protoOf(AbstractEncoder).l4f = function (value) {
    return this.g4f(value);
  };
  protoOf(AbstractEncoder).m4f = function (value) {
    return this.g4f(value);
  };
  protoOf(AbstractEncoder).n4f = function (value) {
    return this.g4f(value);
  };
  protoOf(AbstractEncoder).o4f = function (value) {
    return this.g4f(value);
  };
  protoOf(AbstractEncoder).p4f = function (value) {
    return this.g4f(new Char(value));
  };
  protoOf(AbstractEncoder).q4f = function (value) {
    return this.g4f(value);
  };
  protoOf(AbstractEncoder).r4f = function (enumDescriptor, index) {
    return this.g4f(index);
  };
  protoOf(AbstractEncoder).s4f = function (descriptor) {
    return this;
  };
  protoOf(AbstractEncoder).t4f = function (descriptor, index, value) {
    if (this.f4f(descriptor, index)) {
      this.i4f(value);
    }
  };
  protoOf(AbstractEncoder).u4f = function (descriptor, index, value) {
    if (this.f4f(descriptor, index)) {
      this.j4f(value);
    }
  };
  protoOf(AbstractEncoder).v4f = function (descriptor, index, value) {
    if (this.f4f(descriptor, index)) {
      this.k4f(value);
    }
  };
  protoOf(AbstractEncoder).w4f = function (descriptor, index, value) {
    if (this.f4f(descriptor, index)) {
      this.l4f(value);
    }
  };
  protoOf(AbstractEncoder).x4f = function (descriptor, index, value) {
    if (this.f4f(descriptor, index)) {
      this.m4f(value);
    }
  };
  protoOf(AbstractEncoder).y4f = function (descriptor, index, value) {
    if (this.f4f(descriptor, index)) {
      this.n4f(value);
    }
  };
  protoOf(AbstractEncoder).z4f = function (descriptor, index, value) {
    if (this.f4f(descriptor, index)) {
      this.o4f(value);
    }
  };
  protoOf(AbstractEncoder).a4g = function (descriptor, index, value) {
    if (this.f4f(descriptor, index)) {
      this.p4f(value);
    }
  };
  protoOf(AbstractEncoder).b4g = function (descriptor, index, value) {
    if (this.f4f(descriptor, index)) {
      this.q4f(value);
    }
  };
  protoOf(AbstractEncoder).c4g = function (descriptor, index) {
    return this.f4f(descriptor, index) ? this.s4f(descriptor.p4c(index)) : NoOpEncoder_getInstance();
  };
  protoOf(AbstractEncoder).d4g = function (descriptor, index, serializer, value) {
    if (this.f4f(descriptor, index)) {
      this.e4g(serializer, value);
    }
  };
  protoOf(AbstractEncoder).f4g = function (descriptor, index, serializer, value) {
    if (this.f4f(descriptor, index)) {
      this.g4g(serializer, value);
    }
  };
  function Decoder() {
  }
  function Companion() {
    this.k4g_1 = -1;
    this.l4g_1 = -3;
  }
  var Companion_instance_0;
  function Companion_getInstance_6() {
    return Companion_instance_0;
  }
  function CompositeDecoder() {
  }
  function Encoder() {
  }
  function CompositeEncoder() {
  }
  function decodeSequentially_0($this, compositeDecoder) {
    var klassName = compositeDecoder.x4e($this.v4a(), 0);
    var serializer = findPolymorphicSerializer_0($this, compositeDecoder, klassName);
    return compositeDecoder.a4f($this.v4a(), 1, serializer);
  }
  function AbstractPolymorphicSerializer() {
  }
  protoOf(AbstractPolymorphicSerializer).l4b = function (encoder, value) {
    var actualSerializer = findPolymorphicSerializer(this, encoder, value);
    // Inline function 'kotlinx.serialization.encoding.encodeStructure' call
    var descriptor = this.v4a();
    var composite = encoder.n4e(descriptor);
    // Inline function 'kotlinx.serialization.internal.AbstractPolymorphicSerializer.serialize.<anonymous>' call
    composite.b4g(this.v4a(), 0, actualSerializer.v4a().v4b());
    var tmp = this.v4a();
    // Inline function 'kotlinx.serialization.internal.cast' call
    var tmp$ret$0 = isInterface(actualSerializer, SerializationStrategy) ? actualSerializer : THROW_CCE();
    composite.d4g(tmp, 1, tmp$ret$0, value);
    composite.o4e(descriptor);
  };
  protoOf(AbstractPolymorphicSerializer).w4a = function (encoder, value) {
    return this.l4b(encoder, !(value == null) ? value : THROW_CCE());
  };
  protoOf(AbstractPolymorphicSerializer).x4a = function (decoder) {
    // Inline function 'kotlinx.serialization.encoding.decodeStructure' call
    var descriptor = this.v4a();
    var composite = decoder.n4e(descriptor);
    var tmp$ret$0;
    $l$block: {
      // Inline function 'kotlinx.serialization.internal.AbstractPolymorphicSerializer.deserialize.<anonymous>' call
      var klassName = null;
      var value = null;
      if (composite.c4f()) {
        tmp$ret$0 = decodeSequentially_0(this, composite);
        break $l$block;
      }
      mainLoop: while (true) {
        var index = composite.d4f(this.v4a());
        if (index === -1) {
          break mainLoop;
        } else {
          if (index === 0) {
            klassName = composite.x4e(this.v4a(), index);
          } else {
            if (index === 1) {
              var tmp$ret$2;
              $l$block_0: {
                // Inline function 'kotlin.requireNotNull' call
                var value_0 = klassName;
                // Inline function 'kotlin.contracts.contract' call
                if (value_0 == null) {
                  // Inline function 'kotlinx.serialization.internal.AbstractPolymorphicSerializer.deserialize.<anonymous>.<anonymous>' call
                  var message = 'Cannot read polymorphic value before its type token';
                  throw IllegalArgumentException_init_$Create$(toString(message));
                } else {
                  tmp$ret$2 = value_0;
                  break $l$block_0;
                }
              }
              klassName = tmp$ret$2;
              var serializer = findPolymorphicSerializer_0(this, composite, klassName);
              value = composite.a4f(this.v4a(), index, serializer);
            } else {
              var tmp0_elvis_lhs = klassName;
              throw SerializationException_init_$Create$_0('Invalid index in polymorphic deserialization of ' + (tmp0_elvis_lhs == null ? 'unknown class' : tmp0_elvis_lhs) + ('\n Expected 0, 1 or DECODE_DONE(-1), but found ' + index));
            }
          }
        }
      }
      var tmp$ret$4;
      $l$block_1: {
        // Inline function 'kotlin.requireNotNull' call
        var value_1 = value;
        // Inline function 'kotlin.contracts.contract' call
        if (value_1 == null) {
          // Inline function 'kotlinx.serialization.internal.AbstractPolymorphicSerializer.deserialize.<anonymous>.<anonymous>' call
          var message_0 = 'Polymorphic value has not been read for class ' + klassName;
          throw IllegalArgumentException_init_$Create$(toString(message_0));
        } else {
          tmp$ret$4 = value_1;
          break $l$block_1;
        }
      }
      var tmp = tmp$ret$4;
      tmp$ret$0 = !(tmp == null) ? tmp : THROW_CCE();
    }
    var result = tmp$ret$0;
    composite.o4e(descriptor);
    return result;
  };
  protoOf(AbstractPolymorphicSerializer).m4b = function (decoder, klassName) {
    return decoder.y4b().m4g(this.k4b(), klassName);
  };
  protoOf(AbstractPolymorphicSerializer).n4b = function (encoder, value) {
    return encoder.y4b().n4g(this.k4b(), value);
  };
  function throwSubtypeNotRegistered(subClass, baseClass) {
    var tmp0_elvis_lhs = subClass.f7();
    throwSubtypeNotRegistered_0(tmp0_elvis_lhs == null ? '' + subClass : tmp0_elvis_lhs, baseClass);
  }
  function throwSubtypeNotRegistered_0(subClassName, baseClass) {
    var scope = "in the polymorphic scope of '" + baseClass.f7() + "'";
    throw SerializationException_init_$Create$_0(subClassName == null ? 'Class discriminator was missing and no default serializers were registered ' + scope + '.' : "Serializer for subclass '" + subClassName + "' is not found " + scope + '.\n' + ("Check if class with serial name '" + subClassName + "' exists and serializer is registered in a corresponding SerializersModule.\n") + ("To be registered automatically, class '" + subClassName + "' has to be '@Serializable', and the base class '" + baseClass.f7() + "' has to be sealed and '@Serializable'."));
  }
  function NothingSerializer_0() {
    NothingSerializer_instance = this;
    this.o4g_1 = NothingSerialDescriptor_getInstance();
  }
  protoOf(NothingSerializer_0).v4a = function () {
    return this.o4g_1;
  };
  protoOf(NothingSerializer_0).p4g = function (encoder, value) {
    throw SerializationException_init_$Create$_0("'kotlin.Nothing' cannot be serialized");
  };
  protoOf(NothingSerializer_0).w4a = function (encoder, value) {
    var tmp;
    if (false) {
      tmp = value;
    } else {
      tmp = THROW_CCE();
    }
    return this.p4g(encoder, tmp);
  };
  protoOf(NothingSerializer_0).x4a = function (decoder) {
    throw SerializationException_init_$Create$_0("'kotlin.Nothing' does not have instances");
  };
  var NothingSerializer_instance;
  function NothingSerializer_getInstance() {
    if (NothingSerializer_instance == null)
      new NothingSerializer_0();
    return NothingSerializer_instance;
  }
  function DurationSerializer() {
    DurationSerializer_instance = this;
    this.q4g_1 = new PrimitiveSerialDescriptor_0('kotlin.time.Duration', STRING_getInstance());
  }
  protoOf(DurationSerializer).v4a = function () {
    return this.q4g_1;
  };
  protoOf(DurationSerializer).r4g = function (encoder, value) {
    encoder.q4f(Duration__toIsoString_impl_9h6wsm(value));
  };
  protoOf(DurationSerializer).w4a = function (encoder, value) {
    return this.r4g(encoder, value instanceof Duration ? value.km_1 : THROW_CCE());
  };
  protoOf(DurationSerializer).s4g = function (decoder) {
    return Companion_getInstance().jm(decoder.i4e());
  };
  protoOf(DurationSerializer).x4a = function (decoder) {
    return new Duration(this.s4g(decoder));
  };
  var DurationSerializer_instance;
  function DurationSerializer_getInstance() {
    if (DurationSerializer_instance == null)
      new DurationSerializer();
    return DurationSerializer_instance;
  }
  function CachedNames() {
  }
  function ArrayListClassDesc(elementDesc) {
    ListLikeDescriptor.call(this, elementDesc);
  }
  protoOf(ArrayListClassDesc).v4b = function () {
    return 'kotlin.collections.ArrayList';
  };
  function HashSetClassDesc(elementDesc) {
    ListLikeDescriptor.call(this, elementDesc);
  }
  protoOf(HashSetClassDesc).v4b = function () {
    return 'kotlin.collections.HashSet';
  };
  function LinkedHashSetClassDesc(elementDesc) {
    ListLikeDescriptor.call(this, elementDesc);
  }
  protoOf(LinkedHashSetClassDesc).v4b = function () {
    return 'kotlin.collections.LinkedHashSet';
  };
  function HashMapClassDesc(keyDesc, valueDesc) {
    MapLikeDescriptor.call(this, 'kotlin.collections.HashMap', keyDesc, valueDesc);
  }
  function LinkedHashMapClassDesc(keyDesc, valueDesc) {
    MapLikeDescriptor.call(this, 'kotlin.collections.LinkedHashMap', keyDesc, valueDesc);
  }
  function ArrayClassDesc(elementDesc) {
    ListLikeDescriptor.call(this, elementDesc);
  }
  protoOf(ArrayClassDesc).v4b = function () {
    return 'kotlin.Array';
  };
  function ListLikeDescriptor(elementDescriptor) {
    this.v4g_1 = elementDescriptor;
    this.w4g_1 = 1;
  }
  protoOf(ListLikeDescriptor).n4c = function () {
    return LIST_getInstance();
  };
  protoOf(ListLikeDescriptor).l4c = function () {
    return this.w4g_1;
  };
  protoOf(ListLikeDescriptor).r4c = function (index) {
    return index.toString();
  };
  protoOf(ListLikeDescriptor).q4c = function (name) {
    var tmp0_elvis_lhs = toIntOrNull(name);
    var tmp;
    if (tmp0_elvis_lhs == null) {
      throw IllegalArgumentException_init_$Create$(name + ' is not a valid list index');
    } else {
      tmp = tmp0_elvis_lhs;
    }
    return tmp;
  };
  protoOf(ListLikeDescriptor).s4c = function (index) {
    // Inline function 'kotlin.require' call
    // Inline function 'kotlin.contracts.contract' call
    if (!(index >= 0)) {
      // Inline function 'kotlinx.serialization.internal.ListLikeDescriptor.isElementOptional.<anonymous>' call
      var message = 'Illegal index ' + index + ', ' + this.v4b() + ' expects only non-negative indices';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    return false;
  };
  protoOf(ListLikeDescriptor).o4c = function (index) {
    // Inline function 'kotlin.require' call
    // Inline function 'kotlin.contracts.contract' call
    if (!(index >= 0)) {
      // Inline function 'kotlinx.serialization.internal.ListLikeDescriptor.getElementAnnotations.<anonymous>' call
      var message = 'Illegal index ' + index + ', ' + this.v4b() + ' expects only non-negative indices';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    return emptyList();
  };
  protoOf(ListLikeDescriptor).p4c = function (index) {
    // Inline function 'kotlin.require' call
    // Inline function 'kotlin.contracts.contract' call
    if (!(index >= 0)) {
      // Inline function 'kotlinx.serialization.internal.ListLikeDescriptor.getElementDescriptor.<anonymous>' call
      var message = 'Illegal index ' + index + ', ' + this.v4b() + ' expects only non-negative indices';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    return this.v4g_1;
  };
  protoOf(ListLikeDescriptor).equals = function (other) {
    if (this === other)
      return true;
    if (!(other instanceof ListLikeDescriptor))
      return false;
    if (equals(this.v4g_1, other.v4g_1) ? this.v4b() === other.v4b() : false)
      return true;
    return false;
  };
  protoOf(ListLikeDescriptor).hashCode = function () {
    return imul(hashCode(this.v4g_1), 31) + getStringHashCode(this.v4b()) | 0;
  };
  protoOf(ListLikeDescriptor).toString = function () {
    return this.v4b() + '(' + this.v4g_1 + ')';
  };
  function MapLikeDescriptor(serialName, keyDescriptor, valueDescriptor) {
    this.b4h_1 = serialName;
    this.c4h_1 = keyDescriptor;
    this.d4h_1 = valueDescriptor;
    this.e4h_1 = 2;
  }
  protoOf(MapLikeDescriptor).v4b = function () {
    return this.b4h_1;
  };
  protoOf(MapLikeDescriptor).n4c = function () {
    return MAP_getInstance();
  };
  protoOf(MapLikeDescriptor).l4c = function () {
    return this.e4h_1;
  };
  protoOf(MapLikeDescriptor).r4c = function (index) {
    return index.toString();
  };
  protoOf(MapLikeDescriptor).q4c = function (name) {
    var tmp0_elvis_lhs = toIntOrNull(name);
    var tmp;
    if (tmp0_elvis_lhs == null) {
      throw IllegalArgumentException_init_$Create$(name + ' is not a valid map index');
    } else {
      tmp = tmp0_elvis_lhs;
    }
    return tmp;
  };
  protoOf(MapLikeDescriptor).s4c = function (index) {
    // Inline function 'kotlin.require' call
    // Inline function 'kotlin.contracts.contract' call
    if (!(index >= 0)) {
      // Inline function 'kotlinx.serialization.internal.MapLikeDescriptor.isElementOptional.<anonymous>' call
      var message = 'Illegal index ' + index + ', ' + this.v4b() + ' expects only non-negative indices';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    return false;
  };
  protoOf(MapLikeDescriptor).o4c = function (index) {
    // Inline function 'kotlin.require' call
    // Inline function 'kotlin.contracts.contract' call
    if (!(index >= 0)) {
      // Inline function 'kotlinx.serialization.internal.MapLikeDescriptor.getElementAnnotations.<anonymous>' call
      var message = 'Illegal index ' + index + ', ' + this.v4b() + ' expects only non-negative indices';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    return emptyList();
  };
  protoOf(MapLikeDescriptor).p4c = function (index) {
    // Inline function 'kotlin.require' call
    // Inline function 'kotlin.contracts.contract' call
    if (!(index >= 0)) {
      // Inline function 'kotlinx.serialization.internal.MapLikeDescriptor.getElementDescriptor.<anonymous>' call
      var message = 'Illegal index ' + index + ', ' + this.v4b() + ' expects only non-negative indices';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    var tmp;
    switch (index % 2 | 0) {
      case 0:
        tmp = this.c4h_1;
        break;
      case 1:
        tmp = this.d4h_1;
        break;
      default:
        var message_0 = 'Unreached';
        throw IllegalStateException_init_$Create$(toString(message_0));
    }
    return tmp;
  };
  protoOf(MapLikeDescriptor).equals = function (other) {
    if (this === other)
      return true;
    if (!(other instanceof MapLikeDescriptor))
      return false;
    if (!(this.v4b() === other.v4b()))
      return false;
    if (!equals(this.c4h_1, other.c4h_1))
      return false;
    if (!equals(this.d4h_1, other.d4h_1))
      return false;
    return true;
  };
  protoOf(MapLikeDescriptor).hashCode = function () {
    var result = getStringHashCode(this.v4b());
    result = imul(31, result) + hashCode(this.c4h_1) | 0;
    result = imul(31, result) + hashCode(this.d4h_1) | 0;
    return result;
  };
  protoOf(MapLikeDescriptor).toString = function () {
    return this.v4b() + '(' + this.c4h_1 + ', ' + this.d4h_1 + ')';
  };
  function PrimitiveArrayDescriptor(primitive) {
    ListLikeDescriptor.call(this, primitive);
    this.j4h_1 = primitive.v4b() + 'Array';
  }
  protoOf(PrimitiveArrayDescriptor).v4b = function () {
    return this.j4h_1;
  };
  function ArrayListSerializer(element) {
    CollectionSerializer.call(this, element);
    this.l4h_1 = new ArrayListClassDesc(element.v4a());
  }
  protoOf(ArrayListSerializer).v4a = function () {
    return this.l4h_1;
  };
  protoOf(ArrayListSerializer).m4h = function () {
    // Inline function 'kotlin.collections.arrayListOf' call
    return ArrayList_init_$Create$_0();
  };
  protoOf(ArrayListSerializer).n4h = function (_this__u8e3s4) {
    return _this__u8e3s4.u();
  };
  protoOf(ArrayListSerializer).o4h = function (_this__u8e3s4) {
    return this.n4h(_this__u8e3s4 instanceof ArrayList ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ArrayListSerializer).p4h = function (_this__u8e3s4) {
    return _this__u8e3s4;
  };
  protoOf(ArrayListSerializer).q4h = function (_this__u8e3s4) {
    return this.p4h(_this__u8e3s4 instanceof ArrayList ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ArrayListSerializer).r4h = function (_this__u8e3s4) {
    var tmp0_elvis_lhs = _this__u8e3s4 instanceof ArrayList ? _this__u8e3s4 : null;
    return tmp0_elvis_lhs == null ? ArrayList_init_$Create$_1(_this__u8e3s4) : tmp0_elvis_lhs;
  };
  protoOf(ArrayListSerializer).s4h = function (_this__u8e3s4) {
    return this.r4h((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, List) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ArrayListSerializer).t4h = function (_this__u8e3s4, size) {
    return _this__u8e3s4.g3(size);
  };
  protoOf(ArrayListSerializer).u4h = function (_this__u8e3s4, size) {
    return this.t4h(_this__u8e3s4 instanceof ArrayList ? _this__u8e3s4 : THROW_CCE(), size);
  };
  protoOf(ArrayListSerializer).v4h = function (_this__u8e3s4, index, element) {
    _this__u8e3s4.c2(index, element);
  };
  protoOf(ArrayListSerializer).w4h = function (_this__u8e3s4, index, element) {
    var tmp = _this__u8e3s4 instanceof ArrayList ? _this__u8e3s4 : THROW_CCE();
    return this.v4h(tmp, index, (element == null ? true : !(element == null)) ? element : THROW_CCE());
  };
  function HashSetSerializer(eSerializer) {
    CollectionSerializer.call(this, eSerializer);
    this.h4i_1 = new HashSetClassDesc(eSerializer.v4a());
  }
  protoOf(HashSetSerializer).v4a = function () {
    return this.h4i_1;
  };
  protoOf(HashSetSerializer).m4h = function () {
    return HashSet_init_$Create$();
  };
  protoOf(HashSetSerializer).i4i = function (_this__u8e3s4) {
    return _this__u8e3s4.u();
  };
  protoOf(HashSetSerializer).o4h = function (_this__u8e3s4) {
    return this.i4i(_this__u8e3s4 instanceof HashSet ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(HashSetSerializer).j4i = function (_this__u8e3s4) {
    return _this__u8e3s4;
  };
  protoOf(HashSetSerializer).q4h = function (_this__u8e3s4) {
    return this.j4i(_this__u8e3s4 instanceof HashSet ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(HashSetSerializer).k4i = function (_this__u8e3s4) {
    var tmp0_elvis_lhs = _this__u8e3s4 instanceof HashSet ? _this__u8e3s4 : null;
    return tmp0_elvis_lhs == null ? HashSet_init_$Create$_0(_this__u8e3s4) : tmp0_elvis_lhs;
  };
  protoOf(HashSetSerializer).s4h = function (_this__u8e3s4) {
    return this.k4i((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Set) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(HashSetSerializer).l4i = function (_this__u8e3s4, size) {
  };
  protoOf(HashSetSerializer).u4h = function (_this__u8e3s4, size) {
    return this.l4i(_this__u8e3s4 instanceof HashSet ? _this__u8e3s4 : THROW_CCE(), size);
  };
  protoOf(HashSetSerializer).m4i = function (_this__u8e3s4, index, element) {
    _this__u8e3s4.i1(element);
  };
  protoOf(HashSetSerializer).w4h = function (_this__u8e3s4, index, element) {
    var tmp = _this__u8e3s4 instanceof HashSet ? _this__u8e3s4 : THROW_CCE();
    return this.m4i(tmp, index, (element == null ? true : !(element == null)) ? element : THROW_CCE());
  };
  function LinkedHashSetSerializer(eSerializer) {
    CollectionSerializer.call(this, eSerializer);
    this.o4i_1 = new LinkedHashSetClassDesc(eSerializer.v4a());
  }
  protoOf(LinkedHashSetSerializer).v4a = function () {
    return this.o4i_1;
  };
  protoOf(LinkedHashSetSerializer).m4h = function () {
    // Inline function 'kotlin.collections.linkedSetOf' call
    return LinkedHashSet_init_$Create$();
  };
  protoOf(LinkedHashSetSerializer).p4i = function (_this__u8e3s4) {
    return _this__u8e3s4.u();
  };
  protoOf(LinkedHashSetSerializer).o4h = function (_this__u8e3s4) {
    return this.p4i(_this__u8e3s4 instanceof LinkedHashSet ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LinkedHashSetSerializer).q4i = function (_this__u8e3s4) {
    return _this__u8e3s4;
  };
  protoOf(LinkedHashSetSerializer).q4h = function (_this__u8e3s4) {
    return this.q4i(_this__u8e3s4 instanceof LinkedHashSet ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LinkedHashSetSerializer).k4i = function (_this__u8e3s4) {
    var tmp0_elvis_lhs = _this__u8e3s4 instanceof LinkedHashSet ? _this__u8e3s4 : null;
    return tmp0_elvis_lhs == null ? LinkedHashSet_init_$Create$_0(_this__u8e3s4) : tmp0_elvis_lhs;
  };
  protoOf(LinkedHashSetSerializer).s4h = function (_this__u8e3s4) {
    return this.k4i((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Set) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LinkedHashSetSerializer).r4i = function (_this__u8e3s4, size) {
  };
  protoOf(LinkedHashSetSerializer).u4h = function (_this__u8e3s4, size) {
    return this.r4i(_this__u8e3s4 instanceof LinkedHashSet ? _this__u8e3s4 : THROW_CCE(), size);
  };
  protoOf(LinkedHashSetSerializer).s4i = function (_this__u8e3s4, index, element) {
    _this__u8e3s4.i1(element);
  };
  protoOf(LinkedHashSetSerializer).w4h = function (_this__u8e3s4, index, element) {
    var tmp = _this__u8e3s4 instanceof LinkedHashSet ? _this__u8e3s4 : THROW_CCE();
    return this.s4i(tmp, index, (element == null ? true : !(element == null)) ? element : THROW_CCE());
  };
  function HashMapSerializer(kSerializer, vSerializer) {
    MapLikeSerializer.call(this, kSerializer, vSerializer);
    this.v4i_1 = new HashMapClassDesc(kSerializer.v4a(), vSerializer.v4a());
  }
  protoOf(HashMapSerializer).v4a = function () {
    return this.v4i_1;
  };
  protoOf(HashMapSerializer).w4i = function (_this__u8e3s4) {
    return _this__u8e3s4.u();
  };
  protoOf(HashMapSerializer).x4i = function (_this__u8e3s4) {
    return this.w4i((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Map) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(HashMapSerializer).y4i = function (_this__u8e3s4) {
    // Inline function 'kotlin.collections.iterator' call
    return _this__u8e3s4.q2().w();
  };
  protoOf(HashMapSerializer).z4i = function (_this__u8e3s4) {
    return this.y4i((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Map) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(HashMapSerializer).m4h = function () {
    return HashMap_init_$Create$();
  };
  protoOf(HashMapSerializer).a4j = function (_this__u8e3s4) {
    return imul(_this__u8e3s4.u(), 2);
  };
  protoOf(HashMapSerializer).o4h = function (_this__u8e3s4) {
    return this.a4j(_this__u8e3s4 instanceof HashMap ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(HashMapSerializer).b4j = function (_this__u8e3s4) {
    return _this__u8e3s4;
  };
  protoOf(HashMapSerializer).q4h = function (_this__u8e3s4) {
    return this.b4j(_this__u8e3s4 instanceof HashMap ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(HashMapSerializer).c4j = function (_this__u8e3s4) {
    var tmp0_elvis_lhs = _this__u8e3s4 instanceof HashMap ? _this__u8e3s4 : null;
    return tmp0_elvis_lhs == null ? HashMap_init_$Create$_0(_this__u8e3s4) : tmp0_elvis_lhs;
  };
  protoOf(HashMapSerializer).s4h = function (_this__u8e3s4) {
    return this.c4j((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Map) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(HashMapSerializer).d4j = function (_this__u8e3s4, size) {
  };
  protoOf(HashMapSerializer).u4h = function (_this__u8e3s4, size) {
    return this.d4j(_this__u8e3s4 instanceof HashMap ? _this__u8e3s4 : THROW_CCE(), size);
  };
  function LinkedHashMapSerializer(kSerializer, vSerializer) {
    MapLikeSerializer.call(this, kSerializer, vSerializer);
    this.k4j_1 = new LinkedHashMapClassDesc(kSerializer.v4a(), vSerializer.v4a());
  }
  protoOf(LinkedHashMapSerializer).v4a = function () {
    return this.k4j_1;
  };
  protoOf(LinkedHashMapSerializer).w4i = function (_this__u8e3s4) {
    return _this__u8e3s4.u();
  };
  protoOf(LinkedHashMapSerializer).x4i = function (_this__u8e3s4) {
    return this.w4i((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Map) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LinkedHashMapSerializer).y4i = function (_this__u8e3s4) {
    // Inline function 'kotlin.collections.iterator' call
    return _this__u8e3s4.q2().w();
  };
  protoOf(LinkedHashMapSerializer).z4i = function (_this__u8e3s4) {
    return this.y4i((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Map) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LinkedHashMapSerializer).m4h = function () {
    return LinkedHashMap_init_$Create$();
  };
  protoOf(LinkedHashMapSerializer).l4j = function (_this__u8e3s4) {
    return imul(_this__u8e3s4.u(), 2);
  };
  protoOf(LinkedHashMapSerializer).o4h = function (_this__u8e3s4) {
    return this.l4j(_this__u8e3s4 instanceof LinkedHashMap ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LinkedHashMapSerializer).m4j = function (_this__u8e3s4) {
    return _this__u8e3s4;
  };
  protoOf(LinkedHashMapSerializer).q4h = function (_this__u8e3s4) {
    return this.m4j(_this__u8e3s4 instanceof LinkedHashMap ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LinkedHashMapSerializer).c4j = function (_this__u8e3s4) {
    var tmp0_elvis_lhs = _this__u8e3s4 instanceof LinkedHashMap ? _this__u8e3s4 : null;
    return tmp0_elvis_lhs == null ? LinkedHashMap_init_$Create$_1(_this__u8e3s4) : tmp0_elvis_lhs;
  };
  protoOf(LinkedHashMapSerializer).s4h = function (_this__u8e3s4) {
    return this.c4j((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Map) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LinkedHashMapSerializer).n4j = function (_this__u8e3s4, size) {
  };
  protoOf(LinkedHashMapSerializer).u4h = function (_this__u8e3s4, size) {
    return this.n4j(_this__u8e3s4 instanceof LinkedHashMap ? _this__u8e3s4 : THROW_CCE(), size);
  };
  function ReferenceArraySerializer(kClass, eSerializer) {
    CollectionLikeSerializer.call(this, eSerializer);
    this.p4j_1 = kClass;
    this.q4j_1 = new ArrayClassDesc(eSerializer.v4a());
  }
  protoOf(ReferenceArraySerializer).v4a = function () {
    return this.q4j_1;
  };
  protoOf(ReferenceArraySerializer).r4j = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(ReferenceArraySerializer).x4i = function (_this__u8e3s4) {
    return this.r4j((!(_this__u8e3s4 == null) ? isArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ReferenceArraySerializer).s4j = function (_this__u8e3s4) {
    return arrayIterator(_this__u8e3s4);
  };
  protoOf(ReferenceArraySerializer).z4i = function (_this__u8e3s4) {
    return this.s4j((!(_this__u8e3s4 == null) ? isArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ReferenceArraySerializer).m4h = function () {
    // Inline function 'kotlin.collections.arrayListOf' call
    return ArrayList_init_$Create$_0();
  };
  protoOf(ReferenceArraySerializer).t4j = function (_this__u8e3s4) {
    return _this__u8e3s4.u();
  };
  protoOf(ReferenceArraySerializer).o4h = function (_this__u8e3s4) {
    return this.t4j(_this__u8e3s4 instanceof ArrayList ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ReferenceArraySerializer).u4j = function (_this__u8e3s4) {
    return toNativeArrayImpl(_this__u8e3s4, this.p4j_1);
  };
  protoOf(ReferenceArraySerializer).q4h = function (_this__u8e3s4) {
    return this.u4j(_this__u8e3s4 instanceof ArrayList ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ReferenceArraySerializer).v4j = function (_this__u8e3s4) {
    return ArrayList_init_$Create$_1(asList(_this__u8e3s4));
  };
  protoOf(ReferenceArraySerializer).s4h = function (_this__u8e3s4) {
    return this.v4j((!(_this__u8e3s4 == null) ? isArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ReferenceArraySerializer).w4j = function (_this__u8e3s4, size) {
    return _this__u8e3s4.g3(size);
  };
  protoOf(ReferenceArraySerializer).u4h = function (_this__u8e3s4, size) {
    return this.w4j(_this__u8e3s4 instanceof ArrayList ? _this__u8e3s4 : THROW_CCE(), size);
  };
  protoOf(ReferenceArraySerializer).x4j = function (_this__u8e3s4, index, element) {
    _this__u8e3s4.c2(index, element);
  };
  protoOf(ReferenceArraySerializer).w4h = function (_this__u8e3s4, index, element) {
    var tmp = _this__u8e3s4 instanceof ArrayList ? _this__u8e3s4 : THROW_CCE();
    return this.x4j(tmp, index, (element == null ? true : !(element == null)) ? element : THROW_CCE());
  };
  function CollectionSerializer(element) {
    CollectionLikeSerializer.call(this, element);
  }
  protoOf(CollectionSerializer).y4h = function (_this__u8e3s4) {
    return _this__u8e3s4.u();
  };
  protoOf(CollectionSerializer).x4i = function (_this__u8e3s4) {
    return this.y4h((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Collection) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(CollectionSerializer).z4h = function (_this__u8e3s4) {
    return _this__u8e3s4.w();
  };
  protoOf(CollectionSerializer).z4i = function (_this__u8e3s4) {
    return this.z4h((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Collection) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  function MapLikeSerializer(keySerializer, valueSerializer) {
    AbstractCollectionSerializer.call(this);
    this.e4j_1 = keySerializer;
    this.f4j_1 = valueSerializer;
  }
  protoOf(MapLikeSerializer).g4j = function (decoder, builder, startIndex, size) {
    // Inline function 'kotlin.require' call
    // Inline function 'kotlin.contracts.contract' call
    if (!(size >= 0)) {
      // Inline function 'kotlinx.serialization.internal.MapLikeSerializer.readAll.<anonymous>' call
      var message = 'Size must be known in advance when using READ_ALL';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    var progression = step(until(0, imul(size, 2)), 2);
    var inductionVariable = progression.ib_1;
    var last = progression.jb_1;
    var step_0 = progression.kb_1;
    if ((step_0 > 0 ? inductionVariable <= last : false) ? true : step_0 < 0 ? last <= inductionVariable : false)
      do {
        var index = inductionVariable;
        inductionVariable = inductionVariable + step_0 | 0;
        this.h4j(decoder, startIndex + index | 0, builder, false);
      }
       while (!(index === last));
  };
  protoOf(MapLikeSerializer).c4i = function (decoder, builder, startIndex, size) {
    return this.g4j(decoder, (!(builder == null) ? isInterface(builder, MutableMap) : false) ? builder : THROW_CCE(), startIndex, size);
  };
  protoOf(MapLikeSerializer).h4j = function (decoder, index, builder, checkIndex) {
    var key = decoder.a4f(this.v4a(), index, this.e4j_1);
    var tmp;
    if (checkIndex) {
      // Inline function 'kotlin.also' call
      var this_0 = decoder.d4f(this.v4a());
      // Inline function 'kotlin.contracts.contract' call
      // Inline function 'kotlinx.serialization.internal.MapLikeSerializer.readElement.<anonymous>' call
      // Inline function 'kotlin.require' call
      // Inline function 'kotlin.contracts.contract' call
      if (!(this_0 === (index + 1 | 0))) {
        // Inline function 'kotlinx.serialization.internal.MapLikeSerializer.readElement.<anonymous>.<anonymous>' call
        var message = 'Value must follow key in a map, index for key: ' + index + ', returned index for value: ' + this_0;
        throw IllegalArgumentException_init_$Create$(toString(message));
      }
      tmp = this_0;
    } else {
      tmp = index + 1 | 0;
    }
    var vIndex = tmp;
    var tmp_0;
    var tmp_1;
    if (builder.r(key)) {
      var tmp_2 = this.f4j_1.v4a().n4c();
      tmp_1 = !(tmp_2 instanceof PrimitiveKind);
    } else {
      tmp_1 = false;
    }
    if (tmp_1) {
      tmp_0 = decoder.z4e(this.v4a(), vIndex, this.f4j_1, getValue(builder, key));
    } else {
      tmp_0 = decoder.a4f(this.v4a(), vIndex, this.f4j_1);
    }
    var value = tmp_0;
    // Inline function 'kotlin.collections.set' call
    builder.s(key, value);
  };
  protoOf(MapLikeSerializer).d4i = function (decoder, index, builder, checkIndex) {
    return this.h4j(decoder, index, (!(builder == null) ? isInterface(builder, MutableMap) : false) ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(MapLikeSerializer).b4i = function (encoder, value) {
    var size = this.x4i(value);
    // Inline function 'kotlinx.serialization.encoding.encodeCollection' call
    var descriptor = this.v4a();
    var composite = encoder.i4g(descriptor, size);
    // Inline function 'kotlinx.serialization.internal.MapLikeSerializer.serialize.<anonymous>' call
    var iterator = this.z4i(value);
    var index = 0;
    // Inline function 'kotlin.collections.forEach' call
    // Inline function 'kotlin.collections.iterator' call
    var tmp0_iterator = iterator;
    while (tmp0_iterator.f()) {
      var element = tmp0_iterator.e();
      // Inline function 'kotlinx.serialization.internal.MapLikeSerializer.serialize.<anonymous>.<anonymous>' call
      // Inline function 'kotlin.collections.component1' call
      var k = element.s2();
      // Inline function 'kotlin.collections.component2' call
      var v = element.t2();
      var tmp = this.v4a();
      var tmp0 = index;
      index = tmp0 + 1 | 0;
      composite.d4g(tmp, tmp0, this.e4j_1, k);
      var tmp_0 = this.v4a();
      var tmp1 = index;
      index = tmp1 + 1 | 0;
      composite.d4g(tmp_0, tmp1, this.f4j_1, v);
    }
    composite.o4e(descriptor);
  };
  protoOf(MapLikeSerializer).w4a = function (encoder, value) {
    return this.b4i(encoder, (value == null ? true : !(value == null)) ? value : THROW_CCE());
  };
  function CollectionLikeSerializer(elementSerializer) {
    AbstractCollectionSerializer.call(this);
    this.a4i_1 = elementSerializer;
  }
  protoOf(CollectionLikeSerializer).b4i = function (encoder, value) {
    var size = this.x4i(value);
    // Inline function 'kotlinx.serialization.encoding.encodeCollection' call
    var descriptor = this.v4a();
    var composite = encoder.i4g(descriptor, size);
    // Inline function 'kotlinx.serialization.internal.CollectionLikeSerializer.serialize.<anonymous>' call
    var iterator = this.z4i(value);
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var index = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        composite.d4g(this.v4a(), index, this.a4i_1, iterator.e());
      }
       while (inductionVariable < size);
    composite.o4e(descriptor);
  };
  protoOf(CollectionLikeSerializer).w4a = function (encoder, value) {
    return this.b4i(encoder, (value == null ? true : !(value == null)) ? value : THROW_CCE());
  };
  protoOf(CollectionLikeSerializer).c4i = function (decoder, builder, startIndex, size) {
    // Inline function 'kotlin.require' call
    // Inline function 'kotlin.contracts.contract' call
    if (!(size >= 0)) {
      // Inline function 'kotlinx.serialization.internal.CollectionLikeSerializer.readAll.<anonymous>' call
      var message = 'Size must be known in advance when using READ_ALL';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var index = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        this.d4i(decoder, startIndex + index | 0, builder, false);
      }
       while (inductionVariable < size);
  };
  protoOf(CollectionLikeSerializer).d4i = function (decoder, index, builder, checkIndex) {
    this.w4h(builder, index, decoder.a4f(this.v4a(), index, this.a4i_1));
  };
  function readSize($this, decoder, builder) {
    var size = decoder.e4f($this.v4a());
    $this.u4h(builder, size);
    return size;
  }
  function AbstractCollectionSerializer() {
  }
  protoOf(AbstractCollectionSerializer).f4i = function (decoder, previous) {
    var tmp1_elvis_lhs = previous == null ? null : this.s4h(previous);
    var builder = tmp1_elvis_lhs == null ? this.m4h() : tmp1_elvis_lhs;
    var startIndex = this.o4h(builder);
    var compositeDecoder = decoder.n4e(this.v4a());
    if (compositeDecoder.c4f()) {
      this.c4i(compositeDecoder, builder, startIndex, readSize(this, compositeDecoder, builder));
    } else {
      $l$loop: while (true) {
        var index = compositeDecoder.d4f(this.v4a());
        if (index === -1)
          break $l$loop;
        this.e4i(compositeDecoder, startIndex + index | 0, builder);
      }
    }
    compositeDecoder.o4e(this.v4a());
    return this.q4h(builder);
  };
  protoOf(AbstractCollectionSerializer).x4a = function (decoder) {
    return this.f4i(decoder, null);
  };
  protoOf(AbstractCollectionSerializer).e4i = function (decoder, index, builder, checkIndex, $super) {
    checkIndex = checkIndex === VOID ? true : checkIndex;
    var tmp;
    if ($super === VOID) {
      this.d4i(decoder, index, builder, checkIndex);
      tmp = Unit_instance;
    } else {
      tmp = $super.d4i.call(this, decoder, index, builder, checkIndex);
    }
    return tmp;
  };
  function PrimitiveArraySerializer(primitiveSerializer) {
    CollectionLikeSerializer.call(this, primitiveSerializer);
    this.z4j_1 = new PrimitiveArrayDescriptor(primitiveSerializer.v4a());
  }
  protoOf(PrimitiveArraySerializer).v4a = function () {
    return this.z4j_1;
  };
  protoOf(PrimitiveArraySerializer).a4k = function (_this__u8e3s4) {
    return _this__u8e3s4.b4k();
  };
  protoOf(PrimitiveArraySerializer).o4h = function (_this__u8e3s4) {
    return this.a4k(_this__u8e3s4 instanceof PrimitiveArrayBuilder ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(PrimitiveArraySerializer).c4k = function (_this__u8e3s4) {
    return _this__u8e3s4.f3();
  };
  protoOf(PrimitiveArraySerializer).q4h = function (_this__u8e3s4) {
    return this.c4k(_this__u8e3s4 instanceof PrimitiveArrayBuilder ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(PrimitiveArraySerializer).d4k = function (_this__u8e3s4, size) {
    return _this__u8e3s4.g3(size);
  };
  protoOf(PrimitiveArraySerializer).u4h = function (_this__u8e3s4, size) {
    return this.d4k(_this__u8e3s4 instanceof PrimitiveArrayBuilder ? _this__u8e3s4 : THROW_CCE(), size);
  };
  protoOf(PrimitiveArraySerializer).e4k = function (_this__u8e3s4) {
    var message = 'This method lead to boxing and must not be used, use writeContents instead';
    throw IllegalStateException_init_$Create$(toString(message));
  };
  protoOf(PrimitiveArraySerializer).z4i = function (_this__u8e3s4) {
    return this.e4k((_this__u8e3s4 == null ? true : !(_this__u8e3s4 == null)) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(PrimitiveArraySerializer).f4k = function (_this__u8e3s4, index, element) {
    var message = 'This method lead to boxing and must not be used, use Builder.append instead';
    throw IllegalStateException_init_$Create$(toString(message));
  };
  protoOf(PrimitiveArraySerializer).w4h = function (_this__u8e3s4, index, element) {
    var tmp = _this__u8e3s4 instanceof PrimitiveArrayBuilder ? _this__u8e3s4 : THROW_CCE();
    return this.f4k(tmp, index, (element == null ? true : !(element == null)) ? element : THROW_CCE());
  };
  protoOf(PrimitiveArraySerializer).m4h = function () {
    return this.s4h(this.g4k());
  };
  protoOf(PrimitiveArraySerializer).j4k = function (encoder, value) {
    var size = this.x4i(value);
    // Inline function 'kotlinx.serialization.encoding.encodeCollection' call
    var descriptor = this.z4j_1;
    var composite = encoder.i4g(descriptor, size);
    // Inline function 'kotlinx.serialization.internal.PrimitiveArraySerializer.serialize.<anonymous>' call
    this.i4k(composite, value, size);
    composite.o4e(descriptor);
  };
  protoOf(PrimitiveArraySerializer).w4a = function (encoder, value) {
    return this.j4k(encoder, (value == null ? true : !(value == null)) ? value : THROW_CCE());
  };
  protoOf(PrimitiveArraySerializer).b4i = function (encoder, value) {
    return this.j4k(encoder, (value == null ? true : !(value == null)) ? value : THROW_CCE());
  };
  protoOf(PrimitiveArraySerializer).x4a = function (decoder) {
    return this.f4i(decoder, null);
  };
  function PrimitiveArrayBuilder() {
  }
  protoOf(PrimitiveArrayBuilder).k4k = function (requiredCapacity, $super) {
    requiredCapacity = requiredCapacity === VOID ? this.b4k() + 1 | 0 : requiredCapacity;
    var tmp;
    if ($super === VOID) {
      this.g3(requiredCapacity);
      tmp = Unit_instance;
    } else {
      tmp = $super.g3.call(this, requiredCapacity);
    }
    return tmp;
  };
  function Companion_0() {
    Companion_instance_1 = this;
    this.l4k_1 = longArray(0);
  }
  var Companion_instance_1;
  function Companion_getInstance_7() {
    if (Companion_instance_1 == null)
      new Companion_0();
    return Companion_instance_1;
  }
  function prepareHighMarksArray($this, elementsCount) {
    var slotsCount = (elementsCount - 1 | 0) >>> 6 | 0;
    Companion_getInstance_0();
    var elementsInLastSlot = elementsCount & (64 - 1 | 0);
    var highMarks = longArray(slotsCount);
    if (!(elementsInLastSlot === 0)) {
      highMarks[get_lastIndex(highMarks)] = (new Long(-1, -1)).rc(elementsCount);
    }
    return highMarks;
  }
  function markHigh($this, index) {
    var slot = (index >>> 6 | 0) - 1 | 0;
    Companion_getInstance_0();
    var offsetInSlot = index & (64 - 1 | 0);
    $this.p4k_1[slot] = $this.p4k_1[slot].vc((new Long(1, 0)).rc(offsetInSlot));
  }
  function nextUnmarkedHighIndex($this) {
    var inductionVariable = 0;
    var last = $this.p4k_1.length - 1 | 0;
    if (inductionVariable <= last)
      do {
        var slot = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        var tmp = slot + 1 | 0;
        Companion_getInstance_0();
        var slotOffset = imul(tmp, 64);
        var slotMarks = $this.p4k_1[slot];
        while (!slotMarks.equals(new Long(-1, -1))) {
          var indexInSlot = countTrailingZeroBits(slotMarks.qc());
          slotMarks = slotMarks.vc((new Long(1, 0)).rc(indexInSlot));
          var index = slotOffset + indexInSlot | 0;
          if ($this.n4k_1($this.m4k_1, index)) {
            $this.p4k_1[slot] = slotMarks;
            return index;
          }
        }
        $this.p4k_1[slot] = slotMarks;
      }
       while (inductionVariable <= last);
    return -1;
  }
  function ElementMarker(descriptor, readIfAbsent) {
    Companion_getInstance_7();
    this.m4k_1 = descriptor;
    this.n4k_1 = readIfAbsent;
    var elementsCount = this.m4k_1.l4c();
    Companion_getInstance_0();
    if (elementsCount <= 64) {
      var tmp = this;
      var tmp_0;
      Companion_getInstance_0();
      if (elementsCount === 64) {
        tmp_0 = new Long(0, 0);
      } else {
        tmp_0 = (new Long(-1, -1)).rc(elementsCount);
      }
      tmp.o4k_1 = tmp_0;
      this.p4k_1 = Companion_getInstance_7().l4k_1;
    } else {
      this.o4k_1 = new Long(0, 0);
      this.p4k_1 = prepareHighMarksArray(this, elementsCount);
    }
  }
  protoOf(ElementMarker).q4k = function (index) {
    Companion_getInstance_0();
    if (index < 64) {
      this.o4k_1 = this.o4k_1.vc((new Long(1, 0)).rc(index));
    } else {
      markHigh(this, index);
    }
  };
  protoOf(ElementMarker).r4k = function () {
    var elementsCount = this.m4k_1.l4c();
    while (!this.o4k_1.equals(new Long(-1, -1))) {
      var index = countTrailingZeroBits(this.o4k_1.qc());
      this.o4k_1 = this.o4k_1.vc((new Long(1, 0)).rc(index));
      if (this.n4k_1(this.m4k_1, index)) {
        return index;
      }
    }
    Companion_getInstance_0();
    if (elementsCount > 64) {
      return nextUnmarkedHighIndex(this);
    }
    return -1;
  };
  function createSimpleEnumSerializer(serialName, values) {
    return new EnumSerializer(serialName, values);
  }
  function createUnmarkedDescriptor($this, serialName) {
    var d = new EnumDescriptor(serialName, $this.s4k_1.length);
    // Inline function 'kotlin.collections.forEach' call
    var indexedObject = $this.s4k_1;
    var inductionVariable = 0;
    var last = indexedObject.length;
    while (inductionVariable < last) {
      var element = indexedObject[inductionVariable];
      inductionVariable = inductionVariable + 1 | 0;
      // Inline function 'kotlinx.serialization.internal.EnumSerializer.createUnmarkedDescriptor.<anonymous>' call
      d.h4l(element.ya_1);
    }
    return d;
  }
  function EnumSerializer$descriptor$delegate$lambda(this$0, $serialName) {
    return function () {
      var tmp0_elvis_lhs = this$0.t4k_1;
      return tmp0_elvis_lhs == null ? createUnmarkedDescriptor(this$0, $serialName) : tmp0_elvis_lhs;
    };
  }
  function EnumSerializer(serialName, values) {
    this.s4k_1 = values;
    this.t4k_1 = null;
    var tmp = this;
    tmp.u4k_1 = lazy_0(EnumSerializer$descriptor$delegate$lambda(this, serialName));
  }
  protoOf(EnumSerializer).v4a = function () {
    // Inline function 'kotlin.getValue' call
    var this_0 = this.u4k_1;
    descriptor$factory_1();
    return this_0.t2();
  };
  protoOf(EnumSerializer).i4l = function (encoder, value) {
    var index = indexOf(this.s4k_1, value);
    if (index === -1) {
      throw SerializationException_init_$Create$_0('' + value + ' is not a valid enum ' + this.v4a().v4b() + ', ' + ('must be one of ' + contentToString(this.s4k_1)));
    }
    encoder.r4f(this.v4a(), index);
  };
  protoOf(EnumSerializer).w4a = function (encoder, value) {
    return this.i4l(encoder, value instanceof Enum ? value : THROW_CCE());
  };
  protoOf(EnumSerializer).x4a = function (decoder) {
    var index = decoder.j4e(this.v4a());
    if (!(0 <= index ? index <= (this.s4k_1.length - 1 | 0) : false)) {
      throw SerializationException_init_$Create$_0('' + index + ' is not among valid ' + this.v4a().v4b() + ' enum values, ' + ('values size is ' + this.s4k_1.length));
    }
    return this.s4k_1[index];
  };
  protoOf(EnumSerializer).toString = function () {
    return 'kotlinx.serialization.internal.EnumSerializer<' + this.v4a().v4b() + '>';
  };
  function _get_elementDescriptors__y23q9p($this) {
    // Inline function 'kotlin.getValue' call
    var this_0 = $this.w4l_1;
    elementDescriptors$factory();
    return this_0.t2();
  }
  function EnumDescriptor$elementDescriptors$delegate$lambda($elementsCount, $name, this$0) {
    return function () {
      var tmp = 0;
      var tmp_0 = $elementsCount;
      // Inline function 'kotlin.arrayOfNulls' call
      var tmp_1 = fillArrayVal(Array(tmp_0), null);
      while (tmp < tmp_0) {
        var tmp_2 = tmp;
        tmp_1[tmp_2] = buildSerialDescriptor($name + '.' + this$0.r4c(tmp_2), OBJECT_getInstance(), []);
        tmp = tmp + 1 | 0;
      }
      return tmp_1;
    };
  }
  function EnumDescriptor(name, elementsCount) {
    PluginGeneratedSerialDescriptor.call(this, name, VOID, elementsCount);
    this.v4l_1 = ENUM_getInstance();
    var tmp = this;
    tmp.w4l_1 = lazy_0(EnumDescriptor$elementDescriptors$delegate$lambda(elementsCount, name, this));
  }
  protoOf(EnumDescriptor).n4c = function () {
    return this.v4l_1;
  };
  protoOf(EnumDescriptor).p4c = function (index) {
    return getChecked(_get_elementDescriptors__y23q9p(this), index);
  };
  protoOf(EnumDescriptor).equals = function (other) {
    if (this === other)
      return true;
    if (other == null)
      return false;
    if (!(!(other == null) ? isInterface(other, SerialDescriptor) : false))
      return false;
    if (!(other.n4c() === ENUM_getInstance()))
      return false;
    if (!(this.v4b() === other.v4b()))
      return false;
    if (!equals(cachedSerialNames(this), cachedSerialNames(other)))
      return false;
    return true;
  };
  protoOf(EnumDescriptor).toString = function () {
    return joinToString(get_elementNames(this), ', ', this.v4b() + '(', ')');
  };
  protoOf(EnumDescriptor).hashCode = function () {
    var result = getStringHashCode(this.v4b());
    // Inline function 'kotlinx.serialization.internal.elementsHashCodeBy' call
    // Inline function 'kotlin.collections.fold' call
    var accumulator = 1;
    var tmp0_iterator = get_elementNames(this).w();
    while (tmp0_iterator.f()) {
      var element = tmp0_iterator.e();
      // Inline function 'kotlinx.serialization.internal.elementsHashCodeBy.<anonymous>' call
      var hash = accumulator;
      var tmp = imul(31, hash);
      // Inline function 'kotlin.hashCode' call
      // Inline function 'kotlinx.serialization.internal.EnumDescriptor.hashCode.<anonymous>' call
      var tmp1_elvis_lhs = element == null ? null : hashCode(element);
      accumulator = tmp + (tmp1_elvis_lhs == null ? 0 : tmp1_elvis_lhs) | 0;
    }
    var elementsHashCode = accumulator;
    result = imul(31, result) + elementsHashCode | 0;
    return result;
  };
  function descriptor$factory_1() {
    return getPropertyCallableRef('descriptor', 1, KProperty1, function (receiver) {
      return receiver.v4a();
    }, null);
  }
  function elementDescriptors$factory() {
    return getPropertyCallableRef('elementDescriptors', 1, KProperty1, function (receiver) {
      return _get_elementDescriptors__y23q9p(receiver);
    }, null);
  }
  function InlinePrimitiveDescriptor(name, primitiveSerializer) {
    return new InlineClassDescriptor(name, new InlinePrimitiveDescriptor$1(primitiveSerializer));
  }
  function InlineClassDescriptor(name, generatedSerializer) {
    PluginGeneratedSerialDescriptor.call(this, name, generatedSerializer, 1);
    this.n4m_1 = true;
  }
  protoOf(InlineClassDescriptor).m4c = function () {
    return this.n4m_1;
  };
  protoOf(InlineClassDescriptor).hashCode = function () {
    return imul(protoOf(PluginGeneratedSerialDescriptor).hashCode.call(this), 31);
  };
  protoOf(InlineClassDescriptor).equals = function (other) {
    var tmp$ret$0;
    $l$block_5: {
      // Inline function 'kotlinx.serialization.internal.equalsImpl' call
      if (this === other) {
        tmp$ret$0 = true;
        break $l$block_5;
      }
      if (!(other instanceof InlineClassDescriptor)) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      if (!(this.v4b() === other.v4b())) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      // Inline function 'kotlinx.serialization.internal.InlineClassDescriptor.equals.<anonymous>' call
      if (!(other.n4m_1 ? contentEquals(this.x4l(), other.x4l()) : false)) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      if (!(this.l4c() === other.l4c())) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      var inductionVariable = 0;
      var last = this.l4c();
      if (inductionVariable < last)
        do {
          var index = inductionVariable;
          inductionVariable = inductionVariable + 1 | 0;
          if (!(this.p4c(index).v4b() === other.p4c(index).v4b())) {
            tmp$ret$0 = false;
            break $l$block_5;
          }
          if (!equals(this.p4c(index).n4c(), other.p4c(index).n4c())) {
            tmp$ret$0 = false;
            break $l$block_5;
          }
        }
         while (inductionVariable < last);
      tmp$ret$0 = true;
    }
    return tmp$ret$0;
  };
  function InlinePrimitiveDescriptor$1($primitiveSerializer) {
    this.o4m_1 = $primitiveSerializer;
  }
  protoOf(InlinePrimitiveDescriptor$1).p4m = function () {
    // Inline function 'kotlin.arrayOf' call
    // Inline function 'kotlin.js.unsafeCast' call
    // Inline function 'kotlin.js.asDynamic' call
    return [this.o4m_1];
  };
  protoOf(InlinePrimitiveDescriptor$1).v4a = function () {
    var message = 'unsupported';
    throw IllegalStateException_init_$Create$(toString(message));
  };
  protoOf(InlinePrimitiveDescriptor$1).w4a = function (encoder, value) {
    // Inline function 'kotlin.error' call
    var message = 'unsupported';
    throw IllegalStateException_init_$Create$(toString(message));
  };
  protoOf(InlinePrimitiveDescriptor$1).x4a = function (decoder) {
    // Inline function 'kotlin.error' call
    var message = 'unsupported';
    throw IllegalStateException_init_$Create$(toString(message));
  };
  function jsonCachedSerialNames(_this__u8e3s4) {
    return cachedSerialNames(_this__u8e3s4);
  }
  function NoOpEncoder() {
    NoOpEncoder_instance = this;
    AbstractEncoder.call(this);
    this.r4m_1 = EmptySerializersModule_0();
  }
  protoOf(NoOpEncoder).y4b = function () {
    return this.r4m_1;
  };
  protoOf(NoOpEncoder).g4f = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).h4f = function () {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).i4f = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).j4f = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).k4f = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).l4f = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).m4f = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).n4f = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).o4f = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).p4f = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).q4f = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).r4f = function (enumDescriptor, index) {
    return Unit_instance;
  };
  var NoOpEncoder_instance;
  function NoOpEncoder_getInstance() {
    if (NoOpEncoder_instance == null)
      new NoOpEncoder();
    return NoOpEncoder_instance;
  }
  function error($this) {
    throw IllegalStateException_init_$Create$('Descriptor for type `kotlin.Nothing` does not have elements');
  }
  function NothingSerialDescriptor() {
    NothingSerialDescriptor_instance = this;
    this.s4m_1 = OBJECT_getInstance();
    this.t4m_1 = 'kotlin.Nothing';
  }
  protoOf(NothingSerialDescriptor).n4c = function () {
    return this.s4m_1;
  };
  protoOf(NothingSerialDescriptor).v4b = function () {
    return this.t4m_1;
  };
  protoOf(NothingSerialDescriptor).l4c = function () {
    return 0;
  };
  protoOf(NothingSerialDescriptor).r4c = function (index) {
    error(this);
  };
  protoOf(NothingSerialDescriptor).q4c = function (name) {
    error(this);
  };
  protoOf(NothingSerialDescriptor).s4c = function (index) {
    error(this);
  };
  protoOf(NothingSerialDescriptor).p4c = function (index) {
    error(this);
  };
  protoOf(NothingSerialDescriptor).o4c = function (index) {
    error(this);
  };
  protoOf(NothingSerialDescriptor).toString = function () {
    return 'NothingSerialDescriptor';
  };
  protoOf(NothingSerialDescriptor).equals = function (other) {
    return this === other;
  };
  protoOf(NothingSerialDescriptor).hashCode = function () {
    return getStringHashCode(this.t4m_1) + imul(31, this.s4m_1.hashCode()) | 0;
  };
  var NothingSerialDescriptor_instance;
  function NothingSerialDescriptor_getInstance() {
    if (NothingSerialDescriptor_instance == null)
      new NothingSerialDescriptor();
    return NothingSerialDescriptor_instance;
  }
  function NullableSerializer(serializer) {
    this.u4m_1 = serializer;
    this.v4m_1 = new SerialDescriptorForNullable(this.u4m_1.v4a());
  }
  protoOf(NullableSerializer).v4a = function () {
    return this.v4m_1;
  };
  protoOf(NullableSerializer).w4m = function (encoder, value) {
    if (!(value == null)) {
      encoder.h4g();
      encoder.e4g(this.u4m_1, value);
    } else {
      encoder.h4f();
    }
  };
  protoOf(NullableSerializer).w4a = function (encoder, value) {
    return this.w4m(encoder, (value == null ? true : !(value == null)) ? value : THROW_CCE());
  };
  protoOf(NullableSerializer).x4a = function (decoder) {
    return decoder.y4d() ? decoder.m4e(this.u4m_1) : decoder.z4d();
  };
  protoOf(NullableSerializer).equals = function (other) {
    if (this === other)
      return true;
    if (other == null ? true : !getKClassFromExpression(this).equals(getKClassFromExpression(other)))
      return false;
    if (!(other instanceof NullableSerializer))
      THROW_CCE();
    if (!equals(this.u4m_1, other.u4m_1))
      return false;
    return true;
  };
  protoOf(NullableSerializer).hashCode = function () {
    return hashCode(this.u4m_1);
  };
  function SerialDescriptorForNullable(original) {
    this.t4c_1 = original;
    this.u4c_1 = this.t4c_1.v4b() + '?';
    this.v4c_1 = cachedSerialNames(this.t4c_1);
  }
  protoOf(SerialDescriptorForNullable).k4c = function () {
    return this.t4c_1.k4c();
  };
  protoOf(SerialDescriptorForNullable).l4c = function () {
    return this.t4c_1.l4c();
  };
  protoOf(SerialDescriptorForNullable).m4c = function () {
    return this.t4c_1.m4c();
  };
  protoOf(SerialDescriptorForNullable).n4c = function () {
    return this.t4c_1.n4c();
  };
  protoOf(SerialDescriptorForNullable).o4c = function (index) {
    return this.t4c_1.o4c(index);
  };
  protoOf(SerialDescriptorForNullable).p4c = function (index) {
    return this.t4c_1.p4c(index);
  };
  protoOf(SerialDescriptorForNullable).q4c = function (name) {
    return this.t4c_1.q4c(name);
  };
  protoOf(SerialDescriptorForNullable).r4c = function (index) {
    return this.t4c_1.r4c(index);
  };
  protoOf(SerialDescriptorForNullable).s4c = function (index) {
    return this.t4c_1.s4c(index);
  };
  protoOf(SerialDescriptorForNullable).v4b = function () {
    return this.u4c_1;
  };
  protoOf(SerialDescriptorForNullable).u4d = function () {
    return this.v4c_1;
  };
  protoOf(SerialDescriptorForNullable).g4c = function () {
    return true;
  };
  protoOf(SerialDescriptorForNullable).equals = function (other) {
    if (this === other)
      return true;
    if (!(other instanceof SerialDescriptorForNullable))
      return false;
    if (!equals(this.t4c_1, other.t4c_1))
      return false;
    return true;
  };
  protoOf(SerialDescriptorForNullable).toString = function () {
    return '' + this.t4c_1 + '?';
  };
  protoOf(SerialDescriptorForNullable).hashCode = function () {
    return imul(hashCode(this.t4c_1), 31);
  };
  function ObjectSerializer$descriptor$delegate$lambda$lambda(this$0) {
    return function ($this$buildSerialDescriptor) {
      $this$buildSerialDescriptor.a4b_1 = this$0.y4m_1;
      return Unit_instance;
    };
  }
  function ObjectSerializer$descriptor$delegate$lambda($serialName, this$0) {
    return function () {
      var tmp = OBJECT_getInstance();
      return buildSerialDescriptor($serialName, tmp, [], ObjectSerializer$descriptor$delegate$lambda$lambda(this$0));
    };
  }
  function ObjectSerializer(serialName, objectInstance) {
    this.x4m_1 = objectInstance;
    this.y4m_1 = emptyList();
    var tmp = this;
    var tmp_0 = LazyThreadSafetyMode_PUBLICATION_getInstance();
    tmp.z4m_1 = lazy(tmp_0, ObjectSerializer$descriptor$delegate$lambda(serialName, this));
  }
  protoOf(ObjectSerializer).v4a = function () {
    // Inline function 'kotlin.getValue' call
    var this_0 = this.z4m_1;
    descriptor$factory_2();
    return this_0.t2();
  };
  protoOf(ObjectSerializer).l4b = function (encoder, value) {
    encoder.n4e(this.v4a()).o4e(this.v4a());
  };
  protoOf(ObjectSerializer).w4a = function (encoder, value) {
    return this.l4b(encoder, !(value == null) ? value : THROW_CCE());
  };
  protoOf(ObjectSerializer).x4a = function (decoder) {
    // Inline function 'kotlinx.serialization.encoding.decodeStructure' call
    var descriptor = this.v4a();
    var composite = decoder.n4e(descriptor);
    var tmp$ret$0;
    $l$block_0: {
      // Inline function 'kotlinx.serialization.internal.ObjectSerializer.deserialize.<anonymous>' call
      if (composite.c4f()) {
        tmp$ret$0 = Unit_instance;
        break $l$block_0;
      }
      var index = composite.d4f(this.v4a());
      if (index === -1) {
        tmp$ret$0 = Unit_instance;
        break $l$block_0;
      } else {
        throw SerializationException_init_$Create$_0('Unexpected index ' + index);
      }
    }
    var result = tmp$ret$0;
    composite.o4e(descriptor);
    return this.x4m_1;
  };
  function descriptor$factory_2() {
    return getPropertyCallableRef('descriptor', 1, KProperty1, function (receiver) {
      return receiver.v4a();
    }, null);
  }
  function get_EMPTY_DESCRIPTOR_ARRAY() {
    _init_properties_Platform_common_kt__3qzecs();
    return EMPTY_DESCRIPTOR_ARRAY;
  }
  var EMPTY_DESCRIPTOR_ARRAY;
  function cachedSerialNames(_this__u8e3s4) {
    _init_properties_Platform_common_kt__3qzecs();
    if (isInterface(_this__u8e3s4, CachedNames))
      return _this__u8e3s4.u4d();
    var result = HashSet_init_$Create$_1(_this__u8e3s4.l4c());
    var inductionVariable = 0;
    var last = _this__u8e3s4.l4c();
    if (inductionVariable < last)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        // Inline function 'kotlin.collections.plusAssign' call
        var element = _this__u8e3s4.r4c(i);
        result.i1(element);
      }
       while (inductionVariable < last);
    return result;
  }
  function kclass(_this__u8e3s4) {
    _init_properties_Platform_common_kt__3qzecs();
    var t = _this__u8e3s4.t7();
    var tmp;
    if (!(t == null) ? isInterface(t, KClass) : false) {
      tmp = t;
    } else {
      if (!(t == null) ? isInterface(t, KTypeParameter) : false) {
        var message = 'Captured type parameter ' + t + ' from generic non-reified function. ' + ('Such functionality cannot be supported as ' + t + ' is erased, either specify serializer explicitly or make ') + ('calling function inline with reified ' + t);
        throw IllegalStateException_init_$Create$(toString(message));
      } else {
        var message_0 = 'Only KClass supported as classifier, got ' + t;
        throw IllegalStateException_init_$Create$(toString(message_0));
      }
    }
    var tmp_0 = tmp;
    return isInterface(tmp_0, KClass) ? tmp_0 : THROW_CCE();
  }
  function notRegisteredMessage(_this__u8e3s4) {
    _init_properties_Platform_common_kt__3qzecs();
    var tmp0_elvis_lhs = _this__u8e3s4.f7();
    return notRegisteredMessage_0(tmp0_elvis_lhs == null ? '<local class name not available>' : tmp0_elvis_lhs);
  }
  function notRegisteredMessage_0(className) {
    _init_properties_Platform_common_kt__3qzecs();
    return "Serializer for class '" + className + "' is not found.\n" + "Please ensure that class is marked as '@Serializable' and that the serialization compiler plugin is applied.\n";
  }
  function compactArray(_this__u8e3s4) {
    _init_properties_Platform_common_kt__3qzecs();
    // Inline function 'kotlin.takeUnless' call
    // Inline function 'kotlin.contracts.contract' call
    var tmp;
    // Inline function 'kotlinx.serialization.internal.compactArray.<anonymous>' call
    // Inline function 'kotlin.collections.isNullOrEmpty' call
    // Inline function 'kotlin.contracts.contract' call
    if (!(_this__u8e3s4 == null ? true : _this__u8e3s4.c1())) {
      tmp = _this__u8e3s4;
    } else {
      tmp = null;
    }
    var tmp0_safe_receiver = tmp;
    var tmp_0;
    if (tmp0_safe_receiver == null) {
      tmp_0 = null;
    } else {
      // Inline function 'kotlin.collections.toTypedArray' call
      tmp_0 = copyToArray(tmp0_safe_receiver);
    }
    var tmp1_elvis_lhs = tmp_0;
    return tmp1_elvis_lhs == null ? get_EMPTY_DESCRIPTOR_ARRAY() : tmp1_elvis_lhs;
  }
  function serializerNotRegistered(_this__u8e3s4) {
    _init_properties_Platform_common_kt__3qzecs();
    throw SerializationException_init_$Create$_0(notRegisteredMessage(_this__u8e3s4));
  }
  var properties_initialized_Platform_common_kt_i7q4ty;
  function _init_properties_Platform_common_kt__3qzecs() {
    if (!properties_initialized_Platform_common_kt_i7q4ty) {
      properties_initialized_Platform_common_kt_i7q4ty = true;
      // Inline function 'kotlin.arrayOf' call
      // Inline function 'kotlin.js.unsafeCast' call
      // Inline function 'kotlin.js.asDynamic' call
      EMPTY_DESCRIPTOR_ARRAY = [];
    }
  }
  function throwMissingFieldException(seen, goldenMask, descriptor) {
    // Inline function 'kotlin.collections.mutableListOf' call
    var missingFields = ArrayList_init_$Create$_0();
    var missingFieldsBits = goldenMask & ~seen;
    var inductionVariable = 0;
    if (inductionVariable < 32)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        if (!((missingFieldsBits & 1) === 0)) {
          // Inline function 'kotlin.collections.plusAssign' call
          var element = descriptor.r4c(i);
          missingFields.i1(element);
        }
        missingFieldsBits = missingFieldsBits >>> 1 | 0;
      }
       while (inductionVariable < 32);
    throw MissingFieldException_init_$Create$(missingFields, descriptor.v4b());
  }
  function throwArrayMissingFieldException(seenArray, goldenMaskArray, descriptor) {
    // Inline function 'kotlin.collections.mutableListOf' call
    var missingFields = ArrayList_init_$Create$_0();
    var inductionVariable = 0;
    var last = goldenMaskArray.length - 1 | 0;
    if (inductionVariable <= last)
      do {
        var maskSlot = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        var missingFieldsBits = goldenMaskArray[maskSlot] & ~seenArray[maskSlot];
        if (!(missingFieldsBits === 0)) {
          var inductionVariable_0 = 0;
          if (inductionVariable_0 < 32)
            do {
              var i = inductionVariable_0;
              inductionVariable_0 = inductionVariable_0 + 1 | 0;
              if (!((missingFieldsBits & 1) === 0)) {
                // Inline function 'kotlin.collections.plusAssign' call
                var element = descriptor.r4c(imul(maskSlot, 32) + i | 0);
                missingFields.i1(element);
              }
              missingFieldsBits = missingFieldsBits >>> 1 | 0;
            }
             while (inductionVariable_0 < 32);
        }
      }
       while (inductionVariable <= last);
    throw MissingFieldException_init_$Create$(missingFields, descriptor.v4b());
  }
  function _get_childSerializers__7vnyfa($this) {
    // Inline function 'kotlin.getValue' call
    var this_0 = $this.e4l_1;
    childSerializers$factory();
    return this_0.t2();
  }
  function _get__hashCode__tgwhef_0($this) {
    // Inline function 'kotlin.getValue' call
    var this_0 = $this.g4l_1;
    _hashCode$factory_0();
    return this_0.t2();
  }
  function buildIndices($this) {
    var indices = HashMap_init_$Create$();
    var inductionVariable = 0;
    var last = $this.z4k_1.length - 1 | 0;
    if (inductionVariable <= last)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        // Inline function 'kotlin.collections.set' call
        var key = $this.z4k_1[i];
        indices.s(key, i);
      }
       while (inductionVariable <= last);
    return indices;
  }
  function PluginGeneratedSerialDescriptor$childSerializers$delegate$lambda(this$0) {
    return function () {
      var tmp0_safe_receiver = this$0.w4k_1;
      var tmp1_elvis_lhs = tmp0_safe_receiver == null ? null : tmp0_safe_receiver.p4m();
      return tmp1_elvis_lhs == null ? get_EMPTY_SERIALIZER_ARRAY() : tmp1_elvis_lhs;
    };
  }
  function PluginGeneratedSerialDescriptor$typeParameterDescriptors$delegate$lambda(this$0) {
    return function () {
      var tmp0_safe_receiver = this$0.w4k_1;
      var tmp1_safe_receiver = tmp0_safe_receiver == null ? null : tmp0_safe_receiver.q4m();
      var tmp;
      if (tmp1_safe_receiver == null) {
        tmp = null;
      } else {
        // Inline function 'kotlin.collections.map' call
        // Inline function 'kotlin.collections.mapTo' call
        var destination = ArrayList_init_$Create$(tmp1_safe_receiver.length);
        var inductionVariable = 0;
        var last = tmp1_safe_receiver.length;
        while (inductionVariable < last) {
          var item = tmp1_safe_receiver[inductionVariable];
          inductionVariable = inductionVariable + 1 | 0;
          // Inline function 'kotlinx.serialization.internal.PluginGeneratedSerialDescriptor.typeParameterDescriptors$delegate.<anonymous>.<anonymous>' call
          var tmp$ret$0 = item.v4a();
          destination.i1(tmp$ret$0);
        }
        tmp = destination;
      }
      return compactArray(tmp);
    };
  }
  function PluginGeneratedSerialDescriptor$_hashCode$delegate$lambda(this$0) {
    return function () {
      return hashCodeImpl(this$0, this$0.x4l());
    };
  }
  function PluginGeneratedSerialDescriptor$toString$lambda(this$0) {
    return function (i) {
      return this$0.r4c(i) + ': ' + this$0.p4c(i).v4b();
    };
  }
  function PluginGeneratedSerialDescriptor(serialName, generatedSerializer, elementsCount) {
    generatedSerializer = generatedSerializer === VOID ? null : generatedSerializer;
    this.v4k_1 = serialName;
    this.w4k_1 = generatedSerializer;
    this.x4k_1 = elementsCount;
    this.y4k_1 = -1;
    var tmp = this;
    var tmp_0 = 0;
    var tmp_1 = this.x4k_1;
    // Inline function 'kotlin.arrayOfNulls' call
    var tmp_2 = fillArrayVal(Array(tmp_1), null);
    while (tmp_0 < tmp_1) {
      tmp_2[tmp_0] = '[UNINITIALIZED]';
      tmp_0 = tmp_0 + 1 | 0;
    }
    tmp.z4k_1 = tmp_2;
    var tmp_3 = this;
    // Inline function 'kotlin.arrayOfNulls' call
    var size = this.x4k_1;
    tmp_3.a4l_1 = fillArrayVal(Array(size), null);
    this.b4l_1 = null;
    this.c4l_1 = booleanArray(this.x4k_1);
    this.d4l_1 = emptyMap();
    var tmp_4 = this;
    var tmp_5 = LazyThreadSafetyMode_PUBLICATION_getInstance();
    tmp_4.e4l_1 = lazy(tmp_5, PluginGeneratedSerialDescriptor$childSerializers$delegate$lambda(this));
    var tmp_6 = this;
    var tmp_7 = LazyThreadSafetyMode_PUBLICATION_getInstance();
    tmp_6.f4l_1 = lazy(tmp_7, PluginGeneratedSerialDescriptor$typeParameterDescriptors$delegate$lambda(this));
    var tmp_8 = this;
    var tmp_9 = LazyThreadSafetyMode_PUBLICATION_getInstance();
    tmp_8.g4l_1 = lazy(tmp_9, PluginGeneratedSerialDescriptor$_hashCode$delegate$lambda(this));
  }
  protoOf(PluginGeneratedSerialDescriptor).v4b = function () {
    return this.v4k_1;
  };
  protoOf(PluginGeneratedSerialDescriptor).l4c = function () {
    return this.x4k_1;
  };
  protoOf(PluginGeneratedSerialDescriptor).n4c = function () {
    return CLASS_getInstance();
  };
  protoOf(PluginGeneratedSerialDescriptor).k4c = function () {
    var tmp0_elvis_lhs = this.b4l_1;
    return tmp0_elvis_lhs == null ? emptyList() : tmp0_elvis_lhs;
  };
  protoOf(PluginGeneratedSerialDescriptor).u4d = function () {
    return this.d4l_1.o2();
  };
  protoOf(PluginGeneratedSerialDescriptor).x4l = function () {
    // Inline function 'kotlin.getValue' call
    var this_0 = this.f4l_1;
    typeParameterDescriptors$factory();
    return this_0.t2();
  };
  protoOf(PluginGeneratedSerialDescriptor).y4l = function (name, isOptional) {
    this.y4k_1 = this.y4k_1 + 1 | 0;
    this.z4k_1[this.y4k_1] = name;
    this.c4l_1[this.y4k_1] = isOptional;
    this.a4l_1[this.y4k_1] = null;
    if (this.y4k_1 === (this.x4k_1 - 1 | 0)) {
      this.d4l_1 = buildIndices(this);
    }
  };
  protoOf(PluginGeneratedSerialDescriptor).h4l = function (name, isOptional, $super) {
    isOptional = isOptional === VOID ? false : isOptional;
    var tmp;
    if ($super === VOID) {
      this.y4l(name, isOptional);
      tmp = Unit_instance;
    } else {
      tmp = $super.y4l.call(this, name, isOptional);
    }
    return tmp;
  };
  protoOf(PluginGeneratedSerialDescriptor).z4l = function (annotation) {
    // Inline function 'kotlin.let' call
    // Inline function 'kotlin.contracts.contract' call
    // Inline function 'kotlinx.serialization.internal.PluginGeneratedSerialDescriptor.pushAnnotation.<anonymous>' call
    var it = this.a4l_1[this.y4k_1];
    var tmp;
    if (it == null) {
      var result = ArrayList_init_$Create$(1);
      this.a4l_1[this.y4k_1] = result;
      tmp = result;
    } else {
      tmp = it;
    }
    var list = tmp;
    list.i1(annotation);
  };
  protoOf(PluginGeneratedSerialDescriptor).a4m = function (a) {
    if (this.b4l_1 == null) {
      this.b4l_1 = ArrayList_init_$Create$(1);
    }
    ensureNotNull(this.b4l_1).i1(a);
  };
  protoOf(PluginGeneratedSerialDescriptor).p4c = function (index) {
    return getChecked(_get_childSerializers__7vnyfa(this), index).v4a();
  };
  protoOf(PluginGeneratedSerialDescriptor).s4c = function (index) {
    return getChecked_0(this.c4l_1, index);
  };
  protoOf(PluginGeneratedSerialDescriptor).o4c = function (index) {
    var tmp0_elvis_lhs = getChecked(this.a4l_1, index);
    return tmp0_elvis_lhs == null ? emptyList() : tmp0_elvis_lhs;
  };
  protoOf(PluginGeneratedSerialDescriptor).r4c = function (index) {
    return getChecked(this.z4k_1, index);
  };
  protoOf(PluginGeneratedSerialDescriptor).q4c = function (name) {
    var tmp0_elvis_lhs = this.d4l_1.q(name);
    var tmp;
    if (tmp0_elvis_lhs == null) {
      tmp = -3;
    } else {
      tmp = tmp0_elvis_lhs;
    }
    return tmp;
  };
  protoOf(PluginGeneratedSerialDescriptor).equals = function (other) {
    var tmp$ret$0;
    $l$block_5: {
      // Inline function 'kotlinx.serialization.internal.equalsImpl' call
      if (this === other) {
        tmp$ret$0 = true;
        break $l$block_5;
      }
      if (!(other instanceof PluginGeneratedSerialDescriptor)) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      if (!(this.v4b() === other.v4b())) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      // Inline function 'kotlinx.serialization.internal.PluginGeneratedSerialDescriptor.equals.<anonymous>' call
      if (!contentEquals(this.x4l(), other.x4l())) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      if (!(this.l4c() === other.l4c())) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      var inductionVariable = 0;
      var last = this.l4c();
      if (inductionVariable < last)
        do {
          var index = inductionVariable;
          inductionVariable = inductionVariable + 1 | 0;
          if (!(this.p4c(index).v4b() === other.p4c(index).v4b())) {
            tmp$ret$0 = false;
            break $l$block_5;
          }
          if (!equals(this.p4c(index).n4c(), other.p4c(index).n4c())) {
            tmp$ret$0 = false;
            break $l$block_5;
          }
        }
         while (inductionVariable < last);
      tmp$ret$0 = true;
    }
    return tmp$ret$0;
  };
  protoOf(PluginGeneratedSerialDescriptor).hashCode = function () {
    return _get__hashCode__tgwhef_0(this);
  };
  protoOf(PluginGeneratedSerialDescriptor).toString = function () {
    var tmp = until(0, this.x4k_1);
    var tmp_0 = this.v4b() + '(';
    return joinToString(tmp, ', ', tmp_0, ')', VOID, VOID, PluginGeneratedSerialDescriptor$toString$lambda(this));
  };
  function hashCodeImpl(_this__u8e3s4, typeParams) {
    var result = getStringHashCode(_this__u8e3s4.v4b());
    result = imul(31, result) + contentHashCode(typeParams) | 0;
    var elementDescriptors = get_elementDescriptors(_this__u8e3s4);
    // Inline function 'kotlinx.serialization.internal.elementsHashCodeBy' call
    // Inline function 'kotlin.collections.fold' call
    var accumulator = 1;
    var tmp0_iterator = elementDescriptors.w();
    while (tmp0_iterator.f()) {
      var element = tmp0_iterator.e();
      // Inline function 'kotlinx.serialization.internal.elementsHashCodeBy.<anonymous>' call
      var hash = accumulator;
      var tmp = imul(31, hash);
      // Inline function 'kotlin.hashCode' call
      // Inline function 'kotlinx.serialization.internal.hashCodeImpl.<anonymous>' call
      var tmp0_safe_receiver = element.v4b();
      var tmp1_elvis_lhs = tmp0_safe_receiver == null ? null : hashCode(tmp0_safe_receiver);
      accumulator = tmp + (tmp1_elvis_lhs == null ? 0 : tmp1_elvis_lhs) | 0;
    }
    var namesHash = accumulator;
    // Inline function 'kotlinx.serialization.internal.elementsHashCodeBy' call
    // Inline function 'kotlin.collections.fold' call
    var accumulator_0 = 1;
    var tmp0_iterator_0 = elementDescriptors.w();
    while (tmp0_iterator_0.f()) {
      var element_0 = tmp0_iterator_0.e();
      // Inline function 'kotlinx.serialization.internal.elementsHashCodeBy.<anonymous>' call
      var hash_0 = accumulator_0;
      var tmp_0 = imul(31, hash_0);
      // Inline function 'kotlin.hashCode' call
      // Inline function 'kotlinx.serialization.internal.hashCodeImpl.<anonymous>' call
      var tmp0_safe_receiver_0 = element_0.n4c();
      var tmp1_elvis_lhs_0 = tmp0_safe_receiver_0 == null ? null : hashCode(tmp0_safe_receiver_0);
      accumulator_0 = tmp_0 + (tmp1_elvis_lhs_0 == null ? 0 : tmp1_elvis_lhs_0) | 0;
    }
    var kindHash = accumulator_0;
    result = imul(31, result) + namesHash | 0;
    result = imul(31, result) + kindHash | 0;
    return result;
  }
  function childSerializers$factory() {
    return getPropertyCallableRef('childSerializers', 1, KProperty1, function (receiver) {
      return _get_childSerializers__7vnyfa(receiver);
    }, null);
  }
  function typeParameterDescriptors$factory() {
    return getPropertyCallableRef('typeParameterDescriptors', 1, KProperty1, function (receiver) {
      return receiver.x4l();
    }, null);
  }
  function _hashCode$factory_0() {
    return getPropertyCallableRef('_hashCode', 1, KProperty1, function (receiver) {
      return _get__hashCode__tgwhef_0(receiver);
    }, null);
  }
  function get_EMPTY_SERIALIZER_ARRAY() {
    _init_properties_PluginHelperInterfaces_kt__xgvzfp();
    return EMPTY_SERIALIZER_ARRAY;
  }
  var EMPTY_SERIALIZER_ARRAY;
  function SerializerFactory() {
  }
  function GeneratedSerializer() {
  }
  var properties_initialized_PluginHelperInterfaces_kt_ap8in1;
  function _init_properties_PluginHelperInterfaces_kt__xgvzfp() {
    if (!properties_initialized_PluginHelperInterfaces_kt_ap8in1) {
      properties_initialized_PluginHelperInterfaces_kt_ap8in1 = true;
      // Inline function 'kotlin.arrayOf' call
      // Inline function 'kotlin.js.unsafeCast' call
      // Inline function 'kotlin.js.asDynamic' call
      EMPTY_SERIALIZER_ARRAY = [];
    }
  }
  function CharArraySerializer_0() {
    CharArraySerializer_instance = this;
    PrimitiveArraySerializer.call(this, serializer_3(Companion_getInstance_1()));
  }
  protoOf(CharArraySerializer_0).d4n = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(CharArraySerializer_0).x4i = function (_this__u8e3s4) {
    return this.d4n((!(_this__u8e3s4 == null) ? isCharArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(CharArraySerializer_0).e4n = function (_this__u8e3s4) {
    return new CharArrayBuilder(_this__u8e3s4);
  };
  protoOf(CharArraySerializer_0).s4h = function (_this__u8e3s4) {
    return this.e4n((!(_this__u8e3s4 == null) ? isCharArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(CharArraySerializer_0).g4k = function () {
    return charArray(0);
  };
  protoOf(CharArraySerializer_0).f4n = function (decoder, index, builder, checkIndex) {
    builder.i4n(decoder.w4e(this.z4j_1, index));
  };
  protoOf(CharArraySerializer_0).d4i = function (decoder, index, builder, checkIndex) {
    return this.f4n(decoder, index, builder instanceof CharArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(CharArraySerializer_0).h4k = function (decoder, index, builder, checkIndex) {
    return this.f4n(decoder, index, builder instanceof CharArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(CharArraySerializer_0).j4n = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        encoder.a4g(this.z4j_1, i, content[i]);
      }
       while (inductionVariable < size);
  };
  protoOf(CharArraySerializer_0).i4k = function (encoder, content, size) {
    return this.j4n(encoder, (!(content == null) ? isCharArray(content) : false) ? content : THROW_CCE(), size);
  };
  var CharArraySerializer_instance;
  function CharArraySerializer_getInstance() {
    if (CharArraySerializer_instance == null)
      new CharArraySerializer_0();
    return CharArraySerializer_instance;
  }
  function DoubleArraySerializer_0() {
    DoubleArraySerializer_instance = this;
    PrimitiveArraySerializer.call(this, serializer_4(DoubleCompanionObject_instance));
  }
  protoOf(DoubleArraySerializer_0).m4n = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(DoubleArraySerializer_0).x4i = function (_this__u8e3s4) {
    return this.m4n((!(_this__u8e3s4 == null) ? isDoubleArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(DoubleArraySerializer_0).n4n = function (_this__u8e3s4) {
    return new DoubleArrayBuilder(_this__u8e3s4);
  };
  protoOf(DoubleArraySerializer_0).s4h = function (_this__u8e3s4) {
    return this.n4n((!(_this__u8e3s4 == null) ? isDoubleArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(DoubleArraySerializer_0).g4k = function () {
    return new Float64Array(0);
  };
  protoOf(DoubleArraySerializer_0).o4n = function (decoder, index, builder, checkIndex) {
    builder.r4n(decoder.v4e(this.z4j_1, index));
  };
  protoOf(DoubleArraySerializer_0).d4i = function (decoder, index, builder, checkIndex) {
    return this.o4n(decoder, index, builder instanceof DoubleArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(DoubleArraySerializer_0).h4k = function (decoder, index, builder, checkIndex) {
    return this.o4n(decoder, index, builder instanceof DoubleArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(DoubleArraySerializer_0).s4n = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        encoder.z4f(this.z4j_1, i, content[i]);
      }
       while (inductionVariable < size);
  };
  protoOf(DoubleArraySerializer_0).i4k = function (encoder, content, size) {
    return this.s4n(encoder, (!(content == null) ? isDoubleArray(content) : false) ? content : THROW_CCE(), size);
  };
  var DoubleArraySerializer_instance;
  function DoubleArraySerializer_getInstance() {
    if (DoubleArraySerializer_instance == null)
      new DoubleArraySerializer_0();
    return DoubleArraySerializer_instance;
  }
  function FloatArraySerializer_0() {
    FloatArraySerializer_instance = this;
    PrimitiveArraySerializer.call(this, serializer_5(FloatCompanionObject_instance));
  }
  protoOf(FloatArraySerializer_0).v4n = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(FloatArraySerializer_0).x4i = function (_this__u8e3s4) {
    return this.v4n((!(_this__u8e3s4 == null) ? isFloatArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(FloatArraySerializer_0).w4n = function (_this__u8e3s4) {
    return new FloatArrayBuilder(_this__u8e3s4);
  };
  protoOf(FloatArraySerializer_0).s4h = function (_this__u8e3s4) {
    return this.w4n((!(_this__u8e3s4 == null) ? isFloatArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(FloatArraySerializer_0).g4k = function () {
    return new Float32Array(0);
  };
  protoOf(FloatArraySerializer_0).x4n = function (decoder, index, builder, checkIndex) {
    builder.a4o(decoder.u4e(this.z4j_1, index));
  };
  protoOf(FloatArraySerializer_0).d4i = function (decoder, index, builder, checkIndex) {
    return this.x4n(decoder, index, builder instanceof FloatArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(FloatArraySerializer_0).h4k = function (decoder, index, builder, checkIndex) {
    return this.x4n(decoder, index, builder instanceof FloatArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(FloatArraySerializer_0).b4o = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        encoder.y4f(this.z4j_1, i, content[i]);
      }
       while (inductionVariable < size);
  };
  protoOf(FloatArraySerializer_0).i4k = function (encoder, content, size) {
    return this.b4o(encoder, (!(content == null) ? isFloatArray(content) : false) ? content : THROW_CCE(), size);
  };
  var FloatArraySerializer_instance;
  function FloatArraySerializer_getInstance() {
    if (FloatArraySerializer_instance == null)
      new FloatArraySerializer_0();
    return FloatArraySerializer_instance;
  }
  function LongArraySerializer_0() {
    LongArraySerializer_instance = this;
    PrimitiveArraySerializer.call(this, serializer_6(Companion_getInstance_0()));
  }
  protoOf(LongArraySerializer_0).e4o = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(LongArraySerializer_0).x4i = function (_this__u8e3s4) {
    return this.e4o((!(_this__u8e3s4 == null) ? isLongArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LongArraySerializer_0).f4o = function (_this__u8e3s4) {
    return new LongArrayBuilder(_this__u8e3s4);
  };
  protoOf(LongArraySerializer_0).s4h = function (_this__u8e3s4) {
    return this.f4o((!(_this__u8e3s4 == null) ? isLongArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LongArraySerializer_0).g4k = function () {
    return longArray(0);
  };
  protoOf(LongArraySerializer_0).g4o = function (decoder, index, builder, checkIndex) {
    builder.j4o(decoder.t4e(this.z4j_1, index));
  };
  protoOf(LongArraySerializer_0).d4i = function (decoder, index, builder, checkIndex) {
    return this.g4o(decoder, index, builder instanceof LongArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(LongArraySerializer_0).h4k = function (decoder, index, builder, checkIndex) {
    return this.g4o(decoder, index, builder instanceof LongArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(LongArraySerializer_0).k4o = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        encoder.x4f(this.z4j_1, i, content[i]);
      }
       while (inductionVariable < size);
  };
  protoOf(LongArraySerializer_0).i4k = function (encoder, content, size) {
    return this.k4o(encoder, (!(content == null) ? isLongArray(content) : false) ? content : THROW_CCE(), size);
  };
  var LongArraySerializer_instance;
  function LongArraySerializer_getInstance() {
    if (LongArraySerializer_instance == null)
      new LongArraySerializer_0();
    return LongArraySerializer_instance;
  }
  function ULongArraySerializer_0() {
    ULongArraySerializer_instance = this;
    PrimitiveArraySerializer.call(this, serializer_7(Companion_getInstance_2()));
  }
  protoOf(ULongArraySerializer_0).n4o = function (_this__u8e3s4) {
    return _ULongArray___get_size__impl__ju6dtr(_this__u8e3s4);
  };
  protoOf(ULongArraySerializer_0).x4i = function (_this__u8e3s4) {
    return this.n4o(_this__u8e3s4 instanceof ULongArray ? _this__u8e3s4.ap_1 : THROW_CCE());
  };
  protoOf(ULongArraySerializer_0).o4o = function (_this__u8e3s4) {
    return new ULongArrayBuilder(_this__u8e3s4);
  };
  protoOf(ULongArraySerializer_0).s4h = function (_this__u8e3s4) {
    return this.o4o(_this__u8e3s4 instanceof ULongArray ? _this__u8e3s4.ap_1 : THROW_CCE());
  };
  protoOf(ULongArraySerializer_0).p4o = function () {
    return _ULongArray___init__impl__twm1l3(0);
  };
  protoOf(ULongArraySerializer_0).g4k = function () {
    return new ULongArray(this.p4o());
  };
  protoOf(ULongArraySerializer_0).q4o = function (decoder, index, builder, checkIndex) {
    // Inline function 'kotlin.toULong' call
    var this_0 = decoder.y4e(this.z4j_1, index).e4e();
    var tmp$ret$0 = _ULong___init__impl__c78o9k(this_0);
    builder.t4o(tmp$ret$0);
  };
  protoOf(ULongArraySerializer_0).d4i = function (decoder, index, builder, checkIndex) {
    return this.q4o(decoder, index, builder instanceof ULongArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(ULongArraySerializer_0).h4k = function (decoder, index, builder, checkIndex) {
    return this.q4o(decoder, index, builder instanceof ULongArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(ULongArraySerializer_0).u4o = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        var tmp = encoder.c4g(this.z4j_1, i);
        // Inline function 'kotlin.ULong.toLong' call
        var this_0 = ULongArray__get_impl_pr71q9(content, i);
        var tmp$ret$0 = _ULong___get_data__impl__fggpzb(this_0);
        tmp.m4f(tmp$ret$0);
      }
       while (inductionVariable < size);
  };
  protoOf(ULongArraySerializer_0).i4k = function (encoder, content, size) {
    return this.u4o(encoder, content instanceof ULongArray ? content.ap_1 : THROW_CCE(), size);
  };
  var ULongArraySerializer_instance;
  function ULongArraySerializer_getInstance() {
    if (ULongArraySerializer_instance == null)
      new ULongArraySerializer_0();
    return ULongArraySerializer_instance;
  }
  function IntArraySerializer_0() {
    IntArraySerializer_instance = this;
    PrimitiveArraySerializer.call(this, serializer_8(IntCompanionObject_instance));
  }
  protoOf(IntArraySerializer_0).x4o = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(IntArraySerializer_0).x4i = function (_this__u8e3s4) {
    return this.x4o((!(_this__u8e3s4 == null) ? isIntArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(IntArraySerializer_0).y4o = function (_this__u8e3s4) {
    return new IntArrayBuilder(_this__u8e3s4);
  };
  protoOf(IntArraySerializer_0).s4h = function (_this__u8e3s4) {
    return this.y4o((!(_this__u8e3s4 == null) ? isIntArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(IntArraySerializer_0).g4k = function () {
    return new Int32Array(0);
  };
  protoOf(IntArraySerializer_0).z4o = function (decoder, index, builder, checkIndex) {
    builder.c4p(decoder.s4e(this.z4j_1, index));
  };
  protoOf(IntArraySerializer_0).d4i = function (decoder, index, builder, checkIndex) {
    return this.z4o(decoder, index, builder instanceof IntArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(IntArraySerializer_0).h4k = function (decoder, index, builder, checkIndex) {
    return this.z4o(decoder, index, builder instanceof IntArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(IntArraySerializer_0).d4p = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        encoder.w4f(this.z4j_1, i, content[i]);
      }
       while (inductionVariable < size);
  };
  protoOf(IntArraySerializer_0).i4k = function (encoder, content, size) {
    return this.d4p(encoder, (!(content == null) ? isIntArray(content) : false) ? content : THROW_CCE(), size);
  };
  var IntArraySerializer_instance;
  function IntArraySerializer_getInstance() {
    if (IntArraySerializer_instance == null)
      new IntArraySerializer_0();
    return IntArraySerializer_instance;
  }
  function UIntArraySerializer_0() {
    UIntArraySerializer_instance = this;
    PrimitiveArraySerializer.call(this, serializer_9(Companion_getInstance_3()));
  }
  protoOf(UIntArraySerializer_0).g4p = function (_this__u8e3s4) {
    return _UIntArray___get_size__impl__r6l8ci(_this__u8e3s4);
  };
  protoOf(UIntArraySerializer_0).x4i = function (_this__u8e3s4) {
    return this.g4p(_this__u8e3s4 instanceof UIntArray ? _this__u8e3s4.bo_1 : THROW_CCE());
  };
  protoOf(UIntArraySerializer_0).h4p = function (_this__u8e3s4) {
    return new UIntArrayBuilder(_this__u8e3s4);
  };
  protoOf(UIntArraySerializer_0).s4h = function (_this__u8e3s4) {
    return this.h4p(_this__u8e3s4 instanceof UIntArray ? _this__u8e3s4.bo_1 : THROW_CCE());
  };
  protoOf(UIntArraySerializer_0).i4p = function () {
    return _UIntArray___init__impl__ghjpc6(0);
  };
  protoOf(UIntArraySerializer_0).g4k = function () {
    return new UIntArray(this.i4p());
  };
  protoOf(UIntArraySerializer_0).j4p = function (decoder, index, builder, checkIndex) {
    // Inline function 'kotlin.toUInt' call
    var this_0 = decoder.y4e(this.z4j_1, index).d4e();
    var tmp$ret$0 = _UInt___init__impl__l7qpdl(this_0);
    builder.m4p(tmp$ret$0);
  };
  protoOf(UIntArraySerializer_0).d4i = function (decoder, index, builder, checkIndex) {
    return this.j4p(decoder, index, builder instanceof UIntArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(UIntArraySerializer_0).h4k = function (decoder, index, builder, checkIndex) {
    return this.j4p(decoder, index, builder instanceof UIntArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(UIntArraySerializer_0).n4p = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        var tmp = encoder.c4g(this.z4j_1, i);
        // Inline function 'kotlin.UInt.toInt' call
        var this_0 = UIntArray__get_impl_gp5kza(content, i);
        var tmp$ret$0 = _UInt___get_data__impl__f0vqqw(this_0);
        tmp.l4f(tmp$ret$0);
      }
       while (inductionVariable < size);
  };
  protoOf(UIntArraySerializer_0).i4k = function (encoder, content, size) {
    return this.n4p(encoder, content instanceof UIntArray ? content.bo_1 : THROW_CCE(), size);
  };
  var UIntArraySerializer_instance;
  function UIntArraySerializer_getInstance() {
    if (UIntArraySerializer_instance == null)
      new UIntArraySerializer_0();
    return UIntArraySerializer_instance;
  }
  function ShortArraySerializer_0() {
    ShortArraySerializer_instance = this;
    PrimitiveArraySerializer.call(this, serializer_10(ShortCompanionObject_instance));
  }
  protoOf(ShortArraySerializer_0).q4p = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(ShortArraySerializer_0).x4i = function (_this__u8e3s4) {
    return this.q4p((!(_this__u8e3s4 == null) ? isShortArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ShortArraySerializer_0).r4p = function (_this__u8e3s4) {
    return new ShortArrayBuilder(_this__u8e3s4);
  };
  protoOf(ShortArraySerializer_0).s4h = function (_this__u8e3s4) {
    return this.r4p((!(_this__u8e3s4 == null) ? isShortArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ShortArraySerializer_0).g4k = function () {
    return new Int16Array(0);
  };
  protoOf(ShortArraySerializer_0).s4p = function (decoder, index, builder, checkIndex) {
    builder.v4p(decoder.r4e(this.z4j_1, index));
  };
  protoOf(ShortArraySerializer_0).d4i = function (decoder, index, builder, checkIndex) {
    return this.s4p(decoder, index, builder instanceof ShortArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(ShortArraySerializer_0).h4k = function (decoder, index, builder, checkIndex) {
    return this.s4p(decoder, index, builder instanceof ShortArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(ShortArraySerializer_0).w4p = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        encoder.v4f(this.z4j_1, i, content[i]);
      }
       while (inductionVariable < size);
  };
  protoOf(ShortArraySerializer_0).i4k = function (encoder, content, size) {
    return this.w4p(encoder, (!(content == null) ? isShortArray(content) : false) ? content : THROW_CCE(), size);
  };
  var ShortArraySerializer_instance;
  function ShortArraySerializer_getInstance() {
    if (ShortArraySerializer_instance == null)
      new ShortArraySerializer_0();
    return ShortArraySerializer_instance;
  }
  function UShortArraySerializer_0() {
    UShortArraySerializer_instance = this;
    PrimitiveArraySerializer.call(this, serializer_11(Companion_getInstance_4()));
  }
  protoOf(UShortArraySerializer_0).z4p = function (_this__u8e3s4) {
    return _UShortArray___get_size__impl__jqto1b(_this__u8e3s4);
  };
  protoOf(UShortArraySerializer_0).x4i = function (_this__u8e3s4) {
    return this.z4p(_this__u8e3s4 instanceof UShortArray ? _this__u8e3s4.mp_1 : THROW_CCE());
  };
  protoOf(UShortArraySerializer_0).a4q = function (_this__u8e3s4) {
    return new UShortArrayBuilder(_this__u8e3s4);
  };
  protoOf(UShortArraySerializer_0).s4h = function (_this__u8e3s4) {
    return this.a4q(_this__u8e3s4 instanceof UShortArray ? _this__u8e3s4.mp_1 : THROW_CCE());
  };
  protoOf(UShortArraySerializer_0).b4q = function () {
    return _UShortArray___init__impl__9b26ef(0);
  };
  protoOf(UShortArraySerializer_0).g4k = function () {
    return new UShortArray(this.b4q());
  };
  protoOf(UShortArraySerializer_0).c4q = function (decoder, index, builder, checkIndex) {
    // Inline function 'kotlin.toUShort' call
    var this_0 = decoder.y4e(this.z4j_1, index).c4e();
    var tmp$ret$0 = _UShort___init__impl__jigrne(this_0);
    builder.f4q(tmp$ret$0);
  };
  protoOf(UShortArraySerializer_0).d4i = function (decoder, index, builder, checkIndex) {
    return this.c4q(decoder, index, builder instanceof UShortArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(UShortArraySerializer_0).h4k = function (decoder, index, builder, checkIndex) {
    return this.c4q(decoder, index, builder instanceof UShortArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(UShortArraySerializer_0).g4q = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        var tmp = encoder.c4g(this.z4j_1, i);
        // Inline function 'kotlin.UShort.toShort' call
        var this_0 = UShortArray__get_impl_fnbhmx(content, i);
        var tmp$ret$0 = _UShort___get_data__impl__g0245(this_0);
        tmp.k4f(tmp$ret$0);
      }
       while (inductionVariable < size);
  };
  protoOf(UShortArraySerializer_0).i4k = function (encoder, content, size) {
    return this.g4q(encoder, content instanceof UShortArray ? content.mp_1 : THROW_CCE(), size);
  };
  var UShortArraySerializer_instance;
  function UShortArraySerializer_getInstance() {
    if (UShortArraySerializer_instance == null)
      new UShortArraySerializer_0();
    return UShortArraySerializer_instance;
  }
  function ByteArraySerializer_0() {
    ByteArraySerializer_instance = this;
    PrimitiveArraySerializer.call(this, serializer_12(ByteCompanionObject_instance));
  }
  protoOf(ByteArraySerializer_0).j4q = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(ByteArraySerializer_0).x4i = function (_this__u8e3s4) {
    return this.j4q((!(_this__u8e3s4 == null) ? isByteArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ByteArraySerializer_0).k4q = function (_this__u8e3s4) {
    return new ByteArrayBuilder(_this__u8e3s4);
  };
  protoOf(ByteArraySerializer_0).s4h = function (_this__u8e3s4) {
    return this.k4q((!(_this__u8e3s4 == null) ? isByteArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ByteArraySerializer_0).g4k = function () {
    return new Int8Array(0);
  };
  protoOf(ByteArraySerializer_0).l4q = function (decoder, index, builder, checkIndex) {
    builder.o4q(decoder.q4e(this.z4j_1, index));
  };
  protoOf(ByteArraySerializer_0).d4i = function (decoder, index, builder, checkIndex) {
    return this.l4q(decoder, index, builder instanceof ByteArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(ByteArraySerializer_0).h4k = function (decoder, index, builder, checkIndex) {
    return this.l4q(decoder, index, builder instanceof ByteArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(ByteArraySerializer_0).p4q = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        encoder.u4f(this.z4j_1, i, content[i]);
      }
       while (inductionVariable < size);
  };
  protoOf(ByteArraySerializer_0).i4k = function (encoder, content, size) {
    return this.p4q(encoder, (!(content == null) ? isByteArray(content) : false) ? content : THROW_CCE(), size);
  };
  var ByteArraySerializer_instance;
  function ByteArraySerializer_getInstance() {
    if (ByteArraySerializer_instance == null)
      new ByteArraySerializer_0();
    return ByteArraySerializer_instance;
  }
  function UByteArraySerializer_0() {
    UByteArraySerializer_instance = this;
    PrimitiveArraySerializer.call(this, serializer_13(Companion_getInstance_5()));
  }
  protoOf(UByteArraySerializer_0).s4q = function (_this__u8e3s4) {
    return _UByteArray___get_size__impl__h6pkdv(_this__u8e3s4);
  };
  protoOf(UByteArraySerializer_0).x4i = function (_this__u8e3s4) {
    return this.s4q(_this__u8e3s4 instanceof UByteArray ? _this__u8e3s4.pn_1 : THROW_CCE());
  };
  protoOf(UByteArraySerializer_0).t4q = function (_this__u8e3s4) {
    return new UByteArrayBuilder(_this__u8e3s4);
  };
  protoOf(UByteArraySerializer_0).s4h = function (_this__u8e3s4) {
    return this.t4q(_this__u8e3s4 instanceof UByteArray ? _this__u8e3s4.pn_1 : THROW_CCE());
  };
  protoOf(UByteArraySerializer_0).u4q = function () {
    return _UByteArray___init__impl__ip4y9n(0);
  };
  protoOf(UByteArraySerializer_0).g4k = function () {
    return new UByteArray(this.u4q());
  };
  protoOf(UByteArraySerializer_0).v4q = function (decoder, index, builder, checkIndex) {
    // Inline function 'kotlin.toUByte' call
    var this_0 = decoder.y4e(this.z4j_1, index).b4e();
    var tmp$ret$0 = _UByte___init__impl__g9hnc4(this_0);
    builder.y4q(tmp$ret$0);
  };
  protoOf(UByteArraySerializer_0).d4i = function (decoder, index, builder, checkIndex) {
    return this.v4q(decoder, index, builder instanceof UByteArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(UByteArraySerializer_0).h4k = function (decoder, index, builder, checkIndex) {
    return this.v4q(decoder, index, builder instanceof UByteArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(UByteArraySerializer_0).z4q = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        var tmp = encoder.c4g(this.z4j_1, i);
        // Inline function 'kotlin.UByte.toByte' call
        var this_0 = UByteArray__get_impl_t5f3hv(content, i);
        var tmp$ret$0 = _UByte___get_data__impl__jof9qr(this_0);
        tmp.j4f(tmp$ret$0);
      }
       while (inductionVariable < size);
  };
  protoOf(UByteArraySerializer_0).i4k = function (encoder, content, size) {
    return this.z4q(encoder, content instanceof UByteArray ? content.pn_1 : THROW_CCE(), size);
  };
  var UByteArraySerializer_instance;
  function UByteArraySerializer_getInstance() {
    if (UByteArraySerializer_instance == null)
      new UByteArraySerializer_0();
    return UByteArraySerializer_instance;
  }
  function BooleanArraySerializer_0() {
    BooleanArraySerializer_instance = this;
    PrimitiveArraySerializer.call(this, serializer_14(BooleanCompanionObject_instance));
  }
  protoOf(BooleanArraySerializer_0).c4r = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(BooleanArraySerializer_0).x4i = function (_this__u8e3s4) {
    return this.c4r((!(_this__u8e3s4 == null) ? isBooleanArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(BooleanArraySerializer_0).d4r = function (_this__u8e3s4) {
    return new BooleanArrayBuilder(_this__u8e3s4);
  };
  protoOf(BooleanArraySerializer_0).s4h = function (_this__u8e3s4) {
    return this.d4r((!(_this__u8e3s4 == null) ? isBooleanArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(BooleanArraySerializer_0).g4k = function () {
    return booleanArray(0);
  };
  protoOf(BooleanArraySerializer_0).e4r = function (decoder, index, builder, checkIndex) {
    builder.h4r(decoder.p4e(this.z4j_1, index));
  };
  protoOf(BooleanArraySerializer_0).d4i = function (decoder, index, builder, checkIndex) {
    return this.e4r(decoder, index, builder instanceof BooleanArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(BooleanArraySerializer_0).h4k = function (decoder, index, builder, checkIndex) {
    return this.e4r(decoder, index, builder instanceof BooleanArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(BooleanArraySerializer_0).i4r = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        encoder.t4f(this.z4j_1, i, content[i]);
      }
       while (inductionVariable < size);
  };
  protoOf(BooleanArraySerializer_0).i4k = function (encoder, content, size) {
    return this.i4r(encoder, (!(content == null) ? isBooleanArray(content) : false) ? content : THROW_CCE(), size);
  };
  var BooleanArraySerializer_instance;
  function BooleanArraySerializer_getInstance() {
    if (BooleanArraySerializer_instance == null)
      new BooleanArraySerializer_0();
    return BooleanArraySerializer_instance;
  }
  function CharArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.g4n_1 = bufferWithData;
    this.h4n_1 = bufferWithData.length;
    this.g3(10);
  }
  protoOf(CharArrayBuilder).b4k = function () {
    return this.h4n_1;
  };
  protoOf(CharArrayBuilder).g3 = function (requiredCapacity) {
    if (this.g4n_1.length < requiredCapacity)
      this.g4n_1 = copyOf(this.g4n_1, coerceAtLeast(requiredCapacity, imul(this.g4n_1.length, 2)));
  };
  protoOf(CharArrayBuilder).i4n = function (c) {
    this.k4k();
    var tmp = this.g4n_1;
    var tmp1 = this.h4n_1;
    this.h4n_1 = tmp1 + 1 | 0;
    tmp[tmp1] = c;
  };
  protoOf(CharArrayBuilder).f3 = function () {
    return copyOf(this.g4n_1, this.h4n_1);
  };
  function DoubleArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.p4n_1 = bufferWithData;
    this.q4n_1 = bufferWithData.length;
    this.g3(10);
  }
  protoOf(DoubleArrayBuilder).b4k = function () {
    return this.q4n_1;
  };
  protoOf(DoubleArrayBuilder).g3 = function (requiredCapacity) {
    if (this.p4n_1.length < requiredCapacity)
      this.p4n_1 = copyOf_0(this.p4n_1, coerceAtLeast(requiredCapacity, imul(this.p4n_1.length, 2)));
  };
  protoOf(DoubleArrayBuilder).r4n = function (c) {
    this.k4k();
    var tmp = this.p4n_1;
    var tmp1 = this.q4n_1;
    this.q4n_1 = tmp1 + 1 | 0;
    tmp[tmp1] = c;
  };
  protoOf(DoubleArrayBuilder).f3 = function () {
    return copyOf_0(this.p4n_1, this.q4n_1);
  };
  function FloatArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.y4n_1 = bufferWithData;
    this.z4n_1 = bufferWithData.length;
    this.g3(10);
  }
  protoOf(FloatArrayBuilder).b4k = function () {
    return this.z4n_1;
  };
  protoOf(FloatArrayBuilder).g3 = function (requiredCapacity) {
    if (this.y4n_1.length < requiredCapacity)
      this.y4n_1 = copyOf_1(this.y4n_1, coerceAtLeast(requiredCapacity, imul(this.y4n_1.length, 2)));
  };
  protoOf(FloatArrayBuilder).a4o = function (c) {
    this.k4k();
    var tmp = this.y4n_1;
    var tmp1 = this.z4n_1;
    this.z4n_1 = tmp1 + 1 | 0;
    tmp[tmp1] = c;
  };
  protoOf(FloatArrayBuilder).f3 = function () {
    return copyOf_1(this.y4n_1, this.z4n_1);
  };
  function LongArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.h4o_1 = bufferWithData;
    this.i4o_1 = bufferWithData.length;
    this.g3(10);
  }
  protoOf(LongArrayBuilder).b4k = function () {
    return this.i4o_1;
  };
  protoOf(LongArrayBuilder).g3 = function (requiredCapacity) {
    if (this.h4o_1.length < requiredCapacity)
      this.h4o_1 = copyOf_2(this.h4o_1, coerceAtLeast(requiredCapacity, imul(this.h4o_1.length, 2)));
  };
  protoOf(LongArrayBuilder).j4o = function (c) {
    this.k4k();
    var tmp = this.h4o_1;
    var tmp1 = this.i4o_1;
    this.i4o_1 = tmp1 + 1 | 0;
    tmp[tmp1] = c;
  };
  protoOf(LongArrayBuilder).f3 = function () {
    return copyOf_2(this.h4o_1, this.i4o_1);
  };
  function ULongArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.r4o_1 = bufferWithData;
    this.s4o_1 = _ULongArray___get_size__impl__ju6dtr(bufferWithData);
    this.g3(10);
  }
  protoOf(ULongArrayBuilder).b4k = function () {
    return this.s4o_1;
  };
  protoOf(ULongArrayBuilder).g3 = function (requiredCapacity) {
    if (_ULongArray___get_size__impl__ju6dtr(this.r4o_1) < requiredCapacity) {
      var tmp = this;
      // Inline function 'kotlin.collections.copyOf' call
      var this_0 = this.r4o_1;
      var newSize = coerceAtLeast(requiredCapacity, imul(_ULongArray___get_size__impl__ju6dtr(this.r4o_1), 2));
      tmp.r4o_1 = _ULongArray___init__impl__twm1l3_0(copyOf_2(_ULongArray___get_storage__impl__28e64j(this_0), newSize));
    }
  };
  protoOf(ULongArrayBuilder).t4o = function (c) {
    this.k4k();
    var tmp = this.r4o_1;
    var tmp1 = this.s4o_1;
    this.s4o_1 = tmp1 + 1 | 0;
    ULongArray__set_impl_z19mvh(tmp, tmp1, c);
  };
  protoOf(ULongArrayBuilder).j4r = function () {
    // Inline function 'kotlin.collections.copyOf' call
    var this_0 = this.r4o_1;
    var newSize = this.s4o_1;
    return _ULongArray___init__impl__twm1l3_0(copyOf_2(_ULongArray___get_storage__impl__28e64j(this_0), newSize));
  };
  protoOf(ULongArrayBuilder).f3 = function () {
    return new ULongArray(this.j4r());
  };
  function IntArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.a4p_1 = bufferWithData;
    this.b4p_1 = bufferWithData.length;
    this.g3(10);
  }
  protoOf(IntArrayBuilder).b4k = function () {
    return this.b4p_1;
  };
  protoOf(IntArrayBuilder).g3 = function (requiredCapacity) {
    if (this.a4p_1.length < requiredCapacity)
      this.a4p_1 = copyOf_3(this.a4p_1, coerceAtLeast(requiredCapacity, imul(this.a4p_1.length, 2)));
  };
  protoOf(IntArrayBuilder).c4p = function (c) {
    this.k4k();
    var tmp = this.a4p_1;
    var tmp1 = this.b4p_1;
    this.b4p_1 = tmp1 + 1 | 0;
    tmp[tmp1] = c;
  };
  protoOf(IntArrayBuilder).f3 = function () {
    return copyOf_3(this.a4p_1, this.b4p_1);
  };
  function UIntArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.k4p_1 = bufferWithData;
    this.l4p_1 = _UIntArray___get_size__impl__r6l8ci(bufferWithData);
    this.g3(10);
  }
  protoOf(UIntArrayBuilder).b4k = function () {
    return this.l4p_1;
  };
  protoOf(UIntArrayBuilder).g3 = function (requiredCapacity) {
    if (_UIntArray___get_size__impl__r6l8ci(this.k4p_1) < requiredCapacity) {
      var tmp = this;
      // Inline function 'kotlin.collections.copyOf' call
      var this_0 = this.k4p_1;
      var newSize = coerceAtLeast(requiredCapacity, imul(_UIntArray___get_size__impl__r6l8ci(this.k4p_1), 2));
      tmp.k4p_1 = _UIntArray___init__impl__ghjpc6_0(copyOf_3(_UIntArray___get_storage__impl__92a0v0(this_0), newSize));
    }
  };
  protoOf(UIntArrayBuilder).m4p = function (c) {
    this.k4k();
    var tmp = this.k4p_1;
    var tmp1 = this.l4p_1;
    this.l4p_1 = tmp1 + 1 | 0;
    UIntArray__set_impl_7f2zu2(tmp, tmp1, c);
  };
  protoOf(UIntArrayBuilder).k4r = function () {
    // Inline function 'kotlin.collections.copyOf' call
    var this_0 = this.k4p_1;
    var newSize = this.l4p_1;
    return _UIntArray___init__impl__ghjpc6_0(copyOf_3(_UIntArray___get_storage__impl__92a0v0(this_0), newSize));
  };
  protoOf(UIntArrayBuilder).f3 = function () {
    return new UIntArray(this.k4r());
  };
  function ShortArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.t4p_1 = bufferWithData;
    this.u4p_1 = bufferWithData.length;
    this.g3(10);
  }
  protoOf(ShortArrayBuilder).b4k = function () {
    return this.u4p_1;
  };
  protoOf(ShortArrayBuilder).g3 = function (requiredCapacity) {
    if (this.t4p_1.length < requiredCapacity)
      this.t4p_1 = copyOf_4(this.t4p_1, coerceAtLeast(requiredCapacity, imul(this.t4p_1.length, 2)));
  };
  protoOf(ShortArrayBuilder).v4p = function (c) {
    this.k4k();
    var tmp = this.t4p_1;
    var tmp1 = this.u4p_1;
    this.u4p_1 = tmp1 + 1 | 0;
    tmp[tmp1] = c;
  };
  protoOf(ShortArrayBuilder).f3 = function () {
    return copyOf_4(this.t4p_1, this.u4p_1);
  };
  function UShortArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.d4q_1 = bufferWithData;
    this.e4q_1 = _UShortArray___get_size__impl__jqto1b(bufferWithData);
    this.g3(10);
  }
  protoOf(UShortArrayBuilder).b4k = function () {
    return this.e4q_1;
  };
  protoOf(UShortArrayBuilder).g3 = function (requiredCapacity) {
    if (_UShortArray___get_size__impl__jqto1b(this.d4q_1) < requiredCapacity) {
      var tmp = this;
      // Inline function 'kotlin.collections.copyOf' call
      var this_0 = this.d4q_1;
      var newSize = coerceAtLeast(requiredCapacity, imul(_UShortArray___get_size__impl__jqto1b(this.d4q_1), 2));
      tmp.d4q_1 = _UShortArray___init__impl__9b26ef_0(copyOf_4(_UShortArray___get_storage__impl__t2jpv5(this_0), newSize));
    }
  };
  protoOf(UShortArrayBuilder).f4q = function (c) {
    this.k4k();
    var tmp = this.d4q_1;
    var tmp1 = this.e4q_1;
    this.e4q_1 = tmp1 + 1 | 0;
    UShortArray__set_impl_6d8whp(tmp, tmp1, c);
  };
  protoOf(UShortArrayBuilder).l4r = function () {
    // Inline function 'kotlin.collections.copyOf' call
    var this_0 = this.d4q_1;
    var newSize = this.e4q_1;
    return _UShortArray___init__impl__9b26ef_0(copyOf_4(_UShortArray___get_storage__impl__t2jpv5(this_0), newSize));
  };
  protoOf(UShortArrayBuilder).f3 = function () {
    return new UShortArray(this.l4r());
  };
  function ByteArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.m4q_1 = bufferWithData;
    this.n4q_1 = bufferWithData.length;
    this.g3(10);
  }
  protoOf(ByteArrayBuilder).b4k = function () {
    return this.n4q_1;
  };
  protoOf(ByteArrayBuilder).g3 = function (requiredCapacity) {
    if (this.m4q_1.length < requiredCapacity)
      this.m4q_1 = copyOf_5(this.m4q_1, coerceAtLeast(requiredCapacity, imul(this.m4q_1.length, 2)));
  };
  protoOf(ByteArrayBuilder).o4q = function (c) {
    this.k4k();
    var tmp = this.m4q_1;
    var tmp1 = this.n4q_1;
    this.n4q_1 = tmp1 + 1 | 0;
    tmp[tmp1] = c;
  };
  protoOf(ByteArrayBuilder).f3 = function () {
    return copyOf_5(this.m4q_1, this.n4q_1);
  };
  function UByteArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.w4q_1 = bufferWithData;
    this.x4q_1 = _UByteArray___get_size__impl__h6pkdv(bufferWithData);
    this.g3(10);
  }
  protoOf(UByteArrayBuilder).b4k = function () {
    return this.x4q_1;
  };
  protoOf(UByteArrayBuilder).g3 = function (requiredCapacity) {
    if (_UByteArray___get_size__impl__h6pkdv(this.w4q_1) < requiredCapacity) {
      var tmp = this;
      // Inline function 'kotlin.collections.copyOf' call
      var this_0 = this.w4q_1;
      var newSize = coerceAtLeast(requiredCapacity, imul(_UByteArray___get_size__impl__h6pkdv(this.w4q_1), 2));
      tmp.w4q_1 = _UByteArray___init__impl__ip4y9n_0(copyOf_5(_UByteArray___get_storage__impl__d4kctt(this_0), newSize));
    }
  };
  protoOf(UByteArrayBuilder).y4q = function (c) {
    this.k4k();
    var tmp = this.w4q_1;
    var tmp1 = this.x4q_1;
    this.x4q_1 = tmp1 + 1 | 0;
    UByteArray__set_impl_jvcicn(tmp, tmp1, c);
  };
  protoOf(UByteArrayBuilder).m4r = function () {
    // Inline function 'kotlin.collections.copyOf' call
    var this_0 = this.w4q_1;
    var newSize = this.x4q_1;
    return _UByteArray___init__impl__ip4y9n_0(copyOf_5(_UByteArray___get_storage__impl__d4kctt(this_0), newSize));
  };
  protoOf(UByteArrayBuilder).f3 = function () {
    return new UByteArray(this.m4r());
  };
  function BooleanArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.f4r_1 = bufferWithData;
    this.g4r_1 = bufferWithData.length;
    this.g3(10);
  }
  protoOf(BooleanArrayBuilder).b4k = function () {
    return this.g4r_1;
  };
  protoOf(BooleanArrayBuilder).g3 = function (requiredCapacity) {
    if (this.f4r_1.length < requiredCapacity)
      this.f4r_1 = copyOf_6(this.f4r_1, coerceAtLeast(requiredCapacity, imul(this.f4r_1.length, 2)));
  };
  protoOf(BooleanArrayBuilder).h4r = function (c) {
    this.k4k();
    var tmp = this.f4r_1;
    var tmp1 = this.g4r_1;
    this.g4r_1 = tmp1 + 1 | 0;
    tmp[tmp1] = c;
  };
  protoOf(BooleanArrayBuilder).f3 = function () {
    return copyOf_6(this.f4r_1, this.g4r_1);
  };
  function get_BUILTIN_SERIALIZERS() {
    _init_properties_Primitives_kt__k0eto4();
    return BUILTIN_SERIALIZERS;
  }
  var BUILTIN_SERIALIZERS;
  function builtinSerializerOrNull(_this__u8e3s4) {
    _init_properties_Primitives_kt__k0eto4();
    var tmp = get_BUILTIN_SERIALIZERS().q(_this__u8e3s4);
    return (tmp == null ? true : isInterface(tmp, KSerializer)) ? tmp : THROW_CCE();
  }
  function StringSerializer() {
    StringSerializer_instance = this;
    this.n4r_1 = new PrimitiveSerialDescriptor_0('kotlin.String', STRING_getInstance());
  }
  protoOf(StringSerializer).v4a = function () {
    return this.n4r_1;
  };
  protoOf(StringSerializer).o4r = function (encoder, value) {
    return encoder.q4f(value);
  };
  protoOf(StringSerializer).w4a = function (encoder, value) {
    return this.o4r(encoder, (!(value == null) ? typeof value === 'string' : false) ? value : THROW_CCE());
  };
  protoOf(StringSerializer).x4a = function (decoder) {
    return decoder.i4e();
  };
  var StringSerializer_instance;
  function StringSerializer_getInstance() {
    if (StringSerializer_instance == null)
      new StringSerializer();
    return StringSerializer_instance;
  }
  function CharSerializer() {
    CharSerializer_instance = this;
    this.p4r_1 = new PrimitiveSerialDescriptor_0('kotlin.Char', CHAR_getInstance());
  }
  protoOf(CharSerializer).v4a = function () {
    return this.p4r_1;
  };
  protoOf(CharSerializer).q4r = function (encoder, value) {
    return encoder.p4f(value);
  };
  protoOf(CharSerializer).w4a = function (encoder, value) {
    return this.q4r(encoder, value instanceof Char ? value.rb_1 : THROW_CCE());
  };
  protoOf(CharSerializer).r4r = function (decoder) {
    return decoder.h4e();
  };
  protoOf(CharSerializer).x4a = function (decoder) {
    return new Char(this.r4r(decoder));
  };
  var CharSerializer_instance;
  function CharSerializer_getInstance() {
    if (CharSerializer_instance == null)
      new CharSerializer();
    return CharSerializer_instance;
  }
  function DoubleSerializer() {
    DoubleSerializer_instance = this;
    this.s4r_1 = new PrimitiveSerialDescriptor_0('kotlin.Double', DOUBLE_getInstance());
  }
  protoOf(DoubleSerializer).v4a = function () {
    return this.s4r_1;
  };
  protoOf(DoubleSerializer).t4r = function (encoder, value) {
    return encoder.o4f(value);
  };
  protoOf(DoubleSerializer).w4a = function (encoder, value) {
    return this.t4r(encoder, (!(value == null) ? typeof value === 'number' : false) ? value : THROW_CCE());
  };
  protoOf(DoubleSerializer).x4a = function (decoder) {
    return decoder.g4e();
  };
  var DoubleSerializer_instance;
  function DoubleSerializer_getInstance() {
    if (DoubleSerializer_instance == null)
      new DoubleSerializer();
    return DoubleSerializer_instance;
  }
  function FloatSerializer() {
    FloatSerializer_instance = this;
    this.u4r_1 = new PrimitiveSerialDescriptor_0('kotlin.Float', FLOAT_getInstance());
  }
  protoOf(FloatSerializer).v4a = function () {
    return this.u4r_1;
  };
  protoOf(FloatSerializer).v4r = function (encoder, value) {
    return encoder.n4f(value);
  };
  protoOf(FloatSerializer).w4a = function (encoder, value) {
    return this.v4r(encoder, (!(value == null) ? typeof value === 'number' : false) ? value : THROW_CCE());
  };
  protoOf(FloatSerializer).x4a = function (decoder) {
    return decoder.f4e();
  };
  var FloatSerializer_instance;
  function FloatSerializer_getInstance() {
    if (FloatSerializer_instance == null)
      new FloatSerializer();
    return FloatSerializer_instance;
  }
  function LongSerializer() {
    LongSerializer_instance = this;
    this.w4r_1 = new PrimitiveSerialDescriptor_0('kotlin.Long', LONG_getInstance());
  }
  protoOf(LongSerializer).v4a = function () {
    return this.w4r_1;
  };
  protoOf(LongSerializer).x4r = function (encoder, value) {
    return encoder.m4f(value);
  };
  protoOf(LongSerializer).w4a = function (encoder, value) {
    return this.x4r(encoder, value instanceof Long ? value : THROW_CCE());
  };
  protoOf(LongSerializer).x4a = function (decoder) {
    return decoder.e4e();
  };
  var LongSerializer_instance;
  function LongSerializer_getInstance() {
    if (LongSerializer_instance == null)
      new LongSerializer();
    return LongSerializer_instance;
  }
  function IntSerializer() {
    IntSerializer_instance = this;
    this.y4r_1 = new PrimitiveSerialDescriptor_0('kotlin.Int', INT_getInstance());
  }
  protoOf(IntSerializer).v4a = function () {
    return this.y4r_1;
  };
  protoOf(IntSerializer).z4r = function (encoder, value) {
    return encoder.l4f(value);
  };
  protoOf(IntSerializer).w4a = function (encoder, value) {
    return this.z4r(encoder, (!(value == null) ? typeof value === 'number' : false) ? value : THROW_CCE());
  };
  protoOf(IntSerializer).x4a = function (decoder) {
    return decoder.d4e();
  };
  var IntSerializer_instance;
  function IntSerializer_getInstance() {
    if (IntSerializer_instance == null)
      new IntSerializer();
    return IntSerializer_instance;
  }
  function ShortSerializer() {
    ShortSerializer_instance = this;
    this.a4s_1 = new PrimitiveSerialDescriptor_0('kotlin.Short', SHORT_getInstance());
  }
  protoOf(ShortSerializer).v4a = function () {
    return this.a4s_1;
  };
  protoOf(ShortSerializer).b4s = function (encoder, value) {
    return encoder.k4f(value);
  };
  protoOf(ShortSerializer).w4a = function (encoder, value) {
    return this.b4s(encoder, (!(value == null) ? typeof value === 'number' : false) ? value : THROW_CCE());
  };
  protoOf(ShortSerializer).x4a = function (decoder) {
    return decoder.c4e();
  };
  var ShortSerializer_instance;
  function ShortSerializer_getInstance() {
    if (ShortSerializer_instance == null)
      new ShortSerializer();
    return ShortSerializer_instance;
  }
  function ByteSerializer() {
    ByteSerializer_instance = this;
    this.c4s_1 = new PrimitiveSerialDescriptor_0('kotlin.Byte', BYTE_getInstance());
  }
  protoOf(ByteSerializer).v4a = function () {
    return this.c4s_1;
  };
  protoOf(ByteSerializer).d4s = function (encoder, value) {
    return encoder.j4f(value);
  };
  protoOf(ByteSerializer).w4a = function (encoder, value) {
    return this.d4s(encoder, (!(value == null) ? typeof value === 'number' : false) ? value : THROW_CCE());
  };
  protoOf(ByteSerializer).x4a = function (decoder) {
    return decoder.b4e();
  };
  var ByteSerializer_instance;
  function ByteSerializer_getInstance() {
    if (ByteSerializer_instance == null)
      new ByteSerializer();
    return ByteSerializer_instance;
  }
  function BooleanSerializer() {
    BooleanSerializer_instance = this;
    this.e4s_1 = new PrimitiveSerialDescriptor_0('kotlin.Boolean', BOOLEAN_getInstance());
  }
  protoOf(BooleanSerializer).v4a = function () {
    return this.e4s_1;
  };
  protoOf(BooleanSerializer).f4s = function (encoder, value) {
    return encoder.i4f(value);
  };
  protoOf(BooleanSerializer).w4a = function (encoder, value) {
    return this.f4s(encoder, (!(value == null) ? typeof value === 'boolean' : false) ? value : THROW_CCE());
  };
  protoOf(BooleanSerializer).x4a = function (decoder) {
    return decoder.a4e();
  };
  var BooleanSerializer_instance;
  function BooleanSerializer_getInstance() {
    if (BooleanSerializer_instance == null)
      new BooleanSerializer();
    return BooleanSerializer_instance;
  }
  function UnitSerializer() {
    UnitSerializer_instance = this;
    this.g4s_1 = new ObjectSerializer('kotlin.Unit', Unit_instance);
  }
  protoOf(UnitSerializer).v4a = function () {
    return this.g4s_1.v4a();
  };
  protoOf(UnitSerializer).h4s = function (decoder) {
    this.g4s_1.x4a(decoder);
  };
  protoOf(UnitSerializer).x4a = function (decoder) {
    this.h4s(decoder);
    return Unit_instance;
  };
  protoOf(UnitSerializer).i4s = function (encoder, value) {
    this.g4s_1.l4b(encoder, Unit_instance);
  };
  protoOf(UnitSerializer).w4a = function (encoder, value) {
    return this.i4s(encoder, value instanceof Unit ? value : THROW_CCE());
  };
  var UnitSerializer_instance;
  function UnitSerializer_getInstance() {
    if (UnitSerializer_instance == null)
      new UnitSerializer();
    return UnitSerializer_instance;
  }
  function error_0($this) {
    throw IllegalStateException_init_$Create$('Primitive descriptor does not have elements');
  }
  function PrimitiveSerialDescriptor_0(serialName, kind) {
    this.j4s_1 = serialName;
    this.k4s_1 = kind;
  }
  protoOf(PrimitiveSerialDescriptor_0).v4b = function () {
    return this.j4s_1;
  };
  protoOf(PrimitiveSerialDescriptor_0).n4c = function () {
    return this.k4s_1;
  };
  protoOf(PrimitiveSerialDescriptor_0).l4c = function () {
    return 0;
  };
  protoOf(PrimitiveSerialDescriptor_0).r4c = function (index) {
    error_0(this);
  };
  protoOf(PrimitiveSerialDescriptor_0).q4c = function (name) {
    error_0(this);
  };
  protoOf(PrimitiveSerialDescriptor_0).s4c = function (index) {
    error_0(this);
  };
  protoOf(PrimitiveSerialDescriptor_0).p4c = function (index) {
    error_0(this);
  };
  protoOf(PrimitiveSerialDescriptor_0).o4c = function (index) {
    error_0(this);
  };
  protoOf(PrimitiveSerialDescriptor_0).toString = function () {
    return 'PrimitiveDescriptor(' + this.j4s_1 + ')';
  };
  protoOf(PrimitiveSerialDescriptor_0).equals = function (other) {
    if (this === other)
      return true;
    if (!(other instanceof PrimitiveSerialDescriptor_0))
      return false;
    if (this.j4s_1 === other.j4s_1 ? equals(this.k4s_1, other.k4s_1) : false)
      return true;
    return false;
  };
  protoOf(PrimitiveSerialDescriptor_0).hashCode = function () {
    return getStringHashCode(this.j4s_1) + imul(31, this.k4s_1.hashCode()) | 0;
  };
  function PrimitiveDescriptorSafe(serialName, kind) {
    _init_properties_Primitives_kt__k0eto4();
    checkName(serialName);
    return new PrimitiveSerialDescriptor_0(serialName, kind);
  }
  function checkName(serialName) {
    _init_properties_Primitives_kt__k0eto4();
    var keys = get_BUILTIN_SERIALIZERS().o2();
    var tmp0_iterator = keys.w();
    while (tmp0_iterator.f()) {
      var primitive = tmp0_iterator.e();
      var simpleName = capitalize(ensureNotNull(primitive.f7()));
      var qualifiedName = 'kotlin.' + simpleName;
      if (equals_0(serialName, qualifiedName, true) ? true : equals_0(serialName, simpleName, true)) {
        throw IllegalArgumentException_init_$Create$(trimIndent('\n                The name of serial descriptor should uniquely identify associated serializer.\n                For serial name ' + serialName + ' there already exist ' + capitalize(simpleName) + 'Serializer.\n                Please refer to SerialDescriptor documentation for additional information.\n            '));
      }
    }
  }
  function capitalize(_this__u8e3s4) {
    _init_properties_Primitives_kt__k0eto4();
    // Inline function 'kotlin.text.replaceFirstChar' call
    var tmp;
    // Inline function 'kotlin.text.isNotEmpty' call
    if (charSequenceLength(_this__u8e3s4) > 0) {
      // Inline function 'kotlinx.serialization.internal.capitalize.<anonymous>' call
      var it = charSequenceGet(_this__u8e3s4, 0);
      var tmp$ret$1 = isLowerCase(it) ? titlecase(it) : toString_0(it);
      var tmp_0 = toString(tmp$ret$1);
      // Inline function 'kotlin.text.substring' call
      // Inline function 'kotlin.js.asDynamic' call
      tmp = tmp_0 + _this__u8e3s4.substring(1);
    } else {
      tmp = _this__u8e3s4;
    }
    return tmp;
  }
  var properties_initialized_Primitives_kt_6dpii6;
  function _init_properties_Primitives_kt__k0eto4() {
    if (!properties_initialized_Primitives_kt_6dpii6) {
      properties_initialized_Primitives_kt_6dpii6 = true;
      BUILTIN_SERIALIZERS = mapOf([to(PrimitiveClasses_getInstance().g8(), serializer_2(StringCompanionObject_instance)), to(getKClass(Char), serializer_3(Companion_getInstance_1())), to(PrimitiveClasses_getInstance().j8(), CharArraySerializer()), to(PrimitiveClasses_getInstance().e8(), serializer_4(DoubleCompanionObject_instance)), to(PrimitiveClasses_getInstance().p8(), DoubleArraySerializer()), to(PrimitiveClasses_getInstance().d8(), serializer_5(FloatCompanionObject_instance)), to(PrimitiveClasses_getInstance().o8(), FloatArraySerializer()), to(getKClass(Long), serializer_6(Companion_getInstance_0())), to(PrimitiveClasses_getInstance().n8(), LongArraySerializer()), to(getKClass(ULong), serializer_7(Companion_getInstance_2())), to(getKClass(ULongArray), ULongArraySerializer()), to(PrimitiveClasses_getInstance().c8(), serializer_8(IntCompanionObject_instance)), to(PrimitiveClasses_getInstance().m8(), IntArraySerializer()), to(getKClass(UInt), serializer_9(Companion_getInstance_3())), to(getKClass(UIntArray), UIntArraySerializer()), to(PrimitiveClasses_getInstance().b8(), serializer_10(ShortCompanionObject_instance)), to(PrimitiveClasses_getInstance().l8(), ShortArraySerializer()), to(getKClass(UShort), serializer_11(Companion_getInstance_4())), to(getKClass(UShortArray), UShortArraySerializer()), to(PrimitiveClasses_getInstance().a8(), serializer_12(ByteCompanionObject_instance)), to(PrimitiveClasses_getInstance().k8(), ByteArraySerializer()), to(getKClass(UByte), serializer_13(Companion_getInstance_5())), to(getKClass(UByteArray), UByteArraySerializer()), to(PrimitiveClasses_getInstance().z7(), serializer_14(BooleanCompanionObject_instance)), to(PrimitiveClasses_getInstance().i8(), BooleanArraySerializer()), to(getKClass(Unit), serializer_15(Unit_instance)), to(PrimitiveClasses_getInstance().y7(), NothingSerializer()), to(getKClass(Duration), serializer_16(Companion_getInstance()))]);
    }
  }
  function NamedValueDecoder() {
    TaggedDecoder.call(this);
  }
  protoOf(NamedValueDecoder).n4s = function (_this__u8e3s4, index) {
    return this.p4s(this.o4s(_this__u8e3s4, index));
  };
  protoOf(NamedValueDecoder).p4s = function (nestedName) {
    var tmp0_elvis_lhs = this.s4s();
    return this.t4s(tmp0_elvis_lhs == null ? '' : tmp0_elvis_lhs, nestedName);
  };
  protoOf(NamedValueDecoder).o4s = function (descriptor, index) {
    return descriptor.r4c(index);
  };
  protoOf(NamedValueDecoder).t4s = function (parentName, childName) {
    var tmp;
    // Inline function 'kotlin.text.isEmpty' call
    if (charSequenceLength(parentName) === 0) {
      tmp = childName;
    } else {
      tmp = parentName + '.' + childName;
    }
    return tmp;
  };
  function tagBlock($this, tag, block) {
    $this.h4t(tag);
    var r = block();
    if (!$this.r4s_1) {
      $this.i4t();
    }
    $this.r4s_1 = false;
    return r;
  }
  function TaggedDecoder$decodeSerializableElement$lambda(this$0, $deserializer, $previousValue) {
    return function () {
      return this$0.l4e($deserializer, $previousValue);
    };
  }
  function TaggedDecoder$decodeNullableSerializableElement$lambda(this$0, $deserializer, $previousValue) {
    return function () {
      // Inline function 'kotlinx.serialization.encoding.decodeIfNullable' call
      var this_0 = this$0;
      var isNullabilitySupported = $deserializer.v4a().g4c();
      var tmp;
      if (isNullabilitySupported ? true : this_0.y4d()) {
        // Inline function 'kotlinx.serialization.internal.TaggedDecoder.decodeNullableSerializableElement.<anonymous>.<anonymous>' call
        tmp = this$0.l4e($deserializer, $previousValue);
      } else {
        tmp = this_0.z4d();
      }
      return tmp;
    };
  }
  function TaggedDecoder() {
    var tmp = this;
    // Inline function 'kotlin.collections.arrayListOf' call
    tmp.q4s_1 = ArrayList_init_$Create$_0();
    this.r4s_1 = false;
  }
  protoOf(TaggedDecoder).y4b = function () {
    return EmptySerializersModule_0();
  };
  protoOf(TaggedDecoder).u4s = function (tag) {
    throw SerializationException_init_$Create$_0('' + getKClassFromExpression(this) + " can't retrieve untyped values");
  };
  protoOf(TaggedDecoder).v4s = function (tag) {
    return true;
  };
  protoOf(TaggedDecoder).w4s = function (tag) {
    var tmp = this.u4s(tag);
    return typeof tmp === 'boolean' ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).x4s = function (tag) {
    var tmp = this.u4s(tag);
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).y4s = function (tag) {
    var tmp = this.u4s(tag);
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).z4s = function (tag) {
    var tmp = this.u4s(tag);
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).a4t = function (tag) {
    var tmp = this.u4s(tag);
    return tmp instanceof Long ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).b4t = function (tag) {
    var tmp = this.u4s(tag);
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).c4t = function (tag) {
    var tmp = this.u4s(tag);
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).d4t = function (tag) {
    var tmp = this.u4s(tag);
    return tmp instanceof Char ? tmp.rb_1 : THROW_CCE();
  };
  protoOf(TaggedDecoder).e4t = function (tag) {
    var tmp = this.u4s(tag);
    return typeof tmp === 'string' ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).f4t = function (tag, enumDescriptor) {
    var tmp = this.u4s(tag);
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).g4t = function (tag, inlineDescriptor) {
    // Inline function 'kotlin.apply' call
    // Inline function 'kotlin.contracts.contract' call
    // Inline function 'kotlinx.serialization.internal.TaggedDecoder.decodeTaggedInline.<anonymous>' call
    this.h4t(tag);
    return this;
  };
  protoOf(TaggedDecoder).l4e = function (deserializer, previousValue) {
    return this.m4e(deserializer);
  };
  protoOf(TaggedDecoder).k4e = function (descriptor) {
    return this.g4t(this.i4t(), descriptor);
  };
  protoOf(TaggedDecoder).y4d = function () {
    var tmp0_elvis_lhs = this.s4s();
    var tmp;
    if (tmp0_elvis_lhs == null) {
      return false;
    } else {
      tmp = tmp0_elvis_lhs;
    }
    var currentTag = tmp;
    return this.v4s(currentTag);
  };
  protoOf(TaggedDecoder).z4d = function () {
    return null;
  };
  protoOf(TaggedDecoder).a4e = function () {
    return this.w4s(this.i4t());
  };
  protoOf(TaggedDecoder).b4e = function () {
    return this.x4s(this.i4t());
  };
  protoOf(TaggedDecoder).c4e = function () {
    return this.y4s(this.i4t());
  };
  protoOf(TaggedDecoder).d4e = function () {
    return this.z4s(this.i4t());
  };
  protoOf(TaggedDecoder).e4e = function () {
    return this.a4t(this.i4t());
  };
  protoOf(TaggedDecoder).f4e = function () {
    return this.b4t(this.i4t());
  };
  protoOf(TaggedDecoder).g4e = function () {
    return this.c4t(this.i4t());
  };
  protoOf(TaggedDecoder).h4e = function () {
    return this.d4t(this.i4t());
  };
  protoOf(TaggedDecoder).i4e = function () {
    return this.e4t(this.i4t());
  };
  protoOf(TaggedDecoder).j4e = function (enumDescriptor) {
    return this.f4t(this.i4t(), enumDescriptor);
  };
  protoOf(TaggedDecoder).n4e = function (descriptor) {
    return this;
  };
  protoOf(TaggedDecoder).o4e = function (descriptor) {
  };
  protoOf(TaggedDecoder).p4e = function (descriptor, index) {
    return this.w4s(this.n4s(descriptor, index));
  };
  protoOf(TaggedDecoder).q4e = function (descriptor, index) {
    return this.x4s(this.n4s(descriptor, index));
  };
  protoOf(TaggedDecoder).r4e = function (descriptor, index) {
    return this.y4s(this.n4s(descriptor, index));
  };
  protoOf(TaggedDecoder).s4e = function (descriptor, index) {
    return this.z4s(this.n4s(descriptor, index));
  };
  protoOf(TaggedDecoder).t4e = function (descriptor, index) {
    return this.a4t(this.n4s(descriptor, index));
  };
  protoOf(TaggedDecoder).u4e = function (descriptor, index) {
    return this.b4t(this.n4s(descriptor, index));
  };
  protoOf(TaggedDecoder).v4e = function (descriptor, index) {
    return this.c4t(this.n4s(descriptor, index));
  };
  protoOf(TaggedDecoder).w4e = function (descriptor, index) {
    return this.d4t(this.n4s(descriptor, index));
  };
  protoOf(TaggedDecoder).x4e = function (descriptor, index) {
    return this.e4t(this.n4s(descriptor, index));
  };
  protoOf(TaggedDecoder).y4e = function (descriptor, index) {
    return this.g4t(this.n4s(descriptor, index), descriptor.p4c(index));
  };
  protoOf(TaggedDecoder).z4e = function (descriptor, index, deserializer, previousValue) {
    var tmp = this.n4s(descriptor, index);
    return tagBlock(this, tmp, TaggedDecoder$decodeSerializableElement$lambda(this, deserializer, previousValue));
  };
  protoOf(TaggedDecoder).b4f = function (descriptor, index, deserializer, previousValue) {
    var tmp = this.n4s(descriptor, index);
    return tagBlock(this, tmp, TaggedDecoder$decodeNullableSerializableElement$lambda(this, deserializer, previousValue));
  };
  protoOf(TaggedDecoder).s4s = function () {
    return lastOrNull(this.q4s_1);
  };
  protoOf(TaggedDecoder).h4t = function (name) {
    this.q4s_1.i1(name);
  };
  protoOf(TaggedDecoder).i4t = function () {
    var r = this.q4s_1.s1(get_lastIndex_0(this.q4s_1));
    this.r4s_1 = true;
    return r;
  };
  function get_NULL() {
    _init_properties_Tuples_kt__dz0qyd();
    return NULL;
  }
  var NULL;
  function MapEntry(key, value) {
    this.j4t_1 = key;
    this.k4t_1 = value;
  }
  protoOf(MapEntry).s2 = function () {
    return this.j4t_1;
  };
  protoOf(MapEntry).t2 = function () {
    return this.k4t_1;
  };
  protoOf(MapEntry).toString = function () {
    return 'MapEntry(key=' + this.j4t_1 + ', value=' + this.k4t_1 + ')';
  };
  protoOf(MapEntry).hashCode = function () {
    var result = this.j4t_1 == null ? 0 : hashCode(this.j4t_1);
    result = imul(result, 31) + (this.k4t_1 == null ? 0 : hashCode(this.k4t_1)) | 0;
    return result;
  };
  protoOf(MapEntry).equals = function (other) {
    if (this === other)
      return true;
    if (!(other instanceof MapEntry))
      return false;
    var tmp0_other_with_cast = other instanceof MapEntry ? other : THROW_CCE();
    if (!equals(this.j4t_1, tmp0_other_with_cast.j4t_1))
      return false;
    if (!equals(this.k4t_1, tmp0_other_with_cast.k4t_1))
      return false;
    return true;
  };
  function MapEntrySerializer$descriptor$lambda($keySerializer, $valueSerializer) {
    return function ($this$buildSerialDescriptor) {
      $this$buildSerialDescriptor.g4b('key', $keySerializer.v4a());
      $this$buildSerialDescriptor.g4b('value', $valueSerializer.v4a());
      return Unit_instance;
    };
  }
  function MapEntrySerializer_0(keySerializer, valueSerializer) {
    KeyValueSerializer.call(this, keySerializer, valueSerializer);
    var tmp = this;
    var tmp_0 = MAP_getInstance();
    tmp.n4t_1 = buildSerialDescriptor('kotlin.collections.Map.Entry', tmp_0, [], MapEntrySerializer$descriptor$lambda(keySerializer, valueSerializer));
  }
  protoOf(MapEntrySerializer_0).v4a = function () {
    return this.n4t_1;
  };
  protoOf(MapEntrySerializer_0).o4t = function (_this__u8e3s4) {
    return _this__u8e3s4.s2();
  };
  protoOf(MapEntrySerializer_0).p4t = function (_this__u8e3s4) {
    return this.o4t((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Entry) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(MapEntrySerializer_0).q4t = function (_this__u8e3s4) {
    return _this__u8e3s4.t2();
  };
  protoOf(MapEntrySerializer_0).r4t = function (_this__u8e3s4) {
    return this.q4t((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Entry) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(MapEntrySerializer_0).s4t = function (key, value) {
    return new MapEntry(key, value);
  };
  function PairSerializer$descriptor$lambda($keySerializer, $valueSerializer) {
    return function ($this$buildClassSerialDescriptor) {
      $this$buildClassSerialDescriptor.g4b('first', $keySerializer.v4a());
      $this$buildClassSerialDescriptor.g4b('second', $valueSerializer.v4a());
      return Unit_instance;
    };
  }
  function PairSerializer_0(keySerializer, valueSerializer) {
    KeyValueSerializer.call(this, keySerializer, valueSerializer);
    var tmp = this;
    tmp.y4t_1 = buildClassSerialDescriptor('kotlin.Pair', [], PairSerializer$descriptor$lambda(keySerializer, valueSerializer));
  }
  protoOf(PairSerializer_0).v4a = function () {
    return this.y4t_1;
  };
  protoOf(PairSerializer_0).z4t = function (_this__u8e3s4) {
    return _this__u8e3s4.w6_1;
  };
  protoOf(PairSerializer_0).p4t = function (_this__u8e3s4) {
    return this.z4t(_this__u8e3s4 instanceof Pair ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(PairSerializer_0).a4u = function (_this__u8e3s4) {
    return _this__u8e3s4.x6_1;
  };
  protoOf(PairSerializer_0).r4t = function (_this__u8e3s4) {
    return this.a4u(_this__u8e3s4 instanceof Pair ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(PairSerializer_0).s4t = function (key, value) {
    return to(key, value);
  };
  function decodeSequentially_1($this, composite) {
    var a = composite.a4f($this.e4u_1, 0, $this.b4u_1);
    var b = composite.a4f($this.e4u_1, 1, $this.c4u_1);
    var c = composite.a4f($this.e4u_1, 2, $this.d4u_1);
    composite.o4e($this.e4u_1);
    return new Triple(a, b, c);
  }
  function decodeStructure($this, composite) {
    var a = get_NULL();
    var b = get_NULL();
    var c = get_NULL();
    mainLoop: while (true) {
      var index = composite.d4f($this.e4u_1);
      if (index === -1) {
        break mainLoop;
      } else {
        if (index === 0) {
          a = composite.a4f($this.e4u_1, 0, $this.b4u_1);
        } else {
          if (index === 1) {
            b = composite.a4f($this.e4u_1, 1, $this.c4u_1);
          } else {
            if (index === 2) {
              c = composite.a4f($this.e4u_1, 2, $this.d4u_1);
            } else {
              throw SerializationException_init_$Create$_0('Unexpected index ' + index);
            }
          }
        }
      }
    }
    composite.o4e($this.e4u_1);
    if (a === get_NULL())
      throw SerializationException_init_$Create$_0("Element 'first' is missing");
    if (b === get_NULL())
      throw SerializationException_init_$Create$_0("Element 'second' is missing");
    if (c === get_NULL())
      throw SerializationException_init_$Create$_0("Element 'third' is missing");
    var tmp = (a == null ? true : !(a == null)) ? a : THROW_CCE();
    var tmp_0 = (b == null ? true : !(b == null)) ? b : THROW_CCE();
    return new Triple(tmp, tmp_0, (c == null ? true : !(c == null)) ? c : THROW_CCE());
  }
  function TripleSerializer$descriptor$lambda(this$0) {
    return function ($this$buildClassSerialDescriptor) {
      $this$buildClassSerialDescriptor.g4b('first', this$0.b4u_1.v4a());
      $this$buildClassSerialDescriptor.g4b('second', this$0.c4u_1.v4a());
      $this$buildClassSerialDescriptor.g4b('third', this$0.d4u_1.v4a());
      return Unit_instance;
    };
  }
  function TripleSerializer_0(aSerializer, bSerializer, cSerializer) {
    this.b4u_1 = aSerializer;
    this.c4u_1 = bSerializer;
    this.d4u_1 = cSerializer;
    var tmp = this;
    tmp.e4u_1 = buildClassSerialDescriptor('kotlin.Triple', [], TripleSerializer$descriptor$lambda(this));
  }
  protoOf(TripleSerializer_0).v4a = function () {
    return this.e4u_1;
  };
  protoOf(TripleSerializer_0).f4u = function (encoder, value) {
    var structuredEncoder = encoder.n4e(this.e4u_1);
    structuredEncoder.d4g(this.e4u_1, 0, this.b4u_1, value.an_1);
    structuredEncoder.d4g(this.e4u_1, 1, this.c4u_1, value.bn_1);
    structuredEncoder.d4g(this.e4u_1, 2, this.d4u_1, value.cn_1);
    structuredEncoder.o4e(this.e4u_1);
  };
  protoOf(TripleSerializer_0).w4a = function (encoder, value) {
    return this.f4u(encoder, value instanceof Triple ? value : THROW_CCE());
  };
  protoOf(TripleSerializer_0).x4a = function (decoder) {
    var composite = decoder.n4e(this.e4u_1);
    if (composite.c4f()) {
      return decodeSequentially_1(this, composite);
    }
    return decodeStructure(this, composite);
  };
  function KeyValueSerializer(keySerializer, valueSerializer) {
    this.t4t_1 = keySerializer;
    this.u4t_1 = valueSerializer;
  }
  protoOf(KeyValueSerializer).v4t = function (encoder, value) {
    var structuredEncoder = encoder.n4e(this.v4a());
    structuredEncoder.d4g(this.v4a(), 0, this.t4t_1, this.p4t(value));
    structuredEncoder.d4g(this.v4a(), 1, this.u4t_1, this.r4t(value));
    structuredEncoder.o4e(this.v4a());
  };
  protoOf(KeyValueSerializer).w4a = function (encoder, value) {
    return this.v4t(encoder, (value == null ? true : !(value == null)) ? value : THROW_CCE());
  };
  protoOf(KeyValueSerializer).x4a = function (decoder) {
    // Inline function 'kotlinx.serialization.encoding.decodeStructure' call
    var descriptor = this.v4a();
    var composite = decoder.n4e(descriptor);
    var tmp$ret$0;
    $l$block: {
      // Inline function 'kotlinx.serialization.internal.KeyValueSerializer.deserialize.<anonymous>' call
      if (composite.c4f()) {
        var key = composite.a4f(this.v4a(), 0, this.t4t_1);
        var value = composite.a4f(this.v4a(), 1, this.u4t_1);
        tmp$ret$0 = this.s4t(key, value);
        break $l$block;
      }
      var key_0 = get_NULL();
      var value_0 = get_NULL();
      mainLoop: while (true) {
        var idx = composite.d4f(this.v4a());
        if (idx === -1) {
          break mainLoop;
        } else {
          if (idx === 0) {
            key_0 = composite.a4f(this.v4a(), 0, this.t4t_1);
          } else {
            if (idx === 1) {
              value_0 = composite.a4f(this.v4a(), 1, this.u4t_1);
            } else {
              throw SerializationException_init_$Create$_0('Invalid index: ' + idx);
            }
          }
        }
      }
      if (key_0 === get_NULL())
        throw SerializationException_init_$Create$_0("Element 'key' is missing");
      if (value_0 === get_NULL())
        throw SerializationException_init_$Create$_0("Element 'value' is missing");
      var tmp = (key_0 == null ? true : !(key_0 == null)) ? key_0 : THROW_CCE();
      tmp$ret$0 = this.s4t(tmp, (value_0 == null ? true : !(value_0 == null)) ? value_0 : THROW_CCE());
    }
    var result = tmp$ret$0;
    composite.o4e(descriptor);
    return result;
  };
  var properties_initialized_Tuples_kt_3vs7ar;
  function _init_properties_Tuples_kt__dz0qyd() {
    if (!properties_initialized_Tuples_kt_3vs7ar) {
      properties_initialized_Tuples_kt_3vs7ar = true;
      NULL = new Object();
    }
  }
  function ULongSerializer() {
    ULongSerializer_instance = this;
    this.g4u_1 = InlinePrimitiveDescriptor('kotlin.ULong', serializer_6(Companion_getInstance_0()));
  }
  protoOf(ULongSerializer).v4a = function () {
    return this.g4u_1;
  };
  protoOf(ULongSerializer).h4u = function (encoder, value) {
    var tmp = encoder.s4f(this.g4u_1);
    // Inline function 'kotlin.ULong.toLong' call
    var tmp$ret$0 = _ULong___get_data__impl__fggpzb(value);
    tmp.m4f(tmp$ret$0);
  };
  protoOf(ULongSerializer).w4a = function (encoder, value) {
    return this.h4u(encoder, value instanceof ULong ? value.vo_1 : THROW_CCE());
  };
  protoOf(ULongSerializer).i4u = function (decoder) {
    // Inline function 'kotlin.toULong' call
    var this_0 = decoder.k4e(this.g4u_1).e4e();
    return _ULong___init__impl__c78o9k(this_0);
  };
  protoOf(ULongSerializer).x4a = function (decoder) {
    return new ULong(this.i4u(decoder));
  };
  var ULongSerializer_instance;
  function ULongSerializer_getInstance() {
    if (ULongSerializer_instance == null)
      new ULongSerializer();
    return ULongSerializer_instance;
  }
  function UIntSerializer() {
    UIntSerializer_instance = this;
    this.j4u_1 = InlinePrimitiveDescriptor('kotlin.UInt', serializer_8(IntCompanionObject_instance));
  }
  protoOf(UIntSerializer).v4a = function () {
    return this.j4u_1;
  };
  protoOf(UIntSerializer).k4u = function (encoder, value) {
    var tmp = encoder.s4f(this.j4u_1);
    // Inline function 'kotlin.UInt.toInt' call
    var tmp$ret$0 = _UInt___get_data__impl__f0vqqw(value);
    tmp.l4f(tmp$ret$0);
  };
  protoOf(UIntSerializer).w4a = function (encoder, value) {
    return this.k4u(encoder, value instanceof UInt ? value.wn_1 : THROW_CCE());
  };
  protoOf(UIntSerializer).l4u = function (decoder) {
    // Inline function 'kotlin.toUInt' call
    var this_0 = decoder.k4e(this.j4u_1).d4e();
    return _UInt___init__impl__l7qpdl(this_0);
  };
  protoOf(UIntSerializer).x4a = function (decoder) {
    return new UInt(this.l4u(decoder));
  };
  var UIntSerializer_instance;
  function UIntSerializer_getInstance() {
    if (UIntSerializer_instance == null)
      new UIntSerializer();
    return UIntSerializer_instance;
  }
  function UShortSerializer() {
    UShortSerializer_instance = this;
    this.m4u_1 = InlinePrimitiveDescriptor('kotlin.UShort', serializer_10(ShortCompanionObject_instance));
  }
  protoOf(UShortSerializer).v4a = function () {
    return this.m4u_1;
  };
  protoOf(UShortSerializer).n4u = function (encoder, value) {
    var tmp = encoder.s4f(this.m4u_1);
    // Inline function 'kotlin.UShort.toShort' call
    var tmp$ret$0 = _UShort___get_data__impl__g0245(value);
    tmp.k4f(tmp$ret$0);
  };
  protoOf(UShortSerializer).w4a = function (encoder, value) {
    return this.n4u(encoder, value instanceof UShort ? value.hp_1 : THROW_CCE());
  };
  protoOf(UShortSerializer).o4u = function (decoder) {
    // Inline function 'kotlin.toUShort' call
    var this_0 = decoder.k4e(this.m4u_1).c4e();
    return _UShort___init__impl__jigrne(this_0);
  };
  protoOf(UShortSerializer).x4a = function (decoder) {
    return new UShort(this.o4u(decoder));
  };
  var UShortSerializer_instance;
  function UShortSerializer_getInstance() {
    if (UShortSerializer_instance == null)
      new UShortSerializer();
    return UShortSerializer_instance;
  }
  function UByteSerializer() {
    UByteSerializer_instance = this;
    this.p4u_1 = InlinePrimitiveDescriptor('kotlin.UByte', serializer_12(ByteCompanionObject_instance));
  }
  protoOf(UByteSerializer).v4a = function () {
    return this.p4u_1;
  };
  protoOf(UByteSerializer).q4u = function (encoder, value) {
    var tmp = encoder.s4f(this.p4u_1);
    // Inline function 'kotlin.UByte.toByte' call
    var tmp$ret$0 = _UByte___get_data__impl__jof9qr(value);
    tmp.j4f(tmp$ret$0);
  };
  protoOf(UByteSerializer).w4a = function (encoder, value) {
    return this.q4u(encoder, value instanceof UByte ? value.kn_1 : THROW_CCE());
  };
  protoOf(UByteSerializer).r4u = function (decoder) {
    // Inline function 'kotlin.toUByte' call
    var this_0 = decoder.k4e(this.p4u_1).b4e();
    return _UByte___init__impl__g9hnc4(this_0);
  };
  protoOf(UByteSerializer).x4a = function (decoder) {
    return new UByte(this.r4u(decoder));
  };
  var UByteSerializer_instance;
  function UByteSerializer_getInstance() {
    if (UByteSerializer_instance == null)
      new UByteSerializer();
    return UByteSerializer_instance;
  }
  function get_EmptySerializersModuleLegacyJs() {
    _init_properties_SerializersModule_kt__u78ha3();
    return EmptySerializersModule;
  }
  var EmptySerializersModule;
  function SerializersModule() {
  }
  protoOf(SerializersModule).d4c = function (kClass, typeArgumentsSerializers, $super) {
    typeArgumentsSerializers = typeArgumentsSerializers === VOID ? emptyList() : typeArgumentsSerializers;
    return $super === VOID ? this.c4c(kClass, typeArgumentsSerializers) : $super.c4c.call(this, kClass, typeArgumentsSerializers);
  };
  function SerialModuleImpl(class2ContextualFactory, polyBase2Serializers, polyBase2DefaultSerializerProvider, polyBase2NamedSerializers, polyBase2DefaultDeserializerProvider) {
    SerializersModule.call(this);
    this.w4c_1 = class2ContextualFactory;
    this.x4c_1 = polyBase2Serializers;
    this.y4c_1 = polyBase2DefaultSerializerProvider;
    this.z4c_1 = polyBase2NamedSerializers;
    this.a4d_1 = polyBase2DefaultDeserializerProvider;
  }
  protoOf(SerialModuleImpl).n4g = function (baseClass, value) {
    if (!baseClass.g7(value))
      return null;
    var tmp0_safe_receiver = this.x4c_1.q(baseClass);
    var tmp = tmp0_safe_receiver == null ? null : tmp0_safe_receiver.q(getKClassFromExpression(value));
    var registered = (!(tmp == null) ? isInterface(tmp, SerializationStrategy) : false) ? tmp : null;
    if (!(registered == null))
      return registered;
    var tmp_0 = this.y4c_1.q(baseClass);
    var tmp1_safe_receiver = (!(tmp_0 == null) ? typeof tmp_0 === 'function' : false) ? tmp_0 : null;
    return tmp1_safe_receiver == null ? null : tmp1_safe_receiver(value);
  };
  protoOf(SerialModuleImpl).m4g = function (baseClass, serializedClassName) {
    var tmp0_safe_receiver = this.z4c_1.q(baseClass);
    var tmp;
    if (tmp0_safe_receiver == null) {
      tmp = null;
    } else {
      // Inline function 'kotlin.collections.get' call
      tmp = (isInterface(tmp0_safe_receiver, Map) ? tmp0_safe_receiver : THROW_CCE()).q(serializedClassName);
    }
    var tmp_0 = tmp;
    var registered = (!(tmp_0 == null) ? isInterface(tmp_0, KSerializer) : false) ? tmp_0 : null;
    if (!(registered == null))
      return registered;
    var tmp_1 = this.a4d_1.q(baseClass);
    var tmp1_safe_receiver = (!(tmp_1 == null) ? typeof tmp_1 === 'function' : false) ? tmp_1 : null;
    return tmp1_safe_receiver == null ? null : tmp1_safe_receiver(serializedClassName);
  };
  protoOf(SerialModuleImpl).c4c = function (kClass, typeArgumentsSerializers) {
    var tmp0_safe_receiver = this.w4c_1.q(kClass);
    var tmp = tmp0_safe_receiver == null ? null : tmp0_safe_receiver.t4u(typeArgumentsSerializers);
    return (tmp == null ? true : isInterface(tmp, KSerializer)) ? tmp : null;
  };
  protoOf(SerialModuleImpl).s4u = function (collector) {
    // Inline function 'kotlin.collections.forEach' call
    // Inline function 'kotlin.collections.iterator' call
    var tmp0_iterator = this.w4c_1.q2().w();
    while (tmp0_iterator.f()) {
      var element = tmp0_iterator.e();
      // Inline function 'kotlinx.serialization.modules.SerialModuleImpl.dumpTo.<anonymous>' call
      // Inline function 'kotlin.collections.component1' call
      var kclass = element.s2();
      // Inline function 'kotlin.collections.component2' call
      var serial = element.t2();
      if (serial instanceof Argless) {
        var tmp = isInterface(kclass, KClass) ? kclass : THROW_CCE();
        var tmp_0 = serial.w4u_1;
        collector.x4u(tmp, isInterface(tmp_0, KSerializer) ? tmp_0 : THROW_CCE());
      } else {
        if (serial instanceof WithTypeArguments) {
          collector.v4u(kclass, serial.u4u_1);
        }
      }
    }
    // Inline function 'kotlin.collections.forEach' call
    // Inline function 'kotlin.collections.iterator' call
    var tmp0_iterator_0 = this.x4c_1.q2().w();
    while (tmp0_iterator_0.f()) {
      var element_0 = tmp0_iterator_0.e();
      // Inline function 'kotlinx.serialization.modules.SerialModuleImpl.dumpTo.<anonymous>' call
      // Inline function 'kotlin.collections.component1' call
      var baseClass = element_0.s2();
      // Inline function 'kotlin.collections.component2' call
      var classMap = element_0.t2();
      // Inline function 'kotlin.collections.forEach' call
      // Inline function 'kotlin.collections.iterator' call
      var tmp0_iterator_1 = classMap.q2().w();
      while (tmp0_iterator_1.f()) {
        var element_1 = tmp0_iterator_1.e();
        // Inline function 'kotlinx.serialization.modules.SerialModuleImpl.dumpTo.<anonymous>.<anonymous>' call
        // Inline function 'kotlin.collections.component1' call
        var actualClass = element_1.s2();
        // Inline function 'kotlin.collections.component2' call
        var serializer = element_1.t2();
        var tmp_1 = isInterface(baseClass, KClass) ? baseClass : THROW_CCE();
        var tmp_2 = isInterface(actualClass, KClass) ? actualClass : THROW_CCE();
        // Inline function 'kotlinx.serialization.internal.cast' call
        var tmp$ret$9 = isInterface(serializer, KSerializer) ? serializer : THROW_CCE();
        collector.y4u(tmp_1, tmp_2, tmp$ret$9);
      }
    }
    // Inline function 'kotlin.collections.forEach' call
    // Inline function 'kotlin.collections.iterator' call
    var tmp0_iterator_2 = this.y4c_1.q2().w();
    while (tmp0_iterator_2.f()) {
      var element_2 = tmp0_iterator_2.e();
      // Inline function 'kotlinx.serialization.modules.SerialModuleImpl.dumpTo.<anonymous>' call
      // Inline function 'kotlin.collections.component1' call
      var baseClass_0 = element_2.s2();
      // Inline function 'kotlin.collections.component2' call
      var provider = element_2.t2();
      var tmp_3 = isInterface(baseClass_0, KClass) ? baseClass_0 : THROW_CCE();
      collector.z4u(tmp_3, typeof provider === 'function' ? provider : THROW_CCE());
    }
    // Inline function 'kotlin.collections.forEach' call
    // Inline function 'kotlin.collections.iterator' call
    var tmp0_iterator_3 = this.a4d_1.q2().w();
    while (tmp0_iterator_3.f()) {
      var element_3 = tmp0_iterator_3.e();
      // Inline function 'kotlinx.serialization.modules.SerialModuleImpl.dumpTo.<anonymous>' call
      // Inline function 'kotlin.collections.component1' call
      var baseClass_1 = element_3.s2();
      // Inline function 'kotlin.collections.component2' call
      var provider_0 = element_3.t2();
      var tmp_4 = isInterface(baseClass_1, KClass) ? baseClass_1 : THROW_CCE();
      collector.a4v(tmp_4, typeof provider_0 === 'function' ? provider_0 : THROW_CCE());
    }
  };
  function Argless(serializer) {
    ContextualProvider.call(this);
    this.w4u_1 = serializer;
  }
  protoOf(Argless).t4u = function (typeArgumentsSerializers) {
    return this.w4u_1;
  };
  protoOf(Argless).equals = function (other) {
    var tmp;
    if (other instanceof Argless) {
      tmp = equals(other.w4u_1, this.w4u_1);
    } else {
      tmp = false;
    }
    return tmp;
  };
  protoOf(Argless).hashCode = function () {
    return hashCode(this.w4u_1);
  };
  function WithTypeArguments(provider) {
    ContextualProvider.call(this);
    this.u4u_1 = provider;
  }
  protoOf(WithTypeArguments).t4u = function (typeArgumentsSerializers) {
    return this.u4u_1(typeArgumentsSerializers);
  };
  function ContextualProvider() {
  }
  function plus(_this__u8e3s4, other) {
    _init_properties_SerializersModule_kt__u78ha3();
    // Inline function 'kotlinx.serialization.modules.SerializersModule' call
    var builder = new SerializersModuleBuilder();
    // Inline function 'kotlinx.serialization.modules.plus.<anonymous>' call
    builder.g4v(_this__u8e3s4);
    builder.g4v(other);
    return builder.f3();
  }
  var properties_initialized_SerializersModule_kt_fjigjn;
  function _init_properties_SerializersModule_kt__u78ha3() {
    if (!properties_initialized_SerializersModule_kt_fjigjn) {
      properties_initialized_SerializersModule_kt_fjigjn = true;
      EmptySerializersModule = new SerialModuleImpl(emptyMap(), emptyMap(), emptyMap(), emptyMap(), emptyMap());
    }
  }
  function EmptySerializersModule_0() {
    return get_EmptySerializersModuleLegacyJs();
  }
  function SerializersModuleBuilder() {
    var tmp = this;
    // Inline function 'kotlin.collections.hashMapOf' call
    tmp.b4v_1 = HashMap_init_$Create$();
    var tmp_0 = this;
    // Inline function 'kotlin.collections.hashMapOf' call
    tmp_0.c4v_1 = HashMap_init_$Create$();
    var tmp_1 = this;
    // Inline function 'kotlin.collections.hashMapOf' call
    tmp_1.d4v_1 = HashMap_init_$Create$();
    var tmp_2 = this;
    // Inline function 'kotlin.collections.hashMapOf' call
    tmp_2.e4v_1 = HashMap_init_$Create$();
    var tmp_3 = this;
    // Inline function 'kotlin.collections.hashMapOf' call
    tmp_3.f4v_1 = HashMap_init_$Create$();
  }
  protoOf(SerializersModuleBuilder).x4u = function (kClass, serializer) {
    return this.h4v(kClass, new Argless(serializer));
  };
  protoOf(SerializersModuleBuilder).v4u = function (kClass, provider) {
    return this.h4v(kClass, new WithTypeArguments(provider));
  };
  protoOf(SerializersModuleBuilder).y4u = function (baseClass, actualClass, actualSerializer) {
    this.i4v(baseClass, actualClass, actualSerializer);
  };
  protoOf(SerializersModuleBuilder).z4u = function (baseClass, defaultSerializerProvider) {
    this.j4v(baseClass, defaultSerializerProvider, false);
  };
  protoOf(SerializersModuleBuilder).a4v = function (baseClass, defaultDeserializerProvider) {
    this.k4v(baseClass, defaultDeserializerProvider, false);
  };
  protoOf(SerializersModuleBuilder).g4v = function (module_0) {
    module_0.s4u(this);
  };
  protoOf(SerializersModuleBuilder).l4v = function (forClass, provider, allowOverwrite) {
    if (!allowOverwrite) {
      var previous = this.b4v_1.q(forClass);
      if (!(previous == null) ? !equals(previous, provider) : false) {
        throw new SerializerAlreadyRegisteredException('Contextual serializer or serializer provider for ' + forClass + ' already registered in this module');
      }
    }
    // Inline function 'kotlin.collections.set' call
    this.b4v_1.s(forClass, provider);
  };
  protoOf(SerializersModuleBuilder).h4v = function (forClass, provider, allowOverwrite, $super) {
    allowOverwrite = allowOverwrite === VOID ? false : allowOverwrite;
    var tmp;
    if ($super === VOID) {
      this.l4v(forClass, provider, allowOverwrite);
      tmp = Unit_instance;
    } else {
      tmp = $super.l4v.call(this, forClass, provider, allowOverwrite);
    }
    return tmp;
  };
  protoOf(SerializersModuleBuilder).j4v = function (baseClass, defaultSerializerProvider, allowOverwrite) {
    var previous = this.d4v_1.q(baseClass);
    if ((!(previous == null) ? !equals(previous, defaultSerializerProvider) : false) ? !allowOverwrite : false) {
      throw IllegalArgumentException_init_$Create$('Default serializers provider for ' + baseClass + ' is already registered: ' + previous);
    }
    // Inline function 'kotlin.collections.set' call
    this.d4v_1.s(baseClass, defaultSerializerProvider);
  };
  protoOf(SerializersModuleBuilder).k4v = function (baseClass, defaultDeserializerProvider, allowOverwrite) {
    var previous = this.f4v_1.q(baseClass);
    if ((!(previous == null) ? !equals(previous, defaultDeserializerProvider) : false) ? !allowOverwrite : false) {
      throw IllegalArgumentException_init_$Create$('Default deserializers provider for ' + baseClass + ' is already registered: ' + previous);
    }
    // Inline function 'kotlin.collections.set' call
    this.f4v_1.s(baseClass, defaultDeserializerProvider);
  };
  protoOf(SerializersModuleBuilder).m4v = function (baseClass, concreteClass, concreteSerializer, allowOverwrite) {
    var name = concreteSerializer.v4a().v4b();
    // Inline function 'kotlin.collections.getOrPut' call
    var this_0 = this.c4v_1;
    var value = this_0.q(baseClass);
    var tmp;
    if (value == null) {
      // Inline function 'kotlin.collections.hashMapOf' call
      var answer = HashMap_init_$Create$();
      this_0.s(baseClass, answer);
      tmp = answer;
    } else {
      tmp = value;
    }
    var baseClassSerializers = tmp;
    var previousSerializer = baseClassSerializers.q(concreteClass);
    // Inline function 'kotlin.collections.getOrPut' call
    var this_1 = this.e4v_1;
    var value_0 = this_1.q(baseClass);
    var tmp_0;
    if (value_0 == null) {
      // Inline function 'kotlin.collections.hashMapOf' call
      var answer_0 = HashMap_init_$Create$();
      this_1.s(baseClass, answer_0);
      tmp_0 = answer_0;
    } else {
      tmp_0 = value_0;
    }
    var names = tmp_0;
    if (allowOverwrite) {
      if (!(previousSerializer == null)) {
        names.u2(previousSerializer.v4a().v4b());
      }
      // Inline function 'kotlin.collections.set' call
      baseClassSerializers.s(concreteClass, concreteSerializer);
      // Inline function 'kotlin.collections.set' call
      names.s(name, concreteSerializer);
      return Unit_instance;
    }
    if (!(previousSerializer == null)) {
      if (!equals(previousSerializer, concreteSerializer)) {
        throw SerializerAlreadyRegisteredException_init_$Create$(baseClass, concreteClass);
      } else {
        names.u2(previousSerializer.v4a().v4b());
      }
    }
    var previousByName = names.q(name);
    if (!(previousByName == null)) {
      // Inline function 'kotlin.sequences.find' call
      var this_2 = asSequence(ensureNotNull(this.c4v_1.q(baseClass)));
      var tmp$ret$5;
      $l$block: {
        // Inline function 'kotlin.sequences.firstOrNull' call
        var tmp0_iterator = this_2.w();
        while (tmp0_iterator.f()) {
          var element = tmp0_iterator.e();
          // Inline function 'kotlinx.serialization.modules.SerializersModuleBuilder.registerPolymorphicSerializer.<anonymous>' call
          if (element.t2() === previousByName) {
            tmp$ret$5 = element;
            break $l$block;
          }
        }
        tmp$ret$5 = null;
      }
      var conflictingClass = tmp$ret$5;
      throw IllegalArgumentException_init_$Create$("Multiple polymorphic serializers for base class '" + baseClass + "' " + ("have the same serial name '" + name + "': '" + concreteClass + "' and '" + conflictingClass + "'"));
    }
    // Inline function 'kotlin.collections.set' call
    baseClassSerializers.s(concreteClass, concreteSerializer);
    // Inline function 'kotlin.collections.set' call
    names.s(name, concreteSerializer);
  };
  protoOf(SerializersModuleBuilder).i4v = function (baseClass, concreteClass, concreteSerializer, allowOverwrite, $super) {
    allowOverwrite = allowOverwrite === VOID ? false : allowOverwrite;
    var tmp;
    if ($super === VOID) {
      this.m4v(baseClass, concreteClass, concreteSerializer, allowOverwrite);
      tmp = Unit_instance;
    } else {
      tmp = $super.m4v.call(this, baseClass, concreteClass, concreteSerializer, allowOverwrite);
    }
    return tmp;
  };
  protoOf(SerializersModuleBuilder).f3 = function () {
    return new SerialModuleImpl(this.b4v_1, this.c4v_1, this.d4v_1, this.e4v_1, this.f4v_1);
  };
  function SerializerAlreadyRegisteredException_init_$Init$(baseClass, concreteClass, $this) {
    SerializerAlreadyRegisteredException.call($this, 'Serializer for ' + concreteClass + ' already registered in the scope of ' + baseClass);
    return $this;
  }
  function SerializerAlreadyRegisteredException_init_$Create$(baseClass, concreteClass) {
    var tmp = SerializerAlreadyRegisteredException_init_$Init$(baseClass, concreteClass, objectCreate(protoOf(SerializerAlreadyRegisteredException)));
    captureStack(tmp, SerializerAlreadyRegisteredException_init_$Create$);
    return tmp;
  }
  function SerializerAlreadyRegisteredException(msg) {
    IllegalArgumentException_init_$Init$_0(msg, this);
    captureStack(this, SerializerAlreadyRegisteredException);
  }
  function SerializersModuleCollector$contextual$lambda($serializer) {
    return function (it) {
      return $serializer;
    };
  }
  function SerializersModuleCollector() {
  }
  function SerializableWith(serializer) {
    this.n4v_1 = serializer;
  }
  protoOf(SerializableWith).equals = function (other) {
    if (!(other instanceof SerializableWith))
      return false;
    var tmp0_other_with_cast = other instanceof SerializableWith ? other : THROW_CCE();
    if (!this.n4v_1.equals(tmp0_other_with_cast.n4v_1))
      return false;
    return true;
  };
  protoOf(SerializableWith).hashCode = function () {
    return imul(getStringHashCode('serializer'), 127) ^ this.n4v_1.hashCode();
  };
  protoOf(SerializableWith).toString = function () {
    return '@kotlinx.serialization.SerializableWith(serializer=' + this.n4v_1 + ')';
  };
  function createCache(factory) {
    return new createCache$1(factory);
  }
  function createParametrizedCache(factory) {
    return new createParametrizedCache$1(factory);
  }
  function compiledSerializerImpl(_this__u8e3s4) {
    var tmp1_elvis_lhs = constructSerializerForGivenTypeArgs(_this__u8e3s4, []);
    var tmp;
    if (tmp1_elvis_lhs == null) {
      var tmp_0;
      if (_this__u8e3s4 === PrimitiveClasses_getInstance().y7()) {
        tmp_0 = NothingSerializer_getInstance();
      } else {
        // Inline function 'kotlin.js.asDynamic' call
        var tmp0_safe_receiver = get_js(_this__u8e3s4).Companion;
        tmp_0 = tmp0_safe_receiver == null ? null : tmp0_safe_receiver.serializer();
      }
      var tmp_1 = tmp_0;
      tmp = (!(tmp_1 == null) ? isInterface(tmp_1, KSerializer) : false) ? tmp_1 : null;
    } else {
      tmp = tmp1_elvis_lhs;
    }
    return tmp;
  }
  function platformSpecificSerializerNotRegistered(_this__u8e3s4) {
    throw SerializationException_init_$Create$_0(notRegisteredMessage(_this__u8e3s4) + 'To get enum serializer on Kotlin/JS, it should be annotated with @Serializable annotation.');
  }
  function isReferenceArray(rootClass) {
    return rootClass.equals(PrimitiveClasses_getInstance().f8());
  }
  function constructSerializerForGivenTypeArgs(_this__u8e3s4, args) {
    var tmp;
    try {
      // Inline function 'kotlin.reflect.findAssociatedObject' call
      var assocObject = findAssociatedObject(_this__u8e3s4, getKClass(SerializableWith));
      var tmp_0;
      if (!(assocObject == null) ? isInterface(assocObject, KSerializer) : false) {
        tmp_0 = (!(assocObject == null) ? isInterface(assocObject, KSerializer) : false) ? assocObject : THROW_CCE();
      } else {
        if (!(assocObject == null) ? isInterface(assocObject, SerializerFactory) : false) {
          var tmp_1 = assocObject.a4n(args.slice());
          tmp_0 = isInterface(tmp_1, KSerializer) ? tmp_1 : THROW_CCE();
        } else {
          if (get_isInterface(_this__u8e3s4)) {
            tmp_0 = new PolymorphicSerializer(_this__u8e3s4);
          } else {
            tmp_0 = null;
          }
        }
      }
      tmp = tmp_0;
    } catch ($p) {
      var tmp_2;
      var e = $p;
      tmp_2 = null;
      tmp = tmp_2;
    }
    return tmp;
  }
  function get_isInterface(_this__u8e3s4) {
    // Inline function 'kotlin.js.asDynamic' call
    var tmp0_safe_receiver = get_js(_this__u8e3s4).$metadata$;
    return (tmp0_safe_receiver == null ? null : tmp0_safe_receiver.kind) == 'interface';
  }
  function toNativeArrayImpl(_this__u8e3s4, eClass) {
    // Inline function 'kotlin.collections.toTypedArray' call
    return copyToArray(_this__u8e3s4);
  }
  function getChecked(_this__u8e3s4, index) {
    if (!(0 <= index ? index <= (_this__u8e3s4.length - 1 | 0) : false))
      throw IndexOutOfBoundsException_init_$Create$('Index ' + index + ' out of bounds ' + get_indices(_this__u8e3s4));
    return _this__u8e3s4[index];
  }
  function getChecked_0(_this__u8e3s4, index) {
    if (!(0 <= index ? index <= (_this__u8e3s4.length - 1 | 0) : false))
      throw IndexOutOfBoundsException_init_$Create$('Index ' + index + ' out of bounds ' + get_indices_0(_this__u8e3s4));
    return _this__u8e3s4[index];
  }
  function createCache$1($factory) {
    this.o4v_1 = $factory;
  }
  protoOf(createCache$1).e4c = function (key) {
    return this.o4v_1(key);
  };
  function createParametrizedCache$1($factory) {
    this.p4v_1 = $factory;
  }
  protoOf(createParametrizedCache$1).f4c = function (key, types) {
    // Inline function 'kotlin.runCatching' call
    var tmp;
    try {
      // Inline function 'kotlin.Companion.success' call
      // Inline function 'kotlinx.serialization.internal.<no name provided>.get.<anonymous>' call
      var value = this.p4v_1(key, types);
      tmp = _Result___init__impl__xyqfz8(value);
    } catch ($p) {
      var tmp_0;
      if ($p instanceof Error) {
        var e = $p;
        // Inline function 'kotlin.Companion.failure' call
        tmp_0 = _Result___init__impl__xyqfz8(createFailure(e));
      } else {
        throw $p;
      }
      tmp = tmp_0;
    }
    return tmp;
  };
  //region block: post-declaration
  protoOf(SerialDescriptorImpl).g4c = get_isNullable;
  protoOf(SerialDescriptorImpl).m4c = get_isInline;
  protoOf(AbstractDecoder).a4f = decodeSerializableElement$default;
  protoOf(AbstractDecoder).m4e = decodeSerializableValue;
  protoOf(AbstractDecoder).c4f = decodeSequentially;
  protoOf(AbstractDecoder).e4f = decodeCollectionSize;
  protoOf(AbstractEncoder).h4g = encodeNotNullMark;
  protoOf(AbstractEncoder).i4g = beginCollection;
  protoOf(AbstractEncoder).e4g = encodeSerializableValue;
  protoOf(AbstractEncoder).g4g = encodeNullableSerializableValue;
  protoOf(AbstractEncoder).j4g = shouldEncodeElementDefault;
  protoOf(ListLikeDescriptor).g4c = get_isNullable;
  protoOf(ListLikeDescriptor).m4c = get_isInline;
  protoOf(ListLikeDescriptor).k4c = get_annotations;
  protoOf(MapLikeDescriptor).g4c = get_isNullable;
  protoOf(MapLikeDescriptor).m4c = get_isInline;
  protoOf(MapLikeDescriptor).k4c = get_annotations;
  protoOf(PluginGeneratedSerialDescriptor).g4c = get_isNullable;
  protoOf(PluginGeneratedSerialDescriptor).m4c = get_isInline;
  protoOf(InlinePrimitiveDescriptor$1).q4m = typeParametersSerializers;
  protoOf(NothingSerialDescriptor).g4c = get_isNullable;
  protoOf(NothingSerialDescriptor).m4c = get_isInline;
  protoOf(NothingSerialDescriptor).k4c = get_annotations;
  protoOf(PrimitiveSerialDescriptor_0).g4c = get_isNullable;
  protoOf(PrimitiveSerialDescriptor_0).m4c = get_isInline;
  protoOf(PrimitiveSerialDescriptor_0).k4c = get_annotations;
  protoOf(TaggedDecoder).a4f = decodeSerializableElement$default;
  protoOf(TaggedDecoder).m4e = decodeSerializableValue;
  protoOf(TaggedDecoder).c4f = decodeSequentially;
  protoOf(TaggedDecoder).e4f = decodeCollectionSize;
  //endregion
  //region block: init
  Companion_instance_0 = new Companion();
  //endregion
  //region block: exports
  _.$_$ = _.$_$ || {};
  _.$_$.a = decodeSerializableElement$default;
  _.$_$.b = MissingFieldException_init_$Create$_0;
  _.$_$.c = SerializationException_init_$Init$_0;
  _.$_$.d = SerializationException_init_$Create$_0;
  _.$_$.e = SerializationException_init_$Init$_1;
  _.$_$.f = UnknownFieldException_init_$Create$;
  _.$_$.g = OPEN_getInstance;
  _.$_$.h = SEALED_getInstance;
  _.$_$.i = INT_getInstance;
  _.$_$.j = STRING_getInstance;
  _.$_$.k = CONTEXTUAL_getInstance;
  _.$_$.l = ENUM_getInstance;
  _.$_$.m = CLASS_getInstance;
  _.$_$.n = LIST_getInstance;
  _.$_$.o = MAP_getInstance;
  _.$_$.p = OBJECT_getInstance;
  _.$_$.q = Companion_instance_0;
  _.$_$.r = BooleanSerializer_getInstance;
  _.$_$.s = ByteSerializer_getInstance;
  _.$_$.t = FloatSerializer_getInstance;
  _.$_$.u = IntSerializer_getInstance;
  _.$_$.v = LongSerializer_getInstance;
  _.$_$.w = StringSerializer_getInstance;
  _.$_$.x = ListSerializer;
  _.$_$.y = MapSerializer;
  _.$_$.z = SetSerializer;
  _.$_$.a1 = get_nullable;
  _.$_$.b1 = serializer_2;
  _.$_$.c1 = serializer_11;
  _.$_$.d1 = serializer_9;
  _.$_$.e1 = serializer_8;
  _.$_$.f1 = serializer_13;
  _.$_$.g1 = serializer_7;
  _.$_$.h1 = serializer_14;
  _.$_$.i1 = serializer_6;
  _.$_$.j1 = PolymorphicKind;
  _.$_$.k1 = PrimitiveKind;
  _.$_$.l1 = PrimitiveSerialDescriptor;
  _.$_$.m1 = get_annotations;
  _.$_$.n1 = get_isInline;
  _.$_$.o1 = get_isNullable;
  _.$_$.p1 = SerialDescriptor_0;
  _.$_$.q1 = SerialDescriptor;
  _.$_$.r1 = ENUM;
  _.$_$.s1 = LIST;
  _.$_$.t1 = MAP;
  _.$_$.u1 = buildClassSerialDescriptor;
  _.$_$.v1 = buildSerialDescriptor;
  _.$_$.w1 = get_capturedKClass;
  _.$_$.x1 = getContextualDescriptor;
  _.$_$.y1 = getPolymorphicDescriptors;
  _.$_$.z1 = AbstractDecoder;
  _.$_$.a2 = AbstractEncoder;
  _.$_$.b2 = decodeCollectionSize;
  _.$_$.c2 = decodeSequentially;
  _.$_$.d2 = CompositeDecoder;
  _.$_$.e2 = CompositeEncoder;
  _.$_$.f2 = decodeSerializableValue;
  _.$_$.g2 = Decoder;
  _.$_$.h2 = beginCollection;
  _.$_$.i2 = encodeNotNullMark;
  _.$_$.j2 = encodeSerializableValue;
  _.$_$.k2 = Encoder;
  _.$_$.l2 = AbstractCollectionSerializer;
  _.$_$.m2 = AbstractPolymorphicSerializer;
  _.$_$.n2 = ArrayListSerializer;
  _.$_$.o2 = ElementMarker;
  _.$_$.p2 = typeParametersSerializers;
  _.$_$.q2 = GeneratedSerializer;
  _.$_$.r2 = InlinePrimitiveDescriptor;
  _.$_$.s2 = LinkedHashMapSerializer;
  _.$_$.t2 = NamedValueDecoder;
  _.$_$.u2 = PluginGeneratedSerialDescriptor;
  _.$_$.v2 = SerializerFactory;
  _.$_$.w2 = createSimpleEnumSerializer;
  _.$_$.x2 = jsonCachedSerialNames;
  _.$_$.y2 = throwArrayMissingFieldException;
  _.$_$.z2 = throwMissingFieldException;
  _.$_$.a3 = get_EmptySerializersModuleLegacyJs;
  _.$_$.b3 = EmptySerializersModule_0;
  _.$_$.c3 = SerializersModuleBuilder;
  _.$_$.d3 = contextual;
  _.$_$.e3 = SerializersModuleCollector;
  _.$_$.f3 = plus;
  _.$_$.g3 = BinaryFormat;
  _.$_$.h3 = DeserializationStrategy;
  _.$_$.i3 = KSerializer;
  _.$_$.j3 = MissingFieldException;
  _.$_$.k3 = SealedClassSerializer;
  _.$_$.l3 = SerializationException;
  _.$_$.m3 = SerializationStrategy;
  _.$_$.n3 = StringFormat;
  _.$_$.o3 = findPolymorphicSerializer_0;
  _.$_$.p3 = findPolymorphicSerializer;
  _.$_$.q3 = serializerOrNull_0;
  _.$_$.r3 = serializerOrNull;
  _.$_$.s3 = serializer_0;
  _.$_$.t3 = serializer_1;
  _.$_$.u3 = serializer;
  //endregion
  return _;
}(module.exports, require('./kotlin-kotlin-stdlib.js')));

//# sourceMappingURL=kotlinx-serialization-kotlinx-serialization-core.js.map
