Decompiled source of FishingPlus v1.5.5

GDWeave/mods/FishingPlus/FishingPlus.dll

Decompiled a day 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("Debug")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0+61233951269d371689933348de2b84f540204b7b")]
[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 = false;

		[JsonInclude]
		public bool PatientLure = false;
	}
	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 string path;

			public string <>3__path;

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

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

			public CustomTitle <>4__this;

			private MultiTokenWaiter <updateTitleWaiter>5__1;

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

			private Token <token>5__3;

			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)
				{
					return;
				}
				try
				{
				}
				finally
				{
					<>m__Finally1();
				}
			}

			private bool MoveNext()
			{
				//IL_018a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0194: Expected O, but got Unknown
				//IL_01b0: Unknown result type (might be due to invalid IL or missing references)
				//IL_01ba: Expected O, but got Unknown
				//IL_01db: Unknown result type (might be due to invalid IL or missing references)
				//IL_01e5: Expected O, but got Unknown
				//IL_0206: Unknown result type (might be due to invalid IL or missing references)
				//IL_0210: Expected O, but got Unknown
				//IL_020b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0215: Expected O, but got Unknown
				//IL_0237: Unknown result type (might be due to invalid IL or missing references)
				//IL_0241: Expected O, but got Unknown
				//IL_025d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0267: Expected O, but got Unknown
				//IL_0289: Unknown result type (might be due to invalid IL or missing references)
				//IL_0293: Expected O, but got Unknown
				//IL_02af: Unknown result type (might be due to invalid IL or missing references)
				//IL_02b9: Expected O, but got Unknown
				//IL_02b4: Unknown result type (might be due to invalid IL or missing references)
				//IL_02be: Expected O, but got Unknown
				//IL_02e1: Unknown result type (might be due to invalid IL or missing references)
				//IL_02eb: Expected O, but got Unknown
				//IL_0308: Unknown result type (might be due to invalid IL or missing references)
				//IL_0312: Expected O, but got Unknown
				//IL_0332: Unknown result type (might be due to invalid IL or missing references)
				//IL_033c: Expected O, but got Unknown
				//IL_0108: Unknown result type (might be due to invalid IL or missing references)
				//IL_0112: Expected O, but got Unknown
				try
				{
					switch (<>1__state)
					{
					default:
						return false;
					case 0:
						<>1__state = -1;
						<updateTitleWaiter>5__1 = 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);
						<>s__2 = 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;
						goto IL_0373;
					case 13:
						{
							<>1__state = -3;
							goto IL_0373;
						}
						IL_0373:
						<token>5__3 = null;
						break;
					}
					if (((global::System.Collections.IEnumerator)<>s__2).MoveNext())
					{
						<token>5__3 = <>s__2.Current;
						if (<updateTitleWaiter>5__1.Check(<token>5__3))
						{
							<>2__current = <token>5__3;
							<>1__state = 1;
							return true;
						}
						<>2__current = <token>5__3;
						<>1__state = 13;
						return true;
					}
					<>m__Finally1();
					<>s__2 = 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 (<>s__2 != null)
				{
					((global::System.IDisposable)<>s__2).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)
					{
						<>4__this = <>4__this
					};
				}
				<Modify>d__.path = <>3__path;
				<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 token = enumerator.Current;
					if (updateTitleWaiter.Check(token))
					{
						yield return token;
						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 token;
					}
				}
			}
			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 string path;

			public string <>3__path;

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

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

			public InjectConfig <>4__this;

			private MultiTokenWaiter <extendsWaiter>5__1;

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

			private Token <token>5__3;

			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)
				{
					return;
				}
				try
				{
				}
				finally
				{
					<>m__Finally1();
				}
			}

			private bool MoveNext()
			{
				//IL_014d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0157: Expected O, but got Unknown
				//IL_0179: Unknown result type (might be due to invalid IL or missing references)
				//IL_0183: Expected O, but got Unknown
				//IL_01a5: Unknown result type (might be due to invalid IL or missing references)
				//IL_01af: Expected O, but got Unknown
				//IL_01cb: Unknown result type (might be due to invalid IL or missing references)
				//IL_01d5: Expected O, but got Unknown
				//IL_01f7: Unknown result type (might be due to invalid IL or missing references)
				//IL_0201: Expected O, but got Unknown
				//IL_0223: Unknown result type (might be due to invalid IL or missing references)
				//IL_022d: Expected O, but got Unknown
				//IL_0249: Unknown result type (might be due to invalid IL or missing references)
				//IL_0253: Expected O, but got Unknown
				//IL_024e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0258: Expected O, but got Unknown
				//IL_027a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0284: Expected O, but got Unknown
				//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
				//IL_00d5: Expected O, but got Unknown
				try
				{
					switch (<>1__state)
					{
					default:
						return false;
					case 0:
						<>1__state = -1;
						<extendsWaiter>5__1 = new MultiTokenWaiter(new Func<Token, bool>[2]
						{
							(Token t) => (int)t.Type == 51,
							(Token t) => (int)t.Type == 89
						}, false, true);
						<>s__2 = 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;
						goto IL_02bd;
					case 10:
						{
							<>1__state = -3;
							goto IL_02bd;
						}
						IL_02bd:
						<token>5__3 = null;
						break;
					}
					if (((global::System.Collections.IEnumerator)<>s__2).MoveNext())
					{
						<token>5__3 = <>s__2.Current;
						if (<extendsWaiter>5__1.Check(<token>5__3))
						{
							<>2__current = <token>5__3;
							<>1__state = 1;
							return true;
						}
						<>2__current = <token>5__3;
						<>1__state = 10;
						return true;
					}
					<>m__Finally1();
					<>s__2 = 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 (<>s__2 != null)
				{
					((global::System.IDisposable)<>s__2).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)
					{
						<>4__this = <>4__this
					};
				}
				<Modify>d__.path = <>3__path;
				<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" || path == "res://Scenes/Minigames/Fishing3/fishing3.gdc" || 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 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 token = enumerator.Current;
					if (extendsWaiter.Check(token))
					{
						yield return token;
						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 token;
					}
				}
			}
			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 string path;

			public string <>3__path;

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

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

			public InjectMenu <>4__this;

			private MultiTokenWaiter <extendsWaiter>5__1;

			private FunctionWaiter <readyWaiter>5__2;

			private MultiTokenWaiter <notUsingChat>5__3;

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

			private Token <token>5__5;

			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)
				{
					return;
				}
				try
				{
				}
				finally
				{
					<>m__Finally1();
				}
			}

			private bool MoveNext()
			{
				//IL_0570: Unknown result type (might be due to invalid IL or missing references)
				//IL_057a: Expected O, but got Unknown
				//IL_059c: Unknown result type (might be due to invalid IL or missing references)
				//IL_05a6: Expected O, but got Unknown
				//IL_05c8: Unknown result type (might be due to invalid IL or missing references)
				//IL_05d2: Expected O, but got Unknown
				//IL_05ee: Unknown result type (might be due to invalid IL or missing references)
				//IL_05f8: Expected O, but got Unknown
				//IL_061a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0624: Expected O, but got Unknown
				//IL_0646: Unknown result type (might be due to invalid IL or missing references)
				//IL_0650: Expected O, but got Unknown
				//IL_066c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0676: Expected O, but got Unknown
				//IL_0671: Unknown result type (might be due to invalid IL or missing references)
				//IL_067b: Expected O, but got Unknown
				//IL_069d: Unknown result type (might be due to invalid IL or missing references)
				//IL_06a7: Expected O, but got Unknown
				//IL_070b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0715: Expected O, but got Unknown
				//IL_0738: Unknown result type (might be due to invalid IL or missing references)
				//IL_0742: Expected O, but got Unknown
				//IL_075f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0769: Expected O, but got Unknown
				//IL_078c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0796: Expected O, but got Unknown
				//IL_07b3: Unknown result type (might be due to invalid IL or missing references)
				//IL_07bd: Expected O, but got Unknown
				//IL_07e0: Unknown result type (might be due to invalid IL or missing references)
				//IL_07ea: Expected O, but got Unknown
				//IL_0807: Unknown result type (might be due to invalid IL or missing references)
				//IL_0811: Expected O, but got Unknown
				//IL_0834: Unknown result type (might be due to invalid IL or missing references)
				//IL_083e: Expected O, but got Unknown
				//IL_085b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0865: Expected O, but got Unknown
				//IL_0888: Unknown result type (might be due to invalid IL or missing references)
				//IL_0892: Expected O, but got Unknown
				//IL_08af: Unknown result type (might be due to invalid IL or missing references)
				//IL_08b9: Expected O, but got Unknown
				//IL_08dc: Unknown result type (might be due to invalid IL or missing references)
				//IL_08e6: Expected O, but got Unknown
				//IL_0903: Unknown result type (might be due to invalid IL or missing references)
				//IL_090d: Expected O, but got Unknown
				//IL_0930: Unknown result type (might be due to invalid IL or missing references)
				//IL_093a: Expected O, but got Unknown
				//IL_0957: Unknown result type (might be due to invalid IL or missing references)
				//IL_0961: Expected O, but got Unknown
				//IL_0984: Unknown result type (might be due to invalid IL or missing references)
				//IL_098e: Expected O, but got Unknown
				//IL_09b1: Unknown result type (might be due to invalid IL or missing references)
				//IL_09bb: Expected O, but got Unknown
				//IL_09de: Unknown result type (might be due to invalid IL or missing references)
				//IL_09e8: Expected O, but got Unknown
				//IL_0a08: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a12: Expected O, but got Unknown
				//IL_0a35: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a3f: Expected O, but got Unknown
				//IL_0a5c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a66: Expected O, but got Unknown
				//IL_0a89: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a93: Expected O, but got Unknown
				//IL_0ab0: Unknown result type (might be due to invalid IL or missing references)
				//IL_0aba: Expected O, but got Unknown
				//IL_0add: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ae7: Expected O, but got Unknown
				//IL_0b04: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b0e: Expected O, but got Unknown
				//IL_0b31: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b3b: Expected O, but got Unknown
				//IL_0b58: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b62: Expected O, but got Unknown
				//IL_0b85: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b8f: Expected O, but got Unknown
				//IL_0bac: Unknown result type (might be due to invalid IL or missing references)
				//IL_0bb6: Expected O, but got Unknown
				//IL_0bd9: Unknown result type (might be due to invalid IL or missing references)
				//IL_0be3: Expected O, but got Unknown
				//IL_0c00: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c0a: Expected O, but got Unknown
				//IL_0c2d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c37: Expected O, but got Unknown
				//IL_0c5a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c64: Expected O, but got Unknown
				//IL_0c87: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c91: Expected O, but got Unknown
				//IL_0cb1: Unknown result type (might be due to invalid IL or missing references)
				//IL_0cbb: Expected O, but got Unknown
				//IL_0cde: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ce8: Expected O, but got Unknown
				//IL_0d05: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d0f: Expected O, but got Unknown
				//IL_0d32: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d3c: Expected O, but got Unknown
				//IL_0d5f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d69: Expected O, but got Unknown
				//IL_0d86: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d90: Expected O, but got Unknown
				//IL_0db3: Unknown result type (might be due to invalid IL or missing references)
				//IL_0dbd: Expected O, but got Unknown
				//IL_0dda: Unknown result type (might be due to invalid IL or missing references)
				//IL_0de4: Expected O, but got Unknown
				//IL_0e07: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e11: Expected O, but got Unknown
				//IL_0e2e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e38: Expected O, but got Unknown
				//IL_0e5b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e65: Expected O, but got Unknown
				//IL_0e82: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e8c: Expected O, but got Unknown
				//IL_0eac: Unknown result type (might be due to invalid IL or missing references)
				//IL_0eb6: Expected O, but got Unknown
				//IL_0ed9: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ee3: Expected O, but got Unknown
				//IL_0f00: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f0a: Expected O, but got Unknown
				//IL_0f2d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f37: Expected O, but got Unknown
				//IL_0f5a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f64: Expected O, but got Unknown
				//IL_0f81: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f8b: Expected O, but got Unknown
				//IL_0fae: Unknown result type (might be due to invalid IL or missing references)
				//IL_0fb8: Expected O, but got Unknown
				//IL_0fd5: Unknown result type (might be due to invalid IL or missing references)
				//IL_0fdf: Expected O, but got Unknown
				//IL_1002: Unknown result type (might be due to invalid IL or missing references)
				//IL_100c: 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_107a: Unknown result type (might be due to invalid IL or missing references)
				//IL_1084: Expected O, but got Unknown
				//IL_10a7: Unknown result type (might be due to invalid IL or missing references)
				//IL_10b1: Expected O, but got Unknown
				//IL_10ce: Unknown result type (might be due to invalid IL or missing references)
				//IL_10d8: Expected O, but got Unknown
				//IL_10fb: Unknown result type (might be due to invalid IL or missing references)
				//IL_1105: Expected O, but got Unknown
				//IL_1122: Unknown result type (might be due to invalid IL or missing references)
				//IL_112c: Expected O, but got Unknown
				//IL_1127: Unknown result type (might be due to invalid IL or missing references)
				//IL_1131: Expected O, but got Unknown
				//IL_1154: Unknown result type (might be due to invalid IL or missing references)
				//IL_115e: Expected O, but got Unknown
				//IL_117b: Unknown result type (might be due to invalid IL or missing references)
				//IL_1185: Expected O, but got Unknown
				//IL_11a8: Unknown result type (might be due to invalid IL or missing references)
				//IL_11b2: Expected O, but got Unknown
				//IL_11cf: Unknown result type (might be due to invalid IL or missing references)
				//IL_11d9: Expected O, but got Unknown
				//IL_11d4: Unknown result type (might be due to invalid IL or missing references)
				//IL_11de: Expected O, but got Unknown
				//IL_1201: Unknown result type (might be due to invalid IL or missing references)
				//IL_120b: Expected O, but got Unknown
				//IL_122b: Unknown result type (might be due to invalid IL or missing references)
				//IL_1235: Expected O, but got Unknown
				//IL_129c: Unknown result type (might be due to invalid IL or missing references)
				//IL_12a6: Expected O, but got Unknown
				//IL_12c9: Unknown result type (might be due to invalid IL or missing references)
				//IL_12d3: Expected O, but got Unknown
				//IL_12f0: Unknown result type (might be due to invalid IL or missing references)
				//IL_12fa: Expected O, but got Unknown
				//IL_131d: Unknown result type (might be due to invalid IL or missing references)
				//IL_1327: Expected O, but got Unknown
				//IL_1344: Unknown result type (might be due to invalid IL or missing references)
				//IL_134e: Expected O, but got Unknown
				//IL_0374: Unknown result type (might be due to invalid IL or missing references)
				//IL_037e: Expected O, but got Unknown
				//IL_0385: Unknown result type (might be due to invalid IL or missing references)
				//IL_038f: Expected O, but got Unknown
				//IL_04ee: Unknown result type (might be due to invalid IL or missing references)
				//IL_04f8: Expected O, but got Unknown
				try
				{
					switch (<>1__state)
					{
					default:
						return false;
					case 0:
						<>1__state = -1;
						<extendsWaiter>5__1 = new MultiTokenWaiter(new Func<Token, bool>[2]
						{
							(Token t) => (int)t.Type == 51,
							(Token t) => (int)t.Type == 89
						}, false, true);
						<readyWaiter>5__2 = new FunctionWaiter("_ready", false);
						<notUsingChat>5__3 = new MultiTokenWaiter(new Func<Token, bool>[10]
						{
							delegate(Token t)
							{
								ConstantToken val3 = (ConstantToken)(object)((t is ConstantToken) ? t : null);
								int result;
								if (val3 != null)
								{
									Variant value = val3.Value;
									StringVariant val4 = (StringVariant)(object)((value is StringVariant) ? value : null);
									if (val4 != null)
									{
										result = ((val4.Value == "") ? 1 : 0);
										goto IL_002c;
									}
								}
								result = 0;
								goto IL_002c;
								IL_002c:
								return (byte)result != 0;
							},
							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);
						<>s__4 = 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;
						goto IL_1385;
					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;
						goto IL_1385;
					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;
						goto IL_1385;
					case 85:
						{
							<>1__state = -3;
							goto IL_1385;
						}
						IL_1385:
						<token>5__5 = null;
						break;
					}
					if (((global::System.Collections.IEnumerator)<>s__4).MoveNext())
					{
						<token>5__5 = <>s__4.Current;
						if (<extendsWaiter>5__1.Check(<token>5__5))
						{
							<>2__current = <token>5__5;
							<>1__state = 1;
							return true;
						}
						if (<readyWaiter>5__2.Check(<token>5__5))
						{
							<>2__current = <token>5__5;
							<>1__state = 10;
							return true;
						}
						if (<notUsingChat>5__3.Check(<token>5__5))
						{
							<>2__current = <token>5__5;
							<>1__state = 79;
							return true;
						}
						<>2__current = <token>5__5;
						<>1__state = 85;
						return true;
					}
					<>m__Finally1();
					<>s__4 = 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 (<>s__4 != null)
				{
					((global::System.IDisposable)<>s__4).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)
					{
						<>4__this = <>4__this
					};
				}
				<Modify>d__.path = <>3__path;
				<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);
					int result;
					if (val3 != null)
					{
						Variant value = val3.Value;
						StringVariant val4 = (StringVariant)(object)((value is StringVariant) ? value : null);
						if (val4 != null)
						{
							result = ((val4.Value == "") ? 1 : 0);
							goto IL_002c;
						}
					}
					result = 0;
					goto IL_002c;
					IL_002c:
					return (byte)result != 0;
				},
				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 token = enumerator.Current;
					if (extendsWaiter.Check(token))
					{
						yield return token;
						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(token))
					{
						yield return token;
						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(token))
					{
						yield return token;
						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 token;
					}
				}
			}
			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 string path;

			public string <>3__path;

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

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

			public InjectPlayerAutism <>4__this;

			private MultiTokenWaiter <busyCheck>5__1;

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

			private Token <token>5__3;

			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)
				{
					return;
				}
				try
				{
				}
				finally
				{
					<>m__Finally1();
				}
			}

			private bool MoveNext()
			{
				//IL_0129: Unknown result type (might be due to invalid IL or missing references)
				//IL_0133: Expected O, but got Unknown
				//IL_014f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0159: Expected O, but got Unknown
				//IL_017b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0185: Expected O, but got Unknown
				//IL_019e: Unknown result type (might be due to invalid IL or missing references)
				//IL_01a8: Expected O, but got Unknown
				//IL_00a7: Unknown result type (might be due to invalid IL or missing references)
				//IL_00b1: Expected O, but got Unknown
				try
				{
					switch (<>1__state)
					{
					default:
						return false;
					case 0:
						<>1__state = -1;
						<busyCheck>5__1 = 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);
						<>s__2 = 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;
						goto IL_01dd;
					case 6:
						{
							<>1__state = -3;
							goto IL_01dd;
						}
						IL_01dd:
						<token>5__3 = null;
						break;
					}
					if (((global::System.Collections.IEnumerator)<>s__2).MoveNext())
					{
						<token>5__3 = <>s__2.Current;
						if (<busyCheck>5__1.Check(<token>5__3))
						{
							<>2__current = <token>5__3;
							<>1__state = 1;
							return true;
						}
						<>2__current = <token>5__3;
						<>1__state = 6;
						return true;
					}
					<>m__Finally1();
					<>s__2 = 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 (<>s__2 != null)
				{
					((global::System.IDisposable)<>s__2).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)
					{
						<>4__this = <>4__this
					};
				}
				<Modify>d__.path = <>3__path;
				<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 token = enumerator.Current;
					if (busyCheck.Check(token))
					{
						yield return token;
						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 token;
					}
				}
			}
			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 string path;

			public string <>3__path;

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

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

			public PatientLurePatch <>4__this;

			private MultiTokenWaiter <patientLureCheck>5__1;

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

			private Token <token>5__3;

			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)
				{
					return;
				}
				try
				{
				}
				finally
				{
					<>m__Finally1();
				}
			}

			private bool MoveNext()
			{
				//IL_016d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0177: Expected O, but got Unknown
				//IL_0193: Unknown result type (might be due to invalid IL or missing references)
				//IL_019d: Expected O, but got Unknown
				//IL_01bf: Unknown result type (might be due to invalid IL or missing references)
				//IL_01c9: Expected O, but got Unknown
				//IL_01e5: Unknown result type (might be due to invalid IL or missing references)
				//IL_01ef: Expected O, but got Unknown
				//IL_00eb: Unknown result type (might be due to invalid IL or missing references)
				//IL_00f5: Expected O, but got Unknown
				try
				{
					switch (<>1__state)
					{
					default:
						return false;
					case 0:
						<>1__state = -1;
						<patientLureCheck>5__1 = 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);
								int result;
								if (val != null)
								{
									Variant value = val.Value;
									StringVariant val2 = (StringVariant)(object)((value is StringVariant) ? value : null);
									if (val2 != null)
									{
										result = ((val2.Value == "patient") ? 1 : 0);
										goto IL_002c;
									}
								}
								result = 0;
								goto IL_002c;
								IL_002c:
								return (byte)result != 0;
							}
						}, false, false);
						<>s__2 = 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;
						goto IL_0226;
					case 6:
						{
							<>1__state = -3;
							goto IL_0226;
						}
						IL_0226:
						<token>5__3 = null;
						break;
					}
					if (((global::System.Collections.IEnumerator)<>s__2).MoveNext())
					{
						<token>5__3 = <>s__2.Current;
						if (<patientLureCheck>5__1.Check(<token>5__3))
						{
							<>2__current = <token>5__3;
							<>1__state = 1;
							return true;
						}
						<>2__current = <token>5__3;
						<>1__state = 6;
						return true;
					}
					<>m__Finally1();
					<>s__2 = 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 (<>s__2 != null)
				{
					((global::System.IDisposable)<>s__2).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)
					{
						<>4__this = <>4__this
					};
				}
				<Modify>d__.path = <>3__path;
				<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);
					int result;
					if (val != null)
					{
						Variant value = val.Value;
						StringVariant val2 = (StringVariant)(object)((value is StringVariant) ? value : null);
						if (val2 != null)
						{
							result = ((val2.Value == "patient") ? 1 : 0);
							goto IL_002c;
						}
					}
					result = 0;
					goto IL_002c;
					IL_002c:
					return (byte)result != 0;
				}
			}, false, false);
			global::System.Collections.Generic.IEnumerator<Token> enumerator = tokens.GetEnumerator();
			try
			{
				while (((global::System.Collections.IEnumerator)enumerator).MoveNext())
				{
					Token token = enumerator.Current;
					if (patientLureCheck.Check(token))
					{
						yield return token;
						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 token;
					}
				}
			}
			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 string path;

			public string <>3__path;

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

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

			public AutoCollectBuddies <>4__this;

			private MultiTokenWaiter <buddyCheck>5__1;

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

			private Token <token>5__3;

			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)
				{
					return;
				}
				try
				{
				}
				finally
				{
					<>m__Finally1();
				}
			}

			private bool MoveNext()
			{
				//IL_0479: Unknown result type (might be due to invalid IL or missing references)
				//IL_0483: Expected O, but got Unknown
				//IL_04a5: Unknown result type (might be due to invalid IL or missing references)
				//IL_04af: Expected O, but got Unknown
				//IL_04cb: Unknown result type (might be due to invalid IL or missing references)
				//IL_04d5: Expected O, but got Unknown
				//IL_04f7: Unknown result type (might be due to invalid IL or missing references)
				//IL_0501: Expected O, but got Unknown
				//IL_051d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0527: Expected O, but got Unknown
				//IL_0549: Unknown result type (might be due to invalid IL or missing references)
				//IL_0553: Expected O, but got Unknown
				//IL_0572: Unknown result type (might be due to invalid IL or missing references)
				//IL_057c: Expected O, but got Unknown
				//IL_059e: Unknown result type (might be due to invalid IL or missing references)
				//IL_05a8: Expected O, but got Unknown
				//IL_05c5: Unknown result type (might be due to invalid IL or missing references)
				//IL_05cf: Expected O, but got Unknown
				//IL_05f2: Unknown result type (might be due to invalid IL or missing references)
				//IL_05fc: Expected O, but got Unknown
				//IL_0619: Unknown result type (might be due to invalid IL or missing references)
				//IL_0623: Expected O, but got Unknown
				//IL_0646: Unknown result type (might be due to invalid IL or missing references)
				//IL_0650: Expected O, but got Unknown
				//IL_066d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0677: Expected O, but got Unknown
				//IL_069a: Unknown result type (might be due to invalid IL or missing references)
				//IL_06a4: Expected O, but got Unknown
				//IL_06c1: Unknown result type (might be due to invalid IL or missing references)
				//IL_06cb: Expected O, but got Unknown
				//IL_06ee: Unknown result type (might be due to invalid IL or missing references)
				//IL_06f8: Expected O, but got Unknown
				//IL_071b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0725: Expected O, but got Unknown
				//IL_0742: Unknown result type (might be due to invalid IL or missing references)
				//IL_074c: Expected O, but got Unknown
				//IL_0747: Unknown result type (might be due to invalid IL or missing references)
				//IL_0751: Expected O, but got Unknown
				//IL_0774: Unknown result type (might be due to invalid IL or missing references)
				//IL_077e: Expected O, but got Unknown
				//IL_07a1: Unknown result type (might be due to invalid IL or missing references)
				//IL_07ab: Expected O, but got Unknown
				//IL_07c8: Unknown result type (might be due to invalid IL or missing references)
				//IL_07d2: Expected O, but got Unknown
				//IL_07f2: Unknown result type (might be due to invalid IL or missing references)
				//IL_07fc: Expected O, but got Unknown
				//IL_081f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0829: Expected O, but got Unknown
				//IL_0846: Unknown result type (might be due to invalid IL or missing references)
				//IL_0850: Expected O, but got Unknown
				//IL_0873: Unknown result type (might be due to invalid IL or missing references)
				//IL_087d: Expected O, but got Unknown
				//IL_089a: Unknown result type (might be due to invalid IL or missing references)
				//IL_08a4: Expected O, but got Unknown
				//IL_08c7: Unknown result type (might be due to invalid IL or missing references)
				//IL_08d1: Expected O, but got Unknown
				//IL_08ee: Unknown result type (might be due to invalid IL or missing references)
				//IL_08f8: Expected O, but got Unknown
				//IL_091b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0925: Expected O, but got Unknown
				//IL_0942: Unknown result type (might be due to invalid IL or missing references)
				//IL_094c: Expected O, but got Unknown
				//IL_096f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0979: Expected O, but got Unknown
				//IL_099c: Unknown result type (might be due to invalid IL or missing references)
				//IL_09a6: Expected O, but got Unknown
				//IL_09c3: Unknown result type (might be due to invalid IL or missing references)
				//IL_09cd: Expected O, but got Unknown
				//IL_09ed: Unknown result type (might be due to invalid IL or missing references)
				//IL_09f7: Expected O, but got Unknown
				//IL_0a14: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a1e: Expected O, but got Unknown
				//IL_0a41: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a4b: Expected O, but got Unknown
				//IL_0a68: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a72: Expected O, but got Unknown
				//IL_0a95: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a9f: Expected O, but got Unknown
				//IL_0abc: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ac6: Expected O, but got Unknown
				//IL_0ac1: Unknown result type (might be due to invalid IL or missing references)
				//IL_0acb: Expected O, but got Unknown
				//IL_0aee: Unknown result type (might be due to invalid IL or missing references)
				//IL_0af8: Expected O, but got Unknown
				//IL_0b15: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b1f: 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_0b69: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b73: Expected O, but got Unknown
				//IL_0b6e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b78: Expected O, but got Unknown
				//IL_0b9b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ba5: Expected O, but got Unknown
				//IL_0bc5: Unknown result type (might be due to invalid IL or missing references)
				//IL_0bcf: Expected O, but got Unknown
				//IL_0bf2: Unknown result type (might be due to invalid IL or missing references)
				//IL_0bfc: Expected O, but got Unknown
				//IL_0c19: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c23: Expected O, but got Unknown
				//IL_0c46: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c50: Expected O, but got Unknown
				//IL_0c73: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c7d: Expected O, but got Unknown
				//IL_0c9a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ca4: Expected O, but got Unknown
				//IL_0c9f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ca9: Expected O, but got Unknown
				//IL_0ccc: Unknown result type (might be due to invalid IL or missing references)
				//IL_0cd6: Expected O, but got Unknown
				//IL_0cf6: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d00: Expected O, but got Unknown
				//IL_0d23: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d2d: Expected O, but got Unknown
				//IL_0d4a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d54: Expected O, but got Unknown
				//IL_0d77: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d81: Expected O, but got Unknown
				//IL_0da4: Unknown result type (might be due to invalid IL or missing references)
				//IL_0dae: Expected O, but got Unknown
				//IL_0dce: Unknown result type (might be due to invalid IL or missing references)
				//IL_0dd8: Expected O, but got Unknown
				//IL_0df8: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e02: Expected O, but got Unknown
				//IL_0e1f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e29: Expected O, but got Unknown
				//IL_0e4c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e56: Expected O, but got Unknown
				//IL_0e6f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e79: Expected O, but got Unknown
				//IL_0e74: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e7e: Expected O, but got Unknown
				//IL_0e9e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ea8: Expected O, but got Unknown
				//IL_0ecb: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ed5: Expected O, but got Unknown
				//IL_0ef2: Unknown result type (might be due to invalid IL or missing references)
				//IL_0efc: Expected O, but got Unknown
				//IL_0f1f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f29: Expected O, but got Unknown
				//IL_0f46: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f50: Expected O, but got Unknown
				//IL_0f73: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f7d: Expected O, but got Unknown
				//IL_0f96: Unknown result type (might be due to invalid IL or missing references)
				//IL_0fa0: Expected O, but got Unknown
				//IL_0f9b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0fa5: Expected O, but got Unknown
				//IL_0fc5: Unknown result type (might be due to invalid IL or missing references)
				//IL_0fcf: Expected O, but got Unknown
				//IL_0fec: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ff6: Expected O, but got Unknown
				//IL_1019: Unknown result type (might be due to invalid IL or missing references)
				//IL_1023: Expected O, but got Unknown
				//IL_1046: Unknown result type (might be due to invalid IL or missing references)
				//IL_1050: Expected O, but got Unknown
				//IL_1070: Unknown result type (might be due to invalid IL or missing references)
				//IL_107a: Expected O, but got Unknown
				//IL_1097: Unknown result type (might be due to invalid IL or missing references)
				//IL_10a1: Expected O, but got Unknown
				//IL_10c4: Unknown result type (might be due to invalid IL or missing references)
				//IL_10ce: Expected O, but got Unknown
				//IL_10eb: Unknown result type (might be due to invalid IL or missing references)
				//IL_10f5: Expected O, but got Unknown
				//IL_1118: Unknown result type (might be due to invalid IL or missing references)
				//IL_1122: Expected O, but got Unknown
				//IL_1145: Unknown result type (might be due to invalid IL or missing references)
				//IL_114f: Expected O, but got Unknown
				//IL_116f: Unknown result type (might be due to invalid IL or missing references)
				//IL_1179: Expected O, but got Unknown
				//IL_03fa: Unknown result type (might be due to invalid IL or missing references)
				//IL_0404: Expected O, but got Unknown
				try
				{
					switch (<>1__state)
					{
					default:
						return false;
					case 0:
						<>1__state = -1;
						<buddyCheck>5__1 = 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);
								int result;
								if (val != null)
								{
									Variant value = val.Value;
									StringVariant val2 = (StringVariant)(object)((value is StringVariant) ? value : null);
									if (val2 != null)
									{
										result = ((val2.Value == "one of your buddies caught something!") ? 1 : 0);
										goto IL_002c;
									}
								}
								result = 0;
								goto IL_002c;
								IL_002c:
								return (byte)result != 0;
							},
							(Token t) => (int)t.Type == 81,
							(Token t) => (int)t.Type == 89
						}, false, false);
						<>s__2 = 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;
						goto IL_11b2;
					case 81:
						{
							<>1__state = -3;
							goto IL_11b2;
						}
						IL_11b2:
						<token>5__3 = null;
						break;
					}
					if (((global::System.Collections.IEnumerator)<>s__2).MoveNext())
					{
						<token>5__3 = <>s__2.Current;
						if (<buddyCheck>5__1.Check(<token>5__3))
						{
							<>2__current = <token>5__3;
							<>1__state = 1;
							return true;
						}
						<>2__current = <token>5__3;
						<>1__state = 81;
						return true;
					}
					<>m__Finally1();
					<>s__2 = 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 (<>s__2 != null)
				{
					((global::System.IDisposable)<>s__2).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)
					{
						<>4__this = <>4__this
					};
				}
				<Modify>d__.path = <>3__path;
				<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);
					int result;
					if (val != null)
					{
						Variant value = val.Value;
						StringVariant val2 = (StringVariant)(object)((value is StringVariant) ? value : null);
						if (val2 != null)
						{
							result = ((val2.Value == "one of your buddies caught something!") ? 1 : 0);
							goto IL_002c;
						}
					}
					result = 0;
					goto IL_002c;
					IL_002c:
					return (byte)result != 0;
				},
				(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 token = enumerator.Current;
					if (buddyCheck.Check(token))
					{
						yield return token;
						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