#pragma once

#include "il2cpp-config.h"

#ifndef _MSC_VER
# include <alloca.h>
#else
# include <malloc.h>
#endif

#include <stdint.h>
#include <assert.h>
#include <exception>

// System.Array
struct Il2CppArray;
// System.Object
struct Il2CppObject;

#include "codegen/il2cpp-codegen.h"
#include "mscorlib_System_Array_InternalEnumerator_1_gen2005001078.h"
#include "mscorlib_System_Array1146569071.h"
#include "mscorlib_System_Collections_Generic_KeyValuePair_23222658402.h"

// System.Void System.Array/InternalEnumerator`1<System.Collections.Generic.KeyValuePair`2<System.Object,System.Int32>>::.ctor(System.Array)
extern "C"  void InternalEnumerator_1__ctor_m2624907895_gshared (InternalEnumerator_1_t2005001078 * __this, Il2CppArray * ___array0, const MethodInfo* method);
#define InternalEnumerator_1__ctor_m2624907895(__this, ___array0, method) ((  void (*) (InternalEnumerator_1_t2005001078 *, Il2CppArray *, const MethodInfo*))InternalEnumerator_1__ctor_m2624907895_gshared)(__this, ___array0, method)
// System.Void System.Array/InternalEnumerator`1<System.Collections.Generic.KeyValuePair`2<System.Object,System.Int32>>::System.Collections.IEnumerator.Reset()
extern "C"  void InternalEnumerator_1_System_Collections_IEnumerator_Reset_m3448222153_gshared (InternalEnumerator_1_t2005001078 * __this, const MethodInfo* method);
#define InternalEnumerator_1_System_Collections_IEnumerator_Reset_m3448222153(__this, method) ((  void (*) (InternalEnumerator_1_t2005001078 *, const MethodInfo*))InternalEnumerator_1_System_Collections_IEnumerator_Reset_m3448222153_gshared)(__this, method)
// System.Object System.Array/InternalEnumerator`1<System.Collections.Generic.KeyValuePair`2<System.Object,System.Int32>>::System.Collections.IEnumerator.get_Current()
extern "C"  Il2CppObject * InternalEnumerator_1_System_Collections_IEnumerator_get_Current_m1348796351_gshared (InternalEnumerator_1_t2005001078 * __this, const MethodInfo* method);
#define InternalEnumerator_1_System_Collections_IEnumerator_get_Current_m1348796351(__this, method) ((  Il2CppObject * (*) (InternalEnumerator_1_t2005001078 *, const MethodInfo*))InternalEnumerator_1_System_Collections_IEnumerator_get_Current_m1348796351_gshared)(__this, method)
// System.Void System.Array/InternalEnumerator`1<System.Collections.Generic.KeyValuePair`2<System.Object,System.Int32>>::Dispose()
extern "C"  void InternalEnumerator_1_Dispose_m1793576206_gshared (InternalEnumerator_1_t2005001078 * __this, const MethodInfo* method);
#define InternalEnumerator_1_Dispose_m1793576206(__this, method) ((  void (*) (InternalEnumerator_1_t2005001078 *, const MethodInfo*))InternalEnumerator_1_Dispose_m1793576206_gshared)(__this, method)
// System.Boolean System.Array/InternalEnumerator`1<System.Collections.Generic.KeyValuePair`2<System.Object,System.Int32>>::MoveNext()
extern "C"  bool InternalEnumerator_1_MoveNext_m1172054137_gshared (InternalEnumerator_1_t2005001078 * __this, const MethodInfo* method);
#define InternalEnumerator_1_MoveNext_m1172054137(__this, method) ((  bool (*) (InternalEnumerator_1_t2005001078 *, const MethodInfo*))InternalEnumerator_1_MoveNext_m1172054137_gshared)(__this, method)
// T System.Array/InternalEnumerator`1<System.Collections.Generic.KeyValuePair`2<System.Object,System.Int32>>::get_Current()
extern "C"  KeyValuePair_2_t3222658402  InternalEnumerator_1_get_Current_m1033564064_gshared (InternalEnumerator_1_t2005001078 * __this, const MethodInfo* method);
#define InternalEnumerator_1_get_Current_m1033564064(__this, method) ((  KeyValuePair_2_t3222658402  (*) (InternalEnumerator_1_t2005001078 *, const MethodInfo*))InternalEnumerator_1_get_Current_m1033564064_gshared)(__this, method)
