Decompiled source of FishingPlus v1.5.6

GDWeave/mods/FishingPlus/FishingPlus.dll

Decompiled 2 days ago
using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using System.Text.Json.Serialization;
using FishingPlus.Mods;
using GDWeave;
using GDWeave.Godot;
using GDWeave.Godot.Variants;
using GDWeave.Modding;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(/*Could not decode attribute arguments.*/)]
[assembly: TargetFramework(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")]
[assembly: AssemblyCompany("FishingPlus")]
[assembly: AssemblyConfiguration("Release")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0+744286bab404e2d7fbcd0d60caea633e722d2cfb")]
[assembly: AssemblyProduct("FishingPlus")]
[assembly: AssemblyTitle("FishingPlus")]
[assembly: AssemblyVersion("1.0.0.0")]
[module: RefSafetyRules(11)]
namespace FishingPlus
{
	public class Config
	{
		[JsonInclude]
		public bool CurrentFishChance = true;

		[JsonInclude]
		public bool LootTableView = true;

		[JsonInclude]
		public bool NeedCertainFish = true;

		[JsonInclude]
		public string[] FishIDs = new string[1] { "fish_lake_guppy" };

		[JsonInclude]
		public bool AutoSelectBait = true;

		[JsonInclude]
		public bool AutoCollectBuddies;

		[JsonInclude]
		public bool PatientLure;
	}
	public class Mod : IMod, global::System.IDisposable
	{
		public Config Config;

		public Mod(IModInterface modInterface)
		{
			Config = modInterface.ReadConfig<Config>();
			modInterface.Logger.Information("FishingPlus has loaded!");
			modInterface.RegisterScriptMod((IScriptMod)(object)new InjectConfig());
			modInterface.RegisterScriptMod((IScriptMod)(object)new InjectMenu());
			modInterface.RegisterScriptMod((IScriptMod)(object)new InjectPlayerAutism());
			modInterface.RegisterScriptMod((IScriptMod)(object)new FishChance());
			modInterface.RegisterScriptMod((IScriptMod)(object)new LootTable());
			modInterface.RegisterScriptMod((IScriptMod)(object)new NeedFish());
			modInterface.RegisterScriptMod((IScriptMod)(object)new AutoSelectBait());
			modInterface.RegisterScriptMod((IScriptMod)(object)new AutoCollectBuddies());
			modInterface.RegisterScriptMod((IScriptMod)(object)new PatientLurePatch());
			modInterface.RegisterScriptMod((IScriptMod)(object)new CustomTitle());
		}

		public void Dispose()
		{
		}
	}
	public class CustomTitle : IScriptMod
	{
		[CompilerGenerated]
		private sealed class <Modify>d__1 : global::System.Collections.Generic.IEnumerable<Token>, global::System.Collections.IEnumerable, global::System.Collections.Generic.IEnumerator<Token>, global::System.Collections.IEnumerator, global::System.IDisposable
		{
			private int <>1__state;

			private Token <>2__current;

			private int <>l__initialThreadId;

			private global::System.Collections.Generic.IEnumerable<Token> tokens;

			public global::System.Collections.Generic.IEnumerable<Token> <>3__tokens;

			private MultiTokenWaiter <updateTitleWaiter>5__2;

			private global::System.Collections.Generic.IEnumerator<Token> <>7__wrap2;

			Token global::System.Collections.Generic.IEnumerator<Token>.Current
			{
				[DebuggerHidden]
				get
				{
					return <>2__current;
				}
			}

			object global::System.Collections.IEnumerator.Current
			{
				[DebuggerHidden]
				get
				{
					return <>2__current;
				}
			}

			[DebuggerHidden]
			public <Modify>d__1(int <>1__state)
			{
				this.<>1__state = <>1__state;
				<>l__initialThreadId = Environment.CurrentManagedThreadId;
			}

			[DebuggerHidden]
			void global::System.IDisposable.Dispose()
			{
				int num = <>1__state;
				if (num == -3 || (uint)(num - 1) <= 12u)
				{
					try
					{
					}
					finally
					{
						<>m__Finally1();
					}
				}
			}

			private bool MoveNext()
			{
				//IL_0130: Unknown result type (might be due to invalid IL or missing references)
				//IL_013a: Expected O, but got Unknown
				//IL_0156: Unknown result type (might be due to invalid IL or missing references)
				//IL_0160: Expected O, but got Unknown
				//IL_0181: Unknown result type (might be due to invalid IL or missing references)
				//IL_018b: Expected O, but got Unknown
				//IL_01ac: Unknown result type (might be due to invalid IL or missing references)
				//IL_01b6: Expected O, but got Unknown
				//IL_01b1: Unknown result type (might be due to invalid IL or missing references)
				//IL_01bb: Expected O, but got Unknown
				//IL_01dd: Unknown result type (might be due to invalid IL or missing references)
				//IL_01e7: Expected O, but got Unknown
				//IL_0203: Unknown result type (might be due to invalid IL or missing references)
				//IL_020d: Expected O, but got Unknown
				//IL_022f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0239: Expected O, but got Unknown
				//IL_0255: Unknown result type (might be due to invalid IL or missing references)
				//IL_025f: Expected O, but got Unknown
				//IL_025a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0264: Expected O, but got Unknown
				//IL_0287: Unknown result type (might be due to invalid IL or missing references)
				//IL_0291: Expected O, but got Unknown
				//IL_02ae: Unknown result type (might be due to invalid IL or missing references)
				//IL_02b8: Expected O, but got Unknown
				//IL_02d5: Unknown result type (might be due to invalid IL or missing references)
				//IL_02df: Expected O, but got Unknown
				//IL_00c2: Unknown result type (might be due to invalid IL or missing references)
				//IL_00cc: Expected O, but got Unknown
				try
				{
					switch (<>1__state)
					{
					default:
						return false;
					case 0:
						<>1__state = -1;
						<updateTitleWaiter>5__2 = new MultiTokenWaiter(new Func<Token, bool>[3]
						{
							delegate(Token t)
							{
								IdentifierToken val2 = (IdentifierToken)(object)((t is IdentifierToken) ? t : null);
								return val2 != null && val2.Name == "_update_title";
							},
							delegate(Token t)
							{
								IdentifierToken val = (IdentifierToken)(object)((t is IdentifierToken) ? t : null);
								return val != null && val.Name == "KNOWN_CONTRIBUTORS";
							},
							(Token t) => (int)t.Type == 89
						}, false, true);
						<>7__wrap2 = tokens.GetEnumerator();
						<>1__state = -3;
						break;
					case 1:
						<>1__state = -3;
						<>2__current = new Token((TokenType)38, (uint?)null);
						<>1__state = 2;
						return true;
					case 2:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("player_id");
						<>1__state = 3;
						return true;
					case 3:
						<>1__state = -3;
						<>2__current = new Token((TokenType)7, (uint?)null);
						<>1__state = 4;
						return true;
					case 4:
						<>1__state = -3;
						<>2__current = (Token)new ConstantToken((Variant)new IntVariant(76561198890145674L, true));
						<>1__state = 5;
						return true;
					case 5:
						<>1__state = -3;
						<>2__current = new Token((TokenType)86, (uint?)null);
						<>1__state = 6;
						return true;
					case 6:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("_name");
						<>1__state = 7;
						return true;
					case 7:
						<>1__state = -3;
						<>2__current = new Token((TokenType)23, (uint?)null);
						<>1__state = 8;
						return true;
					case 8:
						<>1__state = -3;
						<>2__current = (Token)new ConstantToken((Variant)new StringVariant("[color=#ABFAA9][FISHING+ DEV][/color]\n"));
						<>1__state = 9;
						return true;
					case 9:
						<>1__state = -3;
						<>2__current = new Token((TokenType)16, (uint?)null);
						<>1__state = 10;
						return true;
					case 10:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("_name");
						<>1__state = 11;
						return true;
					case 11:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)1u);
						<>1__state = 12;
						return true;
					case 12:
						<>1__state = -3;
						break;
					case 13:
						<>1__state = -3;
						break;
					}
					if (((global::System.Collections.IEnumerator)<>7__wrap2).MoveNext())
					{
						Token current = <>7__wrap2.Current;
						if (<updateTitleWaiter>5__2.Check(current))
						{
							<>2__current = current;
							<>1__state = 1;
							return true;
						}
						<>2__current = current;
						<>1__state = 13;
						return true;
					}
					<>m__Finally1();
					<>7__wrap2 = null;
					return false;
				}
				catch
				{
					//try-fault
					((global::System.IDisposable)this).Dispose();
					throw;
				}
			}

			bool global::System.Collections.IEnumerator.MoveNext()
			{
				//ILSpy generated this explicit interface implementation from .override directive in MoveNext
				return this.MoveNext();
			}

			private void <>m__Finally1()
			{
				<>1__state = -1;
				if (<>7__wrap2 != null)
				{
					((global::System.IDisposable)<>7__wrap2).Dispose();
				}
			}

			[DebuggerHidden]
			void global::System.Collections.IEnumerator.Reset()
			{
				//IL_0000: Unknown result type (might be due to invalid IL or missing references)
				throw new NotSupportedException();
			}

			[DebuggerHidden]
			global::System.Collections.Generic.IEnumerator<Token> global::System.Collections.Generic.IEnumerable<Token>.GetEnumerator()
			{
				<Modify>d__1 <Modify>d__;
				if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId)
				{
					<>1__state = 0;
					<Modify>d__ = this;
				}
				else
				{
					<Modify>d__ = new <Modify>d__1(0);
				}
				<Modify>d__.tokens = <>3__tokens;
				return <Modify>d__;
			}

			[DebuggerHidden]
			global::System.Collections.IEnumerator global::System.Collections.IEnumerable.GetEnumerator()
			{
				return (global::System.Collections.IEnumerator)((global::System.Collections.Generic.IEnumerable<Token>)this).GetEnumerator();
			}
		}

		public bool ShouldRun(string path)
		{
			return path == "res://Scenes/Entities/Player/player_label.gdc";
		}

		[IteratorStateMachine(typeof(<Modify>d__1))]
		public global::System.Collections.Generic.IEnumerable<Token> Modify(string path, global::System.Collections.Generic.IEnumerable<Token> tokens)
		{
			MultiTokenWaiter updateTitleWaiter = new MultiTokenWaiter(new Func<Token, bool>[3]
			{
				delegate(Token t)
				{
					IdentifierToken val2 = (IdentifierToken)(object)((t is IdentifierToken) ? t : null);
					return val2 != null && val2.Name == "_update_title";
				},
				delegate(Token t)
				{
					IdentifierToken val = (IdentifierToken)(object)((t is IdentifierToken) ? t : null);
					return val != null && val.Name == "KNOWN_CONTRIBUTORS";
				},
				(Token t) => (int)t.Type == 89
			}, false, true);
			global::System.Collections.Generic.IEnumerator<Token> enumerator = tokens.GetEnumerator();
			try
			{
				while (((global::System.Collections.IEnumerator)enumerator).MoveNext())
				{
					Token current = enumerator.Current;
					if (updateTitleWaiter.Check(current))
					{
						yield return current;
						yield return new Token((TokenType)38, (uint?)null);
						yield return (Token)new IdentifierToken("player_id");
						yield return new Token((TokenType)7, (uint?)null);
						yield return (Token)new ConstantToken((Variant)new IntVariant(76561198890145674L, true));
						yield return new Token((TokenType)86, (uint?)null);
						yield return (Token)new IdentifierToken("_name");
						yield return new Token((TokenType)23, (uint?)null);
						yield return (Token)new ConstantToken((Variant)new StringVariant("[color=#ABFAA9][FISHING+ DEV][/color]\n"));
						yield return new Token((TokenType)16, (uint?)null);
						yield return (Token)new IdentifierToken("_name");
						yield return new Token((TokenType)89, (uint?)1u);
					}
					else
					{
						yield return current;
					}
				}
			}
			finally
			{
				((global::System.IDisposable)enumerator)?.Dispose();
			}
		}
	}
	public class InjectConfig : IScriptMod
	{
		[CompilerGenerated]
		private sealed class <Modify>d__1 : global::System.Collections.Generic.IEnumerable<Token>, global::System.Collections.IEnumerable, global::System.Collections.Generic.IEnumerator<Token>, global::System.Collections.IEnumerator, global::System.IDisposable
		{
			private int <>1__state;

			private Token <>2__current;

			private int <>l__initialThreadId;

			private global::System.Collections.Generic.IEnumerable<Token> tokens;

			public global::System.Collections.Generic.IEnumerable<Token> <>3__tokens;

			private MultiTokenWaiter <extendsWaiter>5__2;

			private global::System.Collections.Generic.IEnumerator<Token> <>7__wrap2;

			Token global::System.Collections.Generic.IEnumerator<Token>.Current
			{
				[DebuggerHidden]
				get
				{
					return <>2__current;
				}
			}

			object global::System.Collections.IEnumerator.Current
			{
				[DebuggerHidden]
				get
				{
					return <>2__current;
				}
			}

			[DebuggerHidden]
			public <Modify>d__1(int <>1__state)
			{
				this.<>1__state = <>1__state;
				<>l__initialThreadId = Environment.CurrentManagedThreadId;
			}

			[DebuggerHidden]
			void global::System.IDisposable.Dispose()
			{
				int num = <>1__state;
				if (num == -3 || (uint)(num - 1) <= 9u)
				{
					try
					{
					}
					finally
					{
						<>m__Finally1();
					}
				}
			}

			private bool MoveNext()
			{
				//IL_0102: Unknown result type (might be due to invalid IL or missing references)
				//IL_010c: Expected O, but got Unknown
				//IL_012e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0138: Expected O, but got Unknown
				//IL_015a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0164: Expected O, but got Unknown
				//IL_0180: Unknown result type (might be due to invalid IL or missing references)
				//IL_018a: Expected O, but got Unknown
				//IL_01ac: Unknown result type (might be due to invalid IL or missing references)
				//IL_01b6: Expected O, but got Unknown
				//IL_01d8: Unknown result type (might be due to invalid IL or missing references)
				//IL_01e2: Expected O, but got Unknown
				//IL_01fe: Unknown result type (might be due to invalid IL or missing references)
				//IL_0208: Expected O, but got Unknown
				//IL_0203: Unknown result type (might be due to invalid IL or missing references)
				//IL_020d: Expected O, but got Unknown
				//IL_022c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0236: Expected O, but got Unknown
				//IL_0094: Unknown result type (might be due to invalid IL or missing references)
				//IL_009e: Expected O, but got Unknown
				try
				{
					switch (<>1__state)
					{
					default:
						return false;
					case 0:
						<>1__state = -1;
						<extendsWaiter>5__2 = new MultiTokenWaiter(new Func<Token, bool>[2]
						{
							(Token t) => (int)t.Type == 51,
							(Token t) => (int)t.Type == 89
						}, false, true);
						<>7__wrap2 = tokens.GetEnumerator();
						<>1__state = -3;
						break;
					case 1:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)null);
						<>1__state = 2;
						return true;
					case 2:
						<>1__state = -3;
						<>2__current = new Token((TokenType)53, (uint?)null);
						<>1__state = 3;
						return true;
					case 3:
						<>1__state = -3;
						<>2__current = new Token((TokenType)59, (uint?)null);
						<>1__state = 4;
						return true;
					case 4:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("FishingPlus");
						<>1__state = 5;
						return true;
					case 5:
						<>1__state = -3;
						<>2__current = new Token((TokenType)23, (uint?)null);
						<>1__state = 6;
						return true;
					case 6:
						<>1__state = -3;
						<>2__current = new Token((TokenType)87, (uint?)null);
						<>1__state = 7;
						return true;
					case 7:
						<>1__state = -3;
						<>2__current = (Token)new ConstantToken((Variant)new StringVariant("/root/FishingPlus"));
						<>1__state = 8;
						return true;
					case 8:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)null);
						<>1__state = 9;
						return true;
					case 9:
						<>1__state = -3;
						break;
					case 10:
						<>1__state = -3;
						break;
					}
					if (((global::System.Collections.IEnumerator)<>7__wrap2).MoveNext())
					{
						Token current = <>7__wrap2.Current;
						if (<extendsWaiter>5__2.Check(current))
						{
							<>2__current = current;
							<>1__state = 1;
							return true;
						}
						<>2__current = current;
						<>1__state = 10;
						return true;
					}
					<>m__Finally1();
					<>7__wrap2 = null;
					return false;
				}
				catch
				{
					//try-fault
					((global::System.IDisposable)this).Dispose();
					throw;
				}
			}

			bool global::System.Collections.IEnumerator.MoveNext()
			{
				//ILSpy generated this explicit interface implementation from .override directive in MoveNext
				return this.MoveNext();
			}

			private void <>m__Finally1()
			{
				<>1__state = -1;
				if (<>7__wrap2 != null)
				{
					((global::System.IDisposable)<>7__wrap2).Dispose();
				}
			}

			[DebuggerHidden]
			void global::System.Collections.IEnumerator.Reset()
			{
				//IL_0000: Unknown result type (might be due to invalid IL or missing references)
				throw new NotSupportedException();
			}

			[DebuggerHidden]
			global::System.Collections.Generic.IEnumerator<Token> global::System.Collections.Generic.IEnumerable<Token>.GetEnumerator()
			{
				<Modify>d__1 <Modify>d__;
				if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId)
				{
					<>1__state = 0;
					<Modify>d__ = this;
				}
				else
				{
					<Modify>d__ = new <Modify>d__1(0);
				}
				<Modify>d__.tokens = <>3__tokens;
				return <Modify>d__;
			}

			[DebuggerHidden]
			global::System.Collections.IEnumerator global::System.Collections.IEnumerable.GetEnumerator()
			{
				return (global::System.Collections.IEnumerator)((global::System.Collections.Generic.IEnumerable<Token>)this).GetEnumerator();
			}
		}

		public bool ShouldRun(string path)
		{
			if (!(path == "res://Scenes/Entities/Player/player.gdc") && !(path == "res://Scenes/Minigames/Fishing3/fishing3.gdc"))
			{
				return path == "res://Scenes/Entities/Props/fish_trap.gdc";
			}
			return true;
		}

		[IteratorStateMachine(typeof(<Modify>d__1))]
		public global::System.Collections.Generic.IEnumerable<Token> Modify(string path, global::System.Collections.Generic.IEnumerable<Token> tokens)
		{
			MultiTokenWaiter extendsWaiter = new MultiTokenWaiter(new Func<Token, bool>[2]
			{
				(Token t) => (int)t.Type == 51,
				(Token t) => (int)t.Type == 89
			}, false, true);
			global::System.Collections.Generic.IEnumerator<Token> enumerator = tokens.GetEnumerator();
			try
			{
				while (((global::System.Collections.IEnumerator)enumerator).MoveNext())
				{
					Token current = enumerator.Current;
					if (extendsWaiter.Check(current))
					{
						yield return current;
						yield return new Token((TokenType)89, (uint?)null);
						yield return new Token((TokenType)53, (uint?)null);
						yield return new Token((TokenType)59, (uint?)null);
						yield return (Token)new IdentifierToken("FishingPlus");
						yield return new Token((TokenType)23, (uint?)null);
						yield return new Token((TokenType)87, (uint?)null);
						yield return (Token)new ConstantToken((Variant)new StringVariant("/root/FishingPlus"));
						yield return new Token((TokenType)89, (uint?)null);
					}
					else
					{
						yield return current;
					}
				}
			}
			finally
			{
				((global::System.IDisposable)enumerator)?.Dispose();
			}
		}
	}
	public class InjectMenu : IScriptMod
	{
		[CompilerGenerated]
		private sealed class <Modify>d__1 : global::System.Collections.Generic.IEnumerable<Token>, global::System.Collections.IEnumerable, global::System.Collections.Generic.IEnumerator<Token>, global::System.Collections.IEnumerator, global::System.IDisposable
		{
			private int <>1__state;

			private Token <>2__current;

			private int <>l__initialThreadId;

			private global::System.Collections.Generic.IEnumerable<Token> tokens;

			public global::System.Collections.Generic.IEnumerable<Token> <>3__tokens;

			private MultiTokenWaiter <extendsWaiter>5__2;

			private FunctionWaiter <readyWaiter>5__3;

			private MultiTokenWaiter <notUsingChat>5__4;

			private global::System.Collections.Generic.IEnumerator<Token> <>7__wrap4;

			Token global::System.Collections.Generic.IEnumerator<Token>.Current
			{
				[DebuggerHidden]
				get
				{
					return <>2__current;
				}
			}

			object global::System.Collections.IEnumerator.Current
			{
				[DebuggerHidden]
				get
				{
					return <>2__current;
				}
			}

			[DebuggerHidden]
			public <Modify>d__1(int <>1__state)
			{
				this.<>1__state = <>1__state;
				<>l__initialThreadId = Environment.CurrentManagedThreadId;
			}

			[DebuggerHidden]
			void global::System.IDisposable.Dispose()
			{
				int num = <>1__state;
				if (num == -3 || (uint)(num - 1) <= 84u)
				{
					try
					{
					}
					finally
					{
						<>m__Finally1();
					}
				}
			}

			private bool MoveNext()
			{
				//IL_03a8: Unknown result type (might be due to invalid IL or missing references)
				//IL_03b2: Expected O, but got Unknown
				//IL_03d4: Unknown result type (might be due to invalid IL or missing references)
				//IL_03de: Expected O, but got Unknown
				//IL_0400: Unknown result type (might be due to invalid IL or missing references)
				//IL_040a: Expected O, but got Unknown
				//IL_0426: Unknown result type (might be due to invalid IL or missing references)
				//IL_0430: Expected O, but got Unknown
				//IL_0452: Unknown result type (might be due to invalid IL or missing references)
				//IL_045c: Expected O, but got Unknown
				//IL_047e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0488: Expected O, but got Unknown
				//IL_04a4: Unknown result type (might be due to invalid IL or missing references)
				//IL_04ae: Expected O, but got Unknown
				//IL_04a9: Unknown result type (might be due to invalid IL or missing references)
				//IL_04b3: Expected O, but got Unknown
				//IL_04d5: Unknown result type (might be due to invalid IL or missing references)
				//IL_04df: Expected O, but got Unknown
				//IL_0533: Unknown result type (might be due to invalid IL or missing references)
				//IL_053d: Expected O, but got Unknown
				//IL_0560: Unknown result type (might be due to invalid IL or missing references)
				//IL_056a: Expected O, but got Unknown
				//IL_0587: Unknown result type (might be due to invalid IL or missing references)
				//IL_0591: Expected O, but got Unknown
				//IL_05b4: Unknown result type (might be due to invalid IL or missing references)
				//IL_05be: Expected O, but got Unknown
				//IL_05db: Unknown result type (might be due to invalid IL or missing references)
				//IL_05e5: Expected O, but got Unknown
				//IL_0608: Unknown result type (might be due to invalid IL or missing references)
				//IL_0612: Expected O, but got Unknown
				//IL_062f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0639: Expected O, but got Unknown
				//IL_065c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0666: Expected O, but got Unknown
				//IL_0683: Unknown result type (might be due to invalid IL or missing references)
				//IL_068d: Expected O, but got Unknown
				//IL_06b0: Unknown result type (might be due to invalid IL or missing references)
				//IL_06ba: Expected O, but got Unknown
				//IL_06d7: Unknown result type (might be due to invalid IL or missing references)
				//IL_06e1: Expected O, but got Unknown
				//IL_0704: Unknown result type (might be due to invalid IL or missing references)
				//IL_070e: Expected O, but got Unknown
				//IL_072b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0735: Expected O, but got Unknown
				//IL_0758: Unknown result type (might be due to invalid IL or missing references)
				//IL_0762: Expected O, but got Unknown
				//IL_077f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0789: Expected O, but got Unknown
				//IL_07ac: Unknown result type (might be due to invalid IL or missing references)
				//IL_07b6: Expected O, but got Unknown
				//IL_07d9: Unknown result type (might be due to invalid IL or missing references)
				//IL_07e3: Expected O, but got Unknown
				//IL_0806: Unknown result type (might be due to invalid IL or missing references)
				//IL_0810: Expected O, but got Unknown
				//IL_0830: Unknown result type (might be due to invalid IL or missing references)
				//IL_083a: Expected O, but got Unknown
				//IL_085d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0867: Expected O, but got Unknown
				//IL_0884: Unknown result type (might be due to invalid IL or missing references)
				//IL_088e: Expected O, but got Unknown
				//IL_08b1: Unknown result type (might be due to invalid IL or missing references)
				//IL_08bb: Expected O, but got Unknown
				//IL_08d8: Unknown result type (might be due to invalid IL or missing references)
				//IL_08e2: Expected O, but got Unknown
				//IL_0905: Unknown result type (might be due to invalid IL or missing references)
				//IL_090f: Expected O, but got Unknown
				//IL_092c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0936: Expected O, but got Unknown
				//IL_0959: Unknown result type (might be due to invalid IL or missing references)
				//IL_0963: Expected O, but got Unknown
				//IL_0980: Unknown result type (might be due to invalid IL or missing references)
				//IL_098a: Expected O, but got Unknown
				//IL_09ad: Unknown result type (might be due to invalid IL or missing references)
				//IL_09b7: Expected O, but got Unknown
				//IL_09d4: Unknown result type (might be due to invalid IL or missing references)
				//IL_09de: Expected O, but got Unknown
				//IL_0a01: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a0b: Expected O, but got Unknown
				//IL_0a28: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a32: Expected O, but got Unknown
				//IL_0a55: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a5f: Expected O, but got Unknown
				//IL_0a82: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a8c: Expected O, but got Unknown
				//IL_0aaf: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ab9: Expected O, but got Unknown
				//IL_0ad9: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ae3: Expected O, but got Unknown
				//IL_0b06: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b10: Expected O, but got Unknown
				//IL_0b2d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b37: Expected O, but got Unknown
				//IL_0b5a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b64: Expected O, but got Unknown
				//IL_0b87: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b91: Expected O, but got Unknown
				//IL_0bae: Unknown result type (might be due to invalid IL or missing references)
				//IL_0bb8: Expected O, but got Unknown
				//IL_0bdb: Unknown result type (might be due to invalid IL or missing references)
				//IL_0be5: Expected O, but got Unknown
				//IL_0c02: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c0c: Expected O, but got Unknown
				//IL_0c2f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c39: Expected O, but got Unknown
				//IL_0c56: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c60: Expected O, but got Unknown
				//IL_0c83: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c8d: Expected O, but got Unknown
				//IL_0caa: Unknown result type (might be due to invalid IL or missing references)
				//IL_0cb4: Expected O, but got Unknown
				//IL_0cd4: Unknown result type (might be due to invalid IL or missing references)
				//IL_0cde: Expected O, but got Unknown
				//IL_0d01: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d0b: Expected O, but got Unknown
				//IL_0d28: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d32: Expected O, but got Unknown
				//IL_0d55: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d5f: Expected O, but got Unknown
				//IL_0d82: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d8c: Expected O, but got Unknown
				//IL_0da9: Unknown result type (might be due to invalid IL or missing references)
				//IL_0db3: Expected O, but got Unknown
				//IL_0dd6: Unknown result type (might be due to invalid IL or missing references)
				//IL_0de0: Expected O, but got Unknown
				//IL_0dfd: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e07: Expected O, but got Unknown
				//IL_0e2a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e34: Expected O, but got Unknown
				//IL_0e51: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e5b: Expected O, but got Unknown
				//IL_0e7b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e85: Expected O, but got Unknown
				//IL_0ea2: Unknown result type (might be due to invalid IL or missing references)
				//IL_0eac: Expected O, but got Unknown
				//IL_0ecf: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ed9: Expected O, but got Unknown
				//IL_0ef6: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f00: Expected O, but got Unknown
				//IL_0f23: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f2d: Expected O, but got Unknown
				//IL_0f4a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f54: Expected O, but got Unknown
				//IL_0f4f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f59: Expected O, but got Unknown
				//IL_0f7c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f86: Expected O, but got Unknown
				//IL_0fa3: Unknown result type (might be due to invalid IL or missing references)
				//IL_0fad: Expected O, but got Unknown
				//IL_0fd0: Unknown result type (might be due to invalid IL or missing references)
				//IL_0fda: Expected O, but got Unknown
				//IL_0ff7: Unknown result type (might be due to invalid IL or missing references)
				//IL_1001: Expected O, but got Unknown
				//IL_0ffc: Unknown result type (might be due to invalid IL or missing references)
				//IL_1006: Expected O, but got Unknown
				//IL_1029: Unknown result type (might be due to invalid IL or missing references)
				//IL_1033: Expected O, but got Unknown
				//IL_1053: Unknown result type (might be due to invalid IL or missing references)
				//IL_105d: Expected O, but got Unknown
				//IL_10b4: Unknown result type (might be due to invalid IL or missing references)
				//IL_10be: Expected O, but got Unknown
				//IL_10e1: Unknown result type (might be due to invalid IL or missing references)
				//IL_10eb: Expected O, but got Unknown
				//IL_1108: Unknown result type (might be due to invalid IL or missing references)
				//IL_1112: Expected O, but got Unknown
				//IL_1135: Unknown result type (might be due to invalid IL or missing references)
				//IL_113f: Expected O, but got Unknown
				//IL_1159: Unknown result type (might be due to invalid IL or missing references)
				//IL_1163: Expected O, but got Unknown
				//IL_01c0: Unknown result type (might be due to invalid IL or missing references)
				//IL_01ca: Expected O, but got Unknown
				//IL_01d1: Unknown result type (might be due to invalid IL or missing references)
				//IL_01db: Expected O, but got Unknown
				//IL_033a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0344: Expected O, but got Unknown
				try
				{
					switch (<>1__state)
					{
					default:
						return false;
					case 0:
						<>1__state = -1;
						<extendsWaiter>5__2 = new MultiTokenWaiter(new Func<Token, bool>[2]
						{
							(Token t) => (int)t.Type == 51,
							(Token t) => (int)t.Type == 89
						}, false, true);
						<readyWaiter>5__3 = new FunctionWaiter("_ready", false);
						<notUsingChat>5__4 = new MultiTokenWaiter(new Func<Token, bool>[10]
						{
							delegate(Token t)
							{
								ConstantToken val3 = (ConstantToken)(object)((t is ConstantToken) ? t : null);
								if (val3 != null)
								{
									Variant value = val3.Value;
									StringVariant val4 = (StringVariant)(object)((value is StringVariant) ? value : null);
									if (val4 != null)
									{
										return val4.Value == "";
									}
								}
								return false;
							},
							delegate(Token t)
							{
								//IL_0001: Unknown result type (might be due to invalid IL or missing references)
								//IL_0008: Invalid comparison between Unknown and I4
								bool num3 = (int)t.Type == 89;
								uint? associatedData3 = t.AssociatedData;
								return num3 & (associatedData3.HasValue && associatedData3.GetValueOrDefault() == 4);
							},
							delegate(Token t)
							{
								IdentifierToken val2 = (IdentifierToken)(object)((t is IdentifierToken) ? t : null);
								return val2 != null && val2.Name == "_exit_chat";
							},
							(Token t) => (int)t.Type == 80,
							(Token t) => (int)t.Type == 81,
							delegate(Token t)
							{
								//IL_0001: Unknown result type (might be due to invalid IL or missing references)
								//IL_0008: Invalid comparison between Unknown and I4
								bool num2 = (int)t.Type == 89;
								uint? associatedData2 = t.AssociatedData;
								return num2 & (associatedData2.HasValue && associatedData2.GetValueOrDefault() == 2);
							},
							delegate(Token t)
							{
								//IL_0001: Unknown result type (might be due to invalid IL or missing references)
								//IL_0008: Invalid comparison between Unknown and I4
								bool num = (int)t.Type == 89;
								uint? associatedData = t.AssociatedData;
								return num & (associatedData.HasValue && associatedData.GetValueOrDefault() == 2);
							},
							(Token t) => (int)t.Type == 38,
							(Token t) => (int)t.Type == 15,
							delegate(Token t)
							{
								IdentifierToken val = (IdentifierToken)(object)((t is IdentifierToken) ? t : null);
								return val != null && val.Name == "using_chat";
							}
						}, false, true);
						<>7__wrap4 = tokens.GetEnumerator();
						<>1__state = -3;
						break;
					case 1:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)null);
						<>1__state = 2;
						return true;
					case 2:
						<>1__state = -3;
						<>2__current = new Token((TokenType)53, (uint?)null);
						<>1__state = 3;
						return true;
					case 3:
						<>1__state = -3;
						<>2__current = new Token((TokenType)59, (uint?)null);
						<>1__state = 4;
						return true;
					case 4:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("FishingPlus");
						<>1__state = 5;
						return true;
					case 5:
						<>1__state = -3;
						<>2__current = new Token((TokenType)23, (uint?)null);
						<>1__state = 6;
						return true;
					case 6:
						<>1__state = -3;
						<>2__current = new Token((TokenType)87, (uint?)null);
						<>1__state = 7;
						return true;
					case 7:
						<>1__state = -3;
						<>2__current = (Token)new ConstantToken((Variant)new StringVariant("/root/FishingPlus"));
						<>1__state = 8;
						return true;
					case 8:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)null);
						<>1__state = 9;
						return true;
					case 9:
						<>1__state = -3;
						break;
					case 10:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)1u);
						<>1__state = 11;
						return true;
					case 11:
						<>1__state = -3;
						<>2__current = new Token((TokenType)87, (uint?)null);
						<>1__state = 12;
						return true;
					case 12:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("main");
						<>1__state = 13;
						return true;
					case 13:
						<>1__state = -3;
						<>2__current = new Token((TokenType)19, (uint?)null);
						<>1__state = 14;
						return true;
					case 14:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("in_game");
						<>1__state = 15;
						return true;
					case 15:
						<>1__state = -3;
						<>2__current = new Token((TokenType)19, (uint?)null);
						<>1__state = 16;
						return true;
					case 16:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("HBoxContainer");
						<>1__state = 17;
						return true;
					case 17:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 18;
						return true;
					case 18:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("add_child");
						<>1__state = 19;
						return true;
					case 19:
						<>1__state = -3;
						<>2__current = new Token((TokenType)80, (uint?)null);
						<>1__state = 20;
						return true;
					case 20:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("FishingPlus");
						<>1__state = 21;
						return true;
					case 21:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 22;
						return true;
					case 22:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("the_button");
						<>1__state = 23;
						return true;
					case 23:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 24;
						return true;
					case 24:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("instance");
						<>1__state = 25;
						return true;
					case 25:
						<>1__state = -3;
						<>2__current = new Token((TokenType)80, (uint?)null);
						<>1__state = 26;
						return true;
					case 26:
						<>1__state = -3;
						<>2__current = new Token((TokenType)81, (uint?)null);
						<>1__state = 27;
						return true;
					case 27:
						<>1__state = -3;
						<>2__current = new Token((TokenType)81, (uint?)null);
						<>1__state = 28;
						return true;
					case 28:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)1u);
						<>1__state = 29;
						return true;
					case 29:
						<>1__state = -3;
						<>2__current = new Token((TokenType)87, (uint?)null);
						<>1__state = 30;
						return true;
					case 30:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("main");
						<>1__state = 31;
						return true;
					case 31:
						<>1__state = -3;
						<>2__current = new Token((TokenType)19, (uint?)null);
						<>1__state = 32;
						return true;
					case 32:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("in_game");
						<>1__state = 33;
						return true;
					case 33:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 34;
						return true;
					case 34:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("add_child");
						<>1__state = 35;
						return true;
					case 35:
						<>1__state = -3;
						<>2__current = new Token((TokenType)80, (uint?)null);
						<>1__state = 36;
						return true;
					case 36:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("FishingPlus");
						<>1__state = 37;
						return true;
					case 37:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 38;
						return true;
					case 38:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("mod_panel");
						<>1__state = 39;
						return true;
					case 39:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 40;
						return true;
					case 40:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("instance");
						<>1__state = 41;
						return true;
					case 41:
						<>1__state = -3;
						<>2__current = new Token((TokenType)80, (uint?)null);
						<>1__state = 42;
						return true;
					case 42:
						<>1__state = -3;
						<>2__current = new Token((TokenType)81, (uint?)null);
						<>1__state = 43;
						return true;
					case 43:
						<>1__state = -3;
						<>2__current = new Token((TokenType)81, (uint?)null);
						<>1__state = 44;
						return true;
					case 44:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)1u);
						<>1__state = 45;
						return true;
					case 45:
						<>1__state = -3;
						<>2__current = new Token((TokenType)59, (uint?)null);
						<>1__state = 46;
						return true;
					case 46:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("button_instance");
						<>1__state = 47;
						return true;
					case 47:
						<>1__state = -3;
						<>2__current = new Token((TokenType)23, (uint?)null);
						<>1__state = 48;
						return true;
					case 48:
						<>1__state = -3;
						<>2__current = new Token((TokenType)87, (uint?)null);
						<>1__state = 49;
						return true;
					case 49:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("main");
						<>1__state = 50;
						return true;
					case 50:
						<>1__state = -3;
						<>2__current = new Token((TokenType)19, (uint?)null);
						<>1__state = 51;
						return true;
					case 51:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("in_game");
						<>1__state = 52;
						return true;
					case 52:
						<>1__state = -3;
						<>2__current = new Token((TokenType)19, (uint?)null);
						<>1__state = 53;
						return true;
					case 53:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("HBoxContainer");
						<>1__state = 54;
						return true;
					case 54:
						<>1__state = -3;
						<>2__current = new Token((TokenType)19, (uint?)null);
						<>1__state = 55;
						return true;
					case 55:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("fishingplus");
						<>1__state = 56;
						return true;
					case 56:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)1u);
						<>1__state = 57;
						return true;
					case 57:
						<>1__state = -3;
						<>2__current = new Token((TokenType)59, (uint?)null);
						<>1__state = 58;
						return true;
					case 58:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("panel_instance");
						<>1__state = 59;
						return true;
					case 59:
						<>1__state = -3;
						<>2__current = new Token((TokenType)23, (uint?)null);
						<>1__state = 60;
						return true;
					case 60:
						<>1__state = -3;
						<>2__current = new Token((TokenType)87, (uint?)null);
						<>1__state = 61;
						return true;
					case 61:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("main");
						<>1__state = 62;
						return true;
					case 62:
						<>1__state = -3;
						<>2__current = new Token((TokenType)19, (uint?)null);
						<>1__state = 63;
						return true;
					case 63:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("in_game");
						<>1__state = 64;
						return true;
					case 64:
						<>1__state = -3;
						<>2__current = new Token((TokenType)19, (uint?)null);
						<>1__state = 65;
						return true;
					case 65:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("modpanel");
						<>1__state = 66;
						return true;
					case 66:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)1u);
						<>1__state = 67;
						return true;
					case 67:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("button_instance");
						<>1__state = 68;
						return true;
					case 68:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 69;
						return true;
					case 69:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("connect");
						<>1__state = 70;
						return true;
					case 70:
						<>1__state = -3;
						<>2__current = new Token((TokenType)80, (uint?)null);
						<>1__state = 71;
						return true;
					case 71:
						<>1__state = -3;
						<>2__current = (Token)new ConstantToken((Variant)new StringVariant("pressed"));
						<>1__state = 72;
						return true;
					case 72:
						<>1__state = -3;
						<>2__current = new Token((TokenType)82, (uint?)null);
						<>1__state = 73;
						return true;
					case 73:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("panel_instance");
						<>1__state = 74;
						return true;
					case 74:
						<>1__state = -3;
						<>2__current = new Token((TokenType)82, (uint?)null);
						<>1__state = 75;
						return true;
					case 75:
						<>1__state = -3;
						<>2__current = (Token)new ConstantToken((Variant)new StringVariant("_open"));
						<>1__state = 76;
						return true;
					case 76:
						<>1__state = -3;
						<>2__current = new Token((TokenType)81, (uint?)null);
						<>1__state = 77;
						return true;
					case 77:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)1u);
						<>1__state = 78;
						return true;
					case 78:
						<>1__state = -3;
						break;
					case 79:
						<>1__state = -3;
						<>2__current = new Token((TokenType)13, (uint?)null);
						<>1__state = 80;
						return true;
					case 80:
						<>1__state = -3;
						<>2__current = new Token((TokenType)15, (uint?)null);
						<>1__state = 81;
						return true;
					case 81:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("FishingPlus");
						<>1__state = 82;
						return true;
					case 82:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 83;
						return true;
					case 83:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("on_focus_type");
						<>1__state = 84;
						return true;
					case 84:
						<>1__state = -3;
						break;
					case 85:
						<>1__state = -3;
						break;
					}
					if (((global::System.Collections.IEnumerator)<>7__wrap4).MoveNext())
					{
						Token current = <>7__wrap4.Current;
						if (<extendsWaiter>5__2.Check(current))
						{
							<>2__current = current;
							<>1__state = 1;
							return true;
						}
						if (<readyWaiter>5__3.Check(current))
						{
							<>2__current = current;
							<>1__state = 10;
							return true;
						}
						if (<notUsingChat>5__4.Check(current))
						{
							<>2__current = current;
							<>1__state = 79;
							return true;
						}
						<>2__current = current;
						<>1__state = 85;
						return true;
					}
					<>m__Finally1();
					<>7__wrap4 = null;
					return false;
				}
				catch
				{
					//try-fault
					((global::System.IDisposable)this).Dispose();
					throw;
				}
			}

			bool global::System.Collections.IEnumerator.MoveNext()
			{
				//ILSpy generated this explicit interface implementation from .override directive in MoveNext
				return this.MoveNext();
			}

			private void <>m__Finally1()
			{
				<>1__state = -1;
				if (<>7__wrap4 != null)
				{
					((global::System.IDisposable)<>7__wrap4).Dispose();
				}
			}

			[DebuggerHidden]
			void global::System.Collections.IEnumerator.Reset()
			{
				//IL_0000: Unknown result type (might be due to invalid IL or missing references)
				throw new NotSupportedException();
			}

			[DebuggerHidden]
			global::System.Collections.Generic.IEnumerator<Token> global::System.Collections.Generic.IEnumerable<Token>.GetEnumerator()
			{
				<Modify>d__1 <Modify>d__;
				if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId)
				{
					<>1__state = 0;
					<Modify>d__ = this;
				}
				else
				{
					<Modify>d__ = new <Modify>d__1(0);
				}
				<Modify>d__.tokens = <>3__tokens;
				return <Modify>d__;
			}

			[DebuggerHidden]
			global::System.Collections.IEnumerator global::System.Collections.IEnumerable.GetEnumerator()
			{
				return (global::System.Collections.IEnumerator)((global::System.Collections.Generic.IEnumerable<Token>)this).GetEnumerator();
			}
		}

		public bool ShouldRun(string path)
		{
			return path == "res://Scenes/HUD/playerhud.gdc";
		}

		[IteratorStateMachine(typeof(<Modify>d__1))]
		public global::System.Collections.Generic.IEnumerable<Token> Modify(string path, global::System.Collections.Generic.IEnumerable<Token> tokens)
		{
			MultiTokenWaiter extendsWaiter = new MultiTokenWaiter(new Func<Token, bool>[2]
			{
				(Token t) => (int)t.Type == 51,
				(Token t) => (int)t.Type == 89
			}, false, true);
			FunctionWaiter readyWaiter = new FunctionWaiter("_ready", false);
			MultiTokenWaiter notUsingChat = new MultiTokenWaiter(new Func<Token, bool>[10]
			{
				delegate(Token t)
				{
					ConstantToken val3 = (ConstantToken)(object)((t is ConstantToken) ? t : null);
					if (val3 != null)
					{
						Variant value = val3.Value;
						StringVariant val4 = (StringVariant)(object)((value is StringVariant) ? value : null);
						if (val4 != null)
						{
							return val4.Value == "";
						}
					}
					return false;
				},
				delegate(Token t)
				{
					//IL_0001: Unknown result type (might be due to invalid IL or missing references)
					//IL_0008: Invalid comparison between Unknown and I4
					bool num3 = (int)t.Type == 89;
					uint? associatedData3 = t.AssociatedData;
					return num3 & (associatedData3.HasValue && associatedData3.GetValueOrDefault() == 4);
				},
				delegate(Token t)
				{
					IdentifierToken val2 = (IdentifierToken)(object)((t is IdentifierToken) ? t : null);
					return val2 != null && val2.Name == "_exit_chat";
				},
				(Token t) => (int)t.Type == 80,
				(Token t) => (int)t.Type == 81,
				delegate(Token t)
				{
					//IL_0001: Unknown result type (might be due to invalid IL or missing references)
					//IL_0008: Invalid comparison between Unknown and I4
					bool num2 = (int)t.Type == 89;
					uint? associatedData2 = t.AssociatedData;
					return num2 & (associatedData2.HasValue && associatedData2.GetValueOrDefault() == 2);
				},
				delegate(Token t)
				{
					//IL_0001: Unknown result type (might be due to invalid IL or missing references)
					//IL_0008: Invalid comparison between Unknown and I4
					bool num = (int)t.Type == 89;
					uint? associatedData = t.AssociatedData;
					return num & (associatedData.HasValue && associatedData.GetValueOrDefault() == 2);
				},
				(Token t) => (int)t.Type == 38,
				(Token t) => (int)t.Type == 15,
				delegate(Token t)
				{
					IdentifierToken val = (IdentifierToken)(object)((t is IdentifierToken) ? t : null);
					return val != null && val.Name == "using_chat";
				}
			}, false, true);
			global::System.Collections.Generic.IEnumerator<Token> enumerator = tokens.GetEnumerator();
			try
			{
				while (((global::System.Collections.IEnumerator)enumerator).MoveNext())
				{
					Token current = enumerator.Current;
					if (extendsWaiter.Check(current))
					{
						yield return current;
						yield return new Token((TokenType)89, (uint?)null);
						yield return new Token((TokenType)53, (uint?)null);
						yield return new Token((TokenType)59, (uint?)null);
						yield return (Token)new IdentifierToken("FishingPlus");
						yield return new Token((TokenType)23, (uint?)null);
						yield return new Token((TokenType)87, (uint?)null);
						yield return (Token)new ConstantToken((Variant)new StringVariant("/root/FishingPlus"));
						yield return new Token((TokenType)89, (uint?)null);
					}
					else if (readyWaiter.Check(current))
					{
						yield return current;
						yield return new Token((TokenType)89, (uint?)1u);
						yield return new Token((TokenType)87, (uint?)null);
						yield return (Token)new IdentifierToken("main");
						yield return new Token((TokenType)19, (uint?)null);
						yield return (Token)new IdentifierToken("in_game");
						yield return new Token((TokenType)19, (uint?)null);
						yield return (Token)new IdentifierToken("HBoxContainer");
						yield return new Token((TokenType)84, (uint?)null);
						yield return (Token)new IdentifierToken("add_child");
						yield return new Token((TokenType)80, (uint?)null);
						yield return (Token)new IdentifierToken("FishingPlus");
						yield return new Token((TokenType)84, (uint?)null);
						yield return (Token)new IdentifierToken("the_button");
						yield return new Token((TokenType)84, (uint?)null);
						yield return (Token)new IdentifierToken("instance");
						yield return new Token((TokenType)80, (uint?)null);
						yield return new Token((TokenType)81, (uint?)null);
						yield return new Token((TokenType)81, (uint?)null);
						yield return new Token((TokenType)89, (uint?)1u);
						yield return new Token((TokenType)87, (uint?)null);
						yield return (Token)new IdentifierToken("main");
						yield return new Token((TokenType)19, (uint?)null);
						yield return (Token)new IdentifierToken("in_game");
						yield return new Token((TokenType)84, (uint?)null);
						yield return (Token)new IdentifierToken("add_child");
						yield return new Token((TokenType)80, (uint?)null);
						yield return (Token)new IdentifierToken("FishingPlus");
						yield return new Token((TokenType)84, (uint?)null);
						yield return (Token)new IdentifierToken("mod_panel");
						yield return new Token((TokenType)84, (uint?)null);
						yield return (Token)new IdentifierToken("instance");
						yield return new Token((TokenType)80, (uint?)null);
						yield return new Token((TokenType)81, (uint?)null);
						yield return new Token((TokenType)81, (uint?)null);
						yield return new Token((TokenType)89, (uint?)1u);
						yield return new Token((TokenType)59, (uint?)null);
						yield return (Token)new IdentifierToken("button_instance");
						yield return new Token((TokenType)23, (uint?)null);
						yield return new Token((TokenType)87, (uint?)null);
						yield return (Token)new IdentifierToken("main");
						yield return new Token((TokenType)19, (uint?)null);
						yield return (Token)new IdentifierToken("in_game");
						yield return new Token((TokenType)19, (uint?)null);
						yield return (Token)new IdentifierToken("HBoxContainer");
						yield return new Token((TokenType)19, (uint?)null);
						yield return (Token)new IdentifierToken("fishingplus");
						yield return new Token((TokenType)89, (uint?)1u);
						yield return new Token((TokenType)59, (uint?)null);
						yield return (Token)new IdentifierToken("panel_instance");
						yield return new Token((TokenType)23, (uint?)null);
						yield return new Token((TokenType)87, (uint?)null);
						yield return (Token)new IdentifierToken("main");
						yield return new Token((TokenType)19, (uint?)null);
						yield return (Token)new IdentifierToken("in_game");
						yield return new Token((TokenType)19, (uint?)null);
						yield return (Token)new IdentifierToken("modpanel");
						yield return new Token((TokenType)89, (uint?)1u);
						yield return (Token)new IdentifierToken("button_instance");
						yield return new Token((TokenType)84, (uint?)null);
						yield return (Token)new IdentifierToken("connect");
						yield return new Token((TokenType)80, (uint?)null);
						yield return (Token)new ConstantToken((Variant)new StringVariant("pressed"));
						yield return new Token((TokenType)82, (uint?)null);
						yield return (Token)new IdentifierToken("panel_instance");
						yield return new Token((TokenType)82, (uint?)null);
						yield return (Token)new ConstantToken((Variant)new StringVariant("_open"));
						yield return new Token((TokenType)81, (uint?)null);
						yield return new Token((TokenType)89, (uint?)1u);
					}
					else if (notUsingChat.Check(current))
					{
						yield return current;
						yield return new Token((TokenType)13, (uint?)null);
						yield return new Token((TokenType)15, (uint?)null);
						yield return (Token)new IdentifierToken("FishingPlus");
						yield return new Token((TokenType)84, (uint?)null);
						yield return (Token)new IdentifierToken("on_focus_type");
					}
					else
					{
						yield return current;
					}
				}
			}
			finally
			{
				((global::System.IDisposable)enumerator)?.Dispose();
			}
		}
	}
	public class InjectPlayerAutism : IScriptMod
	{
		[CompilerGenerated]
		private sealed class <Modify>d__1 : global::System.Collections.Generic.IEnumerable<Token>, global::System.Collections.IEnumerable, global::System.Collections.Generic.IEnumerator<Token>, global::System.Collections.IEnumerator, global::System.IDisposable
		{
			private int <>1__state;

			private Token <>2__current;

			private int <>l__initialThreadId;

			private global::System.Collections.Generic.IEnumerable<Token> tokens;

			public global::System.Collections.Generic.IEnumerable<Token> <>3__tokens;

			private MultiTokenWaiter <busyCheck>5__2;

			private global::System.Collections.Generic.IEnumerator<Token> <>7__wrap2;

			Token global::System.Collections.Generic.IEnumerator<Token>.Current
			{
				[DebuggerHidden]
				get
				{
					return <>2__current;
				}
			}

			object global::System.Collections.IEnumerator.Current
			{
				[DebuggerHidden]
				get
				{
					return <>2__current;
				}
			}

			[DebuggerHidden]
			public <Modify>d__1(int <>1__state)
			{
				this.<>1__state = <>1__state;
				<>l__initialThreadId = Environment.CurrentManagedThreadId;
			}

			[DebuggerHidden]
			void global::System.IDisposable.Dispose()
			{
				int num = <>1__state;
				if (num == -3 || (uint)(num - 1) <= 5u)
				{
					try
					{
					}
					finally
					{
						<>m__Finally1();
					}
				}
			}

			private bool MoveNext()
			{
				//IL_00f2: Unknown result type (might be due to invalid IL or missing references)
				//IL_00fc: Expected O, but got Unknown
				//IL_0118: Unknown result type (might be due to invalid IL or missing references)
				//IL_0122: Expected O, but got Unknown
				//IL_0144: Unknown result type (might be due to invalid IL or missing references)
				//IL_014e: Expected O, but got Unknown
				//IL_0167: Unknown result type (might be due to invalid IL or missing references)
				//IL_0171: Expected O, but got Unknown
				//IL_0084: Unknown result type (might be due to invalid IL or missing references)
				//IL_008e: Expected O, but got Unknown
				try
				{
					switch (<>1__state)
					{
					default:
						return false;
					case 0:
						<>1__state = -1;
						<busyCheck>5__2 = new MultiTokenWaiter(new Func<Token, bool>[2]
						{
							(Token t) => (int)t.Type == 38,
							delegate(Token t)
							{
								IdentifierToken val = (IdentifierToken)(object)((t is IdentifierToken) ? t : null);
								return val != null && val.Name == "busy";
							}
						}, false, false);
						<>7__wrap2 = tokens.GetEnumerator();
						<>1__state = -3;
						break;
					case 1:
						<>1__state = -3;
						<>2__current = new Token((TokenType)14, (uint?)null);
						<>1__state = 2;
						return true;
					case 2:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("FishingPlus");
						<>1__state = 3;
						return true;
					case 3:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 4;
						return true;
					case 4:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("on_focus_type");
						<>1__state = 5;
						return true;
					case 5:
						<>1__state = -3;
						break;
					case 6:
						<>1__state = -3;
						break;
					}
					if (((global::System.Collections.IEnumerator)<>7__wrap2).MoveNext())
					{
						Token current = <>7__wrap2.Current;
						if (<busyCheck>5__2.Check(current))
						{
							<>2__current = current;
							<>1__state = 1;
							return true;
						}
						<>2__current = current;
						<>1__state = 6;
						return true;
					}
					<>m__Finally1();
					<>7__wrap2 = null;
					return false;
				}
				catch
				{
					//try-fault
					((global::System.IDisposable)this).Dispose();
					throw;
				}
			}

			bool global::System.Collections.IEnumerator.MoveNext()
			{
				//ILSpy generated this explicit interface implementation from .override directive in MoveNext
				return this.MoveNext();
			}

			private void <>m__Finally1()
			{
				<>1__state = -1;
				if (<>7__wrap2 != null)
				{
					((global::System.IDisposable)<>7__wrap2).Dispose();
				}
			}

			[DebuggerHidden]
			void global::System.Collections.IEnumerator.Reset()
			{
				//IL_0000: Unknown result type (might be due to invalid IL or missing references)
				throw new NotSupportedException();
			}

			[DebuggerHidden]
			global::System.Collections.Generic.IEnumerator<Token> global::System.Collections.Generic.IEnumerable<Token>.GetEnumerator()
			{
				<Modify>d__1 <Modify>d__;
				if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId)
				{
					<>1__state = 0;
					<Modify>d__ = this;
				}
				else
				{
					<Modify>d__ = new <Modify>d__1(0);
				}
				<Modify>d__.tokens = <>3__tokens;
				return <Modify>d__;
			}

			[DebuggerHidden]
			global::System.Collections.IEnumerator global::System.Collections.IEnumerable.GetEnumerator()
			{
				return (global::System.Collections.IEnumerator)((global::System.Collections.Generic.IEnumerable<Token>)this).GetEnumerator();
			}
		}

		public bool ShouldRun(string path)
		{
			return path == "res://Scenes/Entities/Player/player.gdc";
		}

		[IteratorStateMachine(typeof(<Modify>d__1))]
		public global::System.Collections.Generic.IEnumerable<Token> Modify(string path, global::System.Collections.Generic.IEnumerable<Token> tokens)
		{
			MultiTokenWaiter busyCheck = new MultiTokenWaiter(new Func<Token, bool>[2]
			{
				(Token t) => (int)t.Type == 38,
				delegate(Token t)
				{
					IdentifierToken val = (IdentifierToken)(object)((t is IdentifierToken) ? t : null);
					return val != null && val.Name == "busy";
				}
			}, false, false);
			global::System.Collections.Generic.IEnumerator<Token> enumerator = tokens.GetEnumerator();
			try
			{
				while (((global::System.Collections.IEnumerator)enumerator).MoveNext())
				{
					Token current = enumerator.Current;
					if (busyCheck.Check(current))
					{
						yield return current;
						yield return new Token((TokenType)14, (uint?)null);
						yield return (Token)new IdentifierToken("FishingPlus");
						yield return new Token((TokenType)84, (uint?)null);
						yield return (Token)new IdentifierToken("on_focus_type");
					}
					else
					{
						yield return current;
					}
				}
			}
			finally
			{
				((global::System.IDisposable)enumerator)?.Dispose();
			}
		}
	}
	public class PatientLurePatch : IScriptMod
	{
		[CompilerGenerated]
		private sealed class <Modify>d__1 : global::System.Collections.Generic.IEnumerable<Token>, global::System.Collections.IEnumerable, global::System.Collections.Generic.IEnumerator<Token>, global::System.Collections.IEnumerator, global::System.IDisposable
		{
			private int <>1__state;

			private Token <>2__current;

			private int <>l__initialThreadId;

			private global::System.Collections.Generic.IEnumerable<Token> tokens;

			public global::System.Collections.Generic.IEnumerable<Token> <>3__tokens;

			private MultiTokenWaiter <patientLureCheck>5__2;

			private global::System.Collections.Generic.IEnumerator<Token> <>7__wrap2;

			Token global::System.Collections.Generic.IEnumerator<Token>.Current
			{
				[DebuggerHidden]
				get
				{
					return <>2__current;
				}
			}

			object global::System.Collections.IEnumerator.Current
			{
				[DebuggerHidden]
				get
				{
					return <>2__current;
				}
			}

			[DebuggerHidden]
			public <Modify>d__1(int <>1__state)
			{
				this.<>1__state = <>1__state;
				<>l__initialThreadId = Environment.CurrentManagedThreadId;
			}

			[DebuggerHidden]
			void global::System.IDisposable.Dispose()
			{
				int num = <>1__state;
				if (num == -3 || (uint)(num - 1) <= 5u)
				{
					try
					{
					}
					finally
					{
						<>m__Finally1();
					}
				}
			}

			private bool MoveNext()
			{
				//IL_0136: Unknown result type (might be due to invalid IL or missing references)
				//IL_0140: Expected O, but got Unknown
				//IL_015c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0166: Expected O, but got Unknown
				//IL_0188: Unknown result type (might be due to invalid IL or missing references)
				//IL_0192: Expected O, but got Unknown
				//IL_01ab: Unknown result type (might be due to invalid IL or missing references)
				//IL_01b5: Expected O, but got Unknown
				//IL_00c8: Unknown result type (might be due to invalid IL or missing references)
				//IL_00d2: Expected O, but got Unknown
				try
				{
					switch (<>1__state)
					{
					default:
						return false;
					case 0:
						<>1__state = -1;
						<patientLureCheck>5__2 = new MultiTokenWaiter(new Func<Token, bool>[4]
						{
							(Token t) => (int)t.Type == 38,
							delegate(Token t)
							{
								IdentifierToken val3 = (IdentifierToken)(object)((t is IdentifierToken) ? t : null);
								return val3 != null && val3.Name == "rod_type";
							},
							(Token t) => (int)t.Type == 7,
							delegate(Token t)
							{
								ConstantToken val = (ConstantToken)(object)((t is ConstantToken) ? t : null);
								if (val != null)
								{
									Variant value = val.Value;
									StringVariant val2 = (StringVariant)(object)((value is StringVariant) ? value : null);
									if (val2 != null)
									{
										return val2.Value == "patient";
									}
								}
								return false;
							}
						}, false, false);
						<>7__wrap2 = tokens.GetEnumerator();
						<>1__state = -3;
						break;
					case 1:
						<>1__state = -3;
						<>2__current = new Token((TokenType)14, (uint?)null);
						<>1__state = 2;
						return true;
					case 2:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("FishingPlus");
						<>1__state = 3;
						return true;
					case 3:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 4;
						return true;
					case 4:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("patient");
						<>1__state = 5;
						return true;
					case 5:
						<>1__state = -3;
						break;
					case 6:
						<>1__state = -3;
						break;
					}
					if (((global::System.Collections.IEnumerator)<>7__wrap2).MoveNext())
					{
						Token current = <>7__wrap2.Current;
						if (<patientLureCheck>5__2.Check(current))
						{
							<>2__current = current;
							<>1__state = 1;
							return true;
						}
						<>2__current = current;
						<>1__state = 6;
						return true;
					}
					<>m__Finally1();
					<>7__wrap2 = null;
					return false;
				}
				catch
				{
					//try-fault
					((global::System.IDisposable)this).Dispose();
					throw;
				}
			}

			bool global::System.Collections.IEnumerator.MoveNext()
			{
				//ILSpy generated this explicit interface implementation from .override directive in MoveNext
				return this.MoveNext();
			}

			private void <>m__Finally1()
			{
				<>1__state = -1;
				if (<>7__wrap2 != null)
				{
					((global::System.IDisposable)<>7__wrap2).Dispose();
				}
			}

			[DebuggerHidden]
			void global::System.Collections.IEnumerator.Reset()
			{
				//IL_0000: Unknown result type (might be due to invalid IL or missing references)
				throw new NotSupportedException();
			}

			[DebuggerHidden]
			global::System.Collections.Generic.IEnumerator<Token> global::System.Collections.Generic.IEnumerable<Token>.GetEnumerator()
			{
				<Modify>d__1 <Modify>d__;
				if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId)
				{
					<>1__state = 0;
					<Modify>d__ = this;
				}
				else
				{
					<Modify>d__ = new <Modify>d__1(0);
				}
				<Modify>d__.tokens = <>3__tokens;
				return <Modify>d__;
			}

			[DebuggerHidden]
			global::System.Collections.IEnumerator global::System.Collections.IEnumerable.GetEnumerator()
			{
				return (global::System.Collections.IEnumerator)((global::System.Collections.Generic.IEnumerable<Token>)this).GetEnumerator();
			}
		}

		public bool ShouldRun(string path)
		{
			return path == "res://Scenes/Minigames/Fishing3/fishing3.gdc";
		}

		[IteratorStateMachine(typeof(<Modify>d__1))]
		public global::System.Collections.Generic.IEnumerable<Token> Modify(string path, global::System.Collections.Generic.IEnumerable<Token> tokens)
		{
			MultiTokenWaiter patientLureCheck = new MultiTokenWaiter(new Func<Token, bool>[4]
			{
				(Token t) => (int)t.Type == 38,
				delegate(Token t)
				{
					IdentifierToken val3 = (IdentifierToken)(object)((t is IdentifierToken) ? t : null);
					return val3 != null && val3.Name == "rod_type";
				},
				(Token t) => (int)t.Type == 7,
				delegate(Token t)
				{
					ConstantToken val = (ConstantToken)(object)((t is ConstantToken) ? t : null);
					if (val != null)
					{
						Variant value = val.Value;
						StringVariant val2 = (StringVariant)(object)((value is StringVariant) ? value : null);
						if (val2 != null)
						{
							return val2.Value == "patient";
						}
					}
					return false;
				}
			}, false, false);
			global::System.Collections.Generic.IEnumerator<Token> enumerator = tokens.GetEnumerator();
			try
			{
				while (((global::System.Collections.IEnumerator)enumerator).MoveNext())
				{
					Token current = enumerator.Current;
					if (patientLureCheck.Check(current))
					{
						yield return current;
						yield return new Token((TokenType)14, (uint?)null);
						yield return (Token)new IdentifierToken("FishingPlus");
						yield return new Token((TokenType)84, (uint?)null);
						yield return (Token)new IdentifierToken("patient");
					}
					else
					{
						yield return current;
					}
				}
			}
			finally
			{
				((global::System.IDisposable)enumerator)?.Dispose();
			}
		}
	}
}
namespace FishingPlus.Mods
{
	public class AutoCollectBuddies : IScriptMod
	{
		[CompilerGenerated]
		private sealed class <Modify>d__1 : global::System.Collections.Generic.IEnumerable<Token>, global::System.Collections.IEnumerable, global::System.Collections.Generic.IEnumerator<Token>, global::System.Collections.IEnumerator, global::System.IDisposable
		{
			private int <>1__state;

