328 lines
15 KiB
C#
328 lines
15 KiB
C#
using System;
|
|
using Il2CppInterop.Common.Attributes;
|
|
using Il2CppInterop.Runtime;
|
|
using Il2CppInterop.Runtime.InteropTypes.Arrays;
|
|
using Il2CppSystem;
|
|
|
|
namespace RootMotion.FinalIK
|
|
{
|
|
// Token: 0x02000400 RID: 1024
|
|
[Serializable]
|
|
public class BipedIKSolvers : Object
|
|
{
|
|
// Token: 0x17002A2E RID: 10798
|
|
// (get) Token: 0x06007B6C RID: 31596 RVA: 0x001F6C48 File Offset: 0x001F4E48
|
|
public unsafe Il2CppReferenceArray<IKSolverLimb> limbs
|
|
{
|
|
[CallerCount(9)]
|
|
[CachedScanResults(RefRangeStart = 594067, RefRangeEnd = 594076, XrefRangeStart = 594055, XrefRangeEnd = 594067, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
|
|
get
|
|
{
|
|
IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
|
|
IntPtr* ptr = null;
|
|
IntPtr intPtr2;
|
|
IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(BipedIKSolvers.NativeMethodInfoPtr_get_limbs_Public_get_Il2CppReferenceArray_1_IKSolverLimb_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
|
|
Il2CppException.RaiseExceptionIfNecessary(intPtr2);
|
|
IntPtr intPtr3 = intPtr;
|
|
return (intPtr3 != 0) ? new Il2CppReferenceArray<IKSolverLimb>(intPtr3) : null;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17002A2F RID: 10799
|
|
// (get) Token: 0x06007B6D RID: 31597 RVA: 0x001F6CA0 File Offset: 0x001F4EA0
|
|
public unsafe Il2CppReferenceArray<IKSolver> ikSolvers
|
|
{
|
|
[CallerCount(0)]
|
|
[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 594076, XrefRangeEnd = 594094, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
|
|
get
|
|
{
|
|
IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
|
|
IntPtr* ptr = null;
|
|
IntPtr intPtr2;
|
|
IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(BipedIKSolvers.NativeMethodInfoPtr_get_ikSolvers_Public_get_Il2CppReferenceArray_1_IKSolver_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
|
|
Il2CppException.RaiseExceptionIfNecessary(intPtr2);
|
|
IntPtr intPtr3 = intPtr;
|
|
return (intPtr3 != 0) ? new Il2CppReferenceArray<IKSolver>(intPtr3) : null;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06007B6E RID: 31598 RVA: 0x001F6CF8 File Offset: 0x001F4EF8
|
|
[CallerCount(0)]
|
|
[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 594094, XrefRangeEnd = 594101, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
|
|
public unsafe void AssignReferences(BipedReferences references)
|
|
{
|
|
IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
|
|
checked
|
|
{
|
|
IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
|
|
*ptr = IL2CPP.Il2CppObjectBaseToPtr(references);
|
|
IntPtr intPtr2;
|
|
IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(BipedIKSolvers.NativeMethodInfoPtr_AssignReferences_Public_Void_BipedReferences_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
|
|
Il2CppException.RaiseExceptionIfNecessary(intPtr2);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06007B6F RID: 31599 RVA: 0x001F6D54 File Offset: 0x001F4F54
|
|
[CallerCount(1)]
|
|
[CachedScanResults(RefRangeStart = 594139, RefRangeEnd = 594140, XrefRangeStart = 594101, XrefRangeEnd = 594139, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
|
|
public unsafe BipedIKSolvers()
|
|
: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<BipedIKSolvers>.NativeClassPtr))
|
|
{
|
|
IntPtr* ptr = null;
|
|
IntPtr intPtr2;
|
|
IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(BipedIKSolvers.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
|
|
Il2CppException.RaiseExceptionIfNecessary(intPtr2);
|
|
}
|
|
|
|
// Token: 0x06007B70 RID: 31600 RVA: 0x001F6DA0 File Offset: 0x001F4FA0
|
|
// Note: this type is marked as 'beforefieldinit'.
|
|
static BipedIKSolvers()
|
|
{
|
|
Il2CppClassPointerStore<BipedIKSolvers>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "RootMotion.FinalIK", "BipedIKSolvers");
|
|
IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<BipedIKSolvers>.NativeClassPtr);
|
|
BipedIKSolvers.NativeFieldInfoPtr_leftFoot = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BipedIKSolvers>.NativeClassPtr, "leftFoot");
|
|
BipedIKSolvers.NativeFieldInfoPtr_rightFoot = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BipedIKSolvers>.NativeClassPtr, "rightFoot");
|
|
BipedIKSolvers.NativeFieldInfoPtr_leftHand = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BipedIKSolvers>.NativeClassPtr, "leftHand");
|
|
BipedIKSolvers.NativeFieldInfoPtr_rightHand = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BipedIKSolvers>.NativeClassPtr, "rightHand");
|
|
BipedIKSolvers.NativeFieldInfoPtr_spine = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BipedIKSolvers>.NativeClassPtr, "spine");
|
|
BipedIKSolvers.NativeFieldInfoPtr_lookAt = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BipedIKSolvers>.NativeClassPtr, "lookAt");
|
|
BipedIKSolvers.NativeFieldInfoPtr_aim = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BipedIKSolvers>.NativeClassPtr, "aim");
|
|
BipedIKSolvers.NativeFieldInfoPtr_pelvis = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BipedIKSolvers>.NativeClassPtr, "pelvis");
|
|
BipedIKSolvers.NativeFieldInfoPtr__limbs = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BipedIKSolvers>.NativeClassPtr, "_limbs");
|
|
BipedIKSolvers.NativeFieldInfoPtr__ikSolvers = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BipedIKSolvers>.NativeClassPtr, "_ikSolvers");
|
|
BipedIKSolvers.NativeMethodInfoPtr_get_limbs_Public_get_Il2CppReferenceArray_1_IKSolverLimb_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BipedIKSolvers>.NativeClassPtr, 100672568);
|
|
BipedIKSolvers.NativeMethodInfoPtr_get_ikSolvers_Public_get_Il2CppReferenceArray_1_IKSolver_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BipedIKSolvers>.NativeClassPtr, 100672569);
|
|
BipedIKSolvers.NativeMethodInfoPtr_AssignReferences_Public_Void_BipedReferences_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BipedIKSolvers>.NativeClassPtr, 100672570);
|
|
BipedIKSolvers.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BipedIKSolvers>.NativeClassPtr, 100672571);
|
|
}
|
|
|
|
// Token: 0x06007B71 RID: 31601 RVA: 0x0000A688 File Offset: 0x00008888
|
|
public BipedIKSolvers(IntPtr pointer)
|
|
: base(pointer)
|
|
{
|
|
}
|
|
|
|
// Token: 0x17002A24 RID: 10788
|
|
// (get) Token: 0x06007B72 RID: 31602 RVA: 0x001F6EE8 File Offset: 0x001F50E8
|
|
// (set) Token: 0x06007B73 RID: 31603 RVA: 0x001F6F1C File Offset: 0x001F511C
|
|
public unsafe IKSolverLimb leftFoot
|
|
{
|
|
get
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr_leftFoot);
|
|
IntPtr intPtr2 = *intPtr;
|
|
return (intPtr2 != 0) ? new IKSolverLimb(intPtr2) : null;
|
|
}
|
|
set
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
|
|
IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr_leftFoot), IL2CPP.Il2CppObjectBaseToPtr(value));
|
|
}
|
|
}
|
|
|
|
// Token: 0x17002A25 RID: 10789
|
|
// (get) Token: 0x06007B74 RID: 31604 RVA: 0x001F6F44 File Offset: 0x001F5144
|
|
// (set) Token: 0x06007B75 RID: 31605 RVA: 0x001F6F78 File Offset: 0x001F5178
|
|
public unsafe IKSolverLimb rightFoot
|
|
{
|
|
get
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr_rightFoot);
|
|
IntPtr intPtr2 = *intPtr;
|
|
return (intPtr2 != 0) ? new IKSolverLimb(intPtr2) : null;
|
|
}
|
|
set
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
|
|
IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr_rightFoot), IL2CPP.Il2CppObjectBaseToPtr(value));
|
|
}
|
|
}
|
|
|
|
// Token: 0x17002A26 RID: 10790
|
|
// (get) Token: 0x06007B76 RID: 31606 RVA: 0x001F6FA0 File Offset: 0x001F51A0
|
|
// (set) Token: 0x06007B77 RID: 31607 RVA: 0x001F6FD4 File Offset: 0x001F51D4
|
|
public unsafe IKSolverLimb leftHand
|
|
{
|
|
get
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr_leftHand);
|
|
IntPtr intPtr2 = *intPtr;
|
|
return (intPtr2 != 0) ? new IKSolverLimb(intPtr2) : null;
|
|
}
|
|
set
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
|
|
IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr_leftHand), IL2CPP.Il2CppObjectBaseToPtr(value));
|
|
}
|
|
}
|
|
|
|
// Token: 0x17002A27 RID: 10791
|
|
// (get) Token: 0x06007B78 RID: 31608 RVA: 0x001F6FFC File Offset: 0x001F51FC
|
|
// (set) Token: 0x06007B79 RID: 31609 RVA: 0x001F7030 File Offset: 0x001F5230
|
|
public unsafe IKSolverLimb rightHand
|
|
{
|
|
get
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr_rightHand);
|
|
IntPtr intPtr2 = *intPtr;
|
|
return (intPtr2 != 0) ? new IKSolverLimb(intPtr2) : null;
|
|
}
|
|
set
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
|
|
IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr_rightHand), IL2CPP.Il2CppObjectBaseToPtr(value));
|
|
}
|
|
}
|
|
|
|
// Token: 0x17002A28 RID: 10792
|
|
// (get) Token: 0x06007B7A RID: 31610 RVA: 0x001F7058 File Offset: 0x001F5258
|
|
// (set) Token: 0x06007B7B RID: 31611 RVA: 0x001F708C File Offset: 0x001F528C
|
|
public unsafe IKSolverFABRIK spine
|
|
{
|
|
get
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr_spine);
|
|
IntPtr intPtr2 = *intPtr;
|
|
return (intPtr2 != 0) ? new IKSolverFABRIK(intPtr2) : null;
|
|
}
|
|
set
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
|
|
IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr_spine), IL2CPP.Il2CppObjectBaseToPtr(value));
|
|
}
|
|
}
|
|
|
|
// Token: 0x17002A29 RID: 10793
|
|
// (get) Token: 0x06007B7C RID: 31612 RVA: 0x001F70B4 File Offset: 0x001F52B4
|
|
// (set) Token: 0x06007B7D RID: 31613 RVA: 0x001F70E8 File Offset: 0x001F52E8
|
|
public unsafe IKSolverLookAt lookAt
|
|
{
|
|
get
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr_lookAt);
|
|
IntPtr intPtr2 = *intPtr;
|
|
return (intPtr2 != 0) ? new IKSolverLookAt(intPtr2) : null;
|
|
}
|
|
set
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
|
|
IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr_lookAt), IL2CPP.Il2CppObjectBaseToPtr(value));
|
|
}
|
|
}
|
|
|
|
// Token: 0x17002A2A RID: 10794
|
|
// (get) Token: 0x06007B7E RID: 31614 RVA: 0x001F7110 File Offset: 0x001F5310
|
|
// (set) Token: 0x06007B7F RID: 31615 RVA: 0x001F7144 File Offset: 0x001F5344
|
|
public unsafe IKSolverAim aim
|
|
{
|
|
get
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr_aim);
|
|
IntPtr intPtr2 = *intPtr;
|
|
return (intPtr2 != 0) ? new IKSolverAim(intPtr2) : null;
|
|
}
|
|
set
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
|
|
IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr_aim), IL2CPP.Il2CppObjectBaseToPtr(value));
|
|
}
|
|
}
|
|
|
|
// Token: 0x17002A2B RID: 10795
|
|
// (get) Token: 0x06007B80 RID: 31616 RVA: 0x001F716C File Offset: 0x001F536C
|
|
// (set) Token: 0x06007B81 RID: 31617 RVA: 0x001F71A0 File Offset: 0x001F53A0
|
|
public unsafe Constraints pelvis
|
|
{
|
|
get
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr_pelvis);
|
|
IntPtr intPtr2 = *intPtr;
|
|
return (intPtr2 != 0) ? new Constraints(intPtr2) : null;
|
|
}
|
|
set
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
|
|
IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr_pelvis), IL2CPP.Il2CppObjectBaseToPtr(value));
|
|
}
|
|
}
|
|
|
|
// Token: 0x17002A2C RID: 10796
|
|
// (get) Token: 0x06007B82 RID: 31618 RVA: 0x001F71C8 File Offset: 0x001F53C8
|
|
// (set) Token: 0x06007B83 RID: 31619 RVA: 0x001F71FC File Offset: 0x001F53FC
|
|
public unsafe Il2CppReferenceArray<IKSolverLimb> _limbs
|
|
{
|
|
get
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr__limbs);
|
|
IntPtr intPtr2 = *intPtr;
|
|
return (intPtr2 != 0) ? new Il2CppReferenceArray<IKSolverLimb>(intPtr2) : null;
|
|
}
|
|
set
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
|
|
IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr__limbs), IL2CPP.Il2CppObjectBaseToPtr(value));
|
|
}
|
|
}
|
|
|
|
// Token: 0x17002A2D RID: 10797
|
|
// (get) Token: 0x06007B84 RID: 31620 RVA: 0x001F7224 File Offset: 0x001F5424
|
|
// (set) Token: 0x06007B85 RID: 31621 RVA: 0x001F7258 File Offset: 0x001F5458
|
|
public unsafe Il2CppReferenceArray<IKSolver> _ikSolvers
|
|
{
|
|
get
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr__ikSolvers);
|
|
IntPtr intPtr2 = *intPtr;
|
|
return (intPtr2 != 0) ? new Il2CppReferenceArray<IKSolver>(intPtr2) : null;
|
|
}
|
|
set
|
|
{
|
|
IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
|
|
IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(BipedIKSolvers.NativeFieldInfoPtr__ikSolvers), IL2CPP.Il2CppObjectBaseToPtr(value));
|
|
}
|
|
}
|
|
|
|
// Token: 0x04005284 RID: 21124
|
|
private static readonly IntPtr NativeFieldInfoPtr_leftFoot;
|
|
|
|
// Token: 0x04005285 RID: 21125
|
|
private static readonly IntPtr NativeFieldInfoPtr_rightFoot;
|
|
|
|
// Token: 0x04005286 RID: 21126
|
|
private static readonly IntPtr NativeFieldInfoPtr_leftHand;
|
|
|
|
// Token: 0x04005287 RID: 21127
|
|
private static readonly IntPtr NativeFieldInfoPtr_rightHand;
|
|
|
|
// Token: 0x04005288 RID: 21128
|
|
private static readonly IntPtr NativeFieldInfoPtr_spine;
|
|
|
|
// Token: 0x04005289 RID: 21129
|
|
private static readonly IntPtr NativeFieldInfoPtr_lookAt;
|
|
|
|
// Token: 0x0400528A RID: 21130
|
|
private static readonly IntPtr NativeFieldInfoPtr_aim;
|
|
|
|
// Token: 0x0400528B RID: 21131
|
|
private static readonly IntPtr NativeFieldInfoPtr_pelvis;
|
|
|
|
// Token: 0x0400528C RID: 21132
|
|
private static readonly IntPtr NativeFieldInfoPtr__limbs;
|
|
|
|
// Token: 0x0400528D RID: 21133
|
|
private static readonly IntPtr NativeFieldInfoPtr__ikSolvers;
|
|
|
|
// Token: 0x0400528E RID: 21134
|
|
private static readonly IntPtr NativeMethodInfoPtr_get_limbs_Public_get_Il2CppReferenceArray_1_IKSolverLimb_0;
|
|
|
|
// Token: 0x0400528F RID: 21135
|
|
private static readonly IntPtr NativeMethodInfoPtr_get_ikSolvers_Public_get_Il2CppReferenceArray_1_IKSolver_0;
|
|
|
|
// Token: 0x04005290 RID: 21136
|
|
private static readonly IntPtr NativeMethodInfoPtr_AssignReferences_Public_Void_BipedReferences_0;
|
|
|
|
// Token: 0x04005291 RID: 21137
|
|
private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
|
|
}
|
|
}
|