(function (_, kotlin_kotlin) {
  'use strict';
  //region block: imports
  var imul = Math.imul;
  var protoOf = kotlin_kotlin.$_$.wc;
  var interfaceMeta = kotlin_kotlin.$_$.xb;
  var setMetadataFor = kotlin_kotlin.$_$.xc;
  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.$_$.ej;
  var classMeta = kotlin_kotlin.$_$.lb;
  var getKClassFromExpression = kotlin_kotlin.$_$.d;
  var KProperty1 = kotlin_kotlin.$_$.vd;
  var getPropertyCallableRef = kotlin_kotlin.$_$.ub;
  var THROW_CCE = kotlin_kotlin.$_$.hi;
  var Entry = kotlin_kotlin.$_$.x5;
  var isInterface = kotlin_kotlin.$_$.gc;
  var IllegalArgumentException_init_$Create$ = kotlin_kotlin.$_$.u1;
  var zip = kotlin_kotlin.$_$.ea;
  var toMap = kotlin_kotlin.$_$.w9;
  var LinkedHashMap_init_$Create$ = kotlin_kotlin.$_$.v;
  var toString = kotlin_kotlin.$_$.bd;
  var IllegalStateException_init_$Create$ = kotlin_kotlin.$_$.a2;
  var mapCapacity = kotlin_kotlin.$_$.m8;
  var LinkedHashMap_init_$Create$_0 = kotlin_kotlin.$_$.u;
  var Map = kotlin_kotlin.$_$.y5;
  var IllegalArgumentException_init_$Init$ = kotlin_kotlin.$_$.r1;
  var objectCreate = kotlin_kotlin.$_$.uc;
  var captureStack = kotlin_kotlin.$_$.fb;
  var IllegalArgumentException_init_$Init$_0 = kotlin_kotlin.$_$.t1;
  var IllegalArgumentException_init_$Init$_1 = kotlin_kotlin.$_$.v1;
  var IllegalArgumentException = kotlin_kotlin.$_$.xh;
  var listOf = kotlin_kotlin.$_$.k8;
  var collectionSizeOrDefault = kotlin_kotlin.$_$.n6;
  var ArrayList_init_$Create$ = kotlin_kotlin.$_$.l;
  var KClass = kotlin_kotlin.$_$.sd;
  var Triple = kotlin_kotlin.$_$.ki;
  var getKClass = kotlin_kotlin.$_$.e;
  var Pair = kotlin_kotlin.$_$.ei;
  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.$_$.fi;
  var ensureNotNull = kotlin_kotlin.$_$.zi;
  var equals = kotlin_kotlin.$_$.ob;
  var getStringHashCode = kotlin_kotlin.$_$.vb;
  var Iterator = kotlin_kotlin.$_$.t5;
  var isBlank = kotlin_kotlin.$_$.ef;
  var toList = kotlin_kotlin.$_$.u9;
  var ArrayList_init_$Create$_0 = kotlin_kotlin.$_$.m;
  var HashSet_init_$Create$ = kotlin_kotlin.$_$.s;
  var toHashSet = kotlin_kotlin.$_$.r9;
  var toBooleanArray = kotlin_kotlin.$_$.q9;
  var withIndex = kotlin_kotlin.$_$.da;
  var to = kotlin_kotlin.$_$.nj;
  var lazy_0 = kotlin_kotlin.$_$.fj;
  var contentEquals = kotlin_kotlin.$_$.q6;
  var until = kotlin_kotlin.$_$.rd;
  var joinToString = kotlin_kotlin.$_$.a8;
  var objectMeta = kotlin_kotlin.$_$.vc;
  var Long = kotlin_kotlin.$_$.ai;
  var Char = kotlin_kotlin.$_$.ph;
  var Duration__toIsoString_impl_9h6wsm = kotlin_kotlin.$_$.t2;
  var Duration = kotlin_kotlin.$_$.lh;
  var Companion_getInstance = kotlin_kotlin.$_$.e5;
  var toIntOrNull = kotlin_kotlin.$_$.tg;
  var hashCode = kotlin_kotlin.$_$.wb;
  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.$_$.yb;
  var arrayIterator = kotlin_kotlin.$_$.db;
  var asList = kotlin_kotlin.$_$.g6;
  var step = kotlin_kotlin.$_$.qd;
  var getValue = kotlin_kotlin.$_$.u7;
  var longArray = kotlin_kotlin.$_$.mc;
  var Companion_getInstance_0 = kotlin_kotlin.$_$.g5;
  var get_lastIndex = kotlin_kotlin.$_$.d8;
  var countTrailingZeroBits = kotlin_kotlin.$_$.xi;
  var indexOf = kotlin_kotlin.$_$.v7;
  var contentToString = kotlin_kotlin.$_$.u6;
  var Enum = kotlin_kotlin.$_$.uh;
  var fillArrayVal = kotlin_kotlin.$_$.qb;
  var HashSet_init_$Create$_1 = kotlin_kotlin.$_$.r;
  var KTypeParameter = kotlin_kotlin.$_$.wd;
  var booleanArray = kotlin_kotlin.$_$.eb;
  var emptyMap = kotlin_kotlin.$_$.j7;
  var contentHashCode = kotlin_kotlin.$_$.t6;
  var Companion_getInstance_1 = kotlin_kotlin.$_$.f5;
  var isCharArray = kotlin_kotlin.$_$.bc;
  var charArray = kotlin_kotlin.$_$.hb;
  var DoubleCompanionObject_instance = kotlin_kotlin.$_$.w4;
  var isDoubleArray = kotlin_kotlin.$_$.dc;
  var FloatCompanionObject_instance = kotlin_kotlin.$_$.x4;
  var isFloatArray = kotlin_kotlin.$_$.ec;
  var isLongArray = kotlin_kotlin.$_$.hc;
  var Companion_getInstance_2 = kotlin_kotlin.$_$.k5;
  var _ULongArray___get_size__impl__ju6dtr = kotlin_kotlin.$_$.h4;
  var ULongArray = kotlin_kotlin.$_$.pi;
  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.$_$.fc;
  var Companion_getInstance_3 = kotlin_kotlin.$_$.j5;
  var _UIntArray___get_size__impl__r6l8ci = kotlin_kotlin.$_$.y3;
  var UIntArray = kotlin_kotlin.$_$.ni;
  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.$_$.ic;
  var Companion_getInstance_4 = kotlin_kotlin.$_$.l5;
  var _UShortArray___get_size__impl__jqto1b = kotlin_kotlin.$_$.q4;
  var UShortArray = kotlin_kotlin.$_$.ri;
  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.$_$.ac;
  var Companion_getInstance_5 = kotlin_kotlin.$_$.i5;
  var _UByteArray___get_size__impl__h6pkdv = kotlin_kotlin.$_$.o3;
  var UByteArray = kotlin_kotlin.$_$.li;
  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.$_$.zb;
  var coerceAtLeast = kotlin_kotlin.$_$.jd;
  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.$_$.ti;
  var trimIndent = kotlin_kotlin.$_$.gh;
  var equals_0 = kotlin_kotlin.$_$.ye;
  var charSequenceLength = kotlin_kotlin.$_$.jb;
  var charSequenceGet = kotlin_kotlin.$_$.ib;
  var toString_0 = kotlin_kotlin.$_$.c3;
  var titlecase = kotlin_kotlin.$_$.lg;
  var isLowerCase = kotlin_kotlin.$_$.jf;
  var PrimitiveClasses_getInstance = kotlin_kotlin.$_$.c5;
  var ULong = kotlin_kotlin.$_$.qi;
  var UInt = kotlin_kotlin.$_$.oi;
  var UShort = kotlin_kotlin.$_$.si;
  var UByte = kotlin_kotlin.$_$.mi;
  var mapOf = kotlin_kotlin.$_$.o8;
  var lastOrNull = kotlin_kotlin.$_$.g8;
  var get_lastIndex_0 = kotlin_kotlin.$_$.e8;
  var asSequence = kotlin_kotlin.$_$.h6;
  var get_js = kotlin_kotlin.$_$.kc;
  var findAssociatedObject = kotlin_kotlin.$_$.c;
  var get_indices = kotlin_kotlin.$_$.y7;
  var IndexOutOfBoundsException_init_$Create$ = kotlin_kotlin.$_$.e2;
  var get_indices_0 = kotlin_kotlin.$_$.x7;
  var Companion_instance = kotlin_kotlin.$_$.h5;
  var _Result___init__impl__xyqfz8 = kotlin_kotlin.$_$.d3;
  var createFailure = kotlin_kotlin.$_$.yi;
  //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.s44(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.u48(descriptor, index, deserializer, previousValue) : $super.u48.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.i48(descriptor);
  }
  function encodeSerializableValue(serializer, value) {
    serializer.r44(this, value);
  }
  function encodeNullableSerializableValue(serializer, value) {
    var isNullabilitySupported = serializer.q44().b46();
    if (isNullabilitySupported) {
      return this.z49(isInterface(serializer, SerializationStrategy) ? serializer : THROW_CCE(), value);
    }
    if (value == null) {
      this.c49();
    } else {
      this.c4a();
      this.z49(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.q4o(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.b45('type', serializer_2(StringCompanionObject_instance).q44());
      $this$buildSerialDescriptor.b45('value', buildSerialDescriptor('kotlinx.serialization.Polymorphic<' + this$0.c45_1.f7() + '>', CONTEXTUAL_getInstance(), []));
      $this$buildSerialDescriptor.v44_1 = this$0.d45_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.c45_1);
    };
  }
  function PolymorphicSerializer(baseClass) {
    AbstractPolymorphicSerializer.call(this);
    this.c45_1 = baseClass;
    this.d45_1 = emptyList();
    var tmp = this;
    var tmp_0 = LazyThreadSafetyMode_PUBLICATION_getInstance();
    tmp.e45_1 = lazy(tmp_0, PolymorphicSerializer$descriptor$delegate$lambda(this));
  }
  protoOf(PolymorphicSerializer).f45 = function () {
    return this.c45_1;
  };
  protoOf(PolymorphicSerializer).q44 = function () {
    // Inline function 'kotlin.getValue' call
    var this_0 = this.e45_1;
    descriptor$factory();
    return this_0.t2();
  };
  protoOf(PolymorphicSerializer).toString = function () {
    return 'kotlinx.serialization.PolymorphicSerializer(baseClass: ' + this.c45_1 + ')';
  };
  function findPolymorphicSerializer(_this__u8e3s4, encoder, value) {
    var tmp0_elvis_lhs = _this__u8e3s4.i45(encoder, value);
    var tmp;
    if (tmp0_elvis_lhs == null) {
      throwSubtypeNotRegistered(getKClassFromExpression(value), _this__u8e3s4.f45());
    } else {
      tmp = tmp0_elvis_lhs;
    }
    return tmp;
  }
  function findPolymorphicSerializer_0(_this__u8e3s4, decoder, klassName) {
    var tmp0_elvis_lhs = _this__u8e3s4.h45(decoder, klassName);
    var tmp;
    if (tmp0_elvis_lhs == null) {
      throwSubtypeNotRegistered_0(klassName, _this__u8e3s4.f45());
    } else {
      tmp = tmp0_elvis_lhs;
    }
    return tmp;
  }
  function descriptor$factory() {
    return getPropertyCallableRef('descriptor', 1, KProperty1, function (receiver) {
      return receiver.q44();
    }, 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.n45_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.b45(name, serializer.q44());
      }
      return Unit_instance;
    };
  }
  function SealedClassSerializer$descriptor$delegate$lambda$lambda(this$0) {
    return function ($this$buildSerialDescriptor) {
      $this$buildSerialDescriptor.b45('type', serializer_2(StringCompanionObject_instance).q44());
      var tmp = 'kotlinx.serialization.Sealed<' + this$0.j45_1.f7() + '>';
      var tmp_0 = CONTEXTUAL_getInstance();
      var elementDescriptor = buildSerialDescriptor(tmp, tmp_0, [], SealedClassSerializer$descriptor$delegate$lambda$lambda$lambda(this$0));
      $this$buildSerialDescriptor.b45('value', elementDescriptor);
      $this$buildSerialDescriptor.v44_1 = this$0.k45_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.o45_1 = $this;
  }
  protoOf(_no_name_provided__qut3iv).o = function () {
    return this.o45_1.w();
  };
  protoOf(_no_name_provided__qut3iv).p45 = function (element) {
    // Inline function 'kotlinx.serialization.SealedClassSerializer.<anonymous>' call
    return element.t2().q44().q45();
  };
  protoOf(_no_name_provided__qut3iv).p = function (element) {
    return this.p45((!(element == null) ? isInterface(element, Entry) : false) ? element : THROW_CCE());
  };
  function SealedClassSerializer(serialName, baseClass, subclasses, subclassSerializers) {
    AbstractPolymorphicSerializer.call(this);
    this.j45_1 = baseClass;
    this.k45_1 = emptyList();
    var tmp = this;
    var tmp_0 = LazyThreadSafetyMode_PUBLICATION_getInstance();
    tmp.l45_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.j45_1.f7() + ' should be marked @Serializable');
    }
    this.m45_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.m45_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.j45_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.n45_1 = destination_0;
  }
  protoOf(SealedClassSerializer).f45 = function () {
    return this.j45_1;
  };
  protoOf(SealedClassSerializer).q44 = function () {
    // Inline function 'kotlin.getValue' call
    var this_0 = this.l45_1;
    descriptor$factory_0();
    return this_0.t2();
  };
  protoOf(SealedClassSerializer).h45 = function (decoder, klassName) {
    // Inline function 'kotlin.collections.get' call
    var this_0 = this.n45_1;
    var tmp0_elvis_lhs = (isInterface(this_0, Map) ? this_0 : THROW_CCE()).q(klassName);
    return tmp0_elvis_lhs == null ? protoOf(AbstractPolymorphicSerializer).h45.call(this, decoder, klassName) : tmp0_elvis_lhs;
  };
  protoOf(SealedClassSerializer).i45 = function (encoder, value) {
    var tmp0_elvis_lhs = this.m45_1.q(getKClassFromExpression(value));
    var tmp1_safe_receiver = tmp0_elvis_lhs == null ? protoOf(AbstractPolymorphicSerializer).i45.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.q44();
    }, 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.w45_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.y45(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.x45(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().z45(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().z45(clazz);
    }
    return tmp;
  }
  function findParametrizedCachedSerializer(clazz, types, isNullable) {
    _init_properties_SerializersCache_kt__hgwi2p();
    var tmp;
    if (!isNullable) {
      var tmp_0 = get_PARAMETRIZED_SERIALIZERS_CACHE().a46(clazz, types);
      tmp = new Result(tmp_0) instanceof Result ? tmp_0 : THROW_CCE();
    } else {
      tmp = get_PARAMETRIZED_SERIALIZERS_CACHE_NULLABLE().a46(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.q44().b46()) {
      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.c46_1 = original;
    this.d46_1 = kClass;
    this.e46_1 = this.c46_1.q45() + '<' + this.d46_1.f7() + '>';
  }
  protoOf(ContextDescriptor).f46 = function () {
    return this.c46_1.f46();
  };
  protoOf(ContextDescriptor).g46 = function () {
    return this.c46_1.g46();
  };
  protoOf(ContextDescriptor).h46 = function () {
    return this.c46_1.h46();
  };
  protoOf(ContextDescriptor).b46 = function () {
    return this.c46_1.b46();
  };
  protoOf(ContextDescriptor).i46 = function () {
    return this.c46_1.i46();
  };
  protoOf(ContextDescriptor).j46 = function (index) {
    return this.c46_1.j46(index);
  };
  protoOf(ContextDescriptor).k46 = function (index) {
    return this.c46_1.k46(index);
  };
  protoOf(ContextDescriptor).l46 = function (name) {
    return this.c46_1.l46(name);
  };
  protoOf(ContextDescriptor).m46 = function (index) {
    return this.c46_1.m46(index);
  };
  protoOf(ContextDescriptor).n46 = function (index) {
    return this.c46_1.n46(index);
  };
  protoOf(ContextDescriptor).q45 = function () {
    return this.e46_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.c46_1, another.c46_1) ? another.d46_1.equals(this.d46_1) : false;
  };
  protoOf(ContextDescriptor).hashCode = function () {
    var result = this.d46_1.hashCode();
    result = imul(31, result) + getStringHashCode(this.e46_1) | 0;
    return result;
  };
  protoOf(ContextDescriptor).toString = function () {
    return 'ContextDescriptor(kClass: ' + this.d46_1 + ', original: ' + this.c46_1 + ')';
  };
  function get_capturedKClass(_this__u8e3s4) {
    var tmp;
    if (_this__u8e3s4 instanceof ContextDescriptor) {
      tmp = _this__u8e3s4.d46_1;
    } else {
      if (_this__u8e3s4 instanceof SerialDescriptorForNullable) {
        tmp = get_capturedKClass(_this__u8e3s4.o46_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()).s46_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.q44();
      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.y45(tmp0_safe_receiver);
      tmp = tmp0_safe_receiver_0 == null ? null : tmp0_safe_receiver_0.q44();
    }
    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.x46_1 = $this_elementDescriptors;
    this.w46_1 = $this_elementDescriptors.g46();
  }
  protoOf(elementDescriptors$1$1).f = function () {
    return this.w46_1 > 0;
  };
  protoOf(elementDescriptors$1$1).e = function () {
    var tmp = this.x46_1.g46();
    var tmp1 = this.w46_1;
    this.w46_1 = tmp1 - 1 | 0;
    return this.x46_1.k46(tmp - tmp1 | 0);
  };
  function _no_name_provided__qut3iv_0($this_elementDescriptors) {
    this.y46_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.y46_1);
  };
  function elementNames$1$1($this_elementNames) {
    this.a47_1 = $this_elementNames;
    this.z46_1 = $this_elementNames.g46();
  }
  protoOf(elementNames$1$1).f = function () {
    return this.z46_1 > 0;
  };
  protoOf(elementNames$1$1).e = function () {
    var tmp = this.a47_1.g46();
    var tmp1 = this.z46_1;
    this.z46_1 = tmp1 - 1 | 0;
    return this.a47_1.m46(tmp - tmp1 | 0);
  };
  function _no_name_provided__qut3iv_1($this_elementNames) {
    this.b47_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.b47_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.w44_1.u(), toList(typeParameters), sdBuilder);
  }
  function ClassSerialDescriptorBuilder(serialName) {
    this.t44_1 = serialName;
    this.u44_1 = false;
    this.v44_1 = emptyList();
    this.w44_1 = ArrayList_init_$Create$_0();
    this.x44_1 = HashSet_init_$Create$();
    this.y44_1 = ArrayList_init_$Create$_0();
    this.z44_1 = ArrayList_init_$Create$_0();
    this.a45_1 = ArrayList_init_$Create$_0();
  }
  protoOf(ClassSerialDescriptorBuilder).c47 = function (elementName, descriptor, annotations, isOptional) {
    // Inline function 'kotlin.require' call
    // Inline function 'kotlin.contracts.contract' call
    if (!this.x44_1.i1(elementName)) {
      // Inline function 'kotlinx.serialization.descriptors.ClassSerialDescriptorBuilder.element.<anonymous>' call
      var message = "Element with name '" + elementName + "' is already registered in " + this.t44_1;
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    // Inline function 'kotlin.collections.plusAssign' call
    this.w44_1.i1(elementName);
    // Inline function 'kotlin.collections.plusAssign' call
    this.y44_1.i1(descriptor);
    // Inline function 'kotlin.collections.plusAssign' call
    this.z44_1.i1(annotations);
    // Inline function 'kotlin.collections.plusAssign' call
    this.a45_1.i1(isOptional);
  };
  protoOf(ClassSerialDescriptorBuilder).b45 = function (elementName, descriptor, annotations, isOptional, $super) {
    annotations = annotations === VOID ? emptyList() : annotations;
    isOptional = isOptional === VOID ? false : isOptional;
    var tmp;
    if ($super === VOID) {
      this.c47(elementName, descriptor, annotations, isOptional);
      tmp = Unit_instance;
    } else {
      tmp = $super.c47.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.w44_1.u(), toList(typeParameters), sdBuilder);
  }
  function _get__hashCode__tgwhef($this) {
    // Inline function 'kotlin.getValue' call
    var this_0 = $this.o47_1;
    _hashCode$factory();
    return this_0.t2();
  }
  function SerialDescriptorImpl$_hashCode$delegate$lambda(this$0) {
    return function () {
      return hashCodeImpl(this$0, this$0.n47_1);
    };
  }
  function SerialDescriptorImpl$toString$lambda(this$0) {
    return function (it) {
      return this$0.m46(it) + ': ' + this$0.k46(it).q45();
    };
  }
  function SerialDescriptorImpl(serialName, kind, elementsCount, typeParameters, builder) {
    this.d47_1 = serialName;
    this.e47_1 = kind;
    this.f47_1 = elementsCount;
    this.g47_1 = builder.v44_1;
    this.h47_1 = toHashSet(builder.w44_1);
    var tmp = this;
    // Inline function 'kotlin.collections.toTypedArray' call
    var this_0 = builder.w44_1;
    tmp.i47_1 = copyToArray(this_0);
    this.j47_1 = compactArray(builder.y44_1);
    var tmp_0 = this;
    // Inline function 'kotlin.collections.toTypedArray' call
    var this_1 = builder.z44_1;
    tmp_0.k47_1 = copyToArray(this_1);
    this.l47_1 = toBooleanArray(builder.a45_1);
    var tmp_1 = this;
    // Inline function 'kotlin.collections.map' call
    var this_2 = withIndex(this.i47_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.m47_1 = toMap(destination);
    this.n47_1 = compactArray(typeParameters);
    var tmp_2 = this;
    tmp_2.o47_1 = lazy_0(SerialDescriptorImpl$_hashCode$delegate$lambda(this));
  }
  protoOf(SerialDescriptorImpl).q45 = function () {
    return this.d47_1;
  };
  protoOf(SerialDescriptorImpl).i46 = function () {
    return this.e47_1;
  };
  protoOf(SerialDescriptorImpl).g46 = function () {
    return this.f47_1;
  };
  protoOf(SerialDescriptorImpl).f46 = function () {
    return this.g47_1;
  };
  protoOf(SerialDescriptorImpl).p47 = function () {
    return this.h47_1;
  };
  protoOf(SerialDescriptorImpl).m46 = function (index) {
    return getChecked(this.i47_1, index);
  };
  protoOf(SerialDescriptorImpl).l46 = function (name) {
    var tmp0_elvis_lhs = this.m47_1.q(name);
    var tmp;
    if (tmp0_elvis_lhs == null) {
      tmp = -3;
    } else {
      tmp = tmp0_elvis_lhs;
    }
    return tmp;
  };
  protoOf(SerialDescriptorImpl).j46 = function (index) {
    return getChecked(this.k47_1, index);
  };
  protoOf(SerialDescriptorImpl).k46 = function (index) {
    return getChecked(this.j47_1, index);
  };
  protoOf(SerialDescriptorImpl).n46 = function (index) {
    return getChecked_0(this.l47_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.q45() === other.q45())) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      // Inline function 'kotlinx.serialization.descriptors.SerialDescriptorImpl.equals.<anonymous>' call
      if (!contentEquals(this.n47_1, other.n47_1)) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      if (!(this.g46() === other.g46())) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      var inductionVariable = 0;
      var last = this.g46();
      if (inductionVariable < last)
        do {
          var index = inductionVariable;
          inductionVariable = inductionVariable + 1 | 0;
          if (!(this.k46(index).q45() === other.k46(index).q45())) {
            tmp$ret$0 = false;
            break $l$block_5;
          }
          if (!equals(this.k46(index).i46(), other.k46(index).i46())) {
            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.f47_1);
    var tmp_0 = this.d47_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.i46();
    // 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.q45())) {
      // 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.q45() + ')';
      throw IllegalArgumentException_init_$Create$(toString(message_1));
    }
    return new WrappedSerialDescriptor(serialName, original);
  }
  function WrappedSerialDescriptor(serialName, original) {
    this.q47_1 = serialName;
    this.r47_1 = original;
  }
  protoOf(WrappedSerialDescriptor).q45 = function () {
    return this.q47_1;
  };
  protoOf(WrappedSerialDescriptor).f46 = function () {
    return this.r47_1.f46();
  };
  protoOf(WrappedSerialDescriptor).g46 = function () {
    return this.r47_1.g46();
  };
  protoOf(WrappedSerialDescriptor).h46 = function () {
    return this.r47_1.h46();
  };
  protoOf(WrappedSerialDescriptor).b46 = function () {
    return this.r47_1.b46();
  };
  protoOf(WrappedSerialDescriptor).i46 = function () {
    return this.r47_1.i46();
  };
  protoOf(WrappedSerialDescriptor).j46 = function (index) {
    return this.r47_1.j46(index);
  };
  protoOf(WrappedSerialDescriptor).k46 = function (index) {
    return this.r47_1.k46(index);
  };
  protoOf(WrappedSerialDescriptor).l46 = function (name) {
    return this.r47_1.l46(name);
  };
  protoOf(WrappedSerialDescriptor).m46 = function (index) {
    return this.r47_1.m46(index);
  };
  protoOf(WrappedSerialDescriptor).n46 = function (index) {
    return this.r47_1.n46(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).s47 = function () {
    throw SerializationException_init_$Create$_0('' + getKClassFromExpression(this) + " can't retrieve untyped values");
  };
  protoOf(AbstractDecoder).t47 = function () {
    return true;
  };
  protoOf(AbstractDecoder).u47 = function () {
    return null;
  };
  protoOf(AbstractDecoder).v47 = function () {
    var tmp = this.s47();
    return typeof tmp === 'boolean' ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).w47 = function () {
    var tmp = this.s47();
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).x47 = function () {
    var tmp = this.s47();
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).y47 = function () {
    var tmp = this.s47();
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).z47 = function () {
    var tmp = this.s47();
    return tmp instanceof Long ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).a48 = function () {
    var tmp = this.s47();
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).b48 = function () {
    var tmp = this.s47();
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).c48 = function () {
    var tmp = this.s47();
    return tmp instanceof Char ? tmp.rb_1 : THROW_CCE();
  };
  protoOf(AbstractDecoder).d48 = function () {
    var tmp = this.s47();
    return typeof tmp === 'string' ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).e48 = function (enumDescriptor) {
    var tmp = this.s47();
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(AbstractDecoder).f48 = function (descriptor) {
    return this;
  };
  protoOf(AbstractDecoder).g48 = function (deserializer, previousValue) {
    return this.h48(deserializer);
  };
  protoOf(AbstractDecoder).i48 = function (descriptor) {
    return this;
  };
  protoOf(AbstractDecoder).j48 = function (descriptor) {
  };
  protoOf(AbstractDecoder).k48 = function (descriptor, index) {
    return this.v47();
  };
  protoOf(AbstractDecoder).l48 = function (descriptor, index) {
    return this.w47();
  };
  protoOf(AbstractDecoder).m48 = function (descriptor, index) {
    return this.x47();
  };
  protoOf(AbstractDecoder).n48 = function (descriptor, index) {
    return this.y47();
  };
  protoOf(AbstractDecoder).o48 = function (descriptor, index) {
    return this.z47();
  };
  protoOf(AbstractDecoder).p48 = function (descriptor, index) {
    return this.a48();
  };
  protoOf(AbstractDecoder).q48 = function (descriptor, index) {
    return this.b48();
  };
  protoOf(AbstractDecoder).r48 = function (descriptor, index) {
    return this.c48();
  };
  protoOf(AbstractDecoder).s48 = function (descriptor, index) {
    return this.d48();
  };
  protoOf(AbstractDecoder).t48 = function (descriptor, index) {
    return this.f48(descriptor.k46(index));
  };
  protoOf(AbstractDecoder).u48 = function (descriptor, index, deserializer, previousValue) {
    return this.g48(deserializer, previousValue);
  };
  protoOf(AbstractDecoder).w48 = function (descriptor, index, deserializer, previousValue) {
    // Inline function 'kotlinx.serialization.encoding.decodeIfNullable' call
    var isNullabilitySupported = deserializer.q44().b46();
    var tmp;
    if (isNullabilitySupported ? true : this.t47()) {
      // Inline function 'kotlinx.serialization.encoding.AbstractDecoder.decodeNullableSerializableElement.<anonymous>' call
      tmp = this.g48(deserializer, previousValue);
    } else {
      tmp = this.u47();
    }
    return tmp;
  };
  function AbstractEncoder() {
  }
  protoOf(AbstractEncoder).i48 = function (descriptor) {
    return this;
  };
  protoOf(AbstractEncoder).j48 = function (descriptor) {
  };
  protoOf(AbstractEncoder).a49 = function (descriptor, index) {
    return true;
  };
  protoOf(AbstractEncoder).b49 = function (value) {
    throw SerializationException_init_$Create$_0('Non-serializable ' + getKClassFromExpression(value) + ' is not supported by ' + getKClassFromExpression(this) + ' encoder');
  };
  protoOf(AbstractEncoder).c49 = function () {
    throw SerializationException_init_$Create$_0("'null' is not supported by default");
  };
  protoOf(AbstractEncoder).d49 = function (value) {
    return this.b49(value);
  };
  protoOf(AbstractEncoder).e49 = function (value) {
    return this.b49(value);
  };
  protoOf(AbstractEncoder).f49 = function (value) {
    return this.b49(value);
  };
  protoOf(AbstractEncoder).g49 = function (value) {
    return this.b49(value);
  };
  protoOf(AbstractEncoder).h49 = function (value) {
    return this.b49(value);
  };
  protoOf(AbstractEncoder).i49 = function (value) {
    return this.b49(value);
  };
  protoOf(AbstractEncoder).j49 = function (value) {
    return this.b49(value);
  };
  protoOf(AbstractEncoder).k49 = function (value) {
    return this.b49(new Char(value));
  };
  protoOf(AbstractEncoder).l49 = function (value) {
    return this.b49(value);
  };
  protoOf(AbstractEncoder).m49 = function (enumDescriptor, index) {
    return this.b49(index);
  };
  protoOf(AbstractEncoder).n49 = function (descriptor) {
    return this;
  };
  protoOf(AbstractEncoder).o49 = function (descriptor, index, value) {
    if (this.a49(descriptor, index)) {
      this.d49(value);
    }
  };
  protoOf(AbstractEncoder).p49 = function (descriptor, index, value) {
    if (this.a49(descriptor, index)) {
      this.e49(value);
    }
  };
  protoOf(AbstractEncoder).q49 = function (descriptor, index, value) {
    if (this.a49(descriptor, index)) {
      this.f49(value);
    }
  };
  protoOf(AbstractEncoder).r49 = function (descriptor, index, value) {
    if (this.a49(descriptor, index)) {
      this.g49(value);
    }
  };
  protoOf(AbstractEncoder).s49 = function (descriptor, index, value) {
    if (this.a49(descriptor, index)) {
      this.h49(value);
    }
  };
  protoOf(AbstractEncoder).t49 = function (descriptor, index, value) {
    if (this.a49(descriptor, index)) {
      this.i49(value);
    }
  };
  protoOf(AbstractEncoder).u49 = function (descriptor, index, value) {
    if (this.a49(descriptor, index)) {
      this.j49(value);
    }
  };
  protoOf(AbstractEncoder).v49 = function (descriptor, index, value) {
    if (this.a49(descriptor, index)) {
      this.k49(value);
    }
  };
  protoOf(AbstractEncoder).w49 = function (descriptor, index, value) {
    if (this.a49(descriptor, index)) {
      this.l49(value);
    }
  };
  protoOf(AbstractEncoder).x49 = function (descriptor, index) {
    return this.a49(descriptor, index) ? this.n49(descriptor.k46(index)) : NoOpEncoder_getInstance();
  };
  protoOf(AbstractEncoder).y49 = function (descriptor, index, serializer, value) {
    if (this.a49(descriptor, index)) {
      this.z49(serializer, value);
    }
  };
  protoOf(AbstractEncoder).a4a = function (descriptor, index, serializer, value) {
    if (this.a49(descriptor, index)) {
      this.b4a(serializer, value);
    }
  };
  function Decoder() {
  }
  function Companion() {
    this.f4a_1 = -1;
    this.g4a_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.s48($this.q44(), 0);
    var serializer = findPolymorphicSerializer_0($this, compositeDecoder, klassName);
    return compositeDecoder.v48($this.q44(), 1, serializer);
  }
  function AbstractPolymorphicSerializer() {
  }
  protoOf(AbstractPolymorphicSerializer).g45 = function (encoder, value) {
    var actualSerializer = findPolymorphicSerializer(this, encoder, value);
    // Inline function 'kotlinx.serialization.encoding.encodeStructure' call
    var descriptor = this.q44();
    var composite = encoder.i48(descriptor);
    // Inline function 'kotlinx.serialization.internal.AbstractPolymorphicSerializer.serialize.<anonymous>' call
    composite.w49(this.q44(), 0, actualSerializer.q44().q45());
    var tmp = this.q44();
    // Inline function 'kotlinx.serialization.internal.cast' call
    var tmp$ret$0 = isInterface(actualSerializer, SerializationStrategy) ? actualSerializer : THROW_CCE();
    composite.y49(tmp, 1, tmp$ret$0, value);
    composite.j48(descriptor);
  };
  protoOf(AbstractPolymorphicSerializer).r44 = function (encoder, value) {
    return this.g45(encoder, !(value == null) ? value : THROW_CCE());
  };
  protoOf(AbstractPolymorphicSerializer).s44 = function (decoder) {
    // Inline function 'kotlinx.serialization.encoding.decodeStructure' call
    var descriptor = this.q44();
    var composite = decoder.i48(descriptor);
    var tmp$ret$0;
    $l$block: {
      // Inline function 'kotlinx.serialization.internal.AbstractPolymorphicSerializer.deserialize.<anonymous>' call
      var klassName = null;
      var value = null;
      if (composite.x48()) {
        tmp$ret$0 = decodeSequentially_0(this, composite);
        break $l$block;
      }
      mainLoop: while (true) {
        var index = composite.y48(this.q44());
        if (index === -1) {
          break mainLoop;
        } else {
          if (index === 0) {
            klassName = composite.s48(this.q44(), 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.v48(this.q44(), 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.j48(descriptor);
    return result;
  };
  protoOf(AbstractPolymorphicSerializer).h45 = function (decoder, klassName) {
    return decoder.t45().h4a(this.f45(), klassName);
  };
  protoOf(AbstractPolymorphicSerializer).i45 = function (encoder, value) {
    return encoder.t45().i4a(this.f45(), 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.j4a_1 = NothingSerialDescriptor_getInstance();
  }
  protoOf(NothingSerializer_0).q44 = function () {
    return this.j4a_1;
  };
  protoOf(NothingSerializer_0).k4a = function (encoder, value) {
    throw SerializationException_init_$Create$_0("'kotlin.Nothing' cannot be serialized");
  };
  protoOf(NothingSerializer_0).r44 = function (encoder, value) {
    var tmp;
    if (false) {
      tmp = value;
    } else {
      tmp = THROW_CCE();
    }
    return this.k4a(encoder, tmp);
  };
  protoOf(NothingSerializer_0).s44 = 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.l4a_1 = new PrimitiveSerialDescriptor_0('kotlin.time.Duration', STRING_getInstance());
  }
  protoOf(DurationSerializer).q44 = function () {
    return this.l4a_1;
  };
  protoOf(DurationSerializer).m4a = function (encoder, value) {
    encoder.l49(Duration__toIsoString_impl_9h6wsm(value));
  };
  protoOf(DurationSerializer).r44 = function (encoder, value) {
    return this.m4a(encoder, value instanceof Duration ? value.km_1 : THROW_CCE());
  };
  protoOf(DurationSerializer).n4a = function (decoder) {
    return Companion_getInstance().jm(decoder.d48());
  };
  protoOf(DurationSerializer).s44 = function (decoder) {
    return new Duration(this.n4a(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).q45 = function () {
    return 'kotlin.collections.ArrayList';
  };
  function HashSetClassDesc(elementDesc) {
    ListLikeDescriptor.call(this, elementDesc);
  }
  protoOf(HashSetClassDesc).q45 = function () {
    return 'kotlin.collections.HashSet';
  };
  function LinkedHashSetClassDesc(elementDesc) {
    ListLikeDescriptor.call(this, elementDesc);
  }
  protoOf(LinkedHashSetClassDesc).q45 = 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).q45 = function () {
    return 'kotlin.Array';
  };
  function ListLikeDescriptor(elementDescriptor) {
    this.q4a_1 = elementDescriptor;
    this.r4a_1 = 1;
  }
  protoOf(ListLikeDescriptor).i46 = function () {
    return LIST_getInstance();
  };
  protoOf(ListLikeDescriptor).g46 = function () {
    return this.r4a_1;
  };
  protoOf(ListLikeDescriptor).m46 = function (index) {
    return index.toString();
  };
  protoOf(ListLikeDescriptor).l46 = 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).n46 = 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.q45() + ' expects only non-negative indices';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    return false;
  };
  protoOf(ListLikeDescriptor).j46 = 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.q45() + ' expects only non-negative indices';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    return emptyList();
  };
  protoOf(ListLikeDescriptor).k46 = 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.q45() + ' expects only non-negative indices';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    return this.q4a_1;
  };
  protoOf(ListLikeDescriptor).equals = function (other) {
    if (this === other)
      return true;
    if (!(other instanceof ListLikeDescriptor))
      return false;
    if (equals(this.q4a_1, other.q4a_1) ? this.q45() === other.q45() : false)
      return true;
    return false;
  };
  protoOf(ListLikeDescriptor).hashCode = function () {
    return imul(hashCode(this.q4a_1), 31) + getStringHashCode(this.q45()) | 0;
  };
  protoOf(ListLikeDescriptor).toString = function () {
    return this.q45() + '(' + this.q4a_1 + ')';
  };
  function MapLikeDescriptor(serialName, keyDescriptor, valueDescriptor) {
    this.w4a_1 = serialName;
    this.x4a_1 = keyDescriptor;
    this.y4a_1 = valueDescriptor;
    this.z4a_1 = 2;
  }
  protoOf(MapLikeDescriptor).q45 = function () {
    return this.w4a_1;
  };
  protoOf(MapLikeDescriptor).i46 = function () {
    return MAP_getInstance();
  };
  protoOf(MapLikeDescriptor).g46 = function () {
    return this.z4a_1;
  };
  protoOf(MapLikeDescriptor).m46 = function (index) {
    return index.toString();
  };
  protoOf(MapLikeDescriptor).l46 = 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).n46 = 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.q45() + ' expects only non-negative indices';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    return false;
  };
  protoOf(MapLikeDescriptor).j46 = 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.q45() + ' expects only non-negative indices';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    return emptyList();
  };
  protoOf(MapLikeDescriptor).k46 = 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.q45() + ' expects only non-negative indices';
      throw IllegalArgumentException_init_$Create$(toString(message));
    }
    var tmp;
    switch (index % 2 | 0) {
      case 0:
        tmp = this.x4a_1;
        break;
      case 1:
        tmp = this.y4a_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.q45() === other.q45()))
      return false;
    if (!equals(this.x4a_1, other.x4a_1))
      return false;
    if (!equals(this.y4a_1, other.y4a_1))
      return false;
    return true;
  };
  protoOf(MapLikeDescriptor).hashCode = function () {
    var result = getStringHashCode(this.q45());
    result = imul(31, result) + hashCode(this.x4a_1) | 0;
    result = imul(31, result) + hashCode(this.y4a_1) | 0;
    return result;
  };
  protoOf(MapLikeDescriptor).toString = function () {
    return this.q45() + '(' + this.x4a_1 + ', ' + this.y4a_1 + ')';
  };
  function PrimitiveArrayDescriptor(primitive) {
    ListLikeDescriptor.call(this, primitive);
    this.e4b_1 = primitive.q45() + 'Array';
  }
  protoOf(PrimitiveArrayDescriptor).q45 = function () {
    return this.e4b_1;
  };
  function ArrayListSerializer(element) {
    CollectionSerializer.call(this, element);
    this.g4b_1 = new ArrayListClassDesc(element.q44());
  }
  protoOf(ArrayListSerializer).q44 = function () {
    return this.g4b_1;
  };
  protoOf(ArrayListSerializer).h4b = function () {
    // Inline function 'kotlin.collections.arrayListOf' call
    return ArrayList_init_$Create$_0();
  };
  protoOf(ArrayListSerializer).i4b = function (_this__u8e3s4) {
    return _this__u8e3s4.u();
  };
  protoOf(ArrayListSerializer).j4b = function (_this__u8e3s4) {
    return this.i4b(_this__u8e3s4 instanceof ArrayList ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ArrayListSerializer).k4b = function (_this__u8e3s4) {
    return _this__u8e3s4;
  };
  protoOf(ArrayListSerializer).l4b = function (_this__u8e3s4) {
    return this.k4b(_this__u8e3s4 instanceof ArrayList ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ArrayListSerializer).m4b = 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).n4b = function (_this__u8e3s4) {
    return this.m4b((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, List) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ArrayListSerializer).o4b = function (_this__u8e3s4, size) {
    return _this__u8e3s4.g3(size);
  };
  protoOf(ArrayListSerializer).p4b = function (_this__u8e3s4, size) {
    return this.o4b(_this__u8e3s4 instanceof ArrayList ? _this__u8e3s4 : THROW_CCE(), size);
  };
  protoOf(ArrayListSerializer).q4b = function (_this__u8e3s4, index, element) {
    _this__u8e3s4.c2(index, element);
  };
  protoOf(ArrayListSerializer).r4b = function (_this__u8e3s4, index, element) {
    var tmp = _this__u8e3s4 instanceof ArrayList ? _this__u8e3s4 : THROW_CCE();
    return this.q4b(tmp, index, (element == null ? true : !(element == null)) ? element : THROW_CCE());
  };
  function HashSetSerializer(eSerializer) {
    CollectionSerializer.call(this, eSerializer);
    this.c4c_1 = new HashSetClassDesc(eSerializer.q44());
  }
  protoOf(HashSetSerializer).q44 = function () {
    return this.c4c_1;
  };
  protoOf(HashSetSerializer).h4b = function () {
    return HashSet_init_$Create$();
  };
  protoOf(HashSetSerializer).d4c = function (_this__u8e3s4) {
    return _this__u8e3s4.u();
  };
  protoOf(HashSetSerializer).j4b = function (_this__u8e3s4) {
    return this.d4c(_this__u8e3s4 instanceof HashSet ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(HashSetSerializer).e4c = function (_this__u8e3s4) {
    return _this__u8e3s4;
  };
  protoOf(HashSetSerializer).l4b = function (_this__u8e3s4) {
    return this.e4c(_this__u8e3s4 instanceof HashSet ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(HashSetSerializer).f4c = 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).n4b = function (_this__u8e3s4) {
    return this.f4c((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Set) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(HashSetSerializer).g4c = function (_this__u8e3s4, size) {
  };
  protoOf(HashSetSerializer).p4b = function (_this__u8e3s4, size) {
    return this.g4c(_this__u8e3s4 instanceof HashSet ? _this__u8e3s4 : THROW_CCE(), size);
  };
  protoOf(HashSetSerializer).h4c = function (_this__u8e3s4, index, element) {
    _this__u8e3s4.i1(element);
  };
  protoOf(HashSetSerializer).r4b = function (_this__u8e3s4, index, element) {
    var tmp = _this__u8e3s4 instanceof HashSet ? _this__u8e3s4 : THROW_CCE();
    return this.h4c(tmp, index, (element == null ? true : !(element == null)) ? element : THROW_CCE());
  };
  function LinkedHashSetSerializer(eSerializer) {
    CollectionSerializer.call(this, eSerializer);
    this.j4c_1 = new LinkedHashSetClassDesc(eSerializer.q44());
  }
  protoOf(LinkedHashSetSerializer).q44 = function () {
    return this.j4c_1;
  };
  protoOf(LinkedHashSetSerializer).h4b = function () {
    // Inline function 'kotlin.collections.linkedSetOf' call
    return LinkedHashSet_init_$Create$();
  };
  protoOf(LinkedHashSetSerializer).k4c = function (_this__u8e3s4) {
    return _this__u8e3s4.u();
  };
  protoOf(LinkedHashSetSerializer).j4b = function (_this__u8e3s4) {
    return this.k4c(_this__u8e3s4 instanceof LinkedHashSet ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LinkedHashSetSerializer).l4c = function (_this__u8e3s4) {
    return _this__u8e3s4;
  };
  protoOf(LinkedHashSetSerializer).l4b = function (_this__u8e3s4) {
    return this.l4c(_this__u8e3s4 instanceof LinkedHashSet ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LinkedHashSetSerializer).f4c = 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).n4b = function (_this__u8e3s4) {
    return this.f4c((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Set) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LinkedHashSetSerializer).m4c = function (_this__u8e3s4, size) {
  };
  protoOf(LinkedHashSetSerializer).p4b = function (_this__u8e3s4, size) {
    return this.m4c(_this__u8e3s4 instanceof LinkedHashSet ? _this__u8e3s4 : THROW_CCE(), size);
  };
  protoOf(LinkedHashSetSerializer).n4c = function (_this__u8e3s4, index, element) {
    _this__u8e3s4.i1(element);
  };
  protoOf(LinkedHashSetSerializer).r4b = function (_this__u8e3s4, index, element) {
    var tmp = _this__u8e3s4 instanceof LinkedHashSet ? _this__u8e3s4 : THROW_CCE();
    return this.n4c(tmp, index, (element == null ? true : !(element == null)) ? element : THROW_CCE());
  };
  function HashMapSerializer(kSerializer, vSerializer) {
    MapLikeSerializer.call(this, kSerializer, vSerializer);
    this.q4c_1 = new HashMapClassDesc(kSerializer.q44(), vSerializer.q44());
  }
  protoOf(HashMapSerializer).q44 = function () {
    return this.q4c_1;
  };
  protoOf(HashMapSerializer).r4c = function (_this__u8e3s4) {
    return _this__u8e3s4.u();
  };
  protoOf(HashMapSerializer).s4c = function (_this__u8e3s4) {
    return this.r4c((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Map) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(HashMapSerializer).t4c = function (_this__u8e3s4) {
    // Inline function 'kotlin.collections.iterator' call
    return _this__u8e3s4.q2().w();
  };
  protoOf(HashMapSerializer).u4c = function (_this__u8e3s4) {
    return this.t4c((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Map) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(HashMapSerializer).h4b = function () {
    return HashMap_init_$Create$();
  };
  protoOf(HashMapSerializer).v4c = function (_this__u8e3s4) {
    return imul(_this__u8e3s4.u(), 2);
  };
  protoOf(HashMapSerializer).j4b = function (_this__u8e3s4) {
    return this.v4c(_this__u8e3s4 instanceof HashMap ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(HashMapSerializer).w4c = function (_this__u8e3s4) {
    return _this__u8e3s4;
  };
  protoOf(HashMapSerializer).l4b = function (_this__u8e3s4) {
    return this.w4c(_this__u8e3s4 instanceof HashMap ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(HashMapSerializer).x4c = 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).n4b = function (_this__u8e3s4) {
    return this.x4c((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Map) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(HashMapSerializer).y4c = function (_this__u8e3s4, size) {
  };
  protoOf(HashMapSerializer).p4b = function (_this__u8e3s4, size) {
    return this.y4c(_this__u8e3s4 instanceof HashMap ? _this__u8e3s4 : THROW_CCE(), size);
  };
  function LinkedHashMapSerializer(kSerializer, vSerializer) {
    MapLikeSerializer.call(this, kSerializer, vSerializer);
    this.f4d_1 = new LinkedHashMapClassDesc(kSerializer.q44(), vSerializer.q44());
  }
  protoOf(LinkedHashMapSerializer).q44 = function () {
    return this.f4d_1;
  };
  protoOf(LinkedHashMapSerializer).r4c = function (_this__u8e3s4) {
    return _this__u8e3s4.u();
  };
  protoOf(LinkedHashMapSerializer).s4c = function (_this__u8e3s4) {
    return this.r4c((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Map) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LinkedHashMapSerializer).t4c = function (_this__u8e3s4) {
    // Inline function 'kotlin.collections.iterator' call
    return _this__u8e3s4.q2().w();
  };
  protoOf(LinkedHashMapSerializer).u4c = function (_this__u8e3s4) {
    return this.t4c((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Map) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LinkedHashMapSerializer).h4b = function () {
    return LinkedHashMap_init_$Create$();
  };
  protoOf(LinkedHashMapSerializer).g4d = function (_this__u8e3s4) {
    return imul(_this__u8e3s4.u(), 2);
  };
  protoOf(LinkedHashMapSerializer).j4b = function (_this__u8e3s4) {
    return this.g4d(_this__u8e3s4 instanceof LinkedHashMap ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LinkedHashMapSerializer).h4d = function (_this__u8e3s4) {
    return _this__u8e3s4;
  };
  protoOf(LinkedHashMapSerializer).l4b = function (_this__u8e3s4) {
    return this.h4d(_this__u8e3s4 instanceof LinkedHashMap ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LinkedHashMapSerializer).x4c = 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).n4b = function (_this__u8e3s4) {
    return this.x4c((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Map) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LinkedHashMapSerializer).i4d = function (_this__u8e3s4, size) {
  };
  protoOf(LinkedHashMapSerializer).p4b = function (_this__u8e3s4, size) {
    return this.i4d(_this__u8e3s4 instanceof LinkedHashMap ? _this__u8e3s4 : THROW_CCE(), size);
  };
  function ReferenceArraySerializer(kClass, eSerializer) {
    CollectionLikeSerializer.call(this, eSerializer);
    this.k4d_1 = kClass;
    this.l4d_1 = new ArrayClassDesc(eSerializer.q44());
  }
  protoOf(ReferenceArraySerializer).q44 = function () {
    return this.l4d_1;
  };
  protoOf(ReferenceArraySerializer).m4d = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(ReferenceArraySerializer).s4c = function (_this__u8e3s4) {
    return this.m4d((!(_this__u8e3s4 == null) ? isArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ReferenceArraySerializer).n4d = function (_this__u8e3s4) {
    return arrayIterator(_this__u8e3s4);
  };
  protoOf(ReferenceArraySerializer).u4c = function (_this__u8e3s4) {
    return this.n4d((!(_this__u8e3s4 == null) ? isArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ReferenceArraySerializer).h4b = function () {
    // Inline function 'kotlin.collections.arrayListOf' call
    return ArrayList_init_$Create$_0();
  };
  protoOf(ReferenceArraySerializer).o4d = function (_this__u8e3s4) {
    return _this__u8e3s4.u();
  };
  protoOf(ReferenceArraySerializer).j4b = function (_this__u8e3s4) {
    return this.o4d(_this__u8e3s4 instanceof ArrayList ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ReferenceArraySerializer).p4d = function (_this__u8e3s4) {
    return toNativeArrayImpl(_this__u8e3s4, this.k4d_1);
  };
  protoOf(ReferenceArraySerializer).l4b = function (_this__u8e3s4) {
    return this.p4d(_this__u8e3s4 instanceof ArrayList ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ReferenceArraySerializer).q4d = function (_this__u8e3s4) {
    return ArrayList_init_$Create$_1(asList(_this__u8e3s4));
  };
  protoOf(ReferenceArraySerializer).n4b = function (_this__u8e3s4) {
    return this.q4d((!(_this__u8e3s4 == null) ? isArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ReferenceArraySerializer).r4d = function (_this__u8e3s4, size) {
    return _this__u8e3s4.g3(size);
  };
  protoOf(ReferenceArraySerializer).p4b = function (_this__u8e3s4, size) {
    return this.r4d(_this__u8e3s4 instanceof ArrayList ? _this__u8e3s4 : THROW_CCE(), size);
  };
  protoOf(ReferenceArraySerializer).s4d = function (_this__u8e3s4, index, element) {
    _this__u8e3s4.c2(index, element);
  };
  protoOf(ReferenceArraySerializer).r4b = function (_this__u8e3s4, index, element) {
    var tmp = _this__u8e3s4 instanceof ArrayList ? _this__u8e3s4 : THROW_CCE();
    return this.s4d(tmp, index, (element == null ? true : !(element == null)) ? element : THROW_CCE());
  };
  function CollectionSerializer(element) {
    CollectionLikeSerializer.call(this, element);
  }
  protoOf(CollectionSerializer).t4b = function (_this__u8e3s4) {
    return _this__u8e3s4.u();
  };
  protoOf(CollectionSerializer).s4c = function (_this__u8e3s4) {
    return this.t4b((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Collection) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(CollectionSerializer).u4b = function (_this__u8e3s4) {
    return _this__u8e3s4.w();
  };
  protoOf(CollectionSerializer).u4c = function (_this__u8e3s4) {
    return this.u4b((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Collection) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  function MapLikeSerializer(keySerializer, valueSerializer) {
    AbstractCollectionSerializer.call(this);
    this.z4c_1 = keySerializer;
    this.a4d_1 = valueSerializer;
  }
  protoOf(MapLikeSerializer).b4d = 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.c4d(decoder, startIndex + index | 0, builder, false);
      }
       while (!(index === last));
  };
  protoOf(MapLikeSerializer).x4b = function (decoder, builder, startIndex, size) {
    return this.b4d(decoder, (!(builder == null) ? isInterface(builder, MutableMap) : false) ? builder : THROW_CCE(), startIndex, size);
  };
  protoOf(MapLikeSerializer).c4d = function (decoder, index, builder, checkIndex) {
    var key = decoder.v48(this.q44(), index, this.z4c_1);
    var tmp;
    if (checkIndex) {
      // Inline function 'kotlin.also' call
      var this_0 = decoder.y48(this.q44());
      // 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.a4d_1.q44().i46();
      tmp_1 = !(tmp_2 instanceof PrimitiveKind);
    } else {
      tmp_1 = false;
    }
    if (tmp_1) {
      tmp_0 = decoder.u48(this.q44(), vIndex, this.a4d_1, getValue(builder, key));
    } else {
      tmp_0 = decoder.v48(this.q44(), vIndex, this.a4d_1);
    }
    var value = tmp_0;
    // Inline function 'kotlin.collections.set' call
    builder.s(key, value);
  };
  protoOf(MapLikeSerializer).y4b = function (decoder, index, builder, checkIndex) {
    return this.c4d(decoder, index, (!(builder == null) ? isInterface(builder, MutableMap) : false) ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(MapLikeSerializer).w4b = function (encoder, value) {
    var size = this.s4c(value);
    // Inline function 'kotlinx.serialization.encoding.encodeCollection' call
    var descriptor = this.q44();
    var composite = encoder.d4a(descriptor, size);
    // Inline function 'kotlinx.serialization.internal.MapLikeSerializer.serialize.<anonymous>' call
    var iterator = this.u4c(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.q44();
      var tmp0 = index;
      index = tmp0 + 1 | 0;
      composite.y49(tmp, tmp0, this.z4c_1, k);
      var tmp_0 = this.q44();
      var tmp1 = index;
      index = tmp1 + 1 | 0;
      composite.y49(tmp_0, tmp1, this.a4d_1, v);
    }
    composite.j48(descriptor);
  };
  protoOf(MapLikeSerializer).r44 = function (encoder, value) {
    return this.w4b(encoder, (value == null ? true : !(value == null)) ? value : THROW_CCE());
  };
  function CollectionLikeSerializer(elementSerializer) {
    AbstractCollectionSerializer.call(this);
    this.v4b_1 = elementSerializer;
  }
  protoOf(CollectionLikeSerializer).w4b = function (encoder, value) {
    var size = this.s4c(value);
    // Inline function 'kotlinx.serialization.encoding.encodeCollection' call
    var descriptor = this.q44();
    var composite = encoder.d4a(descriptor, size);
    // Inline function 'kotlinx.serialization.internal.CollectionLikeSerializer.serialize.<anonymous>' call
    var iterator = this.u4c(value);
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var index = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        composite.y49(this.q44(), index, this.v4b_1, iterator.e());
      }
       while (inductionVariable < size);
    composite.j48(descriptor);
  };
  protoOf(CollectionLikeSerializer).r44 = function (encoder, value) {
    return this.w4b(encoder, (value == null ? true : !(value == null)) ? value : THROW_CCE());
  };
  protoOf(CollectionLikeSerializer).x4b = 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.y4b(decoder, startIndex + index | 0, builder, false);
      }
       while (inductionVariable < size);
  };
  protoOf(CollectionLikeSerializer).y4b = function (decoder, index, builder, checkIndex) {
    this.r4b(builder, index, decoder.v48(this.q44(), index, this.v4b_1));
  };
  function readSize($this, decoder, builder) {
    var size = decoder.z48($this.q44());
    $this.p4b(builder, size);
    return size;
  }
  function AbstractCollectionSerializer() {
  }
  protoOf(AbstractCollectionSerializer).a4c = function (decoder, previous) {
    var tmp1_elvis_lhs = previous == null ? null : this.n4b(previous);
    var builder = tmp1_elvis_lhs == null ? this.h4b() : tmp1_elvis_lhs;
    var startIndex = this.j4b(builder);
    var compositeDecoder = decoder.i48(this.q44());
    if (compositeDecoder.x48()) {
      this.x4b(compositeDecoder, builder, startIndex, readSize(this, compositeDecoder, builder));
    } else {
      $l$loop: while (true) {
        var index = compositeDecoder.y48(this.q44());
        if (index === -1)
          break $l$loop;
        this.z4b(compositeDecoder, startIndex + index | 0, builder);
      }
    }
    compositeDecoder.j48(this.q44());
    return this.l4b(builder);
  };
  protoOf(AbstractCollectionSerializer).s44 = function (decoder) {
    return this.a4c(decoder, null);
  };
  protoOf(AbstractCollectionSerializer).z4b = function (decoder, index, builder, checkIndex, $super) {
    checkIndex = checkIndex === VOID ? true : checkIndex;
    var tmp;
    if ($super === VOID) {
      this.y4b(decoder, index, builder, checkIndex);
      tmp = Unit_instance;
    } else {
      tmp = $super.y4b.call(this, decoder, index, builder, checkIndex);
    }
    return tmp;
  };
  function PrimitiveArraySerializer(primitiveSerializer) {
    CollectionLikeSerializer.call(this, primitiveSerializer);
    this.u4d_1 = new PrimitiveArrayDescriptor(primitiveSerializer.q44());
  }
  protoOf(PrimitiveArraySerializer).q44 = function () {
    return this.u4d_1;
  };
  protoOf(PrimitiveArraySerializer).v4d = function (_this__u8e3s4) {
    return _this__u8e3s4.w4d();
  };
  protoOf(PrimitiveArraySerializer).j4b = function (_this__u8e3s4) {
    return this.v4d(_this__u8e3s4 instanceof PrimitiveArrayBuilder ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(PrimitiveArraySerializer).x4d = function (_this__u8e3s4) {
    return _this__u8e3s4.f3();
  };
  protoOf(PrimitiveArraySerializer).l4b = function (_this__u8e3s4) {
    return this.x4d(_this__u8e3s4 instanceof PrimitiveArrayBuilder ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(PrimitiveArraySerializer).y4d = function (_this__u8e3s4, size) {
    return _this__u8e3s4.g3(size);
  };
  protoOf(PrimitiveArraySerializer).p4b = function (_this__u8e3s4, size) {
    return this.y4d(_this__u8e3s4 instanceof PrimitiveArrayBuilder ? _this__u8e3s4 : THROW_CCE(), size);
  };
  protoOf(PrimitiveArraySerializer).z4d = 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).u4c = function (_this__u8e3s4) {
    return this.z4d((_this__u8e3s4 == null ? true : !(_this__u8e3s4 == null)) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(PrimitiveArraySerializer).a4e = 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).r4b = function (_this__u8e3s4, index, element) {
    var tmp = _this__u8e3s4 instanceof PrimitiveArrayBuilder ? _this__u8e3s4 : THROW_CCE();
    return this.a4e(tmp, index, (element == null ? true : !(element == null)) ? element : THROW_CCE());
  };
  protoOf(PrimitiveArraySerializer).h4b = function () {
    return this.n4b(this.b4e());
  };
  protoOf(PrimitiveArraySerializer).e4e = function (encoder, value) {
    var size = this.s4c(value);
    // Inline function 'kotlinx.serialization.encoding.encodeCollection' call
    var descriptor = this.u4d_1;
    var composite = encoder.d4a(descriptor, size);
    // Inline function 'kotlinx.serialization.internal.PrimitiveArraySerializer.serialize.<anonymous>' call
    this.d4e(composite, value, size);
    composite.j48(descriptor);
  };
  protoOf(PrimitiveArraySerializer).r44 = function (encoder, value) {
    return this.e4e(encoder, (value == null ? true : !(value == null)) ? value : THROW_CCE());
  };
  protoOf(PrimitiveArraySerializer).w4b = function (encoder, value) {
    return this.e4e(encoder, (value == null ? true : !(value == null)) ? value : THROW_CCE());
  };
  protoOf(PrimitiveArraySerializer).s44 = function (decoder) {
    return this.a4c(decoder, null);
  };
  function PrimitiveArrayBuilder() {
  }
  protoOf(PrimitiveArrayBuilder).f4e = function (requiredCapacity, $super) {
    requiredCapacity = requiredCapacity === VOID ? this.w4d() + 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.g4e_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.k4e_1[slot] = $this.k4e_1[slot].vc((new Long(1, 0)).rc(offsetInSlot));
  }
  function nextUnmarkedHighIndex($this) {
    var inductionVariable = 0;
    var last = $this.k4e_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.k4e_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.i4e_1($this.h4e_1, index)) {
            $this.k4e_1[slot] = slotMarks;
            return index;
          }
        }
        $this.k4e_1[slot] = slotMarks;
      }
       while (inductionVariable <= last);
    return -1;
  }
  function ElementMarker(descriptor, readIfAbsent) {
    Companion_getInstance_7();
    this.h4e_1 = descriptor;
    this.i4e_1 = readIfAbsent;
    var elementsCount = this.h4e_1.g46();
    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.j4e_1 = tmp_0;
      this.k4e_1 = Companion_getInstance_7().g4e_1;
    } else {
      this.j4e_1 = new Long(0, 0);
      this.k4e_1 = prepareHighMarksArray(this, elementsCount);
    }
  }
  protoOf(ElementMarker).l4e = function (index) {
    Companion_getInstance_0();
    if (index < 64) {
      this.j4e_1 = this.j4e_1.vc((new Long(1, 0)).rc(index));
    } else {
      markHigh(this, index);
    }
  };
  protoOf(ElementMarker).m4e = function () {
    var elementsCount = this.h4e_1.g46();
    while (!this.j4e_1.equals(new Long(-1, -1))) {
      var index = countTrailingZeroBits(this.j4e_1.qc());
      this.j4e_1 = this.j4e_1.vc((new Long(1, 0)).rc(index));
      if (this.i4e_1(this.h4e_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.n4e_1.length);
    // Inline function 'kotlin.collections.forEach' call
    var indexedObject = $this.n4e_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.c4f(element.ya_1);
    }
    return d;
  }
  function EnumSerializer$descriptor$delegate$lambda(this$0, $serialName) {
    return function () {
      var tmp0_elvis_lhs = this$0.o4e_1;
      return tmp0_elvis_lhs == null ? createUnmarkedDescriptor(this$0, $serialName) : tmp0_elvis_lhs;
    };
  }
  function EnumSerializer(serialName, values) {
    this.n4e_1 = values;
    this.o4e_1 = null;
    var tmp = this;
    tmp.p4e_1 = lazy_0(EnumSerializer$descriptor$delegate$lambda(this, serialName));
  }
  protoOf(EnumSerializer).q44 = function () {
    // Inline function 'kotlin.getValue' call
    var this_0 = this.p4e_1;
    descriptor$factory_1();
    return this_0.t2();
  };
  protoOf(EnumSerializer).d4f = function (encoder, value) {
    var index = indexOf(this.n4e_1, value);
    if (index === -1) {
      throw SerializationException_init_$Create$_0('' + value + ' is not a valid enum ' + this.q44().q45() + ', ' + ('must be one of ' + contentToString(this.n4e_1)));
    }
    encoder.m49(this.q44(), index);
  };
  protoOf(EnumSerializer).r44 = function (encoder, value) {
    return this.d4f(encoder, value instanceof Enum ? value : THROW_CCE());
  };
  protoOf(EnumSerializer).s44 = function (decoder) {
    var index = decoder.e48(this.q44());
    if (!(0 <= index ? index <= (this.n4e_1.length - 1 | 0) : false)) {
      throw SerializationException_init_$Create$_0('' + index + ' is not among valid ' + this.q44().q45() + ' enum values, ' + ('values size is ' + this.n4e_1.length));
    }
    return this.n4e_1[index];
  };
  protoOf(EnumSerializer).toString = function () {
    return 'kotlinx.serialization.internal.EnumSerializer<' + this.q44().q45() + '>';
  };
  function _get_elementDescriptors__y23q9p($this) {
    // Inline function 'kotlin.getValue' call
    var this_0 = $this.r4f_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.m46(tmp_2), OBJECT_getInstance(), []);
        tmp = tmp + 1 | 0;
      }
      return tmp_1;
    };
  }
  function EnumDescriptor(name, elementsCount) {
    PluginGeneratedSerialDescriptor.call(this, name, VOID, elementsCount);
    this.q4f_1 = ENUM_getInstance();
    var tmp = this;
    tmp.r4f_1 = lazy_0(EnumDescriptor$elementDescriptors$delegate$lambda(elementsCount, name, this));
  }
  protoOf(EnumDescriptor).i46 = function () {
    return this.q4f_1;
  };
  protoOf(EnumDescriptor).k46 = 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.i46() === ENUM_getInstance()))
      return false;
    if (!(this.q45() === other.q45()))
      return false;
    if (!equals(cachedSerialNames(this), cachedSerialNames(other)))
      return false;
    return true;
  };
  protoOf(EnumDescriptor).toString = function () {
    return joinToString(get_elementNames(this), ', ', this.q45() + '(', ')');
  };
  protoOf(EnumDescriptor).hashCode = function () {
    var result = getStringHashCode(this.q45());
    // 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.q44();
    }, 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.i4g_1 = true;
  }
  protoOf(InlineClassDescriptor).h46 = function () {
    return this.i4g_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.q45() === other.q45())) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      // Inline function 'kotlinx.serialization.internal.InlineClassDescriptor.equals.<anonymous>' call
      if (!(other.i4g_1 ? contentEquals(this.s4f(), other.s4f()) : false)) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      if (!(this.g46() === other.g46())) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      var inductionVariable = 0;
      var last = this.g46();
      if (inductionVariable < last)
        do {
          var index = inductionVariable;
          inductionVariable = inductionVariable + 1 | 0;
          if (!(this.k46(index).q45() === other.k46(index).q45())) {
            tmp$ret$0 = false;
            break $l$block_5;
          }
          if (!equals(this.k46(index).i46(), other.k46(index).i46())) {
            tmp$ret$0 = false;
            break $l$block_5;
          }
        }
         while (inductionVariable < last);
      tmp$ret$0 = true;
    }
    return tmp$ret$0;
  };
  function InlinePrimitiveDescriptor$1($primitiveSerializer) {
    this.j4g_1 = $primitiveSerializer;
  }
  protoOf(InlinePrimitiveDescriptor$1).k4g = function () {
    // Inline function 'kotlin.arrayOf' call
    // Inline function 'kotlin.js.unsafeCast' call
    // Inline function 'kotlin.js.asDynamic' call
    return [this.j4g_1];
  };
  protoOf(InlinePrimitiveDescriptor$1).q44 = function () {
    var message = 'unsupported';
    throw IllegalStateException_init_$Create$(toString(message));
  };
  protoOf(InlinePrimitiveDescriptor$1).r44 = function (encoder, value) {
    // Inline function 'kotlin.error' call
    var message = 'unsupported';
    throw IllegalStateException_init_$Create$(toString(message));
  };
  protoOf(InlinePrimitiveDescriptor$1).s44 = 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.m4g_1 = EmptySerializersModule_0();
  }
  protoOf(NoOpEncoder).t45 = function () {
    return this.m4g_1;
  };
  protoOf(NoOpEncoder).b49 = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).c49 = function () {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).d49 = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).e49 = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).f49 = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).g49 = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).h49 = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).i49 = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).j49 = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).k49 = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).l49 = function (value) {
    return Unit_instance;
  };
  protoOf(NoOpEncoder).m49 = 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.n4g_1 = OBJECT_getInstance();
    this.o4g_1 = 'kotlin.Nothing';
  }
  protoOf(NothingSerialDescriptor).i46 = function () {
    return this.n4g_1;
  };
  protoOf(NothingSerialDescriptor).q45 = function () {
    return this.o4g_1;
  };
  protoOf(NothingSerialDescriptor).g46 = function () {
    return 0;
  };
  protoOf(NothingSerialDescriptor).m46 = function (index) {
    error(this);
  };
  protoOf(NothingSerialDescriptor).l46 = function (name) {
    error(this);
  };
  protoOf(NothingSerialDescriptor).n46 = function (index) {
    error(this);
  };
  protoOf(NothingSerialDescriptor).k46 = function (index) {
    error(this);
  };
  protoOf(NothingSerialDescriptor).j46 = 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.o4g_1) + imul(31, this.n4g_1.hashCode()) | 0;
  };
  var NothingSerialDescriptor_instance;
  function NothingSerialDescriptor_getInstance() {
    if (NothingSerialDescriptor_instance == null)
      new NothingSerialDescriptor();
    return NothingSerialDescriptor_instance;
  }
  function NullableSerializer(serializer) {
    this.p4g_1 = serializer;
    this.q4g_1 = new SerialDescriptorForNullable(this.p4g_1.q44());
  }
  protoOf(NullableSerializer).q44 = function () {
    return this.q4g_1;
  };
  protoOf(NullableSerializer).r4g = function (encoder, value) {
    if (!(value == null)) {
      encoder.c4a();
      encoder.z49(this.p4g_1, value);
    } else {
      encoder.c49();
    }
  };
  protoOf(NullableSerializer).r44 = function (encoder, value) {
    return this.r4g(encoder, (value == null ? true : !(value == null)) ? value : THROW_CCE());
  };
  protoOf(NullableSerializer).s44 = function (decoder) {
    return decoder.t47() ? decoder.h48(this.p4g_1) : decoder.u47();
  };
  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.p4g_1, other.p4g_1))
      return false;
    return true;
  };
  protoOf(NullableSerializer).hashCode = function () {
    return hashCode(this.p4g_1);
  };
  function SerialDescriptorForNullable(original) {
    this.o46_1 = original;
    this.p46_1 = this.o46_1.q45() + '?';
    this.q46_1 = cachedSerialNames(this.o46_1);
  }
  protoOf(SerialDescriptorForNullable).f46 = function () {
    return this.o46_1.f46();
  };
  protoOf(SerialDescriptorForNullable).g46 = function () {
    return this.o46_1.g46();
  };
  protoOf(SerialDescriptorForNullable).h46 = function () {
    return this.o46_1.h46();
  };
  protoOf(SerialDescriptorForNullable).i46 = function () {
    return this.o46_1.i46();
  };
  protoOf(SerialDescriptorForNullable).j46 = function (index) {
    return this.o46_1.j46(index);
  };
  protoOf(SerialDescriptorForNullable).k46 = function (index) {
    return this.o46_1.k46(index);
  };
  protoOf(SerialDescriptorForNullable).l46 = function (name) {
    return this.o46_1.l46(name);
  };
  protoOf(SerialDescriptorForNullable).m46 = function (index) {
    return this.o46_1.m46(index);
  };
  protoOf(SerialDescriptorForNullable).n46 = function (index) {
    return this.o46_1.n46(index);
  };
  protoOf(SerialDescriptorForNullable).q45 = function () {
    return this.p46_1;
  };
  protoOf(SerialDescriptorForNullable).p47 = function () {
    return this.q46_1;
  };
  protoOf(SerialDescriptorForNullable).b46 = function () {
    return true;
  };
  protoOf(SerialDescriptorForNullable).equals = function (other) {
    if (this === other)
      return true;
    if (!(other instanceof SerialDescriptorForNullable))
      return false;
    if (!equals(this.o46_1, other.o46_1))
      return false;
    return true;
  };
  protoOf(SerialDescriptorForNullable).toString = function () {
    return '' + this.o46_1 + '?';
  };
  protoOf(SerialDescriptorForNullable).hashCode = function () {
    return imul(hashCode(this.o46_1), 31);
  };
  function ObjectSerializer$descriptor$delegate$lambda$lambda(this$0) {
    return function ($this$buildSerialDescriptor) {
      $this$buildSerialDescriptor.v44_1 = this$0.t4g_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.s4g_1 = objectInstance;
    this.t4g_1 = emptyList();
    var tmp = this;
    var tmp_0 = LazyThreadSafetyMode_PUBLICATION_getInstance();
    tmp.u4g_1 = lazy(tmp_0, ObjectSerializer$descriptor$delegate$lambda(serialName, this));
  }
  protoOf(ObjectSerializer).q44 = function () {
    // Inline function 'kotlin.getValue' call
    var this_0 = this.u4g_1;
    descriptor$factory_2();
    return this_0.t2();
  };
  protoOf(ObjectSerializer).g45 = function (encoder, value) {
    encoder.i48(this.q44()).j48(this.q44());
  };
  protoOf(ObjectSerializer).r44 = function (encoder, value) {
    return this.g45(encoder, !(value == null) ? value : THROW_CCE());
  };
  protoOf(ObjectSerializer).s44 = function (decoder) {
    // Inline function 'kotlinx.serialization.encoding.decodeStructure' call
    var descriptor = this.q44();
    var composite = decoder.i48(descriptor);
    var tmp$ret$0;
    $l$block_0: {
      // Inline function 'kotlinx.serialization.internal.ObjectSerializer.deserialize.<anonymous>' call
      if (composite.x48()) {
        tmp$ret$0 = Unit_instance;
        break $l$block_0;
      }
      var index = composite.y48(this.q44());
      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.j48(descriptor);
    return this.s4g_1;
  };
  function descriptor$factory_2() {
    return getPropertyCallableRef('descriptor', 1, KProperty1, function (receiver) {
      return receiver.q44();
    }, 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.p47();
    var result = HashSet_init_$Create$_1(_this__u8e3s4.g46());
    var inductionVariable = 0;
    var last = _this__u8e3s4.g46();
    if (inductionVariable < last)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        // Inline function 'kotlin.collections.plusAssign' call
        var element = _this__u8e3s4.m46(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.m46(i);
          missingFields.i1(element);
        }
        missingFieldsBits = missingFieldsBits >>> 1 | 0;
      }
       while (inductionVariable < 32);
    throw MissingFieldException_init_$Create$(missingFields, descriptor.q45());
  }
  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.m46(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.q45());
  }
  function _get_childSerializers__7vnyfa($this) {
    // Inline function 'kotlin.getValue' call
    var this_0 = $this.z4e_1;
    childSerializers$factory();
    return this_0.t2();
  }
  function _get__hashCode__tgwhef_0($this) {
    // Inline function 'kotlin.getValue' call
    var this_0 = $this.b4f_1;
    _hashCode$factory_0();
    return this_0.t2();
  }
  function buildIndices($this) {
    var indices = HashMap_init_$Create$();
    var inductionVariable = 0;
    var last = $this.u4e_1.length - 1 | 0;
    if (inductionVariable <= last)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        // Inline function 'kotlin.collections.set' call
        var key = $this.u4e_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.r4e_1;
      var tmp1_elvis_lhs = tmp0_safe_receiver == null ? null : tmp0_safe_receiver.k4g();
      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.r4e_1;
      var tmp1_safe_receiver = tmp0_safe_receiver == null ? null : tmp0_safe_receiver.l4g();
      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.q44();
          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.s4f());
    };
  }
  function PluginGeneratedSerialDescriptor$toString$lambda(this$0) {
    return function (i) {
      return this$0.m46(i) + ': ' + this$0.k46(i).q45();
    };
  }
  function PluginGeneratedSerialDescriptor(serialName, generatedSerializer, elementsCount) {
    generatedSerializer = generatedSerializer === VOID ? null : generatedSerializer;
    this.q4e_1 = serialName;
    this.r4e_1 = generatedSerializer;
    this.s4e_1 = elementsCount;
    this.t4e_1 = -1;
    var tmp = this;
    var tmp_0 = 0;
    var tmp_1 = this.s4e_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.u4e_1 = tmp_2;
    var tmp_3 = this;
    // Inline function 'kotlin.arrayOfNulls' call
    var size = this.s4e_1;
    tmp_3.v4e_1 = fillArrayVal(Array(size), null);
    this.w4e_1 = null;
    this.x4e_1 = booleanArray(this.s4e_1);
    this.y4e_1 = emptyMap();
    var tmp_4 = this;
    var tmp_5 = LazyThreadSafetyMode_PUBLICATION_getInstance();
    tmp_4.z4e_1 = lazy(tmp_5, PluginGeneratedSerialDescriptor$childSerializers$delegate$lambda(this));
    var tmp_6 = this;
    var tmp_7 = LazyThreadSafetyMode_PUBLICATION_getInstance();
    tmp_6.a4f_1 = lazy(tmp_7, PluginGeneratedSerialDescriptor$typeParameterDescriptors$delegate$lambda(this));
    var tmp_8 = this;
    var tmp_9 = LazyThreadSafetyMode_PUBLICATION_getInstance();
    tmp_8.b4f_1 = lazy(tmp_9, PluginGeneratedSerialDescriptor$_hashCode$delegate$lambda(this));
  }
  protoOf(PluginGeneratedSerialDescriptor).q45 = function () {
    return this.q4e_1;
  };
  protoOf(PluginGeneratedSerialDescriptor).g46 = function () {
    return this.s4e_1;
  };
  protoOf(PluginGeneratedSerialDescriptor).i46 = function () {
    return CLASS_getInstance();
  };
  protoOf(PluginGeneratedSerialDescriptor).f46 = function () {
    var tmp0_elvis_lhs = this.w4e_1;
    return tmp0_elvis_lhs == null ? emptyList() : tmp0_elvis_lhs;
  };
  protoOf(PluginGeneratedSerialDescriptor).p47 = function () {
    return this.y4e_1.o2();
  };
  protoOf(PluginGeneratedSerialDescriptor).s4f = function () {
    // Inline function 'kotlin.getValue' call
    var this_0 = this.a4f_1;
    typeParameterDescriptors$factory();
    return this_0.t2();
  };
  protoOf(PluginGeneratedSerialDescriptor).t4f = function (name, isOptional) {
    this.t4e_1 = this.t4e_1 + 1 | 0;
    this.u4e_1[this.t4e_1] = name;
    this.x4e_1[this.t4e_1] = isOptional;
    this.v4e_1[this.t4e_1] = null;
    if (this.t4e_1 === (this.s4e_1 - 1 | 0)) {
      this.y4e_1 = buildIndices(this);
    }
  };
  protoOf(PluginGeneratedSerialDescriptor).c4f = function (name, isOptional, $super) {
    isOptional = isOptional === VOID ? false : isOptional;
    var tmp;
    if ($super === VOID) {
      this.t4f(name, isOptional);
      tmp = Unit_instance;
    } else {
      tmp = $super.t4f.call(this, name, isOptional);
    }
    return tmp;
  };
  protoOf(PluginGeneratedSerialDescriptor).u4f = 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.v4e_1[this.t4e_1];
    var tmp;
    if (it == null) {
      var result = ArrayList_init_$Create$(1);
      this.v4e_1[this.t4e_1] = result;
      tmp = result;
    } else {
      tmp = it;
    }
    var list = tmp;
    list.i1(annotation);
  };
  protoOf(PluginGeneratedSerialDescriptor).v4f = function (a) {
    if (this.w4e_1 == null) {
      this.w4e_1 = ArrayList_init_$Create$(1);
    }
    ensureNotNull(this.w4e_1).i1(a);
  };
  protoOf(PluginGeneratedSerialDescriptor).k46 = function (index) {
    return getChecked(_get_childSerializers__7vnyfa(this), index).q44();
  };
  protoOf(PluginGeneratedSerialDescriptor).n46 = function (index) {
    return getChecked_0(this.x4e_1, index);
  };
  protoOf(PluginGeneratedSerialDescriptor).j46 = function (index) {
    var tmp0_elvis_lhs = getChecked(this.v4e_1, index);
    return tmp0_elvis_lhs == null ? emptyList() : tmp0_elvis_lhs;
  };
  protoOf(PluginGeneratedSerialDescriptor).m46 = function (index) {
    return getChecked(this.u4e_1, index);
  };
  protoOf(PluginGeneratedSerialDescriptor).l46 = function (name) {
    var tmp0_elvis_lhs = this.y4e_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.q45() === other.q45())) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      // Inline function 'kotlinx.serialization.internal.PluginGeneratedSerialDescriptor.equals.<anonymous>' call
      if (!contentEquals(this.s4f(), other.s4f())) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      if (!(this.g46() === other.g46())) {
        tmp$ret$0 = false;
        break $l$block_5;
      }
      var inductionVariable = 0;
      var last = this.g46();
      if (inductionVariable < last)
        do {
          var index = inductionVariable;
          inductionVariable = inductionVariable + 1 | 0;
          if (!(this.k46(index).q45() === other.k46(index).q45())) {
            tmp$ret$0 = false;
            break $l$block_5;
          }
          if (!equals(this.k46(index).i46(), other.k46(index).i46())) {
            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.s4e_1);
    var tmp_0 = this.q45() + '(';
    return joinToString(tmp, ', ', tmp_0, ')', VOID, VOID, PluginGeneratedSerialDescriptor$toString$lambda(this));
  };
  function hashCodeImpl(_this__u8e3s4, typeParams) {
    var result = getStringHashCode(_this__u8e3s4.q45());
    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.q45();
      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.i46();
      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.s4f();
    }, 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).y4g = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(CharArraySerializer_0).s4c = function (_this__u8e3s4) {
    return this.y4g((!(_this__u8e3s4 == null) ? isCharArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(CharArraySerializer_0).z4g = function (_this__u8e3s4) {
    return new CharArrayBuilder(_this__u8e3s4);
  };
  protoOf(CharArraySerializer_0).n4b = function (_this__u8e3s4) {
    return this.z4g((!(_this__u8e3s4 == null) ? isCharArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(CharArraySerializer_0).b4e = function () {
    return charArray(0);
  };
  protoOf(CharArraySerializer_0).a4h = function (decoder, index, builder, checkIndex) {
    builder.d4h(decoder.r48(this.u4d_1, index));
  };
  protoOf(CharArraySerializer_0).y4b = function (decoder, index, builder, checkIndex) {
    return this.a4h(decoder, index, builder instanceof CharArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(CharArraySerializer_0).c4e = function (decoder, index, builder, checkIndex) {
    return this.a4h(decoder, index, builder instanceof CharArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(CharArraySerializer_0).e4h = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        encoder.v49(this.u4d_1, i, content[i]);
      }
       while (inductionVariable < size);
  };
  protoOf(CharArraySerializer_0).d4e = function (encoder, content, size) {
    return this.e4h(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).h4h = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(DoubleArraySerializer_0).s4c = function (_this__u8e3s4) {
    return this.h4h((!(_this__u8e3s4 == null) ? isDoubleArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(DoubleArraySerializer_0).i4h = function (_this__u8e3s4) {
    return new DoubleArrayBuilder(_this__u8e3s4);
  };
  protoOf(DoubleArraySerializer_0).n4b = function (_this__u8e3s4) {
    return this.i4h((!(_this__u8e3s4 == null) ? isDoubleArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(DoubleArraySerializer_0).b4e = function () {
    return new Float64Array(0);
  };
  protoOf(DoubleArraySerializer_0).j4h = function (decoder, index, builder, checkIndex) {
    builder.m4h(decoder.q48(this.u4d_1, index));
  };
  protoOf(DoubleArraySerializer_0).y4b = function (decoder, index, builder, checkIndex) {
    return this.j4h(decoder, index, builder instanceof DoubleArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(DoubleArraySerializer_0).c4e = function (decoder, index, builder, checkIndex) {
    return this.j4h(decoder, index, builder instanceof DoubleArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(DoubleArraySerializer_0).n4h = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        encoder.u49(this.u4d_1, i, content[i]);
      }
       while (inductionVariable < size);
  };
  protoOf(DoubleArraySerializer_0).d4e = function (encoder, content, size) {
    return this.n4h(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).q4h = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(FloatArraySerializer_0).s4c = function (_this__u8e3s4) {
    return this.q4h((!(_this__u8e3s4 == null) ? isFloatArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(FloatArraySerializer_0).r4h = function (_this__u8e3s4) {
    return new FloatArrayBuilder(_this__u8e3s4);
  };
  protoOf(FloatArraySerializer_0).n4b = function (_this__u8e3s4) {
    return this.r4h((!(_this__u8e3s4 == null) ? isFloatArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(FloatArraySerializer_0).b4e = function () {
    return new Float32Array(0);
  };
  protoOf(FloatArraySerializer_0).s4h = function (decoder, index, builder, checkIndex) {
    builder.v4h(decoder.p48(this.u4d_1, index));
  };
  protoOf(FloatArraySerializer_0).y4b = function (decoder, index, builder, checkIndex) {
    return this.s4h(decoder, index, builder instanceof FloatArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(FloatArraySerializer_0).c4e = function (decoder, index, builder, checkIndex) {
    return this.s4h(decoder, index, builder instanceof FloatArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(FloatArraySerializer_0).w4h = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        encoder.t49(this.u4d_1, i, content[i]);
      }
       while (inductionVariable < size);
  };
  protoOf(FloatArraySerializer_0).d4e = function (encoder, content, size) {
    return this.w4h(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).z4h = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(LongArraySerializer_0).s4c = function (_this__u8e3s4) {
    return this.z4h((!(_this__u8e3s4 == null) ? isLongArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LongArraySerializer_0).a4i = function (_this__u8e3s4) {
    return new LongArrayBuilder(_this__u8e3s4);
  };
  protoOf(LongArraySerializer_0).n4b = function (_this__u8e3s4) {
    return this.a4i((!(_this__u8e3s4 == null) ? isLongArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(LongArraySerializer_0).b4e = function () {
    return longArray(0);
  };
  protoOf(LongArraySerializer_0).b4i = function (decoder, index, builder, checkIndex) {
    builder.e4i(decoder.o48(this.u4d_1, index));
  };
  protoOf(LongArraySerializer_0).y4b = function (decoder, index, builder, checkIndex) {
    return this.b4i(decoder, index, builder instanceof LongArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(LongArraySerializer_0).c4e = function (decoder, index, builder, checkIndex) {
    return this.b4i(decoder, index, builder instanceof LongArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(LongArraySerializer_0).f4i = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        encoder.s49(this.u4d_1, i, content[i]);
      }
       while (inductionVariable < size);
  };
  protoOf(LongArraySerializer_0).d4e = function (encoder, content, size) {
    return this.f4i(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).i4i = function (_this__u8e3s4) {
    return _ULongArray___get_size__impl__ju6dtr(_this__u8e3s4);
  };
  protoOf(ULongArraySerializer_0).s4c = function (_this__u8e3s4) {
    return this.i4i(_this__u8e3s4 instanceof ULongArray ? _this__u8e3s4.ap_1 : THROW_CCE());
  };
  protoOf(ULongArraySerializer_0).j4i = function (_this__u8e3s4) {
    return new ULongArrayBuilder(_this__u8e3s4);
  };
  protoOf(ULongArraySerializer_0).n4b = function (_this__u8e3s4) {
    return this.j4i(_this__u8e3s4 instanceof ULongArray ? _this__u8e3s4.ap_1 : THROW_CCE());
  };
  protoOf(ULongArraySerializer_0).k4i = function () {
    return _ULongArray___init__impl__twm1l3(0);
  };
  protoOf(ULongArraySerializer_0).b4e = function () {
    return new ULongArray(this.k4i());
  };
  protoOf(ULongArraySerializer_0).l4i = function (decoder, index, builder, checkIndex) {
    // Inline function 'kotlin.toULong' call
    var this_0 = decoder.t48(this.u4d_1, index).z47();
    var tmp$ret$0 = _ULong___init__impl__c78o9k(this_0);
    builder.o4i(tmp$ret$0);
  };
  protoOf(ULongArraySerializer_0).y4b = function (decoder, index, builder, checkIndex) {
    return this.l4i(decoder, index, builder instanceof ULongArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(ULongArraySerializer_0).c4e = function (decoder, index, builder, checkIndex) {
    return this.l4i(decoder, index, builder instanceof ULongArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(ULongArraySerializer_0).p4i = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        var tmp = encoder.x49(this.u4d_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.h49(tmp$ret$0);
      }
       while (inductionVariable < size);
  };
  protoOf(ULongArraySerializer_0).d4e = function (encoder, content, size) {
    return this.p4i(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).s4i = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(IntArraySerializer_0).s4c = function (_this__u8e3s4) {
    return this.s4i((!(_this__u8e3s4 == null) ? isIntArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(IntArraySerializer_0).t4i = function (_this__u8e3s4) {
    return new IntArrayBuilder(_this__u8e3s4);
  };
  protoOf(IntArraySerializer_0).n4b = function (_this__u8e3s4) {
    return this.t4i((!(_this__u8e3s4 == null) ? isIntArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(IntArraySerializer_0).b4e = function () {
    return new Int32Array(0);
  };
  protoOf(IntArraySerializer_0).u4i = function (decoder, index, builder, checkIndex) {
    builder.x4i(decoder.n48(this.u4d_1, index));
  };
  protoOf(IntArraySerializer_0).y4b = function (decoder, index, builder, checkIndex) {
    return this.u4i(decoder, index, builder instanceof IntArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(IntArraySerializer_0).c4e = function (decoder, index, builder, checkIndex) {
    return this.u4i(decoder, index, builder instanceof IntArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(IntArraySerializer_0).y4i = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        encoder.r49(this.u4d_1, i, content[i]);
      }
       while (inductionVariable < size);
  };
  protoOf(IntArraySerializer_0).d4e = function (encoder, content, size) {
    return this.y4i(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).b4j = function (_this__u8e3s4) {
    return _UIntArray___get_size__impl__r6l8ci(_this__u8e3s4);
  };
  protoOf(UIntArraySerializer_0).s4c = function (_this__u8e3s4) {
    return this.b4j(_this__u8e3s4 instanceof UIntArray ? _this__u8e3s4.bo_1 : THROW_CCE());
  };
  protoOf(UIntArraySerializer_0).c4j = function (_this__u8e3s4) {
    return new UIntArrayBuilder(_this__u8e3s4);
  };
  protoOf(UIntArraySerializer_0).n4b = function (_this__u8e3s4) {
    return this.c4j(_this__u8e3s4 instanceof UIntArray ? _this__u8e3s4.bo_1 : THROW_CCE());
  };
  protoOf(UIntArraySerializer_0).d4j = function () {
    return _UIntArray___init__impl__ghjpc6(0);
  };
  protoOf(UIntArraySerializer_0).b4e = function () {
    return new UIntArray(this.d4j());
  };
  protoOf(UIntArraySerializer_0).e4j = function (decoder, index, builder, checkIndex) {
    // Inline function 'kotlin.toUInt' call
    var this_0 = decoder.t48(this.u4d_1, index).y47();
    var tmp$ret$0 = _UInt___init__impl__l7qpdl(this_0);
    builder.h4j(tmp$ret$0);
  };
  protoOf(UIntArraySerializer_0).y4b = function (decoder, index, builder, checkIndex) {
    return this.e4j(decoder, index, builder instanceof UIntArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(UIntArraySerializer_0).c4e = function (decoder, index, builder, checkIndex) {
    return this.e4j(decoder, index, builder instanceof UIntArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(UIntArraySerializer_0).i4j = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        var tmp = encoder.x49(this.u4d_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.g49(tmp$ret$0);
      }
       while (inductionVariable < size);
  };
  protoOf(UIntArraySerializer_0).d4e = function (encoder, content, size) {
    return this.i4j(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).l4j = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(ShortArraySerializer_0).s4c = function (_this__u8e3s4) {
    return this.l4j((!(_this__u8e3s4 == null) ? isShortArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ShortArraySerializer_0).m4j = function (_this__u8e3s4) {
    return new ShortArrayBuilder(_this__u8e3s4);
  };
  protoOf(ShortArraySerializer_0).n4b = function (_this__u8e3s4) {
    return this.m4j((!(_this__u8e3s4 == null) ? isShortArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ShortArraySerializer_0).b4e = function () {
    return new Int16Array(0);
  };
  protoOf(ShortArraySerializer_0).n4j = function (decoder, index, builder, checkIndex) {
    builder.q4j(decoder.m48(this.u4d_1, index));
  };
  protoOf(ShortArraySerializer_0).y4b = function (decoder, index, builder, checkIndex) {
    return this.n4j(decoder, index, builder instanceof ShortArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(ShortArraySerializer_0).c4e = function (decoder, index, builder, checkIndex) {
    return this.n4j(decoder, index, builder instanceof ShortArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(ShortArraySerializer_0).r4j = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        encoder.q49(this.u4d_1, i, content[i]);
      }
       while (inductionVariable < size);
  };
  protoOf(ShortArraySerializer_0).d4e = function (encoder, content, size) {
    return this.r4j(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).u4j = function (_this__u8e3s4) {
    return _UShortArray___get_size__impl__jqto1b(_this__u8e3s4);
  };
  protoOf(UShortArraySerializer_0).s4c = function (_this__u8e3s4) {
    return this.u4j(_this__u8e3s4 instanceof UShortArray ? _this__u8e3s4.mp_1 : THROW_CCE());
  };
  protoOf(UShortArraySerializer_0).v4j = function (_this__u8e3s4) {
    return new UShortArrayBuilder(_this__u8e3s4);
  };
  protoOf(UShortArraySerializer_0).n4b = function (_this__u8e3s4) {
    return this.v4j(_this__u8e3s4 instanceof UShortArray ? _this__u8e3s4.mp_1 : THROW_CCE());
  };
  protoOf(UShortArraySerializer_0).w4j = function () {
    return _UShortArray___init__impl__9b26ef(0);
  };
  protoOf(UShortArraySerializer_0).b4e = function () {
    return new UShortArray(this.w4j());
  };
  protoOf(UShortArraySerializer_0).x4j = function (decoder, index, builder, checkIndex) {
    // Inline function 'kotlin.toUShort' call
    var this_0 = decoder.t48(this.u4d_1, index).x47();
    var tmp$ret$0 = _UShort___init__impl__jigrne(this_0);
    builder.a4k(tmp$ret$0);
  };
  protoOf(UShortArraySerializer_0).y4b = function (decoder, index, builder, checkIndex) {
    return this.x4j(decoder, index, builder instanceof UShortArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(UShortArraySerializer_0).c4e = function (decoder, index, builder, checkIndex) {
    return this.x4j(decoder, index, builder instanceof UShortArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(UShortArraySerializer_0).b4k = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        var tmp = encoder.x49(this.u4d_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.f49(tmp$ret$0);
      }
       while (inductionVariable < size);
  };
  protoOf(UShortArraySerializer_0).d4e = function (encoder, content, size) {
    return this.b4k(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).e4k = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(ByteArraySerializer_0).s4c = function (_this__u8e3s4) {
    return this.e4k((!(_this__u8e3s4 == null) ? isByteArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ByteArraySerializer_0).f4k = function (_this__u8e3s4) {
    return new ByteArrayBuilder(_this__u8e3s4);
  };
  protoOf(ByteArraySerializer_0).n4b = function (_this__u8e3s4) {
    return this.f4k((!(_this__u8e3s4 == null) ? isByteArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(ByteArraySerializer_0).b4e = function () {
    return new Int8Array(0);
  };
  protoOf(ByteArraySerializer_0).g4k = function (decoder, index, builder, checkIndex) {
    builder.j4k(decoder.l48(this.u4d_1, index));
  };
  protoOf(ByteArraySerializer_0).y4b = function (decoder, index, builder, checkIndex) {
    return this.g4k(decoder, index, builder instanceof ByteArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(ByteArraySerializer_0).c4e = function (decoder, index, builder, checkIndex) {
    return this.g4k(decoder, index, builder instanceof ByteArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(ByteArraySerializer_0).k4k = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        encoder.p49(this.u4d_1, i, content[i]);
      }
       while (inductionVariable < size);
  };
  protoOf(ByteArraySerializer_0).d4e = function (encoder, content, size) {
    return this.k4k(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).n4k = function (_this__u8e3s4) {
    return _UByteArray___get_size__impl__h6pkdv(_this__u8e3s4);
  };
  protoOf(UByteArraySerializer_0).s4c = function (_this__u8e3s4) {
    return this.n4k(_this__u8e3s4 instanceof UByteArray ? _this__u8e3s4.pn_1 : THROW_CCE());
  };
  protoOf(UByteArraySerializer_0).o4k = function (_this__u8e3s4) {
    return new UByteArrayBuilder(_this__u8e3s4);
  };
  protoOf(UByteArraySerializer_0).n4b = function (_this__u8e3s4) {
    return this.o4k(_this__u8e3s4 instanceof UByteArray ? _this__u8e3s4.pn_1 : THROW_CCE());
  };
  protoOf(UByteArraySerializer_0).p4k = function () {
    return _UByteArray___init__impl__ip4y9n(0);
  };
  protoOf(UByteArraySerializer_0).b4e = function () {
    return new UByteArray(this.p4k());
  };
  protoOf(UByteArraySerializer_0).q4k = function (decoder, index, builder, checkIndex) {
    // Inline function 'kotlin.toUByte' call
    var this_0 = decoder.t48(this.u4d_1, index).w47();
    var tmp$ret$0 = _UByte___init__impl__g9hnc4(this_0);
    builder.t4k(tmp$ret$0);
  };
  protoOf(UByteArraySerializer_0).y4b = function (decoder, index, builder, checkIndex) {
    return this.q4k(decoder, index, builder instanceof UByteArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(UByteArraySerializer_0).c4e = function (decoder, index, builder, checkIndex) {
    return this.q4k(decoder, index, builder instanceof UByteArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(UByteArraySerializer_0).u4k = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        var tmp = encoder.x49(this.u4d_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.e49(tmp$ret$0);
      }
       while (inductionVariable < size);
  };
  protoOf(UByteArraySerializer_0).d4e = function (encoder, content, size) {
    return this.u4k(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).x4k = function (_this__u8e3s4) {
    return _this__u8e3s4.length;
  };
  protoOf(BooleanArraySerializer_0).s4c = function (_this__u8e3s4) {
    return this.x4k((!(_this__u8e3s4 == null) ? isBooleanArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(BooleanArraySerializer_0).y4k = function (_this__u8e3s4) {
    return new BooleanArrayBuilder(_this__u8e3s4);
  };
  protoOf(BooleanArraySerializer_0).n4b = function (_this__u8e3s4) {
    return this.y4k((!(_this__u8e3s4 == null) ? isBooleanArray(_this__u8e3s4) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(BooleanArraySerializer_0).b4e = function () {
    return booleanArray(0);
  };
  protoOf(BooleanArraySerializer_0).z4k = function (decoder, index, builder, checkIndex) {
    builder.c4l(decoder.k48(this.u4d_1, index));
  };
  protoOf(BooleanArraySerializer_0).y4b = function (decoder, index, builder, checkIndex) {
    return this.z4k(decoder, index, builder instanceof BooleanArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(BooleanArraySerializer_0).c4e = function (decoder, index, builder, checkIndex) {
    return this.z4k(decoder, index, builder instanceof BooleanArrayBuilder ? builder : THROW_CCE(), checkIndex);
  };
  protoOf(BooleanArraySerializer_0).d4l = function (encoder, content, size) {
    var inductionVariable = 0;
    if (inductionVariable < size)
      do {
        var i = inductionVariable;
        inductionVariable = inductionVariable + 1 | 0;
        encoder.o49(this.u4d_1, i, content[i]);
      }
       while (inductionVariable < size);
  };
  protoOf(BooleanArraySerializer_0).d4e = function (encoder, content, size) {
    return this.d4l(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.b4h_1 = bufferWithData;
    this.c4h_1 = bufferWithData.length;
    this.g3(10);
  }
  protoOf(CharArrayBuilder).w4d = function () {
    return this.c4h_1;
  };
  protoOf(CharArrayBuilder).g3 = function (requiredCapacity) {
    if (this.b4h_1.length < requiredCapacity)
      this.b4h_1 = copyOf(this.b4h_1, coerceAtLeast(requiredCapacity, imul(this.b4h_1.length, 2)));
  };
  protoOf(CharArrayBuilder).d4h = function (c) {
    this.f4e();
    var tmp = this.b4h_1;
    var tmp1 = this.c4h_1;
    this.c4h_1 = tmp1 + 1 | 0;
    tmp[tmp1] = c;
  };
  protoOf(CharArrayBuilder).f3 = function () {
    return copyOf(this.b4h_1, this.c4h_1);
  };
  function DoubleArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.k4h_1 = bufferWithData;
    this.l4h_1 = bufferWithData.length;
    this.g3(10);
  }
  protoOf(DoubleArrayBuilder).w4d = function () {
    return this.l4h_1;
  };
  protoOf(DoubleArrayBuilder).g3 = function (requiredCapacity) {
    if (this.k4h_1.length < requiredCapacity)
      this.k4h_1 = copyOf_0(this.k4h_1, coerceAtLeast(requiredCapacity, imul(this.k4h_1.length, 2)));
  };
  protoOf(DoubleArrayBuilder).m4h = function (c) {
    this.f4e();
    var tmp = this.k4h_1;
    var tmp1 = this.l4h_1;
    this.l4h_1 = tmp1 + 1 | 0;
    tmp[tmp1] = c;
  };
  protoOf(DoubleArrayBuilder).f3 = function () {
    return copyOf_0(this.k4h_1, this.l4h_1);
  };
  function FloatArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.t4h_1 = bufferWithData;
    this.u4h_1 = bufferWithData.length;
    this.g3(10);
  }
  protoOf(FloatArrayBuilder).w4d = function () {
    return this.u4h_1;
  };
  protoOf(FloatArrayBuilder).g3 = function (requiredCapacity) {
    if (this.t4h_1.length < requiredCapacity)
      this.t4h_1 = copyOf_1(this.t4h_1, coerceAtLeast(requiredCapacity, imul(this.t4h_1.length, 2)));
  };
  protoOf(FloatArrayBuilder).v4h = function (c) {
    this.f4e();
    var tmp = this.t4h_1;
    var tmp1 = this.u4h_1;
    this.u4h_1 = tmp1 + 1 | 0;
    tmp[tmp1] = c;
  };
  protoOf(FloatArrayBuilder).f3 = function () {
    return copyOf_1(this.t4h_1, this.u4h_1);
  };
  function LongArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.c4i_1 = bufferWithData;
    this.d4i_1 = bufferWithData.length;
    this.g3(10);
  }
  protoOf(LongArrayBuilder).w4d = function () {
    return this.d4i_1;
  };
  protoOf(LongArrayBuilder).g3 = function (requiredCapacity) {
    if (this.c4i_1.length < requiredCapacity)
      this.c4i_1 = copyOf_2(this.c4i_1, coerceAtLeast(requiredCapacity, imul(this.c4i_1.length, 2)));
  };
  protoOf(LongArrayBuilder).e4i = function (c) {
    this.f4e();
    var tmp = this.c4i_1;
    var tmp1 = this.d4i_1;
    this.d4i_1 = tmp1 + 1 | 0;
    tmp[tmp1] = c;
  };
  protoOf(LongArrayBuilder).f3 = function () {
    return copyOf_2(this.c4i_1, this.d4i_1);
  };
  function ULongArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.m4i_1 = bufferWithData;
    this.n4i_1 = _ULongArray___get_size__impl__ju6dtr(bufferWithData);
    this.g3(10);
  }
  protoOf(ULongArrayBuilder).w4d = function () {
    return this.n4i_1;
  };
  protoOf(ULongArrayBuilder).g3 = function (requiredCapacity) {
    if (_ULongArray___get_size__impl__ju6dtr(this.m4i_1) < requiredCapacity) {
      var tmp = this;
      // Inline function 'kotlin.collections.copyOf' call
      var this_0 = this.m4i_1;
      var newSize = coerceAtLeast(requiredCapacity, imul(_ULongArray___get_size__impl__ju6dtr(this.m4i_1), 2));
      tmp.m4i_1 = _ULongArray___init__impl__twm1l3_0(copyOf_2(_ULongArray___get_storage__impl__28e64j(this_0), newSize));
    }
  };
  protoOf(ULongArrayBuilder).o4i = function (c) {
    this.f4e();
    var tmp = this.m4i_1;
    var tmp1 = this.n4i_1;
    this.n4i_1 = tmp1 + 1 | 0;
    ULongArray__set_impl_z19mvh(tmp, tmp1, c);
  };
  protoOf(ULongArrayBuilder).e4l = function () {
    // Inline function 'kotlin.collections.copyOf' call
    var this_0 = this.m4i_1;
    var newSize = this.n4i_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.e4l());
  };
  function IntArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.v4i_1 = bufferWithData;
    this.w4i_1 = bufferWithData.length;
    this.g3(10);
  }
  protoOf(IntArrayBuilder).w4d = function () {
    return this.w4i_1;
  };
  protoOf(IntArrayBuilder).g3 = function (requiredCapacity) {
    if (this.v4i_1.length < requiredCapacity)
      this.v4i_1 = copyOf_3(this.v4i_1, coerceAtLeast(requiredCapacity, imul(this.v4i_1.length, 2)));
  };
  protoOf(IntArrayBuilder).x4i = function (c) {
    this.f4e();
    var tmp = this.v4i_1;
    var tmp1 = this.w4i_1;
    this.w4i_1 = tmp1 + 1 | 0;
    tmp[tmp1] = c;
  };
  protoOf(IntArrayBuilder).f3 = function () {
    return copyOf_3(this.v4i_1, this.w4i_1);
  };
  function UIntArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.f4j_1 = bufferWithData;
    this.g4j_1 = _UIntArray___get_size__impl__r6l8ci(bufferWithData);
    this.g3(10);
  }
  protoOf(UIntArrayBuilder).w4d = function () {
    return this.g4j_1;
  };
  protoOf(UIntArrayBuilder).g3 = function (requiredCapacity) {
    if (_UIntArray___get_size__impl__r6l8ci(this.f4j_1) < requiredCapacity) {
      var tmp = this;
      // Inline function 'kotlin.collections.copyOf' call
      var this_0 = this.f4j_1;
      var newSize = coerceAtLeast(requiredCapacity, imul(_UIntArray___get_size__impl__r6l8ci(this.f4j_1), 2));
      tmp.f4j_1 = _UIntArray___init__impl__ghjpc6_0(copyOf_3(_UIntArray___get_storage__impl__92a0v0(this_0), newSize));
    }
  };
  protoOf(UIntArrayBuilder).h4j = function (c) {
    this.f4e();
    var tmp = this.f4j_1;
    var tmp1 = this.g4j_1;
    this.g4j_1 = tmp1 + 1 | 0;
    UIntArray__set_impl_7f2zu2(tmp, tmp1, c);
  };
  protoOf(UIntArrayBuilder).f4l = function () {
    // Inline function 'kotlin.collections.copyOf' call
    var this_0 = this.f4j_1;
    var newSize = this.g4j_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.f4l());
  };
  function ShortArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.o4j_1 = bufferWithData;
    this.p4j_1 = bufferWithData.length;
    this.g3(10);
  }
  protoOf(ShortArrayBuilder).w4d = function () {
    return this.p4j_1;
  };
  protoOf(ShortArrayBuilder).g3 = function (requiredCapacity) {
    if (this.o4j_1.length < requiredCapacity)
      this.o4j_1 = copyOf_4(this.o4j_1, coerceAtLeast(requiredCapacity, imul(this.o4j_1.length, 2)));
  };
  protoOf(ShortArrayBuilder).q4j = function (c) {
    this.f4e();
    var tmp = this.o4j_1;
    var tmp1 = this.p4j_1;
    this.p4j_1 = tmp1 + 1 | 0;
    tmp[tmp1] = c;
  };
  protoOf(ShortArrayBuilder).f3 = function () {
    return copyOf_4(this.o4j_1, this.p4j_1);
  };
  function UShortArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.y4j_1 = bufferWithData;
    this.z4j_1 = _UShortArray___get_size__impl__jqto1b(bufferWithData);
    this.g3(10);
  }
  protoOf(UShortArrayBuilder).w4d = function () {
    return this.z4j_1;
  };
  protoOf(UShortArrayBuilder).g3 = function (requiredCapacity) {
    if (_UShortArray___get_size__impl__jqto1b(this.y4j_1) < requiredCapacity) {
      var tmp = this;
      // Inline function 'kotlin.collections.copyOf' call
      var this_0 = this.y4j_1;
      var newSize = coerceAtLeast(requiredCapacity, imul(_UShortArray___get_size__impl__jqto1b(this.y4j_1), 2));
      tmp.y4j_1 = _UShortArray___init__impl__9b26ef_0(copyOf_4(_UShortArray___get_storage__impl__t2jpv5(this_0), newSize));
    }
  };
  protoOf(UShortArrayBuilder).a4k = function (c) {
    this.f4e();
    var tmp = this.y4j_1;
    var tmp1 = this.z4j_1;
    this.z4j_1 = tmp1 + 1 | 0;
    UShortArray__set_impl_6d8whp(tmp, tmp1, c);
  };
  protoOf(UShortArrayBuilder).g4l = function () {
    // Inline function 'kotlin.collections.copyOf' call
    var this_0 = this.y4j_1;
    var newSize = this.z4j_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.g4l());
  };
  function ByteArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.h4k_1 = bufferWithData;
    this.i4k_1 = bufferWithData.length;
    this.g3(10);
  }
  protoOf(ByteArrayBuilder).w4d = function () {
    return this.i4k_1;
  };
  protoOf(ByteArrayBuilder).g3 = function (requiredCapacity) {
    if (this.h4k_1.length < requiredCapacity)
      this.h4k_1 = copyOf_5(this.h4k_1, coerceAtLeast(requiredCapacity, imul(this.h4k_1.length, 2)));
  };
  protoOf(ByteArrayBuilder).j4k = function (c) {
    this.f4e();
    var tmp = this.h4k_1;
    var tmp1 = this.i4k_1;
    this.i4k_1 = tmp1 + 1 | 0;
    tmp[tmp1] = c;
  };
  protoOf(ByteArrayBuilder).f3 = function () {
    return copyOf_5(this.h4k_1, this.i4k_1);
  };
  function UByteArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.r4k_1 = bufferWithData;
    this.s4k_1 = _UByteArray___get_size__impl__h6pkdv(bufferWithData);
    this.g3(10);
  }
  protoOf(UByteArrayBuilder).w4d = function () {
    return this.s4k_1;
  };
  protoOf(UByteArrayBuilder).g3 = function (requiredCapacity) {
    if (_UByteArray___get_size__impl__h6pkdv(this.r4k_1) < requiredCapacity) {
      var tmp = this;
      // Inline function 'kotlin.collections.copyOf' call
      var this_0 = this.r4k_1;
      var newSize = coerceAtLeast(requiredCapacity, imul(_UByteArray___get_size__impl__h6pkdv(this.r4k_1), 2));
      tmp.r4k_1 = _UByteArray___init__impl__ip4y9n_0(copyOf_5(_UByteArray___get_storage__impl__d4kctt(this_0), newSize));
    }
  };
  protoOf(UByteArrayBuilder).t4k = function (c) {
    this.f4e();
    var tmp = this.r4k_1;
    var tmp1 = this.s4k_1;
    this.s4k_1 = tmp1 + 1 | 0;
    UByteArray__set_impl_jvcicn(tmp, tmp1, c);
  };
  protoOf(UByteArrayBuilder).h4l = function () {
    // Inline function 'kotlin.collections.copyOf' call
    var this_0 = this.r4k_1;
    var newSize = this.s4k_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.h4l());
  };
  function BooleanArrayBuilder(bufferWithData) {
    PrimitiveArrayBuilder.call(this);
    this.a4l_1 = bufferWithData;
    this.b4l_1 = bufferWithData.length;
    this.g3(10);
  }
  protoOf(BooleanArrayBuilder).w4d = function () {
    return this.b4l_1;
  };
  protoOf(BooleanArrayBuilder).g3 = function (requiredCapacity) {
    if (this.a4l_1.length < requiredCapacity)
      this.a4l_1 = copyOf_6(this.a4l_1, coerceAtLeast(requiredCapacity, imul(this.a4l_1.length, 2)));
  };
  protoOf(BooleanArrayBuilder).c4l = function (c) {
    this.f4e();
    var tmp = this.a4l_1;
    var tmp1 = this.b4l_1;
    this.b4l_1 = tmp1 + 1 | 0;
    tmp[tmp1] = c;
  };
  protoOf(BooleanArrayBuilder).f3 = function () {
    return copyOf_6(this.a4l_1, this.b4l_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.i4l_1 = new PrimitiveSerialDescriptor_0('kotlin.String', STRING_getInstance());
  }
  protoOf(StringSerializer).q44 = function () {
    return this.i4l_1;
  };
  protoOf(StringSerializer).j4l = function (encoder, value) {
    return encoder.l49(value);
  };
  protoOf(StringSerializer).r44 = function (encoder, value) {
    return this.j4l(encoder, (!(value == null) ? typeof value === 'string' : false) ? value : THROW_CCE());
  };
  protoOf(StringSerializer).s44 = function (decoder) {
    return decoder.d48();
  };
  var StringSerializer_instance;
  function StringSerializer_getInstance() {
    if (StringSerializer_instance == null)
      new StringSerializer();
    return StringSerializer_instance;
  }
  function CharSerializer() {
    CharSerializer_instance = this;
    this.k4l_1 = new PrimitiveSerialDescriptor_0('kotlin.Char', CHAR_getInstance());
  }
  protoOf(CharSerializer).q44 = function () {
    return this.k4l_1;
  };
  protoOf(CharSerializer).l4l = function (encoder, value) {
    return encoder.k49(value);
  };
  protoOf(CharSerializer).r44 = function (encoder, value) {
    return this.l4l(encoder, value instanceof Char ? value.rb_1 : THROW_CCE());
  };
  protoOf(CharSerializer).m4l = function (decoder) {
    return decoder.c48();
  };
  protoOf(CharSerializer).s44 = function (decoder) {
    return new Char(this.m4l(decoder));
  };
  var CharSerializer_instance;
  function CharSerializer_getInstance() {
    if (CharSerializer_instance == null)
      new CharSerializer();
    return CharSerializer_instance;
  }
  function DoubleSerializer() {
    DoubleSerializer_instance = this;
    this.n4l_1 = new PrimitiveSerialDescriptor_0('kotlin.Double', DOUBLE_getInstance());
  }
  protoOf(DoubleSerializer).q44 = function () {
    return this.n4l_1;
  };
  protoOf(DoubleSerializer).o4l = function (encoder, value) {
    return encoder.j49(value);
  };
  protoOf(DoubleSerializer).r44 = function (encoder, value) {
    return this.o4l(encoder, (!(value == null) ? typeof value === 'number' : false) ? value : THROW_CCE());
  };
  protoOf(DoubleSerializer).s44 = function (decoder) {
    return decoder.b48();
  };
  var DoubleSerializer_instance;
  function DoubleSerializer_getInstance() {
    if (DoubleSerializer_instance == null)
      new DoubleSerializer();
    return DoubleSerializer_instance;
  }
  function FloatSerializer() {
    FloatSerializer_instance = this;
    this.p4l_1 = new PrimitiveSerialDescriptor_0('kotlin.Float', FLOAT_getInstance());
  }
  protoOf(FloatSerializer).q44 = function () {
    return this.p4l_1;
  };
  protoOf(FloatSerializer).q4l = function (encoder, value) {
    return encoder.i49(value);
  };
  protoOf(FloatSerializer).r44 = function (encoder, value) {
    return this.q4l(encoder, (!(value == null) ? typeof value === 'number' : false) ? value : THROW_CCE());
  };
  protoOf(FloatSerializer).s44 = function (decoder) {
    return decoder.a48();
  };
  var FloatSerializer_instance;
  function FloatSerializer_getInstance() {
    if (FloatSerializer_instance == null)
      new FloatSerializer();
    return FloatSerializer_instance;
  }
  function LongSerializer() {
    LongSerializer_instance = this;
    this.r4l_1 = new PrimitiveSerialDescriptor_0('kotlin.Long', LONG_getInstance());
  }
  protoOf(LongSerializer).q44 = function () {
    return this.r4l_1;
  };
  protoOf(LongSerializer).s4l = function (encoder, value) {
    return encoder.h49(value);
  };
  protoOf(LongSerializer).r44 = function (encoder, value) {
    return this.s4l(encoder, value instanceof Long ? value : THROW_CCE());
  };
  protoOf(LongSerializer).s44 = function (decoder) {
    return decoder.z47();
  };
  var LongSerializer_instance;
  function LongSerializer_getInstance() {
    if (LongSerializer_instance == null)
      new LongSerializer();
    return LongSerializer_instance;
  }
  function IntSerializer() {
    IntSerializer_instance = this;
    this.t4l_1 = new PrimitiveSerialDescriptor_0('kotlin.Int', INT_getInstance());
  }
  protoOf(IntSerializer).q44 = function () {
    return this.t4l_1;
  };
  protoOf(IntSerializer).u4l = function (encoder, value) {
    return encoder.g49(value);
  };
  protoOf(IntSerializer).r44 = function (encoder, value) {
    return this.u4l(encoder, (!(value == null) ? typeof value === 'number' : false) ? value : THROW_CCE());
  };
  protoOf(IntSerializer).s44 = function (decoder) {
    return decoder.y47();
  };
  var IntSerializer_instance;
  function IntSerializer_getInstance() {
    if (IntSerializer_instance == null)
      new IntSerializer();
    return IntSerializer_instance;
  }
  function ShortSerializer() {
    ShortSerializer_instance = this;
    this.v4l_1 = new PrimitiveSerialDescriptor_0('kotlin.Short', SHORT_getInstance());
  }
  protoOf(ShortSerializer).q44 = function () {
    return this.v4l_1;
  };
  protoOf(ShortSerializer).w4l = function (encoder, value) {
    return encoder.f49(value);
  };
  protoOf(ShortSerializer).r44 = function (encoder, value) {
    return this.w4l(encoder, (!(value == null) ? typeof value === 'number' : false) ? value : THROW_CCE());
  };
  protoOf(ShortSerializer).s44 = function (decoder) {
    return decoder.x47();
  };
  var ShortSerializer_instance;
  function ShortSerializer_getInstance() {
    if (ShortSerializer_instance == null)
      new ShortSerializer();
    return ShortSerializer_instance;
  }
  function ByteSerializer() {
    ByteSerializer_instance = this;
    this.x4l_1 = new PrimitiveSerialDescriptor_0('kotlin.Byte', BYTE_getInstance());
  }
  protoOf(ByteSerializer).q44 = function () {
    return this.x4l_1;
  };
  protoOf(ByteSerializer).y4l = function (encoder, value) {
    return encoder.e49(value);
  };
  protoOf(ByteSerializer).r44 = function (encoder, value) {
    return this.y4l(encoder, (!(value == null) ? typeof value === 'number' : false) ? value : THROW_CCE());
  };
  protoOf(ByteSerializer).s44 = function (decoder) {
    return decoder.w47();
  };
  var ByteSerializer_instance;
  function ByteSerializer_getInstance() {
    if (ByteSerializer_instance == null)
      new ByteSerializer();
    return ByteSerializer_instance;
  }
  function BooleanSerializer() {
    BooleanSerializer_instance = this;
    this.z4l_1 = new PrimitiveSerialDescriptor_0('kotlin.Boolean', BOOLEAN_getInstance());
  }
  protoOf(BooleanSerializer).q44 = function () {
    return this.z4l_1;
  };
  protoOf(BooleanSerializer).a4m = function (encoder, value) {
    return encoder.d49(value);
  };
  protoOf(BooleanSerializer).r44 = function (encoder, value) {
    return this.a4m(encoder, (!(value == null) ? typeof value === 'boolean' : false) ? value : THROW_CCE());
  };
  protoOf(BooleanSerializer).s44 = function (decoder) {
    return decoder.v47();
  };
  var BooleanSerializer_instance;
  function BooleanSerializer_getInstance() {
    if (BooleanSerializer_instance == null)
      new BooleanSerializer();
    return BooleanSerializer_instance;
  }
  function UnitSerializer() {
    UnitSerializer_instance = this;
    this.b4m_1 = new ObjectSerializer('kotlin.Unit', Unit_instance);
  }
  protoOf(UnitSerializer).q44 = function () {
    return this.b4m_1.q44();
  };
  protoOf(UnitSerializer).c4m = function (decoder) {
    this.b4m_1.s44(decoder);
  };
  protoOf(UnitSerializer).s44 = function (decoder) {
    this.c4m(decoder);
    return Unit_instance;
  };
  protoOf(UnitSerializer).d4m = function (encoder, value) {
    this.b4m_1.g45(encoder, Unit_instance);
  };
  protoOf(UnitSerializer).r44 = function (encoder, value) {
    return this.d4m(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.e4m_1 = serialName;
    this.f4m_1 = kind;
  }
  protoOf(PrimitiveSerialDescriptor_0).q45 = function () {
    return this.e4m_1;
  };
  protoOf(PrimitiveSerialDescriptor_0).i46 = function () {
    return this.f4m_1;
  };
  protoOf(PrimitiveSerialDescriptor_0).g46 = function () {
    return 0;
  };
  protoOf(PrimitiveSerialDescriptor_0).m46 = function (index) {
    error_0(this);
  };
  protoOf(PrimitiveSerialDescriptor_0).l46 = function (name) {
    error_0(this);
  };
  protoOf(PrimitiveSerialDescriptor_0).n46 = function (index) {
    error_0(this);
  };
  protoOf(PrimitiveSerialDescriptor_0).k46 = function (index) {
    error_0(this);
  };
  protoOf(PrimitiveSerialDescriptor_0).j46 = function (index) {
    error_0(this);
  };
  protoOf(PrimitiveSerialDescriptor_0).toString = function () {
    return 'PrimitiveDescriptor(' + this.e4m_1 + ')';
  };
  protoOf(PrimitiveSerialDescriptor_0).equals = function (other) {
    if (this === other)
      return true;
    if (!(other instanceof PrimitiveSerialDescriptor_0))
      return false;
    if (this.e4m_1 === other.e4m_1 ? equals(this.f4m_1, other.f4m_1) : false)
      return true;
    return false;
  };
  protoOf(PrimitiveSerialDescriptor_0).hashCode = function () {
    return getStringHashCode(this.e4m_1) + imul(31, this.f4m_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).i4m = function (_this__u8e3s4, index) {
    return this.k4m(this.j4m(_this__u8e3s4, index));
  };
  protoOf(NamedValueDecoder).k4m = function (nestedName) {
    var tmp0_elvis_lhs = this.n4m();
    return this.o4m(tmp0_elvis_lhs == null ? '' : tmp0_elvis_lhs, nestedName);
  };
  protoOf(NamedValueDecoder).j4m = function (descriptor, index) {
    return descriptor.m46(index);
  };
  protoOf(NamedValueDecoder).o4m = 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.c4n(tag);
    var r = block();
    if (!$this.m4m_1) {
      $this.d4n();
    }
    $this.m4m_1 = false;
    return r;
  }
  function TaggedDecoder$decodeSerializableElement$lambda(this$0, $deserializer, $previousValue) {
    return function () {
      return this$0.g48($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.q44().b46();
      var tmp;
      if (isNullabilitySupported ? true : this_0.t47()) {
        // Inline function 'kotlinx.serialization.internal.TaggedDecoder.decodeNullableSerializableElement.<anonymous>.<anonymous>' call
        tmp = this$0.g48($deserializer, $previousValue);
      } else {
        tmp = this_0.u47();
      }
      return tmp;
    };
  }
  function TaggedDecoder() {
    var tmp = this;
    // Inline function 'kotlin.collections.arrayListOf' call
    tmp.l4m_1 = ArrayList_init_$Create$_0();
    this.m4m_1 = false;
  }
  protoOf(TaggedDecoder).t45 = function () {
    return EmptySerializersModule_0();
  };
  protoOf(TaggedDecoder).p4m = function (tag) {
    throw SerializationException_init_$Create$_0('' + getKClassFromExpression(this) + " can't retrieve untyped values");
  };
  protoOf(TaggedDecoder).q4m = function (tag) {
    return true;
  };
  protoOf(TaggedDecoder).r4m = function (tag) {
    var tmp = this.p4m(tag);
    return typeof tmp === 'boolean' ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).s4m = function (tag) {
    var tmp = this.p4m(tag);
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).t4m = function (tag) {
    var tmp = this.p4m(tag);
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).u4m = function (tag) {
    var tmp = this.p4m(tag);
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).v4m = function (tag) {
    var tmp = this.p4m(tag);
    return tmp instanceof Long ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).w4m = function (tag) {
    var tmp = this.p4m(tag);
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).x4m = function (tag) {
    var tmp = this.p4m(tag);
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).y4m = function (tag) {
    var tmp = this.p4m(tag);
    return tmp instanceof Char ? tmp.rb_1 : THROW_CCE();
  };
  protoOf(TaggedDecoder).z4m = function (tag) {
    var tmp = this.p4m(tag);
    return typeof tmp === 'string' ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).a4n = function (tag, enumDescriptor) {
    var tmp = this.p4m(tag);
    return typeof tmp === 'number' ? tmp : THROW_CCE();
  };
  protoOf(TaggedDecoder).b4n = function (tag, inlineDescriptor) {
    // Inline function 'kotlin.apply' call
    // Inline function 'kotlin.contracts.contract' call
    // Inline function 'kotlinx.serialization.internal.TaggedDecoder.decodeTaggedInline.<anonymous>' call
    this.c4n(tag);
    return this;
  };
  protoOf(TaggedDecoder).g48 = function (deserializer, previousValue) {
    return this.h48(deserializer);
  };
  protoOf(TaggedDecoder).f48 = function (descriptor) {
    return this.b4n(this.d4n(), descriptor);
  };
  protoOf(TaggedDecoder).t47 = function () {
    var tmp0_elvis_lhs = this.n4m();
    var tmp;
    if (tmp0_elvis_lhs == null) {
      return false;
    } else {
      tmp = tmp0_elvis_lhs;
    }
    var currentTag = tmp;
    return this.q4m(currentTag);
  };
  protoOf(TaggedDecoder).u47 = function () {
    return null;
  };
  protoOf(TaggedDecoder).v47 = function () {
    return this.r4m(this.d4n());
  };
  protoOf(TaggedDecoder).w47 = function () {
    return this.s4m(this.d4n());
  };
  protoOf(TaggedDecoder).x47 = function () {
    return this.t4m(this.d4n());
  };
  protoOf(TaggedDecoder).y47 = function () {
    return this.u4m(this.d4n());
  };
  protoOf(TaggedDecoder).z47 = function () {
    return this.v4m(this.d4n());
  };
  protoOf(TaggedDecoder).a48 = function () {
    return this.w4m(this.d4n());
  };
  protoOf(TaggedDecoder).b48 = function () {
    return this.x4m(this.d4n());
  };
  protoOf(TaggedDecoder).c48 = function () {
    return this.y4m(this.d4n());
  };
  protoOf(TaggedDecoder).d48 = function () {
    return this.z4m(this.d4n());
  };
  protoOf(TaggedDecoder).e48 = function (enumDescriptor) {
    return this.a4n(this.d4n(), enumDescriptor);
  };
  protoOf(TaggedDecoder).i48 = function (descriptor) {
    return this;
  };
  protoOf(TaggedDecoder).j48 = function (descriptor) {
  };
  protoOf(TaggedDecoder).k48 = function (descriptor, index) {
    return this.r4m(this.i4m(descriptor, index));
  };
  protoOf(TaggedDecoder).l48 = function (descriptor, index) {
    return this.s4m(this.i4m(descriptor, index));
  };
  protoOf(TaggedDecoder).m48 = function (descriptor, index) {
    return this.t4m(this.i4m(descriptor, index));
  };
  protoOf(TaggedDecoder).n48 = function (descriptor, index) {
    return this.u4m(this.i4m(descriptor, index));
  };
  protoOf(TaggedDecoder).o48 = function (descriptor, index) {
    return this.v4m(this.i4m(descriptor, index));
  };
  protoOf(TaggedDecoder).p48 = function (descriptor, index) {
    return this.w4m(this.i4m(descriptor, index));
  };
  protoOf(TaggedDecoder).q48 = function (descriptor, index) {
    return this.x4m(this.i4m(descriptor, index));
  };
  protoOf(TaggedDecoder).r48 = function (descriptor, index) {
    return this.y4m(this.i4m(descriptor, index));
  };
  protoOf(TaggedDecoder).s48 = function (descriptor, index) {
    return this.z4m(this.i4m(descriptor, index));
  };
  protoOf(TaggedDecoder).t48 = function (descriptor, index) {
    return this.b4n(this.i4m(descriptor, index), descriptor.k46(index));
  };
  protoOf(TaggedDecoder).u48 = function (descriptor, index, deserializer, previousValue) {
    var tmp = this.i4m(descriptor, index);
    return tagBlock(this, tmp, TaggedDecoder$decodeSerializableElement$lambda(this, deserializer, previousValue));
  };
  protoOf(TaggedDecoder).w48 = function (descriptor, index, deserializer, previousValue) {
    var tmp = this.i4m(descriptor, index);
    return tagBlock(this, tmp, TaggedDecoder$decodeNullableSerializableElement$lambda(this, deserializer, previousValue));
  };
  protoOf(TaggedDecoder).n4m = function () {
    return lastOrNull(this.l4m_1);
  };
  protoOf(TaggedDecoder).c4n = function (name) {
    this.l4m_1.i1(name);
  };
  protoOf(TaggedDecoder).d4n = function () {
    var r = this.l4m_1.s1(get_lastIndex_0(this.l4m_1));
    this.m4m_1 = true;
    return r;
  };
  function get_NULL() {
    _init_properties_Tuples_kt__dz0qyd();
    return NULL;
  }
  var NULL;
  function MapEntry(key, value) {
    this.e4n_1 = key;
    this.f4n_1 = value;
  }
  protoOf(MapEntry).s2 = function () {
    return this.e4n_1;
  };
  protoOf(MapEntry).t2 = function () {
    return this.f4n_1;
  };
  protoOf(MapEntry).toString = function () {
    return 'MapEntry(key=' + this.e4n_1 + ', value=' + this.f4n_1 + ')';
  };
  protoOf(MapEntry).hashCode = function () {
    var result = this.e4n_1 == null ? 0 : hashCode(this.e4n_1);
    result = imul(result, 31) + (this.f4n_1 == null ? 0 : hashCode(this.f4n_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.e4n_1, tmp0_other_with_cast.e4n_1))
      return false;
    if (!equals(this.f4n_1, tmp0_other_with_cast.f4n_1))
      return false;
    return true;
  };
  function MapEntrySerializer$descriptor$lambda($keySerializer, $valueSerializer) {
    return function ($this$buildSerialDescriptor) {
      $this$buildSerialDescriptor.b45('key', $keySerializer.q44());
      $this$buildSerialDescriptor.b45('value', $valueSerializer.q44());
      return Unit_instance;
    };
  }
  function MapEntrySerializer_0(keySerializer, valueSerializer) {
    KeyValueSerializer.call(this, keySerializer, valueSerializer);
    var tmp = this;
    var tmp_0 = MAP_getInstance();
    tmp.i4n_1 = buildSerialDescriptor('kotlin.collections.Map.Entry', tmp_0, [], MapEntrySerializer$descriptor$lambda(keySerializer, valueSerializer));
  }
  protoOf(MapEntrySerializer_0).q44 = function () {
    return this.i4n_1;
  };
  protoOf(MapEntrySerializer_0).j4n = function (_this__u8e3s4) {
    return _this__u8e3s4.s2();
  };
  protoOf(MapEntrySerializer_0).k4n = function (_this__u8e3s4) {
    return this.j4n((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Entry) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(MapEntrySerializer_0).l4n = function (_this__u8e3s4) {
    return _this__u8e3s4.t2();
  };
  protoOf(MapEntrySerializer_0).m4n = function (_this__u8e3s4) {
    return this.l4n((!(_this__u8e3s4 == null) ? isInterface(_this__u8e3s4, Entry) : false) ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(MapEntrySerializer_0).n4n = function (key, value) {
    return new MapEntry(key, value);
  };
  function PairSerializer$descriptor$lambda($keySerializer, $valueSerializer) {
    return function ($this$buildClassSerialDescriptor) {
      $this$buildClassSerialDescriptor.b45('first', $keySerializer.q44());
      $this$buildClassSerialDescriptor.b45('second', $valueSerializer.q44());
      return Unit_instance;
    };
  }
  function PairSerializer_0(keySerializer, valueSerializer) {
    KeyValueSerializer.call(this, keySerializer, valueSerializer);
    var tmp = this;
    tmp.t4n_1 = buildClassSerialDescriptor('kotlin.Pair', [], PairSerializer$descriptor$lambda(keySerializer, valueSerializer));
  }
  protoOf(PairSerializer_0).q44 = function () {
    return this.t4n_1;
  };
  protoOf(PairSerializer_0).u4n = function (_this__u8e3s4) {
    return _this__u8e3s4.w6_1;
  };
  protoOf(PairSerializer_0).k4n = function (_this__u8e3s4) {
    return this.u4n(_this__u8e3s4 instanceof Pair ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(PairSerializer_0).v4n = function (_this__u8e3s4) {
    return _this__u8e3s4.x6_1;
  };
  protoOf(PairSerializer_0).m4n = function (_this__u8e3s4) {
    return this.v4n(_this__u8e3s4 instanceof Pair ? _this__u8e3s4 : THROW_CCE());
  };
  protoOf(PairSerializer_0).n4n = function (key, value) {
    return to(key, value);
  };
  function decodeSequentially_1($this, composite) {
    var a = composite.v48($this.z4n_1, 0, $this.w4n_1);
    var b = composite.v48($this.z4n_1, 1, $this.x4n_1);
    var c = composite.v48($this.z4n_1, 2, $this.y4n_1);
    composite.j48($this.z4n_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.y48($this.z4n_1);
      if (index === -1) {
        break mainLoop;
      } else {
        if (index === 0) {
          a = composite.v48($this.z4n_1, 0, $this.w4n_1);
        } else {
          if (index === 1) {
            b = composite.v48($this.z4n_1, 1, $this.x4n_1);
          } else {
            if (index === 2) {
              c = composite.v48($this.z4n_1, 2, $this.y4n_1);
            } else {
              throw SerializationException_init_$Create$_0('Unexpected index ' + index);
            }
          }
        }
      }
    }
    composite.j48($this.z4n_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.b45('first', this$0.w4n_1.q44());
      $this$buildClassSerialDescriptor.b45('second', this$0.x4n_1.q44());
      $this$buildClassSerialDescriptor.b45('third', this$0.y4n_1.q44());
      return Unit_instance;
    };
  }
  function TripleSerializer_0(aSerializer, bSerializer, cSerializer) {
    this.w4n_1 = aSerializer;
    this.x4n_1 = bSerializer;
    this.y4n_1 = cSerializer;
    var tmp = this;
    tmp.z4n_1 = buildClassSerialDescriptor('kotlin.Triple', [], TripleSerializer$descriptor$lambda(this));
  }
  protoOf(TripleSerializer_0).q44 = function () {
    return this.z4n_1;
  };
  protoOf(TripleSerializer_0).a4o = function (encoder, value) {
    var structuredEncoder = encoder.i48(this.z4n_1);
    structuredEncoder.y49(this.z4n_1, 0, this.w4n_1, value.an_1);
    structuredEncoder.y49(this.z4n_1, 1, this.x4n_1, value.bn_1);
    structuredEncoder.y49(this.z4n_1, 2, this.y4n_1, value.cn_1);
    structuredEncoder.j48(this.z4n_1);
  };
  protoOf(TripleSerializer_0).r44 = function (encoder, value) {
    return this.a4o(encoder, value instanceof Triple ? value : THROW_CCE());
  };
  protoOf(TripleSerializer_0).s44 = function (decoder) {
    var composite = decoder.i48(this.z4n_1);
    if (composite.x48()) {
      return decodeSequentially_1(this, composite);
    }
    return decodeStructure(this, composite);
  };
  function KeyValueSerializer(keySerializer, valueSerializer) {
    this.o4n_1 = keySerializer;
    this.p4n_1 = valueSerializer;
  }
  protoOf(KeyValueSerializer).q4n = function (encoder, value) {
    var structuredEncoder = encoder.i48(this.q44());
    structuredEncoder.y49(this.q44(), 0, this.o4n_1, this.k4n(value));
    structuredEncoder.y49(this.q44(), 1, this.p4n_1, this.m4n(value));
    structuredEncoder.j48(this.q44());
  };
  protoOf(KeyValueSerializer).r44 = function (encoder, value) {
    return this.q4n(encoder, (value == null ? true : !(value == null)) ? value : THROW_CCE());
  };
  protoOf(KeyValueSerializer).s44 = function (decoder) {
    // Inline function 'kotlinx.serialization.encoding.decodeStructure' call
    var descriptor = this.q44();
    var composite = decoder.i48(descriptor);
    var tmp$ret$0;
    $l$block: {
      // Inline function 'kotlinx.serialization.internal.KeyValueSerializer.deserialize.<anonymous>' call
      if (composite.x48()) {
        var key = composite.v48(this.q44(), 0, this.o4n_1);
        var value = composite.v48(this.q44(), 1, this.p4n_1);
        tmp$ret$0 = this.n4n(key, value);
        break $l$block;
      }
      var key_0 = get_NULL();
      var value_0 = get_NULL();
      mainLoop: while (true) {
        var idx = composite.y48(this.q44());
        if (idx === -1) {
          break mainLoop;
        } else {
          if (idx === 0) {
            key_0 = composite.v48(this.q44(), 0, this.o4n_1);
          } else {
            if (idx === 1) {
              value_0 = composite.v48(this.q44(), 1, this.p4n_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.n4n(tmp, (value_0 == null ? true : !(value_0 == null)) ? value_0 : THROW_CCE());
    }
    var result = tmp$ret$0;
    composite.j48(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.b4o_1 = InlinePrimitiveDescriptor('kotlin.ULong', serializer_6(Companion_getInstance_0()));
  }
  protoOf(ULongSerializer).q44 = function () {
    return this.b4o_1;
  };
  protoOf(ULongSerializer).c4o = function (encoder, value) {
    var tmp = encoder.n49(this.b4o_1);
    // Inline function 'kotlin.ULong.toLong' call
    var tmp$ret$0 = _ULong___get_data__impl__fggpzb(value);
    tmp.h49(tmp$ret$0);
  };
  protoOf(ULongSerializer).r44 = function (encoder, value) {
    return this.c4o(encoder, value instanceof ULong ? value.vo_1 : THROW_CCE());
  };
  protoOf(ULongSerializer).d4o = function (decoder) {
    // Inline function 'kotlin.toULong' call
    var this_0 = decoder.f48(this.b4o_1).z47();
    return _ULong___init__impl__c78o9k(this_0);
  };
  protoOf(ULongSerializer).s44 = function (decoder) {
    return new ULong(this.d4o(decoder));
  };
  var ULongSerializer_instance;
  function ULongSerializer_getInstance() {
    if (ULongSerializer_instance == null)
      new ULongSerializer();
    return ULongSerializer_instance;
  }
  function UIntSerializer() {
    UIntSerializer_instance = this;
    this.e4o_1 = InlinePrimitiveDescriptor('kotlin.UInt', serializer_8(IntCompanionObject_instance));
  }
  protoOf(UIntSerializer).q44 = function () {
    return this.e4o_1;
  };
  protoOf(UIntSerializer).f4o = function (encoder, value) {
    var tmp = encoder.n49(this.e4o_1);
    // Inline function 'kotlin.UInt.toInt' call
    var tmp$ret$0 = _UInt___get_data__impl__f0vqqw(value);
    tmp.g49(tmp$ret$0);
  };
  protoOf(UIntSerializer).r44 = function (encoder, value) {
    return this.f4o(encoder, value instanceof UInt ? value.wn_1 : THROW_CCE());
  };
  protoOf(UIntSerializer).g4o = function (decoder) {
    // Inline function 'kotlin.toUInt' call
    var this_0 = decoder.f48(this.e4o_1).y47();
    return _UInt___init__impl__l7qpdl(this_0);
  };
  protoOf(UIntSerializer).s44 = function (decoder) {
    return new UInt(this.g4o(decoder));
  };
  var UIntSerializer_instance;
  function UIntSerializer_getInstance() {
    if (UIntSerializer_instance == null)
      new UIntSerializer();
    return UIntSerializer_instance;
  }
  function UShortSerializer() {
    UShortSerializer_instance = this;
    this.h4o_1 = InlinePrimitiveDescriptor('kotlin.UShort', serializer_10(ShortCompanionObject_instance));
  }
  protoOf(UShortSerializer).q44 = function () {
    return this.h4o_1;
  };
  protoOf(UShortSerializer).i4o = function (encoder, value) {
    var tmp = encoder.n49(this.h4o_1);
    // Inline function 'kotlin.UShort.toShort' call
    var tmp$ret$0 = _UShort___get_data__impl__g0245(value);
    tmp.f49(tmp$ret$0);
  };
  protoOf(UShortSerializer).r44 = function (encoder, value) {
    return this.i4o(encoder, value instanceof UShort ? value.hp_1 : THROW_CCE());
  };
  protoOf(UShortSerializer).j4o = function (decoder) {
    // Inline function 'kotlin.toUShort' call
    var this_0 = decoder.f48(this.h4o_1).x47();
    return _UShort___init__impl__jigrne(this_0);
  };
  protoOf(UShortSerializer).s44 = function (decoder) {
    return new UShort(this.j4o(decoder));
  };
  var UShortSerializer_instance;
  function UShortSerializer_getInstance() {
    if (UShortSerializer_instance == null)
      new UShortSerializer();
    return UShortSerializer_instance;
  }
  function UByteSerializer() {
    UByteSerializer_instance = this;
    this.k4o_1 = InlinePrimitiveDescriptor('kotlin.UByte', serializer_12(ByteCompanionObject_instance));
  }
  protoOf(UByteSerializer).q44 = function () {
    return this.k4o_1;
  };
  protoOf(UByteSerializer).l4o = function (encoder, value) {
    var tmp = encoder.n49(this.k4o_1);
    // Inline function 'kotlin.UByte.toByte' call
    var tmp$ret$0 = _UByte___get_data__impl__jof9qr(value);
    tmp.e49(tmp$ret$0);
  };
  protoOf(UByteSerializer).r44 = function (encoder, value) {
    return this.l4o(encoder, value instanceof UByte ? value.kn_1 : THROW_CCE());
  };
  protoOf(UByteSerializer).m4o = function (decoder) {
    // Inline function 'kotlin.toUByte' call
    var this_0 = decoder.f48(this.k4o_1).w47();
    return _UByte___init__impl__g9hnc4(this_0);
  };
  protoOf(UByteSerializer).s44 = function (decoder) {
    return new UByte(this.m4o(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).y45 = function (kClass, typeArgumentsSerializers, $super) {
    typeArgumentsSerializers = typeArgumentsSerializers === VOID ? emptyList() : typeArgumentsSerializers;
    return $super === VOID ? this.x45(kClass, typeArgumentsSerializers) : $super.x45.call(this, kClass, typeArgumentsSerializers);
  };
  function SerialModuleImpl(class2ContextualFactory, polyBase2Serializers, polyBase2DefaultSerializerProvider, polyBase2NamedSerializers, polyBase2DefaultDeserializerProvider) {
    SerializersModule.call(this);
    this.r46_1 = class2ContextualFactory;
    this.s46_1 = polyBase2Serializers;
    this.t46_1 = polyBase2DefaultSerializerProvider;
    this.u46_1 = polyBase2NamedSerializers;
    this.v46_1 = polyBase2DefaultDeserializerProvider;
  }
  protoOf(SerialModuleImpl).i4a = function (baseClass, value) {
    if (!baseClass.g7(value))
      return null;
    var tmp0_safe_receiver = this.s46_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.t46_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).h4a = function (baseClass, serializedClassName) {
    var tmp0_safe_receiver = this.u46_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.v46_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).x45 = function (kClass, typeArgumentsSerializers) {
    var tmp0_safe_receiver = this.r46_1.q(kClass);
    var tmp = tmp0_safe_receiver == null ? null : tmp0_safe_receiver.o4o(typeArgumentsSerializers);
    return (tmp == null ? true : isInterface(tmp, KSerializer)) ? tmp : null;
  };
  protoOf(SerialModuleImpl).n4o = function (collector) {
    // Inline function 'kotlin.collections.forEach' call
    // Inline function 'kotlin.collections.iterator' call
    var tmp0_iterator = this.r46_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.r4o_1;
        collector.s4o(tmp, isInterface(tmp_0, KSerializer) ? tmp_0 : THROW_CCE());
      } else {
        if (serial instanceof WithTypeArguments) {
          collector.q4o(kclass, serial.p4o_1);
        }
      }
    }
    // Inline function 'kotlin.collections.forEach' call
    // Inline function 'kotlin.collections.iterator' call
    var tmp0_iterator_0 = this.s46_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.t4o(tmp_1, tmp_2, tmp$ret$9);
      }
    }
    // Inline function 'kotlin.collections.forEach' call
    // Inline function 'kotlin.collections.iterator' call
    var tmp0_iterator_2 = this.t46_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.u4o(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.v46_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.v4o(tmp_4, typeof provider_0 === 'function' ? provider_0 : THROW_CCE());
    }
  };
  function Argless(serializer) {
    ContextualProvider.call(this);
    this.r4o_1 = serializer;
  }
  protoOf(Argless).o4o = function (typeArgumentsSerializers) {
    return this.r4o_1;
  };
  protoOf(Argless).equals = function (other) {
    var tmp;
    if (other instanceof Argless) {
      tmp = equals(other.r4o_1, this.r4o_1);
    } else {
      tmp = false;
    }
    return tmp;
  };
  protoOf(Argless).hashCode = function () {
    return hashCode(this.r4o_1);
  };
  function WithTypeArguments(provider) {
    ContextualProvider.call(this);
    this.p4o_1 = provider;
  }
  protoOf(WithTypeArguments).o4o = function (typeArgumentsSerializers) {
    return this.p4o_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.b4p(_this__u8e3s4);
    builder.b4p(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.w4o_1 = HashMap_init_$Create$();
    var tmp_0 = this;
    // Inline function 'kotlin.collections.hashMapOf' call
    tmp_0.x4o_1 = HashMap_init_$Create$();
    var tmp_1 = this;
    // Inline function 'kotlin.collections.hashMapOf' call
    tmp_1.y4o_1 = HashMap_init_$Create$();
    var tmp_2 = this;
    // Inline function 'kotlin.collections.hashMapOf' call
    tmp_2.z4o_1 = HashMap_init_$Create$();
    var tmp_3 = this;
    // Inline function 'kotlin.collections.hashMapOf' call
    tmp_3.a4p_1 = HashMap_init_$Create$();
  }
  protoOf(SerializersModuleBuilder).s4o = function (kClass, serializer) {
    return this.c4p(kClass, new Argless(serializer));
  };
  protoOf(SerializersModuleBuilder).q4o = function (kClass, provider) {
    return this.c4p(kClass, new WithTypeArguments(provider));
  };
  protoOf(SerializersModuleBuilder).t4o = function (baseClass, actualClass, actualSerializer) {
    this.d4p(baseClass, actualClass, actualSerializer);
  };
  protoOf(SerializersModuleBuilder).u4o = function (baseClass, defaultSerializerProvider) {
    this.e4p(baseClass, defaultSerializerProvider, false);
  };
  protoOf(SerializersModuleBuilder).v4o = function (baseClass, defaultDeserializerProvider) {
    this.f4p(baseClass, defaultDeserializerProvider, false);
  };
  protoOf(SerializersModuleBuilder).b4p = function (module_0) {
    module_0.n4o(this);
  };
  protoOf(SerializersModuleBuilder).g4p = function (forClass, provider, allowOverwrite) {
    if (!allowOverwrite) {
      var previous = this.w4o_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.w4o_1.s(forClass, provider);
  };
  protoOf(SerializersModuleBuilder).c4p = function (forClass, provider, allowOverwrite, $super) {
    allowOverwrite = allowOverwrite === VOID ? false : allowOverwrite;
    var tmp;
    if ($super === VOID) {
      this.g4p(forClass, provider, allowOverwrite);
      tmp = Unit_instance;
    } else {
      tmp = $super.g4p.call(this, forClass, provider, allowOverwrite);
    }
    return tmp;
  };
  protoOf(SerializersModuleBuilder).e4p = function (baseClass, defaultSerializerProvider, allowOverwrite) {
    var previous = this.y4o_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.y4o_1.s(baseClass, defaultSerializerProvider);
  };
  protoOf(SerializersModuleBuilder).f4p = function (baseClass, defaultDeserializerProvider, allowOverwrite) {
    var previous = this.a4p_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.a4p_1.s(baseClass, defaultDeserializerProvider);
  };
  protoOf(SerializersModuleBuilder).h4p = function (baseClass, concreteClass, concreteSerializer, allowOverwrite) {
    var name = concreteSerializer.q44().q45();
    // Inline function 'kotlin.collections.getOrPut' call
    var this_0 = this.x4o_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.z4o_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.q44().q45());
      }
      // 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.q44().q45());
      }
    }
    var previousByName = names.q(name);
    if (!(previousByName == null)) {
      // Inline function 'kotlin.sequences.find' call
      var this_2 = asSequence(ensureNotNull(this.x4o_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).d4p = function (baseClass, concreteClass, concreteSerializer, allowOverwrite, $super) {
    allowOverwrite = allowOverwrite === VOID ? false : allowOverwrite;
    var tmp;
    if ($super === VOID) {
      this.h4p(baseClass, concreteClass, concreteSerializer, allowOverwrite);
      tmp = Unit_instance;
    } else {
      tmp = $super.h4p.call(this, baseClass, concreteClass, concreteSerializer, allowOverwrite);
    }
    return tmp;
  };
  protoOf(SerializersModuleBuilder).f3 = function () {
    return new SerialModuleImpl(this.w4o_1, this.x4o_1, this.y4o_1, this.z4o_1, this.a4p_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.i4p_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.i4p_1.equals(tmp0_other_with_cast.i4p_1))
      return false;
    return true;
  };
  protoOf(SerializableWith).hashCode = function () {
    return imul(getStringHashCode('serializer'), 127) ^ this.i4p_1.hashCode();
  };
  protoOf(SerializableWith).toString = function () {
    return '@kotlinx.serialization.SerializableWith(serializer=' + this.i4p_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.v4g(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.j4p_1 = $factory;
  }
  protoOf(createCache$1).z45 = function (key) {
    return this.j4p_1(key);
  };
  function createParametrizedCache$1($factory) {
    this.k4p_1 = $factory;
  }
  protoOf(createParametrizedCache$1).a46 = 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.k4p_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).b46 = get_isNullable;
  protoOf(SerialDescriptorImpl).h46 = get_isInline;
  protoOf(AbstractDecoder).v48 = decodeSerializableElement$default;
  protoOf(AbstractDecoder).h48 = decodeSerializableValue;
  protoOf(AbstractDecoder).x48 = decodeSequentially;
  protoOf(AbstractDecoder).z48 = decodeCollectionSize;
  protoOf(AbstractEncoder).c4a = encodeNotNullMark;
  protoOf(AbstractEncoder).d4a = beginCollection;
  protoOf(AbstractEncoder).z49 = encodeSerializableValue;
  protoOf(AbstractEncoder).b4a = encodeNullableSerializableValue;
  protoOf(AbstractEncoder).e4a = shouldEncodeElementDefault;
  protoOf(ListLikeDescriptor).b46 = get_isNullable;
  protoOf(ListLikeDescriptor).h46 = get_isInline;
  protoOf(ListLikeDescriptor).f46 = get_annotations;
  protoOf(MapLikeDescriptor).b46 = get_isNullable;
  protoOf(MapLikeDescriptor).h46 = get_isInline;
  protoOf(MapLikeDescriptor).f46 = get_annotations;
  protoOf(PluginGeneratedSerialDescriptor).b46 = get_isNullable;
  protoOf(PluginGeneratedSerialDescriptor).h46 = get_isInline;
  protoOf(InlinePrimitiveDescriptor$1).l4g = typeParametersSerializers;
  protoOf(NothingSerialDescriptor).b46 = get_isNullable;
  protoOf(NothingSerialDescriptor).h46 = get_isInline;
  protoOf(NothingSerialDescriptor).f46 = get_annotations;
  protoOf(PrimitiveSerialDescriptor_0).b46 = get_isNullable;
  protoOf(PrimitiveSerialDescriptor_0).h46 = get_isInline;
  protoOf(PrimitiveSerialDescriptor_0).f46 = get_annotations;
  protoOf(TaggedDecoder).v48 = decodeSerializableElement$default;
  protoOf(TaggedDecoder).h48 = decodeSerializableValue;
  protoOf(TaggedDecoder).x48 = decodeSequentially;
  protoOf(TaggedDecoder).z48 = 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
