#include "pch-cpp.hpp"

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


#include <limits>
#include <stdint.h>


template <typename R>
struct VirtFuncInvoker0
{
	typedef R (*Func)(void*, const RuntimeMethod*);

	static inline R Invoke (Il2CppMethodSlot slot, RuntimeObject* obj)
	{
		const VirtualInvokeData& invokeData = il2cpp_codegen_get_virtual_invoke_data(slot, obj);
		return ((Func)invokeData.methodPtr)(obj, invokeData.method);
	}
};
template <typename R, typename T1>
struct VirtFuncInvoker1
{
	typedef R (*Func)(void*, T1, const RuntimeMethod*);

	static inline R Invoke (Il2CppMethodSlot slot, RuntimeObject* obj, T1 p1)
	{
		const VirtualInvokeData& invokeData = il2cpp_codegen_get_virtual_invoke_data(slot, obj);
		return ((Func)invokeData.methodPtr)(obj, p1, invokeData.method);
	}
};
struct VirtActionInvoker0
{
	typedef void (*Action)(void*, const RuntimeMethod*);

	static inline void Invoke (Il2CppMethodSlot slot, RuntimeObject* obj)
	{
		const VirtualInvokeData& invokeData = il2cpp_codegen_get_virtual_invoke_data(slot, obj);
		((Action)invokeData.methodPtr)(obj, invokeData.method);
	}
};
template <typename T1>
struct VirtActionInvoker1
{
	typedef void (*Action)(void*, T1, const RuntimeMethod*);

	static inline void Invoke (Il2CppMethodSlot slot, RuntimeObject* obj, T1 p1)
	{
		const VirtualInvokeData& invokeData = il2cpp_codegen_get_virtual_invoke_data(slot, obj);
		((Action)invokeData.methodPtr)(obj, p1, invokeData.method);
	}
};

// System.Collections.Generic.List`1<System.Object>
struct List_1_t3F94120C77410A62EAE48421CF166B83AB95A2F5;
// System.Collections.Generic.List`1<UnityEngine.U2D.IK.Solver2D>
struct List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479;
// System.Collections.Generic.List`1<UnityEngine.Vector3>
struct List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181;
// UnityEngine.U2D.IK.FABRIKChain2D[]
struct FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2;
// System.Int32[]
struct Int32U5BU5D_t70F1BDC14B1786481B176D6139A5E3B87DC54C32;
// UnityEngine.Quaternion[]
struct QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6;
// System.Single[]
struct SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA;
// UnityEngine.U2D.IK.Solver2D[]
struct Solver2DU5BU5D_t24B7A56258CF56DC069E49A852DDC9A8F7436466;
// UnityEngine.Transform[]
struct TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D;
// UnityEngine.Vector2[]
struct Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA;
// UnityEngine.Vector3[]
struct Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4;
// System.Attribute
struct Attribute_t037CA9D9F3B742C063DB364D2EEBBF9FC5772C71;
// UnityEngine.Behaviour
struct Behaviour_t1A3DDDCF73B4627928FBFE02ED52B7251777DBD9;
// UnityEngine.U2D.IK.CCDSolver2D
struct CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE;
// UnityEngine.Component
struct Component_t62FBC8D2420DA4BE9037AFE430740F6B3EECA684;
// UnityEngine.U2D.IK.FabrikSolver2D
struct FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC;
// UnityEngine.U2D.IK.IKChain2D
struct IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F;
// UnityEngine.U2D.IK.IKManager2D
struct IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510;
// UnityEngine.U2D.IK.IKUtility
struct IKUtility_t5432A6816929991EF2E73DC80923184DB10A32F4;
// UnityEngine.U2D.IK.LimbSolver2D
struct LimbSolver2D_t7853B3E9E5644B3A9FE624BCF58FD4279E5D2611;
// UnityEngine.MonoBehaviour
struct MonoBehaviour_t37A501200D970A8257124B0EAE00A0FF3DDC354A;
// UnityEngine.Object
struct Object_tF2F3778131EFF286AF62B7B013A170F95A91571A;
// UnityEngine.U2D.IK.Solver2D
struct Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6;
// UnityEngine.U2D.IK.Solver2DMenuAttribute
struct Solver2DMenuAttribute_tD2DF460A88F66EA84C3FE59F208BA336BF57A713;
// System.String
struct String_t;
// UnityEngine.Transform
struct Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1;
// System.Void
struct Void_t700C6383A2A510C2CF4DD86DABD5CA9FF70ADAC5;

IL2CPP_EXTERN_C RuntimeClass* IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F_il2cpp_TypeInfo_var;
IL2CPP_EXTERN_C RuntimeClass* Int32_tFDE5F8CD43D10453F6A2E0C77FE48C6CC7009046_il2cpp_TypeInfo_var;
IL2CPP_EXTERN_C RuntimeClass* List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181_il2cpp_TypeInfo_var;
IL2CPP_EXTERN_C RuntimeClass* List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479_il2cpp_TypeInfo_var;
IL2CPP_EXTERN_C RuntimeClass* Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var;
IL2CPP_EXTERN_C RuntimeClass* QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6_il2cpp_TypeInfo_var;
IL2CPP_EXTERN_C RuntimeClass* SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA_il2cpp_TypeInfo_var;
IL2CPP_EXTERN_C RuntimeClass* Single_tE07797BA3C98D4CA9B5A19413C19A76688AB899E_il2cpp_TypeInfo_var;
IL2CPP_EXTERN_C RuntimeClass* TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D_il2cpp_TypeInfo_var;
IL2CPP_EXTERN_C RuntimeClass* Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA_il2cpp_TypeInfo_var;
IL2CPP_EXTERN_C RuntimeClass* Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4_il2cpp_TypeInfo_var;
IL2CPP_EXTERN_C const RuntimeMethod* Component_GetComponentInParent_TisIKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510_m94867AA44F7B27FAA1795DB215F8C832DF9EE0D5_RuntimeMethod_var;
IL2CPP_EXTERN_C const RuntimeMethod* Component_GetComponentsInChildren_TisSolver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6_m16C798614AE57E2DA830AAF2CAFA405FA5B7EDA2_RuntimeMethod_var;
IL2CPP_EXTERN_C const RuntimeMethod* Enumerator_Dispose_mC2D67A1ED0D450AD54A905F9EF34E62B868B0896_RuntimeMethod_var;
IL2CPP_EXTERN_C const RuntimeMethod* Enumerator_MoveNext_m049CFDB39DDCB7B3ABC594574C3843EAF9A72C05_RuntimeMethod_var;
IL2CPP_EXTERN_C const RuntimeMethod* Enumerator_get_Current_m1539A08E25F713882E7B4A29E3FC618F5890C42F_RuntimeMethod_var;
IL2CPP_EXTERN_C const RuntimeMethod* List_1_Add_mA8ADA8666BA41E6EB329B7E4F3E3A41A23FCB103_RuntimeMethod_var;
IL2CPP_EXTERN_C const RuntimeMethod* List_1_Add_mAE131B53917AD7132F6BA2C05D5D17C38C5A2E59_RuntimeMethod_var;
IL2CPP_EXTERN_C const RuntimeMethod* List_1_Clear_m44EA024D005005EE4938BE9BE0E9E5C97337166E_RuntimeMethod_var;
IL2CPP_EXTERN_C const RuntimeMethod* List_1_Clear_mE0F03A2E42E2F7F8A282AE01C12945F7379DC702_RuntimeMethod_var;
IL2CPP_EXTERN_C const RuntimeMethod* List_1_Contains_mFCC76F5D887C6FE8A803523360E51659BE17C1ED_RuntimeMethod_var;
IL2CPP_EXTERN_C const RuntimeMethod* List_1_GetEnumerator_m37365AAB52AECA923EFAE4D6398AD6D88D015F72_RuntimeMethod_var;
IL2CPP_EXTERN_C const RuntimeMethod* List_1_Remove_m503270EF64E8E4C3B549B048BE4B30D138997146_RuntimeMethod_var;
IL2CPP_EXTERN_C const RuntimeMethod* List_1__ctor_m86F667E44E8BE415B5D35272D407953C5E573706_RuntimeMethod_var;
IL2CPP_EXTERN_C const RuntimeMethod* List_1__ctor_mF8F23D572031748AD428623AE16803455997E297_RuntimeMethod_var;
IL2CPP_EXTERN_C const RuntimeMethod* List_1_get_Count_m320FF0DD39F83A684F9E277C6A0D07BC3CEDA7D9_RuntimeMethod_var;
IL2CPP_EXTERN_C const RuntimeMethod* List_1_get_Item_m554804AC447B0BA1F93C64E863FF7DB0527AFED9_RuntimeMethod_var;
struct Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 ;
struct Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E ;

struct FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2;
struct Int32U5BU5D_t70F1BDC14B1786481B176D6139A5E3B87DC54C32;
struct QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6;
struct SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA;
struct TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D;
struct Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA;
struct Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4;

IL2CPP_EXTERN_C_BEGIN
IL2CPP_EXTERN_C_END

#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Winvalid-offsetof"
#pragma clang diagnostic ignored "-Wunused-variable"
#endif

// <Module>
struct U3CModuleU3E_tFBE0E8DF4D6C3594CE300379B4D8B9122035F720 
{
public:

public:
};


// System.Object


// System.Collections.Generic.List`1<UnityEngine.U2D.IK.Solver2D>
struct List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479  : public RuntimeObject
{
public:
	// T[] System.Collections.Generic.List`1::_items
	Solver2DU5BU5D_t24B7A56258CF56DC069E49A852DDC9A8F7436466* ____items_1;
	// System.Int32 System.Collections.Generic.List`1::_size
	int32_t ____size_2;
	// System.Int32 System.Collections.Generic.List`1::_version
	int32_t ____version_3;
	// System.Object System.Collections.Generic.List`1::_syncRoot
	RuntimeObject * ____syncRoot_4;

public:
	inline static int32_t get_offset_of__items_1() { return static_cast<int32_t>(offsetof(List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479, ____items_1)); }
	inline Solver2DU5BU5D_t24B7A56258CF56DC069E49A852DDC9A8F7436466* get__items_1() const { return ____items_1; }
	inline Solver2DU5BU5D_t24B7A56258CF56DC069E49A852DDC9A8F7436466** get_address_of__items_1() { return &____items_1; }
	inline void set__items_1(Solver2DU5BU5D_t24B7A56258CF56DC069E49A852DDC9A8F7436466* value)
	{
		____items_1 = value;
		Il2CppCodeGenWriteBarrier((void**)(&____items_1), (void*)value);
	}

	inline static int32_t get_offset_of__size_2() { return static_cast<int32_t>(offsetof(List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479, ____size_2)); }
	inline int32_t get__size_2() const { return ____size_2; }
	inline int32_t* get_address_of__size_2() { return &____size_2; }
	inline void set__size_2(int32_t value)
	{
		____size_2 = value;
	}

	inline static int32_t get_offset_of__version_3() { return static_cast<int32_t>(offsetof(List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479, ____version_3)); }
	inline int32_t get__version_3() const { return ____version_3; }
	inline int32_t* get_address_of__version_3() { return &____version_3; }
	inline void set__version_3(int32_t value)
	{
		____version_3 = value;
	}

	inline static int32_t get_offset_of__syncRoot_4() { return static_cast<int32_t>(offsetof(List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479, ____syncRoot_4)); }
	inline RuntimeObject * get__syncRoot_4() const { return ____syncRoot_4; }
	inline RuntimeObject ** get_address_of__syncRoot_4() { return &____syncRoot_4; }
	inline void set__syncRoot_4(RuntimeObject * value)
	{
		____syncRoot_4 = value;
		Il2CppCodeGenWriteBarrier((void**)(&____syncRoot_4), (void*)value);
	}
};

struct List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479_StaticFields
{
public:
	// T[] System.Collections.Generic.List`1::_emptyArray
	Solver2DU5BU5D_t24B7A56258CF56DC069E49A852DDC9A8F7436466* ____emptyArray_5;

public:
	inline static int32_t get_offset_of__emptyArray_5() { return static_cast<int32_t>(offsetof(List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479_StaticFields, ____emptyArray_5)); }
	inline Solver2DU5BU5D_t24B7A56258CF56DC069E49A852DDC9A8F7436466* get__emptyArray_5() const { return ____emptyArray_5; }
	inline Solver2DU5BU5D_t24B7A56258CF56DC069E49A852DDC9A8F7436466** get_address_of__emptyArray_5() { return &____emptyArray_5; }
	inline void set__emptyArray_5(Solver2DU5BU5D_t24B7A56258CF56DC069E49A852DDC9A8F7436466* value)
	{
		____emptyArray_5 = value;
		Il2CppCodeGenWriteBarrier((void**)(&____emptyArray_5), (void*)value);
	}
};


// System.Collections.Generic.List`1<UnityEngine.Vector3>
struct List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181  : public RuntimeObject
{
public:
	// T[] System.Collections.Generic.List`1::_items
	Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* ____items_1;
	// System.Int32 System.Collections.Generic.List`1::_size
	int32_t ____size_2;
	// System.Int32 System.Collections.Generic.List`1::_version
	int32_t ____version_3;
	// System.Object System.Collections.Generic.List`1::_syncRoot
	RuntimeObject * ____syncRoot_4;

public:
	inline static int32_t get_offset_of__items_1() { return static_cast<int32_t>(offsetof(List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181, ____items_1)); }
	inline Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* get__items_1() const { return ____items_1; }
	inline Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** get_address_of__items_1() { return &____items_1; }
	inline void set__items_1(Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* value)
	{
		____items_1 = value;
		Il2CppCodeGenWriteBarrier((void**)(&____items_1), (void*)value);
	}

	inline static int32_t get_offset_of__size_2() { return static_cast<int32_t>(offsetof(List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181, ____size_2)); }
	inline int32_t get__size_2() const { return ____size_2; }
	inline int32_t* get_address_of__size_2() { return &____size_2; }
	inline void set__size_2(int32_t value)
	{
		____size_2 = value;
	}

	inline static int32_t get_offset_of__version_3() { return static_cast<int32_t>(offsetof(List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181, ____version_3)); }
	inline int32_t get__version_3() const { return ____version_3; }
	inline int32_t* get_address_of__version_3() { return &____version_3; }
	inline void set__version_3(int32_t value)
	{
		____version_3 = value;
	}

	inline static int32_t get_offset_of__syncRoot_4() { return static_cast<int32_t>(offsetof(List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181, ____syncRoot_4)); }
	inline RuntimeObject * get__syncRoot_4() const { return ____syncRoot_4; }
	inline RuntimeObject ** get_address_of__syncRoot_4() { return &____syncRoot_4; }
	inline void set__syncRoot_4(RuntimeObject * value)
	{
		____syncRoot_4 = value;
		Il2CppCodeGenWriteBarrier((void**)(&____syncRoot_4), (void*)value);
	}
};

struct List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181_StaticFields
{
public:
	// T[] System.Collections.Generic.List`1::_emptyArray
	Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* ____emptyArray_5;

public:
	inline static int32_t get_offset_of__emptyArray_5() { return static_cast<int32_t>(offsetof(List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181_StaticFields, ____emptyArray_5)); }
	inline Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* get__emptyArray_5() const { return ____emptyArray_5; }
	inline Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** get_address_of__emptyArray_5() { return &____emptyArray_5; }
	inline void set__emptyArray_5(Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* value)
	{
		____emptyArray_5 = value;
		Il2CppCodeGenWriteBarrier((void**)(&____emptyArray_5), (void*)value);
	}
};

struct Il2CppArrayBounds;

// System.Array


// System.Attribute
struct Attribute_t037CA9D9F3B742C063DB364D2EEBBF9FC5772C71  : public RuntimeObject
{
public:

public:
};


// UnityEngine.U2D.IK.CCD2D
struct CCD2D_t82258235ABC03D19A07071991914A356C19C1BE3  : public RuntimeObject
{
public:

public:
};


// UnityEngine.U2D.IK.FABRIK2D
struct FABRIK2D_t3BDEA4B0728B4692A5B64CD6F09E71D3097CE6D7  : public RuntimeObject
{
public:

public:
};


// UnityEngine.U2D.IK.IKChain2D
struct IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F  : public RuntimeObject
{
public:
	// UnityEngine.Transform UnityEngine.U2D.IK.IKChain2D::m_EffectorTransform
	Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * ___m_EffectorTransform_0;
	// UnityEngine.Transform UnityEngine.U2D.IK.IKChain2D::m_TargetTransform
	Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * ___m_TargetTransform_1;
	// System.Int32 UnityEngine.U2D.IK.IKChain2D::m_TransformCount
	int32_t ___m_TransformCount_2;
	// UnityEngine.Transform[] UnityEngine.U2D.IK.IKChain2D::m_Transforms
	TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* ___m_Transforms_3;
	// UnityEngine.Quaternion[] UnityEngine.U2D.IK.IKChain2D::m_DefaultLocalRotations
	QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6* ___m_DefaultLocalRotations_4;
	// UnityEngine.Quaternion[] UnityEngine.U2D.IK.IKChain2D::m_StoredLocalRotations
	QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6* ___m_StoredLocalRotations_5;
	// System.Single[] UnityEngine.U2D.IK.IKChain2D::m_Lengths
	SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* ___m_Lengths_6;

public:
	inline static int32_t get_offset_of_m_EffectorTransform_0() { return static_cast<int32_t>(offsetof(IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F, ___m_EffectorTransform_0)); }
	inline Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * get_m_EffectorTransform_0() const { return ___m_EffectorTransform_0; }
	inline Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 ** get_address_of_m_EffectorTransform_0() { return &___m_EffectorTransform_0; }
	inline void set_m_EffectorTransform_0(Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * value)
	{
		___m_EffectorTransform_0 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_EffectorTransform_0), (void*)value);
	}

	inline static int32_t get_offset_of_m_TargetTransform_1() { return static_cast<int32_t>(offsetof(IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F, ___m_TargetTransform_1)); }
	inline Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * get_m_TargetTransform_1() const { return ___m_TargetTransform_1; }
	inline Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 ** get_address_of_m_TargetTransform_1() { return &___m_TargetTransform_1; }
	inline void set_m_TargetTransform_1(Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * value)
	{
		___m_TargetTransform_1 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_TargetTransform_1), (void*)value);
	}

	inline static int32_t get_offset_of_m_TransformCount_2() { return static_cast<int32_t>(offsetof(IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F, ___m_TransformCount_2)); }
	inline int32_t get_m_TransformCount_2() const { return ___m_TransformCount_2; }
	inline int32_t* get_address_of_m_TransformCount_2() { return &___m_TransformCount_2; }
	inline void set_m_TransformCount_2(int32_t value)
	{
		___m_TransformCount_2 = value;
	}

	inline static int32_t get_offset_of_m_Transforms_3() { return static_cast<int32_t>(offsetof(IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F, ___m_Transforms_3)); }
	inline TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* get_m_Transforms_3() const { return ___m_Transforms_3; }
	inline TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D** get_address_of_m_Transforms_3() { return &___m_Transforms_3; }
	inline void set_m_Transforms_3(TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* value)
	{
		___m_Transforms_3 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_Transforms_3), (void*)value);
	}

	inline static int32_t get_offset_of_m_DefaultLocalRotations_4() { return static_cast<int32_t>(offsetof(IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F, ___m_DefaultLocalRotations_4)); }
	inline QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6* get_m_DefaultLocalRotations_4() const { return ___m_DefaultLocalRotations_4; }
	inline QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6** get_address_of_m_DefaultLocalRotations_4() { return &___m_DefaultLocalRotations_4; }
	inline void set_m_DefaultLocalRotations_4(QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6* value)
	{
		___m_DefaultLocalRotations_4 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_DefaultLocalRotations_4), (void*)value);
	}

	inline static int32_t get_offset_of_m_StoredLocalRotations_5() { return static_cast<int32_t>(offsetof(IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F, ___m_StoredLocalRotations_5)); }
	inline QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6* get_m_StoredLocalRotations_5() const { return ___m_StoredLocalRotations_5; }
	inline QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6** get_address_of_m_StoredLocalRotations_5() { return &___m_StoredLocalRotations_5; }
	inline void set_m_StoredLocalRotations_5(QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6* value)
	{
		___m_StoredLocalRotations_5 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_StoredLocalRotations_5), (void*)value);
	}

	inline static int32_t get_offset_of_m_Lengths_6() { return static_cast<int32_t>(offsetof(IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F, ___m_Lengths_6)); }
	inline SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* get_m_Lengths_6() const { return ___m_Lengths_6; }
	inline SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA** get_address_of_m_Lengths_6() { return &___m_Lengths_6; }
	inline void set_m_Lengths_6(SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* value)
	{
		___m_Lengths_6 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_Lengths_6), (void*)value);
	}
};


// UnityEngine.U2D.IK.IKUtility
struct IKUtility_t5432A6816929991EF2E73DC80923184DB10A32F4  : public RuntimeObject
{
public:

public:
};


// UnityEngine.U2D.IK.Limb
struct Limb_t9C3E65D3FAD0E9DB55CBCAA68A42FB831F681AD9  : public RuntimeObject
{
public:

public:
};


// System.String
struct String_t  : public RuntimeObject
{
public:
	// System.Int32 System.String::m_stringLength
	int32_t ___m_stringLength_0;
	// System.Char System.String::m_firstChar
	Il2CppChar ___m_firstChar_1;

public:
	inline static int32_t get_offset_of_m_stringLength_0() { return static_cast<int32_t>(offsetof(String_t, ___m_stringLength_0)); }
	inline int32_t get_m_stringLength_0() const { return ___m_stringLength_0; }
	inline int32_t* get_address_of_m_stringLength_0() { return &___m_stringLength_0; }
	inline void set_m_stringLength_0(int32_t value)
	{
		___m_stringLength_0 = value;
	}

	inline static int32_t get_offset_of_m_firstChar_1() { return static_cast<int32_t>(offsetof(String_t, ___m_firstChar_1)); }
	inline Il2CppChar get_m_firstChar_1() const { return ___m_firstChar_1; }
	inline Il2CppChar* get_address_of_m_firstChar_1() { return &___m_firstChar_1; }
	inline void set_m_firstChar_1(Il2CppChar value)
	{
		___m_firstChar_1 = value;
	}
};

struct String_t_StaticFields
{
public:
	// System.String System.String::Empty
	String_t* ___Empty_5;

public:
	inline static int32_t get_offset_of_Empty_5() { return static_cast<int32_t>(offsetof(String_t_StaticFields, ___Empty_5)); }
	inline String_t* get_Empty_5() const { return ___Empty_5; }
	inline String_t** get_address_of_Empty_5() { return &___Empty_5; }
	inline void set_Empty_5(String_t* value)
	{
		___Empty_5 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___Empty_5), (void*)value);
	}
};


// System.ValueType
struct ValueType_tDBF999C1B75C48C68621878250DBF6CDBCF51E52  : public RuntimeObject
{
public:

public:
};

// Native definition for P/Invoke marshalling of System.ValueType
struct ValueType_tDBF999C1B75C48C68621878250DBF6CDBCF51E52_marshaled_pinvoke
{
};
// Native definition for COM marshalling of System.ValueType
struct ValueType_tDBF999C1B75C48C68621878250DBF6CDBCF51E52_marshaled_com
{
};

// System.Collections.Generic.List`1/Enumerator<System.Object>
struct Enumerator_tB6009981BD4E3881E3EC83627255A24198F902D6 
{
public:
	// System.Collections.Generic.List`1<T> System.Collections.Generic.List`1/Enumerator::list
	List_1_t3F94120C77410A62EAE48421CF166B83AB95A2F5 * ___list_0;
	// System.Int32 System.Collections.Generic.List`1/Enumerator::index
	int32_t ___index_1;
	// System.Int32 System.Collections.Generic.List`1/Enumerator::version
	int32_t ___version_2;
	// T System.Collections.Generic.List`1/Enumerator::current
	RuntimeObject * ___current_3;

public:
	inline static int32_t get_offset_of_list_0() { return static_cast<int32_t>(offsetof(Enumerator_tB6009981BD4E3881E3EC83627255A24198F902D6, ___list_0)); }
	inline List_1_t3F94120C77410A62EAE48421CF166B83AB95A2F5 * get_list_0() const { return ___list_0; }
	inline List_1_t3F94120C77410A62EAE48421CF166B83AB95A2F5 ** get_address_of_list_0() { return &___list_0; }
	inline void set_list_0(List_1_t3F94120C77410A62EAE48421CF166B83AB95A2F5 * value)
	{
		___list_0 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___list_0), (void*)value);
	}

	inline static int32_t get_offset_of_index_1() { return static_cast<int32_t>(offsetof(Enumerator_tB6009981BD4E3881E3EC83627255A24198F902D6, ___index_1)); }
	inline int32_t get_index_1() const { return ___index_1; }
	inline int32_t* get_address_of_index_1() { return &___index_1; }
	inline void set_index_1(int32_t value)
	{
		___index_1 = value;
	}

	inline static int32_t get_offset_of_version_2() { return static_cast<int32_t>(offsetof(Enumerator_tB6009981BD4E3881E3EC83627255A24198F902D6, ___version_2)); }
	inline int32_t get_version_2() const { return ___version_2; }
	inline int32_t* get_address_of_version_2() { return &___version_2; }
	inline void set_version_2(int32_t value)
	{
		___version_2 = value;
	}

	inline static int32_t get_offset_of_current_3() { return static_cast<int32_t>(offsetof(Enumerator_tB6009981BD4E3881E3EC83627255A24198F902D6, ___current_3)); }
	inline RuntimeObject * get_current_3() const { return ___current_3; }
	inline RuntimeObject ** get_address_of_current_3() { return &___current_3; }
	inline void set_current_3(RuntimeObject * value)
	{
		___current_3 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___current_3), (void*)value);
	}
};


// System.Collections.Generic.List`1/Enumerator<UnityEngine.U2D.IK.Solver2D>
struct Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538 
{
public:
	// System.Collections.Generic.List`1<T> System.Collections.Generic.List`1/Enumerator::list
	List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * ___list_0;
	// System.Int32 System.Collections.Generic.List`1/Enumerator::index
	int32_t ___index_1;
	// System.Int32 System.Collections.Generic.List`1/Enumerator::version
	int32_t ___version_2;
	// T System.Collections.Generic.List`1/Enumerator::current
	Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * ___current_3;

public:
	inline static int32_t get_offset_of_list_0() { return static_cast<int32_t>(offsetof(Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538, ___list_0)); }
	inline List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * get_list_0() const { return ___list_0; }
	inline List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 ** get_address_of_list_0() { return &___list_0; }
	inline void set_list_0(List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * value)
	{
		___list_0 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___list_0), (void*)value);
	}

	inline static int32_t get_offset_of_index_1() { return static_cast<int32_t>(offsetof(Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538, ___index_1)); }
	inline int32_t get_index_1() const { return ___index_1; }
	inline int32_t* get_address_of_index_1() { return &___index_1; }
	inline void set_index_1(int32_t value)
	{
		___index_1 = value;
	}

	inline static int32_t get_offset_of_version_2() { return static_cast<int32_t>(offsetof(Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538, ___version_2)); }
	inline int32_t get_version_2() const { return ___version_2; }
	inline int32_t* get_address_of_version_2() { return &___version_2; }
	inline void set_version_2(int32_t value)
	{
		___version_2 = value;
	}

	inline static int32_t get_offset_of_current_3() { return static_cast<int32_t>(offsetof(Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538, ___current_3)); }
	inline Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * get_current_3() const { return ___current_3; }
	inline Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 ** get_address_of_current_3() { return &___current_3; }
	inline void set_current_3(Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * value)
	{
		___current_3 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___current_3), (void*)value);
	}
};


// System.Boolean
struct Boolean_t07D1E3F34E4813023D64F584DFF7B34C9D922F37 
{
public:
	// System.Boolean System.Boolean::m_value
	bool ___m_value_0;

public:
	inline static int32_t get_offset_of_m_value_0() { return static_cast<int32_t>(offsetof(Boolean_t07D1E3F34E4813023D64F584DFF7B34C9D922F37, ___m_value_0)); }
	inline bool get_m_value_0() const { return ___m_value_0; }
	inline bool* get_address_of_m_value_0() { return &___m_value_0; }
	inline void set_m_value_0(bool value)
	{
		___m_value_0 = value;
	}
};

struct Boolean_t07D1E3F34E4813023D64F584DFF7B34C9D922F37_StaticFields
{
public:
	// System.String System.Boolean::TrueString
	String_t* ___TrueString_5;
	// System.String System.Boolean::FalseString
	String_t* ___FalseString_6;

public:
	inline static int32_t get_offset_of_TrueString_5() { return static_cast<int32_t>(offsetof(Boolean_t07D1E3F34E4813023D64F584DFF7B34C9D922F37_StaticFields, ___TrueString_5)); }
	inline String_t* get_TrueString_5() const { return ___TrueString_5; }
	inline String_t** get_address_of_TrueString_5() { return &___TrueString_5; }
	inline void set_TrueString_5(String_t* value)
	{
		___TrueString_5 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___TrueString_5), (void*)value);
	}

	inline static int32_t get_offset_of_FalseString_6() { return static_cast<int32_t>(offsetof(Boolean_t07D1E3F34E4813023D64F584DFF7B34C9D922F37_StaticFields, ___FalseString_6)); }
	inline String_t* get_FalseString_6() const { return ___FalseString_6; }
	inline String_t** get_address_of_FalseString_6() { return &___FalseString_6; }
	inline void set_FalseString_6(String_t* value)
	{
		___FalseString_6 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___FalseString_6), (void*)value);
	}
};


// System.Int32
struct Int32_tFDE5F8CD43D10453F6A2E0C77FE48C6CC7009046 
{
public:
	// System.Int32 System.Int32::m_value
	int32_t ___m_value_0;

public:
	inline static int32_t get_offset_of_m_value_0() { return static_cast<int32_t>(offsetof(Int32_tFDE5F8CD43D10453F6A2E0C77FE48C6CC7009046, ___m_value_0)); }
	inline int32_t get_m_value_0() const { return ___m_value_0; }
	inline int32_t* get_address_of_m_value_0() { return &___m_value_0; }
	inline void set_m_value_0(int32_t value)
	{
		___m_value_0 = value;
	}
};


// System.IntPtr
struct IntPtr_t 
{
public:
	// System.Void* System.IntPtr::m_value
	void* ___m_value_0;

public:
	inline static int32_t get_offset_of_m_value_0() { return static_cast<int32_t>(offsetof(IntPtr_t, ___m_value_0)); }
	inline void* get_m_value_0() const { return ___m_value_0; }
	inline void** get_address_of_m_value_0() { return &___m_value_0; }
	inline void set_m_value_0(void* value)
	{
		___m_value_0 = value;
	}
};

struct IntPtr_t_StaticFields
{
public:
	// System.IntPtr System.IntPtr::Zero
	intptr_t ___Zero_1;

public:
	inline static int32_t get_offset_of_Zero_1() { return static_cast<int32_t>(offsetof(IntPtr_t_StaticFields, ___Zero_1)); }
	inline intptr_t get_Zero_1() const { return ___Zero_1; }
	inline intptr_t* get_address_of_Zero_1() { return &___Zero_1; }
	inline void set_Zero_1(intptr_t value)
	{
		___Zero_1 = value;
	}
};


// UnityEngine.Quaternion
struct Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4 
{
public:
	// System.Single UnityEngine.Quaternion::x
	float ___x_0;
	// System.Single UnityEngine.Quaternion::y
	float ___y_1;
	// System.Single UnityEngine.Quaternion::z
	float ___z_2;
	// System.Single UnityEngine.Quaternion::w
	float ___w_3;

public:
	inline static int32_t get_offset_of_x_0() { return static_cast<int32_t>(offsetof(Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4, ___x_0)); }
	inline float get_x_0() const { return ___x_0; }
	inline float* get_address_of_x_0() { return &___x_0; }
	inline void set_x_0(float value)
	{
		___x_0 = value;
	}

	inline static int32_t get_offset_of_y_1() { return static_cast<int32_t>(offsetof(Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4, ___y_1)); }
	inline float get_y_1() const { return ___y_1; }
	inline float* get_address_of_y_1() { return &___y_1; }
	inline void set_y_1(float value)
	{
		___y_1 = value;
	}

	inline static int32_t get_offset_of_z_2() { return static_cast<int32_t>(offsetof(Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4, ___z_2)); }
	inline float get_z_2() const { return ___z_2; }
	inline float* get_address_of_z_2() { return &___z_2; }
	inline void set_z_2(float value)
	{
		___z_2 = value;
	}

	inline static int32_t get_offset_of_w_3() { return static_cast<int32_t>(offsetof(Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4, ___w_3)); }
	inline float get_w_3() const { return ___w_3; }
	inline float* get_address_of_w_3() { return &___w_3; }
	inline void set_w_3(float value)
	{
		___w_3 = value;
	}
};

struct Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4_StaticFields
{
public:
	// UnityEngine.Quaternion UnityEngine.Quaternion::identityQuaternion
	Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  ___identityQuaternion_4;

public:
	inline static int32_t get_offset_of_identityQuaternion_4() { return static_cast<int32_t>(offsetof(Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4_StaticFields, ___identityQuaternion_4)); }
	inline Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  get_identityQuaternion_4() const { return ___identityQuaternion_4; }
	inline Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4 * get_address_of_identityQuaternion_4() { return &___identityQuaternion_4; }
	inline void set_identityQuaternion_4(Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  value)
	{
		___identityQuaternion_4 = value;
	}
};


// System.Single
struct Single_tE07797BA3C98D4CA9B5A19413C19A76688AB899E 
{
public:
	// System.Single System.Single::m_value
	float ___m_value_0;

public:
	inline static int32_t get_offset_of_m_value_0() { return static_cast<int32_t>(offsetof(Single_tE07797BA3C98D4CA9B5A19413C19A76688AB899E, ___m_value_0)); }
	inline float get_m_value_0() const { return ___m_value_0; }
	inline float* get_address_of_m_value_0() { return &___m_value_0; }
	inline void set_m_value_0(float value)
	{
		___m_value_0 = value;
	}
};


// UnityEngine.U2D.IK.Solver2DMenuAttribute
struct Solver2DMenuAttribute_tD2DF460A88F66EA84C3FE59F208BA336BF57A713  : public Attribute_t037CA9D9F3B742C063DB364D2EEBBF9FC5772C71
{
public:
	// System.String UnityEngine.U2D.IK.Solver2DMenuAttribute::m_MenuPath
	String_t* ___m_MenuPath_0;

public:
	inline static int32_t get_offset_of_m_MenuPath_0() { return static_cast<int32_t>(offsetof(Solver2DMenuAttribute_tD2DF460A88F66EA84C3FE59F208BA336BF57A713, ___m_MenuPath_0)); }
	inline String_t* get_m_MenuPath_0() const { return ___m_MenuPath_0; }
	inline String_t** get_address_of_m_MenuPath_0() { return &___m_MenuPath_0; }
	inline void set_m_MenuPath_0(String_t* value)
	{
		___m_MenuPath_0 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_MenuPath_0), (void*)value);
	}
};


// UnityEngine.Vector2
struct Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 
{
public:
	// System.Single UnityEngine.Vector2::x
	float ___x_0;
	// System.Single UnityEngine.Vector2::y
	float ___y_1;

public:
	inline static int32_t get_offset_of_x_0() { return static_cast<int32_t>(offsetof(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9, ___x_0)); }
	inline float get_x_0() const { return ___x_0; }
	inline float* get_address_of_x_0() { return &___x_0; }
	inline void set_x_0(float value)
	{
		___x_0 = value;
	}

	inline static int32_t get_offset_of_y_1() { return static_cast<int32_t>(offsetof(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9, ___y_1)); }
	inline float get_y_1() const { return ___y_1; }
	inline float* get_address_of_y_1() { return &___y_1; }
	inline void set_y_1(float value)
	{
		___y_1 = value;
	}
};

struct Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9_StaticFields
{
public:
	// UnityEngine.Vector2 UnityEngine.Vector2::zeroVector
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___zeroVector_2;
	// UnityEngine.Vector2 UnityEngine.Vector2::oneVector
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___oneVector_3;
	// UnityEngine.Vector2 UnityEngine.Vector2::upVector
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___upVector_4;
	// UnityEngine.Vector2 UnityEngine.Vector2::downVector
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___downVector_5;
	// UnityEngine.Vector2 UnityEngine.Vector2::leftVector
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___leftVector_6;
	// UnityEngine.Vector2 UnityEngine.Vector2::rightVector
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___rightVector_7;
	// UnityEngine.Vector2 UnityEngine.Vector2::positiveInfinityVector
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___positiveInfinityVector_8;
	// UnityEngine.Vector2 UnityEngine.Vector2::negativeInfinityVector
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___negativeInfinityVector_9;

public:
	inline static int32_t get_offset_of_zeroVector_2() { return static_cast<int32_t>(offsetof(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9_StaticFields, ___zeroVector_2)); }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  get_zeroVector_2() const { return ___zeroVector_2; }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * get_address_of_zeroVector_2() { return &___zeroVector_2; }
	inline void set_zeroVector_2(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  value)
	{
		___zeroVector_2 = value;
	}

	inline static int32_t get_offset_of_oneVector_3() { return static_cast<int32_t>(offsetof(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9_StaticFields, ___oneVector_3)); }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  get_oneVector_3() const { return ___oneVector_3; }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * get_address_of_oneVector_3() { return &___oneVector_3; }
	inline void set_oneVector_3(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  value)
	{
		___oneVector_3 = value;
	}

	inline static int32_t get_offset_of_upVector_4() { return static_cast<int32_t>(offsetof(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9_StaticFields, ___upVector_4)); }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  get_upVector_4() const { return ___upVector_4; }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * get_address_of_upVector_4() { return &___upVector_4; }
	inline void set_upVector_4(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  value)
	{
		___upVector_4 = value;
	}

	inline static int32_t get_offset_of_downVector_5() { return static_cast<int32_t>(offsetof(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9_StaticFields, ___downVector_5)); }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  get_downVector_5() const { return ___downVector_5; }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * get_address_of_downVector_5() { return &___downVector_5; }
	inline void set_downVector_5(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  value)
	{
		___downVector_5 = value;
	}

	inline static int32_t get_offset_of_leftVector_6() { return static_cast<int32_t>(offsetof(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9_StaticFields, ___leftVector_6)); }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  get_leftVector_6() const { return ___leftVector_6; }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * get_address_of_leftVector_6() { return &___leftVector_6; }
	inline void set_leftVector_6(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  value)
	{
		___leftVector_6 = value;
	}

	inline static int32_t get_offset_of_rightVector_7() { return static_cast<int32_t>(offsetof(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9_StaticFields, ___rightVector_7)); }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  get_rightVector_7() const { return ___rightVector_7; }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * get_address_of_rightVector_7() { return &___rightVector_7; }
	inline void set_rightVector_7(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  value)
	{
		___rightVector_7 = value;
	}

	inline static int32_t get_offset_of_positiveInfinityVector_8() { return static_cast<int32_t>(offsetof(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9_StaticFields, ___positiveInfinityVector_8)); }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  get_positiveInfinityVector_8() const { return ___positiveInfinityVector_8; }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * get_address_of_positiveInfinityVector_8() { return &___positiveInfinityVector_8; }
	inline void set_positiveInfinityVector_8(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  value)
	{
		___positiveInfinityVector_8 = value;
	}

	inline static int32_t get_offset_of_negativeInfinityVector_9() { return static_cast<int32_t>(offsetof(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9_StaticFields, ___negativeInfinityVector_9)); }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  get_negativeInfinityVector_9() const { return ___negativeInfinityVector_9; }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * get_address_of_negativeInfinityVector_9() { return &___negativeInfinityVector_9; }
	inline void set_negativeInfinityVector_9(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  value)
	{
		___negativeInfinityVector_9 = value;
	}
};


// UnityEngine.Vector3
struct Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E 
{
public:
	// System.Single UnityEngine.Vector3::x
	float ___x_2;
	// System.Single UnityEngine.Vector3::y
	float ___y_3;
	// System.Single UnityEngine.Vector3::z
	float ___z_4;

public:
	inline static int32_t get_offset_of_x_2() { return static_cast<int32_t>(offsetof(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E, ___x_2)); }
	inline float get_x_2() const { return ___x_2; }
	inline float* get_address_of_x_2() { return &___x_2; }
	inline void set_x_2(float value)
	{
		___x_2 = value;
	}

	inline static int32_t get_offset_of_y_3() { return static_cast<int32_t>(offsetof(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E, ___y_3)); }
	inline float get_y_3() const { return ___y_3; }
	inline float* get_address_of_y_3() { return &___y_3; }
	inline void set_y_3(float value)
	{
		___y_3 = value;
	}

	inline static int32_t get_offset_of_z_4() { return static_cast<int32_t>(offsetof(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E, ___z_4)); }
	inline float get_z_4() const { return ___z_4; }
	inline float* get_address_of_z_4() { return &___z_4; }
	inline void set_z_4(float value)
	{
		___z_4 = value;
	}
};

struct Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E_StaticFields
{
public:
	// UnityEngine.Vector3 UnityEngine.Vector3::zeroVector
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___zeroVector_5;
	// UnityEngine.Vector3 UnityEngine.Vector3::oneVector
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___oneVector_6;
	// UnityEngine.Vector3 UnityEngine.Vector3::upVector
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___upVector_7;
	// UnityEngine.Vector3 UnityEngine.Vector3::downVector
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___downVector_8;
	// UnityEngine.Vector3 UnityEngine.Vector3::leftVector
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___leftVector_9;
	// UnityEngine.Vector3 UnityEngine.Vector3::rightVector
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___rightVector_10;
	// UnityEngine.Vector3 UnityEngine.Vector3::forwardVector
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___forwardVector_11;
	// UnityEngine.Vector3 UnityEngine.Vector3::backVector
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___backVector_12;
	// UnityEngine.Vector3 UnityEngine.Vector3::positiveInfinityVector
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___positiveInfinityVector_13;
	// UnityEngine.Vector3 UnityEngine.Vector3::negativeInfinityVector
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___negativeInfinityVector_14;

public:
	inline static int32_t get_offset_of_zeroVector_5() { return static_cast<int32_t>(offsetof(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E_StaticFields, ___zeroVector_5)); }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  get_zeroVector_5() const { return ___zeroVector_5; }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * get_address_of_zeroVector_5() { return &___zeroVector_5; }
	inline void set_zeroVector_5(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  value)
	{
		___zeroVector_5 = value;
	}

	inline static int32_t get_offset_of_oneVector_6() { return static_cast<int32_t>(offsetof(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E_StaticFields, ___oneVector_6)); }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  get_oneVector_6() const { return ___oneVector_6; }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * get_address_of_oneVector_6() { return &___oneVector_6; }
	inline void set_oneVector_6(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  value)
	{
		___oneVector_6 = value;
	}

	inline static int32_t get_offset_of_upVector_7() { return static_cast<int32_t>(offsetof(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E_StaticFields, ___upVector_7)); }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  get_upVector_7() const { return ___upVector_7; }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * get_address_of_upVector_7() { return &___upVector_7; }
	inline void set_upVector_7(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  value)
	{
		___upVector_7 = value;
	}

	inline static int32_t get_offset_of_downVector_8() { return static_cast<int32_t>(offsetof(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E_StaticFields, ___downVector_8)); }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  get_downVector_8() const { return ___downVector_8; }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * get_address_of_downVector_8() { return &___downVector_8; }
	inline void set_downVector_8(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  value)
	{
		___downVector_8 = value;
	}

	inline static int32_t get_offset_of_leftVector_9() { return static_cast<int32_t>(offsetof(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E_StaticFields, ___leftVector_9)); }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  get_leftVector_9() const { return ___leftVector_9; }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * get_address_of_leftVector_9() { return &___leftVector_9; }
	inline void set_leftVector_9(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  value)
	{
		___leftVector_9 = value;
	}

	inline static int32_t get_offset_of_rightVector_10() { return static_cast<int32_t>(offsetof(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E_StaticFields, ___rightVector_10)); }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  get_rightVector_10() const { return ___rightVector_10; }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * get_address_of_rightVector_10() { return &___rightVector_10; }
	inline void set_rightVector_10(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  value)
	{
		___rightVector_10 = value;
	}

	inline static int32_t get_offset_of_forwardVector_11() { return static_cast<int32_t>(offsetof(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E_StaticFields, ___forwardVector_11)); }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  get_forwardVector_11() const { return ___forwardVector_11; }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * get_address_of_forwardVector_11() { return &___forwardVector_11; }
	inline void set_forwardVector_11(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  value)
	{
		___forwardVector_11 = value;
	}

	inline static int32_t get_offset_of_backVector_12() { return static_cast<int32_t>(offsetof(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E_StaticFields, ___backVector_12)); }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  get_backVector_12() const { return ___backVector_12; }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * get_address_of_backVector_12() { return &___backVector_12; }
	inline void set_backVector_12(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  value)
	{
		___backVector_12 = value;
	}

	inline static int32_t get_offset_of_positiveInfinityVector_13() { return static_cast<int32_t>(offsetof(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E_StaticFields, ___positiveInfinityVector_13)); }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  get_positiveInfinityVector_13() const { return ___positiveInfinityVector_13; }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * get_address_of_positiveInfinityVector_13() { return &___positiveInfinityVector_13; }
	inline void set_positiveInfinityVector_13(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  value)
	{
		___positiveInfinityVector_13 = value;
	}

	inline static int32_t get_offset_of_negativeInfinityVector_14() { return static_cast<int32_t>(offsetof(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E_StaticFields, ___negativeInfinityVector_14)); }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  get_negativeInfinityVector_14() const { return ___negativeInfinityVector_14; }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * get_address_of_negativeInfinityVector_14() { return &___negativeInfinityVector_14; }
	inline void set_negativeInfinityVector_14(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  value)
	{
		___negativeInfinityVector_14 = value;
	}
};


// System.Void
struct Void_t700C6383A2A510C2CF4DD86DABD5CA9FF70ADAC5 
{
public:
	union
	{
		struct
		{
		};
		uint8_t Void_t700C6383A2A510C2CF4DD86DABD5CA9FF70ADAC5__padding[1];
	};

public:
};


// UnityEngine.U2D.IK.FABRIKChain2D
struct FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59 
{
public:
	// UnityEngine.Vector2 UnityEngine.U2D.IK.FABRIKChain2D::origin
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___origin_0;
	// UnityEngine.Vector2 UnityEngine.U2D.IK.FABRIKChain2D::target
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___target_1;
	// System.Single UnityEngine.U2D.IK.FABRIKChain2D::sqrTolerance
	float ___sqrTolerance_2;
	// UnityEngine.Vector2[] UnityEngine.U2D.IK.FABRIKChain2D::positions
	Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* ___positions_3;
	// System.Single[] UnityEngine.U2D.IK.FABRIKChain2D::lengths
	SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* ___lengths_4;
	// System.Int32[] UnityEngine.U2D.IK.FABRIKChain2D::subChainIndices
	Int32U5BU5D_t70F1BDC14B1786481B176D6139A5E3B87DC54C32* ___subChainIndices_5;
	// UnityEngine.Vector3[] UnityEngine.U2D.IK.FABRIKChain2D::worldPositions
	Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* ___worldPositions_6;

public:
	inline static int32_t get_offset_of_origin_0() { return static_cast<int32_t>(offsetof(FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59, ___origin_0)); }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  get_origin_0() const { return ___origin_0; }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * get_address_of_origin_0() { return &___origin_0; }
	inline void set_origin_0(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  value)
	{
		___origin_0 = value;
	}

	inline static int32_t get_offset_of_target_1() { return static_cast<int32_t>(offsetof(FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59, ___target_1)); }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  get_target_1() const { return ___target_1; }
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * get_address_of_target_1() { return &___target_1; }
	inline void set_target_1(Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  value)
	{
		___target_1 = value;
	}

	inline static int32_t get_offset_of_sqrTolerance_2() { return static_cast<int32_t>(offsetof(FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59, ___sqrTolerance_2)); }
	inline float get_sqrTolerance_2() const { return ___sqrTolerance_2; }
	inline float* get_address_of_sqrTolerance_2() { return &___sqrTolerance_2; }
	inline void set_sqrTolerance_2(float value)
	{
		___sqrTolerance_2 = value;
	}

	inline static int32_t get_offset_of_positions_3() { return static_cast<int32_t>(offsetof(FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59, ___positions_3)); }
	inline Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* get_positions_3() const { return ___positions_3; }
	inline Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** get_address_of_positions_3() { return &___positions_3; }
	inline void set_positions_3(Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* value)
	{
		___positions_3 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___positions_3), (void*)value);
	}

	inline static int32_t get_offset_of_lengths_4() { return static_cast<int32_t>(offsetof(FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59, ___lengths_4)); }
	inline SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* get_lengths_4() const { return ___lengths_4; }
	inline SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA** get_address_of_lengths_4() { return &___lengths_4; }
	inline void set_lengths_4(SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* value)
	{
		___lengths_4 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___lengths_4), (void*)value);
	}

	inline static int32_t get_offset_of_subChainIndices_5() { return static_cast<int32_t>(offsetof(FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59, ___subChainIndices_5)); }
	inline Int32U5BU5D_t70F1BDC14B1786481B176D6139A5E3B87DC54C32* get_subChainIndices_5() const { return ___subChainIndices_5; }
	inline Int32U5BU5D_t70F1BDC14B1786481B176D6139A5E3B87DC54C32** get_address_of_subChainIndices_5() { return &___subChainIndices_5; }
	inline void set_subChainIndices_5(Int32U5BU5D_t70F1BDC14B1786481B176D6139A5E3B87DC54C32* value)
	{
		___subChainIndices_5 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___subChainIndices_5), (void*)value);
	}

	inline static int32_t get_offset_of_worldPositions_6() { return static_cast<int32_t>(offsetof(FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59, ___worldPositions_6)); }
	inline Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* get_worldPositions_6() const { return ___worldPositions_6; }
	inline Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** get_address_of_worldPositions_6() { return &___worldPositions_6; }
	inline void set_worldPositions_6(Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* value)
	{
		___worldPositions_6 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___worldPositions_6), (void*)value);
	}
};

// Native definition for P/Invoke marshalling of UnityEngine.U2D.IK.FABRIKChain2D
struct FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59_marshaled_pinvoke
{
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___origin_0;
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___target_1;
	float ___sqrTolerance_2;
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * ___positions_3;
	Il2CppSafeArray/*NONE*/* ___lengths_4;
	Il2CppSafeArray/*NONE*/* ___subChainIndices_5;
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * ___worldPositions_6;
};
// Native definition for COM marshalling of UnityEngine.U2D.IK.FABRIKChain2D
struct FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59_marshaled_com
{
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___origin_0;
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___target_1;
	float ___sqrTolerance_2;
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * ___positions_3;
	Il2CppSafeArray/*NONE*/* ___lengths_4;
	Il2CppSafeArray/*NONE*/* ___subChainIndices_5;
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * ___worldPositions_6;
};

// UnityEngine.Object
struct Object_tF2F3778131EFF286AF62B7B013A170F95A91571A  : public RuntimeObject
{
public:
	// System.IntPtr UnityEngine.Object::m_CachedPtr
	intptr_t ___m_CachedPtr_0;

public:
	inline static int32_t get_offset_of_m_CachedPtr_0() { return static_cast<int32_t>(offsetof(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A, ___m_CachedPtr_0)); }
	inline intptr_t get_m_CachedPtr_0() const { return ___m_CachedPtr_0; }
	inline intptr_t* get_address_of_m_CachedPtr_0() { return &___m_CachedPtr_0; }
	inline void set_m_CachedPtr_0(intptr_t value)
	{
		___m_CachedPtr_0 = value;
	}
};

struct Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_StaticFields
{
public:
	// System.Int32 UnityEngine.Object::OffsetOfInstanceIDInCPlusPlusObject
	int32_t ___OffsetOfInstanceIDInCPlusPlusObject_1;

public:
	inline static int32_t get_offset_of_OffsetOfInstanceIDInCPlusPlusObject_1() { return static_cast<int32_t>(offsetof(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_StaticFields, ___OffsetOfInstanceIDInCPlusPlusObject_1)); }
	inline int32_t get_OffsetOfInstanceIDInCPlusPlusObject_1() const { return ___OffsetOfInstanceIDInCPlusPlusObject_1; }
	inline int32_t* get_address_of_OffsetOfInstanceIDInCPlusPlusObject_1() { return &___OffsetOfInstanceIDInCPlusPlusObject_1; }
	inline void set_OffsetOfInstanceIDInCPlusPlusObject_1(int32_t value)
	{
		___OffsetOfInstanceIDInCPlusPlusObject_1 = value;
	}
};

// Native definition for P/Invoke marshalling of UnityEngine.Object
struct Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_marshaled_pinvoke
{
	intptr_t ___m_CachedPtr_0;
};
// Native definition for COM marshalling of UnityEngine.Object
struct Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_marshaled_com
{
	intptr_t ___m_CachedPtr_0;
};

// UnityEngine.Plane
struct Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7 
{
public:
	// UnityEngine.Vector3 UnityEngine.Plane::m_Normal
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___m_Normal_1;
	// System.Single UnityEngine.Plane::m_Distance
	float ___m_Distance_2;

public:
	inline static int32_t get_offset_of_m_Normal_1() { return static_cast<int32_t>(offsetof(Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7, ___m_Normal_1)); }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  get_m_Normal_1() const { return ___m_Normal_1; }
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * get_address_of_m_Normal_1() { return &___m_Normal_1; }
	inline void set_m_Normal_1(Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  value)
	{
		___m_Normal_1 = value;
	}

	inline static int32_t get_offset_of_m_Distance_2() { return static_cast<int32_t>(offsetof(Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7, ___m_Distance_2)); }
	inline float get_m_Distance_2() const { return ___m_Distance_2; }
	inline float* get_address_of_m_Distance_2() { return &___m_Distance_2; }
	inline void set_m_Distance_2(float value)
	{
		___m_Distance_2 = value;
	}
};


// UnityEngine.Component
struct Component_t62FBC8D2420DA4BE9037AFE430740F6B3EECA684  : public Object_tF2F3778131EFF286AF62B7B013A170F95A91571A
{
public:

public:
};


// UnityEngine.Behaviour
struct Behaviour_t1A3DDDCF73B4627928FBFE02ED52B7251777DBD9  : public Component_t62FBC8D2420DA4BE9037AFE430740F6B3EECA684
{
public:

public:
};


// UnityEngine.Transform
struct Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1  : public Component_t62FBC8D2420DA4BE9037AFE430740F6B3EECA684
{
public:

public:
};


// UnityEngine.MonoBehaviour
struct MonoBehaviour_t37A501200D970A8257124B0EAE00A0FF3DDC354A  : public Behaviour_t1A3DDDCF73B4627928FBFE02ED52B7251777DBD9
{
public:

public:
};


// UnityEngine.U2D.IK.IKManager2D
struct IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510  : public MonoBehaviour_t37A501200D970A8257124B0EAE00A0FF3DDC354A
{
public:
	// System.Collections.Generic.List`1<UnityEngine.U2D.IK.Solver2D> UnityEngine.U2D.IK.IKManager2D::m_Solvers
	List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * ___m_Solvers_4;
	// System.Single UnityEngine.U2D.IK.IKManager2D::m_Weight
	float ___m_Weight_5;

public:
	inline static int32_t get_offset_of_m_Solvers_4() { return static_cast<int32_t>(offsetof(IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510, ___m_Solvers_4)); }
	inline List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * get_m_Solvers_4() const { return ___m_Solvers_4; }
	inline List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 ** get_address_of_m_Solvers_4() { return &___m_Solvers_4; }
	inline void set_m_Solvers_4(List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * value)
	{
		___m_Solvers_4 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_Solvers_4), (void*)value);
	}

	inline static int32_t get_offset_of_m_Weight_5() { return static_cast<int32_t>(offsetof(IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510, ___m_Weight_5)); }
	inline float get_m_Weight_5() const { return ___m_Weight_5; }
	inline float* get_address_of_m_Weight_5() { return &___m_Weight_5; }
	inline void set_m_Weight_5(float value)
	{
		___m_Weight_5 = value;
	}
};


// UnityEngine.U2D.IK.Solver2D
struct Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6  : public MonoBehaviour_t37A501200D970A8257124B0EAE00A0FF3DDC354A
{
public:
	// System.Boolean UnityEngine.U2D.IK.Solver2D::m_ConstrainRotation
	bool ___m_ConstrainRotation_4;
	// System.Boolean UnityEngine.U2D.IK.Solver2D::m_SolveFromDefaultPose
	bool ___m_SolveFromDefaultPose_5;
	// System.Single UnityEngine.U2D.IK.Solver2D::m_Weight
	float ___m_Weight_6;
	// UnityEngine.Plane UnityEngine.U2D.IK.Solver2D::m_Plane
	Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7  ___m_Plane_7;
	// System.Collections.Generic.List`1<UnityEngine.Vector3> UnityEngine.U2D.IK.Solver2D::m_TargetPositions
	List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * ___m_TargetPositions_8;

public:
	inline static int32_t get_offset_of_m_ConstrainRotation_4() { return static_cast<int32_t>(offsetof(Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6, ___m_ConstrainRotation_4)); }
	inline bool get_m_ConstrainRotation_4() const { return ___m_ConstrainRotation_4; }
	inline bool* get_address_of_m_ConstrainRotation_4() { return &___m_ConstrainRotation_4; }
	inline void set_m_ConstrainRotation_4(bool value)
	{
		___m_ConstrainRotation_4 = value;
	}

	inline static int32_t get_offset_of_m_SolveFromDefaultPose_5() { return static_cast<int32_t>(offsetof(Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6, ___m_SolveFromDefaultPose_5)); }
	inline bool get_m_SolveFromDefaultPose_5() const { return ___m_SolveFromDefaultPose_5; }
	inline bool* get_address_of_m_SolveFromDefaultPose_5() { return &___m_SolveFromDefaultPose_5; }
	inline void set_m_SolveFromDefaultPose_5(bool value)
	{
		___m_SolveFromDefaultPose_5 = value;
	}

	inline static int32_t get_offset_of_m_Weight_6() { return static_cast<int32_t>(offsetof(Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6, ___m_Weight_6)); }
	inline float get_m_Weight_6() const { return ___m_Weight_6; }
	inline float* get_address_of_m_Weight_6() { return &___m_Weight_6; }
	inline void set_m_Weight_6(float value)
	{
		___m_Weight_6 = value;
	}

	inline static int32_t get_offset_of_m_Plane_7() { return static_cast<int32_t>(offsetof(Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6, ___m_Plane_7)); }
	inline Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7  get_m_Plane_7() const { return ___m_Plane_7; }
	inline Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7 * get_address_of_m_Plane_7() { return &___m_Plane_7; }
	inline void set_m_Plane_7(Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7  value)
	{
		___m_Plane_7 = value;
	}

	inline static int32_t get_offset_of_m_TargetPositions_8() { return static_cast<int32_t>(offsetof(Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6, ___m_TargetPositions_8)); }
	inline List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * get_m_TargetPositions_8() const { return ___m_TargetPositions_8; }
	inline List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 ** get_address_of_m_TargetPositions_8() { return &___m_TargetPositions_8; }
	inline void set_m_TargetPositions_8(List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * value)
	{
		___m_TargetPositions_8 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_TargetPositions_8), (void*)value);
	}
};


// UnityEngine.U2D.IK.CCDSolver2D
struct CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE  : public Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6
{
public:
	// UnityEngine.U2D.IK.IKChain2D UnityEngine.U2D.IK.CCDSolver2D::m_Chain
	IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * ___m_Chain_13;
	// System.Int32 UnityEngine.U2D.IK.CCDSolver2D::m_Iterations
	int32_t ___m_Iterations_14;
	// System.Single UnityEngine.U2D.IK.CCDSolver2D::m_Tolerance
	float ___m_Tolerance_15;
	// System.Single UnityEngine.U2D.IK.CCDSolver2D::m_Velocity
	float ___m_Velocity_16;
	// UnityEngine.Vector3[] UnityEngine.U2D.IK.CCDSolver2D::m_Positions
	Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* ___m_Positions_17;

public:
	inline static int32_t get_offset_of_m_Chain_13() { return static_cast<int32_t>(offsetof(CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE, ___m_Chain_13)); }
	inline IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * get_m_Chain_13() const { return ___m_Chain_13; }
	inline IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F ** get_address_of_m_Chain_13() { return &___m_Chain_13; }
	inline void set_m_Chain_13(IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * value)
	{
		___m_Chain_13 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_Chain_13), (void*)value);
	}

	inline static int32_t get_offset_of_m_Iterations_14() { return static_cast<int32_t>(offsetof(CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE, ___m_Iterations_14)); }
	inline int32_t get_m_Iterations_14() const { return ___m_Iterations_14; }
	inline int32_t* get_address_of_m_Iterations_14() { return &___m_Iterations_14; }
	inline void set_m_Iterations_14(int32_t value)
	{
		___m_Iterations_14 = value;
	}

	inline static int32_t get_offset_of_m_Tolerance_15() { return static_cast<int32_t>(offsetof(CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE, ___m_Tolerance_15)); }
	inline float get_m_Tolerance_15() const { return ___m_Tolerance_15; }
	inline float* get_address_of_m_Tolerance_15() { return &___m_Tolerance_15; }
	inline void set_m_Tolerance_15(float value)
	{
		___m_Tolerance_15 = value;
	}

	inline static int32_t get_offset_of_m_Velocity_16() { return static_cast<int32_t>(offsetof(CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE, ___m_Velocity_16)); }
	inline float get_m_Velocity_16() const { return ___m_Velocity_16; }
	inline float* get_address_of_m_Velocity_16() { return &___m_Velocity_16; }
	inline void set_m_Velocity_16(float value)
	{
		___m_Velocity_16 = value;
	}

	inline static int32_t get_offset_of_m_Positions_17() { return static_cast<int32_t>(offsetof(CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE, ___m_Positions_17)); }
	inline Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* get_m_Positions_17() const { return ___m_Positions_17; }
	inline Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** get_address_of_m_Positions_17() { return &___m_Positions_17; }
	inline void set_m_Positions_17(Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* value)
	{
		___m_Positions_17 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_Positions_17), (void*)value);
	}
};


// UnityEngine.U2D.IK.FabrikSolver2D
struct FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC  : public Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6
{
public:
	// UnityEngine.U2D.IK.IKChain2D UnityEngine.U2D.IK.FabrikSolver2D::m_Chain
	IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * ___m_Chain_11;
	// System.Int32 UnityEngine.U2D.IK.FabrikSolver2D::m_Iterations
	int32_t ___m_Iterations_12;
	// System.Single UnityEngine.U2D.IK.FabrikSolver2D::m_Tolerance
	float ___m_Tolerance_13;
	// System.Single[] UnityEngine.U2D.IK.FabrikSolver2D::m_Lengths
	SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* ___m_Lengths_14;
	// UnityEngine.Vector2[] UnityEngine.U2D.IK.FabrikSolver2D::m_Positions
	Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* ___m_Positions_15;
	// UnityEngine.Vector3[] UnityEngine.U2D.IK.FabrikSolver2D::m_WorldPositions
	Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* ___m_WorldPositions_16;

public:
	inline static int32_t get_offset_of_m_Chain_11() { return static_cast<int32_t>(offsetof(FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC, ___m_Chain_11)); }
	inline IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * get_m_Chain_11() const { return ___m_Chain_11; }
	inline IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F ** get_address_of_m_Chain_11() { return &___m_Chain_11; }
	inline void set_m_Chain_11(IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * value)
	{
		___m_Chain_11 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_Chain_11), (void*)value);
	}

	inline static int32_t get_offset_of_m_Iterations_12() { return static_cast<int32_t>(offsetof(FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC, ___m_Iterations_12)); }
	inline int32_t get_m_Iterations_12() const { return ___m_Iterations_12; }
	inline int32_t* get_address_of_m_Iterations_12() { return &___m_Iterations_12; }
	inline void set_m_Iterations_12(int32_t value)
	{
		___m_Iterations_12 = value;
	}

	inline static int32_t get_offset_of_m_Tolerance_13() { return static_cast<int32_t>(offsetof(FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC, ___m_Tolerance_13)); }
	inline float get_m_Tolerance_13() const { return ___m_Tolerance_13; }
	inline float* get_address_of_m_Tolerance_13() { return &___m_Tolerance_13; }
	inline void set_m_Tolerance_13(float value)
	{
		___m_Tolerance_13 = value;
	}

	inline static int32_t get_offset_of_m_Lengths_14() { return static_cast<int32_t>(offsetof(FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC, ___m_Lengths_14)); }
	inline SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* get_m_Lengths_14() const { return ___m_Lengths_14; }
	inline SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA** get_address_of_m_Lengths_14() { return &___m_Lengths_14; }
	inline void set_m_Lengths_14(SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* value)
	{
		___m_Lengths_14 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_Lengths_14), (void*)value);
	}

	inline static int32_t get_offset_of_m_Positions_15() { return static_cast<int32_t>(offsetof(FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC, ___m_Positions_15)); }
	inline Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* get_m_Positions_15() const { return ___m_Positions_15; }
	inline Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** get_address_of_m_Positions_15() { return &___m_Positions_15; }
	inline void set_m_Positions_15(Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* value)
	{
		___m_Positions_15 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_Positions_15), (void*)value);
	}

	inline static int32_t get_offset_of_m_WorldPositions_16() { return static_cast<int32_t>(offsetof(FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC, ___m_WorldPositions_16)); }
	inline Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* get_m_WorldPositions_16() const { return ___m_WorldPositions_16; }
	inline Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** get_address_of_m_WorldPositions_16() { return &___m_WorldPositions_16; }
	inline void set_m_WorldPositions_16(Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* value)
	{
		___m_WorldPositions_16 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_WorldPositions_16), (void*)value);
	}
};


// UnityEngine.U2D.IK.LimbSolver2D
struct LimbSolver2D_t7853B3E9E5644B3A9FE624BCF58FD4279E5D2611  : public Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6
{
public:
	// UnityEngine.U2D.IK.IKChain2D UnityEngine.U2D.IK.LimbSolver2D::m_Chain
	IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * ___m_Chain_9;
	// System.Boolean UnityEngine.U2D.IK.LimbSolver2D::m_Flip
	bool ___m_Flip_10;
	// UnityEngine.Vector3[] UnityEngine.U2D.IK.LimbSolver2D::m_Positions
	Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* ___m_Positions_11;
	// System.Single[] UnityEngine.U2D.IK.LimbSolver2D::m_Lengths
	SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* ___m_Lengths_12;
	// System.Single[] UnityEngine.U2D.IK.LimbSolver2D::m_Angles
	SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* ___m_Angles_13;

public:
	inline static int32_t get_offset_of_m_Chain_9() { return static_cast<int32_t>(offsetof(LimbSolver2D_t7853B3E9E5644B3A9FE624BCF58FD4279E5D2611, ___m_Chain_9)); }
	inline IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * get_m_Chain_9() const { return ___m_Chain_9; }
	inline IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F ** get_address_of_m_Chain_9() { return &___m_Chain_9; }
	inline void set_m_Chain_9(IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * value)
	{
		___m_Chain_9 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_Chain_9), (void*)value);
	}

	inline static int32_t get_offset_of_m_Flip_10() { return static_cast<int32_t>(offsetof(LimbSolver2D_t7853B3E9E5644B3A9FE624BCF58FD4279E5D2611, ___m_Flip_10)); }
	inline bool get_m_Flip_10() const { return ___m_Flip_10; }
	inline bool* get_address_of_m_Flip_10() { return &___m_Flip_10; }
	inline void set_m_Flip_10(bool value)
	{
		___m_Flip_10 = value;
	}

	inline static int32_t get_offset_of_m_Positions_11() { return static_cast<int32_t>(offsetof(LimbSolver2D_t7853B3E9E5644B3A9FE624BCF58FD4279E5D2611, ___m_Positions_11)); }
	inline Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* get_m_Positions_11() const { return ___m_Positions_11; }
	inline Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** get_address_of_m_Positions_11() { return &___m_Positions_11; }
	inline void set_m_Positions_11(Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* value)
	{
		___m_Positions_11 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_Positions_11), (void*)value);
	}

	inline static int32_t get_offset_of_m_Lengths_12() { return static_cast<int32_t>(offsetof(LimbSolver2D_t7853B3E9E5644B3A9FE624BCF58FD4279E5D2611, ___m_Lengths_12)); }
	inline SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* get_m_Lengths_12() const { return ___m_Lengths_12; }
	inline SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA** get_address_of_m_Lengths_12() { return &___m_Lengths_12; }
	inline void set_m_Lengths_12(SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* value)
	{
		___m_Lengths_12 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_Lengths_12), (void*)value);
	}

	inline static int32_t get_offset_of_m_Angles_13() { return static_cast<int32_t>(offsetof(LimbSolver2D_t7853B3E9E5644B3A9FE624BCF58FD4279E5D2611, ___m_Angles_13)); }
	inline SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* get_m_Angles_13() const { return ___m_Angles_13; }
	inline SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA** get_address_of_m_Angles_13() { return &___m_Angles_13; }
	inline void set_m_Angles_13(SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* value)
	{
		___m_Angles_13 = value;
		Il2CppCodeGenWriteBarrier((void**)(&___m_Angles_13), (void*)value);
	}
};

#ifdef __clang__
#pragma clang diagnostic pop
#endif
// UnityEngine.Vector3[]
struct Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4  : public RuntimeArray
{
public:
	ALIGN_FIELD (8) Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  m_Items[1];

public:
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  GetAt(il2cpp_array_size_t index) const
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		return m_Items[index];
	}
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * GetAddressAt(il2cpp_array_size_t index)
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		return m_Items + index;
	}
	inline void SetAt(il2cpp_array_size_t index, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  value)
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		m_Items[index] = value;
	}
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  GetAtUnchecked(il2cpp_array_size_t index) const
	{
		return m_Items[index];
	}
	inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * GetAddressAtUnchecked(il2cpp_array_size_t index)
	{
		return m_Items + index;
	}
	inline void SetAtUnchecked(il2cpp_array_size_t index, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  value)
	{
		m_Items[index] = value;
	}
};
// UnityEngine.Transform[]
struct TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D  : public RuntimeArray
{
public:
	ALIGN_FIELD (8) Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * m_Items[1];

public:
	inline Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * GetAt(il2cpp_array_size_t index) const
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		return m_Items[index];
	}
	inline Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 ** GetAddressAt(il2cpp_array_size_t index)
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		return m_Items + index;
	}
	inline void SetAt(il2cpp_array_size_t index, Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * value)
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		m_Items[index] = value;
		Il2CppCodeGenWriteBarrier((void**)m_Items + index, (void*)value);
	}
	inline Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * GetAtUnchecked(il2cpp_array_size_t index) const
	{
		return m_Items[index];
	}
	inline Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 ** GetAddressAtUnchecked(il2cpp_array_size_t index)
	{
		return m_Items + index;
	}
	inline void SetAtUnchecked(il2cpp_array_size_t index, Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * value)
	{
		m_Items[index] = value;
		Il2CppCodeGenWriteBarrier((void**)m_Items + index, (void*)value);
	}
};
// System.Single[]
struct SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA  : public RuntimeArray
{
public:
	ALIGN_FIELD (8) float m_Items[1];

public:
	inline float GetAt(il2cpp_array_size_t index) const
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		return m_Items[index];
	}
	inline float* GetAddressAt(il2cpp_array_size_t index)
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		return m_Items + index;
	}
	inline void SetAt(il2cpp_array_size_t index, float value)
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		m_Items[index] = value;
	}
	inline float GetAtUnchecked(il2cpp_array_size_t index) const
	{
		return m_Items[index];
	}
	inline float* GetAddressAtUnchecked(il2cpp_array_size_t index)
	{
		return m_Items + index;
	}
	inline void SetAtUnchecked(il2cpp_array_size_t index, float value)
	{
		m_Items[index] = value;
	}
};
// UnityEngine.Vector2[]
struct Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA  : public RuntimeArray
{
public:
	ALIGN_FIELD (8) Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  m_Items[1];

public:
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  GetAt(il2cpp_array_size_t index) const
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		return m_Items[index];
	}
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * GetAddressAt(il2cpp_array_size_t index)
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		return m_Items + index;
	}
	inline void SetAt(il2cpp_array_size_t index, Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  value)
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		m_Items[index] = value;
	}
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  GetAtUnchecked(il2cpp_array_size_t index) const
	{
		return m_Items[index];
	}
	inline Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * GetAddressAtUnchecked(il2cpp_array_size_t index)
	{
		return m_Items + index;
	}
	inline void SetAtUnchecked(il2cpp_array_size_t index, Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  value)
	{
		m_Items[index] = value;
	}
};
// UnityEngine.U2D.IK.FABRIKChain2D[]
struct FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2  : public RuntimeArray
{
public:
	ALIGN_FIELD (8) FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59  m_Items[1];

public:
	inline FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59  GetAt(il2cpp_array_size_t index) const
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		return m_Items[index];
	}
	inline FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59 * GetAddressAt(il2cpp_array_size_t index)
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		return m_Items + index;
	}
	inline void SetAt(il2cpp_array_size_t index, FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59  value)
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		m_Items[index] = value;
		Il2CppCodeGenWriteBarrier((void**)&((m_Items + index)->___positions_3), (void*)NULL);
		#if IL2CPP_ENABLE_STRICT_WRITE_BARRIERS
		Il2CppCodeGenWriteBarrier((void**)&((m_Items + index)->___lengths_4), (void*)NULL);
		#endif
		#if IL2CPP_ENABLE_STRICT_WRITE_BARRIERS
		Il2CppCodeGenWriteBarrier((void**)&((m_Items + index)->___subChainIndices_5), (void*)NULL);
		#endif
		#if IL2CPP_ENABLE_STRICT_WRITE_BARRIERS
		Il2CppCodeGenWriteBarrier((void**)&((m_Items + index)->___worldPositions_6), (void*)NULL);
		#endif
	}
	inline FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59  GetAtUnchecked(il2cpp_array_size_t index) const
	{
		return m_Items[index];
	}
	inline FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59 * GetAddressAtUnchecked(il2cpp_array_size_t index)
	{
		return m_Items + index;
	}
	inline void SetAtUnchecked(il2cpp_array_size_t index, FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59  value)
	{
		m_Items[index] = value;
		Il2CppCodeGenWriteBarrier((void**)&((m_Items + index)->___positions_3), (void*)NULL);
		#if IL2CPP_ENABLE_STRICT_WRITE_BARRIERS
		Il2CppCodeGenWriteBarrier((void**)&((m_Items + index)->___lengths_4), (void*)NULL);
		#endif
		#if IL2CPP_ENABLE_STRICT_WRITE_BARRIERS
		Il2CppCodeGenWriteBarrier((void**)&((m_Items + index)->___subChainIndices_5), (void*)NULL);
		#endif
		#if IL2CPP_ENABLE_STRICT_WRITE_BARRIERS
		Il2CppCodeGenWriteBarrier((void**)&((m_Items + index)->___worldPositions_6), (void*)NULL);
		#endif
	}
};
// System.Int32[]
struct Int32U5BU5D_t70F1BDC14B1786481B176D6139A5E3B87DC54C32  : public RuntimeArray
{
public:
	ALIGN_FIELD (8) int32_t m_Items[1];

public:
	inline int32_t GetAt(il2cpp_array_size_t index) const
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		return m_Items[index];
	}
	inline int32_t* GetAddressAt(il2cpp_array_size_t index)
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		return m_Items + index;
	}
	inline void SetAt(il2cpp_array_size_t index, int32_t value)
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		m_Items[index] = value;
	}
	inline int32_t GetAtUnchecked(il2cpp_array_size_t index) const
	{
		return m_Items[index];
	}
	inline int32_t* GetAddressAtUnchecked(il2cpp_array_size_t index)
	{
		return m_Items + index;
	}
	inline void SetAtUnchecked(il2cpp_array_size_t index, int32_t value)
	{
		m_Items[index] = value;
	}
};
// UnityEngine.Quaternion[]
struct QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6  : public RuntimeArray
{
public:
	ALIGN_FIELD (8) Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  m_Items[1];

public:
	inline Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  GetAt(il2cpp_array_size_t index) const
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		return m_Items[index];
	}
	inline Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4 * GetAddressAt(il2cpp_array_size_t index)
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		return m_Items + index;
	}
	inline void SetAt(il2cpp_array_size_t index, Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  value)
	{
		IL2CPP_ARRAY_BOUNDS_CHECK(index, (uint32_t)(this)->max_length);
		m_Items[index] = value;
	}
	inline Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  GetAtUnchecked(il2cpp_array_size_t index) const
	{
		return m_Items[index];
	}
	inline Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4 * GetAddressAtUnchecked(il2cpp_array_size_t index)
	{
		return m_Items + index;
	}
	inline void SetAtUnchecked(il2cpp_array_size_t index, Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  value)
	{
		m_Items[index] = value;
	}
};


// !0 System.Collections.Generic.List`1<UnityEngine.Vector3>::get_Item(System.Int32)
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  List_1_get_Item_m554804AC447B0BA1F93C64E863FF7DB0527AFED9_gshared_inline (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * __this, int32_t ___index0, const RuntimeMethod* method);
// System.Void System.Collections.Generic.List`1<System.Object>::Clear()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void List_1_Clear_m5FB5A9C59D8625FDFB06876C4D8848F0F07ABFD0_gshared (List_1_t3F94120C77410A62EAE48421CF166B83AB95A2F5 * __this, const RuntimeMethod* method);
// System.Void System.Collections.Generic.List`1<System.Object>::.ctor()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void List_1__ctor_m0F0E00088CF56FEACC9E32D8B7D91B93D91DAA3B_gshared (List_1_t3F94120C77410A62EAE48421CF166B83AB95A2F5 * __this, const RuntimeMethod* method);
// System.Void UnityEngine.Component::GetComponentsInChildren<System.Object>(System.Boolean,System.Collections.Generic.List`1<!!0>)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Component_GetComponentsInChildren_TisRuntimeObject_mCFD9EE28706E43CCE81CF186BF0E5EED482B56D9_gshared (Component_t62FBC8D2420DA4BE9037AFE430740F6B3EECA684 * __this, bool ___includeInactive0, List_1_t3F94120C77410A62EAE48421CF166B83AB95A2F5 * ___result1, const RuntimeMethod* method);
// System.Collections.Generic.List`1/Enumerator<!0> System.Collections.Generic.List`1<System.Object>::GetEnumerator()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Enumerator_tB6009981BD4E3881E3EC83627255A24198F902D6  List_1_GetEnumerator_m1739A5E25DF502A6984F9B98CFCAC2D3FABCF233_gshared (List_1_t3F94120C77410A62EAE48421CF166B83AB95A2F5 * __this, const RuntimeMethod* method);
// !0 System.Collections.Generic.List`1/Enumerator<System.Object>::get_Current()
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR RuntimeObject * Enumerator_get_Current_m9C4EBBD2108B51885E750F927D7936290C8E20EE_gshared_inline (Enumerator_tB6009981BD4E3881E3EC83627255A24198F902D6 * __this, const RuntimeMethod* method);
// !!0 UnityEngine.Component::GetComponentInParent<System.Object>()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR RuntimeObject * Component_GetComponentInParent_TisRuntimeObject_mADA186D1675BEA6779C469918206294354385EC3_gshared (Component_t62FBC8D2420DA4BE9037AFE430740F6B3EECA684 * __this, const RuntimeMethod* method);
// System.Boolean System.Collections.Generic.List`1/Enumerator<System.Object>::MoveNext()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Enumerator_MoveNext_m2E56233762839CE55C67E00AC8DD3D4D3F6C0DF0_gshared (Enumerator_tB6009981BD4E3881E3EC83627255A24198F902D6 * __this, const RuntimeMethod* method);
// System.Void System.Collections.Generic.List`1/Enumerator<System.Object>::Dispose()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Enumerator_Dispose_mCFB225D9E5E597A1CC8F958E53BEA1367D8AC7B8_gshared (Enumerator_tB6009981BD4E3881E3EC83627255A24198F902D6 * __this, const RuntimeMethod* method);
// System.Boolean System.Collections.Generic.List`1<System.Object>::Contains(!0)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool List_1_Contains_m99C700668AC6D272188471D2D6B784A2B5636C8E_gshared (List_1_t3F94120C77410A62EAE48421CF166B83AB95A2F5 * __this, RuntimeObject * ___item0, const RuntimeMethod* method);
// System.Void System.Collections.Generic.List`1<System.Object>::Add(!0)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void List_1_Add_mE5B3CBB3A625606D9BC4337FEAAF1D66BCB6F96E_gshared (List_1_t3F94120C77410A62EAE48421CF166B83AB95A2F5 * __this, RuntimeObject * ___item0, const RuntimeMethod* method);
// System.Boolean System.Collections.Generic.List`1<System.Object>::Remove(!0)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool List_1_Remove_m753F7B4281CC4D02C07AE90726F51EF34B588DF7_gshared (List_1_t3F94120C77410A62EAE48421CF166B83AB95A2F5 * __this, RuntimeObject * ___item0, const RuntimeMethod* method);
// System.Void System.Collections.Generic.List`1<UnityEngine.Vector3>::Clear()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void List_1_Clear_mE0F03A2E42E2F7F8A282AE01C12945F7379DC702_gshared (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * __this, const RuntimeMethod* method);
// System.Void System.Collections.Generic.List`1<UnityEngine.Vector3>::Add(!0)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void List_1_Add_mAE131B53917AD7132F6BA2C05D5D17C38C5A2E59_gshared (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * __this, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___item0, const RuntimeMethod* method);
// System.Int32 System.Collections.Generic.List`1<UnityEngine.Vector3>::get_Count()
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR int32_t List_1_get_Count_m320FF0DD39F83A684F9E277C6A0D07BC3CEDA7D9_gshared_inline (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * __this, const RuntimeMethod* method);
// System.Void System.Collections.Generic.List`1<UnityEngine.Vector3>::.ctor()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void List_1__ctor_mF8F23D572031748AD428623AE16803455997E297_gshared (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * __this, const RuntimeMethod* method);

// UnityEngine.Vector3 UnityEngine.Vector3::op_Subtraction(UnityEngine.Vector3,UnityEngine.Vector3)
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Vector3_op_Subtraction_m2725C96965D5C0B1F9715797E51762B13A5FED58_inline (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___a0, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___b1, const RuntimeMethod* method);
// System.Single UnityEngine.Vector3::get_sqrMagnitude()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR float Vector3_get_sqrMagnitude_mC567EE6DF411501A8FE1F23A0038862630B88249 (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * __this, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.CCD2D::DoIteration(UnityEngine.Vector3,UnityEngine.Vector3,System.Int32,System.Single,UnityEngine.Vector3[]&)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void CCD2D_DoIteration_m7D1A6F51429A7FE777156C1BA76EE30C65610423 (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___targetPosition0, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___forward1, int32_t ___last2, float ___velocity3, Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** ___positions4, const RuntimeMethod* method);
// System.Single UnityEngine.Vector3::SignedAngle(UnityEngine.Vector3,UnityEngine.Vector3,UnityEngine.Vector3)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR float Vector3_SignedAngle_m816C32A674665A4C3C9D850FB0A107E69A4D3E0A (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___from0, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___to1, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___axis2, const RuntimeMethod* method);
// System.Single UnityEngine.Mathf::Lerp(System.Single,System.Single,System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR float Mathf_Lerp_m8A2A50B945F42D579EDF44D5EE79E85A4DA59616 (float ___a0, float ___b1, float ___t2, const RuntimeMethod* method);
// UnityEngine.Quaternion UnityEngine.Quaternion::AngleAxis(System.Single,UnityEngine.Vector3)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  Quaternion_AngleAxis_m4644D20F58ADF03E9EA297CB4A845E5BCDA1E398 (float ___angle0, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___axis1, const RuntimeMethod* method);
// UnityEngine.Vector3 UnityEngine.U2D.IK.CCD2D::RotatePositionFrom(UnityEngine.Vector3,UnityEngine.Vector3,UnityEngine.Quaternion)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  CCD2D_RotatePositionFrom_m4F421FBEBD89BFE0EF6321CF3996E6DAE1F209C4 (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___position0, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___pivot1, Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  ___rotation2, const RuntimeMethod* method);
// UnityEngine.Vector3 UnityEngine.Quaternion::op_Multiply(UnityEngine.Quaternion,UnityEngine.Vector3)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Quaternion_op_Multiply_mDC5F913E6B21FEC72AB2CF737D34CC6C7A69803D (Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  ___rotation0, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___point1, const RuntimeMethod* method);
// UnityEngine.Vector3 UnityEngine.Vector3::op_Addition(UnityEngine.Vector3,UnityEngine.Vector3)
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Vector3_op_Addition_mEE4F672B923CCB184C39AABCA33443DB218E50E0_inline (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___a0, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___b1, const RuntimeMethod* method);
// System.Int32 UnityEngine.Mathf::Max(System.Int32,System.Int32)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR int32_t Mathf_Max_mAB2544BF70651EC36982F5F4EBD250AEE283335A (int32_t ___a0, int32_t ___b1, const RuntimeMethod* method);
// System.Single UnityEngine.Mathf::Max(System.Single,System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR float Mathf_Max_m4CE510E1F1013B33275F01543731A51A58BA0775 (float ___a0, float ___b1, const RuntimeMethod* method);
// System.Single UnityEngine.Mathf::Clamp01(System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR float Mathf_Clamp01_m2296D75F0F1292D5C8181C57007A1CA45F440C4C (float ___value0, const RuntimeMethod* method);
// System.Int32 UnityEngine.U2D.IK.IKChain2D::get_transformCount()
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR int32_t IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method);
// UnityEngine.Transform[] UnityEngine.U2D.IK.IKChain2D::get_transforms()
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method);
// UnityEngine.Vector3 UnityEngine.Transform::get_position()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Transform_get_position_m40A8A9895568D56FFC687B57F30E8D53CB5EA341 (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * __this, const RuntimeMethod* method);
// !0 System.Collections.Generic.List`1<UnityEngine.Vector3>::get_Item(System.Int32)
inline Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  List_1_get_Item_m554804AC447B0BA1F93C64E863FF7DB0527AFED9_inline (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * __this, int32_t ___index0, const RuntimeMethod* method)
{
	return ((  Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  (*) (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 *, int32_t, const RuntimeMethod*))List_1_get_Item_m554804AC447B0BA1F93C64E863FF7DB0527AFED9_gshared_inline)(__this, ___index0, method);
}
// UnityEngine.Vector3 UnityEngine.Transform::InverseTransformPoint(UnityEngine.Vector3)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Transform_InverseTransformPoint_m476ABC8F3F14824D7D82FE2C54CEE5A151A669B8 (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * __this, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___position0, const RuntimeMethod* method);
// UnityEngine.Vector2 UnityEngine.Vector2::op_Implicit(UnityEngine.Vector3)
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  Vector2_op_Implicit_mE407CAF7446E342E059B00AA9EDB301AEC5B7B1A_inline (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___v0, const RuntimeMethod* method);
// UnityEngine.Vector3 UnityEngine.Vector2::op_Implicit(UnityEngine.Vector2)
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Vector2_op_Implicit_m4FA146E613DBFE6C1C4B0E9B461D622E6F2FC294_inline (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___v0, const RuntimeMethod* method);
// UnityEngine.Vector3 UnityEngine.Transform::TransformPoint(UnityEngine.Vector3)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Transform_TransformPoint_m68AF95765A9279192E601208A9C5170027A5F0D2 (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * __this, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___position0, const RuntimeMethod* method);
// UnityEngine.Vector3 UnityEngine.Transform::get_forward()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Transform_get_forward_mD850B9ECF892009E3485408DC0D375165B7BF053 (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * __this, const RuntimeMethod* method);
// System.Int32 UnityEngine.U2D.IK.CCDSolver2D::get_iterations()
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR int32_t CCDSolver2D_get_iterations_m865B9C229A4C0D7B8B7A132C651258A56EDAEE28_inline (CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE * __this, const RuntimeMethod* method);
// System.Single UnityEngine.U2D.IK.CCDSolver2D::get_tolerance()
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR float CCDSolver2D_get_tolerance_mD1B0EDE706703F601BD0A0C4DF6C892075283C2D_inline (CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE * __this, const RuntimeMethod* method);
// System.Boolean UnityEngine.U2D.IK.CCD2D::Solve(UnityEngine.Vector3,UnityEngine.Vector3,System.Int32,System.Single,System.Single,UnityEngine.Vector3[]&)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool CCD2D_Solve_m7C131A12642533B8C236B2A3FF1F40EE67E9B1E5 (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___targetPosition0, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___forward1, int32_t ___solverLimit2, float ___tolerance3, float ___velocity4, Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** ___positions5, const RuntimeMethod* method);
// UnityEngine.Vector3 UnityEngine.Transform::get_localPosition()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Transform_get_localPosition_m527B8B5B625DA9A61E551E0FBCD3BE8CA4539FC2 (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * __this, const RuntimeMethod* method);
// UnityEngine.Quaternion UnityEngine.Transform::get_localRotation()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  Transform_get_localRotation_mA6472AE7509D762965275D79B645A14A9CCF5BE5 (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * __this, const RuntimeMethod* method);
// UnityEngine.Quaternion UnityEngine.Quaternion::FromToRotation(UnityEngine.Vector3,UnityEngine.Vector3)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  Quaternion_FromToRotation_mD0EBB9993FC7C6A45724D0365B09F11F1CEADB80 (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___fromDirection0, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___toDirection1, const RuntimeMethod* method);
// UnityEngine.Quaternion UnityEngine.Quaternion::op_Multiply(UnityEngine.Quaternion,UnityEngine.Quaternion)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  Quaternion_op_Multiply_m5C7A60AC0CDCA2C5E2F23E45FBD1B15CA152D7B0 (Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  ___lhs0, Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  ___rhs1, const RuntimeMethod* method);
// System.Void UnityEngine.Transform::set_localRotation(UnityEngine.Quaternion)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Transform_set_localRotation_m1A9101457EC4653AFC93FCC4065A29F2C78FA62C (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * __this, Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  ___value0, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.IKChain2D::.ctor()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKChain2D__ctor_m6551D974C5CCD2BC3BE58B13BB2E2513A66CC620 (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.Solver2D::.ctor()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D__ctor_mD0FAAA85839E2CE1F6727F924EECA48F9CBA0E8C (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method);
// UnityEngine.Vector2 UnityEngine.Vector2::op_Subtraction(UnityEngine.Vector2,UnityEngine.Vector2)
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  Vector2_op_Subtraction_m6E536A8C72FEAA37FF8D5E26E11D6E71EB59599A_inline (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___a0, Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___b1, const RuntimeMethod* method);
// System.Single UnityEngine.Vector2::get_sqrMagnitude()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR float Vector2_get_sqrMagnitude_mF489F0EF7E88FF046BA36767ECC50B89674C925A (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * __this, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.FABRIK2D::Forward(UnityEngine.Vector2,System.Single[],UnityEngine.Vector2[]&)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void FABRIK2D_Forward_m7C7FE55BAD6886E44F94015A613B5717EC7B1D12 (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___targetPosition0, SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* ___lengths1, Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** ___positions2, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.FABRIK2D::Backward(UnityEngine.Vector2,System.Single[],UnityEngine.Vector2[]&)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void FABRIK2D_Backward_mFD8C1326375670D404930BDA24819392A8F882CF (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___originPosition0, SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* ___lengths1, Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** ___positions2, const RuntimeMethod* method);
// System.Boolean UnityEngine.U2D.IK.FABRIK2D::ValidateChain(UnityEngine.U2D.IK.FABRIKChain2D[])
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool FABRIK2D_ValidateChain_m20D50DF3E6116AD920EA0D77BA5CA8E7464B9F43 (FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* ___chains0, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.FABRIK2D::SolveForwardsChain(System.Int32,UnityEngine.U2D.IK.FABRIKChain2D[]&)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void FABRIK2D_SolveForwardsChain_m5FE322F4779E9476181D5F20C59CC68FAAED7727 (int32_t ___idx0, FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** ___chains1, const RuntimeMethod* method);
// System.Boolean UnityEngine.U2D.IK.FABRIK2D::SolveBackwardsChain(System.Int32,UnityEngine.U2D.IK.FABRIKChain2D[]&)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool FABRIK2D_SolveBackwardsChain_mEA0A100EED6E133E75D321701AB5D2C8869D11FE (int32_t ___idx0, FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** ___chains1, const RuntimeMethod* method);
// UnityEngine.Vector2 UnityEngine.U2D.IK.FABRIKChain2D::get_last()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  FABRIKChain2D_get_last_m6ED44B613CAB74F7306D814AF15A9792E8BE8546 (FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59 * __this, const RuntimeMethod* method);
// UnityEngine.Vector2 UnityEngine.Vector2::get_zero()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  Vector2_get_zero_m621041B9DF5FAE86C1EF4CB28C224FEA089CB828 (const RuntimeMethod* method);
// UnityEngine.Vector2 UnityEngine.U2D.IK.FABRIKChain2D::get_first()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  FABRIKChain2D_get_first_m3B7A5DADFA5DEBB6C1882ED237BD390F3E713C5A (FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59 * __this, const RuntimeMethod* method);
// UnityEngine.Vector2 UnityEngine.Vector2::op_Addition(UnityEngine.Vector2,UnityEngine.Vector2)
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  Vector2_op_Addition_m5EACC2AEA80FEE29F380397CF1F4B11D04BE71CC_inline (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___a0, Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___b1, const RuntimeMethod* method);
// UnityEngine.Vector2 UnityEngine.Vector2::op_Division(UnityEngine.Vector2,System.Single)
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  Vector2_op_Division_m9E0ABD4CB731137B84249278B80D4C2624E58AC6_inline (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___a0, float ___d1, const RuntimeMethod* method);
// System.Single UnityEngine.Vector2::get_magnitude()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR float Vector2_get_magnitude_mD30DB8EB73C4A5CD395745AE1CA1C38DC61D2E85 (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * __this, const RuntimeMethod* method);
// UnityEngine.Vector2 UnityEngine.Vector2::op_Multiply(System.Single,UnityEngine.Vector2)
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  Vector2_op_Multiply_m841D5292C48DAD9746A2F4EED9CE7A76CDB652EA_inline (float ___d0, Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___a1, const RuntimeMethod* method);
// System.Single UnityEngine.Vector2::SignedAngle(UnityEngine.Vector2,UnityEngine.Vector2)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR float Vector2_SignedAngle_m007FAC4E36153EEBC62347D6FA67162238C34C69 (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___from0, Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___to1, const RuntimeMethod* method);
// UnityEngine.Quaternion UnityEngine.Quaternion::Euler(System.Single,System.Single,System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  Quaternion_Euler_m37BF99FFFA09F4B3F83DC066641B82C59B19A9C3 (float ___x0, float ___y1, float ___z2, const RuntimeMethod* method);
// UnityEngine.Vector3 UnityEngine.Vector3::op_Multiply(UnityEngine.Vector3,System.Single)
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Vector3_op_Multiply_m9EA3D18290418D7B410C7D11C4788C13BFD2C30A_inline (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___a0, float ___d1, const RuntimeMethod* method);
// UnityEngine.Vector3 UnityEngine.U2D.IK.Solver2D::GetPointOnSolverPlane(UnityEngine.Vector3)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Solver2D_GetPointOnSolverPlane_mB1860607F0C31502574E1D8E80C55CC991A00301 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___worldPosition0, const RuntimeMethod* method);
// System.Int32 UnityEngine.U2D.IK.FabrikSolver2D::get_iterations()
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR int32_t FabrikSolver2D_get_iterations_m46C5BE63A5E2E52628D750D4028BBC2122BAB1E8_inline (FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC * __this, const RuntimeMethod* method);
// System.Single UnityEngine.U2D.IK.FabrikSolver2D::get_tolerance()
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR float FabrikSolver2D_get_tolerance_m98EAF62D8185C67EB65A8EE354D7C477B872FBD2_inline (FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC * __this, const RuntimeMethod* method);
// System.Boolean UnityEngine.U2D.IK.FABRIK2D::Solve(UnityEngine.Vector2,System.Int32,System.Single,System.Single[],UnityEngine.Vector2[]&)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool FABRIK2D_Solve_mDBACC6E4D2F9479A6171910E08A1EA8A455A5580 (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___targetPosition0, int32_t ___solverLimit1, float ___tolerance2, SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* ___lengths3, Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** ___positions4, const RuntimeMethod* method);
// UnityEngine.Vector3 UnityEngine.U2D.IK.Solver2D::GetWorldPositionFromSolverPlanePoint(UnityEngine.Vector2)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Solver2D_GetWorldPositionFromSolverPlanePoint_m05071085502CDC4F25D5F8549094406937B40A00 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___planePoint0, const RuntimeMethod* method);
// System.Boolean UnityEngine.U2D.IK.IKChain2D::Validate()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool IKChain2D_Validate_m2DB28BA7405790241AE8089F3CEABF12A9E22D7C (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method);
// System.Boolean UnityEngine.U2D.IK.IKChain2D::get_isValid()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool IKChain2D_get_isValid_mE3AC818DEB38A876C8919A6D5B1C3AA6F225BC8A (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.IKChain2D::PrepareLengths()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKChain2D_PrepareLengths_mD4BE7E28775C08918AB06D8405632159B98BB90C (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method);
// UnityEngine.Transform UnityEngine.U2D.IK.IKChain2D::get_effector()
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * IKChain2D_get_effector_m4C8436D4F6EF2A06DE5D4E852BA7C99D4D0E9046_inline (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method);
// System.Boolean UnityEngine.Object::op_Equality(UnityEngine.Object,UnityEngine.Object)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Object_op_Equality_mEE9EC7EB5C7DC3E95B94AB904E1986FC4D566D54 (Object_tF2F3778131EFF286AF62B7B013A170F95A91571A * ___x0, Object_tF2F3778131EFF286AF62B7B013A170F95A91571A * ___y1, const RuntimeMethod* method);
// UnityEngine.Transform UnityEngine.U2D.IK.IKChain2D::get_rootTransform()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * IKChain2D_get_rootTransform_mEA22E774F957B3E09673D30A310923E107EB0757 (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method);
// UnityEngine.Transform UnityEngine.U2D.IK.IKChain2D::get_lastTransform()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * IKChain2D_get_lastTransform_m2BADDA09E4D23103EB3B1B48D48CA37051F5E7E9 (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method);
// System.Boolean UnityEngine.Object::op_Inequality(UnityEngine.Object,UnityEngine.Object)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Object_op_Inequality_mE1F187520BD83FB7D86A6D850710C4D42B864E90 (Object_tF2F3778131EFF286AF62B7B013A170F95A91571A * ___x0, Object_tF2F3778131EFF286AF62B7B013A170F95A91571A * ___y1, const RuntimeMethod* method);
// UnityEngine.Transform UnityEngine.U2D.IK.IKChain2D::get_target()
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * IKChain2D_get_target_mDD9973A4AC2F4FA94607EC09A6324B8E9CEEFD90_inline (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method);
// System.Boolean UnityEngine.Object::op_Implicit(UnityEngine.Object)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Object_op_Implicit_mC8214E4F028CC2F036CC82BDB81D102A02893499 (Object_tF2F3778131EFF286AF62B7B013A170F95A91571A * ___exists0, const RuntimeMethod* method);
// System.Boolean UnityEngine.U2D.IK.IKUtility::IsDescendentOf(UnityEngine.Transform,UnityEngine.Transform)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool IKUtility_IsDescendentOf_m62549D8A1C1F80AA41765ACB55D65BEDD5F785D4 (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * ___transform0, Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * ___ancestor1, const RuntimeMethod* method);
// System.Int32 UnityEngine.U2D.IK.IKUtility::GetAncestorCount(UnityEngine.Transform)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR int32_t IKUtility_GetAncestorCount_m66BF38868832D92A4DC53F9948248E2695F12410 (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * ___transform0, const RuntimeMethod* method);
// UnityEngine.Transform UnityEngine.Transform::get_parent()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * Transform_get_parent_m7D06005D9CB55F90F39D42F6A2AF9C7BC80745C9 (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * __this, const RuntimeMethod* method);
// System.Single UnityEngine.Vector3::get_magnitude()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR float Vector3_get_magnitude_mDDD40612220D8104E77E993E18A101A69A944991 (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * __this, const RuntimeMethod* method);
// UnityEngine.Quaternion UnityEngine.Quaternion::Slerp(UnityEngine.Quaternion,UnityEngine.Quaternion,System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  Quaternion_Slerp_m6D2BD18286254E28D2288B51962EC71F85C7B5C8 (Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  ___a0, Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  ___b1, float ___t2, const RuntimeMethod* method);
// System.Void System.Object::.ctor()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Object__ctor_m88880E0413421D13FD95325EDCE231707CE1F405 (RuntimeObject * __this, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.IKManager2D::OnEditorDataValidate()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_OnEditorDataValidate_m314875943C56E4D3937EB09D21567FC75A8A334B (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.IKManager2D::FindChildSolvers()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_FindChildSolvers_m7EDD5127BA852896F46E5C4D76447DAEF9022064 (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, const RuntimeMethod* method);
// System.Void System.Collections.Generic.List`1<UnityEngine.U2D.IK.Solver2D>::Clear()
inline void List_1_Clear_m44EA024D005005EE4938BE9BE0E9E5C97337166E (List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * __this, const RuntimeMethod* method)
{
	((  void (*) (List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 *, const RuntimeMethod*))List_1_Clear_m5FB5A9C59D8625FDFB06876C4D8848F0F07ABFD0_gshared)(__this, method);
}
// System.Void System.Collections.Generic.List`1<UnityEngine.U2D.IK.Solver2D>::.ctor()
inline void List_1__ctor_m86F667E44E8BE415B5D35272D407953C5E573706 (List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * __this, const RuntimeMethod* method)
{
	((  void (*) (List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 *, const RuntimeMethod*))List_1__ctor_m0F0E00088CF56FEACC9E32D8B7D91B93D91DAA3B_gshared)(__this, method);
}
// UnityEngine.Transform UnityEngine.Component::get_transform()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * Component_get_transform_mE8496EBC45BEB1BADB5F314960F1DF1C952FA11F (Component_t62FBC8D2420DA4BE9037AFE430740F6B3EECA684 * __this, const RuntimeMethod* method);
// System.Void UnityEngine.Component::GetComponentsInChildren<UnityEngine.U2D.IK.Solver2D>(System.Boolean,System.Collections.Generic.List`1<!!0>)
inline void Component_GetComponentsInChildren_TisSolver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6_m16C798614AE57E2DA830AAF2CAFA405FA5B7EDA2 (Component_t62FBC8D2420DA4BE9037AFE430740F6B3EECA684 * __this, bool ___includeInactive0, List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * ___result1, const RuntimeMethod* method)
{
	((  void (*) (Component_t62FBC8D2420DA4BE9037AFE430740F6B3EECA684 *, bool, List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 *, const RuntimeMethod*))Component_GetComponentsInChildren_TisRuntimeObject_mCFD9EE28706E43CCE81CF186BF0E5EED482B56D9_gshared)(__this, ___includeInactive0, ___result1, method);
}
// System.Collections.Generic.List`1/Enumerator<!0> System.Collections.Generic.List`1<UnityEngine.U2D.IK.Solver2D>::GetEnumerator()
inline Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538  List_1_GetEnumerator_m37365AAB52AECA923EFAE4D6398AD6D88D015F72 (List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * __this, const RuntimeMethod* method)
{
	return ((  Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538  (*) (List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 *, const RuntimeMethod*))List_1_GetEnumerator_m1739A5E25DF502A6984F9B98CFCAC2D3FABCF233_gshared)(__this, method);
}
// !0 System.Collections.Generic.List`1/Enumerator<UnityEngine.U2D.IK.Solver2D>::get_Current()
inline Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * Enumerator_get_Current_m1539A08E25F713882E7B4A29E3FC618F5890C42F_inline (Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538 * __this, const RuntimeMethod* method)
{
	return ((  Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * (*) (Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538 *, const RuntimeMethod*))Enumerator_get_Current_m9C4EBBD2108B51885E750F927D7936290C8E20EE_gshared_inline)(__this, method);
}
// !!0 UnityEngine.Component::GetComponentInParent<UnityEngine.U2D.IK.IKManager2D>()
inline IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * Component_GetComponentInParent_TisIKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510_m94867AA44F7B27FAA1795DB215F8C832DF9EE0D5 (Component_t62FBC8D2420DA4BE9037AFE430740F6B3EECA684 * __this, const RuntimeMethod* method)
{
	return ((  IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * (*) (Component_t62FBC8D2420DA4BE9037AFE430740F6B3EECA684 *, const RuntimeMethod*))Component_GetComponentInParent_TisRuntimeObject_mADA186D1675BEA6779C469918206294354385EC3_gshared)(__this, method);
}
// System.Void UnityEngine.U2D.IK.IKManager2D::AddSolver(UnityEngine.U2D.IK.Solver2D)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_AddSolver_mC886398746EFCF678F39589E34AC602C5DA2BAEA (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * ___solver0, const RuntimeMethod* method);
// System.Boolean System.Collections.Generic.List`1/Enumerator<UnityEngine.U2D.IK.Solver2D>::MoveNext()
inline bool Enumerator_MoveNext_m049CFDB39DDCB7B3ABC594574C3843EAF9A72C05 (Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538 * __this, const RuntimeMethod* method)
{
	return ((  bool (*) (Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538 *, const RuntimeMethod*))Enumerator_MoveNext_m2E56233762839CE55C67E00AC8DD3D4D3F6C0DF0_gshared)(__this, method);
}
// System.Void System.Collections.Generic.List`1/Enumerator<UnityEngine.U2D.IK.Solver2D>::Dispose()
inline void Enumerator_Dispose_mC2D67A1ED0D450AD54A905F9EF34E62B868B0896 (Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538 * __this, const RuntimeMethod* method)
{
	((  void (*) (Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538 *, const RuntimeMethod*))Enumerator_Dispose_mCFB225D9E5E597A1CC8F958E53BEA1367D8AC7B8_gshared)(__this, method);
}
// System.Boolean System.Collections.Generic.List`1<UnityEngine.U2D.IK.Solver2D>::Contains(!0)
inline bool List_1_Contains_mFCC76F5D887C6FE8A803523360E51659BE17C1ED (List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * __this, Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * ___item0, const RuntimeMethod* method)
{
	return ((  bool (*) (List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 *, Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 *, const RuntimeMethod*))List_1_Contains_m99C700668AC6D272188471D2D6B784A2B5636C8E_gshared)(__this, ___item0, method);
}
// System.Void System.Collections.Generic.List`1<UnityEngine.U2D.IK.Solver2D>::Add(!0)
inline void List_1_Add_mA8ADA8666BA41E6EB329B7E4F3E3A41A23FCB103 (List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * __this, Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * ___item0, const RuntimeMethod* method)
{
	((  void (*) (List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 *, Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 *, const RuntimeMethod*))List_1_Add_mE5B3CBB3A625606D9BC4337FEAAF1D66BCB6F96E_gshared)(__this, ___item0, method);
}
// System.Void UnityEngine.U2D.IK.IKManager2D::AddSolverEditorData()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_AddSolverEditorData_m5F1BC9F27CBEEDACF3C71D2381887125D5AC22B7 (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.IKManager2D::RemoveSolverEditorData(UnityEngine.U2D.IK.Solver2D)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_RemoveSolverEditorData_m9C3936EEBDB0EC019E5AA84F050EF12D0960A232 (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * ___solver0, const RuntimeMethod* method);
// System.Boolean System.Collections.Generic.List`1<UnityEngine.U2D.IK.Solver2D>::Remove(!0)
inline bool List_1_Remove_m503270EF64E8E4C3B549B048BE4B30D138997146 (List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * __this, Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * ___item0, const RuntimeMethod* method)
{
	return ((  bool (*) (List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 *, Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 *, const RuntimeMethod*))List_1_Remove_m753F7B4281CC4D02C07AE90726F51EF34B588DF7_gshared)(__this, ___item0, method);
}
// System.Boolean UnityEngine.Behaviour::get_isActiveAndEnabled()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Behaviour_get_isActiveAndEnabled_mDD843C0271D492C1E08E0F8DEE8B6F1CFA951BFA (Behaviour_t1A3DDDCF73B4627928FBFE02ED52B7251777DBD9 * __this, const RuntimeMethod* method);
// System.Boolean UnityEngine.U2D.IK.Solver2D::get_isValid()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Solver2D_get_isValid_m180D4F0261F10FD3058E9A3D8D418BA098A8B54B (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.Solver2D::Initialize()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_Initialize_m1C02ACEDC29FC68935739489E69BE3E17F22A3ED (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method);
// System.Single UnityEngine.U2D.IK.IKManager2D::get_weight()
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR float IKManager2D_get_weight_m9C5AA621D970FADB235FD35E9B31F6BB1E2DFF00_inline (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.Solver2D::UpdateIK(System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_UpdateIK_m91BF63A9B6B1A3D63FE7C3E5A0FF050A0152B654 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, float ___globalWeight0, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.IKManager2D::UpdateManager()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_UpdateManager_m81A83CD039BC8ACA25E2A2A69F784840BF38F783 (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, const RuntimeMethod* method);
// System.Void UnityEngine.MonoBehaviour::.ctor()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void MonoBehaviour__ctor_mC0995D847F6A95B1A553652636C38A2AA8B13BED (MonoBehaviour_t37A501200D970A8257124B0EAE00A0FF3DDC354A * __this, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.IKChain2D::set_transformCount(System.Int32)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKChain2D_set_transformCount_m71CA735D9E8E3E1FD01FCB2AF2B1A03074A04511 (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, int32_t ___value0, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.Solver2D::DoInitialize()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_DoInitialize_mDCE1B7D63FE599641A0634A66FD85993D5BE0265 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method);
// System.Single[] UnityEngine.U2D.IK.IKChain2D::get_lengths()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* IKChain2D_get_lengths_mF25A01AAA5E9A0C2D6E4B1F87F29FFF63468E75D (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method);
// System.Boolean UnityEngine.U2D.IK.Limb::Solve(UnityEngine.Vector3,System.Single[],UnityEngine.Vector3[],System.Single[]&)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Limb_Solve_m972DC483BE62D28C354BB162A4418EA875CC117C (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___targetPosition0, SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* ___lengths1, Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* ___positions2, SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA** ___outAngles3, const RuntimeMethod* method);
// System.Boolean UnityEngine.U2D.IK.LimbSolver2D::get_flip()
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR bool LimbSolver2D_get_flip_mFBD38C46874A7F08949B5A0302D0F2B6BBA08707_inline (LimbSolver2D_t7853B3E9E5644B3A9FE624BCF58FD4279E5D2611 * __this, const RuntimeMethod* method);
// UnityEngine.Vector3 UnityEngine.Vector3::get_right()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Vector3_get_right_mF5A51F81961474E0A7A31C2757FD00921FB79C44 (const RuntimeMethod* method);
// UnityEngine.Vector3 UnityEngine.Vector3::get_forward()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Vector3_get_forward_m3082920F8A24AA02E4F542B6771EB0B63A91AC90 (const RuntimeMethod* method);
// System.Boolean UnityEngine.U2D.IK.Solver2D::Validate()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Solver2D_Validate_mDE546F070375AEC67486B07DAC9ACEB606646404 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method);
// System.Boolean UnityEngine.U2D.IK.Solver2D::HasTargets()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Solver2D_HasTargets_m40811DD2D576F5C640AEEEBE557C756925AA4069 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.IKChain2D::Initialize()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKChain2D_Initialize_mAD562B4CABDBD051BA9CCD30FD68BBF49990E3BA (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method);
// System.Void UnityEngine.Plane::set_normal(UnityEngine.Vector3)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Plane_set_normal_m4F84FE27CD58E2B3EE27DB108576B570EF8AE723 (Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7 * __this, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___value0, const RuntimeMethod* method);
// UnityEngine.Vector3 UnityEngine.Plane::get_normal()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Plane_get_normal_m71CB4BAB04EE04CAEF9AD272B16766800F7D556B (Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7 * __this, const RuntimeMethod* method);
// System.Single UnityEngine.Vector3::Dot(UnityEngine.Vector3,UnityEngine.Vector3)
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR float Vector3_Dot_mD19905B093915BA12852732EA27AA2DBE030D11F_inline (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___lhs0, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___rhs1, const RuntimeMethod* method);
// System.Void UnityEngine.Plane::set_distance(System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Plane_set_distance_m7B427E5F6F6D1DD44C96A503980F4627CDD4A59A (Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7 * __this, float ___value0, const RuntimeMethod* method);
// System.Boolean UnityEngine.U2D.IK.Solver2D::get_constrainRotation()
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR bool Solver2D_get_constrainRotation_mAD2044675730E793B93AD79D522A77CC901965B0_inline (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.IKChain2D::RestoreDefaultPose(System.Boolean)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKChain2D_RestoreDefaultPose_m9078C5D10EB72B9F01682D9EE0419BCEBCD61D4C (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, bool ___targetRotationIsConstrained0, const RuntimeMethod* method);
// System.Void System.Collections.Generic.List`1<UnityEngine.Vector3>::Clear()
inline void List_1_Clear_mE0F03A2E42E2F7F8A282AE01C12945F7379DC702 (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * __this, const RuntimeMethod* method)
{
	((  void (*) (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 *, const RuntimeMethod*))List_1_Clear_mE0F03A2E42E2F7F8A282AE01C12945F7379DC702_gshared)(__this, method);
}
// System.Void System.Collections.Generic.List`1<UnityEngine.Vector3>::Add(!0)
inline void List_1_Add_mAE131B53917AD7132F6BA2C05D5D17C38C5A2E59 (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * __this, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___item0, const RuntimeMethod* method)
{
	((  void (*) (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 *, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E , const RuntimeMethod*))List_1_Add_mAE131B53917AD7132F6BA2C05D5D17C38C5A2E59_gshared)(__this, ___item0, method);
}
// System.Boolean UnityEngine.U2D.IK.Solver2D::get_allChainsHaveTargets()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Solver2D_get_allChainsHaveTargets_mC0D6635D31377E8F0C5F535B0F3D8A147C430460 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.Solver2D::PrepareEffectorPositions()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_PrepareEffectorPositions_m9A85A1F76C32A676C46488E2BF76BC12C9044C8F (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.Solver2D::UpdateIK(System.Collections.Generic.List`1<UnityEngine.Vector3>,System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_UpdateIK_mA42642E47A3B527871C3128FE7520C66EBC5A0CB (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * ___positions0, float ___globalWeight1, const RuntimeMethod* method);
// System.Int32 System.Collections.Generic.List`1<UnityEngine.Vector3>::get_Count()
inline int32_t List_1_get_Count_m320FF0DD39F83A684F9E277C6A0D07BC3CEDA7D9_inline (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * __this, const RuntimeMethod* method)
{
	return ((  int32_t (*) (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 *, const RuntimeMethod*))List_1_get_Count_m320FF0DD39F83A684F9E277C6A0D07BC3CEDA7D9_gshared_inline)(__this, method);
}
// System.Int32 UnityEngine.U2D.IK.Solver2D::get_chainCount()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR int32_t Solver2D_get_chainCount_mB7D56B5D3D0699CAE3159E482E6FD5EE8F23D737 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method);
// System.Single UnityEngine.U2D.IK.Solver2D::get_weight()
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR float Solver2D_get_weight_mC28624569969B5FE6C0319251C27D5C1EE42CE05_inline (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.Solver2D::Prepare()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_Prepare_m0119AF48F7073E9E64E97E208B9D564E8911F416 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.Solver2D::StoreLocalRotations()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_StoreLocalRotations_mE44B67DBA2B736BCD68ADA7AE912973BA4DFF6EE (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method);
// UnityEngine.Quaternion UnityEngine.Transform::get_rotation()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  Transform_get_rotation_m4AA3858C00DF4C9614B80352558C4C37D08D2200 (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * __this, const RuntimeMethod* method);
// System.Void UnityEngine.Transform::set_rotation(UnityEngine.Quaternion)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Transform_set_rotation_m1B5F3D4CE984AB31254615C9C71B0E54978583B4 (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * __this, Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  ___value0, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.Solver2D::BlendFkToIk(System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_BlendFkToIk_m6862D6599516FBAA8680E8C81D73C1A04636E4AE (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, float ___finalWeight0, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.IKChain2D::StoreLocalRotations()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKChain2D_StoreLocalRotations_m7E529365BE433D59BB1D2A4282B4B21B1DC4E400 (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method);
// System.Void UnityEngine.U2D.IK.IKChain2D::BlendFkToIk(System.Single,System.Boolean)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKChain2D_BlendFkToIk_m45CA3EF8F3AE14674F913AF9F38A7BD3E42AEBA8 (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, float ___finalWeight0, bool ___targetRotationIsConstrained1, const RuntimeMethod* method);
// UnityEngine.Vector3 UnityEngine.Plane::ClosestPointOnPlane(UnityEngine.Vector3)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Plane_ClosestPointOnPlane_mDBB63D79FA643E10949FEE1AE692975940716BCE (Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7 * __this, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___point0, const RuntimeMethod* method);
// System.Void System.Collections.Generic.List`1<UnityEngine.Vector3>::.ctor()
inline void List_1__ctor_mF8F23D572031748AD428623AE16803455997E297 (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * __this, const RuntimeMethod* method)
{
	((  void (*) (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 *, const RuntimeMethod*))List_1__ctor_mF8F23D572031748AD428623AE16803455997E297_gshared)(__this, method);
}
// System.Void System.Attribute::.ctor()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Attribute__ctor_m5C1862A7DFC2C25A4797A8C5F681FBB5CB53ECE1 (Attribute_t037CA9D9F3B742C063DB364D2EEBBF9FC5772C71 * __this, const RuntimeMethod* method);
// System.Void UnityEngine.Vector3::.ctor(System.Single,System.Single,System.Single)
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR void Vector3__ctor_m57495F692C6CE1CEF278CAD9A98221165D37E636_inline (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * __this, float ___x0, float ___y1, float ___z2, const RuntimeMethod* method);
// System.Void UnityEngine.Vector2::.ctor(System.Single,System.Single)
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR void Vector2__ctor_m9F1F2D5EB5D1FF7091BB527AC8A72CBB309D115E_inline (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * __this, float ___x0, float ___y1, const RuntimeMethod* method);
// System.Void System.ThrowHelper::ThrowArgumentOutOfRangeException()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void ThrowHelper_ThrowArgumentOutOfRangeException_m4841366ABC2B2AFA37C10900551D7E07522C0929 (const RuntimeMethod* method);
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Winvalid-offsetof"
#pragma clang diagnostic ignored "-Wunused-variable"
#endif
#ifdef __clang__
#pragma clang diagnostic pop
#endif
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Winvalid-offsetof"
#pragma clang diagnostic ignored "-Wunused-variable"
#endif
// System.Boolean UnityEngine.U2D.IK.CCD2D::Solve(UnityEngine.Vector3,UnityEngine.Vector3,System.Int32,System.Single,System.Single,UnityEngine.Vector3[]&)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool CCD2D_Solve_m7C131A12642533B8C236B2A3FF1F40EE67E9B1E5 (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___targetPosition0, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___forward1, int32_t ___solverLimit2, float ___tolerance3, float ___velocity4, Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** ___positions5, const RuntimeMethod* method)
{
	int32_t V_0 = 0;
	int32_t V_1 = 0;
	float V_2 = 0.0f;
	float V_3 = 0.0f;
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  V_4;
	memset((&V_4), 0, sizeof(V_4));
	{
		// int last = positions.Length - 1;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** L_0 = ___positions5;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_1 = *((Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4**)L_0);
		NullCheck(L_1);
		V_0 = ((int32_t)il2cpp_codegen_subtract((int32_t)((int32_t)((int32_t)(((RuntimeArray*)L_1)->max_length))), (int32_t)1));
		// int iterations = 0;
		V_1 = 0;
		// float sqrTolerance = tolerance * tolerance;
		float L_2 = ___tolerance3;
		float L_3 = ___tolerance3;
		V_2 = ((float)il2cpp_codegen_multiply((float)L_2, (float)L_3));
		// float sqrDistanceToTarget = (targetPosition - positions[last]).sqrMagnitude;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_4 = ___targetPosition0;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** L_5 = ___positions5;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_6 = *((Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4**)L_5);
		int32_t L_7 = V_0;
		NullCheck(L_6);
		int32_t L_8 = L_7;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_9 = (L_6)->GetAt(static_cast<il2cpp_array_size_t>(L_8));
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_10;
		L_10 = Vector3_op_Subtraction_m2725C96965D5C0B1F9715797E51762B13A5FED58_inline(L_4, L_9, /*hidden argument*/NULL);
		V_4 = L_10;
		float L_11;
		L_11 = Vector3_get_sqrMagnitude_mC567EE6DF411501A8FE1F23A0038862630B88249((Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E *)(&V_4), /*hidden argument*/NULL);
		V_3 = L_11;
		goto IL_0056;
	}

IL_0029:
	{
		// DoIteration(targetPosition, forward, last, velocity, ref positions);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_12 = ___targetPosition0;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_13 = ___forward1;
		int32_t L_14 = V_0;
		float L_15 = ___velocity4;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** L_16 = ___positions5;
		CCD2D_DoIteration_m7D1A6F51429A7FE777156C1BA76EE30C65610423(L_12, L_13, L_14, L_15, (Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4**)L_16, /*hidden argument*/NULL);
		// sqrDistanceToTarget = (targetPosition - positions[last]).sqrMagnitude;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_17 = ___targetPosition0;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** L_18 = ___positions5;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_19 = *((Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4**)L_18);
		int32_t L_20 = V_0;
		NullCheck(L_19);
		int32_t L_21 = L_20;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_22 = (L_19)->GetAt(static_cast<il2cpp_array_size_t>(L_21));
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_23;
		L_23 = Vector3_op_Subtraction_m2725C96965D5C0B1F9715797E51762B13A5FED58_inline(L_17, L_22, /*hidden argument*/NULL);
		V_4 = L_23;
		float L_24;
		L_24 = Vector3_get_sqrMagnitude_mC567EE6DF411501A8FE1F23A0038862630B88249((Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E *)(&V_4), /*hidden argument*/NULL);
		V_3 = L_24;
		// if (++iterations >= solverLimit)
		int32_t L_25 = V_1;
		int32_t L_26 = ((int32_t)il2cpp_codegen_add((int32_t)L_25, (int32_t)1));
		V_1 = L_26;
		int32_t L_27 = ___solverLimit2;
		if ((((int32_t)L_26) >= ((int32_t)L_27)))
		{
			goto IL_005a;
		}
	}

IL_0056:
	{
		// while (sqrDistanceToTarget > sqrTolerance)
		float L_28 = V_3;
		float L_29 = V_2;
		if ((((float)L_28) > ((float)L_29)))
		{
			goto IL_0029;
		}
	}

IL_005a:
	{
		// return iterations != 0;
		int32_t L_30 = V_1;
		return (bool)((!(((uint32_t)L_30) <= ((uint32_t)0)))? 1 : 0);
	}
}
// System.Void UnityEngine.U2D.IK.CCD2D::DoIteration(UnityEngine.Vector3,UnityEngine.Vector3,System.Int32,System.Single,UnityEngine.Vector3[]&)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void CCD2D_DoIteration_m7D1A6F51429A7FE777156C1BA76EE30C65610423 (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___targetPosition0, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___forward1, int32_t ___last2, float ___velocity3, Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** ___positions4, const RuntimeMethod* method)
{
	int32_t V_0 = 0;
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  V_1;
	memset((&V_1), 0, sizeof(V_1));
	float V_2 = 0.0f;
	Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  V_3;
	memset((&V_3), 0, sizeof(V_3));
	int32_t V_4 = 0;
	{
		// for (int i = last - 1; i >= 0; --i)
		int32_t L_0 = ___last2;
		V_0 = ((int32_t)il2cpp_codegen_subtract((int32_t)L_0, (int32_t)1));
		goto IL_0081;
	}

IL_0006:
	{
		// Vector3 toTarget = targetPosition - positions[i];
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_1 = ___targetPosition0;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** L_2 = ___positions4;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_3 = *((Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4**)L_2);
		int32_t L_4 = V_0;
		NullCheck(L_3);
		int32_t L_5 = L_4;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_6 = (L_3)->GetAt(static_cast<il2cpp_array_size_t>(L_5));
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_7;
		L_7 = Vector3_op_Subtraction_m2725C96965D5C0B1F9715797E51762B13A5FED58_inline(L_1, L_6, /*hidden argument*/NULL);
		V_1 = L_7;
		// Vector3 toLast = positions[last] - positions[i];
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** L_8 = ___positions4;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_9 = *((Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4**)L_8);
		int32_t L_10 = ___last2;
		NullCheck(L_9);
		int32_t L_11 = L_10;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_12 = (L_9)->GetAt(static_cast<il2cpp_array_size_t>(L_11));
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** L_13 = ___positions4;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_14 = *((Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4**)L_13);
		int32_t L_15 = V_0;
		NullCheck(L_14);
		int32_t L_16 = L_15;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_17 = (L_14)->GetAt(static_cast<il2cpp_array_size_t>(L_16));
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_18;
		L_18 = Vector3_op_Subtraction_m2725C96965D5C0B1F9715797E51762B13A5FED58_inline(L_12, L_17, /*hidden argument*/NULL);
		// float angle = Vector3.SignedAngle(toLast, toTarget, forward);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_19 = V_1;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_20 = ___forward1;
		float L_21;
		L_21 = Vector3_SignedAngle_m816C32A674665A4C3C9D850FB0A107E69A4D3E0A(L_18, L_19, L_20, /*hidden argument*/NULL);
		V_2 = L_21;
		// angle = Mathf.Lerp(0f, angle, velocity);
		float L_22 = V_2;
		float L_23 = ___velocity3;
		float L_24;
		L_24 = Mathf_Lerp_m8A2A50B945F42D579EDF44D5EE79E85A4DA59616((0.0f), L_22, L_23, /*hidden argument*/NULL);
		V_2 = L_24;
		// Quaternion deltaRotation = Quaternion.AngleAxis(angle, forward);
		float L_25 = V_2;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_26 = ___forward1;
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_27;
		L_27 = Quaternion_AngleAxis_m4644D20F58ADF03E9EA297CB4A845E5BCDA1E398(L_25, L_26, /*hidden argument*/NULL);
		V_3 = L_27;
		// for (int j = last; j > i; --j)
		int32_t L_28 = ___last2;
		V_4 = L_28;
		goto IL_0078;
	}

IL_004f:
	{
		// positions[j] = RotatePositionFrom(positions[j], positions[i], deltaRotation);
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** L_29 = ___positions4;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_30 = *((Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4**)L_29);
		int32_t L_31 = V_4;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** L_32 = ___positions4;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_33 = *((Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4**)L_32);
		int32_t L_34 = V_4;
		NullCheck(L_33);
		int32_t L_35 = L_34;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_36 = (L_33)->GetAt(static_cast<il2cpp_array_size_t>(L_35));
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** L_37 = ___positions4;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_38 = *((Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4**)L_37);
		int32_t L_39 = V_0;
		NullCheck(L_38);
		int32_t L_40 = L_39;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_41 = (L_38)->GetAt(static_cast<il2cpp_array_size_t>(L_40));
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_42 = V_3;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_43;
		L_43 = CCD2D_RotatePositionFrom_m4F421FBEBD89BFE0EF6321CF3996E6DAE1F209C4(L_36, L_41, L_42, /*hidden argument*/NULL);
		NullCheck(L_30);
		(L_30)->SetAt(static_cast<il2cpp_array_size_t>(L_31), (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E )L_43);
		// for (int j = last; j > i; --j)
		int32_t L_44 = V_4;
		V_4 = ((int32_t)il2cpp_codegen_subtract((int32_t)L_44, (int32_t)1));
	}

IL_0078:
	{
		// for (int j = last; j > i; --j)
		int32_t L_45 = V_4;
		int32_t L_46 = V_0;
		if ((((int32_t)L_45) > ((int32_t)L_46)))
		{
			goto IL_004f;
		}
	}
	{
		// for (int i = last - 1; i >= 0; --i)
		int32_t L_47 = V_0;
		V_0 = ((int32_t)il2cpp_codegen_subtract((int32_t)L_47, (int32_t)1));
	}

IL_0081:
	{
		// for (int i = last - 1; i >= 0; --i)
		int32_t L_48 = V_0;
		if ((((int32_t)L_48) >= ((int32_t)0)))
		{
			goto IL_0006;
		}
	}
	{
		// }
		return;
	}
}
// UnityEngine.Vector3 UnityEngine.U2D.IK.CCD2D::RotatePositionFrom(UnityEngine.Vector3,UnityEngine.Vector3,UnityEngine.Quaternion)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  CCD2D_RotatePositionFrom_m4F421FBEBD89BFE0EF6321CF3996E6DAE1F209C4 (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___position0, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___pivot1, Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  ___rotation2, const RuntimeMethod* method)
{
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  V_0;
	memset((&V_0), 0, sizeof(V_0));
	{
		// Vector3 v = position - pivot;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_0 = ___position0;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_1 = ___pivot1;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_2;
		L_2 = Vector3_op_Subtraction_m2725C96965D5C0B1F9715797E51762B13A5FED58_inline(L_0, L_1, /*hidden argument*/NULL);
		V_0 = L_2;
		// v = rotation * v;
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_3 = ___rotation2;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_4 = V_0;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_5;
		L_5 = Quaternion_op_Multiply_mDC5F913E6B21FEC72AB2CF737D34CC6C7A69803D(L_3, L_4, /*hidden argument*/NULL);
		V_0 = L_5;
		// return pivot + v;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_6 = ___pivot1;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_7 = V_0;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_8;
		L_8 = Vector3_op_Addition_mEE4F672B923CCB184C39AABCA33443DB218E50E0_inline(L_6, L_7, /*hidden argument*/NULL);
		return L_8;
	}
}
#ifdef __clang__
#pragma clang diagnostic pop
#endif
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Winvalid-offsetof"
#pragma clang diagnostic ignored "-Wunused-variable"
#endif
// System.Int32 UnityEngine.U2D.IK.CCDSolver2D::get_iterations()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR int32_t CCDSolver2D_get_iterations_m865B9C229A4C0D7B8B7A132C651258A56EDAEE28 (CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Iterations; }
		int32_t L_0 = __this->get_m_Iterations_14();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.CCDSolver2D::set_iterations(System.Int32)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void CCDSolver2D_set_iterations_m4111E7A59A26ED09B622FF0D683F11D3BB75DA84 (CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE * __this, int32_t ___value0, const RuntimeMethod* method)
{
	{
		// set { m_Iterations = Mathf.Max(value, kMinIterations); }
		int32_t L_0 = ___value0;
		int32_t L_1;
		L_1 = Mathf_Max_mAB2544BF70651EC36982F5F4EBD250AEE283335A(L_0, 1, /*hidden argument*/NULL);
		__this->set_m_Iterations_14(L_1);
		// set { m_Iterations = Mathf.Max(value, kMinIterations); }
		return;
	}
}
// System.Single UnityEngine.U2D.IK.CCDSolver2D::get_tolerance()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR float CCDSolver2D_get_tolerance_mD1B0EDE706703F601BD0A0C4DF6C892075283C2D (CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Tolerance; }
		float L_0 = __this->get_m_Tolerance_15();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.CCDSolver2D::set_tolerance(System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void CCDSolver2D_set_tolerance_m90FAB6AA7B69FBF7A831362185C0CD542053C345 (CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE * __this, float ___value0, const RuntimeMethod* method)
{
	{
		// set { m_Tolerance = Mathf.Max(value, kMinTolerance); }
		float L_0 = ___value0;
		float L_1;
		L_1 = Mathf_Max_m4CE510E1F1013B33275F01543731A51A58BA0775(L_0, (0.00100000005f), /*hidden argument*/NULL);
		__this->set_m_Tolerance_15(L_1);
		// set { m_Tolerance = Mathf.Max(value, kMinTolerance); }
		return;
	}
}
// System.Single UnityEngine.U2D.IK.CCDSolver2D::get_velocity()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR float CCDSolver2D_get_velocity_mA30B419389420DFBBBABFC128DF7AF50494CF910 (CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Velocity; }
		float L_0 = __this->get_m_Velocity_16();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.CCDSolver2D::set_velocity(System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void CCDSolver2D_set_velocity_mF013ADE8C4F2292ECDFBD020551CA034C3BC063F (CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE * __this, float ___value0, const RuntimeMethod* method)
{
	{
		// set { m_Velocity = Mathf.Clamp01(value); }
		float L_0 = ___value0;
		float L_1;
		L_1 = Mathf_Clamp01_m2296D75F0F1292D5C8181C57007A1CA45F440C4C(L_0, /*hidden argument*/NULL);
		__this->set_m_Velocity_16(L_1);
		// set { m_Velocity = Mathf.Clamp01(value); }
		return;
	}
}
// System.Int32 UnityEngine.U2D.IK.CCDSolver2D::GetChainCount()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR int32_t CCDSolver2D_GetChainCount_mB0E03E52A8F303F2C47F5C17CB2E9C27B19C6E83 (CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE * __this, const RuntimeMethod* method)
{
	{
		// return 1;
		return 1;
	}
}
// UnityEngine.U2D.IK.IKChain2D UnityEngine.U2D.IK.CCDSolver2D::GetChain(System.Int32)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * CCDSolver2D_GetChain_mD8B4C8D95393D7B5CDD8AA123A6DEC702EEE8C36 (CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE * __this, int32_t ___index0, const RuntimeMethod* method)
{
	{
		// return m_Chain;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_0 = __this->get_m_Chain_13();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.CCDSolver2D::DoPrepare()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void CCDSolver2D_DoPrepare_m493568C24CD5B8759CA47A09627E818616D02C1E (CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE * __this, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	int32_t V_0 = 0;
	{
		// if (m_Positions == null || m_Positions.Length != m_Chain.transformCount)
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_0 = __this->get_m_Positions_17();
		if (!L_0)
		{
			goto IL_001d;
		}
	}
	{
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_1 = __this->get_m_Positions_17();
		NullCheck(L_1);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_2 = __this->get_m_Chain_13();
		NullCheck(L_2);
		int32_t L_3;
		L_3 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(L_2, /*hidden argument*/NULL);
		if ((((int32_t)((int32_t)((int32_t)(((RuntimeArray*)L_1)->max_length)))) == ((int32_t)L_3)))
		{
			goto IL_0033;
		}
	}

IL_001d:
	{
		// m_Positions = new Vector3[m_Chain.transformCount];
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_4 = __this->get_m_Chain_13();
		NullCheck(L_4);
		int32_t L_5;
		L_5 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(L_4, /*hidden argument*/NULL);
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_6 = (Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4*)(Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4*)SZArrayNew(Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4_il2cpp_TypeInfo_var, (uint32_t)L_5);
		__this->set_m_Positions_17(L_6);
	}

IL_0033:
	{
		// for (int i = 0; i < m_Chain.transformCount; ++i)
		V_0 = 0;
		goto IL_0059;
	}

IL_0037:
	{
		// m_Positions[i] = m_Chain.transforms[i].position;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_7 = __this->get_m_Positions_17();
		int32_t L_8 = V_0;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_9 = __this->get_m_Chain_13();
		NullCheck(L_9);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_10;
		L_10 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_9, /*hidden argument*/NULL);
		int32_t L_11 = V_0;
		NullCheck(L_10);
		int32_t L_12 = L_11;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_13 = (L_10)->GetAt(static_cast<il2cpp_array_size_t>(L_12));
		NullCheck(L_13);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_14;
		L_14 = Transform_get_position_m40A8A9895568D56FFC687B57F30E8D53CB5EA341(L_13, /*hidden argument*/NULL);
		NullCheck(L_7);
		(L_7)->SetAt(static_cast<il2cpp_array_size_t>(L_8), (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E )L_14);
		// for (int i = 0; i < m_Chain.transformCount; ++i)
		int32_t L_15 = V_0;
		V_0 = ((int32_t)il2cpp_codegen_add((int32_t)L_15, (int32_t)1));
	}

IL_0059:
	{
		// for (int i = 0; i < m_Chain.transformCount; ++i)
		int32_t L_16 = V_0;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_17 = __this->get_m_Chain_13();
		NullCheck(L_17);
		int32_t L_18;
		L_18 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(L_17, /*hidden argument*/NULL);
		if ((((int32_t)L_16) < ((int32_t)L_18)))
		{
			goto IL_0037;
		}
	}
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.CCDSolver2D::DoUpdateIK(System.Collections.Generic.List`1<UnityEngine.Vector3>)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void CCDSolver2D_DoUpdateIK_m44204DE0B6AA4A1641EB29F41073756C9397487F (CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE * __this, List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * ___effectorPositions0, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1_get_Item_m554804AC447B0BA1F93C64E863FF7DB0527AFED9_RuntimeMethod_var);
		s_Il2CppMethodInitialized = true;
	}
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  V_0;
	memset((&V_0), 0, sizeof(V_0));
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_1;
	memset((&V_1), 0, sizeof(V_1));
	int32_t V_2 = 0;
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  V_3;
	memset((&V_3), 0, sizeof(V_3));
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  V_4;
	memset((&V_4), 0, sizeof(V_4));
	{
		// Vector3 effectorPosition = effectorPositions[0];
		List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * L_0 = ___effectorPositions0;
		NullCheck(L_0);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_1;
		L_1 = List_1_get_Item_m554804AC447B0BA1F93C64E863FF7DB0527AFED9_inline(L_0, 0, /*hidden argument*/List_1_get_Item_m554804AC447B0BA1F93C64E863FF7DB0527AFED9_RuntimeMethod_var);
		V_0 = L_1;
		// Vector2 effectorLocalPosition2D = m_Chain.transforms[0].InverseTransformPoint(effectorPosition);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_2 = __this->get_m_Chain_13();
		NullCheck(L_2);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_3;
		L_3 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_2, /*hidden argument*/NULL);
		NullCheck(L_3);
		int32_t L_4 = 0;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_5 = (L_3)->GetAt(static_cast<il2cpp_array_size_t>(L_4));
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_6 = V_0;
		NullCheck(L_5);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_7;
		L_7 = Transform_InverseTransformPoint_m476ABC8F3F14824D7D82FE2C54CEE5A151A669B8(L_5, L_6, /*hidden argument*/NULL);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_8;
		L_8 = Vector2_op_Implicit_mE407CAF7446E342E059B00AA9EDB301AEC5B7B1A_inline(L_7, /*hidden argument*/NULL);
		V_1 = L_8;
		// effectorPosition = m_Chain.transforms[0].TransformPoint(effectorLocalPosition2D);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_9 = __this->get_m_Chain_13();
		NullCheck(L_9);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_10;
		L_10 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_9, /*hidden argument*/NULL);
		NullCheck(L_10);
		int32_t L_11 = 0;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_12 = (L_10)->GetAt(static_cast<il2cpp_array_size_t>(L_11));
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_13 = V_1;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_14;
		L_14 = Vector2_op_Implicit_m4FA146E613DBFE6C1C4B0E9B461D622E6F2FC294_inline(L_13, /*hidden argument*/NULL);
		NullCheck(L_12);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_15;
		L_15 = Transform_TransformPoint_m68AF95765A9279192E601208A9C5170027A5F0D2(L_12, L_14, /*hidden argument*/NULL);
		V_0 = L_15;
		// if (CCD2D.Solve(effectorPosition, GetPlaneRootTransform().forward, iterations, tolerance, Mathf.Lerp(kMinVelocity, kMaxVelocity, m_Velocity), ref m_Positions))
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_16 = V_0;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_17;
		L_17 = VirtFuncInvoker0< Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * >::Invoke(11 /* UnityEngine.Transform UnityEngine.U2D.IK.Solver2D::GetPlaneRootTransform() */, __this);
		NullCheck(L_17);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_18;
		L_18 = Transform_get_forward_mD850B9ECF892009E3485408DC0D375165B7BF053(L_17, /*hidden argument*/NULL);
		int32_t L_19;
		L_19 = CCDSolver2D_get_iterations_m865B9C229A4C0D7B8B7A132C651258A56EDAEE28_inline(__this, /*hidden argument*/NULL);
		float L_20;
		L_20 = CCDSolver2D_get_tolerance_mD1B0EDE706703F601BD0A0C4DF6C892075283C2D_inline(__this, /*hidden argument*/NULL);
		float L_21 = __this->get_m_Velocity_16();
		float L_22;
		L_22 = Mathf_Lerp_m8A2A50B945F42D579EDF44D5EE79E85A4DA59616((0.00999999978f), (1.0f), L_21, /*hidden argument*/NULL);
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4** L_23 = __this->get_address_of_m_Positions_17();
		bool L_24;
		L_24 = CCD2D_Solve_m7C131A12642533B8C236B2A3FF1F40EE67E9B1E5(L_16, L_18, L_19, L_20, L_22, (Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4**)L_23, /*hidden argument*/NULL);
		if (!L_24)
		{
			goto IL_00e8;
		}
	}
	{
		// for (int i = 0; i < m_Chain.transformCount - 1; ++i)
		V_2 = 0;
		goto IL_00d8;
	}

IL_0078:
	{
		// Vector3 startLocalPosition = m_Chain.transforms[i + 1].localPosition;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_25 = __this->get_m_Chain_13();
		NullCheck(L_25);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_26;
		L_26 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_25, /*hidden argument*/NULL);
		int32_t L_27 = V_2;
		NullCheck(L_26);
		int32_t L_28 = ((int32_t)il2cpp_codegen_add((int32_t)L_27, (int32_t)1));
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_29 = (L_26)->GetAt(static_cast<il2cpp_array_size_t>(L_28));
		NullCheck(L_29);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_30;
		L_30 = Transform_get_localPosition_m527B8B5B625DA9A61E551E0FBCD3BE8CA4539FC2(L_29, /*hidden argument*/NULL);
		V_3 = L_30;
		// Vector3 endLocalPosition = m_Chain.transforms[i].InverseTransformPoint(m_Positions[i + 1]);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_31 = __this->get_m_Chain_13();
		NullCheck(L_31);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_32;
		L_32 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_31, /*hidden argument*/NULL);
		int32_t L_33 = V_2;
		NullCheck(L_32);
		int32_t L_34 = L_33;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_35 = (L_32)->GetAt(static_cast<il2cpp_array_size_t>(L_34));
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_36 = __this->get_m_Positions_17();
		int32_t L_37 = V_2;
		NullCheck(L_36);
		int32_t L_38 = ((int32_t)il2cpp_codegen_add((int32_t)L_37, (int32_t)1));
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_39 = (L_36)->GetAt(static_cast<il2cpp_array_size_t>(L_38));
		NullCheck(L_35);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_40;
		L_40 = Transform_InverseTransformPoint_m476ABC8F3F14824D7D82FE2C54CEE5A151A669B8(L_35, L_39, /*hidden argument*/NULL);
		V_4 = L_40;
		// m_Chain.transforms[i].localRotation *= Quaternion.FromToRotation(startLocalPosition, endLocalPosition);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_41 = __this->get_m_Chain_13();
		NullCheck(L_41);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_42;
		L_42 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_41, /*hidden argument*/NULL);
		int32_t L_43 = V_2;
		NullCheck(L_42);
		int32_t L_44 = L_43;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_45 = (L_42)->GetAt(static_cast<il2cpp_array_size_t>(L_44));
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_46 = L_45;
		NullCheck(L_46);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_47;
		L_47 = Transform_get_localRotation_mA6472AE7509D762965275D79B645A14A9CCF5BE5(L_46, /*hidden argument*/NULL);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_48 = V_3;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_49 = V_4;
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_50;
		L_50 = Quaternion_FromToRotation_mD0EBB9993FC7C6A45724D0365B09F11F1CEADB80(L_48, L_49, /*hidden argument*/NULL);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_51;
		L_51 = Quaternion_op_Multiply_m5C7A60AC0CDCA2C5E2F23E45FBD1B15CA152D7B0(L_47, L_50, /*hidden argument*/NULL);
		NullCheck(L_46);
		Transform_set_localRotation_m1A9101457EC4653AFC93FCC4065A29F2C78FA62C(L_46, L_51, /*hidden argument*/NULL);
		// for (int i = 0; i < m_Chain.transformCount - 1; ++i)
		int32_t L_52 = V_2;
		V_2 = ((int32_t)il2cpp_codegen_add((int32_t)L_52, (int32_t)1));
	}

IL_00d8:
	{
		// for (int i = 0; i < m_Chain.transformCount - 1; ++i)
		int32_t L_53 = V_2;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_54 = __this->get_m_Chain_13();
		NullCheck(L_54);
		int32_t L_55;
		L_55 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(L_54, /*hidden argument*/NULL);
		if ((((int32_t)L_53) < ((int32_t)((int32_t)il2cpp_codegen_subtract((int32_t)L_55, (int32_t)1)))))
		{
			goto IL_0078;
		}
	}

IL_00e8:
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.CCDSolver2D::.ctor()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void CCDSolver2D__ctor_mEC83E99C3BF83ABF9CA118FA3C5D0C8EEC644E06 (CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE * __this, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	{
		// private IKChain2D m_Chain = new IKChain2D();
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_0 = (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F *)il2cpp_codegen_object_new(IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F_il2cpp_TypeInfo_var);
		IKChain2D__ctor_m6551D974C5CCD2BC3BE58B13BB2E2513A66CC620(L_0, /*hidden argument*/NULL);
		__this->set_m_Chain_13(L_0);
		// private int m_Iterations = 10;
		__this->set_m_Iterations_14(((int32_t)10));
		// private float m_Tolerance = 0.01f;
		__this->set_m_Tolerance_15((0.00999999978f));
		// private float m_Velocity = 0.5f;
		__this->set_m_Velocity_16((0.5f));
		Solver2D__ctor_mD0FAAA85839E2CE1F6727F924EECA48F9CBA0E8C(__this, /*hidden argument*/NULL);
		return;
	}
}
#ifdef __clang__
#pragma clang diagnostic pop
#endif
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Winvalid-offsetof"
#pragma clang diagnostic ignored "-Wunused-variable"
#endif
// System.Boolean UnityEngine.U2D.IK.FABRIK2D::Solve(UnityEngine.Vector2,System.Int32,System.Single,System.Single[],UnityEngine.Vector2[]&)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool FABRIK2D_Solve_mDBACC6E4D2F9479A6171910E08A1EA8A455A5580 (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___targetPosition0, int32_t ___solverLimit1, float ___tolerance2, SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* ___lengths3, Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** ___positions4, const RuntimeMethod* method)
{
	int32_t V_0 = 0;
	int32_t V_1 = 0;
	float V_2 = 0.0f;
	float V_3 = 0.0f;
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_4;
	memset((&V_4), 0, sizeof(V_4));
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_5;
	memset((&V_5), 0, sizeof(V_5));
	{
		// int last = positions.Length - 1;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_0 = ___positions4;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_1 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_0);
		NullCheck(L_1);
		V_0 = ((int32_t)il2cpp_codegen_subtract((int32_t)((int32_t)((int32_t)(((RuntimeArray*)L_1)->max_length))), (int32_t)1));
		// int iterations = 0;
		V_1 = 0;
		// float sqrTolerance = tolerance * tolerance;
		float L_2 = ___tolerance2;
		float L_3 = ___tolerance2;
		V_2 = ((float)il2cpp_codegen_multiply((float)L_2, (float)L_3));
		// float sqrDistanceToTarget = (targetPosition - positions[last]).sqrMagnitude;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_4 = ___targetPosition0;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_5 = ___positions4;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_6 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_5);
		int32_t L_7 = V_0;
		NullCheck(L_6);
		int32_t L_8 = L_7;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_9 = (L_6)->GetAt(static_cast<il2cpp_array_size_t>(L_8));
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_10;
		L_10 = Vector2_op_Subtraction_m6E536A8C72FEAA37FF8D5E26E11D6E71EB59599A_inline(L_4, L_9, /*hidden argument*/NULL);
		V_5 = L_10;
		float L_11;
		L_11 = Vector2_get_sqrMagnitude_mF489F0EF7E88FF046BA36767ECC50B89674C925A((Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 *)(&V_5), /*hidden argument*/NULL);
		V_3 = L_11;
		// Vector2 originPosition = positions[0];
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_12 = ___positions4;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_13 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_12);
		NullCheck(L_13);
		int32_t L_14 = 0;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_15 = (L_13)->GetAt(static_cast<il2cpp_array_size_t>(L_14));
		V_4 = L_15;
		goto IL_0068;
	}

IL_0034:
	{
		// Forward(targetPosition, lengths, ref positions);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_16 = ___targetPosition0;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_17 = ___lengths3;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_18 = ___positions4;
		FABRIK2D_Forward_m7C7FE55BAD6886E44F94015A613B5717EC7B1D12(L_16, L_17, (Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_18, /*hidden argument*/NULL);
		// Backward(originPosition, lengths, ref positions);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_19 = V_4;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_20 = ___lengths3;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_21 = ___positions4;
		FABRIK2D_Backward_mFD8C1326375670D404930BDA24819392A8F882CF(L_19, L_20, (Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_21, /*hidden argument*/NULL);
		// sqrDistanceToTarget = (targetPosition - positions[last]).sqrMagnitude;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_22 = ___targetPosition0;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_23 = ___positions4;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_24 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_23);
		int32_t L_25 = V_0;
		NullCheck(L_24);
		int32_t L_26 = L_25;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_27 = (L_24)->GetAt(static_cast<il2cpp_array_size_t>(L_26));
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_28;
		L_28 = Vector2_op_Subtraction_m6E536A8C72FEAA37FF8D5E26E11D6E71EB59599A_inline(L_22, L_27, /*hidden argument*/NULL);
		V_5 = L_28;
		float L_29;
		L_29 = Vector2_get_sqrMagnitude_mF489F0EF7E88FF046BA36767ECC50B89674C925A((Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 *)(&V_5), /*hidden argument*/NULL);
		V_3 = L_29;
		// if (++iterations >= solverLimit)
		int32_t L_30 = V_1;
		int32_t L_31 = ((int32_t)il2cpp_codegen_add((int32_t)L_30, (int32_t)1));
		V_1 = L_31;
		int32_t L_32 = ___solverLimit1;
		if ((((int32_t)L_31) >= ((int32_t)L_32)))
		{
			goto IL_006c;
		}
	}

IL_0068:
	{
		// while (sqrDistanceToTarget > sqrTolerance)
		float L_33 = V_3;
		float L_34 = V_2;
		if ((((float)L_33) > ((float)L_34)))
		{
			goto IL_0034;
		}
	}

IL_006c:
	{
		// return iterations != 0;
		int32_t L_35 = V_1;
		return (bool)((!(((uint32_t)L_35) <= ((uint32_t)0)))? 1 : 0);
	}
}
// System.Boolean UnityEngine.U2D.IK.FABRIK2D::SolveChain(System.Int32,UnityEngine.U2D.IK.FABRIKChain2D[]&)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool FABRIK2D_SolveChain_mFF40BA2FB827165265AA44E60AAC1936B6CA44E9 (int32_t ___solverLimit0, FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** ___chains1, const RuntimeMethod* method)
{
	int32_t V_0 = 0;
	{
		// if (ValidateChain(chains))
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_0 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_1 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_0);
		bool L_2;
		L_2 = FABRIK2D_ValidateChain_m20D50DF3E6116AD920EA0D77BA5CA8E7464B9F43(L_1, /*hidden argument*/NULL);
		if (!L_2)
		{
			goto IL_000b;
		}
	}
	{
		// return false;
		return (bool)0;
	}

IL_000b:
	{
		// for (int iterations = 0; iterations < solverLimit; ++iterations)
		V_0 = 0;
		goto IL_0023;
	}

IL_000f:
	{
		// SolveForwardsChain(0, ref chains);
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_3 = ___chains1;
		FABRIK2D_SolveForwardsChain_m5FE322F4779E9476181D5F20C59CC68FAAED7727(0, (FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_3, /*hidden argument*/NULL);
		// if (!SolveBackwardsChain(0, ref chains))
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_4 = ___chains1;
		bool L_5;
		L_5 = FABRIK2D_SolveBackwardsChain_mEA0A100EED6E133E75D321701AB5D2C8869D11FE(0, (FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_4, /*hidden argument*/NULL);
		if (!L_5)
		{
			goto IL_0027;
		}
	}
	{
		// for (int iterations = 0; iterations < solverLimit; ++iterations)
		int32_t L_6 = V_0;
		V_0 = ((int32_t)il2cpp_codegen_add((int32_t)L_6, (int32_t)1));
	}

IL_0023:
	{
		// for (int iterations = 0; iterations < solverLimit; ++iterations)
		int32_t L_7 = V_0;
		int32_t L_8 = ___solverLimit0;
		if ((((int32_t)L_7) < ((int32_t)L_8)))
		{
			goto IL_000f;
		}
	}

IL_0027:
	{
		// return true;
		return (bool)1;
	}
}
// System.Boolean UnityEngine.U2D.IK.FABRIK2D::ValidateChain(UnityEngine.U2D.IK.FABRIKChain2D[])
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool FABRIK2D_ValidateChain_m20D50DF3E6116AD920EA0D77BA5CA8E7464B9F43 (FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* ___chains0, const RuntimeMethod* method)
{
	FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* V_0 = NULL;
	int32_t V_1 = 0;
	FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59  V_2;
	memset((&V_2), 0, sizeof(V_2));
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_3;
	memset((&V_3), 0, sizeof(V_3));
	{
		// foreach (var chain in chains)
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_0 = ___chains0;
		V_0 = L_0;
		V_1 = 0;
		goto IL_003f;
	}

IL_0006:
	{
		// foreach (var chain in chains)
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_1 = V_0;
		int32_t L_2 = V_1;
		NullCheck(L_1);
		int32_t L_3 = L_2;
		FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59  L_4 = (L_1)->GetAt(static_cast<il2cpp_array_size_t>(L_3));
		V_2 = L_4;
		// if (chain.subChainIndices.Length == 0 && (chain.target - chain.last).sqrMagnitude > chain.sqrTolerance)
		FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59  L_5 = V_2;
		Int32U5BU5D_t70F1BDC14B1786481B176D6139A5E3B87DC54C32* L_6 = L_5.get_subChainIndices_5();
		NullCheck(L_6);
		if ((((RuntimeArray*)L_6)->max_length))
		{
			goto IL_003b;
		}
	}
	{
		FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59  L_7 = V_2;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_8 = L_7.get_target_1();
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_9;
		L_9 = FABRIKChain2D_get_last_m6ED44B613CAB74F7306D814AF15A9792E8BE8546((FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59 *)(&V_2), /*hidden argument*/NULL);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_10;
		L_10 = Vector2_op_Subtraction_m6E536A8C72FEAA37FF8D5E26E11D6E71EB59599A_inline(L_8, L_9, /*hidden argument*/NULL);
		V_3 = L_10;
		float L_11;
		L_11 = Vector2_get_sqrMagnitude_mF489F0EF7E88FF046BA36767ECC50B89674C925A((Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 *)(&V_3), /*hidden argument*/NULL);
		FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59  L_12 = V_2;
		float L_13 = L_12.get_sqrTolerance_2();
		if ((!(((float)L_11) > ((float)L_13))))
		{
			goto IL_003b;
		}
	}
	{
		// return false;
		return (bool)0;
	}

IL_003b:
	{
		int32_t L_14 = V_1;
		V_1 = ((int32_t)il2cpp_codegen_add((int32_t)L_14, (int32_t)1));
	}

IL_003f:
	{
		// foreach (var chain in chains)
		int32_t L_15 = V_1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_16 = V_0;
		NullCheck(L_16);
		if ((((int32_t)L_15) < ((int32_t)((int32_t)((int32_t)(((RuntimeArray*)L_16)->max_length))))))
		{
			goto IL_0006;
		}
	}
	{
		// return true;
		return (bool)1;
	}
}
// System.Void UnityEngine.U2D.IK.FABRIK2D::SolveForwardsChain(System.Int32,UnityEngine.U2D.IK.FABRIKChain2D[]&)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void FABRIK2D_SolveForwardsChain_m5FE322F4779E9476181D5F20C59CC68FAAED7727 (int32_t ___idx0, FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** ___chains1, const RuntimeMethod* method)
{
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_0;
	memset((&V_0), 0, sizeof(V_0));
	int32_t V_1 = 0;
	int32_t V_2 = 0;
	{
		// var target = chains[idx].target;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_0 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_1 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_0);
		int32_t L_2 = ___idx0;
		NullCheck(L_1);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_3 = ((L_1)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_2)))->get_target_1();
		V_0 = L_3;
		// if (chains[idx].subChainIndices.Length > 0)
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_4 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_5 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_4);
		int32_t L_6 = ___idx0;
		NullCheck(L_5);
		Int32U5BU5D_t70F1BDC14B1786481B176D6139A5E3B87DC54C32* L_7 = ((L_5)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_6)))->get_subChainIndices_5();
		NullCheck(L_7);
		if (!(((RuntimeArray*)L_7)->max_length))
		{
			goto IL_0080;
		}
	}
	{
		// target = Vector2.zero;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_8;
		L_8 = Vector2_get_zero_m621041B9DF5FAE86C1EF4CB28C224FEA089CB828(/*hidden argument*/NULL);
		V_0 = L_8;
		// for (int i = 0; i < chains[idx].subChainIndices.Length; ++i)
		V_1 = 0;
		goto IL_0057;
	}

IL_0028:
	{
		// var childIdx = chains[idx].subChainIndices[i];
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_9 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_10 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_9);
		int32_t L_11 = ___idx0;
		NullCheck(L_10);
		Int32U5BU5D_t70F1BDC14B1786481B176D6139A5E3B87DC54C32* L_12 = ((L_10)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_11)))->get_subChainIndices_5();
		int32_t L_13 = V_1;
		NullCheck(L_12);
		int32_t L_14 = L_13;
		int32_t L_15 = (L_12)->GetAt(static_cast<il2cpp_array_size_t>(L_14));
		V_2 = L_15;
		// SolveForwardsChain(childIdx, ref chains);
		int32_t L_16 = V_2;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_17 = ___chains1;
		FABRIK2D_SolveForwardsChain_m5FE322F4779E9476181D5F20C59CC68FAAED7727(L_16, (FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_17, /*hidden argument*/NULL);
		// target += chains[childIdx].first;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_18 = V_0;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_19 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_20 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_19);
		int32_t L_21 = V_2;
		NullCheck(L_20);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_22;
		L_22 = FABRIKChain2D_get_first_m3B7A5DADFA5DEBB6C1882ED237BD390F3E713C5A((FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59 *)((L_20)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_21))), /*hidden argument*/NULL);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_23;
		L_23 = Vector2_op_Addition_m5EACC2AEA80FEE29F380397CF1F4B11D04BE71CC_inline(L_18, L_22, /*hidden argument*/NULL);
		V_0 = L_23;
		// for (int i = 0; i < chains[idx].subChainIndices.Length; ++i)
		int32_t L_24 = V_1;
		V_1 = ((int32_t)il2cpp_codegen_add((int32_t)L_24, (int32_t)1));
	}

IL_0057:
	{
		// for (int i = 0; i < chains[idx].subChainIndices.Length; ++i)
		int32_t L_25 = V_1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_26 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_27 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_26);
		int32_t L_28 = ___idx0;
		NullCheck(L_27);
		Int32U5BU5D_t70F1BDC14B1786481B176D6139A5E3B87DC54C32* L_29 = ((L_27)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_28)))->get_subChainIndices_5();
		NullCheck(L_29);
		if ((((int32_t)L_25) < ((int32_t)((int32_t)((int32_t)(((RuntimeArray*)L_29)->max_length))))))
		{
			goto IL_0028;
		}
	}
	{
		// target = target / chains[idx].subChainIndices.Length;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_30 = V_0;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_31 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_32 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_31);
		int32_t L_33 = ___idx0;
		NullCheck(L_32);
		Int32U5BU5D_t70F1BDC14B1786481B176D6139A5E3B87DC54C32* L_34 = ((L_32)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_33)))->get_subChainIndices_5();
		NullCheck(L_34);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_35;
		L_35 = Vector2_op_Division_m9E0ABD4CB731137B84249278B80D4C2624E58AC6_inline(L_30, ((float)((float)((int32_t)((int32_t)(((RuntimeArray*)L_34)->max_length))))), /*hidden argument*/NULL);
		V_0 = L_35;
	}

IL_0080:
	{
		// Forward(target, chains[idx].lengths, ref chains[idx].positions);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_36 = V_0;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_37 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_38 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_37);
		int32_t L_39 = ___idx0;
		NullCheck(L_38);
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_40 = ((L_38)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_39)))->get_lengths_4();
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_41 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_42 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_41);
		int32_t L_43 = ___idx0;
		NullCheck(L_42);
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_44 = ((L_42)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_43)))->get_address_of_positions_3();
		FABRIK2D_Forward_m7C7FE55BAD6886E44F94015A613B5717EC7B1D12(L_36, L_40, (Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_44, /*hidden argument*/NULL);
		// }
		return;
	}
}
// System.Boolean UnityEngine.U2D.IK.FABRIK2D::SolveBackwardsChain(System.Int32,UnityEngine.U2D.IK.FABRIKChain2D[]&)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool FABRIK2D_SolveBackwardsChain_mEA0A100EED6E133E75D321701AB5D2C8869D11FE (int32_t ___idx0, FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** ___chains1, const RuntimeMethod* method)
{
	bool V_0 = false;
	int32_t V_1 = 0;
	int32_t V_2 = 0;
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_3;
	memset((&V_3), 0, sizeof(V_3));
	{
		// bool notSolved = false;
		V_0 = (bool)0;
		// Backward(chains[idx].origin, chains[idx].lengths, ref chains[idx].positions);
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_0 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_1 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_0);
		int32_t L_2 = ___idx0;
		NullCheck(L_1);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_3 = ((L_1)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_2)))->get_origin_0();
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_4 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_5 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_4);
		int32_t L_6 = ___idx0;
		NullCheck(L_5);
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_7 = ((L_5)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_6)))->get_lengths_4();
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_8 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_9 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_8);
		int32_t L_10 = ___idx0;
		NullCheck(L_9);
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_11 = ((L_9)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_10)))->get_address_of_positions_3();
		FABRIK2D_Backward_mFD8C1326375670D404930BDA24819392A8F882CF(L_3, L_7, (Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_11, /*hidden argument*/NULL);
		// for (int i = 0; i < chains[idx].subChainIndices.Length; ++i)
		V_1 = 0;
		goto IL_006a;
	}

IL_0032:
	{
		// var childIdx = chains[idx].subChainIndices[i];
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_12 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_13 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_12);
		int32_t L_14 = ___idx0;
		NullCheck(L_13);
		Int32U5BU5D_t70F1BDC14B1786481B176D6139A5E3B87DC54C32* L_15 = ((L_13)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_14)))->get_subChainIndices_5();
		int32_t L_16 = V_1;
		NullCheck(L_15);
		int32_t L_17 = L_16;
		int32_t L_18 = (L_15)->GetAt(static_cast<il2cpp_array_size_t>(L_17));
		V_2 = L_18;
		// chains[childIdx].origin = chains[idx].last;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_19 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_20 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_19);
		int32_t L_21 = V_2;
		NullCheck(L_20);
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_22 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_23 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_22);
		int32_t L_24 = ___idx0;
		NullCheck(L_23);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_25;
		L_25 = FABRIKChain2D_get_last_m6ED44B613CAB74F7306D814AF15A9792E8BE8546((FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59 *)((L_23)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_24))), /*hidden argument*/NULL);
		((L_20)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_21)))->set_origin_0(L_25);
		// notSolved |= SolveBackwardsChain(childIdx, ref chains);
		bool L_26 = V_0;
		int32_t L_27 = V_2;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_28 = ___chains1;
		bool L_29;
		L_29 = FABRIK2D_SolveBackwardsChain_mEA0A100EED6E133E75D321701AB5D2C8869D11FE(L_27, (FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_28, /*hidden argument*/NULL);
		V_0 = (bool)((int32_t)((int32_t)L_26|(int32_t)L_29));
		// for (int i = 0; i < chains[idx].subChainIndices.Length; ++i)
		int32_t L_30 = V_1;
		V_1 = ((int32_t)il2cpp_codegen_add((int32_t)L_30, (int32_t)1));
	}

IL_006a:
	{
		// for (int i = 0; i < chains[idx].subChainIndices.Length; ++i)
		int32_t L_31 = V_1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_32 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_33 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_32);
		int32_t L_34 = ___idx0;
		NullCheck(L_33);
		Int32U5BU5D_t70F1BDC14B1786481B176D6139A5E3B87DC54C32* L_35 = ((L_33)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_34)))->get_subChainIndices_5();
		NullCheck(L_35);
		if ((((int32_t)L_31) < ((int32_t)((int32_t)((int32_t)(((RuntimeArray*)L_35)->max_length))))))
		{
			goto IL_0032;
		}
	}
	{
		// if (chains[idx].subChainIndices.Length == 0)
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_36 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_37 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_36);
		int32_t L_38 = ___idx0;
		NullCheck(L_37);
		Int32U5BU5D_t70F1BDC14B1786481B176D6139A5E3B87DC54C32* L_39 = ((L_37)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_38)))->get_subChainIndices_5();
		NullCheck(L_39);
		if ((((RuntimeArray*)L_39)->max_length))
		{
			goto IL_00c5;
		}
	}
	{
		// notSolved |= (chains[idx].target - chains[idx].last).sqrMagnitude > chains[idx].sqrTolerance;
		bool L_40 = V_0;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_41 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_42 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_41);
		int32_t L_43 = ___idx0;
		NullCheck(L_42);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_44 = ((L_42)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_43)))->get_target_1();
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_45 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_46 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_45);
		int32_t L_47 = ___idx0;
		NullCheck(L_46);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_48;
		L_48 = FABRIKChain2D_get_last_m6ED44B613CAB74F7306D814AF15A9792E8BE8546((FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59 *)((L_46)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_47))), /*hidden argument*/NULL);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_49;
		L_49 = Vector2_op_Subtraction_m6E536A8C72FEAA37FF8D5E26E11D6E71EB59599A_inline(L_44, L_48, /*hidden argument*/NULL);
		V_3 = L_49;
		float L_50;
		L_50 = Vector2_get_sqrMagnitude_mF489F0EF7E88FF046BA36767ECC50B89674C925A((Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 *)(&V_3), /*hidden argument*/NULL);
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2** L_51 = ___chains1;
		FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2* L_52 = *((FABRIKChain2DU5BU5D_tBE7BA5B6396B9F466342E303193EA44ABCAB42F2**)L_51);
		int32_t L_53 = ___idx0;
		NullCheck(L_52);
		float L_54 = ((L_52)->GetAddressAt(static_cast<il2cpp_array_size_t>(L_53)))->get_sqrTolerance_2();
		V_0 = (bool)((int32_t)((int32_t)L_40|(int32_t)((((float)L_50) > ((float)L_54))? 1 : 0)));
	}

IL_00c5:
	{
		// return notSolved;
		bool L_55 = V_0;
		return L_55;
	}
}
// System.Void UnityEngine.U2D.IK.FABRIK2D::Forward(UnityEngine.Vector2,System.Single[],UnityEngine.Vector2[]&)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void FABRIK2D_Forward_m7C7FE55BAD6886E44F94015A613B5717EC7B1D12 (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___targetPosition0, SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* ___lengths1, Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** ___positions2, const RuntimeMethod* method)
{
	int32_t V_0 = 0;
	int32_t V_1 = 0;
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_2;
	memset((&V_2), 0, sizeof(V_2));
	float V_3 = 0.0f;
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_4;
	memset((&V_4), 0, sizeof(V_4));
	{
		// var last = positions.Length - 1;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_0 = ___positions2;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_1 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_0);
		NullCheck(L_1);
		V_0 = ((int32_t)il2cpp_codegen_subtract((int32_t)((int32_t)((int32_t)(((RuntimeArray*)L_1)->max_length))), (int32_t)1));
		// positions[last] = targetPosition;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_2 = ___positions2;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_3 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_2);
		int32_t L_4 = V_0;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_5 = ___targetPosition0;
		NullCheck(L_3);
		(L_3)->SetAt(static_cast<il2cpp_array_size_t>(L_4), (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 )L_5);
		// for (int i = last - 1; i >= 0; --i)
		int32_t L_6 = V_0;
		V_1 = ((int32_t)il2cpp_codegen_subtract((int32_t)L_6, (int32_t)1));
		goto IL_0073;
	}

IL_0016:
	{
		// var r = positions[i + 1] - positions[i];
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_7 = ___positions2;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_8 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_7);
		int32_t L_9 = V_1;
		NullCheck(L_8);
		int32_t L_10 = ((int32_t)il2cpp_codegen_add((int32_t)L_9, (int32_t)1));
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_11 = (L_8)->GetAt(static_cast<il2cpp_array_size_t>(L_10));
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_12 = ___positions2;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_13 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_12);
		int32_t L_14 = V_1;
		NullCheck(L_13);
		int32_t L_15 = L_14;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_16 = (L_13)->GetAt(static_cast<il2cpp_array_size_t>(L_15));
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_17;
		L_17 = Vector2_op_Subtraction_m6E536A8C72FEAA37FF8D5E26E11D6E71EB59599A_inline(L_11, L_16, /*hidden argument*/NULL);
		V_2 = L_17;
		// var l = lengths[i] / r.magnitude;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_18 = ___lengths1;
		int32_t L_19 = V_1;
		NullCheck(L_18);
		int32_t L_20 = L_19;
		float L_21 = (L_18)->GetAt(static_cast<il2cpp_array_size_t>(L_20));
		float L_22;
		L_22 = Vector2_get_magnitude_mD30DB8EB73C4A5CD395745AE1CA1C38DC61D2E85((Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 *)(&V_2), /*hidden argument*/NULL);
		V_3 = ((float)((float)L_21/(float)L_22));
		// var position = (1f - l) * positions[i + 1] + l * positions[i];
		float L_23 = V_3;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_24 = ___positions2;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_25 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_24);
		int32_t L_26 = V_1;
		NullCheck(L_25);
		int32_t L_27 = ((int32_t)il2cpp_codegen_add((int32_t)L_26, (int32_t)1));
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_28 = (L_25)->GetAt(static_cast<il2cpp_array_size_t>(L_27));
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_29;
		L_29 = Vector2_op_Multiply_m841D5292C48DAD9746A2F4EED9CE7A76CDB652EA_inline(((float)il2cpp_codegen_subtract((float)(1.0f), (float)L_23)), L_28, /*hidden argument*/NULL);
		float L_30 = V_3;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_31 = ___positions2;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_32 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_31);
		int32_t L_33 = V_1;
		NullCheck(L_32);
		int32_t L_34 = L_33;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_35 = (L_32)->GetAt(static_cast<il2cpp_array_size_t>(L_34));
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_36;
		L_36 = Vector2_op_Multiply_m841D5292C48DAD9746A2F4EED9CE7A76CDB652EA_inline(L_30, L_35, /*hidden argument*/NULL);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_37;
		L_37 = Vector2_op_Addition_m5EACC2AEA80FEE29F380397CF1F4B11D04BE71CC_inline(L_29, L_36, /*hidden argument*/NULL);
		V_4 = L_37;
		// positions[i] = position;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_38 = ___positions2;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_39 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_38);
		int32_t L_40 = V_1;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_41 = V_4;
		NullCheck(L_39);
		(L_39)->SetAt(static_cast<il2cpp_array_size_t>(L_40), (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 )L_41);
		// for (int i = last - 1; i >= 0; --i)
		int32_t L_42 = V_1;
		V_1 = ((int32_t)il2cpp_codegen_subtract((int32_t)L_42, (int32_t)1));
	}

IL_0073:
	{
		// for (int i = last - 1; i >= 0; --i)
		int32_t L_43 = V_1;
		if ((((int32_t)L_43) >= ((int32_t)0)))
		{
			goto IL_0016;
		}
	}
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.FABRIK2D::Backward(UnityEngine.Vector2,System.Single[],UnityEngine.Vector2[]&)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void FABRIK2D_Backward_mFD8C1326375670D404930BDA24819392A8F882CF (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___originPosition0, SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* ___lengths1, Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** ___positions2, const RuntimeMethod* method)
{
	int32_t V_0 = 0;
	int32_t V_1 = 0;
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_2;
	memset((&V_2), 0, sizeof(V_2));
	float V_3 = 0.0f;
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_4;
	memset((&V_4), 0, sizeof(V_4));
	{
		// positions[0] = originPosition;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_0 = ___positions2;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_1 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_0);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_2 = ___originPosition0;
		NullCheck(L_1);
		(L_1)->SetAt(static_cast<il2cpp_array_size_t>(0), (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 )L_2);
		// var last = positions.Length - 1;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_3 = ___positions2;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_4 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_3);
		NullCheck(L_4);
		V_0 = ((int32_t)il2cpp_codegen_subtract((int32_t)((int32_t)((int32_t)(((RuntimeArray*)L_4)->max_length))), (int32_t)1));
		// for (int i = 0; i < last; ++i)
		V_1 = 0;
		goto IL_0073;
	}

IL_0014:
	{
		// var r = positions[i + 1] - positions[i];
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_5 = ___positions2;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_6 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_5);
		int32_t L_7 = V_1;
		NullCheck(L_6);
		int32_t L_8 = ((int32_t)il2cpp_codegen_add((int32_t)L_7, (int32_t)1));
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_9 = (L_6)->GetAt(static_cast<il2cpp_array_size_t>(L_8));
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_10 = ___positions2;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_11 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_10);
		int32_t L_12 = V_1;
		NullCheck(L_11);
		int32_t L_13 = L_12;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_14 = (L_11)->GetAt(static_cast<il2cpp_array_size_t>(L_13));
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_15;
		L_15 = Vector2_op_Subtraction_m6E536A8C72FEAA37FF8D5E26E11D6E71EB59599A_inline(L_9, L_14, /*hidden argument*/NULL);
		V_2 = L_15;
		// var l = lengths[i] / r.magnitude;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_16 = ___lengths1;
		int32_t L_17 = V_1;
		NullCheck(L_16);
		int32_t L_18 = L_17;
		float L_19 = (L_16)->GetAt(static_cast<il2cpp_array_size_t>(L_18));
		float L_20;
		L_20 = Vector2_get_magnitude_mD30DB8EB73C4A5CD395745AE1CA1C38DC61D2E85((Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 *)(&V_2), /*hidden argument*/NULL);
		V_3 = ((float)((float)L_19/(float)L_20));
		// var position = (1f - l) * positions[i] + l * positions[i + 1];
		float L_21 = V_3;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_22 = ___positions2;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_23 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_22);
		int32_t L_24 = V_1;
		NullCheck(L_23);
		int32_t L_25 = L_24;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_26 = (L_23)->GetAt(static_cast<il2cpp_array_size_t>(L_25));
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_27;
		L_27 = Vector2_op_Multiply_m841D5292C48DAD9746A2F4EED9CE7A76CDB652EA_inline(((float)il2cpp_codegen_subtract((float)(1.0f), (float)L_21)), L_26, /*hidden argument*/NULL);
		float L_28 = V_3;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_29 = ___positions2;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_30 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_29);
		int32_t L_31 = V_1;
		NullCheck(L_30);
		int32_t L_32 = ((int32_t)il2cpp_codegen_add((int32_t)L_31, (int32_t)1));
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_33 = (L_30)->GetAt(static_cast<il2cpp_array_size_t>(L_32));
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_34;
		L_34 = Vector2_op_Multiply_m841D5292C48DAD9746A2F4EED9CE7A76CDB652EA_inline(L_28, L_33, /*hidden argument*/NULL);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_35;
		L_35 = Vector2_op_Addition_m5EACC2AEA80FEE29F380397CF1F4B11D04BE71CC_inline(L_27, L_34, /*hidden argument*/NULL);
		V_4 = L_35;
		// positions[i + 1] = position;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_36 = ___positions2;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_37 = *((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_36);
		int32_t L_38 = V_1;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_39 = V_4;
		NullCheck(L_37);
		(L_37)->SetAt(static_cast<il2cpp_array_size_t>(((int32_t)il2cpp_codegen_add((int32_t)L_38, (int32_t)1))), (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 )L_39);
		// for (int i = 0; i < last; ++i)
		int32_t L_40 = V_1;
		V_1 = ((int32_t)il2cpp_codegen_add((int32_t)L_40, (int32_t)1));
	}

IL_0073:
	{
		// for (int i = 0; i < last; ++i)
		int32_t L_41 = V_1;
		int32_t L_42 = V_0;
		if ((((int32_t)L_41) < ((int32_t)L_42)))
		{
			goto IL_0014;
		}
	}
	{
		// }
		return;
	}
}
// UnityEngine.Vector2 UnityEngine.U2D.IK.FABRIK2D::ValidateJoint(UnityEngine.Vector2,UnityEngine.Vector2,UnityEngine.Vector2,System.Single,System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  FABRIK2D_ValidateJoint_m1DF2870F51889EA753C75C88649A3DBE97BB36D1 (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___endPosition0, Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___startPosition1, Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___right2, float ___min3, float ___max4, const RuntimeMethod* method)
{
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_0;
	memset((&V_0), 0, sizeof(V_0));
	float V_1 = 0.0f;
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_2;
	memset((&V_2), 0, sizeof(V_2));
	Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  V_3;
	memset((&V_3), 0, sizeof(V_3));
	Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  V_4;
	memset((&V_4), 0, sizeof(V_4));
	{
		// var localDifference = endPosition - startPosition;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_0 = ___endPosition0;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_1 = ___startPosition1;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_2;
		L_2 = Vector2_op_Subtraction_m6E536A8C72FEAA37FF8D5E26E11D6E71EB59599A_inline(L_0, L_1, /*hidden argument*/NULL);
		V_0 = L_2;
		// var angle = Vector2.SignedAngle(right, localDifference);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_3 = ___right2;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_4 = V_0;
		float L_5;
		L_5 = Vector2_SignedAngle_m007FAC4E36153EEBC62347D6FA67162238C34C69(L_3, L_4, /*hidden argument*/NULL);
		V_1 = L_5;
		// var validatedPosition = endPosition;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_6 = ___endPosition0;
		V_2 = L_6;
		// if (angle < min)
		float L_7 = V_1;
		float L_8 = ___min3;
		if ((!(((float)L_7) < ((float)L_8))))
		{
			goto IL_004d;
		}
	}
	{
		// var minRotation = Quaternion.Euler(0f, 0f, min);
		float L_9 = ___min3;
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_10;
		L_10 = Quaternion_Euler_m37BF99FFFA09F4B3F83DC066641B82C59B19A9C3((0.0f), (0.0f), L_9, /*hidden argument*/NULL);
		V_3 = L_10;
		// validatedPosition = startPosition + (Vector2)(minRotation * right * localDifference.magnitude);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_11 = ___startPosition1;
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_12 = V_3;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_13 = ___right2;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_14;
		L_14 = Vector2_op_Implicit_m4FA146E613DBFE6C1C4B0E9B461D622E6F2FC294_inline(L_13, /*hidden argument*/NULL);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_15;
		L_15 = Quaternion_op_Multiply_mDC5F913E6B21FEC72AB2CF737D34CC6C7A69803D(L_12, L_14, /*hidden argument*/NULL);
		float L_16;
		L_16 = Vector2_get_magnitude_mD30DB8EB73C4A5CD395745AE1CA1C38DC61D2E85((Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 *)(&V_0), /*hidden argument*/NULL);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_17;
		L_17 = Vector3_op_Multiply_m9EA3D18290418D7B410C7D11C4788C13BFD2C30A_inline(L_15, L_16, /*hidden argument*/NULL);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_18;
		L_18 = Vector2_op_Implicit_mE407CAF7446E342E059B00AA9EDB301AEC5B7B1A_inline(L_17, /*hidden argument*/NULL);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_19;
		L_19 = Vector2_op_Addition_m5EACC2AEA80FEE29F380397CF1F4B11D04BE71CC_inline(L_11, L_18, /*hidden argument*/NULL);
		V_2 = L_19;
		// }
		goto IL_008a;
	}

IL_004d:
	{
		// else if (angle > max)
		float L_20 = V_1;
		float L_21 = ___max4;
		if ((!(((float)L_20) > ((float)L_21))))
		{
			goto IL_008a;
		}
	}
	{
		// var maxRotation = Quaternion.Euler(0f, 0f, max);
		float L_22 = ___max4;
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_23;
		L_23 = Quaternion_Euler_m37BF99FFFA09F4B3F83DC066641B82C59B19A9C3((0.0f), (0.0f), L_22, /*hidden argument*/NULL);
		V_4 = L_23;
		// validatedPosition = startPosition + (Vector2)(maxRotation * right * localDifference.magnitude);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_24 = ___startPosition1;
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_25 = V_4;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_26 = ___right2;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_27;
		L_27 = Vector2_op_Implicit_m4FA146E613DBFE6C1C4B0E9B461D622E6F2FC294_inline(L_26, /*hidden argument*/NULL);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_28;
		L_28 = Quaternion_op_Multiply_mDC5F913E6B21FEC72AB2CF737D34CC6C7A69803D(L_25, L_27, /*hidden argument*/NULL);
		float L_29;
		L_29 = Vector2_get_magnitude_mD30DB8EB73C4A5CD395745AE1CA1C38DC61D2E85((Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 *)(&V_0), /*hidden argument*/NULL);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_30;
		L_30 = Vector3_op_Multiply_m9EA3D18290418D7B410C7D11C4788C13BFD2C30A_inline(L_28, L_29, /*hidden argument*/NULL);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_31;
		L_31 = Vector2_op_Implicit_mE407CAF7446E342E059B00AA9EDB301AEC5B7B1A_inline(L_30, /*hidden argument*/NULL);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_32;
		L_32 = Vector2_op_Addition_m5EACC2AEA80FEE29F380397CF1F4B11D04BE71CC_inline(L_24, L_31, /*hidden argument*/NULL);
		V_2 = L_32;
	}

IL_008a:
	{
		// return validatedPosition;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_33 = V_2;
		return L_33;
	}
}
#ifdef __clang__
#pragma clang diagnostic pop
#endif
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Winvalid-offsetof"
#pragma clang diagnostic ignored "-Wunused-variable"
#endif
// Conversion methods for marshalling of: UnityEngine.U2D.IK.FABRIKChain2D
IL2CPP_EXTERN_C void FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59_marshal_pinvoke(const FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59& unmarshaled, FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59_marshaled_pinvoke& marshaled)
{
	marshaled.___origin_0 = unmarshaled.get_origin_0();
	marshaled.___target_1 = unmarshaled.get_target_1();
	marshaled.___sqrTolerance_2 = unmarshaled.get_sqrTolerance_2();
	if (unmarshaled.get_positions_3() != NULL)
	{
		il2cpp_array_size_t _unmarshaled_positions_Length = (unmarshaled.get_positions_3())->max_length;
		marshaled.___positions_3 = il2cpp_codegen_marshal_allocate_array<Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 >(_unmarshaled_positions_Length);
		for (int32_t i = 0; i < ARRAY_LENGTH_AS_INT32(_unmarshaled_positions_Length); i++)
		{
			(marshaled.___positions_3)[i] = (unmarshaled.get_positions_3())->GetAtUnchecked(static_cast<il2cpp_array_size_t>(i));
		}
	}
	else
	{
		marshaled.___positions_3 = NULL;
	}
	marshaled.___lengths_4 = il2cpp_codegen_com_marshal_safe_array(IL2CPP_VT_R4, unmarshaled.get_lengths_4());
	marshaled.___subChainIndices_5 = il2cpp_codegen_com_marshal_safe_array(IL2CPP_VT_I4, unmarshaled.get_subChainIndices_5());
	if (unmarshaled.get_worldPositions_6() != NULL)
	{
		il2cpp_array_size_t _unmarshaled_worldPositions_Length = (unmarshaled.get_worldPositions_6())->max_length;
		marshaled.___worldPositions_6 = il2cpp_codegen_marshal_allocate_array<Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E >(_unmarshaled_worldPositions_Length);
		for (int32_t i = 0; i < ARRAY_LENGTH_AS_INT32(_unmarshaled_worldPositions_Length); i++)
		{
			(marshaled.___worldPositions_6)[i] = (unmarshaled.get_worldPositions_6())->GetAtUnchecked(static_cast<il2cpp_array_size_t>(i));
		}
	}
	else
	{
		marshaled.___worldPositions_6 = NULL;
	}
}
IL2CPP_EXTERN_C void FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59_marshal_pinvoke_back(const FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59_marshaled_pinvoke& marshaled, FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59& unmarshaled)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Int32_tFDE5F8CD43D10453F6A2E0C77FE48C6CC7009046_il2cpp_TypeInfo_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Single_tE07797BA3C98D4CA9B5A19413C19A76688AB899E_il2cpp_TypeInfo_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA_il2cpp_TypeInfo_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  unmarshaled_origin_temp_0;
	memset((&unmarshaled_origin_temp_0), 0, sizeof(unmarshaled_origin_temp_0));
	unmarshaled_origin_temp_0 = marshaled.___origin_0;
	unmarshaled.set_origin_0(unmarshaled_origin_temp_0);
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  unmarshaled_target_temp_1;
	memset((&unmarshaled_target_temp_1), 0, sizeof(unmarshaled_target_temp_1));
	unmarshaled_target_temp_1 = marshaled.___target_1;
	unmarshaled.set_target_1(unmarshaled_target_temp_1);
	float unmarshaled_sqrTolerance_temp_2 = 0.0f;
	unmarshaled_sqrTolerance_temp_2 = marshaled.___sqrTolerance_2;
	unmarshaled.set_sqrTolerance_2(unmarshaled_sqrTolerance_temp_2);
	if (marshaled.___positions_3 != NULL)
	{
		if (unmarshaled.get_positions_3() == NULL)
		{
			unmarshaled.set_positions_3(reinterpret_cast<Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA*>((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA*)SZArrayNew(Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA_il2cpp_TypeInfo_var, 1)));
		}
		il2cpp_array_size_t _arrayLength = (unmarshaled.get_positions_3())->max_length;
		for (int32_t i = 0; i < ARRAY_LENGTH_AS_INT32(_arrayLength); i++)
		{
			(unmarshaled.get_positions_3())->SetAtUnchecked(static_cast<il2cpp_array_size_t>(i), (marshaled.___positions_3)[i]);
		}
	}
	unmarshaled.set_lengths_4((SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA*)il2cpp_codegen_com_marshal_safe_array_result(IL2CPP_VT_R4, Single_tE07797BA3C98D4CA9B5A19413C19A76688AB899E_il2cpp_TypeInfo_var, marshaled.___lengths_4));
	unmarshaled.set_subChainIndices_5((Int32U5BU5D_t70F1BDC14B1786481B176D6139A5E3B87DC54C32*)il2cpp_codegen_com_marshal_safe_array_result(IL2CPP_VT_I4, Int32_tFDE5F8CD43D10453F6A2E0C77FE48C6CC7009046_il2cpp_TypeInfo_var, marshaled.___subChainIndices_5));
	if (marshaled.___worldPositions_6 != NULL)
	{
		if (unmarshaled.get_worldPositions_6() == NULL)
		{
			unmarshaled.set_worldPositions_6(reinterpret_cast<Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4*>((Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4*)SZArrayNew(Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4_il2cpp_TypeInfo_var, 1)));
		}
		il2cpp_array_size_t _arrayLength = (unmarshaled.get_worldPositions_6())->max_length;
		for (int32_t i = 0; i < ARRAY_LENGTH_AS_INT32(_arrayLength); i++)
		{
			(unmarshaled.get_worldPositions_6())->SetAtUnchecked(static_cast<il2cpp_array_size_t>(i), (marshaled.___worldPositions_6)[i]);
		}
	}
}
// Conversion method for clean up from marshalling of: UnityEngine.U2D.IK.FABRIKChain2D
IL2CPP_EXTERN_C void FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59_marshal_pinvoke_cleanup(FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59_marshaled_pinvoke& marshaled)
{
	if (marshaled.___positions_3 != NULL)
	{
		il2cpp_codegen_marshal_free(marshaled.___positions_3);
		marshaled.___positions_3 = NULL;
	}
	il2cpp_codegen_com_destroy_safe_array(marshaled.___lengths_4);
	marshaled.___lengths_4 = NULL;
	il2cpp_codegen_com_destroy_safe_array(marshaled.___subChainIndices_5);
	marshaled.___subChainIndices_5 = NULL;
	if (marshaled.___worldPositions_6 != NULL)
	{
		il2cpp_codegen_marshal_free(marshaled.___worldPositions_6);
		marshaled.___worldPositions_6 = NULL;
	}
}
// Conversion methods for marshalling of: UnityEngine.U2D.IK.FABRIKChain2D
IL2CPP_EXTERN_C void FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59_marshal_com(const FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59& unmarshaled, FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59_marshaled_com& marshaled)
{
	marshaled.___origin_0 = unmarshaled.get_origin_0();
	marshaled.___target_1 = unmarshaled.get_target_1();
	marshaled.___sqrTolerance_2 = unmarshaled.get_sqrTolerance_2();
	if (unmarshaled.get_positions_3() != NULL)
	{
		il2cpp_array_size_t _unmarshaled_positions_Length = (unmarshaled.get_positions_3())->max_length;
		marshaled.___positions_3 = il2cpp_codegen_marshal_allocate_array<Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 >(_unmarshaled_positions_Length);
		for (int32_t i = 0; i < ARRAY_LENGTH_AS_INT32(_unmarshaled_positions_Length); i++)
		{
			(marshaled.___positions_3)[i] = (unmarshaled.get_positions_3())->GetAtUnchecked(static_cast<il2cpp_array_size_t>(i));
		}
	}
	else
	{
		marshaled.___positions_3 = NULL;
	}
	marshaled.___lengths_4 = il2cpp_codegen_com_marshal_safe_array(IL2CPP_VT_R4, unmarshaled.get_lengths_4());
	marshaled.___subChainIndices_5 = il2cpp_codegen_com_marshal_safe_array(IL2CPP_VT_I4, unmarshaled.get_subChainIndices_5());
	if (unmarshaled.get_worldPositions_6() != NULL)
	{
		il2cpp_array_size_t _unmarshaled_worldPositions_Length = (unmarshaled.get_worldPositions_6())->max_length;
		marshaled.___worldPositions_6 = il2cpp_codegen_marshal_allocate_array<Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E >(_unmarshaled_worldPositions_Length);
		for (int32_t i = 0; i < ARRAY_LENGTH_AS_INT32(_unmarshaled_worldPositions_Length); i++)
		{
			(marshaled.___worldPositions_6)[i] = (unmarshaled.get_worldPositions_6())->GetAtUnchecked(static_cast<il2cpp_array_size_t>(i));
		}
	}
	else
	{
		marshaled.___worldPositions_6 = NULL;
	}
}
IL2CPP_EXTERN_C void FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59_marshal_com_back(const FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59_marshaled_com& marshaled, FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59& unmarshaled)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Int32_tFDE5F8CD43D10453F6A2E0C77FE48C6CC7009046_il2cpp_TypeInfo_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Single_tE07797BA3C98D4CA9B5A19413C19A76688AB899E_il2cpp_TypeInfo_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA_il2cpp_TypeInfo_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  unmarshaled_origin_temp_0;
	memset((&unmarshaled_origin_temp_0), 0, sizeof(unmarshaled_origin_temp_0));
	unmarshaled_origin_temp_0 = marshaled.___origin_0;
	unmarshaled.set_origin_0(unmarshaled_origin_temp_0);
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  unmarshaled_target_temp_1;
	memset((&unmarshaled_target_temp_1), 0, sizeof(unmarshaled_target_temp_1));
	unmarshaled_target_temp_1 = marshaled.___target_1;
	unmarshaled.set_target_1(unmarshaled_target_temp_1);
	float unmarshaled_sqrTolerance_temp_2 = 0.0f;
	unmarshaled_sqrTolerance_temp_2 = marshaled.___sqrTolerance_2;
	unmarshaled.set_sqrTolerance_2(unmarshaled_sqrTolerance_temp_2);
	if (marshaled.___positions_3 != NULL)
	{
		if (unmarshaled.get_positions_3() == NULL)
		{
			unmarshaled.set_positions_3(reinterpret_cast<Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA*>((Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA*)SZArrayNew(Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA_il2cpp_TypeInfo_var, 1)));
		}
		il2cpp_array_size_t _arrayLength = (unmarshaled.get_positions_3())->max_length;
		for (int32_t i = 0; i < ARRAY_LENGTH_AS_INT32(_arrayLength); i++)
		{
			(unmarshaled.get_positions_3())->SetAtUnchecked(static_cast<il2cpp_array_size_t>(i), (marshaled.___positions_3)[i]);
		}
	}
	unmarshaled.set_lengths_4((SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA*)il2cpp_codegen_com_marshal_safe_array_result(IL2CPP_VT_R4, Single_tE07797BA3C98D4CA9B5A19413C19A76688AB899E_il2cpp_TypeInfo_var, marshaled.___lengths_4));
	unmarshaled.set_subChainIndices_5((Int32U5BU5D_t70F1BDC14B1786481B176D6139A5E3B87DC54C32*)il2cpp_codegen_com_marshal_safe_array_result(IL2CPP_VT_I4, Int32_tFDE5F8CD43D10453F6A2E0C77FE48C6CC7009046_il2cpp_TypeInfo_var, marshaled.___subChainIndices_5));
	if (marshaled.___worldPositions_6 != NULL)
	{
		if (unmarshaled.get_worldPositions_6() == NULL)
		{
			unmarshaled.set_worldPositions_6(reinterpret_cast<Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4*>((Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4*)SZArrayNew(Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4_il2cpp_TypeInfo_var, 1)));
		}
		il2cpp_array_size_t _arrayLength = (unmarshaled.get_worldPositions_6())->max_length;
		for (int32_t i = 0; i < ARRAY_LENGTH_AS_INT32(_arrayLength); i++)
		{
			(unmarshaled.get_worldPositions_6())->SetAtUnchecked(static_cast<il2cpp_array_size_t>(i), (marshaled.___worldPositions_6)[i]);
		}
	}
}
// Conversion method for clean up from marshalling of: UnityEngine.U2D.IK.FABRIKChain2D
IL2CPP_EXTERN_C void FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59_marshal_com_cleanup(FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59_marshaled_com& marshaled)
{
	if (marshaled.___positions_3 != NULL)
	{
		il2cpp_codegen_marshal_free(marshaled.___positions_3);
		marshaled.___positions_3 = NULL;
	}
	il2cpp_codegen_com_destroy_safe_array(marshaled.___lengths_4);
	marshaled.___lengths_4 = NULL;
	il2cpp_codegen_com_destroy_safe_array(marshaled.___subChainIndices_5);
	marshaled.___subChainIndices_5 = NULL;
	if (marshaled.___worldPositions_6 != NULL)
	{
		il2cpp_codegen_marshal_free(marshaled.___worldPositions_6);
		marshaled.___worldPositions_6 = NULL;
	}
}
// UnityEngine.Vector2 UnityEngine.U2D.IK.FABRIKChain2D::get_first()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  FABRIKChain2D_get_first_m3B7A5DADFA5DEBB6C1882ED237BD390F3E713C5A (FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59 * __this, const RuntimeMethod* method)
{
	{
		// get { return positions[0]; }
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_0 = __this->get_positions_3();
		NullCheck(L_0);
		int32_t L_1 = 0;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_2 = (L_0)->GetAt(static_cast<il2cpp_array_size_t>(L_1));
		return L_2;
	}
}
IL2CPP_EXTERN_C  Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  FABRIKChain2D_get_first_m3B7A5DADFA5DEBB6C1882ED237BD390F3E713C5A_AdjustorThunk (RuntimeObject * __this, const RuntimeMethod* method)
{
	int32_t _offset = 1;
	FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59 * _thisAdjusted = reinterpret_cast<FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59 *>(__this + _offset);
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  _returnValue;
	_returnValue = FABRIKChain2D_get_first_m3B7A5DADFA5DEBB6C1882ED237BD390F3E713C5A(_thisAdjusted, method);
	return _returnValue;
}
// UnityEngine.Vector2 UnityEngine.U2D.IK.FABRIKChain2D::get_last()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  FABRIKChain2D_get_last_m6ED44B613CAB74F7306D814AF15A9792E8BE8546 (FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59 * __this, const RuntimeMethod* method)
{
	{
		// get { return positions[positions.Length - 1]; }
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_0 = __this->get_positions_3();
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_1 = __this->get_positions_3();
		NullCheck(L_1);
		NullCheck(L_0);
		int32_t L_2 = ((int32_t)il2cpp_codegen_subtract((int32_t)((int32_t)((int32_t)(((RuntimeArray*)L_1)->max_length))), (int32_t)1));
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_3 = (L_0)->GetAt(static_cast<il2cpp_array_size_t>(L_2));
		return L_3;
	}
}
IL2CPP_EXTERN_C  Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  FABRIKChain2D_get_last_m6ED44B613CAB74F7306D814AF15A9792E8BE8546_AdjustorThunk (RuntimeObject * __this, const RuntimeMethod* method)
{
	int32_t _offset = 1;
	FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59 * _thisAdjusted = reinterpret_cast<FABRIKChain2D_t005A8D2E350FD757389CE28D0253E6D8EFCD5D59 *>(__this + _offset);
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  _returnValue;
	_returnValue = FABRIKChain2D_get_last_m6ED44B613CAB74F7306D814AF15A9792E8BE8546(_thisAdjusted, method);
	return _returnValue;
}
#ifdef __clang__
#pragma clang diagnostic pop
#endif
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Winvalid-offsetof"
#pragma clang diagnostic ignored "-Wunused-variable"
#endif
// System.Int32 UnityEngine.U2D.IK.FabrikSolver2D::get_iterations()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR int32_t FabrikSolver2D_get_iterations_m46C5BE63A5E2E52628D750D4028BBC2122BAB1E8 (FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Iterations; }
		int32_t L_0 = __this->get_m_Iterations_12();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.FabrikSolver2D::set_iterations(System.Int32)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void FabrikSolver2D_set_iterations_m085C999DE4F34E1C4398F7FC01744875D64DD97C (FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC * __this, int32_t ___value0, const RuntimeMethod* method)
{
	{
		// set { m_Iterations = Mathf.Max(value, kMinIterations); }
		int32_t L_0 = ___value0;
		int32_t L_1;
		L_1 = Mathf_Max_mAB2544BF70651EC36982F5F4EBD250AEE283335A(L_0, 1, /*hidden argument*/NULL);
		__this->set_m_Iterations_12(L_1);
		// set { m_Iterations = Mathf.Max(value, kMinIterations); }
		return;
	}
}
// System.Single UnityEngine.U2D.IK.FabrikSolver2D::get_tolerance()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR float FabrikSolver2D_get_tolerance_m98EAF62D8185C67EB65A8EE354D7C477B872FBD2 (FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Tolerance; }
		float L_0 = __this->get_m_Tolerance_13();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.FabrikSolver2D::set_tolerance(System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void FabrikSolver2D_set_tolerance_m85EC38FAE93A27D2A9AFFF745496666B62B5CDBB (FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC * __this, float ___value0, const RuntimeMethod* method)
{
	{
		// set { m_Tolerance = Mathf.Max(value, kMinTolerance); }
		float L_0 = ___value0;
		float L_1;
		L_1 = Mathf_Max_m4CE510E1F1013B33275F01543731A51A58BA0775(L_0, (0.00100000005f), /*hidden argument*/NULL);
		__this->set_m_Tolerance_13(L_1);
		// set { m_Tolerance = Mathf.Max(value, kMinTolerance); }
		return;
	}
}
// System.Int32 UnityEngine.U2D.IK.FabrikSolver2D::GetChainCount()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR int32_t FabrikSolver2D_GetChainCount_m728A207A0C0763F34DFAF090FEAE10413E9CEF7F (FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC * __this, const RuntimeMethod* method)
{
	{
		// return 1;
		return 1;
	}
}
// UnityEngine.U2D.IK.IKChain2D UnityEngine.U2D.IK.FabrikSolver2D::GetChain(System.Int32)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * FabrikSolver2D_GetChain_mFA9D5D7B6590A706BD424278C05C92AFC4DA42D1 (FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC * __this, int32_t ___index0, const RuntimeMethod* method)
{
	{
		// return m_Chain;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_0 = __this->get_m_Chain_11();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.FabrikSolver2D::DoPrepare()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void FabrikSolver2D_DoPrepare_m11A596B27A320872CEDF7C50315A446867247759 (FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC * __this, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA_il2cpp_TypeInfo_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA_il2cpp_TypeInfo_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	int32_t V_0 = 0;
	int32_t V_1 = 0;
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_2;
	memset((&V_2), 0, sizeof(V_2));
	{
		// if (m_Positions == null || m_Positions.Length != m_Chain.transformCount)
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_0 = __this->get_m_Positions_15();
		if (!L_0)
		{
			goto IL_001d;
		}
	}
	{
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_1 = __this->get_m_Positions_15();
		NullCheck(L_1);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_2 = __this->get_m_Chain_11();
		NullCheck(L_2);
		int32_t L_3;
		L_3 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(L_2, /*hidden argument*/NULL);
		if ((((int32_t)((int32_t)((int32_t)(((RuntimeArray*)L_1)->max_length)))) == ((int32_t)L_3)))
		{
			goto IL_0061;
		}
	}

IL_001d:
	{
		// m_Positions = new Vector2[m_Chain.transformCount];
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_4 = __this->get_m_Chain_11();
		NullCheck(L_4);
		int32_t L_5;
		L_5 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(L_4, /*hidden argument*/NULL);
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_6 = (Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA*)(Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA*)SZArrayNew(Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA_il2cpp_TypeInfo_var, (uint32_t)L_5);
		__this->set_m_Positions_15(L_6);
		// m_Lengths = new float[m_Chain.transformCount - 1];
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_7 = __this->get_m_Chain_11();
		NullCheck(L_7);
		int32_t L_8;
		L_8 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(L_7, /*hidden argument*/NULL);
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_9 = (SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA*)(SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA*)SZArrayNew(SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA_il2cpp_TypeInfo_var, (uint32_t)((int32_t)il2cpp_codegen_subtract((int32_t)L_8, (int32_t)1)));
		__this->set_m_Lengths_14(L_9);
		// m_WorldPositions = new Vector3[m_Chain.transformCount];
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_10 = __this->get_m_Chain_11();
		NullCheck(L_10);
		int32_t L_11;
		L_11 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(L_10, /*hidden argument*/NULL);
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_12 = (Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4*)(Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4*)SZArrayNew(Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4_il2cpp_TypeInfo_var, (uint32_t)L_11);
		__this->set_m_WorldPositions_16(L_12);
	}

IL_0061:
	{
		// for (int i = 0; i < m_Chain.transformCount; ++i)
		V_0 = 0;
		goto IL_0092;
	}

IL_0065:
	{
		// m_Positions[i] = GetPointOnSolverPlane(m_Chain.transforms[i].position);
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_13 = __this->get_m_Positions_15();
		int32_t L_14 = V_0;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_15 = __this->get_m_Chain_11();
		NullCheck(L_15);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_16;
		L_16 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_15, /*hidden argument*/NULL);
		int32_t L_17 = V_0;
		NullCheck(L_16);
		int32_t L_18 = L_17;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_19 = (L_16)->GetAt(static_cast<il2cpp_array_size_t>(L_18));
		NullCheck(L_19);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_20;
		L_20 = Transform_get_position_m40A8A9895568D56FFC687B57F30E8D53CB5EA341(L_19, /*hidden argument*/NULL);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_21;
		L_21 = Solver2D_GetPointOnSolverPlane_mB1860607F0C31502574E1D8E80C55CC991A00301(__this, L_20, /*hidden argument*/NULL);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_22;
		L_22 = Vector2_op_Implicit_mE407CAF7446E342E059B00AA9EDB301AEC5B7B1A_inline(L_21, /*hidden argument*/NULL);
		NullCheck(L_13);
		(L_13)->SetAt(static_cast<il2cpp_array_size_t>(L_14), (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 )L_22);
		// for (int i = 0; i < m_Chain.transformCount; ++i)
		int32_t L_23 = V_0;
		V_0 = ((int32_t)il2cpp_codegen_add((int32_t)L_23, (int32_t)1));
	}

IL_0092:
	{
		// for (int i = 0; i < m_Chain.transformCount; ++i)
		int32_t L_24 = V_0;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_25 = __this->get_m_Chain_11();
		NullCheck(L_25);
		int32_t L_26;
		L_26 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(L_25, /*hidden argument*/NULL);
		if ((((int32_t)L_24) < ((int32_t)L_26)))
		{
			goto IL_0065;
		}
	}
	{
		// for (int i = 0; i < m_Chain.transformCount - 1; ++i)
		V_1 = 0;
		goto IL_00d7;
	}

IL_00a4:
	{
		// m_Lengths[i] = (m_Positions[i + 1] - m_Positions[i]).magnitude;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_27 = __this->get_m_Lengths_14();
		int32_t L_28 = V_1;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_29 = __this->get_m_Positions_15();
		int32_t L_30 = V_1;
		NullCheck(L_29);
		int32_t L_31 = ((int32_t)il2cpp_codegen_add((int32_t)L_30, (int32_t)1));
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_32 = (L_29)->GetAt(static_cast<il2cpp_array_size_t>(L_31));
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_33 = __this->get_m_Positions_15();
		int32_t L_34 = V_1;
		NullCheck(L_33);
		int32_t L_35 = L_34;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_36 = (L_33)->GetAt(static_cast<il2cpp_array_size_t>(L_35));
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_37;
		L_37 = Vector2_op_Subtraction_m6E536A8C72FEAA37FF8D5E26E11D6E71EB59599A_inline(L_32, L_36, /*hidden argument*/NULL);
		V_2 = L_37;
		float L_38;
		L_38 = Vector2_get_magnitude_mD30DB8EB73C4A5CD395745AE1CA1C38DC61D2E85((Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 *)(&V_2), /*hidden argument*/NULL);
		NullCheck(L_27);
		(L_27)->SetAt(static_cast<il2cpp_array_size_t>(L_28), (float)L_38);
		// for (int i = 0; i < m_Chain.transformCount - 1; ++i)
		int32_t L_39 = V_1;
		V_1 = ((int32_t)il2cpp_codegen_add((int32_t)L_39, (int32_t)1));
	}

IL_00d7:
	{
		// for (int i = 0; i < m_Chain.transformCount - 1; ++i)
		int32_t L_40 = V_1;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_41 = __this->get_m_Chain_11();
		NullCheck(L_41);
		int32_t L_42;
		L_42 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(L_41, /*hidden argument*/NULL);
		if ((((int32_t)L_40) < ((int32_t)((int32_t)il2cpp_codegen_subtract((int32_t)L_42, (int32_t)1)))))
		{
			goto IL_00a4;
		}
	}
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.FabrikSolver2D::DoUpdateIK(System.Collections.Generic.List`1<UnityEngine.Vector3>)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void FabrikSolver2D_DoUpdateIK_mA8967BDE17AE9AF65258E3FC1DD1BD1D0A1C2E4D (FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC * __this, List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * ___effectorPositions0, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1_get_Item_m554804AC447B0BA1F93C64E863FF7DB0527AFED9_RuntimeMethod_var);
		s_Il2CppMethodInitialized = true;
	}
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  V_0;
	memset((&V_0), 0, sizeof(V_0));
	int32_t V_1 = 0;
	int32_t V_2 = 0;
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  V_3;
	memset((&V_3), 0, sizeof(V_3));
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  V_4;
	memset((&V_4), 0, sizeof(V_4));
	{
		// Vector3 effectorPosition = effectorPositions[0];
		List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * L_0 = ___effectorPositions0;
		NullCheck(L_0);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_1;
		L_1 = List_1_get_Item_m554804AC447B0BA1F93C64E863FF7DB0527AFED9_inline(L_0, 0, /*hidden argument*/List_1_get_Item_m554804AC447B0BA1F93C64E863FF7DB0527AFED9_RuntimeMethod_var);
		V_0 = L_1;
		// effectorPosition = GetPointOnSolverPlane(effectorPosition);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_2 = V_0;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_3;
		L_3 = Solver2D_GetPointOnSolverPlane_mB1860607F0C31502574E1D8E80C55CC991A00301(__this, L_2, /*hidden argument*/NULL);
		V_0 = L_3;
		// if (FABRIK2D.Solve(effectorPosition, iterations, tolerance, m_Lengths, ref m_Positions))
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_4 = V_0;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_5;
		L_5 = Vector2_op_Implicit_mE407CAF7446E342E059B00AA9EDB301AEC5B7B1A_inline(L_4, /*hidden argument*/NULL);
		int32_t L_6;
		L_6 = FabrikSolver2D_get_iterations_m46C5BE63A5E2E52628D750D4028BBC2122BAB1E8_inline(__this, /*hidden argument*/NULL);
		float L_7;
		L_7 = FabrikSolver2D_get_tolerance_m98EAF62D8185C67EB65A8EE354D7C477B872FBD2_inline(__this, /*hidden argument*/NULL);
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_8 = __this->get_m_Lengths_14();
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA** L_9 = __this->get_address_of_m_Positions_15();
		bool L_10;
		L_10 = FABRIK2D_Solve_mDBACC6E4D2F9479A6171910E08A1EA8A455A5580(L_5, L_6, L_7, L_8, (Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA**)L_9, /*hidden argument*/NULL);
		if (!L_10)
		{
			goto IL_00dd;
		}
	}
	{
		// for (int i = 0; i < m_Positions.Length; ++i)
		V_1 = 0;
		goto IL_005e;
	}

IL_003c:
	{
		// m_WorldPositions[i] = GetWorldPositionFromSolverPlanePoint(m_Positions[i]);
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_11 = __this->get_m_WorldPositions_16();
		int32_t L_12 = V_1;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_13 = __this->get_m_Positions_15();
		int32_t L_14 = V_1;
		NullCheck(L_13);
		int32_t L_15 = L_14;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_16 = (L_13)->GetAt(static_cast<il2cpp_array_size_t>(L_15));
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_17;
		L_17 = Solver2D_GetWorldPositionFromSolverPlanePoint_m05071085502CDC4F25D5F8549094406937B40A00(__this, L_16, /*hidden argument*/NULL);
		NullCheck(L_11);
		(L_11)->SetAt(static_cast<il2cpp_array_size_t>(L_12), (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E )L_17);
		// for (int i = 0; i < m_Positions.Length; ++i)
		int32_t L_18 = V_1;
		V_1 = ((int32_t)il2cpp_codegen_add((int32_t)L_18, (int32_t)1));
	}

IL_005e:
	{
		// for (int i = 0; i < m_Positions.Length; ++i)
		int32_t L_19 = V_1;
		Vector2U5BU5D_tE0F58A2D6D8592B5EC37D9CDEF09103A02E5D7FA* L_20 = __this->get_m_Positions_15();
		NullCheck(L_20);
		if ((((int32_t)L_19) < ((int32_t)((int32_t)((int32_t)(((RuntimeArray*)L_20)->max_length))))))
		{
			goto IL_003c;
		}
	}
	{
		// for (int i = 0; i < m_Chain.transformCount - 1; ++i)
		V_2 = 0;
		goto IL_00cd;
	}

IL_006d:
	{
		// Vector3 startLocalPosition = m_Chain.transforms[i + 1].localPosition;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_21 = __this->get_m_Chain_11();
		NullCheck(L_21);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_22;
		L_22 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_21, /*hidden argument*/NULL);
		int32_t L_23 = V_2;
		NullCheck(L_22);
		int32_t L_24 = ((int32_t)il2cpp_codegen_add((int32_t)L_23, (int32_t)1));
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_25 = (L_22)->GetAt(static_cast<il2cpp_array_size_t>(L_24));
		NullCheck(L_25);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_26;
		L_26 = Transform_get_localPosition_m527B8B5B625DA9A61E551E0FBCD3BE8CA4539FC2(L_25, /*hidden argument*/NULL);
		V_3 = L_26;
		// Vector3 endLocalPosition = m_Chain.transforms[i].InverseTransformPoint(m_WorldPositions[i + 1]);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_27 = __this->get_m_Chain_11();
		NullCheck(L_27);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_28;
		L_28 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_27, /*hidden argument*/NULL);
		int32_t L_29 = V_2;
		NullCheck(L_28);
		int32_t L_30 = L_29;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_31 = (L_28)->GetAt(static_cast<il2cpp_array_size_t>(L_30));
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_32 = __this->get_m_WorldPositions_16();
		int32_t L_33 = V_2;
		NullCheck(L_32);
		int32_t L_34 = ((int32_t)il2cpp_codegen_add((int32_t)L_33, (int32_t)1));
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_35 = (L_32)->GetAt(static_cast<il2cpp_array_size_t>(L_34));
		NullCheck(L_31);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_36;
		L_36 = Transform_InverseTransformPoint_m476ABC8F3F14824D7D82FE2C54CEE5A151A669B8(L_31, L_35, /*hidden argument*/NULL);
		V_4 = L_36;
		// m_Chain.transforms[i].localRotation *= Quaternion.FromToRotation(startLocalPosition, endLocalPosition);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_37 = __this->get_m_Chain_11();
		NullCheck(L_37);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_38;
		L_38 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_37, /*hidden argument*/NULL);
		int32_t L_39 = V_2;
		NullCheck(L_38);
		int32_t L_40 = L_39;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_41 = (L_38)->GetAt(static_cast<il2cpp_array_size_t>(L_40));
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_42 = L_41;
		NullCheck(L_42);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_43;
		L_43 = Transform_get_localRotation_mA6472AE7509D762965275D79B645A14A9CCF5BE5(L_42, /*hidden argument*/NULL);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_44 = V_3;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_45 = V_4;
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_46;
		L_46 = Quaternion_FromToRotation_mD0EBB9993FC7C6A45724D0365B09F11F1CEADB80(L_44, L_45, /*hidden argument*/NULL);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_47;
		L_47 = Quaternion_op_Multiply_m5C7A60AC0CDCA2C5E2F23E45FBD1B15CA152D7B0(L_43, L_46, /*hidden argument*/NULL);
		NullCheck(L_42);
		Transform_set_localRotation_m1A9101457EC4653AFC93FCC4065A29F2C78FA62C(L_42, L_47, /*hidden argument*/NULL);
		// for (int i = 0; i < m_Chain.transformCount - 1; ++i)
		int32_t L_48 = V_2;
		V_2 = ((int32_t)il2cpp_codegen_add((int32_t)L_48, (int32_t)1));
	}

IL_00cd:
	{
		// for (int i = 0; i < m_Chain.transformCount - 1; ++i)
		int32_t L_49 = V_2;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_50 = __this->get_m_Chain_11();
		NullCheck(L_50);
		int32_t L_51;
		L_51 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(L_50, /*hidden argument*/NULL);
		if ((((int32_t)L_49) < ((int32_t)((int32_t)il2cpp_codegen_subtract((int32_t)L_51, (int32_t)1)))))
		{
			goto IL_006d;
		}
	}

IL_00dd:
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.FabrikSolver2D::.ctor()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void FabrikSolver2D__ctor_mCB809B3FE0901BDB09392F9D5BEE5FEFB0CECD4C (FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC * __this, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	{
		// private IKChain2D m_Chain = new IKChain2D();
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_0 = (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F *)il2cpp_codegen_object_new(IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F_il2cpp_TypeInfo_var);
		IKChain2D__ctor_m6551D974C5CCD2BC3BE58B13BB2E2513A66CC620(L_0, /*hidden argument*/NULL);
		__this->set_m_Chain_11(L_0);
		// private int m_Iterations = 10;
		__this->set_m_Iterations_12(((int32_t)10));
		// private float m_Tolerance = 0.01f;
		__this->set_m_Tolerance_13((0.00999999978f));
		Solver2D__ctor_mD0FAAA85839E2CE1F6727F924EECA48F9CBA0E8C(__this, /*hidden argument*/NULL);
		return;
	}
}
#ifdef __clang__
#pragma clang diagnostic pop
#endif
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Winvalid-offsetof"
#pragma clang diagnostic ignored "-Wunused-variable"
#endif
// UnityEngine.Transform UnityEngine.U2D.IK.IKChain2D::get_effector()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * IKChain2D_get_effector_m4C8436D4F6EF2A06DE5D4E852BA7C99D4D0E9046 (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method)
{
	{
		// get { return m_EffectorTransform; }
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_0 = __this->get_m_EffectorTransform_0();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.IKChain2D::set_effector(UnityEngine.Transform)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKChain2D_set_effector_mDD444E4A1D63081FB879B1C50BB7829CA3FD57D6 (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * ___value0, const RuntimeMethod* method)
{
	{
		// set { m_EffectorTransform = value; }
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_0 = ___value0;
		__this->set_m_EffectorTransform_0(L_0);
		// set { m_EffectorTransform = value; }
		return;
	}
}
// UnityEngine.Transform UnityEngine.U2D.IK.IKChain2D::get_target()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * IKChain2D_get_target_mDD9973A4AC2F4FA94607EC09A6324B8E9CEEFD90 (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method)
{
	{
		// get { return m_TargetTransform; }
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_0 = __this->get_m_TargetTransform_1();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.IKChain2D::set_target(UnityEngine.Transform)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKChain2D_set_target_mC4F45D64899E0E609B85F17DA591BACCD5BCDBF9 (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * ___value0, const RuntimeMethod* method)
{
	{
		// set { m_TargetTransform = value; }
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_0 = ___value0;
		__this->set_m_TargetTransform_1(L_0);
		// set { m_TargetTransform = value; }
		return;
	}
}
// UnityEngine.Transform[] UnityEngine.U2D.IK.IKChain2D::get_transforms()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Transforms; }
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_0 = __this->get_m_Transforms_3();
		return L_0;
	}
}
// UnityEngine.Transform UnityEngine.U2D.IK.IKChain2D::get_rootTransform()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * IKChain2D_get_rootTransform_mEA22E774F957B3E09673D30A310923E107EB0757 (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method)
{
	{
		// if (m_Transforms != null && transformCount > 0 && m_Transforms.Length == transformCount)
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_0 = __this->get_m_Transforms_3();
		if (!L_0)
		{
			goto IL_002a;
		}
	}
	{
		int32_t L_1;
		L_1 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		if ((((int32_t)L_1) <= ((int32_t)0)))
		{
			goto IL_002a;
		}
	}
	{
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_2 = __this->get_m_Transforms_3();
		NullCheck(L_2);
		int32_t L_3;
		L_3 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		if ((!(((uint32_t)((int32_t)((int32_t)(((RuntimeArray*)L_2)->max_length)))) == ((uint32_t)L_3))))
		{
			goto IL_002a;
		}
	}
	{
		// return m_Transforms[0];
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_4 = __this->get_m_Transforms_3();
		NullCheck(L_4);
		int32_t L_5 = 0;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_6 = (L_4)->GetAt(static_cast<il2cpp_array_size_t>(L_5));
		return L_6;
	}

IL_002a:
	{
		// return null;
		return (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 *)NULL;
	}
}
// UnityEngine.Transform UnityEngine.U2D.IK.IKChain2D::get_lastTransform()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * IKChain2D_get_lastTransform_m2BADDA09E4D23103EB3B1B48D48CA37051F5E7E9 (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method)
{
	{
		// if (m_Transforms != null && transformCount > 0 && m_Transforms.Length == transformCount)
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_0 = __this->get_m_Transforms_3();
		if (!L_0)
		{
			goto IL_0031;
		}
	}
	{
		int32_t L_1;
		L_1 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		if ((((int32_t)L_1) <= ((int32_t)0)))
		{
			goto IL_0031;
		}
	}
	{
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_2 = __this->get_m_Transforms_3();
		NullCheck(L_2);
		int32_t L_3;
		L_3 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		if ((!(((uint32_t)((int32_t)((int32_t)(((RuntimeArray*)L_2)->max_length)))) == ((uint32_t)L_3))))
		{
			goto IL_0031;
		}
	}
	{
		// return m_Transforms[transformCount - 1];
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_4 = __this->get_m_Transforms_3();
		int32_t L_5;
		L_5 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		NullCheck(L_4);
		int32_t L_6 = ((int32_t)il2cpp_codegen_subtract((int32_t)L_5, (int32_t)1));
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_7 = (L_4)->GetAt(static_cast<il2cpp_array_size_t>(L_6));
		return L_7;
	}

IL_0031:
	{
		// return null;
		return (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 *)NULL;
	}
}
// System.Int32 UnityEngine.U2D.IK.IKChain2D::get_transformCount()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR int32_t IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method)
{
	{
		// get { return m_TransformCount; }
		int32_t L_0 = __this->get_m_TransformCount_2();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.IKChain2D::set_transformCount(System.Int32)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKChain2D_set_transformCount_m71CA735D9E8E3E1FD01FCB2AF2B1A03074A04511 (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, int32_t ___value0, const RuntimeMethod* method)
{
	{
		// set { m_TransformCount = Mathf.Max(0, value); }
		int32_t L_0 = ___value0;
		int32_t L_1;
		L_1 = Mathf_Max_mAB2544BF70651EC36982F5F4EBD250AEE283335A(0, L_0, /*hidden argument*/NULL);
		__this->set_m_TransformCount_2(L_1);
		// set { m_TransformCount = Mathf.Max(0, value); }
		return;
	}
}
// System.Boolean UnityEngine.U2D.IK.IKChain2D::get_isValid()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool IKChain2D_get_isValid_mE3AC818DEB38A876C8919A6D5B1C3AA6F225BC8A (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method)
{
	{
		// get { return Validate(); }
		bool L_0;
		L_0 = IKChain2D_Validate_m2DB28BA7405790241AE8089F3CEABF12A9E22D7C(__this, /*hidden argument*/NULL);
		return L_0;
	}
}
// System.Single[] UnityEngine.U2D.IK.IKChain2D::get_lengths()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* IKChain2D_get_lengths_mF25A01AAA5E9A0C2D6E4B1F87F29FFF63468E75D (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method)
{
	{
		// if(isValid)
		bool L_0;
		L_0 = IKChain2D_get_isValid_mE3AC818DEB38A876C8919A6D5B1C3AA6F225BC8A(__this, /*hidden argument*/NULL);
		if (!L_0)
		{
			goto IL_0015;
		}
	}
	{
		// PrepareLengths();
		IKChain2D_PrepareLengths_mD4BE7E28775C08918AB06D8405632159B98BB90C(__this, /*hidden argument*/NULL);
		// return m_Lengths;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_1 = __this->get_m_Lengths_6();
		return L_1;
	}

IL_0015:
	{
		// return null;
		return (SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA*)NULL;
	}
}
// System.Boolean UnityEngine.U2D.IK.IKChain2D::Validate()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool IKChain2D_Validate_m2DB28BA7405790241AE8089F3CEABF12A9E22D7C (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	{
		// if (effector == null)
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_0;
		L_0 = IKChain2D_get_effector_m4C8436D4F6EF2A06DE5D4E852BA7C99D4D0E9046_inline(__this, /*hidden argument*/NULL);
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_1;
		L_1 = Object_op_Equality_mEE9EC7EB5C7DC3E95B94AB904E1986FC4D566D54(L_0, (Object_tF2F3778131EFF286AF62B7B013A170F95A91571A *)NULL, /*hidden argument*/NULL);
		if (!L_1)
		{
			goto IL_0010;
		}
	}
	{
		// return false;
		return (bool)0;
	}

IL_0010:
	{
		// if (transformCount == 0)
		int32_t L_2;
		L_2 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		if (L_2)
		{
			goto IL_001a;
		}
	}
	{
		// return false;
		return (bool)0;
	}

IL_001a:
	{
		// if (m_Transforms == null || m_Transforms.Length != transformCount)
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_3 = __this->get_m_Transforms_3();
		if (!L_3)
		{
			goto IL_0032;
		}
	}
	{
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_4 = __this->get_m_Transforms_3();
		NullCheck(L_4);
		int32_t L_5;
		L_5 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		if ((((int32_t)((int32_t)((int32_t)(((RuntimeArray*)L_4)->max_length)))) == ((int32_t)L_5)))
		{
			goto IL_0034;
		}
	}

IL_0032:
	{
		// return false;
		return (bool)0;
	}

IL_0034:
	{
		// if (m_DefaultLocalRotations == null || m_DefaultLocalRotations.Length != transformCount)
		QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6* L_6 = __this->get_m_DefaultLocalRotations_4();
		if (!L_6)
		{
			goto IL_004c;
		}
	}
	{
		QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6* L_7 = __this->get_m_DefaultLocalRotations_4();
		NullCheck(L_7);
		int32_t L_8;
		L_8 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		if ((((int32_t)((int32_t)((int32_t)(((RuntimeArray*)L_7)->max_length)))) == ((int32_t)L_8)))
		{
			goto IL_004e;
		}
	}

IL_004c:
	{
		// return false;
		return (bool)0;
	}

IL_004e:
	{
		// if (m_StoredLocalRotations ==  null || m_StoredLocalRotations.Length != transformCount)
		QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6* L_9 = __this->get_m_StoredLocalRotations_5();
		if (!L_9)
		{
			goto IL_0066;
		}
	}
	{
		QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6* L_10 = __this->get_m_StoredLocalRotations_5();
		NullCheck(L_10);
		int32_t L_11;
		L_11 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		if ((((int32_t)((int32_t)((int32_t)(((RuntimeArray*)L_10)->max_length)))) == ((int32_t)L_11)))
		{
			goto IL_0068;
		}
	}

IL_0066:
	{
		// return false;
		return (bool)0;
	}

IL_0068:
	{
		// if (rootTransform == null)
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_12;
		L_12 = IKChain2D_get_rootTransform_mEA22E774F957B3E09673D30A310923E107EB0757(__this, /*hidden argument*/NULL);
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_13;
		L_13 = Object_op_Equality_mEE9EC7EB5C7DC3E95B94AB904E1986FC4D566D54(L_12, (Object_tF2F3778131EFF286AF62B7B013A170F95A91571A *)NULL, /*hidden argument*/NULL);
		if (!L_13)
		{
			goto IL_0078;
		}
	}
	{
		// return false;
		return (bool)0;
	}

IL_0078:
	{
		// if (lastTransform != effector)
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_14;
		L_14 = IKChain2D_get_lastTransform_m2BADDA09E4D23103EB3B1B48D48CA37051F5E7E9(__this, /*hidden argument*/NULL);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_15;
		L_15 = IKChain2D_get_effector_m4C8436D4F6EF2A06DE5D4E852BA7C99D4D0E9046_inline(__this, /*hidden argument*/NULL);
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_16;
		L_16 = Object_op_Inequality_mE1F187520BD83FB7D86A6D850710C4D42B864E90(L_14, L_15, /*hidden argument*/NULL);
		if (!L_16)
		{
			goto IL_008d;
		}
	}
	{
		// return false;
		return (bool)0;
	}

IL_008d:
	{
		// if (target && IKUtility.IsDescendentOf(target, rootTransform))
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_17;
		L_17 = IKChain2D_get_target_mDD9973A4AC2F4FA94607EC09A6324B8E9CEEFD90_inline(__this, /*hidden argument*/NULL);
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_18;
		L_18 = Object_op_Implicit_mC8214E4F028CC2F036CC82BDB81D102A02893499(L_17, /*hidden argument*/NULL);
		if (!L_18)
		{
			goto IL_00af;
		}
	}
	{
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_19;
		L_19 = IKChain2D_get_target_mDD9973A4AC2F4FA94607EC09A6324B8E9CEEFD90_inline(__this, /*hidden argument*/NULL);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_20;
		L_20 = IKChain2D_get_rootTransform_mEA22E774F957B3E09673D30A310923E107EB0757(__this, /*hidden argument*/NULL);
		bool L_21;
		L_21 = IKUtility_IsDescendentOf_m62549D8A1C1F80AA41765ACB55D65BEDD5F785D4(L_19, L_20, /*hidden argument*/NULL);
		if (!L_21)
		{
			goto IL_00af;
		}
	}
	{
		// return false;
		return (bool)0;
	}

IL_00af:
	{
		// return true;
		return (bool)1;
	}
}
// System.Void UnityEngine.U2D.IK.IKChain2D::Initialize()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKChain2D_Initialize_mAD562B4CABDBD051BA9CCD30FD68BBF49990E3BA (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6_il2cpp_TypeInfo_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * V_0 = NULL;
	int32_t V_1 = 0;
	{
		// if (effector == null || transformCount == 0 || IKUtility.GetAncestorCount(effector) < transformCount - 1)
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_0;
		L_0 = IKChain2D_get_effector_m4C8436D4F6EF2A06DE5D4E852BA7C99D4D0E9046_inline(__this, /*hidden argument*/NULL);
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_1;
		L_1 = Object_op_Equality_mEE9EC7EB5C7DC3E95B94AB904E1986FC4D566D54(L_0, (Object_tF2F3778131EFF286AF62B7B013A170F95A91571A *)NULL, /*hidden argument*/NULL);
		if (L_1)
		{
			goto IL_002b;
		}
	}
	{
		int32_t L_2;
		L_2 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		if (!L_2)
		{
			goto IL_002b;
		}
	}
	{
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_3;
		L_3 = IKChain2D_get_effector_m4C8436D4F6EF2A06DE5D4E852BA7C99D4D0E9046_inline(__this, /*hidden argument*/NULL);
		int32_t L_4;
		L_4 = IKUtility_GetAncestorCount_m66BF38868832D92A4DC53F9948248E2695F12410(L_3, /*hidden argument*/NULL);
		int32_t L_5;
		L_5 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		if ((((int32_t)L_4) >= ((int32_t)((int32_t)il2cpp_codegen_subtract((int32_t)L_5, (int32_t)1)))))
		{
			goto IL_002c;
		}
	}

IL_002b:
	{
		// return;
		return;
	}

IL_002c:
	{
		// m_Transforms = new Transform[transformCount];
		int32_t L_6;
		L_6 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_7 = (TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D*)(TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D*)SZArrayNew(TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D_il2cpp_TypeInfo_var, (uint32_t)L_6);
		__this->set_m_Transforms_3(L_7);
		// m_DefaultLocalRotations = new Quaternion[transformCount];
		int32_t L_8;
		L_8 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6* L_9 = (QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6*)(QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6*)SZArrayNew(QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6_il2cpp_TypeInfo_var, (uint32_t)L_8);
		__this->set_m_DefaultLocalRotations_4(L_9);
		// m_StoredLocalRotations = new Quaternion[transformCount];
		int32_t L_10;
		L_10 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6* L_11 = (QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6*)(QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6*)SZArrayNew(QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6_il2cpp_TypeInfo_var, (uint32_t)L_10);
		__this->set_m_StoredLocalRotations_5(L_11);
		// var currentTransform = effector;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_12;
		L_12 = IKChain2D_get_effector_m4C8436D4F6EF2A06DE5D4E852BA7C99D4D0E9046_inline(__this, /*hidden argument*/NULL);
		V_0 = L_12;
		// int index = transformCount - 1;
		int32_t L_13;
		L_13 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		V_1 = ((int32_t)il2cpp_codegen_subtract((int32_t)L_13, (int32_t)1));
		goto IL_0097;
	}

IL_0071:
	{
		// m_Transforms[index] = currentTransform;
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_14 = __this->get_m_Transforms_3();
		int32_t L_15 = V_1;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_16 = V_0;
		NullCheck(L_14);
		ArrayElementTypeCheck (L_14, L_16);
		(L_14)->SetAt(static_cast<il2cpp_array_size_t>(L_15), (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 *)L_16);
		// m_DefaultLocalRotations[index] = currentTransform.localRotation;
		QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6* L_17 = __this->get_m_DefaultLocalRotations_4();
		int32_t L_18 = V_1;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_19 = V_0;
		NullCheck(L_19);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_20;
		L_20 = Transform_get_localRotation_mA6472AE7509D762965275D79B645A14A9CCF5BE5(L_19, /*hidden argument*/NULL);
		NullCheck(L_17);
		(L_17)->SetAt(static_cast<il2cpp_array_size_t>(L_18), (Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4 )L_20);
		// currentTransform = currentTransform.parent;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_21 = V_0;
		NullCheck(L_21);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_22;
		L_22 = Transform_get_parent_m7D06005D9CB55F90F39D42F6A2AF9C7BC80745C9(L_21, /*hidden argument*/NULL);
		V_0 = L_22;
		// --index;
		int32_t L_23 = V_1;
		V_1 = ((int32_t)il2cpp_codegen_subtract((int32_t)L_23, (int32_t)1));
	}

IL_0097:
	{
		// while (currentTransform && index >= 0)
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_24 = V_0;
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_25;
		L_25 = Object_op_Implicit_mC8214E4F028CC2F036CC82BDB81D102A02893499(L_24, /*hidden argument*/NULL);
		if (!L_25)
		{
			goto IL_00a3;
		}
	}
	{
		int32_t L_26 = V_1;
		if ((((int32_t)L_26) >= ((int32_t)0)))
		{
			goto IL_0071;
		}
	}

IL_00a3:
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.IKChain2D::PrepareLengths()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKChain2D_PrepareLengths_mD4BE7E28775C08918AB06D8405632159B98BB90C (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * V_0 = NULL;
	int32_t V_1 = 0;
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  V_2;
	memset((&V_2), 0, sizeof(V_2));
	{
		// var currentTransform = effector;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_0;
		L_0 = IKChain2D_get_effector_m4C8436D4F6EF2A06DE5D4E852BA7C99D4D0E9046_inline(__this, /*hidden argument*/NULL);
		V_0 = L_0;
		// int index = transformCount - 1;
		int32_t L_1;
		L_1 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		V_1 = ((int32_t)il2cpp_codegen_subtract((int32_t)L_1, (int32_t)1));
		// if (m_Lengths == null || m_Lengths.Length != transformCount - 1)
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_2 = __this->get_m_Lengths_6();
		if (!L_2)
		{
			goto IL_002a;
		}
	}
	{
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_3 = __this->get_m_Lengths_6();
		NullCheck(L_3);
		int32_t L_4;
		L_4 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		if ((((int32_t)((int32_t)((int32_t)(((RuntimeArray*)L_3)->max_length)))) == ((int32_t)((int32_t)il2cpp_codegen_subtract((int32_t)L_4, (int32_t)1)))))
		{
			goto IL_0083;
		}
	}

IL_002a:
	{
		// m_Lengths = new float[transformCount - 1];
		int32_t L_5;
		L_5 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_6 = (SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA*)(SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA*)SZArrayNew(SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA_il2cpp_TypeInfo_var, (uint32_t)((int32_t)il2cpp_codegen_subtract((int32_t)L_5, (int32_t)1)));
		__this->set_m_Lengths_6(L_6);
		goto IL_0083;
	}

IL_003f:
	{
		// if (currentTransform.parent && index > 0)
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_7 = V_0;
		NullCheck(L_7);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_8;
		L_8 = Transform_get_parent_m7D06005D9CB55F90F39D42F6A2AF9C7BC80745C9(L_7, /*hidden argument*/NULL);
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_9;
		L_9 = Object_op_Implicit_mC8214E4F028CC2F036CC82BDB81D102A02893499(L_8, /*hidden argument*/NULL);
		if (!L_9)
		{
			goto IL_0078;
		}
	}
	{
		int32_t L_10 = V_1;
		if ((((int32_t)L_10) <= ((int32_t)0)))
		{
			goto IL_0078;
		}
	}
	{
		// m_Lengths[index - 1] = (currentTransform.position - currentTransform.parent.position).magnitude;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_11 = __this->get_m_Lengths_6();
		int32_t L_12 = V_1;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_13 = V_0;
		NullCheck(L_13);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_14;
		L_14 = Transform_get_position_m40A8A9895568D56FFC687B57F30E8D53CB5EA341(L_13, /*hidden argument*/NULL);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_15 = V_0;
		NullCheck(L_15);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_16;
		L_16 = Transform_get_parent_m7D06005D9CB55F90F39D42F6A2AF9C7BC80745C9(L_15, /*hidden argument*/NULL);
		NullCheck(L_16);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_17;
		L_17 = Transform_get_position_m40A8A9895568D56FFC687B57F30E8D53CB5EA341(L_16, /*hidden argument*/NULL);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_18;
		L_18 = Vector3_op_Subtraction_m2725C96965D5C0B1F9715797E51762B13A5FED58_inline(L_14, L_17, /*hidden argument*/NULL);
		V_2 = L_18;
		float L_19;
		L_19 = Vector3_get_magnitude_mDDD40612220D8104E77E993E18A101A69A944991((Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E *)(&V_2), /*hidden argument*/NULL);
		NullCheck(L_11);
		(L_11)->SetAt(static_cast<il2cpp_array_size_t>(((int32_t)il2cpp_codegen_subtract((int32_t)L_12, (int32_t)1))), (float)L_19);
	}

IL_0078:
	{
		// currentTransform = currentTransform.parent;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_20 = V_0;
		NullCheck(L_20);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_21;
		L_21 = Transform_get_parent_m7D06005D9CB55F90F39D42F6A2AF9C7BC80745C9(L_20, /*hidden argument*/NULL);
		V_0 = L_21;
		// --index;
		int32_t L_22 = V_1;
		V_1 = ((int32_t)il2cpp_codegen_subtract((int32_t)L_22, (int32_t)1));
	}

IL_0083:
	{
		// while (currentTransform && index >= 0)
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_23 = V_0;
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_24;
		L_24 = Object_op_Implicit_mC8214E4F028CC2F036CC82BDB81D102A02893499(L_23, /*hidden argument*/NULL);
		if (!L_24)
		{
			goto IL_008f;
		}
	}
	{
		int32_t L_25 = V_1;
		if ((((int32_t)L_25) >= ((int32_t)0)))
		{
			goto IL_003f;
		}
	}

IL_008f:
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.IKChain2D::RestoreDefaultPose(System.Boolean)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKChain2D_RestoreDefaultPose_m9078C5D10EB72B9F01682D9EE0419BCEBCD61D4C (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, bool ___targetRotationIsConstrained0, const RuntimeMethod* method)
{
	int32_t V_0 = 0;
	int32_t V_1 = 0;
	int32_t G_B3_0 = 0;
	{
		// var count = targetRotationIsConstrained ? transformCount : transformCount-1;
		bool L_0 = ___targetRotationIsConstrained0;
		if (L_0)
		{
			goto IL_000d;
		}
	}
	{
		int32_t L_1;
		L_1 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		G_B3_0 = ((int32_t)il2cpp_codegen_subtract((int32_t)L_1, (int32_t)1));
		goto IL_0013;
	}

IL_000d:
	{
		int32_t L_2;
		L_2 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		G_B3_0 = L_2;
	}

IL_0013:
	{
		V_0 = G_B3_0;
		// for (int i = 0; i < count; ++i)
		V_1 = 0;
		goto IL_0035;
	}

IL_0018:
	{
		// m_Transforms[i].localRotation = m_DefaultLocalRotations[i];
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_3 = __this->get_m_Transforms_3();
		int32_t L_4 = V_1;
		NullCheck(L_3);
		int32_t L_5 = L_4;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_6 = (L_3)->GetAt(static_cast<il2cpp_array_size_t>(L_5));
		QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6* L_7 = __this->get_m_DefaultLocalRotations_4();
		int32_t L_8 = V_1;
		NullCheck(L_7);
		int32_t L_9 = L_8;
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_10 = (L_7)->GetAt(static_cast<il2cpp_array_size_t>(L_9));
		NullCheck(L_6);
		Transform_set_localRotation_m1A9101457EC4653AFC93FCC4065A29F2C78FA62C(L_6, L_10, /*hidden argument*/NULL);
		// for (int i = 0; i < count; ++i)
		int32_t L_11 = V_1;
		V_1 = ((int32_t)il2cpp_codegen_add((int32_t)L_11, (int32_t)1));
	}

IL_0035:
	{
		// for (int i = 0; i < count; ++i)
		int32_t L_12 = V_1;
		int32_t L_13 = V_0;
		if ((((int32_t)L_12) < ((int32_t)L_13)))
		{
			goto IL_0018;
		}
	}
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.IKChain2D::StoreLocalRotations()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKChain2D_StoreLocalRotations_m7E529365BE433D59BB1D2A4282B4B21B1DC4E400 (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method)
{
	int32_t V_0 = 0;
	{
		// for (int i = 0; i < m_Transforms.Length; ++i)
		V_0 = 0;
		goto IL_0021;
	}

IL_0004:
	{
		// m_StoredLocalRotations[i] = m_Transforms[i].localRotation;
		QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6* L_0 = __this->get_m_StoredLocalRotations_5();
		int32_t L_1 = V_0;
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_2 = __this->get_m_Transforms_3();
		int32_t L_3 = V_0;
		NullCheck(L_2);
		int32_t L_4 = L_3;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_5 = (L_2)->GetAt(static_cast<il2cpp_array_size_t>(L_4));
		NullCheck(L_5);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_6;
		L_6 = Transform_get_localRotation_mA6472AE7509D762965275D79B645A14A9CCF5BE5(L_5, /*hidden argument*/NULL);
		NullCheck(L_0);
		(L_0)->SetAt(static_cast<il2cpp_array_size_t>(L_1), (Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4 )L_6);
		// for (int i = 0; i < m_Transforms.Length; ++i)
		int32_t L_7 = V_0;
		V_0 = ((int32_t)il2cpp_codegen_add((int32_t)L_7, (int32_t)1));
	}

IL_0021:
	{
		// for (int i = 0; i < m_Transforms.Length; ++i)
		int32_t L_8 = V_0;
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_9 = __this->get_m_Transforms_3();
		NullCheck(L_9);
		if ((((int32_t)L_8) < ((int32_t)((int32_t)((int32_t)(((RuntimeArray*)L_9)->max_length))))))
		{
			goto IL_0004;
		}
	}
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.IKChain2D::BlendFkToIk(System.Single,System.Boolean)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKChain2D_BlendFkToIk_m45CA3EF8F3AE14674F913AF9F38A7BD3E42AEBA8 (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, float ___finalWeight0, bool ___targetRotationIsConstrained1, const RuntimeMethod* method)
{
	int32_t V_0 = 0;
	int32_t V_1 = 0;
	int32_t G_B3_0 = 0;
	{
		// var count = targetRotationIsConstrained ? transformCount : transformCount-1;
		bool L_0 = ___targetRotationIsConstrained1;
		if (L_0)
		{
			goto IL_000d;
		}
	}
	{
		int32_t L_1;
		L_1 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		G_B3_0 = ((int32_t)il2cpp_codegen_subtract((int32_t)L_1, (int32_t)1));
		goto IL_0013;
	}

IL_000d:
	{
		int32_t L_2;
		L_2 = IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline(__this, /*hidden argument*/NULL);
		G_B3_0 = L_2;
	}

IL_0013:
	{
		V_0 = G_B3_0;
		// for (int i = 0; i < count; ++i)
		V_1 = 0;
		goto IL_0048;
	}

IL_0018:
	{
		// m_Transforms[i].localRotation = Quaternion.Slerp(m_StoredLocalRotations[i], m_Transforms[i].localRotation, finalWeight);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_3 = __this->get_m_Transforms_3();
		int32_t L_4 = V_1;
		NullCheck(L_3);
		int32_t L_5 = L_4;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_6 = (L_3)->GetAt(static_cast<il2cpp_array_size_t>(L_5));
		QuaternionU5BU5D_t584B1CC68E95071898E32F34DB2CC1E4A726FAA6* L_7 = __this->get_m_StoredLocalRotations_5();
		int32_t L_8 = V_1;
		NullCheck(L_7);
		int32_t L_9 = L_8;
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_10 = (L_7)->GetAt(static_cast<il2cpp_array_size_t>(L_9));
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_11 = __this->get_m_Transforms_3();
		int32_t L_12 = V_1;
		NullCheck(L_11);
		int32_t L_13 = L_12;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_14 = (L_11)->GetAt(static_cast<il2cpp_array_size_t>(L_13));
		NullCheck(L_14);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_15;
		L_15 = Transform_get_localRotation_mA6472AE7509D762965275D79B645A14A9CCF5BE5(L_14, /*hidden argument*/NULL);
		float L_16 = ___finalWeight0;
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_17;
		L_17 = Quaternion_Slerp_m6D2BD18286254E28D2288B51962EC71F85C7B5C8(L_10, L_15, L_16, /*hidden argument*/NULL);
		NullCheck(L_6);
		Transform_set_localRotation_m1A9101457EC4653AFC93FCC4065A29F2C78FA62C(L_6, L_17, /*hidden argument*/NULL);
		// for (int i = 0; i < count; ++i)
		int32_t L_18 = V_1;
		V_1 = ((int32_t)il2cpp_codegen_add((int32_t)L_18, (int32_t)1));
	}

IL_0048:
	{
		// for (int i = 0; i < count; ++i)
		int32_t L_19 = V_1;
		int32_t L_20 = V_0;
		if ((((int32_t)L_19) < ((int32_t)L_20)))
		{
			goto IL_0018;
		}
	}
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.IKChain2D::.ctor()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKChain2D__ctor_m6551D974C5CCD2BC3BE58B13BB2E2513A66CC620 (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method)
{
	{
		Object__ctor_m88880E0413421D13FD95325EDCE231707CE1F405(__this, /*hidden argument*/NULL);
		return;
	}
}
#ifdef __clang__
#pragma clang diagnostic pop
#endif
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Winvalid-offsetof"
#pragma clang diagnostic ignored "-Wunused-variable"
#endif
// System.Single UnityEngine.U2D.IK.IKManager2D::get_weight()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR float IKManager2D_get_weight_m9C5AA621D970FADB235FD35E9B31F6BB1E2DFF00 (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Weight; }
		float L_0 = __this->get_m_Weight_5();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.IKManager2D::set_weight(System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_set_weight_m62E7130274C1CC9C9CED5B07B8C88FA78EF7E9D3 (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, float ___value0, const RuntimeMethod* method)
{
	{
		// set { m_Weight = Mathf.Clamp01(value); }
		float L_0 = ___value0;
		float L_1;
		L_1 = Mathf_Clamp01_m2296D75F0F1292D5C8181C57007A1CA45F440C4C(L_0, /*hidden argument*/NULL);
		__this->set_m_Weight_5(L_1);
		// set { m_Weight = Mathf.Clamp01(value); }
		return;
	}
}
// System.Collections.Generic.List`1<UnityEngine.U2D.IK.Solver2D> UnityEngine.U2D.IK.IKManager2D::get_solvers()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * IKManager2D_get_solvers_m35D16ED777FE441C5706DDBA4000CF8506F06893 (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Solvers; }
		List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * L_0 = __this->get_m_Solvers_4();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.IKManager2D::OnValidate()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_OnValidate_mC5ABBFFA8CFDE1530D605B789E48951EF6F092C6 (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, const RuntimeMethod* method)
{
	{
		// m_Weight = Mathf.Clamp01(m_Weight);
		float L_0 = __this->get_m_Weight_5();
		float L_1;
		L_1 = Mathf_Clamp01_m2296D75F0F1292D5C8181C57007A1CA45F440C4C(L_0, /*hidden argument*/NULL);
		__this->set_m_Weight_5(L_1);
		// OnEditorDataValidate();
		IKManager2D_OnEditorDataValidate_m314875943C56E4D3937EB09D21567FC75A8A334B(__this, /*hidden argument*/NULL);
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.IKManager2D::OnEnable()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_OnEnable_m858A0B4B94345538EE3F0EA4CAF5058EFF4E14EA (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, const RuntimeMethod* method)
{
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.IKManager2D::Reset()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_Reset_mA34497CB3DA73360DDF40B246FA5D46D7FE2483D (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, const RuntimeMethod* method)
{
	{
		// FindChildSolvers();
		IKManager2D_FindChildSolvers_m7EDD5127BA852896F46E5C4D76447DAEF9022064(__this, /*hidden argument*/NULL);
		// OnEditorDataValidate();
		IKManager2D_OnEditorDataValidate_m314875943C56E4D3937EB09D21567FC75A8A334B(__this, /*hidden argument*/NULL);
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.IKManager2D::FindChildSolvers()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_FindChildSolvers_m7EDD5127BA852896F46E5C4D76447DAEF9022064 (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Component_GetComponentInParent_TisIKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510_m94867AA44F7B27FAA1795DB215F8C832DF9EE0D5_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Component_GetComponentsInChildren_TisSolver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6_m16C798614AE57E2DA830AAF2CAFA405FA5B7EDA2_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Enumerator_Dispose_mC2D67A1ED0D450AD54A905F9EF34E62B868B0896_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Enumerator_MoveNext_m049CFDB39DDCB7B3ABC594574C3843EAF9A72C05_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Enumerator_get_Current_m1539A08E25F713882E7B4A29E3FC618F5890C42F_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1_Clear_m44EA024D005005EE4938BE9BE0E9E5C97337166E_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1_GetEnumerator_m37365AAB52AECA923EFAE4D6398AD6D88D015F72_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1__ctor_m86F667E44E8BE415B5D35272D407953C5E573706_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479_il2cpp_TypeInfo_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * V_0 = NULL;
	Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538  V_1;
	memset((&V_1), 0, sizeof(V_1));
	Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * V_2 = NULL;
	Exception_t * __last_unhandled_exception = 0;
	il2cpp::utils::ExceptionSupportStack<int32_t, 1> __leave_targets;
	{
		// m_Solvers.Clear();
		List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * L_0 = __this->get_m_Solvers_4();
		NullCheck(L_0);
		List_1_Clear_m44EA024D005005EE4938BE9BE0E9E5C97337166E(L_0, /*hidden argument*/List_1_Clear_m44EA024D005005EE4938BE9BE0E9E5C97337166E_RuntimeMethod_var);
		// List<Solver2D> solvers = new List<Solver2D>();
		List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * L_1 = (List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 *)il2cpp_codegen_object_new(List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479_il2cpp_TypeInfo_var);
		List_1__ctor_m86F667E44E8BE415B5D35272D407953C5E573706(L_1, /*hidden argument*/List_1__ctor_m86F667E44E8BE415B5D35272D407953C5E573706_RuntimeMethod_var);
		V_0 = L_1;
		// transform.GetComponentsInChildren<Solver2D>(true, solvers);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_2;
		L_2 = Component_get_transform_mE8496EBC45BEB1BADB5F314960F1DF1C952FA11F(__this, /*hidden argument*/NULL);
		List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * L_3 = V_0;
		NullCheck(L_2);
		Component_GetComponentsInChildren_TisSolver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6_m16C798614AE57E2DA830AAF2CAFA405FA5B7EDA2(L_2, (bool)1, L_3, /*hidden argument*/Component_GetComponentsInChildren_TisSolver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6_m16C798614AE57E2DA830AAF2CAFA405FA5B7EDA2_RuntimeMethod_var);
		// foreach (Solver2D solver in solvers)
		List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * L_4 = V_0;
		NullCheck(L_4);
		Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538  L_5;
		L_5 = List_1_GetEnumerator_m37365AAB52AECA923EFAE4D6398AD6D88D015F72(L_4, /*hidden argument*/List_1_GetEnumerator_m37365AAB52AECA923EFAE4D6398AD6D88D015F72_RuntimeMethod_var);
		V_1 = L_5;
	}

IL_0025:
	try
	{ // begin try (depth: 1)
		{
			goto IL_0044;
		}

IL_0027:
		{
			// foreach (Solver2D solver in solvers)
			Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * L_6;
			L_6 = Enumerator_get_Current_m1539A08E25F713882E7B4A29E3FC618F5890C42F_inline((Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538 *)(&V_1), /*hidden argument*/Enumerator_get_Current_m1539A08E25F713882E7B4A29E3FC618F5890C42F_RuntimeMethod_var);
			V_2 = L_6;
			// if (solver.GetComponentInParent<IKManager2D>() == this)
			Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * L_7 = V_2;
			NullCheck(L_7);
			IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * L_8;
			L_8 = Component_GetComponentInParent_TisIKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510_m94867AA44F7B27FAA1795DB215F8C832DF9EE0D5(L_7, /*hidden argument*/Component_GetComponentInParent_TisIKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510_m94867AA44F7B27FAA1795DB215F8C832DF9EE0D5_RuntimeMethod_var);
			IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
			bool L_9;
			L_9 = Object_op_Equality_mEE9EC7EB5C7DC3E95B94AB904E1986FC4D566D54(L_8, __this, /*hidden argument*/NULL);
			if (!L_9)
			{
				goto IL_0044;
			}
		}

IL_003d:
		{
			// AddSolver(solver);
			Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * L_10 = V_2;
			IKManager2D_AddSolver_mC886398746EFCF678F39589E34AC602C5DA2BAEA(__this, L_10, /*hidden argument*/NULL);
		}

IL_0044:
		{
			// foreach (Solver2D solver in solvers)
			bool L_11;
			L_11 = Enumerator_MoveNext_m049CFDB39DDCB7B3ABC594574C3843EAF9A72C05((Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538 *)(&V_1), /*hidden argument*/Enumerator_MoveNext_m049CFDB39DDCB7B3ABC594574C3843EAF9A72C05_RuntimeMethod_var);
			if (L_11)
			{
				goto IL_0027;
			}
		}

IL_004d:
		{
			IL2CPP_LEAVE(0x5D, FINALLY_004f);
		}
	} // end try (depth: 1)
	catch(Il2CppExceptionWrapper& e)
	{
		__last_unhandled_exception = (Exception_t *)e.ex;
		goto FINALLY_004f;
	}

FINALLY_004f:
	{ // begin finally (depth: 1)
		Enumerator_Dispose_mC2D67A1ED0D450AD54A905F9EF34E62B868B0896((Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538 *)(&V_1), /*hidden argument*/Enumerator_Dispose_mC2D67A1ED0D450AD54A905F9EF34E62B868B0896_RuntimeMethod_var);
		IL2CPP_END_FINALLY(79)
	} // end finally (depth: 1)
	IL2CPP_CLEANUP(79)
	{
		IL2CPP_RETHROW_IF_UNHANDLED(Exception_t *)
		IL2CPP_JUMP_TBL(0x5D, IL_005d)
	}

IL_005d:
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.IKManager2D::AddSolver(UnityEngine.U2D.IK.Solver2D)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_AddSolver_mC886398746EFCF678F39589E34AC602C5DA2BAEA (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * ___solver0, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1_Add_mA8ADA8666BA41E6EB329B7E4F3E3A41A23FCB103_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1_Contains_mFCC76F5D887C6FE8A803523360E51659BE17C1ED_RuntimeMethod_var);
		s_Il2CppMethodInitialized = true;
	}
	{
		// if (!m_Solvers.Contains(solver))
		List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * L_0 = __this->get_m_Solvers_4();
		Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * L_1 = ___solver0;
		NullCheck(L_0);
		bool L_2;
		L_2 = List_1_Contains_mFCC76F5D887C6FE8A803523360E51659BE17C1ED(L_0, L_1, /*hidden argument*/List_1_Contains_mFCC76F5D887C6FE8A803523360E51659BE17C1ED_RuntimeMethod_var);
		if (L_2)
		{
			goto IL_0020;
		}
	}
	{
		// m_Solvers.Add(solver);
		List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * L_3 = __this->get_m_Solvers_4();
		Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * L_4 = ___solver0;
		NullCheck(L_3);
		List_1_Add_mA8ADA8666BA41E6EB329B7E4F3E3A41A23FCB103(L_3, L_4, /*hidden argument*/List_1_Add_mA8ADA8666BA41E6EB329B7E4F3E3A41A23FCB103_RuntimeMethod_var);
		// AddSolverEditorData();
		IKManager2D_AddSolverEditorData_m5F1BC9F27CBEEDACF3C71D2381887125D5AC22B7(__this, /*hidden argument*/NULL);
	}

IL_0020:
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.IKManager2D::RemoveSolver(UnityEngine.U2D.IK.Solver2D)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_RemoveSolver_mC4CE591F88DBA76AAB027D1D2BE6EA3EE688530E (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * ___solver0, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1_Remove_m503270EF64E8E4C3B549B048BE4B30D138997146_RuntimeMethod_var);
		s_Il2CppMethodInitialized = true;
	}
	{
		// RemoveSolverEditorData(solver);
		Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * L_0 = ___solver0;
		IKManager2D_RemoveSolverEditorData_m9C3936EEBDB0EC019E5AA84F050EF12D0960A232(__this, L_0, /*hidden argument*/NULL);
		// m_Solvers.Remove(solver);
		List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * L_1 = __this->get_m_Solvers_4();
		Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * L_2 = ___solver0;
		NullCheck(L_1);
		bool L_3;
		L_3 = List_1_Remove_m503270EF64E8E4C3B549B048BE4B30D138997146(L_1, L_2, /*hidden argument*/List_1_Remove_m503270EF64E8E4C3B549B048BE4B30D138997146_RuntimeMethod_var);
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.IKManager2D::UpdateManager()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_UpdateManager_m81A83CD039BC8ACA25E2A2A69F784840BF38F783 (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Enumerator_Dispose_mC2D67A1ED0D450AD54A905F9EF34E62B868B0896_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Enumerator_MoveNext_m049CFDB39DDCB7B3ABC594574C3843EAF9A72C05_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Enumerator_get_Current_m1539A08E25F713882E7B4A29E3FC618F5890C42F_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1_GetEnumerator_m37365AAB52AECA923EFAE4D6398AD6D88D015F72_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538  V_0;
	memset((&V_0), 0, sizeof(V_0));
	Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * V_1 = NULL;
	Exception_t * __last_unhandled_exception = 0;
	il2cpp::utils::ExceptionSupportStack<int32_t, 1> __leave_targets;
	{
		// foreach (var solver in m_Solvers)
		List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * L_0 = __this->get_m_Solvers_4();
		NullCheck(L_0);
		Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538  L_1;
		L_1 = List_1_GetEnumerator_m37365AAB52AECA923EFAE4D6398AD6D88D015F72(L_0, /*hidden argument*/List_1_GetEnumerator_m37365AAB52AECA923EFAE4D6398AD6D88D015F72_RuntimeMethod_var);
		V_0 = L_1;
	}

IL_000c:
	try
	{ // begin try (depth: 1)
		{
			goto IL_0041;
		}

IL_000e:
		{
			// foreach (var solver in m_Solvers)
			Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * L_2;
			L_2 = Enumerator_get_Current_m1539A08E25F713882E7B4A29E3FC618F5890C42F_inline((Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538 *)(&V_0), /*hidden argument*/Enumerator_get_Current_m1539A08E25F713882E7B4A29E3FC618F5890C42F_RuntimeMethod_var);
			V_1 = L_2;
			// if (solver == null || !solver.isActiveAndEnabled)
			Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * L_3 = V_1;
			IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
			bool L_4;
			L_4 = Object_op_Equality_mEE9EC7EB5C7DC3E95B94AB904E1986FC4D566D54(L_3, (Object_tF2F3778131EFF286AF62B7B013A170F95A91571A *)NULL, /*hidden argument*/NULL);
			if (L_4)
			{
				goto IL_0041;
			}
		}

IL_001f:
		{
			Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * L_5 = V_1;
			NullCheck(L_5);
			bool L_6;
			L_6 = Behaviour_get_isActiveAndEnabled_mDD843C0271D492C1E08E0F8DEE8B6F1CFA951BFA(L_5, /*hidden argument*/NULL);
			if (!L_6)
			{
				goto IL_0041;
			}
		}

IL_0027:
		{
			// if (!solver.isValid)
			Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * L_7 = V_1;
			NullCheck(L_7);
			bool L_8;
			L_8 = Solver2D_get_isValid_m180D4F0261F10FD3058E9A3D8D418BA098A8B54B(L_7, /*hidden argument*/NULL);
			if (L_8)
			{
				goto IL_0035;
			}
		}

IL_002f:
		{
			// solver.Initialize();
			Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * L_9 = V_1;
			NullCheck(L_9);
			Solver2D_Initialize_m1C02ACEDC29FC68935739489E69BE3E17F22A3ED(L_9, /*hidden argument*/NULL);
		}

IL_0035:
		{
			// solver.UpdateIK(weight);
			Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * L_10 = V_1;
			float L_11;
			L_11 = IKManager2D_get_weight_m9C5AA621D970FADB235FD35E9B31F6BB1E2DFF00_inline(__this, /*hidden argument*/NULL);
			NullCheck(L_10);
			Solver2D_UpdateIK_m91BF63A9B6B1A3D63FE7C3E5A0FF050A0152B654(L_10, L_11, /*hidden argument*/NULL);
		}

IL_0041:
		{
			// foreach (var solver in m_Solvers)
			bool L_12;
			L_12 = Enumerator_MoveNext_m049CFDB39DDCB7B3ABC594574C3843EAF9A72C05((Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538 *)(&V_0), /*hidden argument*/Enumerator_MoveNext_m049CFDB39DDCB7B3ABC594574C3843EAF9A72C05_RuntimeMethod_var);
			if (L_12)
			{
				goto IL_000e;
			}
		}

IL_004a:
		{
			IL2CPP_LEAVE(0x5A, FINALLY_004c);
		}
	} // end try (depth: 1)
	catch(Il2CppExceptionWrapper& e)
	{
		__last_unhandled_exception = (Exception_t *)e.ex;
		goto FINALLY_004c;
	}

FINALLY_004c:
	{ // begin finally (depth: 1)
		Enumerator_Dispose_mC2D67A1ED0D450AD54A905F9EF34E62B868B0896((Enumerator_tDFBA6776A99D581509B5EFCC3806E3038FBF5538 *)(&V_0), /*hidden argument*/Enumerator_Dispose_mC2D67A1ED0D450AD54A905F9EF34E62B868B0896_RuntimeMethod_var);
		IL2CPP_END_FINALLY(76)
	} // end finally (depth: 1)
	IL2CPP_CLEANUP(76)
	{
		IL2CPP_RETHROW_IF_UNHANDLED(Exception_t *)
		IL2CPP_JUMP_TBL(0x5A, IL_005a)
	}

IL_005a:
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.IKManager2D::LateUpdate()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_LateUpdate_m7B22FDC10F0B298F89D2BE620BC7FA26CB52A7F0 (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, const RuntimeMethod* method)
{
	{
		// UpdateManager();
		IKManager2D_UpdateManager_m81A83CD039BC8ACA25E2A2A69F784840BF38F783(__this, /*hidden argument*/NULL);
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.IKManager2D::OnEditorDataValidate()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_OnEditorDataValidate_m314875943C56E4D3937EB09D21567FC75A8A334B (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, const RuntimeMethod* method)
{
	{
		// void OnEditorDataValidate(){}
		return;
	}
}
// System.Void UnityEngine.U2D.IK.IKManager2D::AddSolverEditorData()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_AddSolverEditorData_m5F1BC9F27CBEEDACF3C71D2381887125D5AC22B7 (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, const RuntimeMethod* method)
{
	{
		// void AddSolverEditorData(){}
		return;
	}
}
// System.Void UnityEngine.U2D.IK.IKManager2D::RemoveSolverEditorData(UnityEngine.U2D.IK.Solver2D)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D_RemoveSolverEditorData_m9C3936EEBDB0EC019E5AA84F050EF12D0960A232 (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * ___solver0, const RuntimeMethod* method)
{
	{
		// void RemoveSolverEditorData(Solver2D solver){}
		return;
	}
}
// System.Void UnityEngine.U2D.IK.IKManager2D::.ctor()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKManager2D__ctor_m002A5C6D45E373738321F8ABBCF9C794F41D3A0C (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1__ctor_m86F667E44E8BE415B5D35272D407953C5E573706_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	{
		// private List<Solver2D> m_Solvers = new List<Solver2D>();
		List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 * L_0 = (List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479 *)il2cpp_codegen_object_new(List_1_t5AD9FC44D7FFD5B7D3AE07112E73513D3F17C479_il2cpp_TypeInfo_var);
		List_1__ctor_m86F667E44E8BE415B5D35272D407953C5E573706(L_0, /*hidden argument*/List_1__ctor_m86F667E44E8BE415B5D35272D407953C5E573706_RuntimeMethod_var);
		__this->set_m_Solvers_4(L_0);
		// private float m_Weight = 1f;
		__this->set_m_Weight_5((1.0f));
		MonoBehaviour__ctor_mC0995D847F6A95B1A553652636C38A2AA8B13BED(__this, /*hidden argument*/NULL);
		return;
	}
}
#ifdef __clang__
#pragma clang diagnostic pop
#endif
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Winvalid-offsetof"
#pragma clang diagnostic ignored "-Wunused-variable"
#endif
// System.Boolean UnityEngine.U2D.IK.IKUtility::IsDescendentOf(UnityEngine.Transform,UnityEngine.Transform)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool IKUtility_IsDescendentOf_m62549D8A1C1F80AA41765ACB55D65BEDD5F785D4 (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * ___transform0, Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * ___ancestor1, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * V_0 = NULL;
	{
		// Transform currentParent = transform.parent;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_0 = ___transform0;
		NullCheck(L_0);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_1;
		L_1 = Transform_get_parent_m7D06005D9CB55F90F39D42F6A2AF9C7BC80745C9(L_0, /*hidden argument*/NULL);
		V_0 = L_1;
		goto IL_001b;
	}

IL_0009:
	{
		// if (currentParent == ancestor)
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_2 = V_0;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_3 = ___ancestor1;
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_4;
		L_4 = Object_op_Equality_mEE9EC7EB5C7DC3E95B94AB904E1986FC4D566D54(L_2, L_3, /*hidden argument*/NULL);
		if (!L_4)
		{
			goto IL_0014;
		}
	}
	{
		// return true;
		return (bool)1;
	}

IL_0014:
	{
		// currentParent = currentParent.parent;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_5 = V_0;
		NullCheck(L_5);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_6;
		L_6 = Transform_get_parent_m7D06005D9CB55F90F39D42F6A2AF9C7BC80745C9(L_5, /*hidden argument*/NULL);
		V_0 = L_6;
	}

IL_001b:
	{
		// while (currentParent)
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_7 = V_0;
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_8;
		L_8 = Object_op_Implicit_mC8214E4F028CC2F036CC82BDB81D102A02893499(L_7, /*hidden argument*/NULL);
		if (L_8)
		{
			goto IL_0009;
		}
	}
	{
		// return false;
		return (bool)0;
	}
}
// System.Int32 UnityEngine.U2D.IK.IKUtility::GetAncestorCount(UnityEngine.Transform)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR int32_t IKUtility_GetAncestorCount_m66BF38868832D92A4DC53F9948248E2695F12410 (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * ___transform0, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	int32_t V_0 = 0;
	{
		// int ancestorCount = 0;
		V_0 = 0;
		goto IL_0010;
	}

IL_0004:
	{
		// ++ancestorCount;
		int32_t L_0 = V_0;
		V_0 = ((int32_t)il2cpp_codegen_add((int32_t)L_0, (int32_t)1));
		// transform = transform.parent;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_1 = ___transform0;
		NullCheck(L_1);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_2;
		L_2 = Transform_get_parent_m7D06005D9CB55F90F39D42F6A2AF9C7BC80745C9(L_1, /*hidden argument*/NULL);
		___transform0 = L_2;
	}

IL_0010:
	{
		// while (transform.parent)
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_3 = ___transform0;
		NullCheck(L_3);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_4;
		L_4 = Transform_get_parent_m7D06005D9CB55F90F39D42F6A2AF9C7BC80745C9(L_3, /*hidden argument*/NULL);
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_5;
		L_5 = Object_op_Implicit_mC8214E4F028CC2F036CC82BDB81D102A02893499(L_4, /*hidden argument*/NULL);
		if (L_5)
		{
			goto IL_0004;
		}
	}
	{
		// return ancestorCount;
		int32_t L_6 = V_0;
		return L_6;
	}
}
// System.Int32 UnityEngine.U2D.IK.IKUtility::GetMaxChainCount(UnityEngine.U2D.IK.IKChain2D)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR int32_t IKUtility_GetMaxChainCount_m47D63524E83FC27958E44667D87A19DA76EE5C5D (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * ___chain0, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	int32_t V_0 = 0;
	{
		// int maxChainCount = 0;
		V_0 = 0;
		// if (chain.effector)
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_0 = ___chain0;
		NullCheck(L_0);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_1;
		L_1 = IKChain2D_get_effector_m4C8436D4F6EF2A06DE5D4E852BA7C99D4D0E9046_inline(L_0, /*hidden argument*/NULL);
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_2;
		L_2 = Object_op_Implicit_mC8214E4F028CC2F036CC82BDB81D102A02893499(L_1, /*hidden argument*/NULL);
		if (!L_2)
		{
			goto IL_001d;
		}
	}
	{
		// maxChainCount = GetAncestorCount(chain.effector) + 1;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_3 = ___chain0;
		NullCheck(L_3);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_4;
		L_4 = IKChain2D_get_effector_m4C8436D4F6EF2A06DE5D4E852BA7C99D4D0E9046_inline(L_3, /*hidden argument*/NULL);
		int32_t L_5;
		L_5 = IKUtility_GetAncestorCount_m66BF38868832D92A4DC53F9948248E2695F12410(L_4, /*hidden argument*/NULL);
		V_0 = ((int32_t)il2cpp_codegen_add((int32_t)L_5, (int32_t)1));
	}

IL_001d:
	{
		// return maxChainCount;
		int32_t L_6 = V_0;
		return L_6;
	}
}
// System.Void UnityEngine.U2D.IK.IKUtility::.ctor()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void IKUtility__ctor_m1AD7446D6DFC54EABED89F1A28E617172F8561E0 (IKUtility_t5432A6816929991EF2E73DC80923184DB10A32F4 * __this, const RuntimeMethod* method)
{
	{
		Object__ctor_m88880E0413421D13FD95325EDCE231707CE1F405(__this, /*hidden argument*/NULL);
		return;
	}
}
#ifdef __clang__
#pragma clang diagnostic pop
#endif
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Winvalid-offsetof"
#pragma clang diagnostic ignored "-Wunused-variable"
#endif
// System.Boolean UnityEngine.U2D.IK.Limb::Solve(UnityEngine.Vector3,System.Single[],UnityEngine.Vector3[],System.Single[]&)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Limb_Solve_m972DC483BE62D28C354BB162A4418EA875CC117C (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___targetPosition0, SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* ___lengths1, Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* ___positions2, SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA** ___outAngles3, const RuntimeMethod* method)
{
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  V_0;
	memset((&V_0), 0, sizeof(V_0));
	float V_1 = 0.0f;
	float V_2 = 0.0f;
	float V_3 = 0.0f;
	float V_4 = 0.0f;
	float V_5 = 0.0f;
	{
		// outAngles[0] = 0f;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA** L_0 = ___outAngles3;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_1 = *((SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA**)L_0);
		NullCheck(L_1);
		(L_1)->SetAt(static_cast<il2cpp_array_size_t>(0), (float)(0.0f));
		// outAngles[1] = 0f;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA** L_2 = ___outAngles3;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_3 = *((SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA**)L_2);
		NullCheck(L_3);
		(L_3)->SetAt(static_cast<il2cpp_array_size_t>(1), (float)(0.0f));
		// if (lengths[0] == 0f || lengths[1] == 0f)
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_4 = ___lengths1;
		NullCheck(L_4);
		int32_t L_5 = 0;
		float L_6 = (L_4)->GetAt(static_cast<il2cpp_array_size_t>(L_5));
		if ((((float)L_6) == ((float)(0.0f))))
		{
			goto IL_0026;
		}
	}
	{
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_7 = ___lengths1;
		NullCheck(L_7);
		int32_t L_8 = 1;
		float L_9 = (L_7)->GetAt(static_cast<il2cpp_array_size_t>(L_8));
		if ((!(((float)L_9) == ((float)(0.0f)))))
		{
			goto IL_0028;
		}
	}

IL_0026:
	{
		// return false;
		return (bool)0;
	}

IL_0028:
	{
		// Vector3 startToEnd = targetPosition - positions[0];
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_10 = ___targetPosition0;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_11 = ___positions2;
		NullCheck(L_11);
		int32_t L_12 = 0;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_13 = (L_11)->GetAt(static_cast<il2cpp_array_size_t>(L_12));
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_14;
		L_14 = Vector3_op_Subtraction_m2725C96965D5C0B1F9715797E51762B13A5FED58_inline(L_10, L_13, /*hidden argument*/NULL);
		V_0 = L_14;
		// float distanceMagnitude = startToEnd.magnitude;
		float L_15;
		L_15 = Vector3_get_magnitude_mDDD40612220D8104E77E993E18A101A69A944991((Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E *)(&V_0), /*hidden argument*/NULL);
		V_1 = L_15;
		// float sqrDistance = startToEnd.sqrMagnitude;
		float L_16;
		L_16 = Vector3_get_sqrMagnitude_mC567EE6DF411501A8FE1F23A0038862630B88249((Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E *)(&V_0), /*hidden argument*/NULL);
		// float sqrParentLength = (lengths[0] * lengths[0]);
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_17 = ___lengths1;
		NullCheck(L_17);
		int32_t L_18 = 0;
		float L_19 = (L_17)->GetAt(static_cast<il2cpp_array_size_t>(L_18));
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_20 = ___lengths1;
		NullCheck(L_20);
		int32_t L_21 = 0;
		float L_22 = (L_20)->GetAt(static_cast<il2cpp_array_size_t>(L_21));
		V_2 = ((float)il2cpp_codegen_multiply((float)L_19, (float)L_22));
		// float sqrTargetLength = (lengths[1] * lengths[1]);
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_23 = ___lengths1;
		NullCheck(L_23);
		int32_t L_24 = 1;
		float L_25 = (L_23)->GetAt(static_cast<il2cpp_array_size_t>(L_24));
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_26 = ___lengths1;
		NullCheck(L_26);
		int32_t L_27 = 1;
		float L_28 = (L_26)->GetAt(static_cast<il2cpp_array_size_t>(L_27));
		V_3 = ((float)il2cpp_codegen_multiply((float)L_25, (float)L_28));
		// float angle0Cos = (sqrDistance + sqrParentLength - sqrTargetLength) / (2f * lengths[0] * distanceMagnitude);
		float L_29 = L_16;
		float L_30 = V_2;
		float L_31 = V_3;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_32 = ___lengths1;
		NullCheck(L_32);
		int32_t L_33 = 0;
		float L_34 = (L_32)->GetAt(static_cast<il2cpp_array_size_t>(L_33));
		float L_35 = V_1;
		V_4 = ((float)((float)((float)il2cpp_codegen_subtract((float)((float)il2cpp_codegen_add((float)L_29, (float)L_30)), (float)L_31))/(float)((float)il2cpp_codegen_multiply((float)((float)il2cpp_codegen_multiply((float)(2.0f), (float)L_34)), (float)L_35))));
		// float angle1Cos = (sqrDistance - sqrParentLength - sqrTargetLength) / (2f * lengths[0] * lengths[1]);
		float L_36 = V_2;
		float L_37 = V_3;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_38 = ___lengths1;
		NullCheck(L_38);
		int32_t L_39 = 0;
		float L_40 = (L_38)->GetAt(static_cast<il2cpp_array_size_t>(L_39));
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_41 = ___lengths1;
		NullCheck(L_41);
		int32_t L_42 = 1;
		float L_43 = (L_41)->GetAt(static_cast<il2cpp_array_size_t>(L_42));
		V_5 = ((float)((float)((float)il2cpp_codegen_subtract((float)((float)il2cpp_codegen_subtract((float)L_29, (float)L_36)), (float)L_37))/(float)((float)il2cpp_codegen_multiply((float)((float)il2cpp_codegen_multiply((float)(2.0f), (float)L_40)), (float)L_43))));
		// if ((angle0Cos >= -1f && angle0Cos <= 1f) && (angle1Cos >= -1f && angle1Cos <= 1f))
		float L_44 = V_4;
		if ((!(((float)L_44) >= ((float)(-1.0f)))))
		{
			goto IL_00c2;
		}
	}
	{
		float L_45 = V_4;
		if ((!(((float)L_45) <= ((float)(1.0f)))))
		{
			goto IL_00c2;
		}
	}
	{
		float L_46 = V_5;
		if ((!(((float)L_46) >= ((float)(-1.0f)))))
		{
			goto IL_00c2;
		}
	}
	{
		float L_47 = V_5;
		if ((!(((float)L_47) <= ((float)(1.0f)))))
		{
			goto IL_00c2;
		}
	}
	{
		// outAngles[0] = Mathf.Acos(angle0Cos) * Mathf.Rad2Deg;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA** L_48 = ___outAngles3;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_49 = *((SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA**)L_48);
		float L_50 = V_4;
		float L_51;
		L_51 = acosf(L_50);
		NullCheck(L_49);
		(L_49)->SetAt(static_cast<il2cpp_array_size_t>(0), (float)((float)il2cpp_codegen_multiply((float)L_51, (float)(57.2957802f))));
		// outAngles[1] = Mathf.Acos(angle1Cos) * Mathf.Rad2Deg;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA** L_52 = ___outAngles3;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_53 = *((SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA**)L_52);
		float L_54 = V_5;
		float L_55;
		L_55 = acosf(L_54);
		NullCheck(L_53);
		(L_53)->SetAt(static_cast<il2cpp_array_size_t>(1), (float)((float)il2cpp_codegen_multiply((float)L_55, (float)(57.2957802f))));
	}

IL_00c2:
	{
		// return true;
		return (bool)1;
	}
}
#ifdef __clang__
#pragma clang diagnostic pop
#endif
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Winvalid-offsetof"
#pragma clang diagnostic ignored "-Wunused-variable"
#endif
// System.Boolean UnityEngine.U2D.IK.LimbSolver2D::get_flip()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool LimbSolver2D_get_flip_mFBD38C46874A7F08949B5A0302D0F2B6BBA08707 (LimbSolver2D_t7853B3E9E5644B3A9FE624BCF58FD4279E5D2611 * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Flip; }
		bool L_0 = __this->get_m_Flip_10();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.LimbSolver2D::set_flip(System.Boolean)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void LimbSolver2D_set_flip_m7443E0EE70067423B7E15454739D991CB6BA8D9A (LimbSolver2D_t7853B3E9E5644B3A9FE624BCF58FD4279E5D2611 * __this, bool ___value0, const RuntimeMethod* method)
{
	{
		// set { m_Flip = value; }
		bool L_0 = ___value0;
		__this->set_m_Flip_10(L_0);
		// set { m_Flip = value; }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.LimbSolver2D::DoInitialize()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void LimbSolver2D_DoInitialize_m9B227AF3EE7EF95B43440E79EB89066843F9D71B (LimbSolver2D_t7853B3E9E5644B3A9FE624BCF58FD4279E5D2611 * __this, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * G_B3_0 = NULL;
	IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * G_B1_0 = NULL;
	IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * G_B2_0 = NULL;
	int32_t G_B4_0 = 0;
	IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * G_B4_1 = NULL;
	{
		// m_Chain.transformCount = m_Chain.effector == null || IKUtility.GetAncestorCount(m_Chain.effector) < 2 ? 0 : 3;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_0 = __this->get_m_Chain_9();
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_1 = __this->get_m_Chain_9();
		NullCheck(L_1);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_2;
		L_2 = IKChain2D_get_effector_m4C8436D4F6EF2A06DE5D4E852BA7C99D4D0E9046_inline(L_1, /*hidden argument*/NULL);
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_3;
		L_3 = Object_op_Equality_mEE9EC7EB5C7DC3E95B94AB904E1986FC4D566D54(L_2, (Object_tF2F3778131EFF286AF62B7B013A170F95A91571A *)NULL, /*hidden argument*/NULL);
		G_B1_0 = L_0;
		if (L_3)
		{
			G_B3_0 = L_0;
			goto IL_002f;
		}
	}
	{
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_4 = __this->get_m_Chain_9();
		NullCheck(L_4);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_5;
		L_5 = IKChain2D_get_effector_m4C8436D4F6EF2A06DE5D4E852BA7C99D4D0E9046_inline(L_4, /*hidden argument*/NULL);
		int32_t L_6;
		L_6 = IKUtility_GetAncestorCount_m66BF38868832D92A4DC53F9948248E2695F12410(L_5, /*hidden argument*/NULL);
		G_B2_0 = G_B1_0;
		if ((((int32_t)L_6) < ((int32_t)2)))
		{
			G_B3_0 = G_B1_0;
			goto IL_002f;
		}
	}
	{
		G_B4_0 = 3;
		G_B4_1 = G_B2_0;
		goto IL_0030;
	}

IL_002f:
	{
		G_B4_0 = 0;
		G_B4_1 = G_B3_0;
	}

IL_0030:
	{
		NullCheck(G_B4_1);
		IKChain2D_set_transformCount_m71CA735D9E8E3E1FD01FCB2AF2B1A03074A04511(G_B4_1, G_B4_0, /*hidden argument*/NULL);
		// base.DoInitialize();
		Solver2D_DoInitialize_mDCE1B7D63FE599641A0634A66FD85993D5BE0265(__this, /*hidden argument*/NULL);
		// }
		return;
	}
}
// System.Int32 UnityEngine.U2D.IK.LimbSolver2D::GetChainCount()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR int32_t LimbSolver2D_GetChainCount_m1A66887522C4220AAC6B67C058EAB0777F2F5461 (LimbSolver2D_t7853B3E9E5644B3A9FE624BCF58FD4279E5D2611 * __this, const RuntimeMethod* method)
{
	{
		// return 1;
		return 1;
	}
}
// UnityEngine.U2D.IK.IKChain2D UnityEngine.U2D.IK.LimbSolver2D::GetChain(System.Int32)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * LimbSolver2D_GetChain_mE667E617107DF15290736582537457D148EA0C3C (LimbSolver2D_t7853B3E9E5644B3A9FE624BCF58FD4279E5D2611 * __this, int32_t ___index0, const RuntimeMethod* method)
{
	{
		// return m_Chain;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_0 = __this->get_m_Chain_9();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.LimbSolver2D::DoPrepare()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void LimbSolver2D_DoPrepare_mBE932A922E069AB00BBB1D43D17513D8B418DEEB (LimbSolver2D_t7853B3E9E5644B3A9FE624BCF58FD4279E5D2611 * __this, const RuntimeMethod* method)
{
	SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* V_0 = NULL;
	{
		// var lengths = m_Chain.lengths;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_0 = __this->get_m_Chain_9();
		NullCheck(L_0);
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_1;
		L_1 = IKChain2D_get_lengths_mF25A01AAA5E9A0C2D6E4B1F87F29FFF63468E75D(L_0, /*hidden argument*/NULL);
		V_0 = L_1;
		// m_Positions[0] = m_Chain.transforms[0].position;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_2 = __this->get_m_Positions_11();
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_3 = __this->get_m_Chain_9();
		NullCheck(L_3);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_4;
		L_4 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_3, /*hidden argument*/NULL);
		NullCheck(L_4);
		int32_t L_5 = 0;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_6 = (L_4)->GetAt(static_cast<il2cpp_array_size_t>(L_5));
		NullCheck(L_6);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_7;
		L_7 = Transform_get_position_m40A8A9895568D56FFC687B57F30E8D53CB5EA341(L_6, /*hidden argument*/NULL);
		NullCheck(L_2);
		(L_2)->SetAt(static_cast<il2cpp_array_size_t>(0), (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E )L_7);
		// m_Positions[1] = m_Chain.transforms[1].position;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_8 = __this->get_m_Positions_11();
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_9 = __this->get_m_Chain_9();
		NullCheck(L_9);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_10;
		L_10 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_9, /*hidden argument*/NULL);
		NullCheck(L_10);
		int32_t L_11 = 1;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_12 = (L_10)->GetAt(static_cast<il2cpp_array_size_t>(L_11));
		NullCheck(L_12);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_13;
		L_13 = Transform_get_position_m40A8A9895568D56FFC687B57F30E8D53CB5EA341(L_12, /*hidden argument*/NULL);
		NullCheck(L_8);
		(L_8)->SetAt(static_cast<il2cpp_array_size_t>(1), (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E )L_13);
		// m_Positions[2] = m_Chain.transforms[2].position;
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_14 = __this->get_m_Positions_11();
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_15 = __this->get_m_Chain_9();
		NullCheck(L_15);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_16;
		L_16 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_15, /*hidden argument*/NULL);
		NullCheck(L_16);
		int32_t L_17 = 2;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_18 = (L_16)->GetAt(static_cast<il2cpp_array_size_t>(L_17));
		NullCheck(L_18);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_19;
		L_19 = Transform_get_position_m40A8A9895568D56FFC687B57F30E8D53CB5EA341(L_18, /*hidden argument*/NULL);
		NullCheck(L_14);
		(L_14)->SetAt(static_cast<il2cpp_array_size_t>(2), (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E )L_19);
		// m_Lengths[0] = lengths[0];
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_20 = __this->get_m_Lengths_12();
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_21 = V_0;
		NullCheck(L_21);
		int32_t L_22 = 0;
		float L_23 = (L_21)->GetAt(static_cast<il2cpp_array_size_t>(L_22));
		NullCheck(L_20);
		(L_20)->SetAt(static_cast<il2cpp_array_size_t>(0), (float)L_23);
		// m_Lengths[1] = lengths[1];
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_24 = __this->get_m_Lengths_12();
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_25 = V_0;
		NullCheck(L_25);
		int32_t L_26 = 1;
		float L_27 = (L_25)->GetAt(static_cast<il2cpp_array_size_t>(L_26));
		NullCheck(L_24);
		(L_24)->SetAt(static_cast<il2cpp_array_size_t>(1), (float)L_27);
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.LimbSolver2D::DoUpdateIK(System.Collections.Generic.List`1<UnityEngine.Vector3>)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void LimbSolver2D_DoUpdateIK_mA69D30D60865E704661D4BF5FD6DFFFE62A893A3 (LimbSolver2D_t7853B3E9E5644B3A9FE624BCF58FD4279E5D2611 * __this, List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * ___effectorPositions0, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1_get_Item_m554804AC447B0BA1F93C64E863FF7DB0527AFED9_RuntimeMethod_var);
		s_Il2CppMethodInitialized = true;
	}
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  V_0;
	memset((&V_0), 0, sizeof(V_0));
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_1;
	memset((&V_1), 0, sizeof(V_1));
	float V_2 = 0.0f;
	float G_B5_0 = 0.0f;
	{
		// Vector3 effectorPosition = effectorPositions[0];
		List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * L_0 = ___effectorPositions0;
		NullCheck(L_0);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_1;
		L_1 = List_1_get_Item_m554804AC447B0BA1F93C64E863FF7DB0527AFED9_inline(L_0, 0, /*hidden argument*/List_1_get_Item_m554804AC447B0BA1F93C64E863FF7DB0527AFED9_RuntimeMethod_var);
		V_0 = L_1;
		// Vector2 effectorLocalPosition2D = m_Chain.transforms[0].InverseTransformPoint(effectorPosition);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_2 = __this->get_m_Chain_9();
		NullCheck(L_2);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_3;
		L_3 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_2, /*hidden argument*/NULL);
		NullCheck(L_3);
		int32_t L_4 = 0;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_5 = (L_3)->GetAt(static_cast<il2cpp_array_size_t>(L_4));
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_6 = V_0;
		NullCheck(L_5);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_7;
		L_7 = Transform_InverseTransformPoint_m476ABC8F3F14824D7D82FE2C54CEE5A151A669B8(L_5, L_6, /*hidden argument*/NULL);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_8;
		L_8 = Vector2_op_Implicit_mE407CAF7446E342E059B00AA9EDB301AEC5B7B1A_inline(L_7, /*hidden argument*/NULL);
		V_1 = L_8;
		// effectorPosition = m_Chain.transforms[0].TransformPoint(effectorLocalPosition2D);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_9 = __this->get_m_Chain_9();
		NullCheck(L_9);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_10;
		L_10 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_9, /*hidden argument*/NULL);
		NullCheck(L_10);
		int32_t L_11 = 0;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_12 = (L_10)->GetAt(static_cast<il2cpp_array_size_t>(L_11));
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_13 = V_1;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_14;
		L_14 = Vector2_op_Implicit_m4FA146E613DBFE6C1C4B0E9B461D622E6F2FC294_inline(L_13, /*hidden argument*/NULL);
		NullCheck(L_12);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_15;
		L_15 = Transform_TransformPoint_m68AF95765A9279192E601208A9C5170027A5F0D2(L_12, L_14, /*hidden argument*/NULL);
		V_0 = L_15;
		// if (effectorLocalPosition2D.sqrMagnitude > 0f && Limb.Solve(effectorPosition, m_Lengths, m_Positions, ref m_Angles))
		float L_16;
		L_16 = Vector2_get_sqrMagnitude_mF489F0EF7E88FF046BA36767ECC50B89674C925A((Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 *)(&V_1), /*hidden argument*/NULL);
		if ((!(((float)L_16) > ((float)(0.0f)))))
		{
			goto IL_0157;
		}
	}
	{
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_17 = V_0;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_18 = __this->get_m_Lengths_12();
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_19 = __this->get_m_Positions_11();
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA** L_20 = __this->get_address_of_m_Angles_13();
		bool L_21;
		L_21 = Limb_Solve_m972DC483BE62D28C354BB162A4418EA875CC117C(L_17, L_18, L_19, (SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA**)L_20, /*hidden argument*/NULL);
		if (!L_21)
		{
			goto IL_0157;
		}
	}
	{
		// float flipSign = flip ? -1f : 1f;
		bool L_22;
		L_22 = LimbSolver2D_get_flip_mFBD38C46874A7F08949B5A0302D0F2B6BBA08707_inline(__this, /*hidden argument*/NULL);
		if (L_22)
		{
			goto IL_0077;
		}
	}
	{
		G_B5_0 = (1.0f);
		goto IL_007c;
	}

IL_0077:
	{
		G_B5_0 = (-1.0f);
	}

IL_007c:
	{
		V_2 = G_B5_0;
		// m_Chain.transforms[0].localRotation *= Quaternion.FromToRotation(Vector3.right, effectorLocalPosition2D) * Quaternion.FromToRotation(m_Chain.transforms[1].localPosition, Vector3.right);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_23 = __this->get_m_Chain_9();
		NullCheck(L_23);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_24;
		L_24 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_23, /*hidden argument*/NULL);
		NullCheck(L_24);
		int32_t L_25 = 0;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_26 = (L_24)->GetAt(static_cast<il2cpp_array_size_t>(L_25));
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_27 = L_26;
		NullCheck(L_27);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_28;
		L_28 = Transform_get_localRotation_mA6472AE7509D762965275D79B645A14A9CCF5BE5(L_27, /*hidden argument*/NULL);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_29;
		L_29 = Vector3_get_right_mF5A51F81961474E0A7A31C2757FD00921FB79C44(/*hidden argument*/NULL);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_30 = V_1;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_31;
		L_31 = Vector2_op_Implicit_m4FA146E613DBFE6C1C4B0E9B461D622E6F2FC294_inline(L_30, /*hidden argument*/NULL);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_32;
		L_32 = Quaternion_FromToRotation_mD0EBB9993FC7C6A45724D0365B09F11F1CEADB80(L_29, L_31, /*hidden argument*/NULL);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_33 = __this->get_m_Chain_9();
		NullCheck(L_33);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_34;
		L_34 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_33, /*hidden argument*/NULL);
		NullCheck(L_34);
		int32_t L_35 = 1;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_36 = (L_34)->GetAt(static_cast<il2cpp_array_size_t>(L_35));
		NullCheck(L_36);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_37;
		L_37 = Transform_get_localPosition_m527B8B5B625DA9A61E551E0FBCD3BE8CA4539FC2(L_36, /*hidden argument*/NULL);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_38;
		L_38 = Vector3_get_right_mF5A51F81961474E0A7A31C2757FD00921FB79C44(/*hidden argument*/NULL);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_39;
		L_39 = Quaternion_FromToRotation_mD0EBB9993FC7C6A45724D0365B09F11F1CEADB80(L_37, L_38, /*hidden argument*/NULL);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_40;
		L_40 = Quaternion_op_Multiply_m5C7A60AC0CDCA2C5E2F23E45FBD1B15CA152D7B0(L_32, L_39, /*hidden argument*/NULL);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_41;
		L_41 = Quaternion_op_Multiply_m5C7A60AC0CDCA2C5E2F23E45FBD1B15CA152D7B0(L_28, L_40, /*hidden argument*/NULL);
		NullCheck(L_27);
		Transform_set_localRotation_m1A9101457EC4653AFC93FCC4065A29F2C78FA62C(L_27, L_41, /*hidden argument*/NULL);
		// m_Chain.transforms[0].localRotation *= Quaternion.AngleAxis(flipSign * m_Angles[0], Vector3.forward);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_42 = __this->get_m_Chain_9();
		NullCheck(L_42);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_43;
		L_43 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_42, /*hidden argument*/NULL);
		NullCheck(L_43);
		int32_t L_44 = 0;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_45 = (L_43)->GetAt(static_cast<il2cpp_array_size_t>(L_44));
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_46 = L_45;
		NullCheck(L_46);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_47;
		L_47 = Transform_get_localRotation_mA6472AE7509D762965275D79B645A14A9CCF5BE5(L_46, /*hidden argument*/NULL);
		float L_48 = V_2;
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_49 = __this->get_m_Angles_13();
		NullCheck(L_49);
		int32_t L_50 = 0;
		float L_51 = (L_49)->GetAt(static_cast<il2cpp_array_size_t>(L_50));
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_52;
		L_52 = Vector3_get_forward_m3082920F8A24AA02E4F542B6771EB0B63A91AC90(/*hidden argument*/NULL);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_53;
		L_53 = Quaternion_AngleAxis_m4644D20F58ADF03E9EA297CB4A845E5BCDA1E398(((float)il2cpp_codegen_multiply((float)L_48, (float)L_51)), L_52, /*hidden argument*/NULL);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_54;
		L_54 = Quaternion_op_Multiply_m5C7A60AC0CDCA2C5E2F23E45FBD1B15CA152D7B0(L_47, L_53, /*hidden argument*/NULL);
		NullCheck(L_46);
		Transform_set_localRotation_m1A9101457EC4653AFC93FCC4065A29F2C78FA62C(L_46, L_54, /*hidden argument*/NULL);
		// m_Chain.transforms[1].localRotation *= Quaternion.FromToRotation(Vector3.right, m_Chain.transforms[1].InverseTransformPoint(effectorPosition)) * Quaternion.FromToRotation(m_Chain.transforms[2].localPosition, Vector3.right);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_55 = __this->get_m_Chain_9();
		NullCheck(L_55);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_56;
		L_56 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_55, /*hidden argument*/NULL);
		NullCheck(L_56);
		int32_t L_57 = 1;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_58 = (L_56)->GetAt(static_cast<il2cpp_array_size_t>(L_57));
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_59 = L_58;
		NullCheck(L_59);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_60;
		L_60 = Transform_get_localRotation_mA6472AE7509D762965275D79B645A14A9CCF5BE5(L_59, /*hidden argument*/NULL);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_61;
		L_61 = Vector3_get_right_mF5A51F81961474E0A7A31C2757FD00921FB79C44(/*hidden argument*/NULL);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_62 = __this->get_m_Chain_9();
		NullCheck(L_62);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_63;
		L_63 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_62, /*hidden argument*/NULL);
		NullCheck(L_63);
		int32_t L_64 = 1;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_65 = (L_63)->GetAt(static_cast<il2cpp_array_size_t>(L_64));
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_66 = V_0;
		NullCheck(L_65);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_67;
		L_67 = Transform_InverseTransformPoint_m476ABC8F3F14824D7D82FE2C54CEE5A151A669B8(L_65, L_66, /*hidden argument*/NULL);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_68;
		L_68 = Quaternion_FromToRotation_mD0EBB9993FC7C6A45724D0365B09F11F1CEADB80(L_61, L_67, /*hidden argument*/NULL);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_69 = __this->get_m_Chain_9();
		NullCheck(L_69);
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_70;
		L_70 = IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline(L_69, /*hidden argument*/NULL);
		NullCheck(L_70);
		int32_t L_71 = 2;
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_72 = (L_70)->GetAt(static_cast<il2cpp_array_size_t>(L_71));
		NullCheck(L_72);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_73;
		L_73 = Transform_get_localPosition_m527B8B5B625DA9A61E551E0FBCD3BE8CA4539FC2(L_72, /*hidden argument*/NULL);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_74;
		L_74 = Vector3_get_right_mF5A51F81961474E0A7A31C2757FD00921FB79C44(/*hidden argument*/NULL);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_75;
		L_75 = Quaternion_FromToRotation_mD0EBB9993FC7C6A45724D0365B09F11F1CEADB80(L_73, L_74, /*hidden argument*/NULL);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_76;
		L_76 = Quaternion_op_Multiply_m5C7A60AC0CDCA2C5E2F23E45FBD1B15CA152D7B0(L_68, L_75, /*hidden argument*/NULL);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_77;
		L_77 = Quaternion_op_Multiply_m5C7A60AC0CDCA2C5E2F23E45FBD1B15CA152D7B0(L_60, L_76, /*hidden argument*/NULL);
		NullCheck(L_59);
		Transform_set_localRotation_m1A9101457EC4653AFC93FCC4065A29F2C78FA62C(L_59, L_77, /*hidden argument*/NULL);
	}

IL_0157:
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.LimbSolver2D::.ctor()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void LimbSolver2D__ctor_m592941CDC674268A88E60FA51432B9CC67753B36 (LimbSolver2D_t7853B3E9E5644B3A9FE624BCF58FD4279E5D2611 * __this, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F_il2cpp_TypeInfo_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA_il2cpp_TypeInfo_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	{
		// private IKChain2D m_Chain = new IKChain2D();
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_0 = (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F *)il2cpp_codegen_object_new(IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F_il2cpp_TypeInfo_var);
		IKChain2D__ctor_m6551D974C5CCD2BC3BE58B13BB2E2513A66CC620(L_0, /*hidden argument*/NULL);
		__this->set_m_Chain_9(L_0);
		// private Vector3[] m_Positions = new Vector3[3];
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_1 = (Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4*)(Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4*)SZArrayNew(Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4_il2cpp_TypeInfo_var, (uint32_t)3);
		__this->set_m_Positions_11(L_1);
		// private float[] m_Lengths = new float[2];
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_2 = (SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA*)(SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA*)SZArrayNew(SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA_il2cpp_TypeInfo_var, (uint32_t)2);
		__this->set_m_Lengths_12(L_2);
		// private float[] m_Angles = new float[2];
		SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA* L_3 = (SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA*)(SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA*)SZArrayNew(SingleU5BU5D_t47E8DBF5B597C122478D1FFBD9DD57399A0650FA_il2cpp_TypeInfo_var, (uint32_t)2);
		__this->set_m_Angles_13(L_3);
		Solver2D__ctor_mD0FAAA85839E2CE1F6727F924EECA48F9CBA0E8C(__this, /*hidden argument*/NULL);
		return;
	}
}
#ifdef __clang__
#pragma clang diagnostic pop
#endif
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Winvalid-offsetof"
#pragma clang diagnostic ignored "-Wunused-variable"
#endif
// System.Int32 UnityEngine.U2D.IK.Solver2D::get_chainCount()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR int32_t Solver2D_get_chainCount_mB7D56B5D3D0699CAE3159E482E6FD5EE8F23D737 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	{
		// get { return GetChainCount(); }
		int32_t L_0;
		L_0 = VirtFuncInvoker0< int32_t >::Invoke(6 /* System.Int32 UnityEngine.U2D.IK.Solver2D::GetChainCount() */, __this);
		return L_0;
	}
}
// System.Boolean UnityEngine.U2D.IK.Solver2D::get_constrainRotation()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Solver2D_get_constrainRotation_mAD2044675730E793B93AD79D522A77CC901965B0 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	{
		// get { return m_ConstrainRotation; }
		bool L_0 = __this->get_m_ConstrainRotation_4();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.Solver2D::set_constrainRotation(System.Boolean)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_set_constrainRotation_m818E6EB1F86D51E4B3DAED77D2770327EFF2D026 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, bool ___value0, const RuntimeMethod* method)
{
	{
		// set { m_ConstrainRotation = value; }
		bool L_0 = ___value0;
		__this->set_m_ConstrainRotation_4(L_0);
		// set { m_ConstrainRotation = value; }
		return;
	}
}
// System.Boolean UnityEngine.U2D.IK.Solver2D::get_solveFromDefaultPose()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Solver2D_get_solveFromDefaultPose_m3E70B852F77C1A9ADFE2BC9C7F15278B3EF4389C (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	{
		// get { return m_SolveFromDefaultPose; }
		bool L_0 = __this->get_m_SolveFromDefaultPose_5();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.Solver2D::set_solveFromDefaultPose(System.Boolean)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_set_solveFromDefaultPose_mF960A44F143699F4AFABCD915AEC31FBB5FE00C0 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, bool ___value0, const RuntimeMethod* method)
{
	{
		// set { m_SolveFromDefaultPose = value; }
		bool L_0 = ___value0;
		__this->set_m_SolveFromDefaultPose_5(L_0);
		// set { m_SolveFromDefaultPose = value; }
		return;
	}
}
// System.Boolean UnityEngine.U2D.IK.Solver2D::get_isValid()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Solver2D_get_isValid_m180D4F0261F10FD3058E9A3D8D418BA098A8B54B (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	{
		// get { return Validate(); }
		bool L_0;
		L_0 = Solver2D_Validate_mDE546F070375AEC67486B07DAC9ACEB606646404(__this, /*hidden argument*/NULL);
		return L_0;
	}
}
// System.Boolean UnityEngine.U2D.IK.Solver2D::get_allChainsHaveTargets()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Solver2D_get_allChainsHaveTargets_mC0D6635D31377E8F0C5F535B0F3D8A147C430460 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	{
		// get { return HasTargets(); }
		bool L_0;
		L_0 = Solver2D_HasTargets_m40811DD2D576F5C640AEEEBE557C756925AA4069(__this, /*hidden argument*/NULL);
		return L_0;
	}
}
// System.Single UnityEngine.U2D.IK.Solver2D::get_weight()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR float Solver2D_get_weight_mC28624569969B5FE6C0319251C27D5C1EE42CE05 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Weight; }
		float L_0 = __this->get_m_Weight_6();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.Solver2D::set_weight(System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_set_weight_m25C08DD643429FAB1323C054A56D155C0506DCFB (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, float ___value0, const RuntimeMethod* method)
{
	{
		// set { m_Weight = Mathf.Clamp01(value); }
		float L_0 = ___value0;
		float L_1;
		L_1 = Mathf_Clamp01_m2296D75F0F1292D5C8181C57007A1CA45F440C4C(L_0, /*hidden argument*/NULL);
		__this->set_m_Weight_6(L_1);
		// set { m_Weight = Mathf.Clamp01(value); }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.Solver2D::OnEnable()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_OnEnable_mDCEFAECCB63D067D4BE7C6CBEB72DB240AAF6BFB (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	{
		// private void OnEnable() {}
		return;
	}
}
// System.Void UnityEngine.U2D.IK.Solver2D::OnValidate()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_OnValidate_m4D5F8DC53BF01B6258FCAC1392E847B87DC2D28B (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	{
		// m_Weight = Mathf.Clamp01(m_Weight);
		float L_0 = __this->get_m_Weight_6();
		float L_1;
		L_1 = Mathf_Clamp01_m2296D75F0F1292D5C8181C57007A1CA45F440C4C(L_0, /*hidden argument*/NULL);
		__this->set_m_Weight_6(L_1);
		// if (!isValid)
		bool L_2;
		L_2 = Solver2D_get_isValid_m180D4F0261F10FD3058E9A3D8D418BA098A8B54B(__this, /*hidden argument*/NULL);
		if (L_2)
		{
			goto IL_001f;
		}
	}
	{
		// Initialize();
		Solver2D_Initialize_m1C02ACEDC29FC68935739489E69BE3E17F22A3ED(__this, /*hidden argument*/NULL);
	}

IL_001f:
	{
		// }
		return;
	}
}
// System.Boolean UnityEngine.U2D.IK.Solver2D::Validate()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Solver2D_Validate_mDE546F070375AEC67486B07DAC9ACEB606646404 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	int32_t V_0 = 0;
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		V_0 = 0;
		goto IL_0018;
	}

IL_0004:
	{
		// var chain = GetChain(i);
		int32_t L_0 = V_0;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_1;
		L_1 = VirtFuncInvoker1< IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F *, int32_t >::Invoke(5 /* UnityEngine.U2D.IK.IKChain2D UnityEngine.U2D.IK.Solver2D::GetChain(System.Int32) */, __this, L_0);
		// if (!chain.isValid)
		NullCheck(L_1);
		bool L_2;
		L_2 = IKChain2D_get_isValid_mE3AC818DEB38A876C8919A6D5B1C3AA6F225BC8A(L_1, /*hidden argument*/NULL);
		if (L_2)
		{
			goto IL_0014;
		}
	}
	{
		// return false;
		return (bool)0;
	}

IL_0014:
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		int32_t L_3 = V_0;
		V_0 = ((int32_t)il2cpp_codegen_add((int32_t)L_3, (int32_t)1));
	}

IL_0018:
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		int32_t L_4 = V_0;
		int32_t L_5;
		L_5 = VirtFuncInvoker0< int32_t >::Invoke(6 /* System.Int32 UnityEngine.U2D.IK.Solver2D::GetChainCount() */, __this);
		if ((((int32_t)L_4) < ((int32_t)L_5)))
		{
			goto IL_0004;
		}
	}
	{
		// return DoValidate();
		bool L_6;
		L_6 = VirtFuncInvoker0< bool >::Invoke(8 /* System.Boolean UnityEngine.U2D.IK.Solver2D::DoValidate() */, __this);
		return L_6;
	}
}
// System.Boolean UnityEngine.U2D.IK.Solver2D::HasTargets()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Solver2D_HasTargets_m40811DD2D576F5C640AEEEBE557C756925AA4069 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	int32_t V_0 = 0;
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		V_0 = 0;
		goto IL_001e;
	}

IL_0004:
	{
		// var chain = GetChain(i);
		int32_t L_0 = V_0;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_1;
		L_1 = VirtFuncInvoker1< IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F *, int32_t >::Invoke(5 /* UnityEngine.U2D.IK.IKChain2D UnityEngine.U2D.IK.Solver2D::GetChain(System.Int32) */, __this, L_0);
		// if (chain.target == null)
		NullCheck(L_1);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_2;
		L_2 = IKChain2D_get_target_mDD9973A4AC2F4FA94607EC09A6324B8E9CEEFD90_inline(L_1, /*hidden argument*/NULL);
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_3;
		L_3 = Object_op_Equality_mEE9EC7EB5C7DC3E95B94AB904E1986FC4D566D54(L_2, (Object_tF2F3778131EFF286AF62B7B013A170F95A91571A *)NULL, /*hidden argument*/NULL);
		if (!L_3)
		{
			goto IL_001a;
		}
	}
	{
		// return false;
		return (bool)0;
	}

IL_001a:
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		int32_t L_4 = V_0;
		V_0 = ((int32_t)il2cpp_codegen_add((int32_t)L_4, (int32_t)1));
	}

IL_001e:
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		int32_t L_5 = V_0;
		int32_t L_6;
		L_6 = VirtFuncInvoker0< int32_t >::Invoke(6 /* System.Int32 UnityEngine.U2D.IK.Solver2D::GetChainCount() */, __this);
		if ((((int32_t)L_5) < ((int32_t)L_6)))
		{
			goto IL_0004;
		}
	}
	{
		// return true;
		return (bool)1;
	}
}
// System.Void UnityEngine.U2D.IK.Solver2D::Initialize()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_Initialize_m1C02ACEDC29FC68935739489E69BE3E17F22A3ED (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	int32_t V_0 = 0;
	{
		// DoInitialize();
		VirtActionInvoker0::Invoke(9 /* System.Void UnityEngine.U2D.IK.Solver2D::DoInitialize() */, __this);
		// for (int i = 0; i < GetChainCount(); ++i)
		V_0 = 0;
		goto IL_001a;
	}

IL_000a:
	{
		// var chain = GetChain(i);
		int32_t L_0 = V_0;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_1;
		L_1 = VirtFuncInvoker1< IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F *, int32_t >::Invoke(5 /* UnityEngine.U2D.IK.IKChain2D UnityEngine.U2D.IK.Solver2D::GetChain(System.Int32) */, __this, L_0);
		// chain.Initialize();
		NullCheck(L_1);
		IKChain2D_Initialize_mAD562B4CABDBD051BA9CCD30FD68BBF49990E3BA(L_1, /*hidden argument*/NULL);
		// for (int i = 0; i < GetChainCount(); ++i)
		int32_t L_2 = V_0;
		V_0 = ((int32_t)il2cpp_codegen_add((int32_t)L_2, (int32_t)1));
	}

IL_001a:
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		int32_t L_3 = V_0;
		int32_t L_4;
		L_4 = VirtFuncInvoker0< int32_t >::Invoke(6 /* System.Int32 UnityEngine.U2D.IK.Solver2D::GetChainCount() */, __this);
		if ((((int32_t)L_3) < ((int32_t)L_4)))
		{
			goto IL_000a;
		}
	}
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.Solver2D::Prepare()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_Prepare_m0119AF48F7073E9E64E97E208B9D564E8911F416 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * V_0 = NULL;
	int32_t V_1 = 0;
	IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * V_2 = NULL;
	bool V_3 = false;
	int32_t G_B6_0 = 0;
	{
		// var rootTransform = GetPlaneRootTransform();
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_0;
		L_0 = VirtFuncInvoker0< Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * >::Invoke(11 /* UnityEngine.Transform UnityEngine.U2D.IK.Solver2D::GetPlaneRootTransform() */, __this);
		V_0 = L_0;
		// if (rootTransform != null)
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_1 = V_0;
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_2;
		L_2 = Object_op_Inequality_mE1F187520BD83FB7D86A6D850710C4D42B864E90(L_1, (Object_tF2F3778131EFF286AF62B7B013A170F95A91571A *)NULL, /*hidden argument*/NULL);
		if (!L_2)
		{
			goto IL_0043;
		}
	}
	{
		// m_Plane.normal = rootTransform.forward;
		Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7 * L_3 = __this->get_address_of_m_Plane_7();
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_4 = V_0;
		NullCheck(L_4);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_5;
		L_5 = Transform_get_forward_mD850B9ECF892009E3485408DC0D375165B7BF053(L_4, /*hidden argument*/NULL);
		Plane_set_normal_m4F84FE27CD58E2B3EE27DB108576B570EF8AE723((Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7 *)L_3, L_5, /*hidden argument*/NULL);
		// m_Plane.distance = -Vector3.Dot(m_Plane.normal, rootTransform.position);
		Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7 * L_6 = __this->get_address_of_m_Plane_7();
		Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7 * L_7 = __this->get_address_of_m_Plane_7();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_8;
		L_8 = Plane_get_normal_m71CB4BAB04EE04CAEF9AD272B16766800F7D556B((Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7 *)L_7, /*hidden argument*/NULL);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_9 = V_0;
		NullCheck(L_9);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_10;
		L_10 = Transform_get_position_m40A8A9895568D56FFC687B57F30E8D53CB5EA341(L_9, /*hidden argument*/NULL);
		float L_11;
		L_11 = Vector3_Dot_mD19905B093915BA12852732EA27AA2DBE030D11F_inline(L_8, L_10, /*hidden argument*/NULL);
		Plane_set_distance_m7B427E5F6F6D1DD44C96A503980F4627CDD4A59A((Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7 *)L_6, ((-L_11)), /*hidden argument*/NULL);
	}

IL_0043:
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		V_1 = 0;
		goto IL_007a;
	}

IL_0047:
	{
		// var chain = GetChain(i);
		int32_t L_12 = V_1;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_13;
		L_13 = VirtFuncInvoker1< IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F *, int32_t >::Invoke(5 /* UnityEngine.U2D.IK.IKChain2D UnityEngine.U2D.IK.Solver2D::GetChain(System.Int32) */, __this, L_12);
		V_2 = L_13;
		// var constrainTargetRotation = constrainRotation && chain.target != null;
		bool L_14;
		L_14 = Solver2D_get_constrainRotation_mAD2044675730E793B93AD79D522A77CC901965B0_inline(__this, /*hidden argument*/NULL);
		if (!L_14)
		{
			goto IL_0065;
		}
	}
	{
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_15 = V_2;
		NullCheck(L_15);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_16;
		L_16 = IKChain2D_get_target_mDD9973A4AC2F4FA94607EC09A6324B8E9CEEFD90_inline(L_15, /*hidden argument*/NULL);
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_17;
		L_17 = Object_op_Inequality_mE1F187520BD83FB7D86A6D850710C4D42B864E90(L_16, (Object_tF2F3778131EFF286AF62B7B013A170F95A91571A *)NULL, /*hidden argument*/NULL);
		G_B6_0 = ((int32_t)(L_17));
		goto IL_0066;
	}

IL_0065:
	{
		G_B6_0 = 0;
	}

IL_0066:
	{
		V_3 = (bool)G_B6_0;
		// if (m_SolveFromDefaultPose)
		bool L_18 = __this->get_m_SolveFromDefaultPose_5();
		if (!L_18)
		{
			goto IL_0076;
		}
	}
	{
		// chain.RestoreDefaultPose(constrainTargetRotation);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_19 = V_2;
		bool L_20 = V_3;
		NullCheck(L_19);
		IKChain2D_RestoreDefaultPose_m9078C5D10EB72B9F01682D9EE0419BCEBCD61D4C(L_19, L_20, /*hidden argument*/NULL);
	}

IL_0076:
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		int32_t L_21 = V_1;
		V_1 = ((int32_t)il2cpp_codegen_add((int32_t)L_21, (int32_t)1));
	}

IL_007a:
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		int32_t L_22 = V_1;
		int32_t L_23;
		L_23 = VirtFuncInvoker0< int32_t >::Invoke(6 /* System.Int32 UnityEngine.U2D.IK.Solver2D::GetChainCount() */, __this);
		if ((((int32_t)L_22) < ((int32_t)L_23)))
		{
			goto IL_0047;
		}
	}
	{
		// DoPrepare();
		VirtActionInvoker0::Invoke(10 /* System.Void UnityEngine.U2D.IK.Solver2D::DoPrepare() */, __this);
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.Solver2D::PrepareEffectorPositions()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_PrepareEffectorPositions_m9A85A1F76C32A676C46488E2BF76BC12C9044C8F (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1_Add_mAE131B53917AD7132F6BA2C05D5D17C38C5A2E59_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1_Clear_mE0F03A2E42E2F7F8A282AE01C12945F7379DC702_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	int32_t V_0 = 0;
	IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * V_1 = NULL;
	{
		// m_TargetPositions.Clear();
		List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * L_0 = __this->get_m_TargetPositions_8();
		NullCheck(L_0);
		List_1_Clear_mE0F03A2E42E2F7F8A282AE01C12945F7379DC702(L_0, /*hidden argument*/List_1_Clear_mE0F03A2E42E2F7F8A282AE01C12945F7379DC702_RuntimeMethod_var);
		// for (int i = 0; i < GetChainCount(); ++i)
		V_0 = 0;
		goto IL_003e;
	}

IL_000f:
	{
		// var chain = GetChain(i);
		int32_t L_1 = V_0;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_2;
		L_2 = VirtFuncInvoker1< IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F *, int32_t >::Invoke(5 /* UnityEngine.U2D.IK.IKChain2D UnityEngine.U2D.IK.Solver2D::GetChain(System.Int32) */, __this, L_1);
		V_1 = L_2;
		// if (chain.target)
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_3 = V_1;
		NullCheck(L_3);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_4;
		L_4 = IKChain2D_get_target_mDD9973A4AC2F4FA94607EC09A6324B8E9CEEFD90_inline(L_3, /*hidden argument*/NULL);
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_5;
		L_5 = Object_op_Implicit_mC8214E4F028CC2F036CC82BDB81D102A02893499(L_4, /*hidden argument*/NULL);
		if (!L_5)
		{
			goto IL_003a;
		}
	}
	{
		// m_TargetPositions.Add(chain.target.position);
		List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * L_6 = __this->get_m_TargetPositions_8();
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_7 = V_1;
		NullCheck(L_7);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_8;
		L_8 = IKChain2D_get_target_mDD9973A4AC2F4FA94607EC09A6324B8E9CEEFD90_inline(L_7, /*hidden argument*/NULL);
		NullCheck(L_8);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_9;
		L_9 = Transform_get_position_m40A8A9895568D56FFC687B57F30E8D53CB5EA341(L_8, /*hidden argument*/NULL);
		NullCheck(L_6);
		List_1_Add_mAE131B53917AD7132F6BA2C05D5D17C38C5A2E59(L_6, L_9, /*hidden argument*/List_1_Add_mAE131B53917AD7132F6BA2C05D5D17C38C5A2E59_RuntimeMethod_var);
	}

IL_003a:
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		int32_t L_10 = V_0;
		V_0 = ((int32_t)il2cpp_codegen_add((int32_t)L_10, (int32_t)1));
	}

IL_003e:
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		int32_t L_11 = V_0;
		int32_t L_12;
		L_12 = VirtFuncInvoker0< int32_t >::Invoke(6 /* System.Int32 UnityEngine.U2D.IK.Solver2D::GetChainCount() */, __this);
		if ((((int32_t)L_11) < ((int32_t)L_12)))
		{
			goto IL_000f;
		}
	}
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.Solver2D::UpdateIK(System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_UpdateIK_m91BF63A9B6B1A3D63FE7C3E5A0FF050A0152B654 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, float ___globalWeight0, const RuntimeMethod* method)
{
	{
		// if(allChainsHaveTargets)
		bool L_0;
		L_0 = Solver2D_get_allChainsHaveTargets_mC0D6635D31377E8F0C5F535B0F3D8A147C430460(__this, /*hidden argument*/NULL);
		if (!L_0)
		{
			goto IL_001b;
		}
	}
	{
		// PrepareEffectorPositions();
		Solver2D_PrepareEffectorPositions_m9A85A1F76C32A676C46488E2BF76BC12C9044C8F(__this, /*hidden argument*/NULL);
		// UpdateIK(m_TargetPositions, globalWeight);
		List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * L_1 = __this->get_m_TargetPositions_8();
		float L_2 = ___globalWeight0;
		Solver2D_UpdateIK_mA42642E47A3B527871C3128FE7520C66EBC5A0CB(__this, L_1, L_2, /*hidden argument*/NULL);
	}

IL_001b:
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.Solver2D::UpdateIK(System.Collections.Generic.List`1<UnityEngine.Vector3>,System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_UpdateIK_mA42642E47A3B527871C3128FE7520C66EBC5A0CB (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * ___positions0, float ___globalWeight1, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1_get_Count_m320FF0DD39F83A684F9E277C6A0D07BC3CEDA7D9_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	float V_0 = 0.0f;
	int32_t V_1 = 0;
	IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * V_2 = NULL;
	{
		// if(positions.Count != chainCount)
		List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * L_0 = ___positions0;
		NullCheck(L_0);
		int32_t L_1;
		L_1 = List_1_get_Count_m320FF0DD39F83A684F9E277C6A0D07BC3CEDA7D9_inline(L_0, /*hidden argument*/List_1_get_Count_m320FF0DD39F83A684F9E277C6A0D07BC3CEDA7D9_RuntimeMethod_var);
		int32_t L_2;
		L_2 = Solver2D_get_chainCount_mB7D56B5D3D0699CAE3159E482E6FD5EE8F23D737(__this, /*hidden argument*/NULL);
		if ((((int32_t)L_1) == ((int32_t)L_2)))
		{
			goto IL_000f;
		}
	}
	{
		// return;
		return;
	}

IL_000f:
	{
		// float finalWeight = globalWeight * weight;
		float L_3 = ___globalWeight1;
		float L_4;
		L_4 = Solver2D_get_weight_mC28624569969B5FE6C0319251C27D5C1EE42CE05_inline(__this, /*hidden argument*/NULL);
		V_0 = ((float)il2cpp_codegen_multiply((float)L_3, (float)L_4));
		// if (finalWeight == 0f)
		float L_5 = V_0;
		if ((!(((float)L_5) == ((float)(0.0f)))))
		{
			goto IL_0021;
		}
	}
	{
		// return;
		return;
	}

IL_0021:
	{
		// if (!isValid)
		bool L_6;
		L_6 = Solver2D_get_isValid_m180D4F0261F10FD3058E9A3D8D418BA098A8B54B(__this, /*hidden argument*/NULL);
		if (L_6)
		{
			goto IL_002a;
		}
	}
	{
		// return;
		return;
	}

IL_002a:
	{
		// Prepare();
		Solver2D_Prepare_m0119AF48F7073E9E64E97E208B9D564E8911F416(__this, /*hidden argument*/NULL);
		// if (finalWeight < 1f)
		float L_7 = V_0;
		if ((!(((float)L_7) < ((float)(1.0f)))))
		{
			goto IL_003e;
		}
	}
	{
		// StoreLocalRotations();
		Solver2D_StoreLocalRotations_mE44B67DBA2B736BCD68ADA7AE912973BA4DFF6EE(__this, /*hidden argument*/NULL);
	}

IL_003e:
	{
		// DoUpdateIK(positions);
		List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * L_8 = ___positions0;
		VirtActionInvoker1< List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * >::Invoke(7 /* System.Void UnityEngine.U2D.IK.Solver2D::DoUpdateIK(System.Collections.Generic.List`1<UnityEngine.Vector3>) */, __this, L_8);
		// if (constrainRotation)
		bool L_9;
		L_9 = Solver2D_get_constrainRotation_mAD2044675730E793B93AD79D522A77CC901965B0_inline(__this, /*hidden argument*/NULL);
		if (!L_9)
		{
			goto IL_0089;
		}
	}
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		V_1 = 0;
		goto IL_0080;
	}

IL_0051:
	{
		// var chain = GetChain(i);
		int32_t L_10 = V_1;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_11;
		L_11 = VirtFuncInvoker1< IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F *, int32_t >::Invoke(5 /* UnityEngine.U2D.IK.IKChain2D UnityEngine.U2D.IK.Solver2D::GetChain(System.Int32) */, __this, L_10);
		V_2 = L_11;
		// if (chain.target)
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_12 = V_2;
		NullCheck(L_12);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_13;
		L_13 = IKChain2D_get_target_mDD9973A4AC2F4FA94607EC09A6324B8E9CEEFD90_inline(L_12, /*hidden argument*/NULL);
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_14;
		L_14 = Object_op_Implicit_mC8214E4F028CC2F036CC82BDB81D102A02893499(L_13, /*hidden argument*/NULL);
		if (!L_14)
		{
			goto IL_007c;
		}
	}
	{
		// chain.effector.rotation = chain.target.rotation;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_15 = V_2;
		NullCheck(L_15);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_16;
		L_16 = IKChain2D_get_effector_m4C8436D4F6EF2A06DE5D4E852BA7C99D4D0E9046_inline(L_15, /*hidden argument*/NULL);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_17 = V_2;
		NullCheck(L_17);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_18;
		L_18 = IKChain2D_get_target_mDD9973A4AC2F4FA94607EC09A6324B8E9CEEFD90_inline(L_17, /*hidden argument*/NULL);
		NullCheck(L_18);
		Quaternion_t6D28618CF65156D4A0AD747370DDFD0C514A31B4  L_19;
		L_19 = Transform_get_rotation_m4AA3858C00DF4C9614B80352558C4C37D08D2200(L_18, /*hidden argument*/NULL);
		NullCheck(L_16);
		Transform_set_rotation_m1B5F3D4CE984AB31254615C9C71B0E54978583B4(L_16, L_19, /*hidden argument*/NULL);
	}

IL_007c:
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		int32_t L_20 = V_1;
		V_1 = ((int32_t)il2cpp_codegen_add((int32_t)L_20, (int32_t)1));
	}

IL_0080:
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		int32_t L_21 = V_1;
		int32_t L_22;
		L_22 = VirtFuncInvoker0< int32_t >::Invoke(6 /* System.Int32 UnityEngine.U2D.IK.Solver2D::GetChainCount() */, __this);
		if ((((int32_t)L_21) < ((int32_t)L_22)))
		{
			goto IL_0051;
		}
	}

IL_0089:
	{
		// if (finalWeight < 1f)
		float L_23 = V_0;
		if ((!(((float)L_23) < ((float)(1.0f)))))
		{
			goto IL_0098;
		}
	}
	{
		// BlendFkToIk(finalWeight);
		float L_24 = V_0;
		Solver2D_BlendFkToIk_m6862D6599516FBAA8680E8C81D73C1A04636E4AE(__this, L_24, /*hidden argument*/NULL);
	}

IL_0098:
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.Solver2D::StoreLocalRotations()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_StoreLocalRotations_mE44B67DBA2B736BCD68ADA7AE912973BA4DFF6EE (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	int32_t V_0 = 0;
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		V_0 = 0;
		goto IL_0014;
	}

IL_0004:
	{
		// var chain = GetChain(i);
		int32_t L_0 = V_0;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_1;
		L_1 = VirtFuncInvoker1< IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F *, int32_t >::Invoke(5 /* UnityEngine.U2D.IK.IKChain2D UnityEngine.U2D.IK.Solver2D::GetChain(System.Int32) */, __this, L_0);
		// chain.StoreLocalRotations();
		NullCheck(L_1);
		IKChain2D_StoreLocalRotations_m7E529365BE433D59BB1D2A4282B4B21B1DC4E400(L_1, /*hidden argument*/NULL);
		// for (int i = 0; i < GetChainCount(); ++i)
		int32_t L_2 = V_0;
		V_0 = ((int32_t)il2cpp_codegen_add((int32_t)L_2, (int32_t)1));
	}

IL_0014:
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		int32_t L_3 = V_0;
		int32_t L_4;
		L_4 = VirtFuncInvoker0< int32_t >::Invoke(6 /* System.Int32 UnityEngine.U2D.IK.Solver2D::GetChainCount() */, __this);
		if ((((int32_t)L_3) < ((int32_t)L_4)))
		{
			goto IL_0004;
		}
	}
	{
		// }
		return;
	}
}
// System.Void UnityEngine.U2D.IK.Solver2D::BlendFkToIk(System.Single)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_BlendFkToIk_m6862D6599516FBAA8680E8C81D73C1A04636E4AE (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, float ___finalWeight0, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	int32_t V_0 = 0;
	IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * V_1 = NULL;
	bool V_2 = false;
	int32_t G_B4_0 = 0;
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		V_0 = 0;
		goto IL_0030;
	}

IL_0004:
	{
		// var chain = GetChain(i);
		int32_t L_0 = V_0;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_1;
		L_1 = VirtFuncInvoker1< IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F *, int32_t >::Invoke(5 /* UnityEngine.U2D.IK.IKChain2D UnityEngine.U2D.IK.Solver2D::GetChain(System.Int32) */, __this, L_0);
		V_1 = L_1;
		// var constrainTargetRotation = constrainRotation && chain.target != null;
		bool L_2;
		L_2 = Solver2D_get_constrainRotation_mAD2044675730E793B93AD79D522A77CC901965B0_inline(__this, /*hidden argument*/NULL);
		if (!L_2)
		{
			goto IL_0022;
		}
	}
	{
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_3 = V_1;
		NullCheck(L_3);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_4;
		L_4 = IKChain2D_get_target_mDD9973A4AC2F4FA94607EC09A6324B8E9CEEFD90_inline(L_3, /*hidden argument*/NULL);
		IL2CPP_RUNTIME_CLASS_INIT(Object_tF2F3778131EFF286AF62B7B013A170F95A91571A_il2cpp_TypeInfo_var);
		bool L_5;
		L_5 = Object_op_Inequality_mE1F187520BD83FB7D86A6D850710C4D42B864E90(L_4, (Object_tF2F3778131EFF286AF62B7B013A170F95A91571A *)NULL, /*hidden argument*/NULL);
		G_B4_0 = ((int32_t)(L_5));
		goto IL_0023;
	}

IL_0022:
	{
		G_B4_0 = 0;
	}

IL_0023:
	{
		V_2 = (bool)G_B4_0;
		// chain.BlendFkToIk(finalWeight, constrainTargetRotation);
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_6 = V_1;
		float L_7 = ___finalWeight0;
		bool L_8 = V_2;
		NullCheck(L_6);
		IKChain2D_BlendFkToIk_m45CA3EF8F3AE14674F913AF9F38A7BD3E42AEBA8(L_6, L_7, L_8, /*hidden argument*/NULL);
		// for (int i = 0; i < GetChainCount(); ++i)
		int32_t L_9 = V_0;
		V_0 = ((int32_t)il2cpp_codegen_add((int32_t)L_9, (int32_t)1));
	}

IL_0030:
	{
		// for (int i = 0; i < GetChainCount(); ++i)
		int32_t L_10 = V_0;
		int32_t L_11;
		L_11 = VirtFuncInvoker0< int32_t >::Invoke(6 /* System.Int32 UnityEngine.U2D.IK.Solver2D::GetChainCount() */, __this);
		if ((((int32_t)L_10) < ((int32_t)L_11)))
		{
			goto IL_0004;
		}
	}
	{
		// }
		return;
	}
}
// System.Boolean UnityEngine.U2D.IK.Solver2D::DoValidate()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR bool Solver2D_DoValidate_mBE2653329D0E6CB75D6D702D08D5AB15C36DF134 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	{
		// protected virtual bool DoValidate() { return true; }
		return (bool)1;
	}
}
// System.Void UnityEngine.U2D.IK.Solver2D::DoInitialize()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_DoInitialize_mDCE1B7D63FE599641A0634A66FD85993D5BE0265 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	{
		// protected virtual void DoInitialize() {}
		return;
	}
}
// System.Void UnityEngine.U2D.IK.Solver2D::DoPrepare()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D_DoPrepare_m3EA5C1FB98720BE063FECEF45CD43F97074362A1 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	{
		// protected virtual void DoPrepare() {}
		return;
	}
}
// UnityEngine.Transform UnityEngine.U2D.IK.Solver2D::GetPlaneRootTransform()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * Solver2D_GetPlaneRootTransform_m68283288A5D143586073C4C6A5F84C32DD256076 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	{
		// if (chainCount > 0)
		int32_t L_0;
		L_0 = Solver2D_get_chainCount_mB7D56B5D3D0699CAE3159E482E6FD5EE8F23D737(__this, /*hidden argument*/NULL);
		if ((((int32_t)L_0) <= ((int32_t)0)))
		{
			goto IL_0016;
		}
	}
	{
		// return GetChain(0).rootTransform;
		IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * L_1;
		L_1 = VirtFuncInvoker1< IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F *, int32_t >::Invoke(5 /* UnityEngine.U2D.IK.IKChain2D UnityEngine.U2D.IK.Solver2D::GetChain(System.Int32) */, __this, 0);
		NullCheck(L_1);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_2;
		L_2 = IKChain2D_get_rootTransform_mEA22E774F957B3E09673D30A310923E107EB0757(L_1, /*hidden argument*/NULL);
		return L_2;
	}

IL_0016:
	{
		// return null;
		return (Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 *)NULL;
	}
}
// UnityEngine.Vector3 UnityEngine.U2D.IK.Solver2D::GetPointOnSolverPlane(UnityEngine.Vector3)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Solver2D_GetPointOnSolverPlane_mB1860607F0C31502574E1D8E80C55CC991A00301 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___worldPosition0, const RuntimeMethod* method)
{
	{
		// return GetPlaneRootTransform().InverseTransformPoint(m_Plane.ClosestPointOnPlane(worldPosition));
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_0;
		L_0 = VirtFuncInvoker0< Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * >::Invoke(11 /* UnityEngine.Transform UnityEngine.U2D.IK.Solver2D::GetPlaneRootTransform() */, __this);
		Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7 * L_1 = __this->get_address_of_m_Plane_7();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_2 = ___worldPosition0;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_3;
		L_3 = Plane_ClosestPointOnPlane_mDBB63D79FA643E10949FEE1AE692975940716BCE((Plane_t80844BF2332EAFC1DDEDD616A950242031A115C7 *)L_1, L_2, /*hidden argument*/NULL);
		NullCheck(L_0);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_4;
		L_4 = Transform_InverseTransformPoint_m476ABC8F3F14824D7D82FE2C54CEE5A151A669B8(L_0, L_3, /*hidden argument*/NULL);
		return L_4;
	}
}
// UnityEngine.Vector3 UnityEngine.U2D.IK.Solver2D::GetWorldPositionFromSolverPlanePoint(UnityEngine.Vector2)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Solver2D_GetWorldPositionFromSolverPlanePoint_m05071085502CDC4F25D5F8549094406937B40A00 (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___planePoint0, const RuntimeMethod* method)
{
	{
		// return GetPlaneRootTransform().TransformPoint(planePoint);
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_0;
		L_0 = VirtFuncInvoker0< Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * >::Invoke(11 /* UnityEngine.Transform UnityEngine.U2D.IK.Solver2D::GetPlaneRootTransform() */, __this);
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_1 = ___planePoint0;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_2;
		L_2 = Vector2_op_Implicit_m4FA146E613DBFE6C1C4B0E9B461D622E6F2FC294_inline(L_1, /*hidden argument*/NULL);
		NullCheck(L_0);
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_3;
		L_3 = Transform_TransformPoint_m68AF95765A9279192E601208A9C5170027A5F0D2(L_0, L_2, /*hidden argument*/NULL);
		return L_3;
	}
}
// System.Void UnityEngine.U2D.IK.Solver2D::.ctor()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2D__ctor_mD0FAAA85839E2CE1F6727F924EECA48F9CBA0E8C (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	static bool s_Il2CppMethodInitialized;
	if (!s_Il2CppMethodInitialized)
	{
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1__ctor_mF8F23D572031748AD428623AE16803455997E297_RuntimeMethod_var);
		il2cpp_codegen_initialize_runtime_metadata((uintptr_t*)&List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181_il2cpp_TypeInfo_var);
		s_Il2CppMethodInitialized = true;
	}
	{
		// private bool m_ConstrainRotation = true;
		__this->set_m_ConstrainRotation_4((bool)1);
		// private bool m_SolveFromDefaultPose = true;
		__this->set_m_SolveFromDefaultPose_5((bool)1);
		// private float m_Weight = 1f;
		__this->set_m_Weight_6((1.0f));
		// private List<Vector3> m_TargetPositions = new List<Vector3>();
		List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * L_0 = (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 *)il2cpp_codegen_object_new(List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181_il2cpp_TypeInfo_var);
		List_1__ctor_mF8F23D572031748AD428623AE16803455997E297(L_0, /*hidden argument*/List_1__ctor_mF8F23D572031748AD428623AE16803455997E297_RuntimeMethod_var);
		__this->set_m_TargetPositions_8(L_0);
		MonoBehaviour__ctor_mC0995D847F6A95B1A553652636C38A2AA8B13BED(__this, /*hidden argument*/NULL);
		return;
	}
}
#ifdef __clang__
#pragma clang diagnostic pop
#endif
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Winvalid-offsetof"
#pragma clang diagnostic ignored "-Wunused-variable"
#endif
// System.String UnityEngine.U2D.IK.Solver2DMenuAttribute::get_menuPath()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR String_t* Solver2DMenuAttribute_get_menuPath_m14306AE406D2C9D583C3C6813CCBAD4708C1086D (Solver2DMenuAttribute_tD2DF460A88F66EA84C3FE59F208BA336BF57A713 * __this, const RuntimeMethod* method)
{
	{
		// get { return m_MenuPath; }
		String_t* L_0 = __this->get_m_MenuPath_0();
		return L_0;
	}
}
// System.Void UnityEngine.U2D.IK.Solver2DMenuAttribute::.ctor(System.String)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void Solver2DMenuAttribute__ctor_mED0E68602FAE36A276FEEFEBC56D19579E565D00 (Solver2DMenuAttribute_tD2DF460A88F66EA84C3FE59F208BA336BF57A713 * __this, String_t* ____menuPath0, const RuntimeMethod* method)
{
	{
		// public Solver2DMenuAttribute(string _menuPath)
		Attribute__ctor_m5C1862A7DFC2C25A4797A8C5F681FBB5CB53ECE1(__this, /*hidden argument*/NULL);
		// m_MenuPath = _menuPath;
		String_t* L_0 = ____menuPath0;
		__this->set_m_MenuPath_0(L_0);
		// }
		return;
	}
}
#ifdef __clang__
#pragma clang diagnostic pop
#endif
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Vector3_op_Subtraction_m2725C96965D5C0B1F9715797E51762B13A5FED58_inline (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___a0, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___b1, const RuntimeMethod* method)
{
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  V_0;
	memset((&V_0), 0, sizeof(V_0));
	{
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_0 = ___a0;
		float L_1 = L_0.get_x_2();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_2 = ___b1;
		float L_3 = L_2.get_x_2();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_4 = ___a0;
		float L_5 = L_4.get_y_3();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_6 = ___b1;
		float L_7 = L_6.get_y_3();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_8 = ___a0;
		float L_9 = L_8.get_z_4();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_10 = ___b1;
		float L_11 = L_10.get_z_4();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_12;
		memset((&L_12), 0, sizeof(L_12));
		Vector3__ctor_m57495F692C6CE1CEF278CAD9A98221165D37E636_inline((&L_12), ((float)il2cpp_codegen_subtract((float)L_1, (float)L_3)), ((float)il2cpp_codegen_subtract((float)L_5, (float)L_7)), ((float)il2cpp_codegen_subtract((float)L_9, (float)L_11)), /*hidden argument*/NULL);
		V_0 = L_12;
		goto IL_0030;
	}

IL_0030:
	{
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_13 = V_0;
		return L_13;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Vector3_op_Addition_mEE4F672B923CCB184C39AABCA33443DB218E50E0_inline (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___a0, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___b1, const RuntimeMethod* method)
{
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  V_0;
	memset((&V_0), 0, sizeof(V_0));
	{
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_0 = ___a0;
		float L_1 = L_0.get_x_2();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_2 = ___b1;
		float L_3 = L_2.get_x_2();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_4 = ___a0;
		float L_5 = L_4.get_y_3();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_6 = ___b1;
		float L_7 = L_6.get_y_3();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_8 = ___a0;
		float L_9 = L_8.get_z_4();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_10 = ___b1;
		float L_11 = L_10.get_z_4();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_12;
		memset((&L_12), 0, sizeof(L_12));
		Vector3__ctor_m57495F692C6CE1CEF278CAD9A98221165D37E636_inline((&L_12), ((float)il2cpp_codegen_add((float)L_1, (float)L_3)), ((float)il2cpp_codegen_add((float)L_5, (float)L_7)), ((float)il2cpp_codegen_add((float)L_9, (float)L_11)), /*hidden argument*/NULL);
		V_0 = L_12;
		goto IL_0030;
	}

IL_0030:
	{
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_13 = V_0;
		return L_13;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR int32_t IKChain2D_get_transformCount_mA9085C77FF8E063E4579AE3CBBCB448429CEF68B_inline (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method)
{
	{
		// get { return m_TransformCount; }
		int32_t L_0 = __this->get_m_TransformCount_2();
		return L_0;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* IKChain2D_get_transforms_m1CF36244C840CA67533FF798D82DEAAFF121F86B_inline (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Transforms; }
		TransformU5BU5D_t7821C0520CC567C0A069329C01AE9C058C7E3F1D* L_0 = __this->get_m_Transforms_3();
		return L_0;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  Vector2_op_Implicit_mE407CAF7446E342E059B00AA9EDB301AEC5B7B1A_inline (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___v0, const RuntimeMethod* method)
{
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_0;
	memset((&V_0), 0, sizeof(V_0));
	{
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_0 = ___v0;
		float L_1 = L_0.get_x_2();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_2 = ___v0;
		float L_3 = L_2.get_y_3();
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_4;
		memset((&L_4), 0, sizeof(L_4));
		Vector2__ctor_m9F1F2D5EB5D1FF7091BB527AC8A72CBB309D115E_inline((&L_4), L_1, L_3, /*hidden argument*/NULL);
		V_0 = L_4;
		goto IL_0015;
	}

IL_0015:
	{
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_5 = V_0;
		return L_5;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Vector2_op_Implicit_m4FA146E613DBFE6C1C4B0E9B461D622E6F2FC294_inline (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___v0, const RuntimeMethod* method)
{
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  V_0;
	memset((&V_0), 0, sizeof(V_0));
	{
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_0 = ___v0;
		float L_1 = L_0.get_x_0();
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_2 = ___v0;
		float L_3 = L_2.get_y_1();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_4;
		memset((&L_4), 0, sizeof(L_4));
		Vector3__ctor_m57495F692C6CE1CEF278CAD9A98221165D37E636_inline((&L_4), L_1, L_3, (0.0f), /*hidden argument*/NULL);
		V_0 = L_4;
		goto IL_001a;
	}

IL_001a:
	{
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_5 = V_0;
		return L_5;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR int32_t CCDSolver2D_get_iterations_m865B9C229A4C0D7B8B7A132C651258A56EDAEE28_inline (CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Iterations; }
		int32_t L_0 = __this->get_m_Iterations_14();
		return L_0;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR float CCDSolver2D_get_tolerance_mD1B0EDE706703F601BD0A0C4DF6C892075283C2D_inline (CCDSolver2D_t6A0F493058D78FED67126D42F5A1A423298284BE * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Tolerance; }
		float L_0 = __this->get_m_Tolerance_15();
		return L_0;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  Vector2_op_Subtraction_m6E536A8C72FEAA37FF8D5E26E11D6E71EB59599A_inline (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___a0, Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___b1, const RuntimeMethod* method)
{
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_0;
	memset((&V_0), 0, sizeof(V_0));
	{
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_0 = ___a0;
		float L_1 = L_0.get_x_0();
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_2 = ___b1;
		float L_3 = L_2.get_x_0();
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_4 = ___a0;
		float L_5 = L_4.get_y_1();
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_6 = ___b1;
		float L_7 = L_6.get_y_1();
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_8;
		memset((&L_8), 0, sizeof(L_8));
		Vector2__ctor_m9F1F2D5EB5D1FF7091BB527AC8A72CBB309D115E_inline((&L_8), ((float)il2cpp_codegen_subtract((float)L_1, (float)L_3)), ((float)il2cpp_codegen_subtract((float)L_5, (float)L_7)), /*hidden argument*/NULL);
		V_0 = L_8;
		goto IL_0023;
	}

IL_0023:
	{
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_9 = V_0;
		return L_9;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  Vector2_op_Addition_m5EACC2AEA80FEE29F380397CF1F4B11D04BE71CC_inline (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___a0, Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___b1, const RuntimeMethod* method)
{
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_0;
	memset((&V_0), 0, sizeof(V_0));
	{
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_0 = ___a0;
		float L_1 = L_0.get_x_0();
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_2 = ___b1;
		float L_3 = L_2.get_x_0();
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_4 = ___a0;
		float L_5 = L_4.get_y_1();
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_6 = ___b1;
		float L_7 = L_6.get_y_1();
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_8;
		memset((&L_8), 0, sizeof(L_8));
		Vector2__ctor_m9F1F2D5EB5D1FF7091BB527AC8A72CBB309D115E_inline((&L_8), ((float)il2cpp_codegen_add((float)L_1, (float)L_3)), ((float)il2cpp_codegen_add((float)L_5, (float)L_7)), /*hidden argument*/NULL);
		V_0 = L_8;
		goto IL_0023;
	}

IL_0023:
	{
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_9 = V_0;
		return L_9;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  Vector2_op_Division_m9E0ABD4CB731137B84249278B80D4C2624E58AC6_inline (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___a0, float ___d1, const RuntimeMethod* method)
{
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_0;
	memset((&V_0), 0, sizeof(V_0));
	{
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_0 = ___a0;
		float L_1 = L_0.get_x_0();
		float L_2 = ___d1;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_3 = ___a0;
		float L_4 = L_3.get_y_1();
		float L_5 = ___d1;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_6;
		memset((&L_6), 0, sizeof(L_6));
		Vector2__ctor_m9F1F2D5EB5D1FF7091BB527AC8A72CBB309D115E_inline((&L_6), ((float)((float)L_1/(float)L_2)), ((float)((float)L_4/(float)L_5)), /*hidden argument*/NULL);
		V_0 = L_6;
		goto IL_0019;
	}

IL_0019:
	{
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_7 = V_0;
		return L_7;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  Vector2_op_Multiply_m841D5292C48DAD9746A2F4EED9CE7A76CDB652EA_inline (float ___d0, Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  ___a1, const RuntimeMethod* method)
{
	Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  V_0;
	memset((&V_0), 0, sizeof(V_0));
	{
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_0 = ___a1;
		float L_1 = L_0.get_x_0();
		float L_2 = ___d0;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_3 = ___a1;
		float L_4 = L_3.get_y_1();
		float L_5 = ___d0;
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_6;
		memset((&L_6), 0, sizeof(L_6));
		Vector2__ctor_m9F1F2D5EB5D1FF7091BB527AC8A72CBB309D115E_inline((&L_6), ((float)il2cpp_codegen_multiply((float)L_1, (float)L_2)), ((float)il2cpp_codegen_multiply((float)L_4, (float)L_5)), /*hidden argument*/NULL);
		V_0 = L_6;
		goto IL_0019;
	}

IL_0019:
	{
		Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9  L_7 = V_0;
		return L_7;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  Vector3_op_Multiply_m9EA3D18290418D7B410C7D11C4788C13BFD2C30A_inline (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___a0, float ___d1, const RuntimeMethod* method)
{
	Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  V_0;
	memset((&V_0), 0, sizeof(V_0));
	{
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_0 = ___a0;
		float L_1 = L_0.get_x_2();
		float L_2 = ___d1;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_3 = ___a0;
		float L_4 = L_3.get_y_3();
		float L_5 = ___d1;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_6 = ___a0;
		float L_7 = L_6.get_z_4();
		float L_8 = ___d1;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_9;
		memset((&L_9), 0, sizeof(L_9));
		Vector3__ctor_m57495F692C6CE1CEF278CAD9A98221165D37E636_inline((&L_9), ((float)il2cpp_codegen_multiply((float)L_1, (float)L_2)), ((float)il2cpp_codegen_multiply((float)L_4, (float)L_5)), ((float)il2cpp_codegen_multiply((float)L_7, (float)L_8)), /*hidden argument*/NULL);
		V_0 = L_9;
		goto IL_0021;
	}

IL_0021:
	{
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_10 = V_0;
		return L_10;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR int32_t FabrikSolver2D_get_iterations_m46C5BE63A5E2E52628D750D4028BBC2122BAB1E8_inline (FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Iterations; }
		int32_t L_0 = __this->get_m_Iterations_12();
		return L_0;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR float FabrikSolver2D_get_tolerance_m98EAF62D8185C67EB65A8EE354D7C477B872FBD2_inline (FabrikSolver2D_t1E01919887CE09EF05A596F2E53DA2CA8359C1FC * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Tolerance; }
		float L_0 = __this->get_m_Tolerance_13();
		return L_0;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * IKChain2D_get_effector_m4C8436D4F6EF2A06DE5D4E852BA7C99D4D0E9046_inline (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method)
{
	{
		// get { return m_EffectorTransform; }
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_0 = __this->get_m_EffectorTransform_0();
		return L_0;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * IKChain2D_get_target_mDD9973A4AC2F4FA94607EC09A6324B8E9CEEFD90_inline (IKChain2D_tDF0260969B3AF0AF72F7F6B0F881F028B8927D8F * __this, const RuntimeMethod* method)
{
	{
		// get { return m_TargetTransform; }
		Transform_tA8193BB29D4D2C7EC04918F3ED1816345186C3F1 * L_0 = __this->get_m_TargetTransform_1();
		return L_0;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR float IKManager2D_get_weight_m9C5AA621D970FADB235FD35E9B31F6BB1E2DFF00_inline (IKManager2D_tE48D1FE480E3DB82090AE160F5F29C18C7D74510 * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Weight; }
		float L_0 = __this->get_m_Weight_5();
		return L_0;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR bool LimbSolver2D_get_flip_mFBD38C46874A7F08949B5A0302D0F2B6BBA08707_inline (LimbSolver2D_t7853B3E9E5644B3A9FE624BCF58FD4279E5D2611 * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Flip; }
		bool L_0 = __this->get_m_Flip_10();
		return L_0;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR float Vector3_Dot_mD19905B093915BA12852732EA27AA2DBE030D11F_inline (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___lhs0, Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  ___rhs1, const RuntimeMethod* method)
{
	float V_0 = 0.0f;
	{
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_0 = ___lhs0;
		float L_1 = L_0.get_x_2();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_2 = ___rhs1;
		float L_3 = L_2.get_x_2();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_4 = ___lhs0;
		float L_5 = L_4.get_y_3();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_6 = ___rhs1;
		float L_7 = L_6.get_y_3();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_8 = ___lhs0;
		float L_9 = L_8.get_z_4();
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_10 = ___rhs1;
		float L_11 = L_10.get_z_4();
		V_0 = ((float)il2cpp_codegen_add((float)((float)il2cpp_codegen_add((float)((float)il2cpp_codegen_multiply((float)L_1, (float)L_3)), (float)((float)il2cpp_codegen_multiply((float)L_5, (float)L_7)))), (float)((float)il2cpp_codegen_multiply((float)L_9, (float)L_11))));
		goto IL_002d;
	}

IL_002d:
	{
		float L_12 = V_0;
		return L_12;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR bool Solver2D_get_constrainRotation_mAD2044675730E793B93AD79D522A77CC901965B0_inline (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	{
		// get { return m_ConstrainRotation; }
		bool L_0 = __this->get_m_ConstrainRotation_4();
		return L_0;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR float Solver2D_get_weight_mC28624569969B5FE6C0319251C27D5C1EE42CE05_inline (Solver2D_t8A225947B36460AC49D5388511B3BBE7E03FB2B6 * __this, const RuntimeMethod* method)
{
	{
		// get { return m_Weight; }
		float L_0 = __this->get_m_Weight_6();
		return L_0;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  List_1_get_Item_m554804AC447B0BA1F93C64E863FF7DB0527AFED9_gshared_inline (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * __this, int32_t ___index0, const RuntimeMethod* method)
{
	{
		int32_t L_0 = ___index0;
		int32_t L_1 = (int32_t)__this->get__size_2();
		if ((!(((uint32_t)L_0) >= ((uint32_t)L_1))))
		{
			goto IL_000e;
		}
	}
	{
		ThrowHelper_ThrowArgumentOutOfRangeException_m4841366ABC2B2AFA37C10900551D7E07522C0929(/*hidden argument*/NULL);
	}

IL_000e:
	{
		Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4* L_2 = (Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4*)__this->get__items_1();
		int32_t L_3 = ___index0;
		Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E  L_4;
		L_4 = IL2CPP_ARRAY_UNSAFE_LOAD((Vector3U5BU5D_t5FB88EAA33E46838BDC2ABDAEA3E8727491CB9E4*)L_2, (int32_t)L_3);
		return (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E )L_4;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR RuntimeObject * Enumerator_get_Current_m9C4EBBD2108B51885E750F927D7936290C8E20EE_gshared_inline (Enumerator_tB6009981BD4E3881E3EC83627255A24198F902D6 * __this, const RuntimeMethod* method)
{
	{
		RuntimeObject * L_0 = (RuntimeObject *)__this->get_current_3();
		return (RuntimeObject *)L_0;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR int32_t List_1_get_Count_m320FF0DD39F83A684F9E277C6A0D07BC3CEDA7D9_gshared_inline (List_1_t577D28CFF6DFE3F6A8D4409F7A21CBF513C04181 * __this, const RuntimeMethod* method)
{
	{
		int32_t L_0 = (int32_t)__this->get__size_2();
		return (int32_t)L_0;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR void Vector3__ctor_m57495F692C6CE1CEF278CAD9A98221165D37E636_inline (Vector3_t65B972D6A585A0A5B63153CF1177A90D3C90D65E * __this, float ___x0, float ___y1, float ___z2, const RuntimeMethod* method)
{
	{
		float L_0 = ___x0;
		__this->set_x_2(L_0);
		float L_1 = ___y1;
		__this->set_y_3(L_1);
		float L_2 = ___z2;
		__this->set_z_4(L_2);
		return;
	}
}
IL2CPP_MANAGED_FORCE_INLINE IL2CPP_METHOD_ATTR void Vector2__ctor_m9F1F2D5EB5D1FF7091BB527AC8A72CBB309D115E_inline (Vector2_tBB32F2736AEC229A7BFBCE18197EC0F6AC7EC2D9 * __this, float ___x0, float ___y1, const RuntimeMethod* method)
{
	{
		float L_0 = ___x0;
		__this->set_x_0(L_0);
		float L_1 = ___y1;
		__this->set_y_1(L_1);
		return;
	}
}
