#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.Collections.Generic.GenericEqualityComparer`1<System.Object>
struct GenericEqualityComparer_1_t4110162069;
// System.Object
struct Il2CppObject;

#include "codegen/il2cpp-codegen.h"
#include "mscorlib_System_Object4170816371.h"

// System.Void System.Collections.Generic.GenericEqualityComparer`1<System.Object>::.ctor()
extern "C"  void GenericEqualityComparer_1__ctor_m1097371640_gshared (GenericEqualityComparer_1_t4110162069 * __this, const MethodInfo* method);
#define GenericEqualityComparer_1__ctor_m1097371640(__this, method) ((  void (*) (GenericEqualityComparer_1_t4110162069 *, const MethodInfo*))GenericEqualityComparer_1__ctor_m1097371640_gshared)(__this, method)
// System.Int32 System.Collections.Generic.GenericEqualityComparer`1<System.Object>::GetHashCode(T)
extern "C"  int32_t GenericEqualityComparer_1_GetHashCode_m4022924795_gshared (GenericEqualityComparer_1_t4110162069 * __this, Il2CppObject * ___obj0, const MethodInfo* method);
#define GenericEqualityComparer_1_GetHashCode_m4022924795(__this, ___obj0, method) ((  int32_t (*) (GenericEqualityComparer_1_t4110162069 *, Il2CppObject *, const MethodInfo*))GenericEqualityComparer_1_GetHashCode_m4022924795_gshared)(__this, ___obj0, method)
// System.Boolean System.Collections.Generic.GenericEqualityComparer`1<System.Object>::Equals(T,T)
extern "C"  bool GenericEqualityComparer_1_Equals_m2036593421_gshared (GenericEqualityComparer_1_t4110162069 * __this, Il2CppObject * ___x0, Il2CppObject * ___y1, const MethodInfo* method);
#define GenericEqualityComparer_1_Equals_m2036593421(__this, ___x0, ___y1, method) ((  bool (*) (GenericEqualityComparer_1_t4110162069 *, Il2CppObject *, Il2CppObject *, const MethodInfo*))GenericEqualityComparer_1_Equals_m2036593421_gshared)(__this, ___x0, ___y1, method)