			private Token <>2__current;

			private int <>l__initialThreadId;

			private global::System.Collections.Generic.IEnumerable<Token> tokens;

			public global::System.Collections.Generic.IEnumerable<Token> <>3__tokens;

			private MultiTokenWaiter <buddyCheck>5__2;

			private global::System.Collections.Generic.IEnumerator<Token> <>7__wrap2;

			Token global::System.Collections.Generic.IEnumerator<Token>.Current
			{
				[DebuggerHidden]
				get
				{
					return <>2__current;
				}
			}

			object global::System.Collections.IEnumerator.Current
			{
				[DebuggerHidden]
				get
				{
					return <>2__current;
				}
			}

			[DebuggerHidden]
			public <Modify>d__1(int <>1__state)
			{
				this.<>1__state = <>1__state;
				<>l__initialThreadId = Environment.CurrentManagedThreadId;
			}

			[DebuggerHidden]
			void global::System.IDisposable.Dispose()
			{
				int num = <>1__state;
				if (num == -3 || (uint)(num - 1) <= 80u)
				{
					try
					{
					}
					finally
					{
						<>m__Finally1();
					}
				}
			}

			private bool MoveNext()
			{
				//IL_02c5: Unknown result type (might be due to invalid IL or missing references)
				//IL_02cf: Expected O, but got Unknown
				//IL_02f1: Unknown result type (might be due to invalid IL or missing references)
				//IL_02fb: Expected O, but got Unknown
				//IL_0317: Unknown result type (might be due to invalid IL or missing references)
				//IL_0321: Expected O, but got Unknown
				//IL_0343: Unknown result type (might be due to invalid IL or missing references)
				//IL_034d: Expected O, but got Unknown
				//IL_0369: Unknown result type (might be due to invalid IL or missing references)
				//IL_0373: Expected O, but got Unknown
				//IL_0395: Unknown result type (might be due to invalid IL or missing references)
				//IL_039f: Expected O, but got Unknown
				//IL_03be: Unknown result type (might be due to invalid IL or missing references)
				//IL_03c8: Expected O, but got Unknown
				//IL_03ea: Unknown result type (might be due to invalid IL or missing references)
				//IL_03f4: Expected O, but got Unknown
				//IL_0411: Unknown result type (might be due to invalid IL or missing references)
				//IL_041b: Expected O, but got Unknown
				//IL_043e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0448: Expected O, but got Unknown
				//IL_0465: Unknown result type (might be due to invalid IL or missing references)
				//IL_046f: Expected O, but got Unknown
				//IL_0492: Unknown result type (might be due to invalid IL or missing references)
				//IL_049c: Expected O, but got Unknown
				//IL_04b9: Unknown result type (might be due to invalid IL or missing references)
				//IL_04c3: Expected O, but got Unknown
				//IL_04e6: Unknown result type (might be due to invalid IL or missing references)
				//IL_04f0: Expected O, but got Unknown
				//IL_050d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0517: Expected O, but got Unknown
				//IL_053a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0544: Expected O, but got Unknown
				//IL_0567: Unknown result type (might be due to invalid IL or missing references)
				//IL_0571: Expected O, but got Unknown
				//IL_058e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0598: Expected O, but got Unknown
				//IL_0593: Unknown result type (might be due to invalid IL or missing references)
				//IL_059d: Expected O, but got Unknown
				//IL_05c0: Unknown result type (might be due to invalid IL or missing references)
				//IL_05ca: Expected O, but got Unknown
				//IL_05ed: Unknown result type (might be due to invalid IL or missing references)
				//IL_05f7: Expected O, but got Unknown
				//IL_0614: Unknown result type (might be due to invalid IL or missing references)
				//IL_061e: Expected O, but got Unknown
				//IL_063e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0648: Expected O, but got Unknown
				//IL_066b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0675: Expected O, but got Unknown
				//IL_0692: Unknown result type (might be due to invalid IL or missing references)
				//IL_069c: Expected O, but got Unknown
				//IL_06bf: Unknown result type (might be due to invalid IL or missing references)
				//IL_06c9: Expected O, but got Unknown
				//IL_06e6: Unknown result type (might be due to invalid IL or missing references)
				//IL_06f0: Expected O, but got Unknown
				//IL_0713: Unknown result type (might be due to invalid IL or missing references)
				//IL_071d: Expected O, but got Unknown
				//IL_073a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0744: Expected O, but got Unknown
				//IL_0767: Unknown result type (might be due to invalid IL or missing references)
				//IL_0771: Expected O, but got Unknown
				//IL_078e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0798: Expected O, but got Unknown
				//IL_07bb: Unknown result type (might be due to invalid IL or missing references)
				//IL_07c5: Expected O, but got Unknown
				//IL_07e8: Unknown result type (might be due to invalid IL or missing references)
				//IL_07f2: Expected O, but got Unknown
				//IL_080f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0819: Expected O, but got Unknown
				//IL_0839: Unknown result type (might be due to invalid IL or missing references)
				//IL_0843: Expected O, but got Unknown
				//IL_0860: Unknown result type (might be due to invalid IL or missing references)
				//IL_086a: Expected O, but got Unknown
				//IL_088d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0897: Expected O, but got Unknown
				//IL_08b4: Unknown result type (might be due to invalid IL or missing references)
				//IL_08be: Expected O, but got Unknown
				//IL_08e1: Unknown result type (might be due to invalid IL or missing references)
				//IL_08eb: Expected O, but got Unknown
				//IL_0908: Unknown result type (might be due to invalid IL or missing references)
				//IL_0912: Expected O, but got Unknown
				//IL_090d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0917: Expected O, but got Unknown
				//IL_093a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0944: Expected O, but got Unknown
				//IL_0961: Unknown result type (might be due to invalid IL or missing references)
				//IL_096b: Expected O, but got Unknown
				//IL_098e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0998: Expected O, but got Unknown
				//IL_09b5: Unknown result type (might be due to invalid IL or missing references)
				//IL_09bf: Expected O, but got Unknown
				//IL_09ba: Unknown result type (might be due to invalid IL or missing references)
				//IL_09c4: Expected O, but got Unknown
				//IL_09e7: Unknown result type (might be due to invalid IL or missing references)
				//IL_09f1: Expected O, but got Unknown
				//IL_0a11: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a1b: Expected O, but got Unknown
				//IL_0a3e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a48: Expected O, but got Unknown
				//IL_0a65: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a6f: Expected O, but got Unknown
				//IL_0a92: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a9c: Expected O, but got Unknown
				//IL_0abf: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ac9: Expected O, but got Unknown
				//IL_0ae6: Unknown result type (might be due to invalid IL or missing references)
				//IL_0af0: Expected O, but got Unknown
				//IL_0aeb: Unknown result type (might be due to invalid IL or missing references)
				//IL_0af5: Expected O, but got Unknown
				//IL_0b18: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b22: Expected O, but got Unknown
				//IL_0b42: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b4c: Expected O, but got Unknown
				//IL_0b6f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b79: Expected O, but got Unknown
				//IL_0b96: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ba0: Expected O, but got Unknown
				//IL_0bc3: Unknown result type (might be due to invalid IL or missing references)
				//IL_0bcd: Expected O, but got Unknown
				//IL_0bf0: Unknown result type (might be due to invalid IL or missing references)
				//IL_0bfa: Expected O, but got Unknown
				//IL_0c1a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c24: Expected O, but got Unknown
				//IL_0c44: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c4e: Expected O, but got Unknown
				//IL_0c6b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c75: Expected O, but got Unknown
				//IL_0c98: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ca2: Expected O, but got Unknown
				//IL_0cbb: Unknown result type (might be due to invalid IL or missing references)
				//IL_0cc5: Expected O, but got Unknown
				//IL_0cc0: Unknown result type (might be due to invalid IL or missing references)
				//IL_0cca: Expected O, but got Unknown
				//IL_0cea: Unknown result type (might be due to invalid IL or missing references)
				//IL_0cf4: Expected O, but got Unknown
				//IL_0d17: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d21: Expected O, but got Unknown
				//IL_0d3e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d48: Expected O, but got Unknown
				//IL_0d6b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d75: Expected O, but got Unknown
				//IL_0d92: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d9c: Expected O, but got Unknown
				//IL_0dbf: Unknown result type (might be due to invalid IL or missing references)
				//IL_0dc9: Expected O, but got Unknown
				//IL_0de2: Unknown result type (might be due to invalid IL or missing references)
				//IL_0dec: Expected O, but got Unknown
				//IL_0de7: Unknown result type (might be due to invalid IL or missing references)
				//IL_0df1: Expected O, but got Unknown
				//IL_0e11: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e1b: Expected O, but got Unknown
				//IL_0e38: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e42: Expected O, but got Unknown
				//IL_0e65: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e6f: Expected O, but got Unknown
				//IL_0e92: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e9c: Expected O, but got Unknown
				//IL_0ebc: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ec6: Expected O, but got Unknown
				//IL_0ee3: Unknown result type (might be due to invalid IL or missing references)
				//IL_0eed: Expected O, but got Unknown
				//IL_0f10: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f1a: Expected O, but got Unknown
				//IL_0f37: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f41: Expected O, but got Unknown
				//IL_0f64: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f6e: Expected O, but got Unknown
				//IL_0f91: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f9b: Expected O, but got Unknown
				//IL_0fb8: Unknown result type (might be due to invalid IL or missing references)
				//IL_0fc2: Expected O, but got Unknown
				//IL_025a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0264: Expected O, but got Unknown
				try
				{
					switch (<>1__state)
					{
					default:
						return false;
					case 0:
						<>1__state = -1;
						<buddyCheck>5__2 = new MultiTokenWaiter(new Func<Token, bool>[7]
						{
							delegate(Token t)
							{
								IdentifierToken val4 = (IdentifierToken)(object)((t is IdentifierToken) ? t : null);
								return val4 != null && val4.Name == "PlayerData";
							},
							(Token t) => (int)t.Type == 84,
							delegate(Token t)
							{
								IdentifierToken val3 = (IdentifierToken)(object)((t is IdentifierToken) ? t : null);
								return val3 != null && val3.Name == "_send_notification";
							},
							(Token t) => (int)t.Type == 80,
							delegate(Token t)
							{
								ConstantToken val = (ConstantToken)(object)((t is ConstantToken) ? t : null);
								if (val != null)
								{
									Variant value = val.Value;
									StringVariant val2 = (StringVariant)(object)((value is StringVariant) ? value : null);
									if (val2 != null)
									{
										return val2.Value == "one of your buddies caught something!";
									}
								}
								return false;
							},
							(Token t) => (int)t.Type == 81,
							(Token t) => (int)t.Type == 89
						}, false, false);
						<>7__wrap2 = tokens.GetEnumerator();
						<>1__state = -3;
						break;
					case 1:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)1u);
						<>1__state = 2;
						return true;
					case 2:
						<>1__state = -3;
						<>2__current = new Token((TokenType)38, (uint?)null);
						<>1__state = 3;
						return true;
					case 3:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("FishingPlus");
						<>1__state = 4;
						return true;
					case 4:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 5;
						return true;
					case 5:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("autocollect");
						<>1__state = 6;
						return true;
					case 6:
						<>1__state = -3;
						<>2__current = new Token((TokenType)86, (uint?)null);
						<>1__state = 7;
						return true;
					case 7:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)2u);
						<>1__state = 8;
						return true;
					case 8:
						<>1__state = -3;
						<>2__current = new Token((TokenType)59, (uint?)null);
						<>1__state = 9;
						return true;
					case 9:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("the_fish");
						<>1__state = 10;
						return true;
					case 10:
						<>1__state = -3;
						<>2__current = new Token((TokenType)23, (uint?)null);
						<>1__state = 11;
						return true;
					case 11:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("Globals");
						<>1__state = 12;
						return true;
					case 12:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 13;
						return true;
					case 13:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("item_data");
						<>1__state = 14;
						return true;
					case 14:
						<>1__state = -3;
						<>2__current = new Token((TokenType)76, (uint?)null);
						<>1__state = 15;
						return true;
					case 15:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("roll");
						<>1__state = 16;
						return true;
					case 16:
						<>1__state = -3;
						<>2__current = new Token((TokenType)77, (uint?)null);
						<>1__state = 17;
						return true;
					case 17:
						<>1__state = -3;
						<>2__current = new Token((TokenType)76, (uint?)null);
						<>1__state = 18;
						return true;
					case 18:
						<>1__state = -3;
						<>2__current = (Token)new ConstantToken((Variant)new StringVariant("file"));
						<>1__state = 19;
						return true;
					case 19:
						<>1__state = -3;
						<>2__current = new Token((TokenType)77, (uint?)null);
						<>1__state = 20;
						return true;
					case 20:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 21;
						return true;
					case 21:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("item_name");
						<>1__state = 22;
						return true;
					case 22:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)2u);
						<>1__state = 23;
						return true;
					case 23:
						<>1__state = -3;
						<>2__current = new Token((TokenType)59, (uint?)null);
						<>1__state = 24;
						return true;
					case 24:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("fish_quality");
						<>1__state = 25;
						return true;
					case 25:
						<>1__state = -3;
						<>2__current = new Token((TokenType)23, (uint?)null);
						<>1__state = 26;
						return true;
					case 26:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("PlayerData");
						<>1__state = 27;
						return true;
					case 27:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 28;
						return true;
					case 28:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("QUALITY_DATA");
						<>1__state = 29;
						return true;
					case 29:
						<>1__state = -3;
						<>2__current = new Token((TokenType)76, (uint?)null);
						<>1__state = 30;
						return true;
					case 30:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("quality");
						<>1__state = 31;
						return true;
					case 31:
						<>1__state = -3;
						<>2__current = new Token((TokenType)77, (uint?)null);
						<>1__state = 32;
						return true;
					case 32:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 33;
						return true;
					case 33:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("name");
						<>1__state = 34;
						return true;
					case 34:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)2u);
						<>1__state = 35;
						return true;
					case 35:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("PlayerData");
						<>1__state = 36;
						return true;
					case 36:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 37;
						return true;
					case 37:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("_send_notification");
						<>1__state = 38;
						return true;
					case 38:
						<>1__state = -3;
						<>2__current = new Token((TokenType)80, (uint?)null);
						<>1__state = 39;
						return true;
					case 39:
						<>1__state = -3;
						<>2__current = (Token)new ConstantToken((Variant)new StringVariant("you caught "));
						<>1__state = 40;
						return true;
					case 40:
						<>1__state = -3;
						<>2__current = new Token((TokenType)16, (uint?)null);
						<>1__state = 41;
						return true;
					case 41:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("the_fish");
						<>1__state = 42;
						return true;
					case 42:
						<>1__state = -3;
						<>2__current = new Token((TokenType)16, (uint?)null);
						<>1__state = 43;
						return true;
					case 43:
						<>1__state = -3;
						<>2__current = (Token)new ConstantToken((Variant)new StringVariant(" / size "));
						<>1__state = 44;
						return true;
					case 44:
						<>1__state = -3;
						<>2__current = new Token((TokenType)16, (uint?)null);
						<>1__state = 45;
						return true;
					case 45:
						<>1__state = -3;
						<>2__current = new Token((TokenType)5, (uint?)62u);
						<>1__state = 46;
						return true;
					case 46:
						<>1__state = -3;
						<>2__current = new Token((TokenType)80, (uint?)null);
						<>1__state = 47;
						return true;
					case 47:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("size");
						<>1__state = 48;
						return true;
					case 48:
						<>1__state = -3;
						<>2__current = new Token((TokenType)81, (uint?)null);
						<>1__state = 49;
						return true;
					case 49:
						<>1__state = -3;
						<>2__current = new Token((TokenType)16, (uint?)null);
						<>1__state = 50;
						return true;
					case 50:
						<>1__state = -3;
						<>2__current = (Token)new ConstantToken((Variant)new StringVariant(" / quality "));
						<>1__state = 51;
						return true;
					case 51:
						<>1__state = -3;
						<>2__current = new Token((TokenType)16, (uint?)null);
						<>1__state = 52;
						return true;
					case 52:
						<>1__state = -3;
						<>2__current = new Token((TokenType)5, (uint?)62u);
						<>1__state = 53;
						return true;
					case 53:
						<>1__state = -3;
						<>2__current = new Token((TokenType)80, (uint?)null);
						<>1__state = 54;
						return true;
					case 54:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("fish_quality");
						<>1__state = 55;
						return true;
					case 55:
						<>1__state = -3;
						<>2__current = new Token((TokenType)81, (uint?)null);
						<>1__state = 56;
						return true;
					case 56:
						<>1__state = -3;
						<>2__current = new Token((TokenType)81, (uint?)null);
						<>1__state = 57;
						return true;
					case 57:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)2u);
						<>1__state = 58;
						return true;
					case 58:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)2u);
						<>1__state = 59;
						return true;
					case 59:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("has_fish");
						<>1__state = 60;
						return true;
					case 60:
						<>1__state = -3;
						<>2__current = new Token((TokenType)23, (uint?)null);
						<>1__state = 61;
						return true;
					case 61:
						<>1__state = -3;
						<>2__current = (Token)new ConstantToken((Variant)new BoolVariant(false));
						<>1__state = 62;
						return true;
					case 62:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)2u);
						<>1__state = 63;
						return true;
					case 63:
						<>1__state = -3;
						<>2__current = new Token((TokenType)87, (uint?)null);
						<>1__state = 64;
						return true;
					case 64:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("caught");
						<>1__state = 65;
						return true;
					case 65:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 66;
						return true;
					case 66:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("visible");
						<>1__state = 67;
						return true;
					case 67:
						<>1__state = -3;
						<>2__current = new Token((TokenType)23, (uint?)null);
						<>1__state = 68;
						return true;
					case 68:
						<>1__state = -3;
						<>2__current = (Token)new ConstantToken((Variant)new BoolVariant(false));
						<>1__state = 69;
						return true;
					case 69:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)2u);
						<>1__state = 70;
						return true;
					case 70:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("_send_item");
						<>1__state = 71;
						return true;
					case 71:
						<>1__state = -3;
						<>2__current = new Token((TokenType)80, (uint?)null);
						<>1__state = 72;
						return true;
					case 72:
						<>1__state = -3;
						<>2__current = new Token((TokenType)81, (uint?)null);
						<>1__state = 73;
						return true;
					case 73:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)2u);
						<>1__state = 74;
						return true;
					case 74:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("fish_data");
						<>1__state = 75;
						return true;
					case 75:
						<>1__state = -3;
						<>2__current = new Token((TokenType)84, (uint?)null);
						<>1__state = 76;
						return true;
					case 76:
						<>1__state = -3;
						<>2__current = (Token)new IdentifierToken("clear");
						<>1__state = 77;
						return true;
					case 77:
						<>1__state = -3;
						<>2__current = new Token((TokenType)80, (uint?)null);
						<>1__state = 78;
						return true;
					case 78:
						<>1__state = -3;
						<>2__current = new Token((TokenType)81, (uint?)null);
						<>1__state = 79;
						return true;
					case 79:
						<>1__state = -3;
						<>2__current = new Token((TokenType)89, (uint?)1u);
						<>1__state = 80;
						return true;
					case 80:
						<>1__state = -3;
						break;
					case 81:
						<>1__state = -3;
						break;
					}
					if (((global::System.Collections.IEnumerator)<>7__wrap2).MoveNext())
					{
						Token current = <>7__wrap2.Current;
						if (<buddyCheck>5__2.Check(current))
						{
							<>2__current = current;
							<>1__state = 1;
							return true;
						}
						<>2__current = current;
						<>1__state = 81;
						return true;
					}
					<>m__Finally1();
					<>7__wrap2 = null;
					return false;
				}
				catch
				{
					//try-fault
					((global::System.IDisposable)this).Dispose();
					throw;
				}
			}

			bool global::System.Collections.IEnumerator.MoveNext()
			{
				//ILSpy generated this explicit interface implementation from .override directive in MoveNext
				return this.MoveNext();
			}

			private void <>m__Finally1()
			{
				<>1__state = -1;
				if (<>7__wrap2 != null)
				{
					((global::System.IDisposable)<>7__wrap2).Dispose();
				}
			}

			[DebuggerHidden]
			void global::System.Collections.IEnumerator.Reset()
			{
				//IL_0000: Unknown result type (might be due to invalid IL or missing references)
				throw new NotSupportedException();
			}

			[DebuggerHidden]
			global::System.Collections.Generic.IEnumerator<Token> global::System.Collections.Generic.IEnumerable<Token>.GetEnumerator()
			{
				<Modify>d__1 <Modify>d__;
				if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId)
				{
					<>1__state = 0;
					<Modify>d__ = this;
				}
				else
				{
					<Modify>d__ = new <Modify>d__1(0);
				}
				<Modify>d__.tokens = <>3__tokens;
				return <Modify>d__;
			}

			[DebuggerHidden]
			global::System.Collections.IEnumerator global::System.Collections.IEnumerable.GetEnumerator()
			{
				return (global::System.Collections.IEnumerator)((global::System.Collections.Generic.IEnumerable<Token>)this).GetEnumerator();
			}
		}

		public bool ShouldRun(string path)
		{
			return path == "res://Scenes/Entities/Props/fish_trap.gdc";
		}

		[IteratorStateMachine(typeof(<Modify>d__1))]
		public global::System.Collections.Generic.IEnumerable<Token> Modify(string path, global::System.Collections.Generic.IEnumerable<Token> tokens)
		{
			MultiTokenWaiter buddyCheck = new MultiTokenWaiter(new Func<Token, bool>[7]
			{
				delegate(Token t)
				{
					IdentifierToken val4 = (IdentifierToken)(object)((t is IdentifierToken) ? t : null);
					return val4 != null && val4.Name == "PlayerData";
				},
				(Token t) => (int)t.Type == 84,
				delegate(Token t)
				{
					IdentifierToken val3 = (IdentifierToken)(object)((t is IdentifierToken) ? t : null);
					return val3 != null && val3.Name == "_send_notification";
				},
				(Token t) => (int)t.Type == 80,
				delegate(Token t)
				{
					ConstantToken val = (ConstantToken)(object)((t is ConstantToken) ? t : null);
					if (val != null)
					{
						Variant value = val.Value;
						StringVariant val2 = (StringVariant)(object)((value is StringVariant) ? value : null);
						if (val2 != null)
						{
							return val2.Value == "one of your buddies caught something!";
						}
					}
					return false;
				},
				(Token t) => (int)t.Type == 81,
				(Token t) => (int)t.Type == 89
			}, false, false);
			global::System.Collections.Generic.IEnumerator<Token> enumerator = tokens.GetEnumerator();
			try
			{
				while (((global::System.Collections.IEnumerator)enumerator).MoveNext())
				{
					Token current = enumerator.Current;
					if (buddyCheck.Check(current))
					{
						yield return current;
						yield return new Token((TokenType)89, (uint?)1u);
						yield return new Token((TokenType)38, (uint?)null);
						yield return (Token)new IdentifierToken("FishingPlus");
						yield return new Token((TokenType)84, (uint?)null);
						yield return (Token)new IdentifierToken("autocollect");
						yield return new Token((TokenType)86, (uint?)null);
						yield return new Token((TokenType)89, (uint?)2u);
						yield return new Token((TokenType)59, (uint?)null);
						yield return (Token)new IdentifierToken("the_fish");
						yield return new Token((TokenType)23, (uint?)null);
						yield return (Token)new IdentifierToken("Globals");
						yield return new Token((TokenType)84, (uint?)null);
						yield return (Token)new IdentifierToken("item_data");
						yield return new Token((TokenType)76, (uint?)null);
						yield return (Token)new IdentifierToken("roll");
						yield return new Token((TokenType)77, (uint?)null);
						yield return new Token((TokenType)76, (uint?)null);
						yield return (Token)new ConstantToken((Variant)new StringVariant("file"));
						yield return new Token((TokenType)77, (uint?)null);
						yield return new Token((TokenType)84, (uint?)null);
						yield return (Token)new IdentifierToken("item_name");
						yield return new Token((TokenType)89, (uint?)2u);
						yield return new Token((TokenType)59, (uint?)null);
						yield return (Token)new IdentifierToken("fish_quality");
						yield return new Token((TokenType)23, (uint?)null);
						yield return (Token)new IdentifierToken("PlayerData");
						yield return new Token((TokenType)84, (uint?)null);
						yield return (Token)new IdentifierToken("QUALITY_DATA");
						yield return new Token((TokenType)76, (uint?)null);
						yield return (Token)new IdentifierToken("quality");
						yield return new Token((TokenType)77, (uint?)null);
						yield return new Token((TokenType)84, (uint?)null);
						yield return (Token)new IdentifierToken("name");
						yield return new Token((TokenType)89, (uint?)2u);
						yield return (Token)new IdentifierToken("PlayerData");
						yield return new Token((TokenType)84, (uint?)null);
						yield return (Token)new IdentifierToken("_send_notification");
						yield return new Token((TokenType)80, (uint?)null);
						yield return (Token)new ConstantToken((Variant)new StringVariant("you caught "));
						yield return new Token((TokenType)16, (uint?)null);
						yield return (Token)new IdentifierToken("the_fish");
						yield return new Token((TokenType)16, (uint?)null);
						yield return (Token)new ConstantToken((Variant)new StringVariant(" / size "));
						yield return new Token((TokenType)16, (uint?)null);
						yield return new Token((TokenType)5, (uint?)62u);
						yield return new Token((TokenType)80, (uint?)null);
						yield return (Token)new IdentifierToken("size");
						yield return new Token((TokenType)81, (uint?)null);
						yield return new Token((TokenType)16, (uint?)null);
						yield return (Token)new ConstantToken((Variant)new StringVariant(" / quality "));
						yield return new Token((TokenType)16, (uint?)null);
						yield return new Token((TokenType)5, (uint?)62u);
						yield return new Token((TokenType)80, (uint?)null);
						yield return (Token)new IdentifierToken("fish_quality");
						yield return new Token((TokenType)81, (uint?)null);
						yield return new Token((TokenType)81, (uint?)null);
						yield return new Token((TokenType)89, (uint?)2u);
						yield return new Token((TokenType)89, (uint?)2u);
						yield return