507 lines
15 KiB
C#
507 lines
15 KiB
C#
using System;
|
|
using Cpp2IlInjected;
|
|
using DigitalOpus.MB.Core;
|
|
using UnityEngine;
|
|
|
|
// Token: 0x02000089 RID: 137
|
|
[Token(Token = "0x2000089")]
|
|
public class AI_SealGhost02 : AI_NPC
|
|
{
|
|
// Token: 0x060005C3 RID: 1475 RVA: 0x0000E424 File Offset: 0x0000C624
|
|
[Token(Token = "0x60005C3")]
|
|
[Address(RVA = "0x1863C90", Offset = "0x1862490", VA = "0x181863C90", Slot = "4")]
|
|
public override void Start(GameObject This, NPCManage NPCM)
|
|
{
|
|
base.Start(This, NPCM);
|
|
SealGhost02EffectPlay component = This.GetComponent<SealGhost02EffectPlay>();
|
|
this.g_Effect = component;
|
|
SealGhost02EffectPlay sealGhost02EffectPlay = this.g_Effect;
|
|
MoveController g_Move = this.g_Move;
|
|
sealGhost02EffectPlay.InitData(g_Move);
|
|
this.g_Move.gravity = 42f;
|
|
this.g_Move.fallSpeedMax = -45f;
|
|
Shake shake = new Shake();
|
|
this.g_ShakeHead = shake;
|
|
GameObject g_This = this.g_This;
|
|
Shake shake2 = this.g_ShakeHead;
|
|
Transform transform = Common.FindChild(g_This.transform, "Bip001 Head");
|
|
int num = 0;
|
|
shake2.Start(transform, num != 0);
|
|
Shake shake3 = new Shake();
|
|
this.g_ShakeSpine = shake3;
|
|
GameObject g_This2 = this.g_This;
|
|
Shake shake4 = this.g_ShakeSpine;
|
|
Transform transform2 = Common.FindChild(g_This2.transform, "Bip001 Spine1");
|
|
int num2 = 0;
|
|
shake4.Start(transform2, num2 != 0);
|
|
Shake shake5 = new Shake();
|
|
this.g_ShakeUpperArmL = shake5;
|
|
GameObject g_This3 = this.g_This;
|
|
Shake shake6 = this.g_ShakeUpperArmL;
|
|
Transform transform3 = Common.FindChild(g_This3.transform, "Bip001 L UpperArm");
|
|
int num3 = 0;
|
|
shake6.Start(transform3, num3 != 0);
|
|
Shake shake7 = new Shake();
|
|
this.g_ShakeUpperArmR = shake7;
|
|
GameObject g_This4 = this.g_This;
|
|
Shake shake8 = this.g_ShakeUpperArmR;
|
|
Transform transform4 = Common.FindChild(g_This4.transform, "Bip001 R UpperArm");
|
|
int num4 = 0;
|
|
shake8.Start(transform4, num4 != 0);
|
|
Shake shake9 = new Shake();
|
|
this.g_ShakeThighL = shake9;
|
|
GameObject g_This5 = this.g_This;
|
|
Shake shake10 = this.g_ShakeThighL;
|
|
Transform transform5 = Common.FindChild(g_This5.transform, "Bip001 L Thigh");
|
|
int num5 = 0;
|
|
shake10.Start(transform5, num5 != 0);
|
|
Shake shake11 = new Shake();
|
|
this.g_ShakeThighR = shake11;
|
|
GameObject g_This6 = this.g_This;
|
|
Shake shake12 = this.g_ShakeThighR;
|
|
Transform transform6 = Common.FindChild(g_This6.transform, "Bip001 R Thigh");
|
|
int num6 = 0;
|
|
shake12.Start(transform6, num6 != 0);
|
|
Shake shake13 = new Shake();
|
|
this.g_ShakeAll = shake13;
|
|
GameObject g_This7 = this.g_This;
|
|
Shake shake14 = this.g_ShakeAll;
|
|
Transform transform7 = Common.FindChild(g_This7.transform, "Bip_GhostE");
|
|
int num7 = 0;
|
|
shake14.Start(transform7, num7 != 0);
|
|
Animator g_Anim = this.g_Anim;
|
|
this.g_fAniSkirtWeights = 0.3f;
|
|
g_Anim.SetLayerWeight(1, 0.3f);
|
|
Animator g_Anim2 = this.g_Anim;
|
|
this.g_fAniDamageHead = 0f;
|
|
int num8 = 0;
|
|
g_Anim2.SetLayerWeight(2, (float)num8);
|
|
this.g_bLookAtEnable = true;
|
|
int num9 = 0;
|
|
this.g_Status = (AI_NPC.AIStatus)((ulong)17L);
|
|
this.InitFightStatus((AI_SealGhost02.AIFighting)num9);
|
|
}
|
|
|
|
// Token: 0x060005C4 RID: 1476 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60005C4")]
|
|
[Address(RVA = "0x1864180", Offset = "0x1862980", VA = "0x181864180", Slot = "5")]
|
|
public override void Update(float fDeltaTime)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060005C5 RID: 1477 RVA: 0x0000E69C File Offset: 0x0000C89C
|
|
[Token(Token = "0x60005C5")]
|
|
[Address(RVA = "0x1863900", Offset = "0x1862100", VA = "0x181863900", Slot = "6")]
|
|
public override void LateUpdate()
|
|
{
|
|
this.FDebut();
|
|
this.g_ShakeHead.Update();
|
|
this.g_ShakeSpine.Update();
|
|
this.g_ShakeUpperArmL.Update();
|
|
this.g_ShakeUpperArmR.Update();
|
|
this.g_ShakeThighL.Update();
|
|
this.g_ShakeThighR.Update();
|
|
this.g_ShakeAll.Update();
|
|
}
|
|
|
|
// Token: 0x060005C6 RID: 1478 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60005C6")]
|
|
[Address(RVA = "0x18617B0", Offset = "0x185FFB0", VA = "0x1818617B0", Slot = "22")]
|
|
public override void Fighting()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060005C7 RID: 1479 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60005C7")]
|
|
[Address(RVA = "0x18629E0", Offset = "0x18611E0", VA = "0x1818629E0")]
|
|
private void InitFightStatus(AI_SealGhost02.AIFighting Status)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060005C8 RID: 1480 RVA: 0x0000E704 File Offset: 0x0000C904
|
|
[Token(Token = "0x60005C8")]
|
|
[Address(RVA = "0x1860100", Offset = "0x185E900", VA = "0x181860100")]
|
|
private void AttackSelect()
|
|
{
|
|
int num = UnityEngine.Random.Range(0, 4);
|
|
if (num != 0)
|
|
{
|
|
if (num == 0)
|
|
{
|
|
this.g_NextFighting = (AI_SealGhost02.AIFighting)((ulong)10L);
|
|
return;
|
|
}
|
|
if (num == 0)
|
|
{
|
|
this.g_NextFighting = (AI_SealGhost02.AIFighting)((ulong)11L);
|
|
return;
|
|
}
|
|
if (num == 1)
|
|
{
|
|
this.g_NextFighting = (AI_SealGhost02.AIFighting)((ulong)12L);
|
|
return;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
this.g_NextFighting = (AI_SealGhost02.AIFighting)((ulong)9L);
|
|
}
|
|
}
|
|
|
|
// Token: 0x060005C9 RID: 1481 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60005C9")]
|
|
[Address(RVA = "0x29E8B0", Offset = "0x29D0B0", VA = "0x18029E8B0")]
|
|
private void FDebut()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060005CA RID: 1482 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60005CA")]
|
|
[Address(RVA = "0x18614C0", Offset = "0x185FCC0", VA = "0x1818614C0")]
|
|
private void FWatch()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060005CB RID: 1483 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60005CB")]
|
|
[Address(RVA = "0x1860ED0", Offset = "0x185F6D0", VA = "0x181860ED0")]
|
|
private void FMoveStart()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060005CC RID: 1484 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60005CC")]
|
|
[Address(RVA = "0x1860FE0", Offset = "0x185F7E0", VA = "0x181860FE0")]
|
|
private void FMove()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060005CD RID: 1485 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60005CD")]
|
|
[Address(RVA = "0x1860860", Offset = "0x185F060", VA = "0x181860860")]
|
|
private void FMoveEnd()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060005CE RID: 1486 RVA: 0x0000E754 File Offset: 0x0000C954
|
|
[Token(Token = "0x60005CE")]
|
|
[Address(RVA = "0x1860300", Offset = "0x185EB00", VA = "0x181860300")]
|
|
private void FAttack()
|
|
{
|
|
float g_fWaitTime = this.g_fWaitTime;
|
|
int num = 0;
|
|
if (g_fWaitTime <= (float)num)
|
|
{
|
|
this.InitFightStatus(AI_SealGhost02.AIFighting.Watch);
|
|
return;
|
|
}
|
|
this.g_fWaitTime = g_fWaitTime;
|
|
}
|
|
|
|
// Token: 0x060005CF RID: 1487 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60005CF")]
|
|
[Address(RVA = "0x1861310", Offset = "0x185FB10", VA = "0x181861310")]
|
|
private void FTrunBack()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060005D0 RID: 1488 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60005D0")]
|
|
[Address(RVA = "0x1860630", Offset = "0x185EE30", VA = "0x181860630")]
|
|
private void FJump()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060005D1 RID: 1489 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60005D1")]
|
|
[Address(RVA = "0x1860440", Offset = "0x185EC40", VA = "0x181860440")]
|
|
private void FFall()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060005D2 RID: 1490 RVA: 0x0000E780 File Offset: 0x0000C980
|
|
[Token(Token = "0x60005D2")]
|
|
[Address(RVA = "0x1860300", Offset = "0x185EB00", VA = "0x181860300")]
|
|
private void FDamage()
|
|
{
|
|
float g_fWaitTime = this.g_fWaitTime;
|
|
int num = 0;
|
|
if (g_fWaitTime <= (float)num)
|
|
{
|
|
this.InitFightStatus(AI_SealGhost02.AIFighting.Watch);
|
|
return;
|
|
}
|
|
this.g_fWaitTime = g_fWaitTime;
|
|
}
|
|
|
|
// Token: 0x060005D3 RID: 1491 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60005D3")]
|
|
[Address(RVA = "0x1860330", Offset = "0x185EB30", VA = "0x181860330")]
|
|
private void FDeath()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060005D4 RID: 1492 RVA: 0x0000E7AC File Offset: 0x0000C9AC
|
|
[Token(Token = "0x60005D4")]
|
|
[Address(RVA = "0x1860410", Offset = "0x185EC10", VA = "0x181860410")]
|
|
private void FDestory()
|
|
{
|
|
float g_fWaitTime = this.g_fWaitTime;
|
|
int num = 0;
|
|
if (g_fWaitTime <= (float)num)
|
|
{
|
|
this.InitFightStatus(AI_SealGhost02.AIFighting.End);
|
|
return;
|
|
}
|
|
this.g_fWaitTime = g_fWaitTime;
|
|
}
|
|
|
|
// Token: 0x060005D5 RID: 1493 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60005D5")]
|
|
[Address(RVA = "0x1861F50", Offset = "0x1860750", VA = "0x181861F50", Slot = "33")]
|
|
public override void Hit(AttackData Data)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060005D6 RID: 1494 RVA: 0x0000E7D8 File Offset: 0x0000C9D8
|
|
[Token(Token = "0x60005D6")]
|
|
[Address(RVA = "0x16A2170", Offset = "0x16A0970", VA = "0x1816A2170", Slot = "30")]
|
|
public override void Resurrection()
|
|
{
|
|
base.Resurrection();
|
|
this.g_bDeath = false;
|
|
bool doTan = ((MB_IMeshBakerSettings)this).doTan;
|
|
}
|
|
|
|
// Token: 0x060005D7 RID: 1495 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60005D7")]
|
|
[Address(RVA = "0x1860170", Offset = "0x185E970", VA = "0x181860170", Slot = "31")]
|
|
public override void Create()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060005D8 RID: 1496 RVA: 0x0000E7FC File Offset: 0x0000C9FC
|
|
[Token(Token = "0x60005D8")]
|
|
[Address(RVA = "0x18639A0", Offset = "0x18621A0", VA = "0x1818639A0", Slot = "32")]
|
|
public override void Remove()
|
|
{
|
|
this.FDebut();
|
|
NPCManage g_NPCM = this.g_NPCM;
|
|
int num = 0;
|
|
g_NPCM.SetLockPoint(num != 0);
|
|
this.g_Effect.RemoveEnemy();
|
|
GameObject g_This = this.g_This;
|
|
int num2 = 0;
|
|
g_This.SetActive(num2 != 0);
|
|
}
|
|
|
|
// Token: 0x060005D9 RID: 1497 RVA: 0x0000E840 File Offset: 0x0000CA40
|
|
[Token(Token = "0x60005D9")]
|
|
[Address(RVA = "0x1863C50", Offset = "0x1862450", VA = "0x181863C50", Slot = "35")]
|
|
public override void SetTimeScale(float fTimeScale)
|
|
{
|
|
base.SetTimeScale(fTimeScale);
|
|
this.g_Effect.SetTimeScale(fTimeScale);
|
|
}
|
|
|
|
// Token: 0x060005DA RID: 1498 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60005DA")]
|
|
[Address(RVA = "0x1863A00", Offset = "0x1862200", VA = "0x181863A00", Slot = "36")]
|
|
public override void SetAiStatus(AI_NPC.AIStatus Status)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060005DB RID: 1499 RVA: 0x0000E868 File Offset: 0x0000CA68
|
|
[Token(Token = "0x60005DB")]
|
|
[Address(RVA = "0x1864250", Offset = "0x1862A50", VA = "0x181864250")]
|
|
public AI_SealGhost02()
|
|
{
|
|
}
|
|
|
|
// Token: 0x040006DC RID: 1756
|
|
[FieldOffset(Offset = "0x170")]
|
|
[Token(Token = "0x40006DC")]
|
|
private SealGhost02EffectPlay g_Effect;
|
|
|
|
// Token: 0x040006DD RID: 1757
|
|
[FieldOffset(Offset = "0x178")]
|
|
[Token(Token = "0x40006DD")]
|
|
private float g_fAniSkirtWeights;
|
|
|
|
// Token: 0x040006DE RID: 1758
|
|
[FieldOffset(Offset = "0x17C")]
|
|
[Token(Token = "0x40006DE")]
|
|
private float g_fAniDamageHead;
|
|
|
|
// Token: 0x040006DF RID: 1759
|
|
[FieldOffset(Offset = "0x180")]
|
|
[Token(Token = "0x40006DF")]
|
|
private Shake g_ShakeHead;
|
|
|
|
// Token: 0x040006E0 RID: 1760
|
|
[FieldOffset(Offset = "0x188")]
|
|
[Token(Token = "0x40006E0")]
|
|
private Shake g_ShakeSpine;
|
|
|
|
// Token: 0x040006E1 RID: 1761
|
|
[FieldOffset(Offset = "0x190")]
|
|
[Token(Token = "0x40006E1")]
|
|
private Shake g_ShakeUpperArmL;
|
|
|
|
// Token: 0x040006E2 RID: 1762
|
|
[FieldOffset(Offset = "0x198")]
|
|
[Token(Token = "0x40006E2")]
|
|
private Shake g_ShakeUpperArmR;
|
|
|
|
// Token: 0x040006E3 RID: 1763
|
|
[FieldOffset(Offset = "0x1A0")]
|
|
[Token(Token = "0x40006E3")]
|
|
private Shake g_ShakeThighL;
|
|
|
|
// Token: 0x040006E4 RID: 1764
|
|
[FieldOffset(Offset = "0x1A8")]
|
|
[Token(Token = "0x40006E4")]
|
|
private Shake g_ShakeThighR;
|
|
|
|
// Token: 0x040006E5 RID: 1765
|
|
[FieldOffset(Offset = "0x1B0")]
|
|
[Token(Token = "0x40006E5")]
|
|
private Shake g_ShakeAll;
|
|
|
|
// Token: 0x040006E6 RID: 1766
|
|
[FieldOffset(Offset = "0x1B8")]
|
|
[Token(Token = "0x40006E6")]
|
|
private AI_SealGhost02.AIFighting g_Fighting = (AI_SealGhost02.AIFighting)((ulong)1L);
|
|
|
|
// Token: 0x040006E7 RID: 1767
|
|
[FieldOffset(Offset = "0x1BC")]
|
|
[Token(Token = "0x40006E7")]
|
|
private AI_SealGhost02.AIFighting g_NextFighting;
|
|
|
|
// Token: 0x040006E8 RID: 1768
|
|
[Token(Token = "0x40006E8")]
|
|
private const float g_fAttackRange = 10.5f;
|
|
|
|
// Token: 0x040006E9 RID: 1769
|
|
[FieldOffset(Offset = "0x1C0")]
|
|
[Token(Token = "0x40006E9")]
|
|
private float g_fTemp01Time;
|
|
|
|
// Token: 0x040006EA RID: 1770
|
|
[FieldOffset(Offset = "0x1C4")]
|
|
[Token(Token = "0x40006EA")]
|
|
private bool g_bMove;
|
|
|
|
// Token: 0x040006EB RID: 1771
|
|
[Token(Token = "0x40006EB")]
|
|
private const float g_fTrunAngle = 105f;
|
|
|
|
// Token: 0x040006EC RID: 1772
|
|
[FieldOffset(Offset = "0x1C8")]
|
|
[Token(Token = "0x40006EC")]
|
|
private Vector3 g_v3MoveDirection;
|
|
|
|
// Token: 0x040006ED RID: 1773
|
|
[FieldOffset(Offset = "0x1D4")]
|
|
[Token(Token = "0x40006ED")]
|
|
private Quaternion g_qMoveDirection;
|
|
|
|
// Token: 0x040006EE RID: 1774
|
|
[FieldOffset(Offset = "0x1E4")]
|
|
[Token(Token = "0x40006EE")]
|
|
private Vector3 g_v3JumpPoint;
|
|
|
|
// Token: 0x040006EF RID: 1775
|
|
[FieldOffset(Offset = "0x1F0")]
|
|
[Token(Token = "0x40006EF")]
|
|
private int g_iPlayerArea;
|
|
|
|
// Token: 0x040006F0 RID: 1776
|
|
[FieldOffset(Offset = "0x1F4")]
|
|
[Token(Token = "0x40006F0")]
|
|
private int g_iOwnArea;
|
|
|
|
// Token: 0x040006F1 RID: 1777
|
|
[FieldOffset(Offset = "0x1F8")]
|
|
[Token(Token = "0x40006F1")]
|
|
private int g_iScript;
|
|
|
|
// Token: 0x0200008A RID: 138
|
|
[Token(Token = "0x200008A")]
|
|
private enum AIFighting
|
|
{
|
|
// Token: 0x040006F3 RID: 1779
|
|
[Token(Token = "0x40006F3")]
|
|
Null,
|
|
// Token: 0x040006F4 RID: 1780
|
|
[Token(Token = "0x40006F4")]
|
|
Watch,
|
|
// Token: 0x040006F5 RID: 1781
|
|
[Token(Token = "0x40006F5")]
|
|
MoveStart,
|
|
// Token: 0x040006F6 RID: 1782
|
|
[Token(Token = "0x40006F6")]
|
|
Move,
|
|
// Token: 0x040006F7 RID: 1783
|
|
[Token(Token = "0x40006F7")]
|
|
MoveEnd,
|
|
// Token: 0x040006F8 RID: 1784
|
|
[Token(Token = "0x40006F8")]
|
|
TrunBack,
|
|
// Token: 0x040006F9 RID: 1785
|
|
[Token(Token = "0x40006F9")]
|
|
Jump,
|
|
// Token: 0x040006FA RID: 1786
|
|
[Token(Token = "0x40006FA")]
|
|
Fall,
|
|
// Token: 0x040006FB RID: 1787
|
|
[Token(Token = "0x40006FB")]
|
|
Land,
|
|
// Token: 0x040006FC RID: 1788
|
|
[Token(Token = "0x40006FC")]
|
|
Attack01,
|
|
// Token: 0x040006FD RID: 1789
|
|
[Token(Token = "0x40006FD")]
|
|
Attack02,
|
|
// Token: 0x040006FE RID: 1790
|
|
[Token(Token = "0x40006FE")]
|
|
Attack03,
|
|
// Token: 0x040006FF RID: 1791
|
|
[Token(Token = "0x40006FF")]
|
|
Attack04,
|
|
// Token: 0x04000700 RID: 1792
|
|
[Token(Token = "0x4000700")]
|
|
Attack05,
|
|
// Token: 0x04000701 RID: 1793
|
|
[Token(Token = "0x4000701")]
|
|
Damage,
|
|
// Token: 0x04000702 RID: 1794
|
|
[Token(Token = "0x4000702")]
|
|
Death,
|
|
// Token: 0x04000703 RID: 1795
|
|
[Token(Token = "0x4000703")]
|
|
Destroy,
|
|
// Token: 0x04000704 RID: 1796
|
|
[Token(Token = "0x4000704")]
|
|
End,
|
|
// Token: 0x04000705 RID: 1797
|
|
[Token(Token = "0x4000705")]
|
|
Debut
|
|
}
|
|
}
|