diff --git a/.gitignore b/.gitignore index e3636e1d..aa2790fb 100644 --- a/.gitignore +++ b/.gitignore @@ -41,8 +41,6 @@ local.properties *.user *.sln.docstates -launchSettings.json - # Roslyn (?) files *.sln.ide diff --git a/Abusing CSharp/Code/AbusingCSharp.sln b/Abusing CSharp/Code/AbusingCSharp.sln deleted file mode 100644 index 5604120b..00000000 --- a/Abusing CSharp/Code/AbusingCSharp.sln +++ /dev/null @@ -1,100 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 15 -VisualStudioVersion = 15.0.26020.0 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FunWithAwaiters", "FunWithAwaiters\FunWithAwaiters.csproj", "{3C95E21E-8080-4007-BD07-62ACDB4F02FE}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LinqToOperators", "LinqToOperators\LinqToOperators.csproj", "{3B6E7F7F-852F-4686-AFCC-1801E1AA614B}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WrappingAsync", "WrappingAsync\WrappingAsync.csproj", "{1C5FC668-B8AC-4B87-B053-BACAAD003DBF}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WhatTheHeck", "WhatTheHeck\WhatTheHeck.csproj", "{E3321E4F-EA4D-474C-ADBB-B2FA45BF1F51}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VersionDetection", "VersionDetection\VersionDetection.csproj", "{C69B3861-8D0D-4582-9E53-B03711ADF9A3}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VersionHelper", "VersionHelper\VersionHelper.csproj", "{DF7FC088-6A47-4C32-9D86-BAF31D8EECF4}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WhatTheHeck2", "WhatTheHeck2\WhatTheHeck2.csproj", "{2CED56D7-028F-474C-ABC3-6F332A61D32A}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OperatorAbuse", "OperatorAbuse\OperatorAbuse.csproj", "{633A7C59-06B0-44B1-94F7-877EE5E7D3B1}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OddsAndEnds", "OddsAndEnds\OddsAndEnds.csproj", "{7585BEF9-0348-4CC3-AA9E-C77DF3C5DE11}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Performance", "Performance\Performance.csproj", "{7B6AECB5-CCD7-4F91-9D8A-5CAF92B9EDA6}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StringInterpolation", "StringInterpolation\StringInterpolation.csproj", "{F66F5289-FCDF-41E9-AA8A-7D44BA122E5A}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ExceptionFilters", "ExceptionFilters\ExceptionFilters.csproj", "{52F1308B-8861-40F1-8FDD-2FCA4AD29E38}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NullConditional", "NullConditional\NullConditional.csproj", "{E510ED31-7960-424E-90DB-B0C9B0C9B497}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Text", "Text", "{55FA2DC3-0C28-4722-9CEE-F450B1E3B310}" - ProjectSection(SolutionItems) = preProject - ..\Text\agenda.txt = ..\Text\agenda.txt - ..\Text\intro.txt = ..\Text\intro.txt - EndProjectSection -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {3C95E21E-8080-4007-BD07-62ACDB4F02FE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {3C95E21E-8080-4007-BD07-62ACDB4F02FE}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3C95E21E-8080-4007-BD07-62ACDB4F02FE}.Release|Any CPU.ActiveCfg = Release|Any CPU - {3C95E21E-8080-4007-BD07-62ACDB4F02FE}.Release|Any CPU.Build.0 = Release|Any CPU - {3B6E7F7F-852F-4686-AFCC-1801E1AA614B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {3B6E7F7F-852F-4686-AFCC-1801E1AA614B}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3B6E7F7F-852F-4686-AFCC-1801E1AA614B}.Release|Any CPU.ActiveCfg = Release|Any CPU - {3B6E7F7F-852F-4686-AFCC-1801E1AA614B}.Release|Any CPU.Build.0 = Release|Any CPU - {1C5FC668-B8AC-4B87-B053-BACAAD003DBF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {1C5FC668-B8AC-4B87-B053-BACAAD003DBF}.Debug|Any CPU.Build.0 = Debug|Any CPU - {1C5FC668-B8AC-4B87-B053-BACAAD003DBF}.Release|Any CPU.ActiveCfg = Release|Any CPU - {1C5FC668-B8AC-4B87-B053-BACAAD003DBF}.Release|Any CPU.Build.0 = Release|Any CPU - {E3321E4F-EA4D-474C-ADBB-B2FA45BF1F51}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {E3321E4F-EA4D-474C-ADBB-B2FA45BF1F51}.Debug|Any CPU.Build.0 = Debug|Any CPU - {E3321E4F-EA4D-474C-ADBB-B2FA45BF1F51}.Release|Any CPU.ActiveCfg = Release|Any CPU - {E3321E4F-EA4D-474C-ADBB-B2FA45BF1F51}.Release|Any CPU.Build.0 = Release|Any CPU - {C69B3861-8D0D-4582-9E53-B03711ADF9A3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C69B3861-8D0D-4582-9E53-B03711ADF9A3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C69B3861-8D0D-4582-9E53-B03711ADF9A3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C69B3861-8D0D-4582-9E53-B03711ADF9A3}.Release|Any CPU.Build.0 = Release|Any CPU - {DF7FC088-6A47-4C32-9D86-BAF31D8EECF4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {DF7FC088-6A47-4C32-9D86-BAF31D8EECF4}.Debug|Any CPU.Build.0 = Debug|Any CPU - {DF7FC088-6A47-4C32-9D86-BAF31D8EECF4}.Release|Any CPU.ActiveCfg = Release|Any CPU - {DF7FC088-6A47-4C32-9D86-BAF31D8EECF4}.Release|Any CPU.Build.0 = Release|Any CPU - {2CED56D7-028F-474C-ABC3-6F332A61D32A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {2CED56D7-028F-474C-ABC3-6F332A61D32A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {2CED56D7-028F-474C-ABC3-6F332A61D32A}.Release|Any CPU.ActiveCfg = Release|Any CPU - {2CED56D7-028F-474C-ABC3-6F332A61D32A}.Release|Any CPU.Build.0 = Release|Any CPU - {633A7C59-06B0-44B1-94F7-877EE5E7D3B1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {633A7C59-06B0-44B1-94F7-877EE5E7D3B1}.Debug|Any CPU.Build.0 = Debug|Any CPU - {633A7C59-06B0-44B1-94F7-877EE5E7D3B1}.Release|Any CPU.ActiveCfg = Release|Any CPU - {633A7C59-06B0-44B1-94F7-877EE5E7D3B1}.Release|Any CPU.Build.0 = Release|Any CPU - {7585BEF9-0348-4CC3-AA9E-C77DF3C5DE11}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {7585BEF9-0348-4CC3-AA9E-C77DF3C5DE11}.Debug|Any CPU.Build.0 = Debug|Any CPU - {7585BEF9-0348-4CC3-AA9E-C77DF3C5DE11}.Release|Any CPU.ActiveCfg = Release|Any CPU - {7585BEF9-0348-4CC3-AA9E-C77DF3C5DE11}.Release|Any CPU.Build.0 = Release|Any CPU - {7B6AECB5-CCD7-4F91-9D8A-5CAF92B9EDA6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {7B6AECB5-CCD7-4F91-9D8A-5CAF92B9EDA6}.Debug|Any CPU.Build.0 = Debug|Any CPU - {7B6AECB5-CCD7-4F91-9D8A-5CAF92B9EDA6}.Release|Any CPU.ActiveCfg = Release|Any CPU - {7B6AECB5-CCD7-4F91-9D8A-5CAF92B9EDA6}.Release|Any CPU.Build.0 = Release|Any CPU - {F66F5289-FCDF-41E9-AA8A-7D44BA122E5A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {F66F5289-FCDF-41E9-AA8A-7D44BA122E5A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {F66F5289-FCDF-41E9-AA8A-7D44BA122E5A}.Release|Any CPU.ActiveCfg = Release|Any CPU - {F66F5289-FCDF-41E9-AA8A-7D44BA122E5A}.Release|Any CPU.Build.0 = Release|Any CPU - {52F1308B-8861-40F1-8FDD-2FCA4AD29E38}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {52F1308B-8861-40F1-8FDD-2FCA4AD29E38}.Debug|Any CPU.Build.0 = Debug|Any CPU - {52F1308B-8861-40F1-8FDD-2FCA4AD29E38}.Release|Any CPU.ActiveCfg = Release|Any CPU - {52F1308B-8861-40F1-8FDD-2FCA4AD29E38}.Release|Any CPU.Build.0 = Release|Any CPU - {E510ED31-7960-424E-90DB-B0C9B0C9B497}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {E510ED31-7960-424E-90DB-B0C9B0C9B497}.Debug|Any CPU.Build.0 = Debug|Any CPU - {E510ED31-7960-424E-90DB-B0C9B0C9B497}.Release|Any CPU.ActiveCfg = Release|Any CPU - {E510ED31-7960-424E-90DB-B0C9B0C9B497}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/Abusing CSharp/Code/ExceptionFilters/App.config b/Abusing CSharp/Code/ExceptionFilters/App.config deleted file mode 100644 index 88fa4027..00000000 --- a/Abusing CSharp/Code/ExceptionFilters/App.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/ExceptionFilters/DirectThrowingFilter.cs b/Abusing CSharp/Code/ExceptionFilters/DirectThrowingFilter.cs deleted file mode 100644 index caec79a3..00000000 --- a/Abusing CSharp/Code/ExceptionFilters/DirectThrowingFilter.cs +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace ExceptionFilters -{ - class DirectThrowingFilter - { - static void Main() - { - try - { - Foo(); - } - catch (Exception e) - { - Console.WriteLine($"Exception: {e}"); - } - } - - static void Foo() - { - try - { - Bar(); - } - catch (Exception e) when (e.Message[10] == '!') - { - } - } - - static void Bar() - { - throw new Exception("Bang!"); - } - } -} diff --git a/Abusing CSharp/Code/ExceptionFilters/ExceptionContext.cs b/Abusing CSharp/Code/ExceptionFilters/ExceptionContext.cs deleted file mode 100644 index 5f4b4407..00000000 --- a/Abusing CSharp/Code/ExceptionFilters/ExceptionContext.cs +++ /dev/null @@ -1,148 +0,0 @@ -// Copyright 2014 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Runtime.CompilerServices; - -namespace ExceptionFilters -{ - class ExceptionContext - { - static void Main() - { - try - { - OuterMethod(10); - } - catch (IOException e) - { - Console.WriteLine("Exception: {0}", e); - Console.WriteLine(); - e.DumpContext(); - } - } - - static void OuterMethod(int n) - { - for (int i = 0; i < n; i++) - { - try - { - InnerMethod(i); - } - catch (Exception e) when (new LogContextEntry {[nameof(n)] = n,[nameof(i)] = i }.AddTo(e)) - { /* Never get here... */ } - } - } - - static void InnerMethod(int x) - { - try - { - if (x == 7) - { - GoBang(); - } - } - catch (Exception e) when (new LogContextEntry {[nameof(x)] = x,["now"] = DateTime.Now }.AddTo(e)) - { /* Never get here... */ } - } - - static void GoBang() - { - try - { - throw new IOException("This is the exception"); - } - finally - { - Console.WriteLine("Finally block!"); - } - } - } - - static class ExceptionExtensions - { - internal static List GetContext(this Exception e) - { - return (List)e.Data["context"]; - } - - internal static void DumpContext(this Exception e) - { - var list = e.GetContext(); - if (list == null) - { - return; - } - Console.WriteLine("Context:"); - foreach (var entry in list) - { - Console.WriteLine(entry); - } - } - - internal static void AddContext(this Exception e, LogContextEntry entry) - { - var list = e.GetContext(); - if (list == null) - { - list = new List(); - e.Data["context"] = list; - } - list.Add(entry); - } - } - - sealed class LogContextEntry : IEnumerable - { - public string File { get; } - public string Member { get; } - public int Line { get; } - - private readonly List keyOrder = new List(); - private readonly Dictionary values = new Dictionary(); - - - internal LogContextEntry([CallerFilePath] string file = null, - [CallerMemberName] string member = null, - [CallerLineNumber] int line = 0) - { - File = Path.GetFileName(file); - Member = member; - Line = line; - } - - public object this[string key] - { - get { return values[key]; } - set - { - if (!values.ContainsKey(key)) - { - keyOrder.Add(key); - } - values[key] = value; - } - } - - public bool AddTo(Exception e) - { - e.AddContext(this); - return false; - } - - public override string ToString() - { - string valueText = string.Join(", ", keyOrder.Select(key => string.Format("${0} = {1}", key, values[key]))); - return string.Format("{0}:{1} ({2}) - {3}", File, Line, Member, valueText); - } - - IEnumerator IEnumerable.GetEnumerator() - { - throw new NotImplementedException("Only implementing IEnumerable for collection initializers..."); - } - } -} diff --git a/Abusing CSharp/Code/ExceptionFilters/ExceptionFilters.csproj b/Abusing CSharp/Code/ExceptionFilters/ExceptionFilters.csproj deleted file mode 100644 index 46f0489f..00000000 --- a/Abusing CSharp/Code/ExceptionFilters/ExceptionFilters.csproj +++ /dev/null @@ -1,62 +0,0 @@ - - - - - Debug - AnyCPU - {52F1308B-8861-40F1-8FDD-2FCA4AD29E38} - Exe - ExceptionFilters - ExceptionFilters - v4.5.2 - 512 - true - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - ExceptionFilters.Program - - - - ..\packages\JonSkeet.MiscUtil.0.1\lib\net35-Client\MiscUtil.dll - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/ExceptionFilters/Program.cs b/Abusing CSharp/Code/ExceptionFilters/Program.cs deleted file mode 100644 index 9c4c1987..00000000 --- a/Abusing CSharp/Code/ExceptionFilters/Program.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -using MiscUtil; - -namespace ExceptionFilters -{ - class Program - { - static void Main(string[] args) - { - ApplicationChooser.Run(typeof(Program), args); - } - } -} diff --git a/Abusing CSharp/Code/ExceptionFilters/Properties/AssemblyInfo.cs b/Abusing CSharp/Code/ExceptionFilters/Properties/AssemblyInfo.cs deleted file mode 100644 index 87a70d7a..00000000 --- a/Abusing CSharp/Code/ExceptionFilters/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("ExceptionFilters")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("ExceptionFilters")] -[assembly: AssemblyCopyright("Copyright © 2017")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("52f1308b-8861-40f1-8fdd-2fca4ad29e38")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Abusing CSharp/Code/ExceptionFilters/ReflectionThrowingFilter.cs b/Abusing CSharp/Code/ExceptionFilters/ReflectionThrowingFilter.cs deleted file mode 100644 index 49165219..00000000 --- a/Abusing CSharp/Code/ExceptionFilters/ReflectionThrowingFilter.cs +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace ExceptionFilters -{ - class ReflectionThrowingFilter - { - static void Main() - { - Foo(); - } - - static void Foo() - { - try - { - Bar(); - } - catch (Exception e) when (e.Message[10] == '!') - { - } - } - - static void Bar() - { - throw new Exception("Bang!"); - } - } -} diff --git a/Abusing CSharp/Code/ExceptionFilters/packages.config b/Abusing CSharp/Code/ExceptionFilters/packages.config deleted file mode 100644 index 2e6072f0..00000000 --- a/Abusing CSharp/Code/ExceptionFilters/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/FunWithAwaiters/App.config b/Abusing CSharp/Code/FunWithAwaiters/App.config deleted file mode 100644 index 8e156463..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/App.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/FunWithAwaiters/AsyncStateMachineExtensions.cs b/Abusing CSharp/Code/FunWithAwaiters/AsyncStateMachineExtensions.cs deleted file mode 100644 index bce834c2..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/AsyncStateMachineExtensions.cs +++ /dev/null @@ -1,85 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.IO; -using System.Reflection; -using System.Runtime.CompilerServices; - -namespace FunWithAwaiters -{ - public static class AsyncStateMachineExtensions - { - public static int GetState(this IAsyncStateMachine stateMachine) - { - return (int) stateMachine.GetStateField().GetValue(stateMachine); - } - - public static void SetState(this IAsyncStateMachine stateMachine, int state) - { - stateMachine.GetStateField().SetValue(stateMachine, state); - } - - public static Action GetActionForState(this IAsyncStateMachine stateMachine, int state) - { - return () => - { - stateMachine.SetState(state); - stateMachine.MoveNext(); - }; - } - - private static FieldInfo GetStateField(this IAsyncStateMachine stateMachine) - { - return stateMachine.GetType().GetField("<>1__state"); - } - - public static void SaveTo(this IAsyncStateMachine stateMachine, string file) - { - using (var stream = File.Create(file)) - { - SerializationUtil.SerializeFields(stateMachine, stream, ShouldSerialize); - } - } - - public static void LoadFrom(this IAsyncStateMachine target, string file) - { - using (var stream = File.OpenRead(file)) - { - SerializationUtil.DeserializeFields(target, stream); - } - } - - public static void SaveTo(this IAsyncStateMachine stateMachine, Stream stream) - { - SerializationUtil.SerializeFields(stateMachine, stream, ShouldSerialize); - } - - public static void LoadFrom(this IAsyncStateMachine target, Stream stream) - { - SerializationUtil.DeserializeFields(target, stream); - } - - // This is all down to experimentation... - private static bool ShouldSerialize(FieldInfo field) - { - if (typeof(ITransient).IsAssignableFrom(field.FieldType)) - { - return false; - } - - string name = field.Name; - // Parameters end up just with the same name as the original. - // Local variables end up with the identifier in the angle brackets, e.g. - if (!name.StartsWith("<>")) - { - return true; - } - - // <>1__state will hold the state, which we do want to serialize. - // <>7__wrap* holds things like extra variables for iterators and using statements. - // <>t__builder holds the AsyncTaskMethodBuilder (or whatever) - we don't want that - // <>u__%awaiter* holds awaiters - // (More TBD?) - return char.IsDigit(name[2]); - } - } -} diff --git a/Abusing CSharp/Code/FunWithAwaiters/AsyncUtil.cs b/Abusing CSharp/Code/FunWithAwaiters/AsyncUtil.cs deleted file mode 100644 index 31e4fb5d..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/AsyncUtil.cs +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Reflection; -using System.Runtime.CompilerServices; - -namespace FunWithAwaiters -{ - public static class AsyncUtil - { - public static IAsyncStateMachine GetStateMachine(Action continuation) - { - var target = continuation.Target; - var field = target.GetType().GetField("m_stateMachine", BindingFlags.NonPublic | BindingFlags.Instance); - return (IAsyncStateMachine) field.GetValue(target); - } - } -} diff --git a/Abusing CSharp/Code/FunWithAwaiters/AwaiterExtensions.cs b/Abusing CSharp/Code/FunWithAwaiters/AwaiterExtensions.cs deleted file mode 100644 index 4a4d09a0..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/AwaiterExtensions.cs +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -namespace FunWithAwaiters -{ - public static class AwaiterExtensions - { - private class Awaitable : IAwaitable - { - private readonly IAwaiter awaiter; - - internal Awaitable(IAwaiter awaiter) - { - this.awaiter = awaiter; - } - - public IAwaiter GetAwaiter() - { - return awaiter; - } - } - - public static IAwaitable NewAwaitable(this IAwaiter awaiter) - { - return new Awaitable(awaiter); - } - - private class Awaitable : IAwaitable - { - private readonly IAwaiter awaiter; - - internal Awaitable(IAwaiter awaiter) - { - this.awaiter = awaiter; - } - - public IAwaiter GetAwaiter() - { - return awaiter; - } - } - - public static IAwaitable NewAwaitable(this IAwaiter awaiter) - { - return new Awaitable(awaiter); - } - } -} diff --git a/Abusing CSharp/Code/FunWithAwaiters/Executioner.cs b/Abusing CSharp/Code/FunWithAwaiters/Executioner.cs deleted file mode 100644 index 096c1104..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/Executioner.cs +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -using System; -using System.Runtime.CompilerServices; - -namespace FunWithAwaiters -{ - /// - /// Simple class to control execution: it just keeps executing actions until it's completed. - /// Awaitables can be created which will always make the generated code yield and pass the state - /// machine to a handler. - /// - public class Executioner : ITransient - { - private readonly Action entryPoint; - private Action nextAction; - - public Executioner(Action entryPoint) - { - this.entryPoint = entryPoint; - } - - public void Start() - { - Execute(entryPoint); - } - - protected void Execute(Action action) - { - nextAction = () => action(this); - while (nextAction != null) - { - Action next = nextAction; - nextAction = null; - next(); - } - } - - public IAwaitable CreateAwaitable(Action stateMachineHandler) - { - var awaiter = new YieldingAwaiter(continuation => - { - var machine = AsyncUtil.GetStateMachine(continuation); - stateMachineHandler(machine); - nextAction = continuation; - }); - return awaiter.NewAwaitable(); - } - - public IAwaitable CreateAwaitable(Func stateMachineHandler) - { - var awaiter = new YieldingAwaiter(continuation => - { - var machine = AsyncUtil.GetStateMachine(continuation); - nextAction = stateMachineHandler(machine); - }); - return awaiter.NewAwaitable(); - } - - public YieldingAwaitable CreateYieldingAwaitable(Action stateMachineHandler, T result) - { - var awaiter = new YieldingAwaiter(continuation => - { - var machine = AsyncUtil.GetStateMachine(continuation); - stateMachineHandler(machine); - nextAction = continuation; - }, result); - return new YieldingAwaitable(awaiter); - } - - public YieldingAwaitable CreateYieldingAwaitable(Func stateMachineHandler, T value) - { - var awaiter = new YieldingAwaiter(continuation => - { - var machine = AsyncUtil.GetStateMachine(continuation); - nextAction = stateMachineHandler(machine); - }, value); - return new YieldingAwaitable(awaiter); - } - } -} diff --git a/Abusing CSharp/Code/FunWithAwaiters/FunWithAwaiters.csproj b/Abusing CSharp/Code/FunWithAwaiters/FunWithAwaiters.csproj deleted file mode 100644 index ab9f1deb..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/FunWithAwaiters.csproj +++ /dev/null @@ -1,80 +0,0 @@ - - - - - Debug - AnyCPU - {3C95E21E-8080-4007-BD07-62ACDB4F02FE} - Exe - Properties - FunWithAwaiters - FunWithAwaiters - v4.5 - 512 - ..\ - true - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - FunWithAwaiters.Program - - - - ..\packages\JonSkeet.MiscUtil.0.1\lib\net35-Client\MiscUtil.dll - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/FunWithAwaiters/GotoAsync.cs b/Abusing CSharp/Code/FunWithAwaiters/GotoAsync.cs deleted file mode 100644 index 21050483..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/GotoAsync.cs +++ /dev/null @@ -1,27 +0,0 @@ - // Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - using System; - using System.ComponentModel; - - namespace FunWithAwaiters - { - [Description("Goto (async style)")] - class GotoAsync - { - private static void Main() - { - var executioner = new GotoExecutioner(Entry); - executioner.Start(); - } - - private static async void Entry(LineAction _, GotoAction @goto) - { -await _(); Console.WriteLine("Hello"); -await _(); Console.Write("Keep going? "); -await _(); string line = Console.ReadLine(); -await _(); if (line == "y") { -await _(); await @goto(19); -await _(); } -await _(); Console.WriteLine("Finished!"); - } - } - } diff --git a/Abusing CSharp/Code/FunWithAwaiters/GotoExecutioner.cs b/Abusing CSharp/Code/FunWithAwaiters/GotoExecutioner.cs deleted file mode 100644 index 0bff3d5f..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/GotoExecutioner.cs +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; -using System.Runtime.CompilerServices; - -namespace FunWithAwaiters -{ - public delegate IAwaitable LineAction([CallerLineNumber] int line = 0); - public delegate IAwaitable GotoAction(int line); - - public class GotoExecutioner : Executioner - { - private readonly Dictionary lineToStateMap = new Dictionary(); - - public GotoExecutioner(Action entryPoint) : base(exec => entryPoint(((GotoExecutioner)exec).Line, ((GotoExecutioner)exec).Goto)) - { - } - - public IAwaitable Line([CallerLineNumber] int line = 0) - { - return CreateAwaitable(stateMachine => lineToStateMap[line] = stateMachine.GetState()); - } - - public IAwaitable Goto(int line) - { - return CreateAwaitable(stateMachine => stateMachine.GetActionForState(lineToStateMap[line])); - } - } -} diff --git a/Abusing CSharp/Code/FunWithAwaiters/GotoLabels.cs b/Abusing CSharp/Code/FunWithAwaiters/GotoLabels.cs deleted file mode 100644 index d2ac1952..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/GotoLabels.cs +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.ComponentModel; - -namespace FunWithAwaiters -{ - [Description("Goto (with labels)")] - class GotoLabels - { - static void Main() - { - Console.WriteLine("Hello"); - loop: - Console.Write("Keep going? "); - string line = Console.ReadLine(); - if (line == "y") - { - goto loop; - } - Console.WriteLine("Finished!"); - } - } -} diff --git a/Abusing CSharp/Code/FunWithAwaiters/GotoMethodAsync.cs b/Abusing CSharp/Code/FunWithAwaiters/GotoMethodAsync.cs deleted file mode 100644 index 93a0c8ef..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/GotoMethodAsync.cs +++ /dev/null @@ -1,41 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace FunWithAwaiters -{ - class GotoMethodAsync - { - static void Main() - { - var executioner = new GotoMethodExecutioner(Entry, Entry, Foo, Bar); - Console.WriteLine("Starting"); - executioner.Start(); - } - - static async void Entry(MethodLineAction _, MethodGotoAction @goto) - { -if (!await _()) await @goto("Foo:2"); - } - - static async void Foo(MethodLineAction _, MethodGotoAction @goto) - { -#line 1 -if (!await _()) Console.WriteLine("Foo1"); -if (!await _()) Console.WriteLine("Foo2"); -if (!await _()) await @goto("Bar:1"); -if (!await _()) Console.WriteLine("Foo4"); - } - - static async void Bar(MethodLineAction _, MethodGotoAction @goto) - { -#line 1 -if (!await _()) Console.WriteLine("Bar1"); -if (!await _()) Console.WriteLine("Bar2"); -if (!await _()) await @goto("Foo:4"); -if (!await _()) Console.WriteLine("Bar3"); - } - } -} diff --git a/Abusing CSharp/Code/FunWithAwaiters/GotoMethodExecutioner.cs b/Abusing CSharp/Code/FunWithAwaiters/GotoMethodExecutioner.cs deleted file mode 100644 index 1ee3bf99..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/GotoMethodExecutioner.cs +++ /dev/null @@ -1,40 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Runtime.CompilerServices; - -namespace FunWithAwaiters -{ - public delegate YieldingAwaitable MethodLineAction([CallerMemberName] string method = null, [CallerLineNumber] int line = 0); - public delegate YieldingAwaitable MethodGotoAction(string label); - - class GotoMethodExecutioner : Executioner - { - private readonly Dictionary labelToActionMap = new Dictionary(); - - private readonly bool recording = true; // Urrrgh! - - public GotoMethodExecutioner(Action entryPoint, - params Action[] actions) - : base(exec => entryPoint(((GotoMethodExecutioner) exec).Line, ((GotoMethodExecutioner) exec).Goto)) - { - foreach (var action in actions) - { - Execute(_ => action(Line, Goto)); - } - recording = false; - } - - public YieldingAwaitable Line([CallerMemberName] string method = null, [CallerLineNumber] int line = 0) - { - string label = method + ":" + line; - return CreateYieldingAwaitable(stateMachine => - labelToActionMap[label] = stateMachine.GetActionForState(stateMachine.GetState()), - recording); - } - - public YieldingAwaitable Goto(string label) - { - return CreateYieldingAwaitable(stateMachine => labelToActionMap[label], false); - } - } -} diff --git a/Abusing CSharp/Code/FunWithAwaiters/IAwaitable.cs b/Abusing CSharp/Code/FunWithAwaiters/IAwaitable.cs deleted file mode 100644 index cba5e8c3..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/IAwaitable.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -namespace FunWithAwaiters -{ - public interface IAwaitable - { - IAwaiter GetAwaiter(); - } - - public interface IAwaitable - { - IAwaiter GetAwaiter(); - } -} diff --git a/Abusing CSharp/Code/FunWithAwaiters/IAwaiter.cs b/Abusing CSharp/Code/FunWithAwaiters/IAwaiter.cs deleted file mode 100644 index 194809e4..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/IAwaiter.cs +++ /dev/null @@ -1,18 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -using System.Runtime.CompilerServices; - -namespace FunWithAwaiters -{ - public interface IAwaiter : INotifyCompletion - { - bool IsCompleted { get; } - void GetResult(); - } - - public interface IAwaiter : INotifyCompletion - { - bool IsCompleted { get; } - T GetResult(); - } -} diff --git a/Abusing CSharp/Code/FunWithAwaiters/ITransient.cs b/Abusing CSharp/Code/FunWithAwaiters/ITransient.cs deleted file mode 100644 index 4dce48fb..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/ITransient.cs +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -namespace FunWithAwaiters -{ - interface ITransient - { - } -} diff --git a/Abusing CSharp/Code/FunWithAwaiters/Program.cs b/Abusing CSharp/Code/FunWithAwaiters/Program.cs deleted file mode 100644 index d49649b3..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/Program.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -using MiscUtil; - -namespace FunWithAwaiters -{ - class Program - { - static void Main(string[] args) - { - ApplicationChooser.Run(typeof(Program), args); - } - } -} diff --git a/Abusing CSharp/Code/FunWithAwaiters/Properties/AssemblyInfo.cs b/Abusing CSharp/Code/FunWithAwaiters/Properties/AssemblyInfo.cs deleted file mode 100644 index b71638ad..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("CompilerAnguish")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("CompilerAnguish")] -[assembly: AssemblyCopyright("Copyright © 2012")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("729e427f-fdbb-49ae-9beb-38a5e87942be")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Abusing CSharp/Code/FunWithAwaiters/Retry.cs b/Abusing CSharp/Code/FunWithAwaiters/Retry.cs deleted file mode 100644 index 20c04d44..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/Retry.cs +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -using System; -using System.Threading.Tasks; - -namespace FunWithAwaiters -{ - class Retry - { - static readonly Random rng = new Random(); - - static void Main() - { - RetryingExecutioner executioner = new RetryingExecutioner(ShowRetries); - executioner.Start(); - } - - static async Task ShowRetries(RetryingExecutioner executioner) - { - await executioner.Setup(); - for (int i = 0; i < 10; i++) - { - Console.WriteLine("Step {0}: trying to roll a 6...", i); - await executioner.Retry(20); - MustRoll6(); - } - Console.WriteLine("Phew!"); - } - - static void MustRoll6() - { - int roll = rng.Next(1, 7); - Console.WriteLine("Rolled {0}", roll); - if (roll != 6) - { - throw new Exception("You didn't roll a 6!"); - } - } - } -} diff --git a/Abusing CSharp/Code/FunWithAwaiters/RetryingExecutioner.cs b/Abusing CSharp/Code/FunWithAwaiters/RetryingExecutioner.cs deleted file mode 100644 index 3144b837..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/RetryingExecutioner.cs +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -using System; -using System.IO; -using System.Runtime.CompilerServices; -using System.Threading.Tasks; - -namespace FunWithAwaiters -{ - public class RetryingExecutioner : ITransient - { - private Action machineContinuation; - private IAsyncStateMachine stateMachine; - - private byte[] savedState; - private int retryCount; - private int retryMax; - private readonly Func entryPoint; - - public RetryingExecutioner(Func entryPoint) - { - this.entryPoint = entryPoint; - } - - public void Start() - { - Task task = entryPoint(this); - while (true) - { - if (task.Status == TaskStatus.RanToCompletion || task.IsCanceled) - { - return; - } - if (task.IsFaulted) - { - retryCount++; - if (savedState == null || machineContinuation == null || stateMachine == null || retryCount == retryMax) - { - Console.WriteLine(" Retry limit exceeded. Rethrowing..."); - throw task.Exception.InnerExceptions[0]; - } - //Console.WriteLine("Handled exception: {0}", task.Exception.InnerExceptions[0].Message); - Console.WriteLine(" Retrying: {0} out of {1}", retryCount, retryMax); - task = entryPoint(this); - } - else - { - machineContinuation(); - } - } - } - - public IAwaitable Setup() - { - var awaiter = new YieldingAwaiter(continuation => - { - stateMachine = AsyncUtil.GetStateMachine(continuation); - machineContinuation = continuation; - if (savedState == null) - { - SaveState(stateMachine); - } - else - { - stateMachine.LoadFrom(new MemoryStream(savedState)); - } - }); - return awaiter.NewAwaitable(); - } - - public IAwaitable Retry(int times) - { - var awaiter = new YieldingAwaiter(continuation => - { - retryCount = 0; - retryMax = times; - SaveState(stateMachine); - }); - return awaiter.NewAwaitable(); - } - - private void SaveState(IAsyncStateMachine stateMachine) - { - using (var stream = new MemoryStream()) - { - stateMachine.SaveTo(stream); - savedState = stream.ToArray(); - } - } - } -} diff --git a/Abusing CSharp/Code/FunWithAwaiters/SaveState.cs b/Abusing CSharp/Code/FunWithAwaiters/SaveState.cs deleted file mode 100644 index c6ef24e3..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/SaveState.cs +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -using System; -using System.IO; -using System.Runtime.CompilerServices; - -namespace FunWithAwaiters -{ - class SaveState - { - static void Main(string[] args) - { - var executioner = new Executioner(SaveResumeDemo); - executioner.Start(); - } - - static async void SaveResumeDemo(Executioner executioner) - { - if (File.Exists("state.dat")) - { - await executioner.CreateAwaitable(machine => machine.LoadFrom("state.dat")); - Console.WriteLine("We'll never get here"); - } - Console.WriteLine("Looks like this is the first time through"); - string startTime = DateTime.Now.ToString(); - for (int i = 0; i < 10; i++) - { - await executioner.CreateAwaitable(machine => machine.SaveTo("state.dat")); - Console.WriteLine("Started at: {0}", startTime); - Console.WriteLine("i = {0}. Continue? ", i); - string text = Console.ReadLine(); - if (text == "n") - { - return; - } - } - Console.WriteLine("Completed!"); - File.Delete("state.dat"); - } - } - - internal class SimpleAwaiter : IAwaiter - { - private IAsyncStateMachine machine; - - public bool IsCompleted - { - get { return false; } - } - - public IAsyncStateMachine GetResult() - { - return machine; - } - - public void OnCompleted(Action continuation) - { - machine = AsyncUtil.GetStateMachine(continuation); - continuation(); - } - } -} diff --git a/Abusing CSharp/Code/FunWithAwaiters/SerializationUtil.cs b/Abusing CSharp/Code/FunWithAwaiters/SerializationUtil.cs deleted file mode 100644 index 9ac4c443..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/SerializationUtil.cs +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -using System; -using System.IO; -using System.Linq; -using System.Reflection; -using System.Runtime.Serialization.Formatters.Binary; - -namespace FunWithAwaiters -{ - public static class SerializationUtil - { - public static void SerializeFields(object source, Stream stream, Func predicate) - { - var formatter = new BinaryFormatter(); - foreach (var field in source.GetType() - .GetFields(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic) - .Where(predicate)) - { - object value = field.GetValue(source) ?? NullToken.Instance; - formatter.Serialize(stream, field.Name); - formatter.Serialize(stream, value); - } - } - - public static void DeserializeFields(object target, Stream stream) - { - var formatter = new BinaryFormatter(); - long length = stream.Length; - while (stream.Position != length) - { - string name = (string) formatter.Deserialize(stream); - object value = formatter.Deserialize(stream); - if (value is NullToken) - { - value = null; - } - target.GetType() - .GetField(name, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic) - .SetValue(target, value); - } - } - - [Serializable] - private class NullToken - { - public static readonly NullToken Instance = new NullToken(); - - // No need to actually make this a singleton... - } - } -} diff --git a/Abusing CSharp/Code/FunWithAwaiters/YieldingAwaiter.cs b/Abusing CSharp/Code/FunWithAwaiters/YieldingAwaiter.cs deleted file mode 100644 index a353d23a..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/YieldingAwaiter.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -using System; - -namespace FunWithAwaiters -{ - public struct YieldingAwaiter : IAwaiter - { - private readonly Action onCompletedHandler; - - public YieldingAwaiter(Action onCompletedHandler) - { - this.onCompletedHandler = onCompletedHandler; - } - - public bool IsCompleted { get { return false; } } - - public void GetResult() - { - } - - public void OnCompleted(Action continuation) - { - onCompletedHandler(continuation); - } - } - - public class YieldingAwaitable - { - private readonly YieldingAwaiter awaiter; - - internal YieldingAwaitable(YieldingAwaiter awaiter) - { - this.awaiter = awaiter; - } - - public YieldingAwaiter GetAwaiter() - { - return awaiter; - } - } - - public struct YieldingAwaiter : IAwaiter - { - private readonly Action onCompletedHandler; - private readonly T result; - - public YieldingAwaiter(Action onCompletedHandler, T result) - { - this.onCompletedHandler = onCompletedHandler; - this.result = result; - } - - public bool IsCompleted { get { return false; } } - - public T GetResult() - { - return result; - } - - public void OnCompleted(Action continuation) - { - onCompletedHandler(continuation); - } - } -} diff --git a/Abusing CSharp/Code/FunWithAwaiters/goto.txt b/Abusing CSharp/Code/FunWithAwaiters/goto.txt deleted file mode 100644 index bcbdb051..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/goto.txt +++ /dev/null @@ -1,4 +0,0 @@ -10 PRINT "Hello" -20 INPUT "Keep going"; LINE -30 IF LINE = "y" THEN GOTO 20 -40 PRINT "Finished!" diff --git a/Abusing CSharp/Code/FunWithAwaiters/packages.config b/Abusing CSharp/Code/FunWithAwaiters/packages.config deleted file mode 100644 index b15b2ca1..00000000 --- a/Abusing CSharp/Code/FunWithAwaiters/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/LinqToOperators/App.config b/Abusing CSharp/Code/LinqToOperators/App.config deleted file mode 100644 index 8e156463..00000000 --- a/Abusing CSharp/Code/LinqToOperators/App.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/LinqToOperators/BasicDemo.cs b/Abusing CSharp/Code/LinqToOperators/BasicDemo.cs deleted file mode 100644 index c1d24cbc..00000000 --- a/Abusing CSharp/Code/LinqToOperators/BasicDemo.cs +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace LinqToOperators -{ - class BasicDemo - { - static void Main(string[] args) - { - var funky = new[] { "hello", "world", "how", "are", "you" }; - var query = funky.Evil() - "world" + "today" - & (x => x.Length == 5) - | (x => x.ToUpper()); - - Console.WriteLine(query * 3); - - var xor1 = new[] { "foo", "bar", "baz" }.Evil(); - var xor2 = new[] { "qux", "bar" }.Evil(); - Console.WriteLine(xor1 ^ xor2); - } - } -} diff --git a/Abusing CSharp/Code/LinqToOperators/Comparisons.cs b/Abusing CSharp/Code/LinqToOperators/Comparisons.cs deleted file mode 100644 index 69809441..00000000 --- a/Abusing CSharp/Code/LinqToOperators/Comparisons.cs +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections; - -namespace LinqToOperators -{ - class Comparisons - { - static void Main() - { - Compare(new[] { 1, 4, 2, 6, 3 }, new[] { 1, 4, 5 }); - Compare(new[] { "hello", "there", "world" }, new[] { "hello", "there" }); - Compare(new[] { 6, 3, 4 }, new[] { 6, 3, 4 }); - } - - static void Compare(IEnumerable lhs, IEnumerable rhs) - { - var evilLeft = lhs.Evil(); - Console.WriteLine("Left: {0}", evilLeft); - Console.WriteLine("Right: {0}", rhs.Evil()); - Console.WriteLine("== {0}", evilLeft == rhs); - Console.WriteLine("!= {0}", evilLeft != rhs); - Console.WriteLine("> {0}", evilLeft > rhs); - Console.WriteLine(">= {0}", evilLeft >= rhs); - Console.WriteLine("< {0}", evilLeft < rhs); - Console.WriteLine("<= {0}", evilLeft <= rhs); - Console.WriteLine(); - } - } -} diff --git a/Abusing CSharp/Code/LinqToOperators/CrossMultiply.cs b/Abusing CSharp/Code/LinqToOperators/CrossMultiply.cs deleted file mode 100644 index f3b9e5c3..00000000 --- a/Abusing CSharp/Code/LinqToOperators/CrossMultiply.cs +++ /dev/null @@ -1,16 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace LinqToOperators -{ - class CrossMultiply - { - static void Main() - { - var input1 = new[] {"a", "b", "c"}.Evil(); - var input2 = new[] {1, 2, 3}; - - Console.WriteLine(input1 * input2); - } - } -} diff --git a/Abusing CSharp/Code/LinqToOperators/DarkEnumerable.cs b/Abusing CSharp/Code/LinqToOperators/DarkEnumerable.cs deleted file mode 100644 index 56c2697f..00000000 --- a/Abusing CSharp/Code/LinqToOperators/DarkEnumerable.cs +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System.Collections.Generic; - -namespace LinqToOperators -{ - public sealed class DarkEnumerable - { - private readonly IEnumerable source; - - internal DarkEnumerable(IEnumerable source) - { - this.source = source; - } - - internal IEnumerable Source { get { return source; } } - - public static OperatorEnumerable operator -(DarkEnumerable operand) - { - return new OperatorEnumerable(operand.source); - } - } -} diff --git a/Abusing CSharp/Code/LinqToOperators/Division.cs b/Abusing CSharp/Code/LinqToOperators/Division.cs deleted file mode 100644 index 2b177180..00000000 --- a/Abusing CSharp/Code/LinqToOperators/Division.cs +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Linq; - -namespace LinqToOperators -{ - class Division - { - static void Main() - { - var employees = new[] - { - new { Name = "Dave", Department = "Accounting" }, - new { Name = "Bill", Department = "Sales" }, - new { Name = "Holly", Department = "Finance" }, - new { Name = "Fred", Department = "HR" }, - new { Name = "Diane", Department = "Engineering" }, - new { Name = "Betty", Department = "Sales" }, - new { Name = "Edward", Department = "Finance" }, - new { Name = "Tom", Department = "Engineering" } - }.Evil(); - - Console.WriteLine("Division by a function..."); - dynamic byDepartment = employees / (x => x.Department); - foreach (IGrouping result in byDepartment) - { - Console.WriteLine("{0}: {1}", result.Key, string.Join(", ", result.Select(x => x.Name))); - } - - Console.WriteLine(); - Console.WriteLine("Division by an integer..."); - var source = "To be, or not to be: that is the question: Whether 'tis nobler in the mind to suffer The slings and arrows of outrageous fortune, Or to take arms against a sea of troubles, And by opposing end them?".Split(' ').Evil(); - foreach (var result in source / 5) - { - Console.WriteLine(result); - } - Console.WriteLine(); - Console.WriteLine("source % 5: {0}", source % 5); - } - } -} diff --git a/Abusing CSharp/Code/LinqToOperators/Extensions.cs b/Abusing CSharp/Code/LinqToOperators/Extensions.cs deleted file mode 100644 index 17a6385c..00000000 --- a/Abusing CSharp/Code/LinqToOperators/Extensions.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System.Collections; - -namespace LinqToOperators -{ - public static class Extensions - { - public static OperatorEnumerable Evil(this IEnumerable source) - { - return new OperatorEnumerable(source); - } - } -} diff --git a/Abusing CSharp/Code/LinqToOperators/IncrementDecrement.cs b/Abusing CSharp/Code/LinqToOperators/IncrementDecrement.cs deleted file mode 100644 index 5fbddde4..00000000 --- a/Abusing CSharp/Code/LinqToOperators/IncrementDecrement.cs +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace LinqToOperators -{ - class IncrementDecrement - { - static void Main() - { - var source = new[] { "Arithmetic", "-", "+", "*", "/" }.Evil(); - - Console.WriteLine(source); - Console.WriteLine(++source); - Console.WriteLine(--source); - } - } -} diff --git a/Abusing CSharp/Code/LinqToOperators/Inverse.cs b/Abusing CSharp/Code/LinqToOperators/Inverse.cs deleted file mode 100644 index 465eeef1..00000000 --- a/Abusing CSharp/Code/LinqToOperators/Inverse.cs +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Linq; - -namespace LinqToOperators -{ - class Inverse - { - static void Main() - { - var sequence = new[] { 3, 1, 4, 1, 5, 9, 2 }.Evil(); - var inverse = !sequence; - var range = Enumerable.Range(0, 10).Evil(); - Console.WriteLine(range + inverse); - } - } -} diff --git a/Abusing CSharp/Code/LinqToOperators/LinqToOperators.csproj b/Abusing CSharp/Code/LinqToOperators/LinqToOperators.csproj deleted file mode 100644 index ca0c309f..00000000 --- a/Abusing CSharp/Code/LinqToOperators/LinqToOperators.csproj +++ /dev/null @@ -1,74 +0,0 @@ - - - - - Debug - AnyCPU - {3B6E7F7F-852F-4686-AFCC-1801E1AA614B} - Exe - Properties - LinqToOperators - LinqToOperators - v4.5 - 512 - ..\ - true - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - LinqToOperators.Program - - - - ..\packages\JonSkeet.MiscUtil.0.1\lib\net35-Client\MiscUtil.dll - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/LinqToOperators/OperatorEnumerable.cs b/Abusing CSharp/Code/LinqToOperators/OperatorEnumerable.cs deleted file mode 100644 index 2531eb4a..00000000 --- a/Abusing CSharp/Code/LinqToOperators/OperatorEnumerable.cs +++ /dev/null @@ -1,339 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections; -using System.Collections.Generic; -using System.Linq; - -namespace LinqToOperators -{ - public sealed class OperatorEnumerable : IEnumerable - { - internal enum UnaryMinusBehaviour - { - Reverse, - ElementwiseNegation, - Pop - } - - private UnaryMinusBehaviour unaryMinusBehaviour; - - private IEnumerable source; - - private OperatorEnumerable(IEnumerable source, UnaryMinusBehaviour unaryMinusBehaviour) - { - this.source = source; - this.unaryMinusBehaviour = unaryMinusBehaviour; - } - - internal OperatorEnumerable(IEnumerable source) : this(source, UnaryMinusBehaviour.Reverse) - { - } - - internal OperatorEnumerable(IEnumerable source) : this(source.Cast()) - { - } - - public static DarkEnumerable operator !(OperatorEnumerable operand) - { - return new DarkEnumerable(operand.source); - } - - /// - /// This operator is dedicated to Eric Lippert. - /// - public static OperatorEnumerable operator +(OperatorEnumerable operand) - { - var newBehaviour = (UnaryMinusBehaviour) (((int) operand.unaryMinusBehaviour + 1) % 3); - return new OperatorEnumerable(operand.source, newBehaviour); - } - - public static OperatorEnumerable operator +(OperatorEnumerable lhs, object rhs) - { - return new OperatorEnumerable(lhs.source.Concat(new dynamic[] { rhs })); - } - - public static OperatorEnumerable operator +(OperatorEnumerable lhs, DarkEnumerable rhs) - { - return new OperatorEnumerable(lhs.source.Except(rhs.Source)); - } - - public static OperatorEnumerable operator ++(OperatorEnumerable lhs) - { - return +(+lhs); - } - - public static OperatorEnumerable operator -(OperatorEnumerable lhs, object rhs) - { - return new OperatorEnumerable(lhs.source.Except(new dynamic[] { rhs })); - } - - public static OperatorEnumerable operator --(OperatorEnumerable lhs) - { - return lhs - "-"; - } - - public static OperatorEnumerable operator *(OperatorEnumerable lhs, int rhs) - { - return new OperatorEnumerable(RepeatSequence(lhs.source, rhs)); - } - - public static OperatorEnumerable operator *(OperatorEnumerable lhs, IEnumerable rhs) - { - return new OperatorEnumerable(lhs.source.SelectMany(x => rhs.Cast(), Tuple.Create)); - } - - public static OperatorEnumerable operator /(OperatorEnumerable lhs, Func rhs) - { - return new OperatorEnumerable(lhs.source.GroupBy(rhs)); - } - - public static OperatorEnumerable operator /(OperatorEnumerable lhs, int rhs) - { - return new OperatorEnumerable(Batch(lhs, rhs)); - } - - private static IEnumerable Batch(OperatorEnumerable source, int size) - { - List currentList = new List(size); - foreach (var item in source) - { - currentList.Add(item); - if (currentList.Count == size) - { - yield return new OperatorEnumerable(currentList); - currentList = new List(size); - } - } - } - - public static OperatorEnumerable operator %(OperatorEnumerable lhs, int rhs) - { - List list = new List(rhs); - foreach (var item in lhs.source) - { - list.Add(item); - if (list.Count == rhs) - { - list.Clear(); - } - } - return new OperatorEnumerable(list); - } - - public static OperatorEnumerable operator ^(OperatorEnumerable lhs, IEnumerable rhs) - { - List left = lhs.source.ToList(); - List right = rhs.Cast().ToList(); - return new OperatorEnumerable(left.Except(right).Union(right.Except(left))); - } - - public static OperatorEnumerable operator ^(OperatorEnumerable lhs, uint rhs) - { - if (rhs == 0) - { - return Enumerable.Empty().Evil(); - } - OperatorEnumerable result = lhs; - for (int i = 1; i < rhs; i++) - { - result = result * lhs; - } - return result | FlattenTuples; - } - - private static object FlattenTuples(object item) - { - // Avoid converting x => {x}, even if we possibly should... - if (!item.GetType().Name.StartsWith("Tuple`")) - { - return item; - } - object[] items = ExtractTupleElements(item).ToArray(); - Type openType = Type.GetType("System.Tuple`" + items.Length); - Type constructedType = openType.MakeGenericType(items.Select(x => x.GetType()).ToArray()); - return constructedType.GetConstructors()[0].Invoke(items); - } - - private static IEnumerable ExtractTupleElements(object item) - { - Type type = item.GetType(); - if (!type.Name.StartsWith("Tuple`")) - { - return new[] { item }; - } - int arity = int.Parse(type.Name.Substring(6)); - // First - return Enumerable.Range(1, arity).Select(index => type.GetProperty("Item" + index) - .GetValue(item)) - .SelectMany(ExtractTupleElements); - } - - public static OperatorEnumerable operator ~(OperatorEnumerable operand) - { - return new OperatorEnumerable(Shuffle(operand.source)); - } - - public static bool operator true(OperatorEnumerable operand) - { - return operand.source.Any(); - } - - public static bool operator false(OperatorEnumerable operand) - { - return !operand.source.Any(); - } - - public static OperatorEnumerable operator <<(OperatorEnumerable lhs, int rhs) - { - return new OperatorEnumerable(lhs.source.Skip(rhs).Concat(lhs.source.Take(rhs))); - } - - public static OperatorEnumerable operator >>(OperatorEnumerable lhs, int rhs) - { - int count = lhs.source.Count(); - return lhs << (count - rhs); - } - - public static bool operator ==(OperatorEnumerable lhs, IEnumerable rhs) - { - return lhs.source.SequenceEqual(rhs.Cast()); - } - - public static bool operator !=(OperatorEnumerable lhs, IEnumerable rhs) - { - return !(lhs == rhs); - } - - public static bool operator >(OperatorEnumerable lhs, IEnumerable rhs) - { - return Compare(lhs, rhs) > 0; - } - - public static bool operator <(OperatorEnumerable lhs, IEnumerable rhs) - { - return Compare(lhs, rhs) < 0; - } - - public static bool operator >=(OperatorEnumerable lhs, IEnumerable rhs) - { - return Compare(lhs, rhs) >= 0; - } - - public static bool operator <=(OperatorEnumerable lhs, IEnumerable rhs) - { - return Compare(lhs, rhs) <= 0; - } - - private static int Compare(OperatorEnumerable lhs, IEnumerable rhs) - { - using (var leftIterator = lhs.source.GetEnumerator()) - { - using (var rightIterator = rhs.Cast().GetEnumerator()) - { - while (true) - { - bool leftHasNext = leftIterator.MoveNext(); - bool rightHasNext = rightIterator.MoveNext(); - if (!leftHasNext && !rightHasNext) - { - return 0; - } - if (!rightHasNext) - { - return 1; - } - if (!leftHasNext) - { - return -1; - } - int comparison = Comparer.Default.Compare(leftIterator.Current, rightIterator.Current); - if (comparison != 0) - { - return comparison; - } - } - } - } - } - - public override bool Equals(object obj) - { - return this == obj as IEnumerable; - } - - public override int GetHashCode() - { - return 0; - } - - public static dynamic operator -(OperatorEnumerable operand) - { - switch (operand.unaryMinusBehaviour) - { - case UnaryMinusBehaviour.Reverse: - return new OperatorEnumerable(operand.source.Reverse()); - case UnaryMinusBehaviour.ElementwiseNegation: - return new OperatorEnumerable(operand.source.Cast().Select(x => -x)); - case UnaryMinusBehaviour.Pop: - { - var ret = operand.source.First(); - operand.source = operand.source.Skip(1); - return ret; - } - } - throw new InvalidOperationException(); - } - - private static IEnumerable RepeatSequence(IEnumerable source, int times) - { - for (int i = 0; i < times; i++) - { - foreach (var item in source) - { - yield return item; - } - } - } - - private static IEnumerable Shuffle(IEnumerable source) - { - // Never do this! - Random rng = new Random(); - var array = source.ToArray(); - // Note i > 0 to avoid final pointless iteration - for (int i = array.Length - 1; i > 0; i--) - { - // Swap element "i" with a random earlier element it (or itself) - int swapIndex = rng.Next(i + 1); - object tmp = array[i]; - array[i] = array[swapIndex]; - array[swapIndex] = tmp; - } - // Lazily yield (avoiding aliasing issues etc) - foreach (object element in array) - { - yield return element; - } - } - - public static OperatorEnumerable operator &(OperatorEnumerable lhs, Func rhs) - { - return new OperatorEnumerable(lhs.source.Where(rhs)); - } - - public static OperatorEnumerable operator |(OperatorEnumerable lhs, Func rhs) - { - return new OperatorEnumerable(lhs.source.Select(rhs)); - } - - public IEnumerator GetEnumerator() - { - return source.GetEnumerator(); - } - - public override string ToString() - { - return string.Join(", ", source); - } - } -} diff --git a/Abusing CSharp/Code/LinqToOperators/Power.cs b/Abusing CSharp/Code/LinqToOperators/Power.cs deleted file mode 100644 index 9fe5aa3e..00000000 --- a/Abusing CSharp/Code/LinqToOperators/Power.cs +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright 2014 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace LinqToOperators -{ - class Power - { - // As suggested by Nat Pryce at NorDevCon, 2014-02-28 - static void Main() - { - var source = new[] { "foo", "bar", "baz" }.Evil(); - - var cubed = source ^ 3; - Console.WriteLine(cubed); - } - } -} diff --git a/Abusing CSharp/Code/LinqToOperators/Program.cs b/Abusing CSharp/Code/LinqToOperators/Program.cs deleted file mode 100644 index c29da5ec..00000000 --- a/Abusing CSharp/Code/LinqToOperators/Program.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using MiscUtil; - -namespace LinqToOperators -{ - class Program - { - static void Main(string[] args) - { - ApplicationChooser.Run(typeof(Program), args); - } - } -} diff --git a/Abusing CSharp/Code/LinqToOperators/Properties/AssemblyInfo.cs b/Abusing CSharp/Code/LinqToOperators/Properties/AssemblyInfo.cs deleted file mode 100644 index 261579e8..00000000 --- a/Abusing CSharp/Code/LinqToOperators/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("LinqToOperators")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("LinqToOperators")] -[assembly: AssemblyCopyright("Copyright © 2012")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("8d301515-b9e9-47b5-9ba3-ed2057d77c13")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Abusing CSharp/Code/LinqToOperators/Rotate.cs b/Abusing CSharp/Code/LinqToOperators/Rotate.cs deleted file mode 100644 index bbc740bb..00000000 --- a/Abusing CSharp/Code/LinqToOperators/Rotate.cs +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace LinqToOperators -{ - class Rotate - { - static void Main() - { - var source = "the quick brown fox jumps over the lazy dog".Split(' ').Evil(); - - Console.WriteLine(source); - Console.WriteLine(source << 2); - Console.WriteLine(source >> 2); - } - } -} diff --git a/Abusing CSharp/Code/LinqToOperators/Shuffle.cs b/Abusing CSharp/Code/LinqToOperators/Shuffle.cs deleted file mode 100644 index 1890bbac..00000000 --- a/Abusing CSharp/Code/LinqToOperators/Shuffle.cs +++ /dev/null @@ -1,16 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace LinqToOperators -{ - class Shuffle - { - static void Main() - { - var items = new[] {"who", "knows", "what", "order", "these", "words", - "will", "come", "out", "in?" }.Evil(); - - Console.WriteLine(~items); - } - } -} diff --git a/Abusing CSharp/Code/LinqToOperators/SymmetricDifference.cs b/Abusing CSharp/Code/LinqToOperators/SymmetricDifference.cs deleted file mode 100644 index 438db52d..00000000 --- a/Abusing CSharp/Code/LinqToOperators/SymmetricDifference.cs +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace LinqToOperators -{ - class SymmetricDifference - { - static void Main() - { - var left = new[] { 1, 5, 3, 2 }.Evil(); - var right = new[] { 5, 7, 2 }; - Console.WriteLine(left ^ right); - } - } -} diff --git a/Abusing CSharp/Code/LinqToOperators/UnaryOperators.cs b/Abusing CSharp/Code/LinqToOperators/UnaryOperators.cs deleted file mode 100644 index 850e09ae..00000000 --- a/Abusing CSharp/Code/LinqToOperators/UnaryOperators.cs +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace LinqToOperators -{ - class UnaryOperators - { - static void Main() - { - var sequence = new[] { 3, 1, 4, 1, 5, 9, 2 }.Evil(); - - Console.WriteLine("Original: {0}", sequence); - Console.WriteLine("Reversed: {0}", -sequence); - Console.WriteLine("Negated: {0}", -+sequence); - Console.WriteLine("Mixture: {0}", -+-sequence); - Console.WriteLine("Pop:"); - var popping = + +sequence; - Console.WriteLine(-popping); - Console.WriteLine(-popping); - Console.WriteLine(-popping); - Console.WriteLine("After popping: {0}", popping); - - Console.WriteLine("Reversed original via cycle: {0}", -+ + +sequence); - } - } -} diff --git a/Abusing CSharp/Code/LinqToOperators/packages.config b/Abusing CSharp/Code/LinqToOperators/packages.config deleted file mode 100644 index b15b2ca1..00000000 --- a/Abusing CSharp/Code/LinqToOperators/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/NullConditional/ActiveLogger.cs b/Abusing CSharp/Code/NullConditional/ActiveLogger.cs deleted file mode 100644 index 3ab4f8c1..00000000 --- a/Abusing CSharp/Code/NullConditional/ActiveLogger.cs +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Globalization; - -namespace NullConditional -{ - class ActiveLogger - { - private static readonly CultureInfo LoggingCulture = GetLoggingCulture(); - private readonly string level; - - public ActiveLogger(string level) - { - this.level = level; - } - - public void Log(FormattableString message) - { - Console.WriteLine($"{level}: {message.ToString(LoggingCulture)}"); - } - - private static CultureInfo GetLoggingCulture() - { - var culture = (CultureInfo) CultureInfo.InvariantCulture.Clone(); - culture.DateTimeFormat.ShortDatePattern = "yyyy-MM-dd"; - culture.DateTimeFormat.LongDatePattern = "yyyy-MM-dd"; - return culture; - } - } -} diff --git a/Abusing CSharp/Code/NullConditional/App.config b/Abusing CSharp/Code/NullConditional/App.config deleted file mode 100644 index 2d2a12d8..00000000 --- a/Abusing CSharp/Code/NullConditional/App.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/Abusing CSharp/Code/NullConditional/LazyDetailedExceptions.cs b/Abusing CSharp/Code/NullConditional/LazyDetailedExceptions.cs deleted file mode 100644 index 73083f10..00000000 --- a/Abusing CSharp/Code/NullConditional/LazyDetailedExceptions.cs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace NullConditional -{ - class LazyDetailedExceptions - { - static void Main() - { - Foo(3, 5); - Foo(5, 4); - } - - static void Foo(int start, int end) - { - Preconditions.CheckArgument(start <= end, nameof(start))?.Report($"Start must be <= end; start={start}; end={end}"); - // Do useful stuff here. - } - } -} diff --git a/Abusing CSharp/Code/NullConditional/Logger.cs b/Abusing CSharp/Code/NullConditional/Logger.cs deleted file mode 100644 index 1dbcdd7c..00000000 --- a/Abusing CSharp/Code/NullConditional/Logger.cs +++ /dev/null @@ -1,11 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -namespace NullConditional -{ - class Logger - { - // TODO: Decide the log level from a configuration or whatever... - public ActiveLogger Debug { get; } = null; - public ActiveLogger Info { get; } = new ActiveLogger("INFO"); - public ActiveLogger Warn { get; } = new ActiveLogger("WARNING"); - } -} diff --git a/Abusing CSharp/Code/NullConditional/LoggingDemo.cs b/Abusing CSharp/Code/NullConditional/LoggingDemo.cs deleted file mode 100644 index ad0bf0d1..00000000 --- a/Abusing CSharp/Code/NullConditional/LoggingDemo.cs +++ /dev/null @@ -1,16 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace NullConditional -{ - class LoggingDemo - { - static void Main() - { - int x = 10; - Logger logger = new Logger(); - logger.Debug?.Log($"Debug log entry"); - logger.Info?.Log($"Info at {DateTime.UtcNow}; x={x}"); - } - } -} diff --git a/Abusing CSharp/Code/NullConditional/NullConditional.csproj b/Abusing CSharp/Code/NullConditional/NullConditional.csproj deleted file mode 100644 index 2234c13b..00000000 --- a/Abusing CSharp/Code/NullConditional/NullConditional.csproj +++ /dev/null @@ -1,65 +0,0 @@ - - - - - Debug - AnyCPU - {E510ED31-7960-424E-90DB-B0C9B0C9B497} - Exe - NullConditional - NullConditional - v4.6 - 512 - true - - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - NullConditional.Program - - - - ..\packages\JonSkeet.MiscUtil.0.1\lib\net35-Client\MiscUtil.dll - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/NullConditional/Preconditions.cs b/Abusing CSharp/Code/NullConditional/Preconditions.cs deleted file mode 100644 index 4ee51219..00000000 --- a/Abusing CSharp/Code/NullConditional/Preconditions.cs +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -using System; -using static System.FormattableString; - -namespace NullConditional -{ - public static class Preconditions - { - public static T CheckNotNull(T value, string paramName) where T : class => - value ?? throw new ArgumentNullException(paramName); - - public static FailedCheck CheckArgument(bool condition, string paramName) => - condition ? null : new FailedCheck(message => new ArgumentException(message, paramName)); - - public static FailedCheck CheckState(bool condition) => - condition ? null : new FailedCheck(message => new InvalidOperationException(message)); - } - - public class FailedCheck - { - private Func factory; - - internal FailedCheck(Func factory) => this.factory = factory; - - public void Report(FormattableString message) - { - GC.SuppressFinalize(this); - throw factory(Invariant(message)); - } - - ~FailedCheck() => throw new UnreportedExceptionException(factory("(unreported)")); - } - - internal class UnreportedExceptionException : Exception - { - internal UnreportedExceptionException(Exception innerException) - : base("Failed check was not reported", innerException) - { - } - } -} diff --git a/Abusing CSharp/Code/NullConditional/Program.cs b/Abusing CSharp/Code/NullConditional/Program.cs deleted file mode 100644 index 3430e36f..00000000 --- a/Abusing CSharp/Code/NullConditional/Program.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -using MiscUtil; - -namespace NullConditional -{ - class Program - { - static void Main(string[] args) - { - ApplicationChooser.Run(typeof(Program), args); - } - } -} diff --git a/Abusing CSharp/Code/NullConditional/Properties/AssemblyInfo.cs b/Abusing CSharp/Code/NullConditional/Properties/AssemblyInfo.cs deleted file mode 100644 index 1f8c9f60..00000000 --- a/Abusing CSharp/Code/NullConditional/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("NullConditional")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("NullConditional")] -[assembly: AssemblyCopyright("Copyright © 2017")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("e510ed31-7960-424e-90db-b0c9b0c9b497")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Abusing CSharp/Code/NullConditional/packages.config b/Abusing CSharp/Code/NullConditional/packages.config deleted file mode 100644 index 15bb904c..00000000 --- a/Abusing CSharp/Code/NullConditional/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/OddsAndEnds/App.config b/Abusing CSharp/Code/OddsAndEnds/App.config deleted file mode 100644 index 8e156463..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/App.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/OddsAndEnds/ArithmeticOperator.cs b/Abusing CSharp/Code/OddsAndEnds/ArithmeticOperator.cs deleted file mode 100644 index a7aebd50..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/ArithmeticOperator.cs +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2014 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -namespace OddsAndEnds -{ - public abstract class ArithmeticOperator - { - private static readonly ArithmeticOperator add = new AddOperator(); - private static readonly ArithmeticOperator subtract = new SubtractOperator(); - private static readonly ArithmeticOperator multiply = new MultiplyOperator(); - private static readonly ArithmeticOperator divide = new DivideOperator(); - - public static ArithmeticOperator Add { get { return add; } } - public static ArithmeticOperator Subtract { get { return subtract; } } - public static ArithmeticOperator Multiply { get { return multiply; } } - public static ArithmeticOperator Divide { get { return divide; } } - - // Prevent non-nested subclasses. They can't call this constructor, - // which is the only way of creating an instance. - private ArithmeticOperator() - { } - - public abstract int Apply(int lhs, int rhs); - - private class AddOperator : ArithmeticOperator - { - public override int Apply(int lhs, int rhs) - { - return lhs + rhs; - } - } - - private class SubtractOperator : ArithmeticOperator - { - public override int Apply(int lhs, int rhs) - { - return lhs - rhs; - } - } - - private class MultiplyOperator : ArithmeticOperator - { - public override int Apply(int lhs, int rhs) - { - return lhs * rhs; - } - } - - private class DivideOperator : ArithmeticOperator - { - public override int Apply(int lhs, int rhs) - { - return lhs / rhs; - } - } - } -} diff --git a/Abusing CSharp/Code/OddsAndEnds/AsciiArtProperty.cs b/Abusing CSharp/Code/OddsAndEnds/AsciiArtProperty.cs deleted file mode 100644 index 0f2169a5..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/AsciiArtProperty.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -namespace OddsAndEnds -{ - delegate j j(MiddleBit x); - - class MiddleBit - { - public static implicit operator MiddleBit(j _) => null; - public static implicit operator j(MiddleBit _) => null; - public static MiddleBit operator <=(string lhs, MiddleBit rhs) => null; - public static MiddleBit operator <=(MiddleBit lhs, MiddleBit rhs) => null; - - // Useless, but required by compiler. Picky, picky, picky. - public static MiddleBit operator >=(MiddleBit lhs, MiddleBit rhs) => null; - public static MiddleBit operator >=(string lhs, MiddleBit rhs) => null; - } - - class AsciiArtProperty - { - j _ => __ => ___ => "Awesome code" <= ___ <= __ <= _ ; - - // Stuff here - - j __ => ___ => ____ => _____ => "Awesomer code" <= _____ <= ____ <= ___ <= __; - - } -} diff --git a/Abusing CSharp/Code/OddsAndEnds/DateDeconstruction.cs b/Abusing CSharp/Code/OddsAndEnds/DateDeconstruction.cs deleted file mode 100644 index 476065d1..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/DateDeconstruction.cs +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace OddsAndEnds -{ - using static OddsAndEnds.DateFormatting.DateTimeExtensions; - - class DateDeconstruction - { - static void Main() - { - DateTime today = DateTime.Today; - var (x, y, z) = today; - Console.WriteLine($"{x}/{y}/{z}"); - } - } -} diff --git a/Abusing CSharp/Code/OddsAndEnds/DateDeconstruction2.cs b/Abusing CSharp/Code/OddsAndEnds/DateDeconstruction2.cs deleted file mode 100644 index 92b11c81..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/DateDeconstruction2.cs +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace OddsAndEnds -{ - using static OddsAndEnds.DateFormatting.IsoDateFormat; - - class DateDeconstruction2 - { - static void Main() - { - DateTime today = DateTime.Today; - var (x, y, z) = today; - Console.WriteLine($"{x}/{y}/{z}"); - } - } -} diff --git a/Abusing CSharp/Code/OddsAndEnds/DateTimeExtensions.cs b/Abusing CSharp/Code/OddsAndEnds/DateTimeExtensions.cs deleted file mode 100644 index 71b7b872..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/DateTimeExtensions.cs +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -#define ISO_DATE_FORMAT -using System; - -namespace OddsAndEnds.DateFormatting -{ - static class DateTimeExtensions - { -#if UK_DATE_FORMAT - public static void Deconstruct(this DateTime value, out int day, out int month, out int year) -#elif US_DATE_FORMAT - public static void Deconstruct(this DateTime value, out int month, out int day, out int year) -#elif ISO_DATE_FORMAT - public static void Deconstruct(this DateTime value, out int year, out int month, out int day) -#else -#error No date format defined -#endif - { - day = value.Day; - month = value.Month; - year = value.Year; - } - } - - static class UkDateFormat - { - public static void Deconstruct(this DateTime value, out int day, out int month, out int year) - { - day = value.Day; - month = value.Month; - year = value.Year; - } - } - - static class UsDateFormat - { - public static void Deconstruct(this DateTime value, out int month, out int day, out int year) - { - day = value.Day; - month = value.Month; - year = value.Year; - } - } - - static class IsoDateFormat - { - public static void Deconstruct(this DateTime value, out int year, out int month, out int day) - { - day = value.Day; - month = value.Month; - year = value.Year; - } - } -} diff --git a/Abusing CSharp/Code/OddsAndEnds/DelegateEquality.cs b/Abusing CSharp/Code/OddsAndEnds/DelegateEquality.cs deleted file mode 100644 index 9e3cf83a..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/DelegateEquality.cs +++ /dev/null @@ -1,31 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace OddsAndEnds -{ - class DelegateEquality - { - static void Main() - { - Action a1 = Main; - Action a2 = Main; - - MulticastDelegate md1 = a1; - MulticastDelegate md2 = a2; - - Delegate d1 = a1; - Delegate d2 = a2; - - object o1 = a1; - object o2 = a2; - - Console.WriteLine(a1 == a2); - Console.WriteLine(md1 == md2); - Console.WriteLine(d1 == d2); - Console.WriteLine(o1 == o2); - } - } -} diff --git a/Abusing CSharp/Code/OddsAndEnds/EmptyEnumerables.cs b/Abusing CSharp/Code/OddsAndEnds/EmptyEnumerables.cs deleted file mode 100644 index 133a5eef..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/EmptyEnumerables.cs +++ /dev/null @@ -1,52 +0,0 @@ -// Contributed by Jeroen Bos. - -using System; -using System.Collections.Generic; - -namespace OddsAndEnds -{ - class EmptyEnumerables - { - static void Main() - { - DisplayIfEmpty(new string[0]); - DisplayIfEmpty(new string[] { "foo", "bar", "baz" }); - } - - static void DisplayIfEmpty(IEnumerable words) - { - if (IsEmpty(ref words)) - { - Console.WriteLine("The sequence was empty!"); - } - else - { - Console.WriteLine("The sequence was not empty:"); - foreach (var word in words) - { - Console.WriteLine($" {word}"); - } - } - } - - public static bool IsEmpty(ref IEnumerable sequence) - { - var enumerator = sequence.GetEnumerator(); - bool isEmpty = !enumerator.MoveNext(); - sequence = EnumerateOverTheRest(); - return isEmpty; - - IEnumerable EnumerateOverTheRest() - { - if (!isEmpty) - { - do - { - yield return enumerator.Current; - } while (enumerator.MoveNext()); - } - enumerator.Dispose(); - } - } - } -} diff --git a/Abusing CSharp/Code/OddsAndEnds/MongolianVowelSeparator.cs b/Abusing CSharp/Code/OddsAndEnds/MongolianVowelSeparator.cs deleted file mode 100644 index dcd088e1..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/MongolianVowelSeparator.cs +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace OddsAndEnds -{ - class MongolianVowelSeparator - { - static string stringx = "In initializer"; - - static void Main() - { - string᠎x = "In Main"; - ShowField(); - } - - static void ShowField() - { - Console.WriteLine("stringx=" + stringx); - } - } -} - - - -// The Mongolian Vowel Separator is U+180E -// History: -// 1996 - Unicode 2.0.0: Not present -// 1999 - 3.0.0: Cf -// 2014 - 7.0.0: Cf -// 2015 - 8.0.0: Cf -// 2016 - 9.0.0: Cf - -// C#: -// MS C# 5 spec: 3.0 -// ECMA 3rd ed: 4.0 -// ECMA 4th ed + Roslyn: wave hands... \ No newline at end of file diff --git a/Abusing CSharp/Code/OddsAndEnds/MongolianVowelSeparator.exe b/Abusing CSharp/Code/OddsAndEnds/MongolianVowelSeparator.exe deleted file mode 100644 index 07676a44..00000000 Binary files a/Abusing CSharp/Code/OddsAndEnds/MongolianVowelSeparator.exe and /dev/null differ diff --git a/Abusing CSharp/Code/OddsAndEnds/NameOfAnything.cs b/Abusing CSharp/Code/OddsAndEnds/NameOfAnything.cs deleted file mode 100644 index b5941adc..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/NameOfAnything.cs +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace OddsAndEnds -{ - class NameOfAnything - { - static void Main() - { - dynamic d = null; - Console.WriteLine(nameof(d.HelloWorld)); - Console.WriteLine(nameof(d.Mongolian᠎Vowel᠎Separator)); - Console.WriteLine(nameof(d.Mongolian᠎Vowel᠎Separator).Length); - Console.WriteLine("Mongolian᠎Vowel᠎Separator".Length); - } - } -} diff --git a/Abusing CSharp/Code/OddsAndEnds/NameofIntro.cs b/Abusing CSharp/Code/OddsAndEnds/NameofIntro.cs deleted file mode 100644 index b9b87e5d..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/NameofIntro.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace OddsAndEnds -{ - class NameofIntro - { - static void HelloWorld() - { - } - - static void Main() - { - Console.WriteLine(nameof(HelloWorld)); - string x = null; - Console.WriteLine(nameof(x.IsNullOrEmpty)); - } - } -} diff --git a/Abusing CSharp/Code/OddsAndEnds/OddsAndEnds.csproj b/Abusing CSharp/Code/OddsAndEnds/OddsAndEnds.csproj deleted file mode 100644 index 145e2317..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/OddsAndEnds.csproj +++ /dev/null @@ -1,83 +0,0 @@ - - - - - Debug - AnyCPU - {7585BEF9-0348-4CC3-AA9E-C77DF3C5DE11} - Exe - Properties - OddsAndEnds - OddsAndEnds - v4.5 - 512 - ..\ - true - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - default - - - AnyCPU - pdbonly - false - bin\Release\ - TRACE;US_DATE_FORMAT - prompt - 4 - default - - - OddsAndEnds.Program - - - - ..\packages\JonSkeet.MiscUtil.0.1\lib\net35-Client\MiscUtil.dll - - - - - ..\packages\System.ValueTuple.4.0.0-rc3-24212-01\lib\netstandard1.1\System.ValueTuple.dll - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/OddsAndEnds/PreprocessorOddities1.cs b/Abusing CSharp/Code/OddsAndEnds/PreprocessorOddities1.cs deleted file mode 100644 index 2293e8f2..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/PreprocessorOddities1.cs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright 2014 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -#define FOO -using System; - -namespace OddsAndEnds -{ - class PreprocessorOddities1 - { - static void Main() - { -#if FOO - Console.WriteLine("FOO is defined"); - /* This is a comment -#else - Console.WriteLine("FOO is not defined"); - /*/ -#else - /*/ - Console.WriteLine("FOO is still not defined"); -#endif - } - } -} diff --git a/Abusing CSharp/Code/OddsAndEnds/PreprocessorOddities2.cs b/Abusing CSharp/Code/OddsAndEnds/PreprocessorOddities2.cs deleted file mode 100644 index 948d6883..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/PreprocessorOddities2.cs +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright 2014 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -#define FOO -using System; -using System.ComponentModel; - -namespace OddsAndEnds -{ - class PreprocessorOddities2 - { - static void Main() - { -#if FOO - string x = @"FOO is defined -#else - string x = @"; -#else - FOO is not defined"; -#endif - Console.WriteLine(x); - } - } -} diff --git a/Abusing CSharp/Code/OddsAndEnds/Program.cs b/Abusing CSharp/Code/OddsAndEnds/Program.cs deleted file mode 100644 index 7fff38ed..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/Program.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using MiscUtil; - -namespace OddsAndEnds -{ - class Program - { - static void Main(string[] args) - { - ApplicationChooser.Run(typeof(Program), args); - } - } -} diff --git a/Abusing CSharp/Code/OddsAndEnds/Properties/AssemblyInfo.cs b/Abusing CSharp/Code/OddsAndEnds/Properties/AssemblyInfo.cs deleted file mode 100644 index 1a00311f..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("OddsAndEnds")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("OddsAndEnds")] -[assembly: AssemblyCopyright("Copyright © 2013")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("51ede270-fb1a-4e36-bcd6-00aaab415264")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Abusing CSharp/Code/OddsAndEnds/ShowMongolianVowelSeparator.cs b/Abusing CSharp/Code/OddsAndEnds/ShowMongolianVowelSeparator.cs deleted file mode 100644 index cb68e1e9..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/ShowMongolianVowelSeparator.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; - -namespace OddsAndEnds -{ - class ShowMongolianVowelSeparator - { - static void Main() - { - var form = new Form - { - Controls = { new TextBox { Text = "Copy here: >\u180e<" } } - }; - Application.Run(form); - } - } -} diff --git a/Abusing CSharp/Code/OddsAndEnds/SneakyOperator.cs b/Abusing CSharp/Code/OddsAndEnds/SneakyOperator.cs deleted file mode 100644 index 5a0c96f6..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/SneakyOperator.cs +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2014 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -/* Fails to compile with C# 6 compiler. Good riddance... sort of. -namespace OddsAndEnds -{ - class SneakyOperator : ArithmeticOperator - { - private static volatile ArithmeticOperator instance; - - private SneakyOperator(int x) : this(() => { throw new Exception(); }) - { } - - private SneakyOperator(Func func) : this(func()) - { } - - public static ArithmeticOperator GetInstance() - { - try - { - new SneakyOperator(0); - } - catch - { } - ArithmeticOperator local; - while ((local = instance) == null) - { - GC.Collect(); - GC.WaitForPendingFinalizers(); - } - return local; - } - - ~SneakyOperator() - { - instance = this; - } - - public override int Apply(int lhs, int rhs) - { - return (int) Math.Pow(lhs, rhs); - } - } -} -*/ \ No newline at end of file diff --git a/Abusing CSharp/Code/OddsAndEnds/SneakyOperatorDemo.cs b/Abusing CSharp/Code/OddsAndEnds/SneakyOperatorDemo.cs deleted file mode 100644 index 2050ee28..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/SneakyOperatorDemo.cs +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright 2014 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -/* -namespace OddsAndEnds -{ - class SneakyOperatorDemo - { - static void Main() - { - ArithmeticOperator op = SneakyOperator.GetInstance(); - Console.WriteLine(op.Apply(2, 5)); - } - } -} -*/ \ No newline at end of file diff --git a/Abusing CSharp/Code/OddsAndEnds/TypeParameterAttributes.cs b/Abusing CSharp/Code/OddsAndEnds/TypeParameterAttributes.cs deleted file mode 100644 index 6fba5b4c..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/TypeParameterAttributes.cs +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace OddsAndEnds -{ - [AttributeUsage(AttributeTargets.GenericParameter)] - public sealed class MustBeImmutable : Attribute { } - - [AttributeUsage(AttributeTargets.Class)] - public sealed class Immutable : Attribute { } - - class Foo<[MustBeImmutable] T> - { - } - - [Immutable] class Bar - { - public string Name { get; } - public Bar(string name) - { - Name = name; - } - } - - class Baz - { - public string Name { get; set; } - } - - class TypeParameterAttributes - { - static void Main() - { - Foo fooBar = new Foo(); - // TODO: Write the Roslyn analyzer to handle this... - Foo fooBaz = new Foo(); - } - } -} diff --git a/Abusing CSharp/Code/OddsAndEnds/WhereAsEnumerable.cs b/Abusing CSharp/Code/OddsAndEnds/WhereAsEnumerable.cs deleted file mode 100644 index 03d604ba..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/WhereAsEnumerable.cs +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; -using System.Linq; - -namespace OddsAndEnds -{ - class WhereAsEnumerable - { - static void Main() - { - // Pretend this is really a db context or whatever - IQueryable source = new string[0].AsQueryable(); - - var query = from x in source - where x.StartsWith("Foo") // Queryable.Where - where QueryHacks.TransferToClient - where x.GetHashCode() == 5 // Enumerable.Where - select x.Length; - } - } - - public static class QueryHacks - { - public static readonly HackToken TransferToClient = HackToken.Instance; - - public static IEnumerable Where( - this IQueryable source, - Func ignored) - { - // Just like AsEnumerable... we're just changing the compile-time - // type, effectively. - return source; - } - - // This class only really exists to make sure we don't *accidentally* use - // the hack above. - public class HackToken - { - internal static readonly HackToken Instance = new HackToken(); - private HackToken() { } - } - } - -} diff --git a/Abusing CSharp/Code/OddsAndEnds/packages.config b/Abusing CSharp/Code/OddsAndEnds/packages.config deleted file mode 100644 index 4b022d3e..00000000 --- a/Abusing CSharp/Code/OddsAndEnds/packages.config +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/OperatorAbuse/App.config b/Abusing CSharp/Code/OperatorAbuse/App.config deleted file mode 100644 index 8e156463..00000000 --- a/Abusing CSharp/Code/OperatorAbuse/App.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/OperatorAbuse/FieldInitialization.cs b/Abusing CSharp/Code/OperatorAbuse/FieldInitialization.cs deleted file mode 100644 index 653990ae..00000000 --- a/Abusing CSharp/Code/OperatorAbuse/FieldInitialization.cs +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System.Collections.Generic; -using System.Dynamic; -using System.Runtime.CompilerServices; - -namespace OperatorAbuse -{ - class FieldInitialization - { - private GenericType, IDynamicMetaObjectProvider, ICriticalNotifyCompletion> foo; - private Dictionary bar; - - public FieldInitialization() - { - // Would rather not have this... - foo = new GenericType, IDynamicMetaObjectProvider, ICriticalNotifyCompletion>(); - - // Can have this instead! - foo = +foo; - - // Would rather not have this... - bar = new Dictionary(); - - // Can have this instead... - bar = bar.New(); - } - } - - public static class Extensions - { - public static Dictionary New(this Dictionary ignored) - { - return new Dictionary(); - } - } - - class GenericType - { - public static GenericType operator +(GenericType ignored) - { - return new GenericType(); - } - } - -} diff --git a/Abusing CSharp/Code/OperatorAbuse/NamedOperators.cs b/Abusing CSharp/Code/OperatorAbuse/NamedOperators.cs deleted file mode 100644 index 050779b2..00000000 --- a/Abusing CSharp/Code/OperatorAbuse/NamedOperators.cs +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -// Based on ideas by Konrad Rudolph: https://github.com/klmr/named-operator -using System; -using System.Collections.Generic; -using System.Linq; - -namespace OperatorAbuse -{ - class NamedOperators - { - static void Main() - { - var plus = new Operator((lhs, rhs) => lhs + rhs); - - var sum = 2 4; - Console.WriteLine(sum); - - var repeat = Operators.Repeat(); - var join = Operators.Join(); - var result = "Hello" 3 ","; - Console.WriteLine(result); - } - } - - public static class Operators - { - public static Operator> Repeat() - { - return new Operator>(Enumerable.Repeat); - } - - public static Operator, string, string> Join() - { - return new Operator, string, string>((values, separator) => string.Join(separator, values)); - } - } - - public class Operator - { - private readonly Func func; - - public Operator(Func func) - { - this.func = func; - } - - public static PartialOperator operator <(TLeft lhs, Operator op) - { - return new PartialOperator(lhs, op.func); - } - - public static PartialOperator operator >(TLeft lhs, Operator op) - { - return new PartialOperator(lhs, op.func); - } - } - - public class PartialOperator - { - private readonly Func func; - private readonly TLeft left; - - internal PartialOperator(TLeft left, Func func) - { - this.left = left; - this.func = func; - } - - public static TResult operator >(PartialOperator op, TRight rhs) - { - return op.func(op.left, rhs); - } - - public static TResult operator <(PartialOperator op, TRight rhs) - { - return op.func(op.left, rhs); - } - } -} diff --git a/Abusing CSharp/Code/OperatorAbuse/OperatorAbuse.csproj b/Abusing CSharp/Code/OperatorAbuse/OperatorAbuse.csproj deleted file mode 100644 index 4ae65399..00000000 --- a/Abusing CSharp/Code/OperatorAbuse/OperatorAbuse.csproj +++ /dev/null @@ -1,62 +0,0 @@ - - - - - Debug - AnyCPU - {633A7C59-06B0-44B1-94F7-877EE5E7D3B1} - Exe - Properties - OperatorAbuse - OperatorAbuse - v4.5 - 512 - ..\ - true - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - OperatorAbuse.Program - - - - ..\packages\JonSkeet.MiscUtil.0.1\lib\net35-Client\MiscUtil.dll - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/OperatorAbuse/Program.cs b/Abusing CSharp/Code/OperatorAbuse/Program.cs deleted file mode 100644 index 38926d49..00000000 --- a/Abusing CSharp/Code/OperatorAbuse/Program.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using MiscUtil; - -namespace OperatorAbuse -{ - class Program - { - static void Main(string[] args) - { - ApplicationChooser.Run(typeof(Program), args); - } - } -} diff --git a/Abusing CSharp/Code/OperatorAbuse/Properties/AssemblyInfo.cs b/Abusing CSharp/Code/OperatorAbuse/Properties/AssemblyInfo.cs deleted file mode 100644 index dbff8cc6..00000000 --- a/Abusing CSharp/Code/OperatorAbuse/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("OperatorAbuse")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("OperatorAbuse")] -[assembly: AssemblyCopyright("Copyright © 2013")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("b12ffbd8-f2f7-4a3c-aea6-e2c471705447")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Abusing CSharp/Code/OperatorAbuse/packages.config b/Abusing CSharp/Code/OperatorAbuse/packages.config deleted file mode 100644 index b15b2ca1..00000000 --- a/Abusing CSharp/Code/OperatorAbuse/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/Performance/LargeStructs.cs b/Abusing CSharp/Code/Performance/LargeStructs.cs deleted file mode 100644 index b380f922..00000000 --- a/Abusing CSharp/Code/Performance/LargeStructs.cs +++ /dev/null @@ -1,55 +0,0 @@ -using System; -using System.Diagnostics; - -namespace Performance -{ - public struct Int256 - { - public long Bits0 { get; set; } - public long Bits1 { get; set; } - public long Bits2 { get; set; } - public long Bits3 { get; set; } - - public Int256(long bits0, long bits1, long bits2, long bits3) - { - Bits0 = bits0; - Bits1 = bits1; - Bits2 = bits2; - Bits3 = bits3; - } - } - - class LargeStructs - { - private Int256 value; - - public LargeStructs() - { - value = new Int256(1L, 5L, 10L, 100L); - } - - public long TotalValue - { - get - { - return value.Bits0 + value.Bits1 + value.Bits2 + value.Bits3; - } - } - - public void RunTest() - { - // Just make sure it’s JITted… - var sample = TotalValue; - Stopwatch sw = Stopwatch.StartNew(); - long total = 0; - for (int i = 0; i < 1_000_000_000; i++) - { - total += TotalValue; - } - sw.Stop(); - Console.WriteLine("Total time: {0}ms", sw.ElapsedMilliseconds); - } - - static void Main() => new LargeStructs().RunTest(); - } -} diff --git a/Abusing CSharp/Code/Performance/Performance.csproj b/Abusing CSharp/Code/Performance/Performance.csproj deleted file mode 100644 index 9eb72c12..00000000 --- a/Abusing CSharp/Code/Performance/Performance.csproj +++ /dev/null @@ -1,54 +0,0 @@ - - - - - Debug - AnyCPU - {7B6AECB5-CCD7-4F91-9D8A-5CAF92B9EDA6} - Exe - Properties - Performance - Performance - v4.0 - 512 - ..\ - true - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - Performance.Program - - - - ..\packages\JonSkeet.MiscUtil.0.1\lib\net35-Client\MiscUtil.dll - - - - - - - - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/Performance/Program.cs b/Abusing CSharp/Code/Performance/Program.cs deleted file mode 100644 index b84a5494..00000000 --- a/Abusing CSharp/Code/Performance/Program.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using MiscUtil; - -namespace Performance -{ - class Program - { - static void Main(string[] args) - { - ApplicationChooser.Run(typeof(Program), args); - } - } -} diff --git a/Abusing CSharp/Code/Performance/Properties/AssemblyInfo.cs b/Abusing CSharp/Code/Performance/Properties/AssemblyInfo.cs deleted file mode 100644 index c8d1fd4d..00000000 --- a/Abusing CSharp/Code/Performance/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("Performance")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("Performance")] -[assembly: AssemblyCopyright("Copyright © 2014")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("c9d8c133-8fcd-4446-9d02-740141819f30")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Abusing CSharp/Code/Performance/packages.config b/Abusing CSharp/Code/Performance/packages.config deleted file mode 100644 index 247ceb43..00000000 --- a/Abusing CSharp/Code/Performance/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/StringInterpolation/App.config b/Abusing CSharp/Code/StringInterpolation/App.config deleted file mode 100644 index 2d2a12d8..00000000 --- a/Abusing CSharp/Code/StringInterpolation/App.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/Abusing CSharp/Code/StringInterpolation/LambdaExpressions.cs b/Abusing CSharp/Code/StringInterpolation/LambdaExpressions.cs deleted file mode 100644 index 488fabe6..00000000 --- a/Abusing CSharp/Code/StringInterpolation/LambdaExpressions.cs +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace StringInterpolation -{ - class LambdaExpressions - { - static void Main() - { - // Braces for multiple statements aren't allowed... - // Console.WriteLine($"{{Console.WriteLine("hello"); return "y";}}"); - - // Lambda expressions don't have a type... - // Console.WriteLine($"{() => "won't work"}"); - - // ... but you can cast lambda expressions to specific - // delegate types. - Console.WriteLine($"{((Func) (() => { Console.WriteLine("hello"); return "y"; })).Invoke()}"); - - // Simplified with a method call to avoid the cast... - Console.WriteLine($"{F(() => { Console.WriteLine("hello"); return "y"; })}"); - - // Whole program in a string... - Console.WriteLine($@"Hello {((Func) (() => - { - Console.Write("What's your name? "); - return Console.ReadLine(); - }))()}!"); - } - - static string F(Func func) => func(); - } -} diff --git a/Abusing CSharp/Code/StringInterpolation/LazyEvaluation.cs b/Abusing CSharp/Code/StringInterpolation/LazyEvaluation.cs deleted file mode 100644 index d9d49e6a..00000000 --- a/Abusing CSharp/Code/StringInterpolation/LazyEvaluation.cs +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Threading; -using static StringInterpolation.Capture; - -namespace StringInterpolation -{ - class LazyEvaluation - { - static void Main() - { - string value = "Before"; - FormattableString formattable = $"Current value: {_(() => value)}"; - Console.WriteLine(formattable); - - value = "After"; - Console.WriteLine(formattable); - - formattable = $"Current time: {_(() => DateTime.UtcNow):HH:mm:ss.fff}"; - for (int i = 0; i < 10; i++) - { - Console.WriteLine(formattable); - Thread.Sleep(1000); - } - } - } - - class Capture : IFormattable - { - private readonly Func valueProvider; - - public static Capture _(Func provider) - { - return new Capture(provider); - } - - public Capture(Func provider) - { - this.valueProvider = provider; - } - - public override string ToString() - { - return base.ToString(); - } - - public string ToString(string format, IFormatProvider formatProvider) - { - object value = valueProvider(); - if (value == null) - { - return ""; - } - var formattable = value as IFormattable; - return formattable == null ? value.ToString() : formattable.ToString(format, formatProvider); - } - } -} diff --git a/Abusing CSharp/Code/StringInterpolation/LazyLinq.cs b/Abusing CSharp/Code/StringInterpolation/LazyLinq.cs deleted file mode 100644 index fcae64b7..00000000 --- a/Abusing CSharp/Code/StringInterpolation/LazyLinq.cs +++ /dev/null @@ -1,23 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace StringInterpolation -{ - class LazyLinq - { - static void Main() - { - int[] values = { 1, 4, 1, 2, 5, 6 }; - int min = 3; - var query = from v in values where v >= min select v; - // Equivalent to: var query = values.Where(v => v >= min); - - Console.WriteLine(query.Count()); - min = 2; - Console.WriteLine(query.Count()); - } - } -} diff --git a/Abusing CSharp/Code/StringInterpolation/ParameterizedSql.cs b/Abusing CSharp/Code/StringInterpolation/ParameterizedSql.cs deleted file mode 100644 index 92ab5bfb..00000000 --- a/Abusing CSharp/Code/StringInterpolation/ParameterizedSql.cs +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Data; -using System.Data.SqlClient; -using System.Linq; -using static System.FormattableString; - -namespace StringInterpolation -{ - class ParameterizedSql - { - static void Main() - { - // Not really going to run anything right now... - SqlConnection conn = null; - string name = "Jon"; - int id = 10; - using (var command = conn.NewSqlCommand($"SELECT * FROM SomeTable WHERE name={name:nvarchar} AND id={id}")) - { - Console.WriteLine(command.CommandText); - var p = command.Parameters[0]; - Console.WriteLine($"{p.ParameterName}: Type={p.SqlDbType}; Value={p.Value}"); - p = command.Parameters[1]; - Console.WriteLine($"{p.ParameterName}: Type={p.SqlDbType}; Value={p.Value}"); - } - } - } - - public static class SqlFormattableString - { - public static SqlCommand NewSqlCommand( - this SqlConnection conn, FormattableString formattableString) - { - // formattableString.Format will be - // "SELECT * FROM SomeTable WHERE name={0:nvarchar} AND id={1}" - // formattableString.GetArguments() will return { "Jon", 10 } - SqlParameter[] sqlParameters = formattableString.GetArguments() - .Select((value, position) => - new SqlParameter(Invariant($"@p{position}"), value)) - .ToArray(); - object[] formatArguments = sqlParameters - .Select(p => new FormatCapturingParameter(p)) - .ToArray(); - string sql = string.Format(formattableString.Format, formatArguments); - var command = new SqlCommand(sql, conn); - command.Parameters.AddRange(sqlParameters); - return command; - } - - private class FormatCapturingParameter : IFormattable - { - private readonly SqlParameter parameter; - - internal FormatCapturingParameter(SqlParameter parameter) - { - this.parameter = parameter; - } - - public string ToString(string format, IFormatProvider formatProvider) - { - // format will be "nvarchar" for p0, and null (or "") for p1 - if (!string.IsNullOrEmpty(format)) - { - parameter.SqlDbType = - (SqlDbType) Enum.Parse(typeof(SqlDbType), format, true); - } - return parameter.ParameterName; - } - } - } -} diff --git a/Abusing CSharp/Code/StringInterpolation/Program.cs b/Abusing CSharp/Code/StringInterpolation/Program.cs deleted file mode 100644 index 96bf88b9..00000000 --- a/Abusing CSharp/Code/StringInterpolation/Program.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using MiscUtil; - -namespace StringInterpolation -{ - class Program - { - static void Main(string[] args) - { - ApplicationChooser.Run(typeof(Program), args); - } - } -} \ No newline at end of file diff --git a/Abusing CSharp/Code/StringInterpolation/Properties/AssemblyInfo.cs b/Abusing CSharp/Code/StringInterpolation/Properties/AssemblyInfo.cs deleted file mode 100644 index 9a1fdeac..00000000 --- a/Abusing CSharp/Code/StringInterpolation/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("StringInterpolation")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("StringInterpolation")] -[assembly: AssemblyCopyright("Copyright © 2017")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("f66f5289-fcdf-41e9-aa8a-7d44ba122e5a")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Abusing CSharp/Code/StringInterpolation/RegularEvaluation.cs b/Abusing CSharp/Code/StringInterpolation/RegularEvaluation.cs deleted file mode 100644 index fccabcf4..00000000 --- a/Abusing CSharp/Code/StringInterpolation/RegularEvaluation.cs +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Threading; - -namespace StringInterpolation -{ - class RegularEvaluation - { - static void Main() - { - string value = "Before"; - FormattableString formattable = $"Current value: {value}"; - Console.WriteLine(formattable); - - value = "After"; - Console.WriteLine(formattable); - - formattable = $"Current time: {DateTime.UtcNow:HH:mm:ss.fff}"; - for (int i = 0; i < 10; i++) - { - Console.WriteLine(formattable); - Thread.Sleep(1000); - } - } - } -} diff --git a/Abusing CSharp/Code/StringInterpolation/StringInterpolation.csproj b/Abusing CSharp/Code/StringInterpolation/StringInterpolation.csproj deleted file mode 100644 index 2717ebf5..00000000 --- a/Abusing CSharp/Code/StringInterpolation/StringInterpolation.csproj +++ /dev/null @@ -1,65 +0,0 @@ - - - - - Debug - AnyCPU - {F66F5289-FCDF-41E9-AA8A-7D44BA122E5A} - Exe - StringInterpolation - StringInterpolation - v4.6 - 512 - true - - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - StringInterpolation.Program - - - - ..\packages\JonSkeet.MiscUtil.0.1\lib\net35-Client\MiscUtil.dll - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/StringInterpolation/packages.config b/Abusing CSharp/Code/StringInterpolation/packages.config deleted file mode 100644 index 2e6072f0..00000000 --- a/Abusing CSharp/Code/StringInterpolation/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/VersionDetection/App.config b/Abusing CSharp/Code/VersionDetection/App.config deleted file mode 100644 index 8e156463..00000000 --- a/Abusing CSharp/Code/VersionDetection/App.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/VersionDetection/Program.cs b/Abusing CSharp/Code/VersionDetection/Program.cs deleted file mode 100644 index a30926ed..00000000 --- a/Abusing CSharp/Code/VersionDetection/Program.cs +++ /dev/null @@ -1,109 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -#pragma warning disable -using System; -using System.Collections; -using System.Collections.Generic; - -namespace VersionDetection -{ - class Program - { - #region Entry point (gives away answers) - private static void Main(string[] args) - { - Console.WriteLine("Results..."); - Console.WriteLine("Disposing foreach loop? (v1.2 vs v1.0) - {0}", DetectDisposingForEach()); - Console.WriteLine("Method group variance? (v2.0 vs 1.2) - {0}", DetectMethodGroupVariance()); - Console.WriteLine("Smart type inference? (v3.0 vs v2.0) - {0}", DetectSmartTypeInference()); - Console.WriteLine("Handling of optional parameters? (v4.0 vs 3.0) - {0}", DetectOptionalParameters()); - Console.WriteLine("Sane capture of foreach iteration variable? (v5.0 vs v4.0) - {0}", DetectSaneForEachCapture()); - } - #endregion - - #region C# 1.2 / C# 1.0 - // Note: this *isn't* a specification change, which I had originally thought. - // I *believe* it's a compiler change (that the 1.0 compiler had a bug) but that's hard - // to verify now. I'm going to look for a genuine difference to abuse... - class Funky : IEnumerable, IEnumerator, IDisposable - { - internal bool disposed; - - public IEnumerator GetEnumerator() { return this; } - public object Current { get { return null; } } - public bool MoveNext() { return false; } - public void Reset() { } - public void Dispose() { disposed = true; } - } - - private static bool DetectDisposingForEach() - { - Funky funky = new Funky(); - foreach (object x in funky) { } - return funky.disposed; - } - #endregion - - #region C# 2.0 / C# 1.2 - class VariantBase - { - internal bool variance; - public void Foo(object sender, EventArgs args) - { - } - } - - class VariantDerived : VariantBase - { - public void Foo(object sender, object args) - { - variance = true; - } - } - - static bool DetectMethodGroupVariance() - { - VariantDerived derived = new VariantDerived(); - EventHandler handler = new EventHandler(derived.Foo); - handler(null, null); - return derived.variance; - } - #endregion - - #region C# 3.0 / C# 2.0 - class TypeInferenceBase - { - public bool Foo(T1 t1, T2 t2) { return false; } - } - - class TypeInferenceDerived : TypeInferenceBase - { - public bool Foo(T t1, T t2) { return true; } - } - - private static bool DetectSmartTypeInference() - { - return new TypeInferenceDerived().Foo(new object(), ""); - } - #endregion - - #region C# 4.0 / C# 3.0 - private static bool DetectOptionalParameters() - { - return new VersionHelper.T2().DetectDefaulting(); - } - #endregion - - #region C# 5.0 / C# 4.0 - private delegate bool Foo(); - private static bool DetectSaneForEachCapture() - { - List foos = new List(); - foreach (bool value in new bool[] { true, false }) - { - foos.Add(delegate { return value; }); - } - return foos[0](); - } - #endregion - } -} diff --git a/Abusing CSharp/Code/VersionDetection/Properties/AssemblyInfo.cs b/Abusing CSharp/Code/VersionDetection/Properties/AssemblyInfo.cs deleted file mode 100644 index f3facee5..00000000 --- a/Abusing CSharp/Code/VersionDetection/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("VersionDetection")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("VersionDetection")] -[assembly: AssemblyCopyright("Copyright © 2013")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("3ea55e0e-fac8-4591-a9e9-95e4df9c05c8")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Abusing CSharp/Code/VersionDetection/VersionDetection.csproj b/Abusing CSharp/Code/VersionDetection/VersionDetection.csproj deleted file mode 100644 index 1445ad49..00000000 --- a/Abusing CSharp/Code/VersionDetection/VersionDetection.csproj +++ /dev/null @@ -1,64 +0,0 @@ - - - - - Debug - AnyCPU - {C69B3861-8D0D-4582-9E53-B03711ADF9A3} - Exe - Properties - VersionDetection - VersionDetection - v4.5 - 512 - ..\ - true - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - ..\packages\JonSkeet.MiscUtil.0.1\lib\net35-Client\MiscUtil.dll - - - - - - - - - - - - - - - - - - - - - {df7fc088-6a47-4c32-9d86-baf31d8eecf4} - VersionHelper - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/VersionDetection/packages.config b/Abusing CSharp/Code/VersionDetection/packages.config deleted file mode 100644 index b15b2ca1..00000000 --- a/Abusing CSharp/Code/VersionDetection/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/VersionHelper/Defaulting.cs b/Abusing CSharp/Code/VersionHelper/Defaulting.cs deleted file mode 100644 index 27d96676..00000000 --- a/Abusing CSharp/Code/VersionHelper/Defaulting.cs +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. - -namespace VersionHelper -{ - public class T1 - { - public bool DetectDefaulting() - { - return false; - } - } - - public class T2 : T1 - { - public bool DetectDefaulting(int x = 0) - { - return true; - } - } -} diff --git a/Abusing CSharp/Code/VersionHelper/Properties/AssemblyInfo.cs b/Abusing CSharp/Code/VersionHelper/Properties/AssemblyInfo.cs deleted file mode 100644 index f9ff1f70..00000000 --- a/Abusing CSharp/Code/VersionHelper/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("VersionHelper")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("VersionHelper")] -[assembly: AssemblyCopyright("Copyright © 2013")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("3a4598c6-d2cf-41fd-8827-2be578dccda3")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Abusing CSharp/Code/VersionHelper/VersionHelper.csproj b/Abusing CSharp/Code/VersionHelper/VersionHelper.csproj deleted file mode 100644 index b41e9955..00000000 --- a/Abusing CSharp/Code/VersionHelper/VersionHelper.csproj +++ /dev/null @@ -1,42 +0,0 @@ - - - - - Debug - AnyCPU - {DF7FC088-6A47-4C32-9D86-BAF31D8EECF4} - Library - Properties - VersionHelper - VersionHelper - v2.0 - 512 - - - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - - - - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/WhatTheHeck/Program.cs b/Abusing CSharp/Code/WhatTheHeck/Program.cs deleted file mode 100644 index 49a9e531..00000000 --- a/Abusing CSharp/Code/WhatTheHeck/Program.cs +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace WhatTheHeck -{ - class Program - { - static void Main(string[] args) - { - var limit = 10; - limit = "five"; - for (var x = 0; x < limit; x++) - { - Console.WriteLine(x); - Console.WriteLine("The current value of x is: {0}", x); - } - } - } -} diff --git a/Abusing CSharp/Code/WhatTheHeck/Properties/AssemblyInfo.cs b/Abusing CSharp/Code/WhatTheHeck/Properties/AssemblyInfo.cs deleted file mode 100644 index dfc5aab5..00000000 --- a/Abusing CSharp/Code/WhatTheHeck/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,85 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("WhatTheHeck")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("WhatTheHeck")] -[assembly: AssemblyCopyright("Copyright © 2012")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("913d04ba-ddc1-45de-868d-f4a591a42a93")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] - -internal class var -{ - private static readonly List Numbers = new List - { - "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", - "ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen", - "twenty" - }; - - private int number; - - private var(int number) - { - this.number = number; - } - - public static implicit operator var(string text) - { - int index = Numbers.IndexOf(text); - if (index == -1) - { - throw new ArgumentException(); - } - return new var(index); - } - - public static implicit operator var(int number) - { - if (number < 0 || number >= Numbers.Count) - { - throw new ArgumentException(); - } - return new var(number); - } - - public static implicit operator int(var x) - { - return x.number; - } - - public override string ToString() - { - return Numbers[number]; - } -} diff --git a/Abusing CSharp/Code/WhatTheHeck/WhatTheHeck.csproj b/Abusing CSharp/Code/WhatTheHeck/WhatTheHeck.csproj deleted file mode 100644 index 21230b50..00000000 --- a/Abusing CSharp/Code/WhatTheHeck/WhatTheHeck.csproj +++ /dev/null @@ -1,55 +0,0 @@ - - - - - Debug - AnyCPU - {E3321E4F-EA4D-474C-ADBB-B2FA45BF1F51} - Exe - Properties - WhatTheHeck - WhatTheHeck - v4.5 - 512 - - ..\ - true - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - false - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - false - - - - ..\packages\JonSkeet.MiscUtil.0.1\lib\net35-Client\MiscUtil.dll - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/WhatTheHeck/packages.config b/Abusing CSharp/Code/WhatTheHeck/packages.config deleted file mode 100644 index b15b2ca1..00000000 --- a/Abusing CSharp/Code/WhatTheHeck/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/WhatTheHeck2/App.config b/Abusing CSharp/Code/WhatTheHeck2/App.config deleted file mode 100644 index 8e156463..00000000 --- a/Abusing CSharp/Code/WhatTheHeck2/App.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/WhatTheHeck2/Demo1.cs b/Abusing CSharp/Code/WhatTheHeck2/Demo1.cs deleted file mode 100644 index 99535cb0..00000000 --- a/Abusing CSharp/Code/WhatTheHeck2/Demo1.cs +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Linq; - -namespace WhatTheHeck2 -{ - class Demo1 - { - static void Main() - { - dynamic x = Mystery.GetValue(); - Console.WriteLine(x.Count()); - } - } -} diff --git a/Abusing CSharp/Code/WhatTheHeck2/Demo2.cs b/Abusing CSharp/Code/WhatTheHeck2/Demo2.cs deleted file mode 100644 index c3205b65..00000000 --- a/Abusing CSharp/Code/WhatTheHeck2/Demo2.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace WhatTheHeck2 -{ - class Demo2 - { - static void Main() - { - dynamic x = Mystery.GetValue(); - Console.WriteLine(x.Count()); - } - } -} diff --git a/Abusing CSharp/Code/WhatTheHeck2/Details.cs b/Abusing CSharp/Code/WhatTheHeck2/Details.cs deleted file mode 100644 index fc3d27c7..00000000 --- a/Abusing CSharp/Code/WhatTheHeck2/Details.cs +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System.Collections; -using System.Collections.Generic; - -namespace WhatTheHeck2 -{ - public class Mystery - { - public static System.Linq.dynamic GetValue() - { - return new Static(); - } - } - - public class Static : System.Linq.dynamic - { - public int Count() - { - return 10; - } - } -} - -namespace System.Linq -{ - public class dynamic : IEnumerable - { - public IEnumerator GetEnumerator() - { - yield return 1; - yield return 2; - yield return 3; - } - - IEnumerator IEnumerable.GetEnumerator() - { - throw new NotImplementedException(); - } - } -} diff --git a/Abusing CSharp/Code/WhatTheHeck2/Program.cs b/Abusing CSharp/Code/WhatTheHeck2/Program.cs deleted file mode 100644 index 788eac68..00000000 --- a/Abusing CSharp/Code/WhatTheHeck2/Program.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using MiscUtil; - -namespace WhatTheHeck2 -{ - class Program - { - static void Main(string[] args) - { - ApplicationChooser.Run(typeof(Program), args); - } - } -} diff --git a/Abusing CSharp/Code/WhatTheHeck2/Properties/AssemblyInfo.cs b/Abusing CSharp/Code/WhatTheHeck2/Properties/AssemblyInfo.cs deleted file mode 100644 index 10458e02..00000000 --- a/Abusing CSharp/Code/WhatTheHeck2/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("WhatTheHeck2")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("WhatTheHeck2")] -[assembly: AssemblyCopyright("Copyright © 2013")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("c75b9f4c-6791-4f8c-ade3-f773cab3c0c1")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Abusing CSharp/Code/WhatTheHeck2/WhatTheHeck2.csproj b/Abusing CSharp/Code/WhatTheHeck2/WhatTheHeck2.csproj deleted file mode 100644 index 9fe9b6d0..00000000 --- a/Abusing CSharp/Code/WhatTheHeck2/WhatTheHeck2.csproj +++ /dev/null @@ -1,63 +0,0 @@ - - - - - Debug - AnyCPU - {2CED56D7-028F-474C-ABC3-6F332A61D32A} - Exe - Properties - WhatTheHeck2 - WhatTheHeck2 - v4.5 - 512 - ..\ - true - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - WhatTheHeck2.Program - - - - ..\packages\JonSkeet.MiscUtil.0.1\lib\net35-Client\MiscUtil.dll - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/WhatTheHeck2/packages.config b/Abusing CSharp/Code/WhatTheHeck2/packages.config deleted file mode 100644 index b15b2ca1..00000000 --- a/Abusing CSharp/Code/WhatTheHeck2/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/WrappingAsync/AsyncExtensions.cs b/Abusing CSharp/Code/WrappingAsync/AsyncExtensions.cs deleted file mode 100644 index c2281e4a..00000000 --- a/Abusing CSharp/Code/WrappingAsync/AsyncExtensions.cs +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Linq; -using System.Runtime.CompilerServices; -using System.Threading.Tasks; - -namespace WrappingAsync -{ - public static class AsyncExtensions - { - public static Task TransposeAnonymous(this T source) where T : class - { - // TODO: Lots of validation :) - Type type = source.GetType(); - Type genericDefinition = type.GetGenericTypeDefinition(); - // Convert Anon, Task> to Anon - Type constructedType = genericDefinition.MakeGenericType(type.GetGenericArguments().Select(x => x.GetGenericArguments()[0]).ToArray()); - - // Fetch the property names from the constructor parameter here, so that the tasks are in the right - // order to invoke the constructor later, when we fetch the results. - var tasks = type.GetConstructors()[0].GetParameters() - .Select(p => type.GetProperty(p.Name).GetValue(source)) - .Cast() - .ToArray(); - - Task whenAll = Task.WhenAll(tasks); - var tcs = new TaskCompletionSource(); - whenAll.ContinueWith(task => - { - switch (task.Status) - { - case TaskStatus.RanToCompletion: - var ctor = constructedType.GetConstructors()[0]; - var args = tasks.Select(t => ((dynamic)t).Result) - .ToArray(); - tcs.SetResult(ctor.Invoke(args)); - break; - case TaskStatus.Faulted: - tcs.SetException(task.Exception.InnerExceptions); - break; - case TaskStatus.Canceled: - tcs.SetCanceled(); - break; - } - }, TaskContinuationOptions.ExecuteSynchronously); - return tcs.Task; - } - - public static TaskAwaiter GetAwaiter(this T source) where T : class - { - return TransposeAnonymous(source).GetAwaiter(); - } - } -} diff --git a/Abusing CSharp/Code/WrappingAsync/Program.cs b/Abusing CSharp/Code/WrappingAsync/Program.cs deleted file mode 100644 index 2b11298f..00000000 --- a/Abusing CSharp/Code/WrappingAsync/Program.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using MiscUtil; - -namespace WrappingAsync -{ - class Program - { - static void Main(string[] args) - { - ApplicationChooser.Run(typeof(Program), args); - } - } -} diff --git a/Abusing CSharp/Code/WrappingAsync/Properties/AssemblyInfo.cs b/Abusing CSharp/Code/WrappingAsync/Properties/AssemblyInfo.cs deleted file mode 100644 index 6dda63cf..00000000 --- a/Abusing CSharp/Code/WrappingAsync/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System; -using System.Reflection; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("WrappingAsync")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("WrappingAsync")] -[assembly: AssemblyCopyright("Copyright © 2012")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("41b44cf2-49d8-43e4-9b5e-fb5a3bbade37")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Abusing CSharp/Code/WrappingAsync/Service.cs b/Abusing CSharp/Code/WrappingAsync/Service.cs deleted file mode 100644 index 9c0ce34d..00000000 --- a/Abusing CSharp/Code/WrappingAsync/Service.cs +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Threading.Tasks; - -namespace WrappingAsync -{ - class Service - { - public static async Task GetWeightAsync() - { - await Task.Delay(100); - return 50d; - } - - public static async Task GetBirthdayAsync() - { - await Task.Delay(50); - return new DateTime(1976, 6, 19); - } - - public static async Task GetNameAsync() - { - await Task.Delay(200); - return "fred"; - } - } -} diff --git a/Abusing CSharp/Code/WrappingAsync/Step1.cs b/Abusing CSharp/Code/WrappingAsync/Step1.cs deleted file mode 100644 index 5596005b..00000000 --- a/Abusing CSharp/Code/WrappingAsync/Step1.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Threading.Tasks; - -namespace WrappingAsync -{ - class Step1 - { - static void Main() - { - Console.WriteLine(GetDetailsAsync().Result); - } - - static async Task GetDetailsAsync() - { - var weightTask = Service.GetWeightAsync(); - var nameTask = Service.GetNameAsync(); - var birthdayTask = Service.GetBirthdayAsync(); - - return new - { - Weight = await weightTask, - Name = await nameTask, - Birthday = await birthdayTask - }; - } - } -} diff --git a/Abusing CSharp/Code/WrappingAsync/Step2.cs b/Abusing CSharp/Code/WrappingAsync/Step2.cs deleted file mode 100644 index 2961c4f3..00000000 --- a/Abusing CSharp/Code/WrappingAsync/Step2.cs +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Threading.Tasks; - -namespace WrappingAsync -{ - class Step2 - { - static void Main() - { - Console.WriteLine(GetDetailsAsync().Result); - } - - static async Task> GetDetailsAsync() - { - var tuple = Tuple.Create( - Service.GetWeightAsync(), - Service.GetNameAsync(), - Service.GetBirthdayAsync()); - return await tuple.Transpose(); - } - } -} diff --git a/Abusing CSharp/Code/WrappingAsync/Step3.cs b/Abusing CSharp/Code/WrappingAsync/Step3.cs deleted file mode 100644 index 948d663a..00000000 --- a/Abusing CSharp/Code/WrappingAsync/Step3.cs +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Threading.Tasks; - -namespace WrappingAsync -{ - class Step3 - { - static void Main() - { - Console.WriteLine(GetDetailsAsync().Result); - } - - static async Task> GetDetailsAsync() - { - var tuple = Tuple.Create( - Service.GetWeightAsync(), - Service.GetNameAsync(), - Service.GetBirthdayAsync()); - return await tuple; - } - } -} diff --git a/Abusing CSharp/Code/WrappingAsync/Step4.cs b/Abusing CSharp/Code/WrappingAsync/Step4.cs deleted file mode 100644 index 04d2626b..00000000 --- a/Abusing CSharp/Code/WrappingAsync/Step4.cs +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Threading.Tasks; - -namespace WrappingAsync -{ - class Step4 - { - static void Main() - { - Console.WriteLine(GetDetailsAsync().Result); - } - - static async Task GetDetailsAsync() - { - var tasks = new - { - Weight = Service.GetWeightAsync(), - Name = Service.GetNameAsync(), - Birthday = Service.GetBirthdayAsync() - }; - return await tasks.TransposeAnonymous(); - } - } -} diff --git a/Abusing CSharp/Code/WrappingAsync/Step5.cs b/Abusing CSharp/Code/WrappingAsync/Step5.cs deleted file mode 100644 index b6ac9e76..00000000 --- a/Abusing CSharp/Code/WrappingAsync/Step5.cs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Threading.Tasks; - -namespace WrappingAsync -{ - class Step5 - { - static void Main() - { - Console.WriteLine(GetDetailsAsync().Result); - } - - static async Task GetDetailsAsync() - { - return await new - { - Weight = Service.GetWeightAsync(), - Name = Service.GetNameAsync(), - Birthday = Service.GetBirthdayAsync() - }; - } - } -} diff --git a/Abusing CSharp/Code/WrappingAsync/TupleExtensions.cs b/Abusing CSharp/Code/WrappingAsync/TupleExtensions.cs deleted file mode 100644 index a9c1652c..00000000 --- a/Abusing CSharp/Code/WrappingAsync/TupleExtensions.cs +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Runtime.CompilerServices; -using System.Threading.Tasks; - -namespace WrappingAsync -{ - public static class TupleExtensions - { - public static async Task> Transpose( - this Tuple, Task, Task> input) - { - return Tuple.Create(await input.Item1, await input.Item2, await input.Item3); - } - - public static TaskAwaiter> GetAwaiter( - this Tuple, Task, Task> input) - { - return input.Transpose().GetAwaiter(); - } - } -} diff --git a/Abusing CSharp/Code/WrappingAsync/WrappingAsync.csproj b/Abusing CSharp/Code/WrappingAsync/WrappingAsync.csproj deleted file mode 100644 index a3cc1ecc..00000000 --- a/Abusing CSharp/Code/WrappingAsync/WrappingAsync.csproj +++ /dev/null @@ -1,68 +0,0 @@ - - - - - Debug - AnyCPU - {1C5FC668-B8AC-4B87-B053-BACAAD003DBF} - Exe - Properties - WrappingAsync - WrappingAsync - v4.5 - 512 - - ..\ - true - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - false - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - false - - - WrappingAsync.Program - - - - - ..\packages\JonSkeet.MiscUtil.0.1\lib\net35-Client\MiscUtil.dll - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/WrappingAsync/app.config b/Abusing CSharp/Code/WrappingAsync/app.config deleted file mode 100644 index c5e1daef..00000000 --- a/Abusing CSharp/Code/WrappingAsync/app.config +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/Abusing CSharp/Code/WrappingAsync/packages.config b/Abusing CSharp/Code/WrappingAsync/packages.config deleted file mode 100644 index b15b2ca1..00000000 --- a/Abusing CSharp/Code/WrappingAsync/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Abusing CSharp/Code/packages/repositories.config b/Abusing CSharp/Code/packages/repositories.config deleted file mode 100644 index 8fc5180c..00000000 --- a/Abusing CSharp/Code/packages/repositories.config +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/Abusing CSharp/Text/agenda.txt b/Abusing CSharp/Text/agenda.txt deleted file mode 100644 index d5d54e2f..00000000 --- a/Abusing CSharp/Text/agenda.txt +++ /dev/null @@ -1,22 +0,0 @@ -(Odds and Ends) -Mongolian Vowel Separator -nameof anything -Date deconstruction -ASCII art separators -Preprocessor oddities - -(String interpolation) -Lambda expressions -Regular then lazy evaluation -Parameterized SQL - -(Performance) -Large structs - -(Null conditional) -Preconditions -Logging - -(Exception filters) -Direct vs reflection -Exception context \ No newline at end of file diff --git a/Abusing CSharp/Text/intro.txt b/Abusing CSharp/Text/intro.txt deleted file mode 100644 index 80c2f7f9..00000000 --- a/Abusing CSharp/Text/intro.txt +++ /dev/null @@ -1,16 +0,0 @@ - - Abusing C# (more) - Jon Skeet - - -Welcome! - -Code is all at https://github.com/jskeet/democode -(under Abusing CSharp) - -Do not use any of this code in production! - -Me: -Twitter: @jonskeet -Code blog: https://codeblog.jonskeet.uk -Non-code blog: https://blog.jonskeet.uk diff --git a/AsyncIntro/Code/AsyncHttpService/App.config b/AsyncIntro/Code/AsyncHttpService/App.config deleted file mode 100644 index 8e156463..00000000 --- a/AsyncIntro/Code/AsyncHttpService/App.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/AsyncIntro/Code/AsyncHttpService/AsyncHttpService.csproj b/AsyncIntro/Code/AsyncHttpService/AsyncHttpService.csproj deleted file mode 100644 index 87d9f748..00000000 --- a/AsyncIntro/Code/AsyncHttpService/AsyncHttpService.csproj +++ /dev/null @@ -1,69 +0,0 @@ - - - - - Debug - AnyCPU - {2B42D0F2-BA36-400A-9CDB-F5D9AF911D5A} - Exe - Properties - AsyncHttpService - AsyncHttpService - v4.5 - 512 - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - ..\packages\Newtonsoft.Json.4.5.8\lib\net40\Newtonsoft.Json.dll - - - - - - - - - - - - - - - - - - - - - {A92C045E-6257-4BF6-9CFF-124A7466EAB0} - StockMarket - - - - - \ No newline at end of file diff --git a/AsyncIntro/Code/AsyncHttpService/HttpJsonRpcHandler.cs b/AsyncIntro/Code/AsyncHttpService/HttpJsonRpcHandler.cs deleted file mode 100644 index 1a3fd14b..00000000 --- a/AsyncIntro/Code/AsyncHttpService/HttpJsonRpcHandler.cs +++ /dev/null @@ -1,179 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using Newtonsoft.Json; -using Newtonsoft.Json.Linq; -using System; -using System.Collections.Concurrent; -using System.IO; -using System.Linq; -using System.Net; -using System.Reflection; -using System.Text; -using System.Threading.Tasks; - -namespace AsyncHttpService -{ - /// - /// Prototype (and never going beyond that) HTTP RPC server using JSON in the HTTP body to construct - /// method parameters. This isn't meant to be even slightly production-ready, so please don't use it in the real world. - /// - internal sealed class HttpJsonRpcHandler - { - private readonly int port; - private readonly string prefix; - private readonly ConcurrentDictionary targets = new ConcurrentDictionary(); - private readonly ConcurrentDictionary outstandingRequests = new ConcurrentDictionary(); - - internal HttpJsonRpcHandler(int port, string prefix) - { - this.port = port; - this.prefix = prefix; - } - - internal async Task Start() - { - string fullPrefix = "/" + prefix + "/"; - - using (HttpListener listener = new HttpListener()) - { - listener.Prefixes.Add("http://localhost/" + port + "/" + prefix + "/"); - listener.Start(); - - int requestId = 0; - while (true) - { - HttpListenerContext context = await listener.GetContextAsync(); - HttpListenerRequest request = context.Request; - - if (!request.Url.AbsolutePath.StartsWith(fullPrefix)) - { - Console.WriteLine("Unexpected request for " + request.Url); - await WriteErrorResponse(context, HttpStatusCode.NotFound, "Unknown url"); - continue; - } - - requestId++; - - string relativePath = request.Url.AbsolutePath.Substring(fullPrefix.Length); - if (relativePath == "quit") - { - using (HttpListenerResponse response = context.Response) - { - response.StatusCode = (int) HttpStatusCode.OK; - response.ContentType = "text/plain"; - await WriteResponseBody(response, "Shutting down"); - } - break; - } - - string[] parts = relativePath.Split('/'); - - if (parts.Length != 2) - { - Console.WriteLine("Expected target/method relative path; was " + relativePath); - await WriteErrorResponse(context, HttpStatusCode.BadRequest, "Bad path"); - continue; - } - - object target; - if (!targets.TryGetValue(parts[0], out target)) - { - Console.WriteLine("Unknown target for " + request.Url); - await WriteErrorResponse(context, HttpStatusCode.NotFound, "Unknown target"); - continue; - } - - // TODO: Make this cleaner. Possibly use a linked list? - Task task = HandleRequestAsync(context, target, parts[1], requestId); - outstandingRequests[requestId] = task; - int thisRequestId = requestId; -#pragma warning disable 4014 - task.ContinueWith(t => outstandingRequests.TryRemove(thisRequestId, out task)); -#pragma warning restore - } - Console.WriteLine("Shutting down... waiting for {0} outstanding requests", outstandingRequests.Count); - await Task.WhenAll(outstandingRequests.Values); - listener.Stop(); - } - } - - private async Task HandleRequestAsync(HttpListenerContext context, object target, string method, int requestId) - { - Console.WriteLine("{0:HH:mm:ss.ffff}: Handling request {1} for {2}", - DateTime.Now, - requestId, - context.Request.Url.AbsolutePath); - string requestText; - using (var reader = new StreamReader(context.Request.InputStream)) - { - requestText = await reader.ReadToEndAsync(); - } - Console.WriteLine(requestText); - - JObject json = JObject.Parse(requestText); - - var methodInfo = target.GetType().GetMethod(method); - if (methodInfo == null) - { - await WriteErrorResponse(context, HttpStatusCode.NotFound, "Unknown method"); - return; - } - - var parameters = methodInfo.GetParameters(); - var arguments = parameters.Select(parameter => ConvertToken(json[parameter.Name], parameter.ParameterType)) - .ToArray(); - - // Use dynamic typing to convert to Task for the right T... - dynamic task= methodInfo.Invoke(target, arguments); - string jsonResponse = await ConvertToJson(task); - using (HttpListenerResponse response = context.Response) - { - response.StatusCode = (int) HttpStatusCode.OK; - response.ContentType = "application/json"; - await WriteResponseBody(response, jsonResponse); - Console.WriteLine("{0:HH:mm:ss.ffff}: Completed request {1} for {2}", - DateTime.Now, - requestId, - context.Request.Url.AbsolutePath); - } - } - - // It's annoying that LINQ to JSON doesn't have this, but... - private static readonly MethodInfo ToObjectMethod = typeof(JToken).GetMethod("ToObject", BindingFlags.Instance | BindingFlags.Public, null, new Type[0], new ParameterModifier[0]); - private static object ConvertToken(JToken token, Type targetType) - { - return ToObjectMethod.MakeGenericMethod(targetType).Invoke(token, null); - } - - private async Task ConvertToJson(Task task) - { - T result = await task; - return JsonConvert.SerializeObject(result); - } - - private async Task WriteErrorResponse(HttpListenerContext context, HttpStatusCode status, string text) - { - using (var response = context.Response) - { - response.StatusCode = (int)status; - response.ContentType = "text/plain"; - await WriteResponseBody(response, text); - } - } - - private async Task WriteResponseBody(HttpListenerResponse response, string text) - { - response.ContentEncoding = Encoding.UTF8; - byte[] data = Encoding.UTF8.GetBytes(text); - response.ContentLength64 = data.Length; - using (Stream output = response.OutputStream) - { - await output.WriteAsync(data, 0, data.Length); - } - } - - internal void AddTarget(string path, object target) - { - targets[path] = target; - } - } -} diff --git a/AsyncIntro/Code/AsyncHttpService/Program.cs b/AsyncIntro/Code/AsyncHttpService/Program.cs deleted file mode 100644 index 27edee14..00000000 --- a/AsyncIntro/Code/AsyncHttpService/Program.cs +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using StockMarket; -using System.Threading.Tasks; - -namespace AsyncHttpService -{ - internal class Program - { - private static void Main(string[] args) - { - var handler = new HttpJsonRpcHandler(8888, "async"); - handler.AddTarget("auth", new SimpleAuthenticationService()); - handler.AddTarget("portfolio", new SimpleStockPortfolioService()); - handler.AddTarget("price", new SimpleStockPriceService()); - - Task task = handler.Start(); - task.Wait(); - } - } -} diff --git a/AsyncIntro/Code/AsyncHttpService/Properties/AssemblyInfo.cs b/AsyncIntro/Code/AsyncHttpService/Properties/AssemblyInfo.cs deleted file mode 100644 index 13fda1a8..00000000 --- a/AsyncIntro/Code/AsyncHttpService/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("AsyncHttpService")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("AsyncHttpService")] -[assembly: AssemblyCopyright("Copyright © 2012")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("d5bb8719-7e05-4eb6-8737-23c3c5c6e429")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/AsyncIntro/Code/AsyncHttpService/packages.config b/AsyncIntro/Code/AsyncHttpService/packages.config deleted file mode 100644 index 093dcd23..00000000 --- a/AsyncIntro/Code/AsyncHttpService/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/AsyncIntro/Code/AsyncIntro.sln b/AsyncIntro/Code/AsyncIntro.sln deleted file mode 100644 index f4f59502..00000000 --- a/AsyncIntro/Code/AsyncIntro.sln +++ /dev/null @@ -1,50 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 2012 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StockViewer", "StockViewer\StockViewer.csproj", "{41A1F1EF-C1EC-44B9-AE08-F26BD53AEC08}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AsyncHttpService", "AsyncHttpService\AsyncHttpService.csproj", "{2B42D0F2-BA36-400A-9CDB-F5D9AF911D5A}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StockMarket", "StockMarket\StockMarket.csproj", "{A92C045E-6257-4BF6-9CFF-124A7466EAB0}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnderTheHood", "UnderTheHood\UnderTheHood.csproj", "{0979DF61-1C4A-4CF1-9235-DDDE6D79E33C}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Testing.NUnit", "Testing.NUnit\Testing.NUnit.csproj", "{1AB28F41-7C8A-4123-B36A-67823F997568}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Testing.MsTest", "Testing.MsTest\Testing.MsTest.csproj", "{99853F36-0AA7-43D1-B54D-DFAB0D8A98BA}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {41A1F1EF-C1EC-44B9-AE08-F26BD53AEC08}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {41A1F1EF-C1EC-44B9-AE08-F26BD53AEC08}.Debug|Any CPU.Build.0 = Debug|Any CPU - {41A1F1EF-C1EC-44B9-AE08-F26BD53AEC08}.Release|Any CPU.ActiveCfg = Release|Any CPU - {41A1F1EF-C1EC-44B9-AE08-F26BD53AEC08}.Release|Any CPU.Build.0 = Release|Any CPU - {2B42D0F2-BA36-400A-9CDB-F5D9AF911D5A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {2B42D0F2-BA36-400A-9CDB-F5D9AF911D5A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {2B42D0F2-BA36-400A-9CDB-F5D9AF911D5A}.Release|Any CPU.ActiveCfg = Release|Any CPU - {2B42D0F2-BA36-400A-9CDB-F5D9AF911D5A}.Release|Any CPU.Build.0 = Release|Any CPU - {A92C045E-6257-4BF6-9CFF-124A7466EAB0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {A92C045E-6257-4BF6-9CFF-124A7466EAB0}.Debug|Any CPU.Build.0 = Debug|Any CPU - {A92C045E-6257-4BF6-9CFF-124A7466EAB0}.Release|Any CPU.ActiveCfg = Release|Any CPU - {A92C045E-6257-4BF6-9CFF-124A7466EAB0}.Release|Any CPU.Build.0 = Release|Any CPU - {0979DF61-1C4A-4CF1-9235-DDDE6D79E33C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {0979DF61-1C4A-4CF1-9235-DDDE6D79E33C}.Debug|Any CPU.Build.0 = Debug|Any CPU - {0979DF61-1C4A-4CF1-9235-DDDE6D79E33C}.Release|Any CPU.ActiveCfg = Release|Any CPU - {0979DF61-1C4A-4CF1-9235-DDDE6D79E33C}.Release|Any CPU.Build.0 = Release|Any CPU - {1AB28F41-7C8A-4123-B36A-67823F997568}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {1AB28F41-7C8A-4123-B36A-67823F997568}.Debug|Any CPU.Build.0 = Debug|Any CPU - {1AB28F41-7C8A-4123-B36A-67823F997568}.Release|Any CPU.ActiveCfg = Release|Any CPU - {1AB28F41-7C8A-4123-B36A-67823F997568}.Release|Any CPU.Build.0 = Release|Any CPU - {99853F36-0AA7-43D1-B54D-DFAB0D8A98BA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {99853F36-0AA7-43D1-B54D-DFAB0D8A98BA}.Debug|Any CPU.Build.0 = Debug|Any CPU - {99853F36-0AA7-43D1-B54D-DFAB0D8A98BA}.Release|Any CPU.ActiveCfg = Release|Any CPU - {99853F36-0AA7-43D1-B54D-DFAB0D8A98BA}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/AsyncIntro/Code/StockMarket/HttpAuthenticationService.cs b/AsyncIntro/Code/StockMarket/HttpAuthenticationService.cs deleted file mode 100644 index 383f1e02..00000000 --- a/AsyncIntro/Code/StockMarket/HttpAuthenticationService.cs +++ /dev/null @@ -1,21 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Threading.Tasks; - -namespace StockMarket -{ - public class HttpAuthenticationService : IAuthenticationService - { - private readonly string url; - - public HttpAuthenticationService(string url) - { - this.url = url; - } - - public Task AuthenticateUserAsync(string user, string password) - { - return HttpJsonRpcServiceHelper.ExecuteRequestAsync(url, new { user, password }); - } - } -} diff --git a/AsyncIntro/Code/StockMarket/HttpJsonRpcServiceHelper.cs b/AsyncIntro/Code/StockMarket/HttpJsonRpcServiceHelper.cs deleted file mode 100644 index e70b8f58..00000000 --- a/AsyncIntro/Code/StockMarket/HttpJsonRpcServiceHelper.cs +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using Newtonsoft.Json; -using System.Net; -using System.Text; -using System.Threading.Tasks; - -namespace StockMarket -{ - internal static class HttpJsonRpcServiceHelper - { - internal static async Task ExecuteRequestAsync(string url, object request) - { - string body = JsonConvert.SerializeObject(request); - WebClient client = new WebClient(); - byte[] response = await client.UploadDataTaskAsync(url, Encoding.UTF8.GetBytes(body)); - string responseJson = Encoding.UTF8.GetString(response); - return JsonConvert.DeserializeObject(responseJson); - } - } -} diff --git a/AsyncIntro/Code/StockMarket/HttpPortfolioService.cs b/AsyncIntro/Code/StockMarket/HttpPortfolioService.cs deleted file mode 100644 index bafd68b1..00000000 --- a/AsyncIntro/Code/StockMarket/HttpPortfolioService.cs +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; -using System.Threading.Tasks; - -namespace StockMarket -{ - public class HttpPortfolioService : IStockPortfolioService - { - private readonly string url; - - public HttpPortfolioService(string url) - { - this.url = url; - } - - public Task> GetPortfolioAsync(Guid userId) - { - return HttpJsonRpcServiceHelper.ExecuteRequestAsync>(url, new { userId }); - } - } -} diff --git a/AsyncIntro/Code/StockMarket/HttpPriceService.cs b/AsyncIntro/Code/StockMarket/HttpPriceService.cs deleted file mode 100644 index 9d0dd9e9..00000000 --- a/AsyncIntro/Code/StockMarket/HttpPriceService.cs +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System.Threading.Tasks; - -namespace StockMarket -{ - public class HttpPriceService : IStockPriceService - { - private readonly string url; - - public HttpPriceService(string url) - { - this.url = url; - } - - public Task LookupPriceAsync(string ticker) - { - return HttpJsonRpcServiceHelper.ExecuteRequestAsync(url, new { ticker }); - } - } -} diff --git a/AsyncIntro/Code/StockMarket/IAuthenticationService.cs b/AsyncIntro/Code/StockMarket/IAuthenticationService.cs deleted file mode 100644 index 1027aac6..00000000 --- a/AsyncIntro/Code/StockMarket/IAuthenticationService.cs +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Threading.Tasks; - -namespace StockMarket -{ - public interface IAuthenticationService - { - /// - /// Authenticates the given user/password, returning the user's ID - /// as a GUID on success, or null on failure. - /// - Task AuthenticateUserAsync(string user, string password); - } -} diff --git a/AsyncIntro/Code/StockMarket/IStockPortfolioService.cs b/AsyncIntro/Code/StockMarket/IStockPortfolioService.cs deleted file mode 100644 index 265770c2..00000000 --- a/AsyncIntro/Code/StockMarket/IStockPortfolioService.cs +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; -using System.Threading.Tasks; - -namespace StockMarket -{ - public interface IStockPortfolioService - { - /// - /// Fetches the stock portfolio for the specified user ID. - /// - Task> GetPortfolioAsync(Guid userId); - } -} diff --git a/AsyncIntro/Code/StockMarket/IStockPriceService.cs b/AsyncIntro/Code/StockMarket/IStockPriceService.cs deleted file mode 100644 index bad5c932..00000000 --- a/AsyncIntro/Code/StockMarket/IStockPriceService.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System.Threading.Tasks; - -namespace StockMarket -{ - public interface IStockPriceService - { - /// - /// Looks up the price of shares for a given company stock ticker, returning - /// the known price or null if the ticker is unknown. - /// - Task LookupPriceAsync(string ticker); - } -} diff --git a/AsyncIntro/Code/StockMarket/Properties/AssemblyInfo.cs b/AsyncIntro/Code/StockMarket/Properties/AssemblyInfo.cs deleted file mode 100644 index 459ffe40..00000000 --- a/AsyncIntro/Code/StockMarket/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("StockMarket")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("StockMarket")] -[assembly: AssemblyCopyright("Copyright © 2012")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("fe30a5d3-e80d-4b2a-bf42-5cc0ba43b961")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/AsyncIntro/Code/StockMarket/RandomProvider.cs b/AsyncIntro/Code/StockMarket/RandomProvider.cs deleted file mode 100644 index 24f033cc..00000000 --- a/AsyncIntro/Code/StockMarket/RandomProvider.cs +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Threading; - -namespace StockMarket -{ - public static class RandomProvider - { - private static int seed = Environment.TickCount; - - private static ThreadLocal randomWrapper = new ThreadLocal(() => - new Random(Interlocked.Increment(ref seed)) - ); - - public static Random GetThreadRandom() - { - return randomWrapper.Value; - } - } -} diff --git a/AsyncIntro/Code/StockMarket/SimpleAuthenticationService.cs b/AsyncIntro/Code/StockMarket/SimpleAuthenticationService.cs deleted file mode 100644 index dd0991c7..00000000 --- a/AsyncIntro/Code/StockMarket/SimpleAuthenticationService.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Linq; -using System.Threading.Tasks; - -namespace StockMarket -{ - public sealed class SimpleAuthenticationService : IAuthenticationService - { - private readonly SimpleDataContext data; - - public SimpleAuthenticationService() - { - data = SimpleDataContext.DemoData; - } - - public async Task AuthenticateUserAsync(string user, string password) - { - await Task.Delay(5000); - - Guid? id = data.Users - .Where(u => u.UserName == user && u.Password == password) - .Select(u => (Guid?) u.Id) - .SingleOrDefault(); - return id; - } - } -} diff --git a/AsyncIntro/Code/StockMarket/SimpleDataContext.cs b/AsyncIntro/Code/StockMarket/SimpleDataContext.cs deleted file mode 100644 index e58ec313..00000000 --- a/AsyncIntro/Code/StockMarket/SimpleDataContext.cs +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; - -namespace StockMarket -{ - internal class SimpleDataContext - { - internal IEnumerable Users { get; private set; } - internal IEnumerable Holdings { get; private set; } - internal IEnumerable Prices { get; private set; } - - internal static SimpleDataContext DemoData { get; private set; } - - static SimpleDataContext() - { - DemoData = new SimpleDataContext(); - User jon = new User { UserName = "jon", Password = "c#5", Id = Guid.NewGuid() }; - User rob = new User { UserName = "rob", Password = "ruby", Id = Guid.NewGuid() }; - - DemoData.Users = new List { jon, rob }; - DemoData.Holdings = new List - { - new UserStockHolding { UserId = jon.Id, Ticker = "acme", Quantity = 20 }, - new UserStockHolding { UserId = jon.Id, Ticker = "abcd", Quantity = 5 }, - new UserStockHolding { UserId = jon.Id, Ticker = "efgh", Quantity = 10 }, - new UserStockHolding { UserId = jon.Id, Ticker = "ijkl", Quantity = 1 }, - new UserStockHolding { UserId = jon.Id, Ticker = "mnop", Quantity = 15 }, - new UserStockHolding { UserId = rob.Id, Ticker = "acme", Quantity = 5 }, - new UserStockHolding { UserId = rob.Id, Ticker = "xyz", Quantity = 10 }, - new UserStockHolding { UserId = rob.Id, Ticker = "tkpb", Quantity = 3 } - }; - - DemoData.Prices = new List - { - new StockPrice { Ticker = "acme", Price = 10.50m }, - new StockPrice { Ticker = "abcd", Price = 13.92m }, - new StockPrice { Ticker = "xyz", Price = 5.67m }, - new StockPrice { Ticker = "tkpb", Price = 58.95m }, - new StockPrice { Ticker = "ijkl", Price = 10m }, - new StockPrice { Ticker = "mnop", Price = 20m } - }; - } - } -} diff --git a/AsyncIntro/Code/StockMarket/SimpleStockPortfolioService.cs b/AsyncIntro/Code/StockMarket/SimpleStockPortfolioService.cs deleted file mode 100644 index 867405a6..00000000 --- a/AsyncIntro/Code/StockMarket/SimpleStockPortfolioService.cs +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; - -namespace StockMarket -{ - public sealed class SimpleStockPortfolioService : IStockPortfolioService - { - private readonly SimpleDataContext data; - - public SimpleStockPortfolioService() - { - data = SimpleDataContext.DemoData; - } - - public async Task> GetPortfolioAsync(Guid userId) - { - await Task.Delay(RandomProvider.GetThreadRandom().Next(2000)); - - var holdingsForUser = data.Holdings - .Where(h => h.UserId == userId) - .Select(h => new StockHolding(h.Ticker, h.Quantity)) - .ToList(); - return holdingsForUser; - - } - } -} diff --git a/AsyncIntro/Code/StockMarket/SimpleStockPriceService.cs b/AsyncIntro/Code/StockMarket/SimpleStockPriceService.cs deleted file mode 100644 index 8cde5cd7..00000000 --- a/AsyncIntro/Code/StockMarket/SimpleStockPriceService.cs +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System.Linq; -using System.Threading.Tasks; - -namespace StockMarket -{ - public sealed class SimpleStockPriceService : IStockPriceService - { - private readonly SimpleDataContext data; - - public SimpleStockPriceService() - { - data = SimpleDataContext.DemoData; - } - - public async Task LookupPriceAsync(string ticker) - { - if (ticker == "acme") - { - await Task.Delay(3000); - } - await Task.Delay(1000 + RandomProvider.GetThreadRandom().Next(1000)); - - decimal? price = data.Prices - .Where(p => p.Ticker == ticker) - .Select(p => (decimal?)p.Price) - .SingleOrDefault(); - return price; - } - } -} diff --git a/AsyncIntro/Code/StockMarket/StockHolding.cs b/AsyncIntro/Code/StockMarket/StockHolding.cs deleted file mode 100644 index 12aad77b..00000000 --- a/AsyncIntro/Code/StockMarket/StockHolding.cs +++ /dev/null @@ -1,18 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -namespace StockMarket -{ - /// - /// A simple ticker/quantity pair representing a number of shares in a particular company. - /// - public class StockHolding - { - public string Ticker { get; private set; } - public int Quantity { get; private set; } - - public StockHolding(string ticker, int quantity) - { - Ticker = ticker; - Quantity = quantity; - } - } -} diff --git a/AsyncIntro/Code/StockMarket/StockMarket.csproj b/AsyncIntro/Code/StockMarket/StockMarket.csproj deleted file mode 100644 index 200cc756..00000000 --- a/AsyncIntro/Code/StockMarket/StockMarket.csproj +++ /dev/null @@ -1,74 +0,0 @@ - - - - - Debug - AnyCPU - {A92C045E-6257-4BF6-9CFF-124A7466EAB0} - Library - Properties - StockMarket - StockMarket - v4.5 - 512 - - - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - ..\packages\Newtonsoft.Json.4.5.8\lib\net40\Newtonsoft.Json.dll - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/AsyncIntro/Code/StockMarket/StockPrice.cs b/AsyncIntro/Code/StockMarket/StockPrice.cs deleted file mode 100644 index 953ae4e1..00000000 --- a/AsyncIntro/Code/StockMarket/StockPrice.cs +++ /dev/null @@ -1,9 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -namespace StockMarket -{ - internal sealed class StockPrice - { - internal string Ticker { get; set; } - internal decimal Price { get; set; } - } -} diff --git a/AsyncIntro/Code/StockMarket/User.cs b/AsyncIntro/Code/StockMarket/User.cs deleted file mode 100644 index ad807ed0..00000000 --- a/AsyncIntro/Code/StockMarket/User.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace StockMarket -{ - internal sealed class User - { - internal string UserName { get; set; } - internal Guid Id { get; set; } - // No, we would never *really* do this... - internal string Password { get; set; } - } -} diff --git a/AsyncIntro/Code/StockMarket/UserStockHolding.cs b/AsyncIntro/Code/StockMarket/UserStockHolding.cs deleted file mode 100644 index a0b5ea1c..00000000 --- a/AsyncIntro/Code/StockMarket/UserStockHolding.cs +++ /dev/null @@ -1,12 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace StockMarket -{ - internal sealed class UserStockHolding - { - internal Guid UserId { get; set; } - internal string Ticker { get; set; } - internal int Quantity { get; set; } - } -} diff --git a/AsyncIntro/Code/StockMarket/packages.config b/AsyncIntro/Code/StockMarket/packages.config deleted file mode 100644 index 093dcd23..00000000 --- a/AsyncIntro/Code/StockMarket/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/AsyncIntro/Code/StockService/Program.cs b/AsyncIntro/Code/StockService/Program.cs deleted file mode 100644 index 2be25d91..00000000 --- a/AsyncIntro/Code/StockService/Program.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace StockService -{ - class Program - { - static void Main(string[] args) - { - } - } -} diff --git a/AsyncIntro/Code/StockService/Properties/AssemblyInfo.cs b/AsyncIntro/Code/StockService/Properties/AssemblyInfo.cs deleted file mode 100644 index d4539c1b..00000000 --- a/AsyncIntro/Code/StockService/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("StockService")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("StockService")] -[assembly: AssemblyCopyright("Copyright © 2012")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("c14e6384-0367-4c21-832a-ec2203e40151")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/AsyncIntro/Code/StockService/StockService.csproj b/AsyncIntro/Code/StockService/StockService.csproj deleted file mode 100644 index 812d5c50..00000000 --- a/AsyncIntro/Code/StockService/StockService.csproj +++ /dev/null @@ -1,60 +0,0 @@ - - - - - Debug - AnyCPU - {A9491661-5A1A-4EA7-9E60-5DF07004DD88} - Exe - Properties - StockService - StockService - v4.5 - 512 - - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - false - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - false - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/AsyncIntro/Code/StockService/app.config b/AsyncIntro/Code/StockService/app.config deleted file mode 100644 index c5e1daef..00000000 --- a/AsyncIntro/Code/StockService/app.config +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/AsyncIntro/Code/StockViewer/App.config b/AsyncIntro/Code/StockViewer/App.config deleted file mode 100644 index 8e156463..00000000 --- a/AsyncIntro/Code/StockViewer/App.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/AsyncIntro/Code/StockViewer/MagicOrdering.cs b/AsyncIntro/Code/StockViewer/MagicOrdering.cs deleted file mode 100644 index a338073a..00000000 --- a/AsyncIntro/Code/StockViewer/MagicOrdering.cs +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; - -namespace StockViewer -{ - public static class TaskExtensions - { - public static IEnumerable> InCompletionOrder(this IEnumerable> source) - { - var inputs = source.ToList(); - var boxes = inputs.Select(x => new TaskCompletionSource()).ToList(); - - int currentIndex = -1; - foreach (var task in inputs) - { - task.ContinueWith(completed => - { - var nextBox = boxes[Interlocked.Increment(ref currentIndex)]; - PropagateResult(completed, nextBox); - }, TaskContinuationOptions.ExecuteSynchronously); - } - return boxes.Select(box => box.Task); - } - - /// - /// Propagates the status of the given task (which must be completed) to a task completion source - /// (which should not be). - /// - private static void PropagateResult(Task completedTask, - TaskCompletionSource completionSource) - { - switch (completedTask.Status) - { - case TaskStatus.Canceled: - completionSource.TrySetCanceled(); - break; - case TaskStatus.Faulted: - completionSource.TrySetException(completedTask.Exception.InnerExceptions); - break; - case TaskStatus.RanToCompletion: - completionSource.TrySetResult(completedTask.Result); - break; - default: - throw new ArgumentException("Task was not completed"); - } - } - } -} diff --git a/AsyncIntro/Code/StockViewer/Program.cs b/AsyncIntro/Code/StockViewer/Program.cs deleted file mode 100644 index d6a47c6b..00000000 --- a/AsyncIntro/Code/StockViewer/Program.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using StockMarket; -using System; -using System.Windows.Forms; - -namespace StockViewer -{ - static class Program - { - /// - /// The main entry point for the application. - /// - [STAThread] - static void Main() - { - IAuthenticationService authService = new HttpAuthenticationService( - "http://localhost:8888/async/auth/AuthenticateUserAsync"); - IStockPortfolioService portfolioService = new HttpPortfolioService( - "http://localhost:8888/async/portfolio/GetPortfolioAsync"); - IStockPriceService priceService = new HttpPriceService( - "http://localhost:8888/async/price/LookupPriceAsync"); - - //IAuthenticationService authService = new SimpleAuthenticationService(); - //IStockPortfolioService portfolioService = new SimpleStockPortfolioService(); - //IStockPriceService priceService = new SimpleStockPriceService(); - - Application.EnableVisualStyles(); - Application.SetCompatibleTextRenderingDefault(false); - Application.Run(new StockViewerForm(authService, portfolioService, priceService)); - } - } -} diff --git a/AsyncIntro/Code/StockViewer/Properties/AssemblyInfo.cs b/AsyncIntro/Code/StockViewer/Properties/AssemblyInfo.cs deleted file mode 100644 index 795c9eb5..00000000 --- a/AsyncIntro/Code/StockViewer/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("StockViewer")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("StockViewer")] -[assembly: AssemblyCopyright("Copyright © 2012")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("f58216e9-cd54-4469-8a41-c637bd1cd271")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/AsyncIntro/Code/StockViewer/Properties/Resources.Designer.cs b/AsyncIntro/Code/StockViewer/Properties/Resources.Designer.cs deleted file mode 100644 index 921e0fba..00000000 --- a/AsyncIntro/Code/StockViewer/Properties/Resources.Designer.cs +++ /dev/null @@ -1,71 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.17929 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace StockViewer.Properties -{ - - - /// - /// A strongly-typed resource class, for looking up localized strings, etc. - /// - // This class was auto-generated by the StronglyTypedResourceBuilder - // class via a tool like ResGen or Visual Studio. - // To add or remove a member, edit your .ResX file then rerun ResGen - // with the /str option, or rebuild your VS project. - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - internal class Resources - { - - private static global::System.Resources.ResourceManager resourceMan; - - private static global::System.Globalization.CultureInfo resourceCulture; - - [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] - internal Resources() - { - } - - /// - /// Returns the cached ResourceManager instance used by this class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Resources.ResourceManager ResourceManager - { - get - { - if ((resourceMan == null)) - { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("StockViewer.Properties.Resources", typeof(Resources).Assembly); - resourceMan = temp; - } - return resourceMan; - } - } - - /// - /// Overrides the current thread's CurrentUICulture property for all - /// resource lookups using this strongly typed resource class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Globalization.CultureInfo Culture - { - get - { - return resourceCulture; - } - set - { - resourceCulture = value; - } - } - } -} diff --git a/AsyncIntro/Code/StockViewer/Properties/Resources.resx b/AsyncIntro/Code/StockViewer/Properties/Resources.resx deleted file mode 100644 index af7dbebb..00000000 --- a/AsyncIntro/Code/StockViewer/Properties/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/AsyncIntro/Code/StockViewer/Properties/Settings.Designer.cs b/AsyncIntro/Code/StockViewer/Properties/Settings.Designer.cs deleted file mode 100644 index 4af5dbae..00000000 --- a/AsyncIntro/Code/StockViewer/Properties/Settings.Designer.cs +++ /dev/null @@ -1,30 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.17929 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace StockViewer.Properties -{ - - - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] - internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase - { - - private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); - - public static Settings Default - { - get - { - return defaultInstance; - } - } - } -} diff --git a/AsyncIntro/Code/StockViewer/Properties/Settings.settings b/AsyncIntro/Code/StockViewer/Properties/Settings.settings deleted file mode 100644 index 39645652..00000000 --- a/AsyncIntro/Code/StockViewer/Properties/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/AsyncIntro/Code/StockViewer/StockViewer.csproj b/AsyncIntro/Code/StockViewer/StockViewer.csproj deleted file mode 100644 index 7d2819ca..00000000 --- a/AsyncIntro/Code/StockViewer/StockViewer.csproj +++ /dev/null @@ -1,99 +0,0 @@ - - - - - Debug - AnyCPU - {41A1F1EF-C1EC-44B9-AE08-F26BD53AEC08} - WinExe - Properties - StockViewer - StockViewer - v4.5 - 512 - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - ..\packages\Newtonsoft.Json.4.5.8\lib\net40\Newtonsoft.Json.dll - - - - - - - - - - - - - - - - - - Form - - - StockViewerForm.cs - - - ResXFileCodeGenerator - Resources.Designer.cs - Designer - - - True - Resources.resx - - - StockViewerForm.cs - - - - SettingsSingleFileGenerator - Settings.Designer.cs - - - True - Settings.settings - True - - - - - - - - {a92c045e-6257-4bf6-9cff-124a7466eab0} - StockMarket - - - - - \ No newline at end of file diff --git a/AsyncIntro/Code/StockViewer/StockViewerForm.Designer.cs b/AsyncIntro/Code/StockViewer/StockViewerForm.Designer.cs deleted file mode 100644 index bc00085d..00000000 --- a/AsyncIntro/Code/StockViewer/StockViewerForm.Designer.cs +++ /dev/null @@ -1,239 +0,0 @@ -namespace StockViewer -{ - partial class StockViewerForm - { - /// - /// Required designer variable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Clean up any resources being used. - /// - /// true if managed resources should be disposed; otherwise, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - System.Windows.Forms.TableLayoutPanel tableLayoutPanel1; - System.Windows.Forms.TableLayoutPanel tableLayoutPanel2; - System.Windows.Forms.Label label1; - System.Windows.Forms.Label label2; - System.Windows.Forms.ColumnHeader stockColumn; - System.Windows.Forms.ColumnHeader quantityColumn; - System.Windows.Forms.ColumnHeader priceColumn; - System.Windows.Forms.ColumnHeader valueColumn; - this.fetchButton = new System.Windows.Forms.Button(); - this.userTextBox = new System.Windows.Forms.TextBox(); - this.passwordTextBox = new System.Windows.Forms.TextBox(); - this.splitContainer1 = new System.Windows.Forms.SplitContainer(); - this.portfolioListView = new System.Windows.Forms.ListView(); - this.debugLog = new System.Windows.Forms.TextBox(); - tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel(); - tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel(); - label1 = new System.Windows.Forms.Label(); - label2 = new System.Windows.Forms.Label(); - stockColumn = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); - quantityColumn = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); - priceColumn = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); - valueColumn = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); - tableLayoutPanel1.SuspendLayout(); - tableLayoutPanel2.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); - this.splitContainer1.Panel1.SuspendLayout(); - this.splitContainer1.Panel2.SuspendLayout(); - this.splitContainer1.SuspendLayout(); - this.SuspendLayout(); - // - // tableLayoutPanel1 - // - tableLayoutPanel1.ColumnCount = 1; - tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F)); - tableLayoutPanel1.Controls.Add(tableLayoutPanel2, 0, 0); - tableLayoutPanel1.Controls.Add(this.splitContainer1, 0, 1); - tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill; - tableLayoutPanel1.Location = new System.Drawing.Point(0, 0); - tableLayoutPanel1.Name = "tableLayoutPanel1"; - tableLayoutPanel1.RowCount = 2; - tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); - tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F)); - tableLayoutPanel1.Size = new System.Drawing.Size(629, 506); - tableLayoutPanel1.TabIndex = 0; - // - // tableLayoutPanel2 - // - tableLayoutPanel2.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) - | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - tableLayoutPanel2.AutoSize = true; - tableLayoutPanel2.ColumnCount = 2; - tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - tableLayoutPanel2.Controls.Add(label1, 0, 0); - tableLayoutPanel2.Controls.Add(label2, 0, 1); - tableLayoutPanel2.Controls.Add(this.fetchButton, 0, 2); - tableLayoutPanel2.Controls.Add(this.userTextBox, 1, 0); - tableLayoutPanel2.Controls.Add(this.passwordTextBox, 1, 1); - tableLayoutPanel2.Location = new System.Drawing.Point(3, 3); - tableLayoutPanel2.Name = "tableLayoutPanel2"; - tableLayoutPanel2.RowCount = 3; - tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle()); - tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle()); - tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle()); - tableLayoutPanel2.Size = new System.Drawing.Size(623, 81); - tableLayoutPanel2.TabIndex = 0; - // - // label1 - // - label1.Anchor = System.Windows.Forms.AnchorStyles.Left; - label1.AutoSize = true; - label1.Location = new System.Drawing.Point(3, 6); - label1.Name = "label1"; - label1.Size = new System.Drawing.Size(29, 13); - label1.TabIndex = 0; - label1.Text = "User"; - label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; - // - // label2 - // - label2.Anchor = System.Windows.Forms.AnchorStyles.Left; - label2.AutoSize = true; - label2.Location = new System.Drawing.Point(3, 32); - label2.Name = "label2"; - label2.Size = new System.Drawing.Size(53, 13); - label2.TabIndex = 1; - label2.Text = "Password"; - label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; - // - // fetchButton - // - this.fetchButton.AutoSize = true; - tableLayoutPanel2.SetColumnSpan(this.fetchButton, 2); - this.fetchButton.Location = new System.Drawing.Point(3, 55); - this.fetchButton.Name = "fetchButton"; - this.fetchButton.Size = new System.Drawing.Size(78, 23); - this.fetchButton.TabIndex = 3; - this.fetchButton.Text = "Fetch stocks"; - this.fetchButton.UseVisualStyleBackColor = true; - this.fetchButton.Click += new System.EventHandler(this.FetchStocks); - // - // userTextBox - // - this.userTextBox.Location = new System.Drawing.Point(62, 3); - this.userTextBox.MaxLength = 30; - this.userTextBox.Name = "userTextBox"; - this.userTextBox.Size = new System.Drawing.Size(100, 20); - this.userTextBox.TabIndex = 1; - // - // passwordTextBox - // - this.passwordTextBox.Location = new System.Drawing.Point(62, 29); - this.passwordTextBox.MaxLength = 30; - this.passwordTextBox.Name = "passwordTextBox"; - this.passwordTextBox.Size = new System.Drawing.Size(100, 20); - this.passwordTextBox.TabIndex = 2; - this.passwordTextBox.UseSystemPasswordChar = true; - // - // splitContainer1 - // - this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill; - this.splitContainer1.Location = new System.Drawing.Point(3, 90); - this.splitContainer1.Name = "splitContainer1"; - // - // splitContainer1.Panel1 - // - this.splitContainer1.Panel1.Controls.Add(this.portfolioListView); - // - // splitContainer1.Panel2 - // - this.splitContainer1.Panel2.Controls.Add(this.debugLog); - this.splitContainer1.Size = new System.Drawing.Size(623, 413); - this.splitContainer1.SplitterDistance = 309; - this.splitContainer1.TabIndex = 2; - // - // portfolioListView - // - this.portfolioListView.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { - stockColumn, - quantityColumn, - priceColumn, - valueColumn}); - this.portfolioListView.Dock = System.Windows.Forms.DockStyle.Fill; - this.portfolioListView.Location = new System.Drawing.Point(0, 0); - this.portfolioListView.Name = "portfolioListView"; - this.portfolioListView.Size = new System.Drawing.Size(309, 413); - this.portfolioListView.TabIndex = 1; - this.portfolioListView.UseCompatibleStateImageBehavior = false; - this.portfolioListView.View = System.Windows.Forms.View.Details; - // - // stockColumn - // - stockColumn.Text = "Stock"; - // - // quantityColumn - // - quantityColumn.Text = "Quantity"; - // - // priceColumn - // - priceColumn.Text = "Price"; - // - // valueColumn - // - valueColumn.Text = "Value"; - // - // debugLog - // - this.debugLog.BackColor = System.Drawing.SystemColors.Window; - this.debugLog.Dock = System.Windows.Forms.DockStyle.Fill; - this.debugLog.Location = new System.Drawing.Point(0, 0); - this.debugLog.Multiline = true; - this.debugLog.Name = "debugLog"; - this.debugLog.ReadOnly = true; - this.debugLog.Size = new System.Drawing.Size(310, 413); - this.debugLog.TabIndex = 1; - // - // StockViewerForm - // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(629, 506); - this.Controls.Add(tableLayoutPanel1); - this.Name = "StockViewerForm"; - this.Text = "Stock Viewer"; - tableLayoutPanel1.ResumeLayout(false); - tableLayoutPanel1.PerformLayout(); - tableLayoutPanel2.ResumeLayout(false); - tableLayoutPanel2.PerformLayout(); - this.splitContainer1.Panel1.ResumeLayout(false); - this.splitContainer1.Panel2.ResumeLayout(false); - this.splitContainer1.Panel2.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit(); - this.splitContainer1.ResumeLayout(false); - this.ResumeLayout(false); - - } - - #endregion - - private System.Windows.Forms.TextBox userTextBox; - private System.Windows.Forms.TextBox passwordTextBox; - private System.Windows.Forms.Button fetchButton; - private System.Windows.Forms.SplitContainer splitContainer1; - private System.Windows.Forms.ListView portfolioListView; - private System.Windows.Forms.TextBox debugLog; - } -} \ No newline at end of file diff --git a/AsyncIntro/Code/StockViewer/StockViewerForm.cs b/AsyncIntro/Code/StockViewer/StockViewerForm.cs deleted file mode 100644 index ee69cbdc..00000000 --- a/AsyncIntro/Code/StockViewer/StockViewerForm.cs +++ /dev/null @@ -1,175 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using StockMarket; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using System.Windows.Forms; - -namespace StockViewer -{ - public partial class StockViewerForm : Form - { - private readonly IAuthenticationService authenticationService; - private readonly IStockPortfolioService portfolioService; - private readonly IStockPriceService priceService; - - // Preserved for the sake of the Windows Forms designer - public StockViewerForm() : this(null, null, null) - { - } - - public StockViewerForm(IAuthenticationService authenticationService, - IStockPortfolioService portfolioService, - IStockPriceService priceService) - { - this.authenticationService = authenticationService; - this.portfolioService = portfolioService; - this.priceService = priceService; - InitializeComponent(); - } - - private async void FetchStocks(object sender, EventArgs e) - { - debugLog.Clear(); - portfolioListView.Items.Clear(); - Task task = FetchStocksAsync(); - Log("FetchStocksAsync has returned - status {0}", task.Status); - await task; - Log("FetchStocksAsync task completed - status {0}", task.Status); - } - -#if PARALLEL - private async Task FetchStocksAsync() - { - try - { - fetchButton.Enabled = false; - - Log("Authenticating"); - Task authTask = authenticationService.AuthenticateUserAsync - (userTextBox.Text, passwordTextBox.Text); - Log("Authentication started"); - Guid? userId = await authTask; - - Log("Authenticated - GUID={0}", userId); - if (userId == null) - { - Log("Authentication failure - abort."); - MessageBox.Show("User unknown, or incorrect password", - "Authentication failure", - MessageBoxButtons.OK, MessageBoxIcon.Error); - return; - } - - Log("Fetching holdings"); - List holdings = - await portfolioService.GetPortfolioAsync(userId.Value); - Log("Received {0} holdings", holdings.Count); - - Log("Fetching prices"); - decimal totalWorth = await FetchPricesParallelAsync(holdings); - Log("Fetched all prices"); - AddPortfolioEntry("TOTAL", null, null, totalWorth); - } - finally - { - fetchButton.Enabled = true; - } - } - - private async Task FetchPricesParallelAsync(IEnumerable holdings) - { - decimal totalWorth = 0m; - - var tasks = holdings.Select( - async holding => new { holding, - price = await priceService.LookupPriceAsync(holding.Ticker) }) - .ToList(); - - foreach (var task in tasks.InCompletionOrder()) - { - var result = await task; - var holding = result.holding; - var price = result.price; - Log("Price of {0}: {1}", holding.Ticker, price); - - AddPortfolioEntry( - holding.Ticker, holding.Quantity, - price, holding.Quantity * price); - if (price != null) - { - totalWorth += holding.Quantity * price.Value; - } - } - return totalWorth; - } -#else - private async Task FetchStocksAsync() - { - try - { - fetchButton.Enabled = false; - - Log("Authenticating"); - Task authTask = authenticationService.AuthenticateUserAsync - (userTextBox.Text, passwordTextBox.Text); - Log("Authentication started"); - Guid? userId = await authTask; - - Log("Authenticated - GUID={0}", userId); - if (userId == null) - { - Log("Authentication failure - abort."); - MessageBox.Show("User unknown, or incorrect password", - "Authentication failure", - MessageBoxButtons.OK, MessageBoxIcon.Error); - return; - } - - Log("Fetching holdings"); - List holdings = - await portfolioService.GetPortfolioAsync(userId.Value); - Log("Received {0} holdings", holdings.Count); - - Log("Fetching prices"); - decimal totalWorth = 0m; - foreach (var holding in holdings) - { - decimal? price = await priceService.LookupPriceAsync(holding.Ticker); - Log("Price of {0}: {1}", holding.Ticker, price); - - AddPortfolioEntry( - holding.Ticker, holding.Quantity, - price, holding.Quantity * price); - if (price != null) - { - totalWorth += holding.Quantity * price.Value; - } - } - Log("Fetched all prices"); - AddPortfolioEntry("TOTAL", null, null, totalWorth); - } - finally - { - fetchButton.Enabled = true; - } - } - -#endif - - private void AddPortfolioEntry(string ticker, int? quantity, - decimal? price, decimal? value) - { - portfolioListView.Items.Add(new ListViewItem(new[] { ticker, quantity.ToString(), - price.ToString(), value.ToString() })); - } - - private void Log(string format, params object[] values) - { - string text = string.Format(format, values); - string line = string.Format("{0:HH:mm:ss.fff}: {1}\r\n", DateTime.Now, text); - debugLog.AppendText(line); - } - } -} diff --git a/AsyncIntro/Code/StockViewer/StockViewerForm.resx b/AsyncIntro/Code/StockViewer/StockViewerForm.resx deleted file mode 100644 index b62a2ad9..00000000 --- a/AsyncIntro/Code/StockViewer/StockViewerForm.resx +++ /dev/null @@ -1,144 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - \ No newline at end of file diff --git a/AsyncIntro/Code/StockViewer/packages.config b/AsyncIntro/Code/StockViewer/packages.config deleted file mode 100644 index 093dcd23..00000000 --- a/AsyncIntro/Code/StockViewer/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/AsyncIntro/Code/Testing.MsTest/MagicOrdering.cs b/AsyncIntro/Code/Testing.MsTest/MagicOrdering.cs deleted file mode 100644 index 521e3ad5..00000000 --- a/AsyncIntro/Code/Testing.MsTest/MagicOrdering.cs +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; - -namespace Testing.MsTest -{ - // This is the same as the code in the StockViewer project; I just didn't want the dependency. - public static class TaskExtensions - { - public static IEnumerable> InCompletionOrder(this IEnumerable> source) - { - var inputs = source.ToList(); - var boxes = inputs.Select(x => new TaskCompletionSource()).ToList(); - - int currentIndex = -1; - foreach (var task in inputs) - { - task.ContinueWith(completed => - { - var nextBox = boxes[Interlocked.Increment(ref currentIndex)]; - PropagateResult(completed, nextBox); - }, TaskContinuationOptions.ExecuteSynchronously); - } - return boxes.Select(box => box.Task); - } - - /// - /// Propagates the status of the given task (which must be completed) to a task completion source - /// (which should not be). - /// - private static void PropagateResult(Task completedTask, - TaskCompletionSource completionSource) - { - switch (completedTask.Status) - { - case TaskStatus.Canceled: - completionSource.TrySetCanceled(); - break; - case TaskStatus.Faulted: - completionSource.TrySetException(completedTask.Exception.InnerExceptions); - break; - case TaskStatus.RanToCompletion: - completionSource.TrySetResult(completedTask.Result); - break; - default: - throw new ArgumentException("Task was not completed"); - } - } - } -} diff --git a/AsyncIntro/Code/Testing.MsTest/Properties/AssemblyInfo.cs b/AsyncIntro/Code/Testing.MsTest/Properties/AssemblyInfo.cs deleted file mode 100644 index 848e9acc..00000000 --- a/AsyncIntro/Code/Testing.MsTest/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("Testing.MsTest")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("Testing.MsTest")] -[assembly: AssemblyCopyright("Copyright © 2013")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("5dd55fcf-41ce-433f-98c6-4262a72eed45")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/AsyncIntro/Code/Testing.MsTest/StockBroker.cs b/AsyncIntro/Code/Testing.MsTest/StockBroker.cs deleted file mode 100644 index 8529ea13..00000000 --- a/AsyncIntro/Code/Testing.MsTest/StockBroker.cs +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -#define PARALLEL - -using System.Linq; -using StockMarket; -using System; -using System.Security.Authentication; -using System.Threading.Tasks; - -namespace Testing.MsTest -{ - public class StockBroker - { - private readonly IAuthenticationService authenticationService; - private readonly IStockPortfolioService portfolioService; - private readonly IStockPriceService priceService; - - public StockBroker(IAuthenticationService authenticationService, - IStockPortfolioService portfolioService, - IStockPriceService priceService) - { - this.authenticationService = authenticationService; - this.portfolioService = portfolioService; - this.priceService = priceService; - } - - public Task CalculateWorthAsync(string user, string password) - { - if (user == null) - { - throw new ArgumentNullException("user"); - } - if (password == null) - { - throw new ArgumentNullException("password"); - } - return CalculateWorthAsyncImpl(user, password); - } - - private async Task CalculateWorthAsyncImpl(string user, string password) - { - var userId = await authenticationService.AuthenticateUserAsync(user, password); - if (userId == null) - { - throw new AuthenticationException("Bad username or password"); - } - - var portfolio = await portfolioService.GetPortfolioAsync(userId.Value); - - decimal total = 0m; - -#if !PARALLEL -#region Serial implementation - foreach (var item in portfolio) - { - var price = await priceService.LookupPriceAsync(item.Ticker); - if (price != null) - { - total += price.Value * item.Quantity; - } - } -#endregion -#else -#region Parallel implementation - var tasks = portfolio.Select(async holding => new - { - holding, - price = await priceService.LookupPriceAsync(holding.Ticker) - }).ToList(); - - foreach (var task in tasks.InCompletionOrder()) - { - var result = await task; - var holding = result.holding; - var price = result.price; - if (price != null) - { - total += holding.Quantity * price.Value; - } - } -#endregion -#endif - return total; - } - } -} diff --git a/AsyncIntro/Code/Testing.MsTest/StockBrokerTest.cs b/AsyncIntro/Code/Testing.MsTest/StockBrokerTest.cs deleted file mode 100644 index 2f8795af..00000000 --- a/AsyncIntro/Code/Testing.MsTest/StockBrokerTest.cs +++ /dev/null @@ -1,132 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using Microsoft.VisualStudio.TestTools.UnitTesting; -using Rhino.Mocks; -using StockMarket; -using System; -using System.Collections.Generic; -using System.Security.Authentication; -using System.Threading.Tasks; - -namespace Testing.MsTest -{ - [TestClass] - public class StockBrokerTest - { - private StockBroker broker; - private IAuthenticationService authService; - private IStockPortfolioService portfolioService; - private IStockPriceService priceService; - - [TestInitialize] - public void SetUp() - { - authService = MockRepository.GenerateStub(); - portfolioService = MockRepository.GenerateStub(); - priceService = MockRepository.GenerateStub(); - broker = new StockBroker(authService, portfolioService, priceService); - } - - [TestMethod] - [ExpectedException(typeof(ArgumentNullException))] - public void CalculateNetWorthAsync_NullUser_ThrowsImmediately() - { - broker.CalculateWorthAsync(null, "pass"); - } - - [TestMethod] - [ExpectedException(typeof(ArgumentNullException))] - public void CalculateNetWorthAsync_NullPassword_ThrowsImmediately() - { - broker.CalculateWorthAsync("jon", null); - } - - [TestMethod] - public async Task CalculateNetWorthAsync_AuthenticationFailure_ThrowsDelayed() - { - authService.Stub(x => x.AuthenticateUserAsync("jon", "pass")).Return(Delayed(100, null)); - - await AssertThrows(broker.CalculateWorthAsync("jon", "pass")); - } - - [TestMethod] - public async Task CalculateNetWorth_EmptyPortfolio() - { - var guid = Guid.NewGuid(); - authService.Stub(x => x.AuthenticateUserAsync("jon", "pass")).Return(Delayed(100, guid)); - portfolioService.Stub(x => x.GetPortfolioAsync(guid)).Return(Delayed(200, new List())); - - Assert.AreEqual(0m, await broker.CalculateWorthAsync("jon", "pass")); - } - - [TestMethod] - public async Task CalculateNetWorth_SingleItem() - { - var guid = Guid.NewGuid(); - var portfolio = new List - { - new StockHolding("FOO", 10) - }; - - authService.Stub(x => x.AuthenticateUserAsync("jon", "pass")).Return(Delayed(100, guid)); - portfolioService.Stub(x => x.GetPortfolioAsync(guid)).Return(Delayed(200, portfolio)); - priceService.Stub(x => x.LookupPriceAsync("FOO")).Return(Delayed(300, 34.25m)); - - Assert.AreEqual(10 * 34.25m, await broker.CalculateWorthAsync("jon", "pass")); - } - - [TestMethod] - public async Task CalculateNetWorth_MultipleItems() - { - var guid = Guid.NewGuid(); - var portfolio = new List - { - new StockHolding("FOO", 10), - new StockHolding("BAR", 5) - }; - - authService.Stub(x => x.AuthenticateUserAsync("jon", "pass")).Return(Delayed(0, guid)); - portfolioService.Stub(x => x.GetPortfolioAsync(guid)).Return(Delayed(100, portfolio)); - priceService.Stub(x => x.LookupPriceAsync("FOO")).Return(Delayed(200, 20m)); - priceService.Stub(x => x.LookupPriceAsync("BAR")).Return(Delayed(100, 10m)); - - Assert.AreEqual(10 * 20m + 5 * 10m, await broker.CalculateWorthAsync("jon", "pass")); - } - - [TestMethod] - public async Task CalculateNetWorth_MultipleItems_IncludingNullValue() - { - var guid = Guid.NewGuid(); - var portfolio = new List - { - new StockHolding("FOO", 10), - new StockHolding("BAR", 5) - }; - - authService.Stub(x => x.AuthenticateUserAsync("jon", "pass")).Return(Delayed(0, guid)); - portfolioService.Stub(x => x.GetPortfolioAsync(guid)).Return(Delayed(100, portfolio)); - priceService.Stub(x => x.LookupPriceAsync("FOO")).Return(Delayed(200, 20m)); - priceService.Stub(x => x.LookupPriceAsync("BAR")).Return(Delayed(100, null)); - - Assert.AreEqual(10 * 20m, await broker.CalculateWorthAsync("jon", "pass")); - } - - private async Task Delayed(int milliseconds, T result) - { - await Task.Delay(milliseconds); - return result; - } - - private async Task AssertThrows(Task task) where TException : Exception - { - try - { - await task; - Assert.Fail("Expected exception of type " + typeof(TException)); - } - catch (TException) - { - // Expected - } - } - } -} diff --git a/AsyncIntro/Code/Testing.MsTest/Testing.MsTest.csproj b/AsyncIntro/Code/Testing.MsTest/Testing.MsTest.csproj deleted file mode 100644 index f26e2e08..00000000 --- a/AsyncIntro/Code/Testing.MsTest/Testing.MsTest.csproj +++ /dev/null @@ -1,68 +0,0 @@ - - - - - Debug - AnyCPU - {99853F36-0AA7-43D1-B54D-DFAB0D8A98BA} - Library - Properties - Testing.MsTest - Testing.MsTest - v4.5 - 512 - - - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - - ..\packages\RhinoMocks.3.6.1\lib\net\Rhino.Mocks.dll - - - - - - - - - - - - - - - - - - - - - {a92c045e-6257-4bf6-9cff-124a7466eab0} - StockMarket - - - - - \ No newline at end of file diff --git a/AsyncIntro/Code/Testing.MsTest/packages.config b/AsyncIntro/Code/Testing.MsTest/packages.config deleted file mode 100644 index a1076495..00000000 --- a/AsyncIntro/Code/Testing.MsTest/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/AsyncIntro/Code/Testing.NUnit/MagicOrdering.cs b/AsyncIntro/Code/Testing.NUnit/MagicOrdering.cs deleted file mode 100644 index 9a8c4286..00000000 --- a/AsyncIntro/Code/Testing.NUnit/MagicOrdering.cs +++ /dev/null @@ -1,52 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; - -namespace Testing.NUnit -{ - // This is the same as the code in the StockViewer project; I just didn't want the dependency. - public static class TaskExtensions - { - public static IEnumerable> InCompletionOrder(this IEnumerable> source) - { - var inputs = source.ToList(); - var boxes = inputs.Select(x => new TaskCompletionSource()).ToList(); - - int currentIndex = -1; - foreach (var task in inputs) - { - task.ContinueWith(completed => - { - var nextBox = boxes[Interlocked.Increment(ref currentIndex)]; - PropagateResult(completed, nextBox); - }, TaskContinuationOptions.ExecuteSynchronously); - } - return boxes.Select(box => box.Task); - } - - /// - /// Propagates the status of the given task (which must be completed) to a task completion source - /// (which should not be). - /// - private static void PropagateResult(Task completedTask, - TaskCompletionSource completionSource) - { - switch (completedTask.Status) - { - case TaskStatus.Canceled: - completionSource.TrySetCanceled(); - break; - case TaskStatus.Faulted: - completionSource.TrySetException(completedTask.Exception.InnerExceptions); - break; - case TaskStatus.RanToCompletion: - completionSource.TrySetResult(completedTask.Result); - break; - default: - throw new ArgumentException("Task was not completed"); - } - } - } -} diff --git a/AsyncIntro/Code/Testing.NUnit/ManuallyPumpedSynchronizationContext.cs b/AsyncIntro/Code/Testing.NUnit/ManuallyPumpedSynchronizationContext.cs deleted file mode 100644 index 5e53f1f2..00000000 --- a/AsyncIntro/Code/Testing.NUnit/ManuallyPumpedSynchronizationContext.cs +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Concurrent; -using System.Threading; - -namespace Testing.NUnit -{ - /// - /// A synchronization context which will store delegates to execute, and allow them - /// to be "pumped" explicitly. - /// - public sealed class ManuallyPumpedSynchronizationContext : SynchronizationContext - { - private readonly BlockingCollection> callbacks; - - public ManuallyPumpedSynchronizationContext() - { - callbacks = new BlockingCollection>(); - } - - public override void Post(SendOrPostCallback callback, object state) - { - callbacks.Add(Tuple.Create(callback, state)); - } - - public override void Send(SendOrPostCallback d, object state) - { - throw new NotSupportedException("Synchronous operations not supported on ManuallyPumpedSynchronizationContext"); - } - - public void PumpAll() - { - Tuple callback; - while(callbacks.TryTake(out callback)) - { - callback.Item1(callback.Item2); - } - } - } -} diff --git a/AsyncIntro/Code/Testing.NUnit/Properties/AssemblyInfo.cs b/AsyncIntro/Code/Testing.NUnit/Properties/AssemblyInfo.cs deleted file mode 100644 index e7c6605b..00000000 --- a/AsyncIntro/Code/Testing.NUnit/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("Testing")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("Testing")] -[assembly: AssemblyCopyright("Copyright © 2013")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("7c59619e-c764-4928-b5f4-4d558dee9559")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/AsyncIntro/Code/Testing.NUnit/StockBroker.cs b/AsyncIntro/Code/Testing.NUnit/StockBroker.cs deleted file mode 100644 index e0a89dcc..00000000 --- a/AsyncIntro/Code/Testing.NUnit/StockBroker.cs +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -#define PARALLEL - -using System.Linq; -using StockMarket; -using System; -using System.Security.Authentication; -using System.Threading.Tasks; - -namespace Testing.NUnit -{ - public class StockBroker - { - private readonly IAuthenticationService authenticationService; - private readonly IStockPortfolioService portfolioService; - private readonly IStockPriceService priceService; - - public StockBroker(IAuthenticationService authenticationService, - IStockPortfolioService portfolioService, - IStockPriceService priceService) - { - this.authenticationService = authenticationService; - this.portfolioService = portfolioService; - this.priceService = priceService; - } - - public Task CalculateWorthAsync(string user, string password) - { - if (user == null) - { - throw new ArgumentNullException("user"); - } - if (password == null) - { - throw new ArgumentNullException("password"); - } - return CalculateWorthAsyncImpl(user, password); - } - - private async Task CalculateWorthAsyncImpl(string user, string password) - { - var userId = await authenticationService.AuthenticateUserAsync(user, password); - if (userId == null) - { - throw new AuthenticationException("Bad username or password"); - } - - var portfolio = await portfolioService.GetPortfolioAsync(userId.Value); - - decimal total = 0m; - -#if !PARALLEL -#region Serial implementation - foreach (var item in portfolio) - { - var price = await priceService.LookupPriceAsync(item.Ticker); - if (price != null) - { - total += price.Value * item.Quantity; - } - } -#endregion -#else -#region Parallel implementation - var tasks = portfolio.Select(async holding => new - { - holding, - price = await priceService.LookupPriceAsync(holding.Ticker) - }).ToList(); - - foreach (var task in tasks.InCompletionOrder()) - { - var result = await task; - var holding = result.holding; - var price = result.price; - if (price != null) - { - total += holding.Quantity * price.Value; - } - } -#endregion -#endif - return total; - } - } -} diff --git a/AsyncIntro/Code/Testing.NUnit/StockBrokerTest.cs b/AsyncIntro/Code/Testing.NUnit/StockBrokerTest.cs deleted file mode 100644 index 09b2dd05..00000000 --- a/AsyncIntro/Code/Testing.NUnit/StockBrokerTest.cs +++ /dev/null @@ -1,183 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using NUnit.Framework; -using Rhino.Mocks; -using StockMarket; -using System; -using System.Collections.Generic; -using System.Security.Authentication; -using System.Threading.Tasks; - -namespace Testing.NUnit -{ - [TestFixture] - public class StockBrokerTest - { - private StockBroker broker; - private IAuthenticationService authService; - private IStockPortfolioService portfolioService; - private IStockPriceService priceService; - - [SetUp] - public void SetUp() - { - authService = MockRepository.GenerateStub(); - portfolioService = MockRepository.GenerateStub(); - priceService = MockRepository.GenerateStub(); - broker = new StockBroker(authService, portfolioService, priceService); - } - - [Test] - public void CalculateNetWorthAsync_NullUser_ThrowsImmediately() - { - Assert.Throws(() => broker.CalculateWorthAsync(null, "pass")); - } - - [Test] - public void CalculateNetWorthAsync_NullPassword_ThrowsImmediately() - { - Assert.Throws(() => broker.CalculateWorthAsync("jon", null)); - } - - [Test] - public void CalculateNetWorthAsync_AuthenticationFailure_ThrowsDelayed() - { - var tardis = new TimeMachine(); - var failedLogin = tardis.ScheduleSuccess(1, null); - authService.Stub(x => x.AuthenticateUserAsync("jon", "pass")).Return(failedLogin); - - tardis.ExecuteInContext(advancer => - { - var worth = broker.CalculateWorthAsync("jon", "pass"); - Assert.IsFalse(worth.IsCompleted); - advancer.Advance(); - AssertFaulted(worth); - }); - } - - [Test] - public void CalculateNetWorth_EmptyPortfolio() - { - var tardis = new TimeMachine(); - var guid = Guid.NewGuid(); - var loginResult = tardis.ScheduleSuccess(1, guid); - var portfolioResult = tardis.ScheduleSuccess(2, new List()); - authService.Stub(x => x.AuthenticateUserAsync("jon", "pass")).Return(loginResult); - portfolioService.Stub(x => x.GetPortfolioAsync(guid)).Return(portfolioResult); - - tardis.ExecuteInContext(advancer => - { - var worth = broker.CalculateWorthAsync("jon", "pass"); - Assert.IsFalse(worth.IsCompleted); - advancer.Advance(); - Assert.IsFalse(worth.IsCompleted); - advancer.Advance(); - AssertCompletion(worth, 0); - }); - } - - [Test] - public void CalculateNetWorth_SingleItem() - { - var tardis = new TimeMachine(); - var guid = Guid.NewGuid(); - var portfolio = new List - { - new StockHolding("FOO", 10) - }; - var loginResult = tardis.ScheduleSuccess(1, guid); - var portfolioResult = tardis.ScheduleSuccess(2, portfolio); - var priceResult = tardis.ScheduleSuccess(3, 34.25m); - - authService.Stub(x => x.AuthenticateUserAsync("jon", "pass")).Return(loginResult); - portfolioService.Stub(x => x.GetPortfolioAsync(guid)).Return(portfolioResult); - priceService.Stub(x => x.LookupPriceAsync("FOO")).Return(priceResult); - - tardis.ExecuteInContext(advancer => - { - var worth = broker.CalculateWorthAsync("jon", "pass"); - // Not complete until auth has completed... - Assert.IsFalse(worth.IsCompleted); - advancer.Advance(); - // Not complete until portfolio fetch has completed... - Assert.IsFalse(worth.IsCompleted); - advancer.Advance(); - // Not complete until price fetch has completed... - Assert.IsFalse(worth.IsCompleted); - advancer.Advance(); - AssertCompletion(worth, 10 * 34.25m); - }); - } - - [Test] - public void CalculateNetWorth_MultipleItems() - { - var tardis = new TimeMachine(); - var guid = Guid.NewGuid(); - var portfolio = new List - { - new StockHolding("FOO", 10), - new StockHolding("BAR", 5) - }; - var loginResult = tardis.ScheduleSuccess(1, guid); - var portfolioResult = tardis.ScheduleSuccess(2, portfolio); - var fooResult = tardis.ScheduleSuccess(3, 20m); - var barResult = tardis.ScheduleSuccess(4, 10m); - - authService.Stub(x => x.AuthenticateUserAsync("jon", "pass")).Return(loginResult); - portfolioService.Stub(x => x.GetPortfolioAsync(guid)).Return(portfolioResult); - priceService.Stub(x => x.LookupPriceAsync("FOO")).Return(fooResult); - priceService.Stub(x => x.LookupPriceAsync("BAR")).Return(barResult); - - tardis.ExecuteInContext(advancer => - { - var worth = broker.CalculateWorthAsync("jon", "pass"); - advancer.AdvanceBy(3); - // Still waiting, after first price has been fetched... - Assert.IsFalse(worth.IsCompleted); - advancer.Advance(); - AssertCompletion(worth, 10 * 20m + 5 * 10m); - }); - } - - [Test] - public void CalculateNetWorth_MultipleItems_IncludingNullValue() - { - var tardis = new TimeMachine(); - var guid = Guid.NewGuid(); - var portfolio = new List - { - new StockHolding("FOO", 10), - new StockHolding("BAR", 5) - }; - var loginResult = tardis.ScheduleSuccess(1, guid); - var portfolioResult = tardis.ScheduleSuccess(2, portfolio); - var fooResult = tardis.ScheduleSuccess(3, 20m); - var barResult = tardis.ScheduleSuccess(4, null); - - authService.Stub(x => x.AuthenticateUserAsync("jon", "pass")).Return(loginResult); - portfolioService.Stub(x => x.GetPortfolioAsync(guid)).Return(portfolioResult); - priceService.Stub(x => x.LookupPriceAsync("FOO")).Return(fooResult); - priceService.Stub(x => x.LookupPriceAsync("BAR")).Return(barResult); - - tardis.ExecuteInContext(advancer => - { - var worth = broker.CalculateWorthAsync("jon", "pass"); - advancer.AdvanceBy(4); - AssertCompletion(worth, 10 * 20m); - }); - } - - private void AssertCompletion(Task task, T expectedValue) - { - Assert.AreEqual(TaskStatus.RanToCompletion, task.Status); - Assert.AreEqual(expectedValue, task.Result); - } - - private void AssertFaulted(Task task) where TException : Exception - { - Assert.AreEqual(TaskStatus.Faulted, task.Status); - Assert.AreEqual(1, task.Exception.InnerExceptions.Count); - Assert.AreEqual(typeof(TException), task.Exception.InnerExceptions[0].GetType()); - } - } -} diff --git a/AsyncIntro/Code/Testing.NUnit/Testing.NUnit.csproj b/AsyncIntro/Code/Testing.NUnit/Testing.NUnit.csproj deleted file mode 100644 index 23ca5b3d..00000000 --- a/AsyncIntro/Code/Testing.NUnit/Testing.NUnit.csproj +++ /dev/null @@ -1,72 +0,0 @@ - - - - - Debug - AnyCPU - {1AB28F41-7C8A-4123-B36A-67823F997568} - Library - Properties - Testing.NUnit - Testing.NUnit - v4.5 - 512 - - - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - ..\packages\NUnit.2.6.2\lib\nunit.framework.dll - - - ..\packages\RhinoMocks.3.6.1\lib\net\Rhino.Mocks.dll - - - - - - - - - - - - - - - - - - - - - - - {a92c045e-6257-4bf6-9cff-124a7466eab0} - StockMarket - - - - - \ No newline at end of file diff --git a/AsyncIntro/Code/Testing.NUnit/TimeMachine.cs b/AsyncIntro/Code/Testing.NUnit/TimeMachine.cs deleted file mode 100644 index 9f3c4eba..00000000 --- a/AsyncIntro/Code/Testing.NUnit/TimeMachine.cs +++ /dev/null @@ -1,131 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; - -namespace Testing.NUnit -{ - public sealed class TimeMachine - { - private readonly SortedDictionary actions = new SortedDictionary(); - - public Task ScheduleSuccess(int time, T value) - { - return AddAction(time, tcs => tcs.SetResult(value)); - } - - public Task ScheduleFault(int time, Exception exception) - { - return AddAction(time, tcs => tcs.SetException(exception)); - } - - public Task ScheduleFault(int time, IEnumerable exceptions) - { - return AddAction(time, tcs => tcs.SetException(exceptions)); - } - - public Task ScheduleCancellation(int time) - { - return AddAction(time, tcs => tcs.SetCanceled()); - } - - private Task AddAction(int time, Action> action) - { - if (time <= 0) - { - throw new ArgumentOutOfRangeException("time", "Tasks can only be scheduled with a positive time"); - } - if (actions.ContainsKey(time)) - { - throw new ArgumentException("A task completing at this time has already been scheduled.", "time"); - } - TaskCompletionSource source = new TaskCompletionSource(); - actions[time] = () => action(source); - return source.Task; - } - - public void ExecuteInContext(Action action) - { - ExecuteInContext(new ManuallyPumpedSynchronizationContext(), action); - } - - public void ExecuteInContext(ManuallyPumpedSynchronizationContext context, Action action) - { - SynchronizationContext originalContext = SynchronizationContext.Current; - try - { - SynchronizationContext.SetSynchronizationContext(context); - Advancer advancer = new Advancer(actions, context); - // This is where the tests assertions etc will go... - action(advancer); - } - finally - { - SynchronizationContext.SetSynchronizationContext(originalContext); - } - } - - // So tempted to call this class SonicScrewdriver... - public class Advancer - { - private readonly SortedDictionary actions; - private readonly ManuallyPumpedSynchronizationContext context; - private int time = 0; - - internal Advancer(SortedDictionary actions, ManuallyPumpedSynchronizationContext context) - { - this.actions = actions; - this.context = context; - } - - public int Time { get { return time; } } - - /// - /// Advances to the given target time. - /// - /// - public void AdvanceTo(int targetTime) - { - if (targetTime <= time) - { - throw new ArgumentOutOfRangeException("targetTime", "Can only advance time forwards"); - } - List timesToRemove = new List(); - foreach (var entry in actions.TakeWhile(e => e.Key <= targetTime)) - { - timesToRemove.Add(entry.Key); - entry.Value(); - context.PumpAll(); - } - foreach (int key in timesToRemove) - { - actions.Remove(key); - } - time = targetTime; - } - - /// - /// Advances the clock by the given number of arbitrary time units - /// - /// - public void AdvanceBy(int amount) - { - if (amount <= 0) - { - throw new ArgumentOutOfRangeException("amount", "Can only advance time forwards"); - } - AdvanceTo(time + amount); - } - - /// - /// Advances the clock by one time unit. - /// - public void Advance() - { - AdvanceBy(1); - } - } - } -} diff --git a/AsyncIntro/Code/Testing.NUnit/packages.config b/AsyncIntro/Code/Testing.NUnit/packages.config deleted file mode 100644 index a2a4031a..00000000 --- a/AsyncIntro/Code/Testing.NUnit/packages.config +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/AsyncIntro/Code/UnderTheHood/App.config b/AsyncIntro/Code/UnderTheHood/App.config deleted file mode 100644 index 8e156463..00000000 --- a/AsyncIntro/Code/UnderTheHood/App.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/AsyncIntro/Code/UnderTheHood/DecompilationSample.cs b/AsyncIntro/Code/UnderTheHood/DecompilationSample.cs deleted file mode 100644 index 63778c47..00000000 --- a/AsyncIntro/Code/UnderTheHood/DecompilationSample.cs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System.Collections.Generic; -using System.Threading.Tasks; - -namespace UnderTheHood -{ - class DecompilationSample - { - public static async Task SumCharactersAsync(IEnumerable text) - { - int total = 0; - foreach (char ch in text) - { - int unicode = ch; - await Task.Delay(unicode); - total += unicode; - } - - await Task.Yield(); - - return total; - } - } -} diff --git a/AsyncIntro/Code/UnderTheHood/DecompilationSampleDecompiled.cs b/AsyncIntro/Code/UnderTheHood/DecompilationSampleDecompiled.cs deleted file mode 100644 index 301867ed..00000000 --- a/AsyncIntro/Code/UnderTheHood/DecompilationSampleDecompiled.cs +++ /dev/null @@ -1,144 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; -using System.Diagnostics; -using System.Runtime.CompilerServices; -using System.Threading.Tasks; - -namespace UnderTheHood -{ - class DecompilationSampleDecompiled - { - [DebuggerStepThrough] - [AsyncStateMachine(typeof(DemoStateMachine))] - public static Task SumCharactersAsync(IEnumerable text) - { - var machine = new DemoStateMachine(); - machine.text = text; - machine.builder = AsyncTaskMethodBuilder.Create(); - machine.state = -1; - machine.builder.Start(ref machine); - return machine.builder.Task; - } - - [CompilerGenerated] - private struct DemoStateMachine : IAsyncStateMachine - { - public int state; - public IEnumerator iterator; - public AsyncTaskMethodBuilder builder; - public object stack; - public TaskAwaiter taskAwaiter; - public YieldAwaitable.YieldAwaiter yieldAwaiter; - public char ch; - public int total; - public int unicode; - public IEnumerable text; - - void IAsyncStateMachine.MoveNext() - { - int result = default(int); - try - { - bool doFinallyBodies = true; - switch (state) - { - case -3: - goto Done; - case 0: - goto FirstAwaitContinuation; - case 1: - goto SecondAwaitContinuation; - } - // Default case - first call (state is -1) - total = 0; - iterator = text.GetEnumerator(); - - // We really want to jump straight to FirstAwaitRealContinuation, but we can't - // goto a label inside a try block... - FirstAwaitContinuation: - // foreach loop - try - { - // for/foreach loops typically have the condition at the end of the generated code. - // We want to go there *unless* we're trying to reach the first continuation. - if (state != 0) - { - goto LoopCondition; - } - goto FirstAwaitRealContinuation; - LoopBody: - ch = iterator.Current; - unicode = ch; - TaskAwaiter localTaskAwaiter = Task.Delay(unicode).GetAwaiter(); - if (localTaskAwaiter.IsCompleted) - { - goto FirstAwaitCompletion; - } - state = 0; - taskAwaiter = localTaskAwaiter; - builder.AwaitUnsafeOnCompleted(ref localTaskAwaiter, ref this); - doFinallyBodies = false; - return; - FirstAwaitRealContinuation: - localTaskAwaiter = taskAwaiter; - taskAwaiter = default(TaskAwaiter); - state = -1; - FirstAwaitCompletion: - localTaskAwaiter.GetResult(); - localTaskAwaiter = default(TaskAwaiter); - total += unicode; - LoopCondition: - if (iterator.MoveNext()) - { - goto LoopBody; - } - } - finally - { - if (doFinallyBodies && iterator != null) - { - iterator.Dispose(); - } - } - - // After the loop - YieldAwaitable.YieldAwaiter localYieldAwaiter = Task.Yield().GetAwaiter(); - if (localYieldAwaiter.IsCompleted) - { - goto SecondAwaitCompletion; - } - state = 1; - yieldAwaiter = localYieldAwaiter; - builder.AwaitUnsafeOnCompleted(ref localYieldAwaiter, ref this); - doFinallyBodies = false; - return; - - SecondAwaitContinuation: - localYieldAwaiter = yieldAwaiter; - yieldAwaiter = default(YieldAwaitable.YieldAwaiter); - state = -1; - SecondAwaitCompletion: - localYieldAwaiter.GetResult(); - localYieldAwaiter = default(YieldAwaitable.YieldAwaiter); - result = total; - } - catch (Exception ex) - { - state = -2; - builder.SetException(ex); - return; - } - Done: - state = -2; - builder.SetResult(result); - } - - [DebuggerHidden] - void IAsyncStateMachine.SetStateMachine(IAsyncStateMachine machine) - { - builder.SetStateMachine(machine); - } - } - } -} diff --git a/AsyncIntro/Code/UnderTheHood/Interfaces.cs b/AsyncIntro/Code/UnderTheHood/Interfaces.cs deleted file mode 100644 index 45ccb285..00000000 --- a/AsyncIntro/Code/UnderTheHood/Interfaces.cs +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace UnderTheHood -{ - // These don't really exist... - // Interfaces for asynchronous operations returning values - public interface IAwaitable - { - IAwaiter GetAwaiter(); - } - - public interface IAwaiter - { - bool IsCompleted { get; } - void OnCompleted(Action continuation); - T GetResult(); - } - - - - // Interfaces for "void" asynchronous operations - public interface IAwaitable - { - IAwaiter GetAwaiter(); - } - - public interface IAwaiter - { - bool IsCompleted { get; } - void OnCompleted(Action continuation); - void GetResult(); - } -} diff --git a/AsyncIntro/Code/UnderTheHood/LogicalStack.cs b/AsyncIntro/Code/UnderTheHood/LogicalStack.cs deleted file mode 100644 index 12f95737..00000000 --- a/AsyncIntro/Code/UnderTheHood/LogicalStack.cs +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Threading.Tasks; - -namespace UnderTheHood -{ - class LogicalStack - { - public static async Task DemonstrateStacks() - { - int y = 10; - Task z = Task.FromResult(10); - var x = y * await z; - - Task task = Task.FromResult(20); - Console.WriteLine("{0} {1}", x, await task); - } - } -} diff --git a/AsyncIntro/Code/UnderTheHood/LogicalStackDecompiled.cs b/AsyncIntro/Code/UnderTheHood/LogicalStackDecompiled.cs deleted file mode 100644 index 4f757202..00000000 --- a/AsyncIntro/Code/UnderTheHood/LogicalStackDecompiled.cs +++ /dev/null @@ -1,127 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Diagnostics; -using System.Runtime.CompilerServices; -using System.Threading.Tasks; - -namespace UnderTheHood -{ - class LogicalStackDecompiled - { - [DebuggerStepThrough] - [AsyncStateMachine(typeof(DemoStateMachine))] - public static Task DemonstrateStacks() - { - var machine = new DemoStateMachine(); - machine.builder = AsyncTaskMethodBuilder.Create(); - machine.state = -1; - machine.builder.Start(ref machine); - return machine.builder.Task; - } - - [CompilerGenerated] - private struct DemoStateMachine : IAsyncStateMachine - { - // Fields for local variables - public int x; - public int y; - public Task z; - public Task task; - - // Fields for awaiters - private TaskAwaiter awaiter; - - // Common infrastructure - public int state; - public AsyncTaskMethodBuilder builder; - private object stack; - - void IAsyncStateMachine.MoveNext() - { - try - { - bool doFinallyBodies = true; - TaskAwaiter localAwaiter; - int localLhs; - - switch (state) - { - case -3: - goto Done; - case 0: - goto FirstAwaitContinuation; - case 1: - goto SecondAwaitContinuation; - } - // Default case - first call (state = -1) - y = 10; - z = Task.FromResult(10); - localAwaiter = z.GetAwaiter(); - localLhs = y; - if (localAwaiter.IsCompleted) - { - goto FirstAwaitCompletion; - } - stack = localLhs; - state = 0; - awaiter = localAwaiter; - builder.AwaitUnsafeOnCompleted(ref awaiter, ref this); - doFinallyBodies = false; - return; - FirstAwaitContinuation: - localLhs = (int)stack; - stack = null; - localAwaiter = awaiter; - awaiter = default(TaskAwaiter); - state = -1; - FirstAwaitCompletion: - int localRhs = localAwaiter.GetResult(); - x = localLhs * localRhs; - - // Second section of code... - task = Task.FromResult(20); - - string localArg0 = "{0} {1}"; - int localArg1 = x; - localAwaiter = task.GetAwaiter(); - if (localAwaiter.IsCompleted) - { - goto SecondAwaitCompletion; - } - var localTuple = new Tuple(localArg0, localArg1); - stack = localTuple; - state = 1; - awaiter = localAwaiter; - builder.AwaitUnsafeOnCompleted(ref awaiter, ref this); - doFinallyBodies = false; - return; - SecondAwaitContinuation: - localTuple = (Tuple) stack; - localArg0 = localTuple.Item1; - localArg1 = localTuple.Item2; - localAwaiter = awaiter; - awaiter = default(TaskAwaiter); - state = -1; - SecondAwaitCompletion: - int localArg2 = localAwaiter.GetResult(); - Console.WriteLine(localArg0, localArg1, localArg2); - } - catch (Exception ex) - { - state = -2; - builder.SetException(ex); - return; - } - Done: - state = -2; - builder.SetResult(); - } - - [DebuggerHidden] - void IAsyncStateMachine.SetStateMachine(IAsyncStateMachine machine) - { - builder.SetStateMachine(machine); - } - } - } -} diff --git a/AsyncIntro/Code/UnderTheHood/Program.cs b/AsyncIntro/Code/UnderTheHood/Program.cs deleted file mode 100644 index 89588cb1..00000000 --- a/AsyncIntro/Code/UnderTheHood/Program.cs +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2013 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Diagnostics; -using System.Runtime.CompilerServices; -using System.Threading.Tasks; - -namespace UnderTheHood -{ - class Program - { - static void Main(string[] args) - { - Task task = DecompilationSample.SumCharactersAsync("text"); - Console.WriteLine(task.Result); - - //Task task = DummyAsync(); - //task.Wait(); - } - - static async Task DummyAsync() - { - RobAwaitable rob = new RobAwaitable(); - string text = await rob; - Console.WriteLine("I got {0}", text); - Console.WriteLine(new StackTrace()); - } - } - - internal class RobAwaitable - { - internal RobAwaiter GetAwaiter() - { - return new RobAwaiter(); - } - } - - internal class RobAwaiter : INotifyCompletion - { - internal bool IsCompleted { get { return true; } } - - public void OnCompleted(Action continuation) - { - Console.WriteLine("This won't get called"); - } - - public string GetResult() - { - return "Surprise!"; - } - } - -} diff --git a/AsyncIntro/Code/UnderTheHood/Properties/AssemblyInfo.cs b/AsyncIntro/Code/UnderTheHood/Properties/AssemblyInfo.cs deleted file mode 100644 index 564dfa1c..00000000 --- a/AsyncIntro/Code/UnderTheHood/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("UnderTheHood")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("UnderTheHood")] -[assembly: AssemblyCopyright("Copyright © 2012")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("42ab188f-f20f-4687-9c0f-5e65453a8946")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/AsyncIntro/Code/UnderTheHood/UnderTheHood.csproj b/AsyncIntro/Code/UnderTheHood/UnderTheHood.csproj deleted file mode 100644 index dc1682b0..00000000 --- a/AsyncIntro/Code/UnderTheHood/UnderTheHood.csproj +++ /dev/null @@ -1,63 +0,0 @@ - - - - - Debug - AnyCPU - {0979DF61-1C4A-4CF1-9235-DDDE6D79E33C} - Exe - Properties - UnderTheHood - UnderTheHood - v4.5 - 512 - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/AsyncIntro/Code/packages/repositories.config b/AsyncIntro/Code/packages/repositories.config deleted file mode 100644 index cd2f0734..00000000 --- a/AsyncIntro/Code/packages/repositories.config +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/AsyncIntro/readme.md b/AsyncIntro/readme.md deleted file mode 100644 index e7d63eb2..00000000 --- a/AsyncIntro/readme.md +++ /dev/null @@ -1,7 +0,0 @@ -This is the source code I've used in multiple talks, as well as -the [Tekpub Async series](http://tekpub.com/products/async) and the -third edition of [C# in Depth](http://csharpindepth.com). - -Still to come: notes to make sense of the code! These won't be nearly -as detailed as the talks, screencasts or book, but they should at -least give a reasonable starting point. \ No newline at end of file diff --git a/CSharp7/CSharp7.sln b/CSharp7/CSharp7.sln deleted file mode 100644 index 4c0113ab..00000000 --- a/CSharp7/CSharp7.sln +++ /dev/null @@ -1,27 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 15 -VisualStudioVersion = 15.0.26020.0 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharp7", "CSharp7\CSharp7.csproj", "{CF3BD952-4820-45C7-9981-DC78949CE6C9}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Text", "Text", "{A9EE12D4-AE98-4399-ACB6-93F1514A9E77}" - ProjectSection(SolutionItems) = preProject - Text\agenda.txt = Text\agenda.txt - EndProjectSection -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {CF3BD952-4820-45C7-9981-DC78949CE6C9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {CF3BD952-4820-45C7-9981-DC78949CE6C9}.Debug|Any CPU.Build.0 = Debug|Any CPU - {CF3BD952-4820-45C7-9981-DC78949CE6C9}.Release|Any CPU.ActiveCfg = Release|Any CPU - {CF3BD952-4820-45C7-9981-DC78949CE6C9}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/CSharp7/CSharp7/App.config b/CSharp7/CSharp7/App.config deleted file mode 100644 index 8d234373..00000000 --- a/CSharp7/CSharp7/App.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/CSharp7/CSharp7/AsyncReturn.cs b/CSharp7/CSharp7/AsyncReturn.cs deleted file mode 100644 index 3f15354c..00000000 --- a/CSharp7/CSharp7/AsyncReturn.cs +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Runtime.CompilerServices; -using System.Threading.Tasks; - -namespace CSharp7 -{ - class AsyncReturn - { - static async CustomTask CustomAsync() - { - Console.WriteLine("Before await"); - await Task.Delay(5000); - Console.WriteLine("After await"); - return 10; - } - - static async Task RegularAsync() - { - int result = await CustomAsync(); - Console.WriteLine(result); - } - - static void Main() - { - RegularAsync().Wait(); - } - } - - [AsyncMethodBuilder(typeof(CustomTaskMethodBuilder<>))] - struct CustomTask - { - internal T _result; - public T Result => _result; - internal Awaiter GetAwaiter() => new Awaiter(this); - internal class Awaiter : INotifyCompletion - { - private readonly CustomTask _task; - internal Awaiter(CustomTask task) { _task = task; } - public void OnCompleted(Action a) { } - internal bool IsCompleted => true; - internal T GetResult() => _task.Result; - } - } - - struct CustomTaskMethodBuilder - { - private CustomTask _task; - public static CustomTaskMethodBuilder Create() => - new CustomTaskMethodBuilder(new CustomTask()); - internal CustomTaskMethodBuilder(CustomTask task) - { - _task = task; - } - - public void SetStateMachine(IAsyncStateMachine stateMachine) - { - Console.WriteLine("SetStateMachineCalled"); - } - - public void Start(ref TStateMachine stateMachine) - where TStateMachine : IAsyncStateMachine - { - Console.WriteLine("Start called"); - stateMachine.MoveNext(); - } - - public void SetException(Exception e) - { - Console.WriteLine("SetException called"); - } - - public void SetResult(T t) - { - Console.WriteLine("SetResult called"); - _task._result = t; - } - - public void AwaitOnCompleted(ref TAwaiter awaiter, ref TStateMachine stateMachine) - where TAwaiter : INotifyCompletion - where TStateMachine : IAsyncStateMachine - { - Console.WriteLine("AwaitOnCompleted called"); - } - - public void AwaitUnsafeOnCompleted(ref TAwaiter awaiter, ref TStateMachine stateMachine) - where TAwaiter : ICriticalNotifyCompletion - where TStateMachine : IAsyncStateMachine - { - Console.WriteLine("AwaitUnsafeOnCompleted called"); - } - - public CustomTask Task => _task; - } -} diff --git a/CSharp7/CSharp7/CSharp7.csproj b/CSharp7/CSharp7/CSharp7.csproj deleted file mode 100644 index dc93b61a..00000000 --- a/CSharp7/CSharp7/CSharp7.csproj +++ /dev/null @@ -1,14 +0,0 @@ - - - - Exe - netcoreapp2.0 - CSharp7.Program - - - - - - - - diff --git a/CSharp7/CSharp7/ExtensionMethodDeconstruction.cs b/CSharp7/CSharp7/ExtensionMethodDeconstruction.cs deleted file mode 100644 index 44921f30..00000000 --- a/CSharp7/CSharp7/ExtensionMethodDeconstruction.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace CSharp7 -{ - class ExtensionMethodDeconstruction - { - static void Main() - { - // I'd use Noda Time, but that now has deconstruct methods on the types anyway... - DateTime today = DateTime.Today; - - // Different names just for clarity... - var (y, m, d) = today; - Console.WriteLine($"Year: {y}; Month: {m}; Day: {d}"); - } - } - - static class LocalDateExtensions - { - public static void Deconstruct(this DateTime date, out int year, out int month, out int day) - { - year = date.Year; - month = date.Month; - day = date.Day; - } - } -} diff --git a/CSharp7/CSharp7/LocalFunctions1.cs b/CSharp7/CSharp7/LocalFunctions1.cs deleted file mode 100644 index 968de782..00000000 --- a/CSharp7/CSharp7/LocalFunctions1.cs +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; - -namespace CSharp7 -{ - class LocalFunctions1 - { - static void Main() - { - for (int i = 0; i < 10; i++) - { - Console.WriteLine(fib(i)); - } - - int fib(int n) => n < 2 ? n : fib(n - 1) + fib(n - 2); - } - - static void NonLocalVariables() - { - // Works, but is ugly. - Func fib = null; - fib = n => n < 2 ? n : fib(n - 1) + fib(n - 2); - } - } -} diff --git a/CSharp7/CSharp7/LocalFunctions2.cs b/CSharp7/CSharp7/LocalFunctions2.cs deleted file mode 100644 index b14958d6..00000000 --- a/CSharp7/CSharp7/LocalFunctions2.cs +++ /dev/null @@ -1,120 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; -using System.Linq; - -namespace CSharp7 -{ - static class LocalFunctions2 - { - static void Main() - { - int[] source = null; - // Doesn't go bang! - SelectBroken(source, x => x * 2); - try - { - Select1(source, x => x * 2); - } - catch (ArgumentNullException) - { - Console.WriteLine("Caught!"); - } - Console.WriteLine(new[] { 1, 2, 3 }.Select1(x => x * 2).Count()); - Console.WriteLine(new[] { 1, 2, 3 }.Select2(x => x * 2).Count()); - } - - static IEnumerable SelectBroken( - this IEnumerable source, - Func selector) - { - if (source == null) - { - throw new ArgumentNullException(nameof(source)); - } - if (selector == null) - { - throw new ArgumentNullException(nameof(selector)); - } - foreach (var item in source) - { - yield return selector(item); - } - } - - // Not iterator method (eagerly evaluated) - static IEnumerable SelectOldSchool( - this IEnumerable source, - Func selector) - { - if (source == null) - { - throw new ArgumentNullException(nameof(source)); - } - if (selector == null) - { - throw new ArgumentNullException(nameof(selector)); - } - return SelectOldSchoolImpl(source, selector); - } - - // Iterator method (lazily evaluated) - static IEnumerable SelectOldSchoolImpl( - this IEnumerable source, - Func selector) - { - foreach (var item in source) - { - yield return selector(item); - } - } - - static IEnumerable Select1( - this IEnumerable source, - Func selector) - { - if (source == null) - { - throw new ArgumentNullException(nameof(source)); - } - if (selector == null) - { - throw new ArgumentNullException(nameof(selector)); - } - return SelectImpl(); - - IEnumerable SelectImpl() - { - foreach (var item in source) - { - yield return selector(item); - } - } - } - - static IEnumerable Select2( - this IEnumerable source, - Func selector) - { - if (source == null) - { - throw new ArgumentNullException(nameof(source)); - } - if (selector == null) - { - throw new ArgumentNullException(nameof(selector)); - } - return SelectImpl(source, selector); - - IEnumerable SelectImpl( - IEnumerable realSource, - Func realSelector) - { - foreach (var item in realSource) - { - yield return realSelector(item); - } - } - } - } -} diff --git a/CSharp7/CSharp7/LocalFunctions3.cs b/CSharp7/CSharp7/LocalFunctions3.cs deleted file mode 100644 index 2539357e..00000000 --- a/CSharp7/CSharp7/LocalFunctions3.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2018 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace CSharp7 -{ - class LocalFunctions3 - { - static void Main() - { - NonCapture(); - CaptureEfficiently(); - CaptureInefficiently(); - } - - static void NonCapture() - { - int i = 0; - - PrintValue(i); - - void PrintValue(int value) - { - Console.WriteLine(value); - } - } - - static void CaptureEfficiently() - { - int i = 0; - PrintValue(); - - void PrintValue() - { - Console.WriteLine(i); - } - } - - static void CaptureInefficiently() - { - int i = 0; - Action action = PrintValue; - - void PrintValue() - { - Console.WriteLine(i); - } - } - } -} diff --git a/CSharp7/CSharp7/NamedTuple1.cs b/CSharp7/CSharp7/NamedTuple1.cs deleted file mode 100644 index 3560cfc5..00000000 --- a/CSharp7/CSharp7/NamedTuple1.cs +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace CSharp7 -{ - class NamedTuple1 - { - static void Main() - { - var anon = new { x = 5, y = 3, z = "hello" }; - var tuple = CreateTuple(); - tuple.x = 10; - tuple = CreateTuple2(); - Console.WriteLine(tuple.x); - Console.WriteLine(tuple.y); - Console.WriteLine(tuple.z); - } - - static (int x, int y, string z) CreateTuple() - { - return (5, 3, "hello"); - } - - static (int a, int b, string c) CreateTuple2() - { - return (10, 6, "world"); - } - } -} diff --git a/CSharp7/CSharp7/NamedTuple2.cs b/CSharp7/CSharp7/NamedTuple2.cs deleted file mode 100644 index bc2aa4be..00000000 --- a/CSharp7/CSharp7/NamedTuple2.cs +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace CSharp7 -{ - class NamedTuple2 - { - static void Main() - { - // "Target typing" - (int x, int y, string z) tuple = CreateTuple(); - Console.WriteLine(tuple.x); - Console.WriteLine(tuple.y); - Console.WriteLine(tuple.z); - } - - static (int, int, string) CreateTuple() - { - return (5, 3, "hello"); - } - } -} diff --git a/CSharp7/CSharp7/NumericLiterals.cs b/CSharp7/CSharp7/NumericLiterals.cs deleted file mode 100644 index 44220305..00000000 --- a/CSharp7/CSharp7/NumericLiterals.cs +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace CSharp7 -{ - class NumericLiterals - { - static void Main() - { - int alternateBits = 0b10101010; - int argb = 0x7f_ff_00_77; - int million = 1_000_000; - - Console.WriteLine(alternateBits); - Console.WriteLine(argb); - Console.WriteLine(million); - } - } -} diff --git a/CSharp7/CSharp7/OutDeconstruction.cs b/CSharp7/CSharp7/OutDeconstruction.cs deleted file mode 100644 index 376c5231..00000000 --- a/CSharp7/CSharp7/OutDeconstruction.cs +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace CSharp7 -{ - public class OutDeconstruction - { - public static void Main() - { - int code = 20; - string message = "Before"; - // Deconstruct any object with a proper Deconstruct method into existing variables - // (or properties) - (code, message) = new Deconstructable { X = 10, Message = "Hi" }; - Console.Write(message); // "Hi" - - // Deconstruct into new var variables - var (code2, message2, exception) = new Deconstructable(); - var (code3, message3) = new Deconstructable(); - - // Deconstruct from existing instance - var instance = new Deconstructable { X = 10, Message = "Hi" }; - var (code4, message4) = instance; - } - } - - public class Deconstructable - { - public int X { get; set; } - public string Message { get; set; } - public Exception Error { get; set; } - - // Nifty trick: use tuple deconstruction for the body - // Performance implications? - public void Deconstruct(out int x, out string message) => (x, message) = (X, Message); - - internal void Deconstruct(out int x, out string message, out Exception e) - { - x = X; - message = Message; - e = Error; - } - - internal void CopyTo(Deconstructable other) => (other.X, other.Message, other.Error) = this; - } -} \ No newline at end of file diff --git a/CSharp7/CSharp7/OutVar.cs b/CSharp7/CSharp7/OutVar.cs deleted file mode 100644 index f4742469..00000000 --- a/CSharp7/CSharp7/OutVar.cs +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace CSharp7 -{ - class OutVar - { - static void Main() - { - // Old style - int value1; - if (int.TryParse("5", out value1)) - { - Console.WriteLine(value1); - } - // Oh noes, value1 is still in scope! - Console.WriteLine(value1); - - // Explicit typing, but still introducing variable in if - if (int.TryParse("5", out int value2)) - { - Console.WriteLine(value2); - } - // Oh noes, value2 is still in scope too! - Console.WriteLine(value2); - - // var as well... - if (int.TryParse("5", out var value3)) - { - Console.WriteLine(value3); - } - - // Scoping is reasonable - if (!int.TryParse("5", out int value4)) - { - Console.WriteLine("Something is wrong"); - } - else - { - Console.WriteLine($"Value was {value4}"); - } - - if (int.TryParse("foo", out int value5) && int.TryParse("bar", out int value6)) - { - Console.WriteLine("Both parsed"); - } - Console.WriteLine(value5); - // Invalid because value6 isn't definitely assigned.. - // Console.WriteLine(value6); - - // But it is in scope - value6 = 10; - } - - public bool CheckParse(string text) => int.TryParse(text, out var _); - - public int ParseWithDefault(string text, int defaultValue) => - int.TryParse(text, out int value) ? value : defaultValue; - } -} diff --git a/CSharp7/CSharp7/PatternMatching1.cs b/CSharp7/CSharp7/PatternMatching1.cs deleted file mode 100644 index 1f08206f..00000000 --- a/CSharp7/CSharp7/PatternMatching1.cs +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace CSharp7 -{ - class PatternMatching1 - { - static void Main() - { - PrintInt32s("foo"); - PrintInt32s(10); - - PointlessConstantMatch(10); - PointlessConstantMatch(5); - - LessPointlessConstantMatch(10); - LessPointlessConstantMatch(5); - LessPointlessConstantMatch(5L); - LessPointlessConstantMatch("foo"); - LessPointlessConstantMatch("5"); - } - - static void PrintInt32s(object x) - { - if (x is int i) - { - Console.WriteLine($"Got an Int32: {i}"); - } - } - - static void PointlessConstantMatch(int x) - { - if (x is 5) - { - Console.WriteLine("Yes, x is 5"); - } - } - - static void LessPointlessConstantMatch(object x) - { - if (x is 5) - { - Console.WriteLine("Yes, x is 5"); - } - else - { - Console.WriteLine($"No, x isn't 5 - it's {x}"); - } - } - } -} diff --git a/CSharp7/CSharp7/PatternMatching2.cs b/CSharp7/CSharp7/PatternMatching2.cs deleted file mode 100644 index 8e5ea3b0..00000000 --- a/CSharp7/CSharp7/PatternMatching2.cs +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace CSharp7 -{ - class PatternMatching2 - { - static void Main() - { - Console.WriteLine(DoesItBlend(1L)); - Console.WriteLine(DoesItBlend(5L)); - Console.WriteLine(DoesItBlend("short")); - Console.WriteLine(DoesItBlend("Long text")); - Console.WriteLine(DoesItBlend(5)); - Console.WriteLine(DoesItBlend(6)); - Console.WriteLine(DoesItBlend(7)); - Console.WriteLine(DoesItBlend(null)); - } - - static string DoesItBlend(object x) - { - switch (x) - { - case 5: - return "5s never blend"; - case int y when (y % 5 == 0): - case int z when (z % 5 == 0): - // Can't use y or z; they're not in scope - return "I wish I could tell you the number..."; - case int y when (y & 1) == 1: - Console.WriteLine(y); - return "Odd numbers other than 5 always blend"; - // Scoping of y is interesting here - only this case. - case int y: - return "Even numbers are unreliable blenders"; - case string name when name.Length > 5: - return "Long text blends"; - case var o: - return $"Values of type {o.GetType()} may blend, or may not. I don't know."; - // To demo: var vs default, and ordering. - } - } - } -} diff --git a/CSharp7/CSharp7/Program.cs b/CSharp7/CSharp7/Program.cs deleted file mode 100644 index 51d5058b..00000000 --- a/CSharp7/CSharp7/Program.cs +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using JonSkeet.DemoUtil; - -namespace CSharp7 -{ - class Program - { - static void Main() => ApplicationChooser.Run(); - } -} diff --git a/CSharp7/CSharp7/RefLocal.cs b/CSharp7/CSharp7/RefLocal.cs deleted file mode 100644 index 28e3cfe4..00000000 --- a/CSharp7/CSharp7/RefLocal.cs +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace CSharp7 -{ -#pragma warning disable 0649 - struct BigStruct - { - internal int x, y, z; - internal long a, b, c; - } -#pragma warning restore 0649 - - class RefLocal - { - static void Main() - { - BigStruct[] array = new BigStruct[1000]; - - Console.WriteLine(array[1].a); // 0 - for (int i = 0; i < array.Length; i++) - { - // Creates a copy - not what we want - BigStruct local = array[i]; - if (local.x < i) - { - local.b++; // Doesn't affect array - array[i] = local; // Copy back into array - } - - ref BigStruct refLocal = ref array[i]; - if (refLocal.x < i) - { - refLocal.a++; - } - } - Console.WriteLine(array[1].a); // 1 - } - } -} diff --git a/CSharp7/CSharp7/RefReturn.cs b/CSharp7/CSharp7/RefReturn.cs deleted file mode 100644 index 4d5581b8..00000000 --- a/CSharp7/CSharp7/RefReturn.cs +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace CSharp7 -{ - class RefReturn - { - static void Main(string[] args) - { - var rng = new Random(); - int a = 0, b = 0; - for (int i = 0; i < 20; i++) - { - // Increments one of the variables - GetRandomVariable(rng, ref a, ref b)++; - - // This has no effect; x is inferred to be an int, - // and gets a copy of the value of a or b, the - // increment does not affect a or b. - var x = GetRandomVariable(rng, ref a, ref b); - x++; - - // This *does* have an effect, like the first call. - ref var y = ref GetRandomVariable(rng, ref a, ref b); - y++; - - Console.WriteLine($"a={a}, b={b}"); - } - } - - static ref int GetRandomVariable(Random rng, ref int x, ref int y) - { - // Wouldn't compile in a genuine 7.0 compiler: conditional operator and ref local don't go together. - // Fixed in C# 7.2. See also: - // return ref (rng.NextDouble() >= 0.5 ? ref x : ref y); - - if (rng.NextDouble() >= 0.5) - { - return ref x; - } - else - { - return ref y; - } - } - } -} diff --git a/CSharp7/CSharp7/Scratchpad.cs b/CSharp7/CSharp7/Scratchpad.cs deleted file mode 100644 index 76817d92..00000000 --- a/CSharp7/CSharp7/Scratchpad.cs +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -namespace CSharp7 -{ - class Scratchpad - { - static void Main() - { - } - } -} diff --git a/CSharp7/CSharp7/Summing1.cs b/CSharp7/CSharp7/Summing1.cs deleted file mode 100644 index 5fde1b13..00000000 --- a/CSharp7/CSharp7/Summing1.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; - -namespace CSharp7 -{ - class Summing1 - { - static void Main() - { - var result = SumAndCount(new[] { 5, 3, 1 }); - Console.WriteLine($"Sum: {result.sum}"); - Console.WriteLine($"Sum: {result.count}"); - } - - static (int sum, int count) SumAndCount(IEnumerable values) - { - int sum = 0; - int count = 0; - foreach (var value in values) - { - sum += value; - count++; - } - return (sum, count); - } - } -} diff --git a/CSharp7/CSharp7/Summing2.cs b/CSharp7/CSharp7/Summing2.cs deleted file mode 100644 index 555650e9..00000000 --- a/CSharp7/CSharp7/Summing2.cs +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; - -namespace CSharp7 -{ - class Summing2 - { - static void Main() - { - Console.WriteLine(SumAndCount(new[] { 5, 3, 1 })); - } - - static (int sum, int count) SumAndCount(IEnumerable values) - { - var tuple = (sum: 0, count: 0); - foreach (var value in values) - { - tuple.sum += value; - tuple.count++; - } - return tuple; - } - } -} diff --git a/CSharp7/CSharp7/Summing3.cs b/CSharp7/CSharp7/Summing3.cs deleted file mode 100644 index 2cf9ca9c..00000000 --- a/CSharp7/CSharp7/Summing3.cs +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; -using System.Collections.Generic; -using System.Linq; - -namespace CSharp7 -{ - class Summing3 - { - static void Main() - { - Console.WriteLine(SumAndCount(new[] { 5, 3, 1 })); - } - - static (int sum, int count) SumAndCount(IEnumerable values) - => values.Aggregate( - seed: (sum: 0, count: 0), - func: (tuple, value) => (tuple.sum + value, tuple.count + 1)); - } -} diff --git a/CSharp7/CSharp7/ThrowExpression.cs b/CSharp7/CSharp7/ThrowExpression.cs deleted file mode 100644 index f9ae3d66..00000000 --- a/CSharp7/CSharp7/ThrowExpression.cs +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace CSharp7 -{ - class ThrowExpression - { - static void Main() - { - string foo = null; - string bar = CheckNotNull(foo, nameof(foo)); - DoSomething(""); - } - - static T CheckNotNull(T value, string name) where T : class - => value ?? throw new ArgumentNullException(name); - - // Could use switch/case with pattern matching now. - // Wouldn't it be nice to have an expression-bodied switch/case? - static int DoSomething(string x) => - x == "foo" ? 10 - : x == "bar" ? 20 - : x.Length > 5 ? 30 - : throw new ArgumentException("x must be foo or bar, or longer than 5"); - } -} diff --git a/CSharp7/CSharp7/TryParseRevisited.cs b/CSharp7/CSharp7/TryParseRevisited.cs deleted file mode 100644 index b4584cb7..00000000 --- a/CSharp7/CSharp7/TryParseRevisited.cs +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace WorkingInPreview3 -{ - class TryParseRevisited - { - static void Main() - { - Console.WriteLine(TryParse("5")); - Console.WriteLine(TryParse("Whoops")); - - var parseResult = TryParse("5"); - if (parseResult.success) - { - Console.WriteLine(parseResult.value); - } - } - - static (bool success, int value) TryParse(string x) - { - // Somewhat confusing implementation, I'll admit... - return (int.TryParse(x, out int value), value); - } - } -} diff --git a/CSharp7/CSharp7/TupleConstruction.cs b/CSharp7/CSharp7/TupleConstruction.cs deleted file mode 100644 index 05eb7527..00000000 --- a/CSharp7/CSharp7/TupleConstruction.cs +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -#pragma warning disable CS0219 // Variable is assigned but its value is never used -using System; - -namespace CSharp7 -{ - class TupleConstruction - { - static void Main() - { - var tuple1 = (1, 2); - Console.WriteLine(tuple1.Item1); - Console.WriteLine(tuple1.Item2); - - var tuple2 = new ValueTuple(1, 2); - Console.WriteLine(tuple2.Item1); - Console.WriteLine(tuple2.Item2); - - var tuple3 = (a: 1, b: 2); - Console.WriteLine(tuple3.a); - Console.WriteLine(tuple3.b); - - // Names specified by declaration - (long a, int b) tuple4 = (1, 2); - - // No names in declaration, so names in construction are irrelevant - (int, int) tuple5 = (a: 1, b: 2); - } - } -} diff --git a/CSharp7/CSharp7/TupleConversion.cs b/CSharp7/CSharp7/TupleConversion.cs deleted file mode 100644 index 9209a034..00000000 --- a/CSharp7/CSharp7/TupleConversion.cs +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -#pragma warning disable CS0219 // Variable is assigned but its value is never used - -using System.Xml.Linq; - -namespace CSharp7 -{ - class TupleConversion - { - static void Main() - { - // Predefined conversion from int to long - (long, long) integers = (10, 2); - - // Predefined conversions from constant expressions - // in range of byte - (byte, byte) bytes = (5, 10); - - // Element-wise predefined conversion - (double, double) doubles = integers; - - object boxed = integers; - // This will throw InvalidCastException - // doubles = ((double, double)) boxed; - - // Element-wise user-defined conversions - (string, string) names = ("http://.../", "http://.../"); - (XNamespace, XNamespace) namespaces = names; - } - } -} diff --git a/CSharp7/CSharp7/TupleDeconstruction.cs b/CSharp7/CSharp7/TupleDeconstruction.cs deleted file mode 100644 index 7b78c0fc..00000000 --- a/CSharp7/CSharp7/TupleDeconstruction.cs +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace CSharp7 -{ - class TupleDeconstruction - { - static void Main() - { - var (a, b, c) = CreateTuple(); - // Equivalent to: - // var tuple = CreateTuple(); - // var a = tuple.x; - // var b = tuple.y; - // var c = tuple.z; - Console.WriteLine(a); - Console.WriteLine(b); - Console.WriteLine(c); - } - - static (int x, int y, string z) CreateTuple() - { - return (5, 3, "hello"); - } - } -} diff --git a/CSharp7/CSharp7/TupleFields.cs b/CSharp7/CSharp7/TupleFields.cs deleted file mode 100644 index 6952ac42..00000000 --- a/CSharp7/CSharp7/TupleFields.cs +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace CSharp7 -{ - class TupleFields - { - private (int x, int y) counters; - - static void Main() - { - var fields = new TupleFields(); - fields.IncrementBoth(); - fields.IncrementX(); - Console.WriteLine(fields.counters); - } - - void IncrementBoth() - { - counters.x++; - counters.y++; - } - - void IncrementX() - { - counters.x++; - } - - void IncrementY() - { - counters.y++; - } - } -} diff --git a/CSharp7/CSharp7/TupleInLinq.cs b/CSharp7/CSharp7/TupleInLinq.cs deleted file mode 100644 index bb41cc9f..00000000 --- a/CSharp7/CSharp7/TupleInLinq.cs +++ /dev/null @@ -1,18 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System.Collections.Generic; -using System.Linq; - -namespace CSharp7 -{ - class TupleInLinq - { - static void Main() - { - // See http://stackoverflow.com/questions/39386251 - var list = new List { "a", "b" }; - // In C# 7.1 the element name would be inferred: (value, index) => (value, index) - var dictionary = list.Select((value, index) => (value: value, index: index)) - .ToDictionary(pair => pair.index, pair => pair.value); - } - } -} diff --git a/CSharp7/CSharp7/TupleMembers.cs b/CSharp7/CSharp7/TupleMembers.cs deleted file mode 100644 index c64e06cf..00000000 --- a/CSharp7/CSharp7/TupleMembers.cs +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -#pragma warning disable CS0219 // Variable is assigned but its value is never used -using System; - -namespace CSharp7 -{ - class TupleMembers - { - static void Main() - { - var t1 = (x: 1, y: 2); - var t2 = (a: 1, b: 2); - var t3 = (a: 1, b: 2); - Console.WriteLine(t1.ToString()); // (1, 2) - Console.WriteLine(t1.Equals(t2)); // True - // Doesn't compile! Console.WriteLine(t1 == t3); // True - // Doesn't compile! Console.WriteLine(t2 == t3); // True - } - } -} diff --git a/CSharp7/CSharp7/TupleParameters.cs b/CSharp7/CSharp7/TupleParameters.cs deleted file mode 100644 index 7d0b0cec..00000000 --- a/CSharp7/CSharp7/TupleParameters.cs +++ /dev/null @@ -1,21 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace CSharp7 -{ - class TupleParameters - { - static void Main() - { - (int foo, int bar) result = Add((5, 3), (6, 4)); - Console.WriteLine(result.foo); - Console.WriteLine(result.bar); - Console.WriteLine(result); - } - - static (int a, int b) Add((int a, int b) x, (int, int) y) - { - return (x.a + y.Item1, x.b + y.Item2); - } - } -} diff --git a/CSharp7/CSharp7/TupleTypeEquivalence.cs b/CSharp7/CSharp7/TupleTypeEquivalence.cs deleted file mode 100644 index a02686a0..00000000 --- a/CSharp7/CSharp7/TupleTypeEquivalence.cs +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace CSharp7 -{ - public static class ValueTupleExtensions - { - public static ValueTuple With( - this ValueTuple tuple, T3 other) => - (tuple.Item1, tuple.Item2, other); - } - - class TupleTypeEquivalence - { - static void Main() - { - var t1 = (1, 1); - var t2 = (x: 1, y: 2); - var t3 = (a: 2, b: 1); - Console.WriteLine(t1.GetType() == t1.GetType()); // True - Console.WriteLine(t1.GetType() == t3.GetType()); // True - t3 = t2; - Console.WriteLine(t3.a); // 1 - - var t4 = (a: 1, b: 2L); // Note long second property - Console.WriteLine(t1.GetType() == t4.GetType()); // False - - var arity3 = (a: 1, b: 2, c: 3); - arity3 = t1.With(2); - - // t4 = t3; // Fails to compile, despite component-wise implicit conversions - } - } -} diff --git a/CSharp7/CSharp7/UnnamedTuple.cs b/CSharp7/CSharp7/UnnamedTuple.cs deleted file mode 100644 index 20006cde..00000000 --- a/CSharp7/CSharp7/UnnamedTuple.cs +++ /dev/null @@ -1,21 +0,0 @@ -// Copyright 2016 Jon Skeet. All rights reserved. Use of this source code is governed by the Apache License 2.0, as found in the LICENSE.txt file. -using System; - -namespace CSharp7 -{ - class UnnamedTuple - { - static void Main() - { - (int, int, string) tuple = CreateTuple(); - Console.WriteLine(tuple.Item1); - Console.WriteLine(tuple.Item2); - Console.WriteLine(tuple.Item3); - } - - static (int, int, string) CreateTuple() - { - return ValueTuple.Create(5, 3, "hello"); - } - } -} diff --git a/CSharp7/CSharp7/packages.config b/CSharp7/CSharp7/packages.config deleted file mode 100644 index c056e468..00000000 --- a/CSharp7/CSharp7/packages.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/CSharp7/Text/agenda.txt b/CSharp7/Text/agenda.txt deleted file mode 100644 index d8ef7f6e..00000000 --- a/CSharp7/Text/agenda.txt +++ /dev/null @@ -1,35 +0,0 @@ -C# 7.0 ------- - -Jon Skeet: @jonskeet on Twitter - -Code is all available at https://github.com/jskeet/democode -(Some changes you see here may not be merged yet though...) - - -Agenda ------- - -- Tuples - - Demo/motivation first (TupleConstruction) - - Tuple conversions - - Tuple fields - - Tuple types - language vs CLR - - ToString - - Element names and when they matter -- Deconstruction - - Tuples - - Methods: extension and instance methods -- Pattern matching - - Constant, type, var - - Use in if - - Use in switch/case -- Local functions - - Simple - - Validation - - Capturing -- Out parameters -- Ref local / ref return -- Custom async return types -- Throw expressions -- Numeric literals diff --git a/CSharp8/Async/Async.csproj b/CSharp8/Async/Async.csproj deleted file mode 100644 index c6e161d9..00000000 --- a/CSharp8/Async/Async.csproj +++ /dev/null @@ -1,12 +0,0 @@ - - - - Exe - netcoreapp3.0 - - - - - - - diff --git a/CSharp8/Async/AsyncDisposal.cs b/CSharp8/Async/AsyncDisposal.cs deleted file mode 100644 index 0997fa84..00000000 --- a/CSharp8/Async/AsyncDisposal.cs +++ /dev/null @@ -1,34 +0,0 @@ -using System; -using System.Threading.Tasks; - -namespace Async -{ - class AsyncDisposal - { - class AsyncResource : IAsyncDisposable - { - public async ValueTask DisposeAsync() - { - Console.WriteLine("Disposing asynchronously..."); - await Task.Delay(2000); - Console.WriteLine("... done"); - } - - public async Task PerformWorkAsync() - { - Console.WriteLine("Performing work asynchronously..."); - await Task.Delay(2000); - Console.WriteLine("... done"); - } - } - - async static Task Main() - { - await using (var resource = new AsyncResource()) - { - await resource.PerformWorkAsync(); - } - Console.WriteLine("After the await using statement"); - } - } -} diff --git a/CSharp8/Async/AsyncIterator.cs b/CSharp8/Async/AsyncIterator.cs deleted file mode 100644 index 004782e7..00000000 --- a/CSharp8/Async/AsyncIterator.cs +++ /dev/null @@ -1,27 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; - -namespace Async -{ - class AsyncIterator - { - static async Task Main() - { - await foreach (var item in ListStringsAsync()) - { - Console.WriteLine(item); - } - } - - private static async IAsyncEnumerable ListStringsAsync() - { - yield return "First"; - await Task.Delay(1000); - yield return "Second"; - await Task.Delay(1000); - yield return "Third"; - } - } -} diff --git a/CSharp8/CSharp8.sln b/CSharp8/CSharp8.sln deleted file mode 100644 index 3c81a751..00000000 --- a/CSharp8/CSharp8.sln +++ /dev/null @@ -1,107 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.28606.126 -MinimumVisualStudioVersion = 15.0.26124.0 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Async", "Async\Async.csproj", "{2CC47FA2-D5EB-415C-AEE9-9C2518D8071D}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Nullability", "Nullability\Nullability.csproj", "{20D52613-FEFE-4F42-92DF-636AA336C0DF}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Patterns", "Patterns\Patterns.csproj", "{BEE0C7F0-2125-41DE-85F5-65D350523B6E}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "IndexAndRange", "IndexAndRange\IndexAndRange.csproj", "{5A971B5E-1FE6-4FD5-9004-14949811DB81}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MinorFeatures", "MinorFeatures\MinorFeatures.csproj", "{86ABF7A1-B99B-4868-A4D7-05150BF112F3}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DefaultInterfaceMethods", "DefaultInterfaceMethods\DefaultInterfaceMethods.csproj", "{822A76E0-8667-477A-9FF8-A8D202AA544A}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Debug|x64 = Debug|x64 - Debug|x86 = Debug|x86 - Release|Any CPU = Release|Any CPU - Release|x64 = Release|x64 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {2CC47FA2-D5EB-415C-AEE9-9C2518D8071D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {2CC47FA2-D5EB-415C-AEE9-9C2518D8071D}.Debug|Any CPU.Build.0 = Debug|Any CPU - {2CC47FA2-D5EB-415C-AEE9-9C2518D8071D}.Debug|x64.ActiveCfg = Debug|Any CPU - {2CC47FA2-D5EB-415C-AEE9-9C2518D8071D}.Debug|x64.Build.0 = Debug|Any CPU - {2CC47FA2-D5EB-415C-AEE9-9C2518D8071D}.Debug|x86.ActiveCfg = Debug|Any CPU - {2CC47FA2-D5EB-415C-AEE9-9C2518D8071D}.Debug|x86.Build.0 = Debug|Any CPU - {2CC47FA2-D5EB-415C-AEE9-9C2518D8071D}.Release|Any CPU.ActiveCfg = Release|Any CPU - {2CC47FA2-D5EB-415C-AEE9-9C2518D8071D}.Release|Any CPU.Build.0 = Release|Any CPU - {2CC47FA2-D5EB-415C-AEE9-9C2518D8071D}.Release|x64.ActiveCfg = Release|Any CPU - {2CC47FA2-D5EB-415C-AEE9-9C2518D8071D}.Release|x64.Build.0 = Release|Any CPU - {2CC47FA2-D5EB-415C-AEE9-9C2518D8071D}.Release|x86.ActiveCfg = Release|Any CPU - {2CC47FA2-D5EB-415C-AEE9-9C2518D8071D}.Release|x86.Build.0 = Release|Any CPU - {20D52613-FEFE-4F42-92DF-636AA336C0DF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {20D52613-FEFE-4F42-92DF-636AA336C0DF}.Debug|Any CPU.Build.0 = Debug|Any CPU - {20D52613-FEFE-4F42-92DF-636AA336C0DF}.Debug|x64.ActiveCfg = Debug|Any CPU - {20D52613-FEFE-4F42-92DF-636AA336C0DF}.Debug|x64.Build.0 = Debug|Any CPU - {20D52613-FEFE-4F42-92DF-636AA336C0DF}.Debug|x86.ActiveCfg = Debug|Any CPU - {20D52613-FEFE-4F42-92DF-636AA336C0DF}.Debug|x86.Build.0 = Debug|Any CPU - {20D52613-FEFE-4F42-92DF-636AA336C0DF}.Release|Any CPU.ActiveCfg = Release|Any CPU - {20D52613-FEFE-4F42-92DF-636AA336C0DF}.Release|Any CPU.Build.0 = Release|Any CPU - {20D52613-FEFE-4F42-92DF-636AA336C0DF}.Release|x64.ActiveCfg = Release|Any CPU - {20D52613-FEFE-4F42-92DF-636AA336C0DF}.Release|x64.Build.0 = Release|Any CPU - {20D52613-FEFE-4F42-92DF-636AA336C0DF}.Release|x86.ActiveCfg = Release|Any CPU - {20D52613-FEFE-4F42-92DF-636AA336C0DF}.Release|x86.Build.0 = Release|Any CPU - {BEE0C7F0-2125-41DE-85F5-65D350523B6E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {BEE0C7F0-2125-41DE-85F5-65D350523B6E}.Debug|Any CPU.Build.0 = Debug|Any CPU - {BEE0C7F0-2125-41DE-85F5-65D350523B6E}.Debug|x64.ActiveCfg = Debug|Any CPU - {BEE0C7F0-2125-41DE-85F5-65D350523B6E}.Debug|x64.Build.0 = Debug|Any CPU - {BEE0C7F0-2125-41DE-85F5-65D350523B6E}.Debug|x86.ActiveCfg = Debug|Any CPU - {BEE0C7F0-2125-41DE-85F5-65D350523B6E}.Debug|x86.Build.0 = Debug|Any CPU - {BEE0C7F0-2125-41DE-85F5-65D350523B6E}.Release|Any CPU.ActiveCfg = Release|Any CPU - {BEE0C7F0-2125-41DE-85F5-65D350523B6E}.Release|Any CPU.Build.0 = Release|Any CPU - {BEE0C7F0-2125-41DE-85F5-65D350523B6E}.Release|x64.ActiveCfg = Release|Any CPU - {BEE0C7F0-2125-41DE-85F5-65D350523B6E}.Release|x64.Build.0 = Release|Any CPU - {BEE0C7F0-2125-41DE-85F5-65D350523B6E}.Release|x86.ActiveCfg = Release|Any CPU - {BEE0C7F0-2125-41DE-85F5-65D350523B6E}.Release|x86.Build.0 = Release|Any CPU - {5A971B5E-1FE6-4FD5-9004-14949811DB81}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {5A971B5E-1FE6-4FD5-9004-14949811DB81}.Debug|Any CPU.Build.0 = Debug|Any CPU - {5A971B5E-1FE6-4FD5-9004-14949811DB81}.Debug|x64.ActiveCfg = Debug|Any CPU - {5A971B5E-1FE6-4FD5-9004-14949811DB81}.Debug|x64.Build.0 = Debug|Any CPU - {5A971B5E-1FE6-4FD5-9004-14949811DB81}.Debug|x86.ActiveCfg = Debug|Any CPU - {5A971B5E-1FE6-4FD5-9004-14949811DB81}.Debug|x86.Build.0 = Debug|Any CPU - {5A971B5E-1FE6-4FD5-9004-14949811DB81}.Release|Any CPU.ActiveCfg = Release|Any CPU - {5A971B5E-1FE6-4FD5-9004-14949811DB81}.Release|Any CPU.Build.0 = Release|Any CPU - {5A971B5E-1FE6-4FD5-9004-14949811DB81}.Release|x64.ActiveCfg = Release|Any CPU - {5A971B5E-1FE6-4FD5-9004-14949811DB81}.Release|x64.Build.0 = Release|Any CPU - {5A971B5E-1FE6-4FD5-9004-14949811DB81}.Release|x86.ActiveCfg = Release|Any CPU - {5A971B5E-1FE6-4FD5-9004-14949811DB81}.Release|x86.Build.0 = Release|Any CPU - {86ABF7A1-B99B-4868-A4D7-05150BF112F3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {86ABF7A1-B99B-4868-A4D7-05150BF112F3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {86ABF7A1-B99B-4868-A4D7-05150BF112F3}.Debug|x64.ActiveCfg = Debug|Any CPU - {86ABF7A1-B99B-4868-A4D7-05150BF112F3}.Debug|x64.Build.0 = Debug|Any CPU - {86ABF7A1-B99B-4868-A4D7-05150BF112F3}.Debug|x86.ActiveCfg = Debug|Any CPU - {86ABF7A1-B99B-4868-A4D7-05150BF112F3}.Debug|x86.Build.0 = Debug|Any CPU - {86ABF7A1-B99B-4868-A4D7-05150BF112F3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {86ABF7A1-B99B-4868-A4D7-05150BF112F3}.Release|Any CPU.Build.0 = Release|Any CPU - {86ABF7A1-B99B-4868-A4D7-05150BF112F3}.Release|x64.ActiveCfg = Release|Any CPU - {86ABF7A1-B99B-4868-A4D7-05150BF112F3}.Release|x64.Build.0 = Release|Any CPU - {86ABF7A1-B99B-4868-A4D7-05150BF112F3}.Release|x86.ActiveCfg = Release|Any CPU - {86ABF7A1-B99B-4868-A4D7-05150BF112F3}.Release|x86.Build.0 = Release|Any CPU - {822A76E0-8667-477A-9FF8-A8D202AA544A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {822A76E0-8667-477A-9FF8-A8D202AA544A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {822A76E0-8667-477A-9FF8-A8D202AA544A}.Debug|x64.ActiveCfg = Debug|Any CPU - {822A76E0-8667-477A-9FF8-A8D202AA544A}.Debug|x64.Build.0 = Debug|Any CPU - {822A76E0-8667-477A-9FF8-A8D202AA544A}.Debug|x86.ActiveCfg = Debug|Any CPU - {822A76E0-8667-477A-9FF8-A8D202AA544A}.Debug|x86.Build.0 = Debug|Any CPU - {822A76E0-8667-477A-9FF8-A8D202AA544A}.Release|Any CPU.ActiveCfg = Release|Any CPU - {822A76E0-8667-477A-9FF8-A8D202AA544A}.Release|Any CPU.Build.0 = Release|Any CPU - {822A76E0-8667-477A-9FF8-A8D202AA544A}.Release|x64.ActiveCfg = Release|Any CPU - {822A76E0-8667-477A-9FF8-A8D202AA544A}.Release|x64.Build.0 = Release|Any CPU - {822A76E0-8667-477A-9FF8-A8D202AA544A}.Release|x86.ActiveCfg = Release|Any CPU - {822A76E0-8667-477A-9FF8-A8D202AA544A}.Release|x86.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {8462F03E-8D03-4D22-98CB-9BD4E9873254} - EndGlobalSection -EndGlobal diff --git a/CSharp8/DefaultInterfaceMethods/BasicDemo.cs b/CSharp8/DefaultInterfaceMethods/BasicDemo.cs deleted file mode 100644 index a69b59b0..00000000 --- a/CSharp8/DefaultInterfaceMethods/BasicDemo.cs +++ /dev/null @@ -1,49 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; - -namespace DefaultInterfaceMethods -{ - class BasicDemo - { - static void Main() - { - IFoo foo1 = new Foo1(); - foo1.CallMTwice(); - - IFoo foo2 = new Foo2(); - foo2.CallMTwice(); - } - - interface IFoo - { - void M(); - - void CallMTwice() - { - Console.WriteLine("Calling M twice in default interface implementation"); - M(); - M(); - Console.WriteLine("Done"); - } - } - - class Foo1 : IFoo - { - public void M() => Console.WriteLine("Foo1.M"); - } - - class Foo2 : IFoo - { - public void M() => Console.WriteLine("Foo2.M"); - - public void CallMTwice() - { - Console.WriteLine("Calling M twice in Foo2"); - M(); - M(); - Console.WriteLine("Done"); - } - } - } -} diff --git a/CSharp8/DefaultInterfaceMethods/DefaultInterfaceMethods.csproj b/CSharp8/DefaultInterfaceMethods/DefaultInterfaceMethods.csproj deleted file mode 100644 index c6e161d9..00000000 --- a/CSharp8/DefaultInterfaceMethods/DefaultInterfaceMethods.csproj +++ /dev/null @@ -1,12 +0,0 @@ - - - - Exe - netcoreapp3.0 - - - - - - - diff --git a/CSharp8/DefaultInterfaceMethods/InternalAccess.cs b/CSharp8/DefaultInterfaceMethods/InternalAccess.cs deleted file mode 100644 index 889d5656..00000000 --- a/CSharp8/DefaultInterfaceMethods/InternalAccess.cs +++ /dev/null @@ -1,25 +0,0 @@ -using System; - -namespace DefaultInterfaceMethods -{ - public class InternalAccess - { - static void Main() - { - IFoo foo = new Foo1(); - foo.InternalOnly(); - } - - public interface IFoo - { - internal void InternalOnly(); - } - - public class Foo1 : IFoo - { - // Can't just write internal void InternalOnly() => ... - // Has to be explicit. - void IFoo.InternalOnly() => Console.WriteLine("Can't call this externally"); - } - } -} diff --git a/CSharp8/DefaultInterfaceMethods/StaticMembers.cs b/CSharp8/DefaultInterfaceMethods/StaticMembers.cs deleted file mode 100644 index cbe2b0e1..00000000 --- a/CSharp8/DefaultInterfaceMethods/StaticMembers.cs +++ /dev/null @@ -1,29 +0,0 @@ -using System; - -namespace DefaultInterfaceMethods -{ - class StaticMembers - { - static void Main() - { - IFoo foo1 = new IFoo.FooImpl(); - foo1.M(); - - IFoo foo2 = IFoo.DefaultInstance; - foo2.M(); - } - - public interface IFoo - { - static IFoo DefaultInstance = new FooImpl(); - - void M(); - - // Would usually be a default implementation... - class FooImpl : IFoo - { - public void M() => Console.WriteLine("Invoked"); - } - } - } -} diff --git a/CSharp8/IndexAndRange/IndexAndRange.csproj b/CSharp8/IndexAndRange/IndexAndRange.csproj deleted file mode 100644 index c6e161d9..00000000 --- a/CSharp8/IndexAndRange/IndexAndRange.csproj +++ /dev/null @@ -1,12 +0,0 @@ - - - - Exe - netcoreapp3.0 - - - - - - - diff --git a/CSharp8/IndexAndRange/Indexes.cs b/CSharp8/IndexAndRange/Indexes.cs deleted file mode 100644 index 522472a1..00000000 --- a/CSharp8/IndexAndRange/Indexes.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System; - -namespace IndexAndRange -{ - class Indexes - { - static void Main() - { - string text = "Conference"; - Console.WriteLine(text[^1]); - Index index = 1; - Console.WriteLine(index); - Console.WriteLine(text[index]); - // Fails - // index = -1; - // Console.WriteLine(index); - index = ^2; - Console.WriteLine(index); - Console.WriteLine(text[index]); - } - } -} diff --git a/CSharp8/IndexAndRange/Ranges.cs b/CSharp8/IndexAndRange/Ranges.cs deleted file mode 100644 index b1ad47c7..00000000 --- a/CSharp8/IndexAndRange/Ranges.cs +++ /dev/null @@ -1,24 +0,0 @@ -using System; - -namespace IndexAndRange -{ - class Ranges - { - static void Main() - { - // Simple range within a string - string text = "Hello world"; - Range range = 1..^2; - string stringSlice = text[range]; - Console.WriteLine(stringSlice); - - // Looks backwards... - stringSlice = text[^8..5]; - Console.WriteLine(stringSlice); - - ReadOnlySpan span = text.AsSpan(); - ReadOnlySpan spanSlice = span[6..]; - Console.WriteLine(spanSlice.ToString()); - } - } -} diff --git a/CSharp8/MinorFeatures/EnhancedUsing.cs b/CSharp8/MinorFeatures/EnhancedUsing.cs deleted file mode 100644 index 41beaed6..00000000 --- a/CSharp8/MinorFeatures/EnhancedUsing.cs +++ /dev/null @@ -1,27 +0,0 @@ -using System; -using System.IO; - -namespace MinorFeatures -{ - class EnhancedUsing - { - static void Main() - { - using var stream = new MemoryStream(); - stream.Write(new byte[10].AsSpan()); - - using var duck = new DuckDisposable(); - } - - // Note: "structural using" only works with ref struct types, - // but the error message doesn't mention that. - // See https://github.com/dotnet/roslyn/issues/33746 - public ref struct DuckDisposable - { - public void Dispose() - { - Console.WriteLine("Disposed"); - } - } - } -} diff --git a/CSharp8/MinorFeatures/MinorFeatures.csproj b/CSharp8/MinorFeatures/MinorFeatures.csproj deleted file mode 100644 index c6e161d9..00000000 --- a/CSharp8/MinorFeatures/MinorFeatures.csproj +++ /dev/null @@ -1,12 +0,0 @@ - - - - Exe - netcoreapp3.0 - - - - - - - diff --git a/CSharp8/MinorFeatures/NullCoalescingAssignment.cs b/CSharp8/MinorFeatures/NullCoalescingAssignment.cs deleted file mode 100644 index e7384e8d..00000000 --- a/CSharp8/MinorFeatures/NullCoalescingAssignment.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System; - -namespace MinorFeatures -{ - class NullCoalescingAssignment - { - static void Main() - { - string x = null; - - // Before... - x = x ?? "foo"; - // With C# 8 - x ??= "bar"; - - Console.WriteLine(x); - } - } -} diff --git a/CSharp8/MinorFeatures/ReadonlyInstanceMembers.cs b/CSharp8/MinorFeatures/ReadonlyInstanceMembers.cs deleted file mode 100644 index 324c99d7..00000000 --- a/CSharp8/MinorFeatures/ReadonlyInstanceMembers.cs +++ /dev/null @@ -1,136 +0,0 @@ -using System; - -namespace MinorFeatures -{ - // Note: this feature is only applicable to structs. - // IL notes: - // - ldfld loads the *value* of a field onto the stack - // - ldflda loads the *home location* of a field onto the stack - public class ReadonlyInstanceMembers - { - private readonly Struct1 field1 = new Struct1(10); - private readonly Struct2 field2 = new Struct2(20); - private readonly Struct3 field3 = new Struct3(30); - - public void CallMethods() - { - // ldarg.0 - // ldfld valuetype MinorFeatures.Struct1 MinorFeatures.ReadonlyInstanceMembers::field1 - // stloc.0 - // ldloca.s V_0 - // call instance int32 MinorFeatures.Struct1::GetValue() - field1.GetValue(); - - // ldarg.0 - // ldflda valuetype MinorFeatures.Struct2 MinorFeatures.ReadonlyInstanceMembers::field2 - // call instance int32 MinorFeatures.Struct2::GetValue() - field2.GetValue(); - - // ldarg.0 - // ldflda valuetype MinorFeatures.Struct3 MinorFeatures.ReadonlyInstanceMembers::field3 - // call instance int32 MinorFeatures.Struct3::GetValue() - field3.GetValue(); - } - - public void CallAutoProperties() - { - int tmp; - - // ldarg.0 - // ldflda valuetype MinorFeatures.Struct1 MinorFeatures.ReadonlyInstanceMembers::field1 - // call instance int32 MinorFeatures.Struct1::get_Value() - tmp = field1.Value; - - // ldarg.0 - // ldflda valuetype MinorFeatures.Struct2 MinorFeatures.ReadonlyInstanceMembers::field2 - // call instance int32 MinorFeatures.Struct2::get_Value() - tmp = field2.Value; - - // ldarg.0 - // ldflda valuetype MinorFeatures.Struct3 MinorFeatures.ReadonlyInstanceMembers::field3 - // call instance int32 MinorFeatures.Struct3::get_Value() - tmp = field3.Value; - } - - public void CallManualProperties() - { - int tmp; - - // ldarg.0 - // ldfld valuetype MinorFeatures.Struct1 MinorFeatures.ReadonlyInstanceMembers::field1 - // stloc.1 - // ldloca.s V_1 - // call instance int32 MinorFeatures.Struct1::get_Value2() - tmp = field1.Value2; - - // ldarg.0 - // ldflda valuetype MinorFeatures.Struct2 MinorFeatures.ReadonlyInstanceMembers::field2 - // call instance int32 MinorFeatures.Struct2::get_Value2() - tmp = field2.Value2; - - // ldarg.0 - // ldflda valuetype MinorFeatures.Struct3 MinorFeatures.ReadonlyInstanceMembers::field3 - // call instance int32 MinorFeatures.Struct3::get_Value2() - tmp = field3.Value2; - } - } - - public struct Struct1 - { - public int Value { get; } - public int Value2 => Value; - public int GetValue() => Value; - - public Struct1(int value) => Value = value; - } - - public struct Struct2 - { - public int Value { get; } - - // All of these have read-only getters - public readonly int Value2 => Value; - public readonly int Value3 { get { return Value; } } - public int Value4 - { - readonly get { return Value; } - set { throw new InvalidOperationException("You can't really set this"); } - } - - // This has a non-read-only getter, but a read-only setter. - public int Value5 - { - get { return Value; } - readonly set { throw new InvalidOperationException("You can't really set this"); } - } - - // Both the getter and setter are read-only - public readonly int Value6 - { - get { return Value; } - set { throw new InvalidOperationException("You can't really set this"); } - } - - public readonly int GetValue() => Value; - - public Struct2(int value) => Value = value; - } - - public readonly struct Struct3 - { - public int Value { get; } - public int Value2 => Value; - public int GetValue() => Value; - - public Struct3(int value) => Value = value; - } - - public struct NotReadonlyStruct - { - int value; - - public void SetValue(int newValue) => value = newValue; - public readonly int GetValueReadonly() => value; - public int GetValue() => value; - } -} diff --git a/CSharp8/MinorFeatures/StackallocInNestedContexts.cs b/CSharp8/MinorFeatures/StackallocInNestedContexts.cs deleted file mode 100644 index 5351670d..00000000 --- a/CSharp8/MinorFeatures/StackallocInNestedContexts.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System; - -namespace MinorFeatures -{ - class StackallocInNestedContexts - { - static void Main() - { - // Fine before C# 8 - Span span = stackalloc int[5]; - M(span); - - // Only valid in C# 8 - M(stackalloc int[10]); - } - - static void M(Span span) - { - } - } -} diff --git a/CSharp8/MinorFeatures/StaticLocalFunctions.cs b/CSharp8/MinorFeatures/StaticLocalFunctions.cs deleted file mode 100644 index aabe969d..00000000 --- a/CSharp8/MinorFeatures/StaticLocalFunctions.cs +++ /dev/null @@ -1,30 +0,0 @@ -using System; - -namespace MinorFeatures -{ - class StaticLocalFunctions - { - int field; - - public StaticLocalFunctions() - { - // Just to avoid the warning... - field = 10; - } - - static void Main() - { - new StaticLocalFunctions().Method(); - } - - void Method() - { - int capture = 10; - Foo(); - Bar(); - - void Foo() => Console.WriteLine($"I can access {field} and {capture}"); - static void Bar() => Console.WriteLine("I can't access field or capture"); - } - } -} diff --git a/CSharp8/MinorFeatures/UnmanagedConstructedTypes.cs b/CSharp8/MinorFeatures/UnmanagedConstructedTypes.cs deleted file mode 100644 index ce61ded4..00000000 --- a/CSharp8/MinorFeatures/UnmanagedConstructedTypes.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; - -namespace MinorFeatures -{ - class UnmanagedConstructedTypes - { - static void Main() - { - var foo = new Foo>(new Foo(0)); - Console.WriteLine(foo.Value.Value); - } - - public struct Foo where T : unmanaged - { - public T Value { get; } - - public Foo(T value) => Value = value; - } - } -} diff --git a/CSharp8/MinorFeatures/VerbatimInterpolatedStringLiterals.cs b/CSharp8/MinorFeatures/VerbatimInterpolatedStringLiterals.cs deleted file mode 100644 index 45f2141f..00000000 --- a/CSharp8/MinorFeatures/VerbatimInterpolatedStringLiterals.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; - -namespace MinorFeatures -{ - class VerbatimInterpolatedStringLiterals - { - static void Main() - { - // Only of these was valid in C# 7. I can't remember which. - Console.WriteLine(@$"This is valid"); - Console.WriteLine($@"This is valid too"); - } - } -} diff --git a/CSharp8/Nullability/AnnotationsOnlyContext.cs b/CSharp8/Nullability/AnnotationsOnlyContext.cs deleted file mode 100644 index a3998260..00000000 --- a/CSharp8/Nullability/AnnotationsOnlyContext.cs +++ /dev/null @@ -1,18 +0,0 @@ -#nullable disable warnings -#nullable enable annotations - -using System; - -namespace Nullability -{ - class AnnotationsOnlyContext - { - static void Main() - { - string? x = null; - string y = null; - Console.WriteLine(x.Length); - Console.WriteLine(y.Length); - } - } -} diff --git a/CSharp8/Nullability/App.config b/CSharp8/Nullability/App.config deleted file mode 100644 index 731f6de6..00000000 --- a/CSharp8/Nullability/App.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/CSharp8/Nullability/AwkwardInterface.cs b/CSharp8/Nullability/AwkwardInterface.cs deleted file mode 100644 index 8374b86a..00000000 --- a/CSharp8/Nullability/AwkwardInterface.cs +++ /dev/null @@ -1,44 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Diagnostics.CodeAnalysis; - -namespace Nullability -{ - // Should this be string or string? ? - class AwkwardInterface : IEqualityComparer - { - static void Main() - { - var comparer = new AwkwardInterface(); - // This should work - comparer.Equals(null, null); -#pragma warning disable CS8625 // Cannot convert null literal to non-nullable reference type. - comparer.GetHashCode(null); - } - - public bool Equals(string? x, string? y) - { - if (x == null && y == null) - { - return true; - } - - if (x == null || y == null) - { - return false; - } - // Bizarre, but hey... - return x.Length == y.Length; - } - - // We're forced to use string? due to the interface, but we don't want to actually allow null. - public int GetHashCode([DisallowNull] string? obj) - { - if (obj == null) - { - throw new ArgumentNullException(); - } - return obj.Length; - } - } -} diff --git a/CSharp8/Nullability/BasicDemo.cs b/CSharp8/Nullability/BasicDemo.cs deleted file mode 100644 index b2f0e3f1..00000000 --- a/CSharp8/Nullability/BasicDemo.cs +++ /dev/null @@ -1,42 +0,0 @@ -#nullable disable -// All code is available at: -// https://github.com/jskeet/DemoCode - -using System; - -namespace Nullability -{ - class Person - { - public string FirstName { get; } - public string LastName { get; } - public string MiddleName { get; } - - // TODO: Validate arguments - public Person(string firstName, string lastName, string middleName) => - (FirstName, LastName, MiddleName) = (firstName, lastName, middleName); - } - - class BasicDemo - { - static void Main() - { - var jon = new Person("Jon", "Skeet", "Leslie"); - var miguel = new Person("Miguel", "de Icaza", null); - PrintNameLengths(jon); - PrintNameLengths(miguel); - } - - static void PrintNameLengths(Person person) - { - string first = person.FirstName; - string last = person.LastName; - string middle = person.MiddleName; - - Console.WriteLine("First={0}; Last={1}; Middle={2}", - first.Length, - last.Length, - middle.Length); - } - } -} diff --git a/CSharp8/Nullability/ChangingField.cs b/CSharp8/Nullability/ChangingField.cs deleted file mode 100644 index bedbc2a7..00000000 --- a/CSharp8/Nullability/ChangingField.cs +++ /dev/null @@ -1,33 +0,0 @@ -using System; - -namespace Nullability -{ - class ChangingField - { - string? name; - - ChangingField(string? name) - { - this.name = name; - } - - static void Main() - { - new ChangingField("Jon").PrintNameLength(); - } - - public void PrintNameLength() - { - if (name != null) - { - DoSomethingEvil(); - Console.WriteLine(name.Length); - } - } - - private void DoSomethingEvil() - { - name = null; - } - } -} diff --git a/CSharp8/Nullability/ChangingProperty.cs b/CSharp8/Nullability/ChangingProperty.cs deleted file mode 100644 index 489d7383..00000000 --- a/CSharp8/Nullability/ChangingProperty.cs +++ /dev/null @@ -1,23 +0,0 @@ -using System; - -namespace Nullability -{ - class ChangingProperty - { - string? Name => DateTime.UtcNow.Second == 0 ? null : "not null"; - - static void Main() - { - var instance = new ChangingProperty(); - instance.PrintNameLength(); - } - - public void PrintNameLength() - { - if (Name is object) - { - Console.WriteLine(Name.Length); - } - } - } -} diff --git a/CSharp8/Nullability/ConditionalReturn.cs b/CSharp8/Nullability/ConditionalReturn.cs deleted file mode 100644 index 1a1bfd84..00000000 --- a/CSharp8/Nullability/ConditionalReturn.cs +++ /dev/null @@ -1,53 +0,0 @@ -using System; -using System.Diagnostics.CodeAnalysis; - -namespace Nullability -{ - class ConditionalReturn - { - static void Main() - { - // Infer nullability of an argument based on the return value. - string? text = null; - if (StringIsNullOrEmpty(text)) - { - Console.WriteLine("It was null or empty"); - } - else - { - // This should be okay - we know text isn't null - // at this point. - Console.WriteLine(text.Length); - } - - // Type system says value will be not-null. - // Attribute says it might actually be null. - // Interestingly, can't use "out string value" here - // even though that's the inferred type! - if (!TryGetValue(false, out var value)) - { -#pragma warning disable CS8602 // Dereference of a possibly null reference. - Console.WriteLine(value.Length); -#pragma warning restore CS8602 // Dereference of a possibly null reference. - } - } - - static bool StringIsNullOrEmpty([NotNullWhen(false)] string? text) => - string.IsNullOrEmpty(text); - - // Imagine a Dictionary - static bool TryGetValue(bool key, [MaybeNullWhen(false)] out string value) - { - if (key) - { - value = "Found the key"; - return true; - } - else - { - value = null!; - return false; - } - } - } -} diff --git a/CSharp8/Nullability/GenericConstraints.cs b/CSharp8/Nullability/GenericConstraints.cs deleted file mode 100644 index 80ab2c6e..00000000 --- a/CSharp8/Nullability/GenericConstraints.cs +++ /dev/null @@ -1,44 +0,0 @@ -namespace Nullability -{ - public class NotNull where T : notnull - { - // Invalid: - // public T? Foo; - } - - public class MaybeNullableRef where T : class? - { - public void Method(T value) { } - } - - public class NotNullableRef where T : class - { - public void Method(T? value) { } - } - - class Test - { - static void Main() - { - var valid1 = new NotNull(); - var valid2 = new NotNull(); - var valid3 = new MaybeNullableRef(); - var valid4 = new MaybeNullableRef(); - var valid5 = new NotNullableRef(); - - // Invalid - but only warnings for 3 of them! -#pragma warning disable CS8714 // The type cannot be used as type parameter in the generic type or method. Nullability of type argument doesn't match 'notnull' constraint. - var invalid1 = new NotNull(); - var invalid2 = new NotNull(); -#pragma warning restore CS8714 - - // Actual errors... - //var invalid3 = new MaybeNullableRef(); - //var invalid4 = new MaybeNullableRef(); - -#pragma warning disable CS8634 // The type cannot be used as type parameter in the generic type or method. Nullability of type argument doesn't match 'class' constraint. - var invalid5 = new NotNullableRef(); -#pragma warning restore CS8634 - } - } -} diff --git a/CSharp8/Nullability/GenericType.cs b/CSharp8/Nullability/GenericType.cs deleted file mode 100644 index 0ad8d997..00000000 --- a/CSharp8/Nullability/GenericType.cs +++ /dev/null @@ -1,18 +0,0 @@ -namespace Nullability -{ - class GenericType where T : class - { - public T? Value { get; set; } - - // This feels reasonable - public GenericType(T value) => Value = value; - - public GenericType() - { - // This silences the compiler, but it's not clear why. - // default(string) is still null... and it's also the default - // value for the field! - Value = default(T); - } - } -} diff --git a/CSharp8/Nullability/NullPropagation.cs b/CSharp8/Nullability/NullPropagation.cs deleted file mode 100644 index b805e094..00000000 --- a/CSharp8/Nullability/NullPropagation.cs +++ /dev/null @@ -1,29 +0,0 @@ -// Hmm... no need for this from the command line, but Visual Studio is a bit behind. -#pragma warning disable CS8600 // Converting null literal or possible null value to non-nullable type. - -using System.Diagnostics.CodeAnalysis; - -namespace Nullability -{ - class NullPropagation - { - static void Main() - { - string text = "foo"; - // This should be okay - we know the input isn't null, so - // we should be able to know the output isn't null. - string doubled = NullOrDouble(text); - - string? nullable = null; - // This should (and does) give a warning -#pragma warning disable CS8600 // Converting null literal or possible null value to non-nullable type. - string doubledNullable = NullOrDouble(nullable); - } - - // Null input leads to null output; non-null input leads to non-null output. - // Side issue: it would be nice to be able to use nameof here. - [return: NotNullIfNotNull("input")] - static string? NullOrDouble(string? input) => - input is null ? null : input + input; - } -} diff --git a/CSharp8/Nullability/Nullability.csproj b/CSharp8/Nullability/Nullability.csproj deleted file mode 100644 index 700d907b..00000000 --- a/CSharp8/Nullability/Nullability.csproj +++ /dev/null @@ -1,13 +0,0 @@ - - - - netcoreapp3.0 - Exe - enable - - - - - - - diff --git a/CSharp8/Nullability/Preconditions.cs b/CSharp8/Nullability/Preconditions.cs deleted file mode 100644 index 90a5cb29..00000000 --- a/CSharp8/Nullability/Preconditions.cs +++ /dev/null @@ -1,26 +0,0 @@ -using System; -using System.Diagnostics.CodeAnalysis; - -namespace Nullability -{ - class Preconditions - { - static void Main() - { - string? text = MaybeNull(); - string textNotNull = CheckNotNull(text); - // This is relatively obvious... - Console.WriteLine(textNotNull.Length); - - // This is less so. The NotNull attribute implies that the - // method will be validating the input, so the method - // won't return if the value is null. - Console.WriteLine(text.Length); - } - - internal static T CheckNotNull([NotNull] T? input) where T : class => - input ?? throw new ArgumentNullException(); - - internal static string? MaybeNull() => DateTime.UtcNow.Second == 0 ? null : "not null"; - } -} diff --git a/CSharp8/Nullability/ReferenceEquality.cs b/CSharp8/Nullability/ReferenceEquality.cs deleted file mode 100644 index 2522b2ae..00000000 --- a/CSharp8/Nullability/ReferenceEquality.cs +++ /dev/null @@ -1,25 +0,0 @@ -#pragma warning disable CS8602 -using System; - -namespace Nullability -{ - class ReferenceEquality - { - static void Main() - { - string? text = null; - - if (ReferenceEquals(text, null)) - { - Console.WriteLine("text was null"); - } - else - { - // If we're calling object.ReferenceEquals, one operand is a constant - // null, and the return value is false, we should know the other operand - // was not null. - Console.WriteLine(text.Length); - } - } - } -} diff --git a/CSharp8/Nullability/SneakyCustomEquality.cs b/CSharp8/Nullability/SneakyCustomEquality.cs deleted file mode 100644 index 9982b851..00000000 --- a/CSharp8/Nullability/SneakyCustomEquality.cs +++ /dev/null @@ -1,34 +0,0 @@ -using System; - -namespace Nullability -{ - class SneakyCustomEquality - { - public int Value { get; } - - public SneakyCustomEquality(int value) => Value = value; - - public static bool operator - ==(SneakyCustomEquality? lhs, SneakyCustomEquality? rhs) => false; - public static bool operator - !=(SneakyCustomEquality? lhs, SneakyCustomEquality? rhs) => true; - public override int GetHashCode() => 0; - public override bool Equals(object? obj) => false; - - static void Main() - { - SneakyCustomEquality? x = null; - if (x == null) - { - Console.WriteLine("X was null"); - } - else - { - // X isn't null, so this should be fine, right? (No: boom!) - // Compiler is relying on a sensible == implementation. - // (Not a bad thing, but...) - Console.WriteLine(x.Value); - } - } - } -} diff --git a/CSharp8/Nullability/SneakyInParameter.cs b/CSharp8/Nullability/SneakyInParameter.cs deleted file mode 100644 index 17ec2907..00000000 --- a/CSharp8/Nullability/SneakyInParameter.cs +++ /dev/null @@ -1,27 +0,0 @@ -using System; - -namespace Nullability -{ - class SneakyInParameter - { - static void Main() - { - string? text = "Not null"; - Action action = () => text = null; - // Boom! - int length = LengthIfPossible(in text, action); - } - - static int LengthIfPossible(in string? text, Action action) - { - if (text == null) - { - return -1; - } - action(); - // We've checked whether text is null or not, right? - // So if we're warning-free, all should be well... - return text.Length; - } - } -} diff --git a/CSharp8/Nullability/WarningsOnlyContext.cs b/CSharp8/Nullability/WarningsOnlyContext.cs deleted file mode 100644 index 71d48b05..00000000 --- a/CSharp8/Nullability/WarningsOnlyContext.cs +++ /dev/null @@ -1,28 +0,0 @@ -#nullable enable warnings -#nullable disable annotations - -using System; - -namespace Nullability -{ - class WarningsOnlyContext - { - static void Main() - { - Check(null); - Check("not null"); - } - - static void Check(string x) - { - if (x is null) - { - Console.WriteLine("x is null"); - } - else - { - Console.WriteLine($"x is not-null, with length {x.Length}"); - } - } - } -} diff --git a/CSharp8/Patterns/DateTimeExtensions.cs b/CSharp8/Patterns/DateTimeExtensions.cs deleted file mode 100644 index 40e07533..00000000 --- a/CSharp8/Patterns/DateTimeExtensions.cs +++ /dev/null @@ -1,10 +0,0 @@ -using System; - -namespace PatternsAndRanges -{ - static class DateTimeExtensions - { - public static void Deconstruct(this DateTime date, out int year, out int month, out int day) => - (year, month, day) = (date.Year, date.Month, date.Day); - } -} diff --git a/CSharp8/Patterns/DeconstructionInPatterns.cs b/CSharp8/Patterns/DeconstructionInPatterns.cs deleted file mode 100644 index dbdc85ea..00000000 --- a/CSharp8/Patterns/DeconstructionInPatterns.cs +++ /dev/null @@ -1,25 +0,0 @@ -using System; - -namespace PatternsAndRanges -{ - class DeconstructionInPatterns - { - static void Main() - { - ShowFact(new DateTime(2016, 2, 29)); - ShowFact(DateTime.Today); - ShowFact(new DateTime(2018, 6, 19)); - ShowFact(new DateTime(2015, 5, 1)); - - void ShowFact(DateTime date) => Console.WriteLine(GetInterestingFact(date)); - } - - static string GetInterestingFact(DateTime date) => date switch - { - (_, _, 1) => $"{date:d} is the first of the month", - (_, 6, 19) => $"{date:d} is Jon's birthday", - (int year, 2, 29) => $"{year} is a leap year", - _ => $"{date:d} is a boring date" - }; - } -} diff --git a/CSharp8/Patterns/DoesItBlend.cs b/CSharp8/Patterns/DoesItBlend.cs deleted file mode 100644 index 9d5e9fea..00000000 --- a/CSharp8/Patterns/DoesItBlend.cs +++ /dev/null @@ -1,56 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace PatternsAndRanges -{ - class DoesItBlend - { - static void Main() - { - TryBlend(new object()); - TryBlend("this is a long string"); - TryBlend("short"); - TryBlend(1); - TryBlend(2); - } - - static void TryBlendWithoutSwitchExpressions(object value) - { - string message; - switch (value) - { - case string x when x.Length > 10: - message = "Long strings jam up my blender"; - break; - case string x: - message = "Short strings blend"; - break; - case int x when (x & 1) == 0: - message = "Even numbers blend"; - break; - case int x: - message = "Odd numbers do not blend"; - break; - default: - message = $"{value} does not blend"; - break; - } - Console.WriteLine(message); - } - - static string TryBlend(object value) => - value switch - { - 5 => "", - string x when x.Length > 10 => - "Long strings jam up my blender", - string x => "Short strings blend", - int x when (x & 1) == 0 => "Even numbers blend", - int x => "Odd numbers do not blend", - _ => $"{value} does not blend" - }; - } -} diff --git a/CSharp8/Patterns/NotExhaustive.cs b/CSharp8/Patterns/NotExhaustive.cs deleted file mode 100644 index 64400d54..00000000 --- a/CSharp8/Patterns/NotExhaustive.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; - -namespace PatternsAndRanges -{ - class NotExhaustive - { - static void Main() - { - int input = 5; - int value = input switch - { - 0 => 1, - 1 => 2, - _ => 0 - }; - - Console.WriteLine(value); - } - } -} diff --git a/CSharp8/Patterns/Patterns.csproj b/CSharp8/Patterns/Patterns.csproj deleted file mode 100644 index c6e161d9..00000000 --- a/CSharp8/Patterns/Patterns.csproj +++ /dev/null @@ -1,12 +0,0 @@ - - - - Exe - netcoreapp3.0 - - - - - - - diff --git a/CSharp8/Patterns/PropertyMatching.cs b/CSharp8/Patterns/PropertyMatching.cs deleted file mode 100644 index 95c1a400..00000000 --- a/CSharp8/Patterns/PropertyMatching.cs +++ /dev/null @@ -1,67 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace PatternsAndRanges -{ - public class Item - { - public string Description { get; } - - public Item(string description) => Description = description; - } - - public class Weapon : Item - { - public int Damage { get; } - - public Weapon(string description, int damage) : base(description) - => Damage = damage; - } - - public class Artwork : Item - { - public DateTime CreationDate { get; } - - public Artwork(string description, DateTime creationDate) : base(description) - => CreationDate = creationDate; - } - - class PropertyMatching - { - static void Main() - { - var items = new List - { - new Item("Just a boring item"), - new Weapon("Rocket launcher", 1000), - new Artwork("Ouvrage du Vent II", new DateTime(1962, 1, 1)), - new Weapon("Croquet mallet", 20), - new Weapon("Bad joke", 0), - new Artwork("A Sunday Afternoon [...]", new DateTime(1884, 1, 1)) - }; - - foreach (var item in items) - { - Console.WriteLine($"{item.Description}: {GetFact(item)}"); - } - } - - static string GetFact(Item item) => item switch - { - Weapon { Damage: 0 } => "Harmless", - Weapon { Damage: var d } w when d > 500 => $"Ooh, heavy! {w}", - Weapon { Damage: var d } => $"Lightweight: only does {d} damage", - Artwork { CreationDate: var (year, _, _) } => $"Created in {year}", - _ => "Nothing interesting" - }; - - // No type name in the patterns, because we assume it's a Weapon - static string GetWeaponFact(Weapon weapon) => weapon switch - { - { Damage: 0 } => "Harmless", - { Damage: var d } w when d > 500 => $"Ooh, heavy! {w}", - { Damage: var d } => $"Lightweight: only does {d} damage", - null => throw new ArgumentNullException(nameof(weapon)) - }; - } -} diff --git a/CSharp8/Patterns/SwitchExpression.cs b/CSharp8/Patterns/SwitchExpression.cs deleted file mode 100644 index f8d7d86a..00000000 --- a/CSharp8/Patterns/SwitchExpression.cs +++ /dev/null @@ -1,108 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace PatternsAndRanges -{ - class SwitchExpression - { - static void Main() - { - Func fib = Fib4a; - for (int i = 0; i < 10; i++) - { - Console.WriteLine($"{i}: {fib(i)}"); - } - } - - static int Fib1(int n) - { - if (n < 0) - { - throw new ArgumentOutOfRangeException(); - } - if (n == 0) - { - return 0; - } - if (n == 1) - { - return 1; - } - return Fib1(n - 1) + Fib1(n - 2); - } - - static int Fib2(int n) - { - if (n < 0) - { - throw new ArgumentOutOfRangeException(); - } - switch (n) - { - case 0: return 0; - case 1: return 1; - default: return Fib2(n - 1) + Fib2(n - 2); - } - } - - static int Fib3(int n) - { - switch (n) - { - case 0: return 0; - case 1: return 1; - default: return n >= 0 ? Fib3(n - 1) + Fib3(n - 2) - : throw new ArgumentOutOfRangeException(); - } - } - - static int Fib4a(int n) - { - int result = n switch - { - 0 => 0, - 1 => 1, - _ => n >= 0 ? Fib4a(n - 1) + Fib4a(n - 2) - : throw new ArgumentOutOfRangeException() - }; - return result; - } - - static int Fib4b(int n) => n switch - { - 0 => 0, - 1 => 1, - _ => n >= 0 ? Fib4b(n - 1) + Fib4b(n - 2) - : throw new ArgumentOutOfRangeException() - }; - - static int Fib5(int n) => n switch - { - _ when n < 0 => throw new ArgumentOutOfRangeException(), - 0 => 0, - 1 => 1, - _ => Fib5(n - 1) + Fib5(n - 2) - }; - - static int Fib6(int n) - { - return Impl((0, 1), 0); - - int Impl((int current, int next) tuple, int index) => - index == n ? tuple.current : Impl((tuple.next, tuple.current + tuple.next), index + 1); - } - - // Just for completeness... the *nice* version. - // (No switch expressions though...) - static IEnumerable Fib7() - { - int current = 0; - int next = 1; - while (true) - { - yield return current; - (current, next) = (next, current + next); - } - } - } -} diff --git a/CameraControl/CameraControl.Sandbox/CameraControl.Sandbox.csproj b/CameraControl/CameraControl.Sandbox/CameraControl.Sandbox.csproj deleted file mode 100644 index f11e838a..00000000 --- a/CameraControl/CameraControl.Sandbox/CameraControl.Sandbox.csproj +++ /dev/null @@ -1,15 +0,0 @@ - - - - Exe - net8.0 - enable - enable - - - - - - - - diff --git a/CameraControl/CameraControl.Sandbox/Program.cs b/CameraControl/CameraControl.Sandbox/Program.cs deleted file mode 100644 index 441e7a29..00000000 --- a/CameraControl/CameraControl.Sandbox/Program.cs +++ /dev/null @@ -1,21 +0,0 @@ -using CameraControl.Visca; -using Microsoft.Extensions.Logging; - -// Simple console app to allow easy testing of cameras. - -var loggingFactory = LoggerFactory.Create(builder => builder.AddConsole().AddSimpleConsole(options => -{ - options.SingleLine = true; - options.TimestampFormat = "HH:mm:ss.FFFFFF"; -}).SetMinimumLevel(LogLevel.Trace)); -var logger = loggingFactory.CreateLogger("Visca"); - -// PTZOptics -//var controller = ViscaController.ForTcp("192.168.1.45", 5678, ViscaMessageFormat.Raw, logger: logger); -//var controller = ViscaController.ForUdp("192.168.1.45", 1259, ViscaMessageFormat.Raw, logger: logger); - -// Tail Air on Wifi -var controller = ViscaController.ForUdp("192.168.1.83", 52381, ViscaMessageFormat.Encapsulated, logger: logger); - -var power = await controller.GetPowerStatus(); -Console.WriteLine(power); diff --git a/CameraControl/CameraControl.Visca.Demo/App.xaml b/CameraControl/CameraControl.Visca.Demo/App.xaml deleted file mode 100644 index 6ad32dcf..00000000 --- a/CameraControl/CameraControl.Visca.Demo/App.xaml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - diff --git a/CameraControl/CameraControl.Visca.Demo/App.xaml.cs b/CameraControl/CameraControl.Visca.Demo/App.xaml.cs deleted file mode 100644 index 4946217b..00000000 --- a/CameraControl/CameraControl.Visca.Demo/App.xaml.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Configuration; -using System.Data; -using System.Linq; -using System.Threading.Tasks; -using System.Windows; - -namespace CameraControl.Visca.Demo -{ - /// - /// Interaction logic for App.xaml - /// - public partial class App : Application - { - } -} diff --git a/CameraControl/CameraControl.Visca.Demo/AssemblyInfo.cs b/CameraControl/CameraControl.Visca.Demo/AssemblyInfo.cs deleted file mode 100644 index 8b5504ec..00000000 --- a/CameraControl/CameraControl.Visca.Demo/AssemblyInfo.cs +++ /dev/null @@ -1,10 +0,0 @@ -using System.Windows; - -[assembly: ThemeInfo( - ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located - //(used if a resource is not found in the page, - // or application resource dictionaries) - ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located - //(used if a resource is not found in the page, - // app, or any theme specific resource dictionaries) -)] diff --git a/CameraControl/CameraControl.Visca.Demo/CameraControl.Visca.Demo.csproj b/CameraControl/CameraControl.Visca.Demo/CameraControl.Visca.Demo.csproj deleted file mode 100644 index ae9fcb2d..00000000 --- a/CameraControl/CameraControl.Visca.Demo/CameraControl.Visca.Demo.csproj +++ /dev/null @@ -1,14 +0,0 @@ - - - - WinExe - net8.0-windows - true - NU1701 - - - - - - - diff --git a/CameraControl/CameraControl.Visca.Demo/MainWindow.xaml b/CameraControl/CameraControl.Visca.Demo/MainWindow.xaml deleted file mode 100644 index bca1be3b..00000000 --- a/CameraControl/CameraControl.Visca.Demo/MainWindow.xaml +++ /dev/null @@ -1,70 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - IP address - 192.168.1.189 - - - - - - - - - - - - - - - - - - - - - - - diff --git a/CameraControl/CameraControl.Visca.Demo/MainWindow.xaml.cs b/CameraControl/CameraControl.Visca.Demo/MainWindow.xaml.cs deleted file mode 100644 index 615db594..00000000 --- a/CameraControl/CameraControl.Visca.Demo/MainWindow.xaml.cs +++ /dev/null @@ -1,121 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using System; -using System.ComponentModel; -using System.Windows; -using System.Windows.Input; - -namespace CameraControl.Visca.Demo -{ - /// - /// Interaction logic for MainWindow.xaml - /// - public partial class MainWindow : Window, INotifyPropertyChanged - { - private ViscaController controller; - - public event PropertyChangedEventHandler PropertyChanged; - - public int PanSpeed { get; private set; } = 0; - public int TiltSpeed { get; private set; } = 0; - public int ZoomSpeed { get; private set; } = 0; - - public MainWindow() - { - InitializeComponent(); - DataContext = this; - } - - private void Connect(object sender, RoutedEventArgs e) - { - controller = ViscaController.ForTcp(ipAddress.Text, 5678, ViscaMessageFormat.Raw); - } - - private void StopContinuousPanTilt(object sender, MouseButtonEventArgs e) => SetPanTiltSpeed(0, 0); - private void StopContinuousZoom(object sender, MouseButtonEventArgs e) => SetZoomSpeed(0); - - private void AdjustContinuousPanTilt(object sender, MouseButtonEventArgs e) => - AdjustContinuousPanTilt(sender, (MouseEventArgs) e); - - private void AdjustContinuousPanTilt(object sender, MouseEventArgs e) - { - if (e.LeftButton != MouseButtonState.Pressed) - { - return; - } - var position = e.GetPosition(panButton); - - int panSpeed = NormalizeSpeed(position.X, panButton.ActualWidth, ViscaController.MaxPanTiltSpeed); - // Tilt has "up is positive" in camera coordinates, but "up is negative" in screen coordinates - int tiltSpeed = -NormalizeSpeed(position.Y, panButton.ActualHeight, ViscaController.MaxPanTiltSpeed); - SetPanTiltSpeed(panSpeed, tiltSpeed); - } - - private void AdjustContinuousZoom(object sender, MouseButtonEventArgs e) => - AdjustContinuousZoom(sender, (MouseEventArgs) e); - - private void AdjustContinuousZoom(object sender, MouseEventArgs e) - { - if (e.LeftButton != MouseButtonState.Pressed) - { - return; - } - var position = e.GetPosition(zoomButton); - int zoomSpeed = NormalizeSpeed(position.X, zoomButton.ActualWidth, ViscaController.MaxZoomSpeed); - SetZoomSpeed(zoomSpeed); - } - - private void SetPanTiltSpeed(int panSpeed, int tiltSpeed) - { - if (panSpeed == PanSpeed && tiltSpeed == TiltSpeed) - { - return; - } - bool? panDirection = panSpeed == 0 ? default(bool?) : panSpeed > 0; - bool? tiltDirection = tiltSpeed == 0 ? default(bool?) : tiltSpeed > 0; - controller?.ContinuousPanTilt(panDirection, tiltDirection, AbsSpeed(panSpeed), AbsSpeed(tiltSpeed), default); - PanSpeed = panSpeed; - TiltSpeed = tiltSpeed; - PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(PanSpeed))); - PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(TiltSpeed))); - } - - private void SetZoomSpeed(int zoomSpeed) - { - if (zoomSpeed == ZoomSpeed) - { - return; - } - bool? zoomDirection = zoomSpeed == 0 ? default(bool?) : zoomSpeed > 0; - controller?.ContinuousZoom(zoomDirection, AbsSpeed(zoomSpeed), default); - ZoomSpeed = zoomSpeed; - PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(ZoomSpeed))); - } - - /// - /// Normalizes a speed to the range [-maxValue, maxValue], assuming that - /// should be in the range [0, visualScale] (but might be outside that range, in which case - /// the maximum value should be used). - /// - private static int NormalizeSpeed(double position, double visualScale, int maxValue) - { - // Scale to -1 / +1 - double scaledPosition = (position / visualScale) * 2 - 1; - int speed = (int) (scaledPosition * (maxValue + 1)); - speed = Math.Min(speed, maxValue); - speed = Math.Max(speed, -maxValue); - return speed; - } - - /// - /// Works out the speed to use in the VISCA packet, assuming that a speed - /// of 0 should become 1 (as other code will have set the direction to ignore the - /// value) and negative values should become positive. - /// - private static byte AbsSpeed(int speed) => (byte) Math.Max(Math.Abs(speed), 1); - - private void Reset(object sender, RoutedEventArgs e) => controller?.GoHome(); - } -} diff --git a/CameraControl/CameraControl.Visca.StressTest/CameraControl.Visca.StressTest.csproj b/CameraControl/CameraControl.Visca.StressTest/CameraControl.Visca.StressTest.csproj deleted file mode 100644 index 907d16ca..00000000 --- a/CameraControl/CameraControl.Visca.StressTest/CameraControl.Visca.StressTest.csproj +++ /dev/null @@ -1,14 +0,0 @@ - - - - Exe - net6.0 - enable - enable - - - - - - - diff --git a/CameraControl/CameraControl.Visca.StressTest/Program.cs b/CameraControl/CameraControl.Visca.StressTest/Program.cs deleted file mode 100644 index e8a1706c..00000000 --- a/CameraControl/CameraControl.Visca.StressTest/Program.cs +++ /dev/null @@ -1,100 +0,0 @@ -// Copyright 2022 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using CameraControl.Visca; - -// This is a stress test hammering a camera from multiple threads (tasks). -// Motivation: in practice, we're seeing a lot of errors reported via VISCA, like this: -// Error reported by VISCA interface. Error data: 90-60-02 -// If we can provoke this, we may be able to fix it. - -// Configuration -// PTZOptics camera -string host = "192.168.1.45"; -int port = 5678; - -// Minrray camera -// string host = "192.168.1.47"; -// int port = 1259; - -// True to use one controller (and therefore one TcpClient) for all tasks; false to use one per task -bool singleController = false; -int taskCount = 10; -TimeSpan delay = TimeSpan.FromMilliseconds(5); -TimeSpan commandTimeout = TimeSpan.FromSeconds(1); -TimeSpan testDuration = TimeSpan.FromMinutes(1); - - -// Main code. All the semaphores are just to so that we can get as much genuine concurrency -// as possible; tasks don't start up immediately, as the thread pool gradually adds tasks. -// So we have one set of semaphores to let the tasks each say "I'm ready" - and then a separate -// semaphore that the "controlling" code releases to say "Go!". -// -// It's entirely possible that using dedicated threads would be simpler here, but the library -// is async so we'd end up using the thread pool anyway (implicitly) unless we created dedicated -// synchronization contexts. -var readySemaphores = Enumerable.Range(1, taskCount).Select(_ => new Semaphore(0, 1)).ToList(); -var goSemaphore = new Semaphore(0, taskCount); -DateTime testEnd = DateTime.UtcNow + testDuration; - -// If we're going to use the same controller for all tasks, create it now. -var singletonController = singleController ? ViscaController.ForTcp(host, port, ViscaMessageFormat.Raw, commandTimeout) : null; -// Start the tasks -var tasks = readySemaphores.Select(readySemaphore => RunTestAsync(readySemaphore)).ToList(); - -// -Console.WriteLine("Waiting for tasks to be ready..."); -foreach (var semaphore in readySemaphores) -{ - semaphore.WaitOne(); -} -Console.WriteLine("Releasing tasks"); -goSemaphore.Release(taskCount); - -// Report results -await Task.WhenAll(tasks); -for (int i = 0; i < tasks.Count; i++) -{ - var (success, errorResponses, protocolErrors, cancellations) = tasks[i].Result; - Console.WriteLine($"Task {i}: {success} / {errorResponses} / {protocolErrors} / {cancellations}"); -} - -// The actual test code. -async Task<(int, int, int, int)> RunTestAsync(Semaphore readySemaphore) -{ - // Effectively "switch to the thread pool". - await Task.Yield(); - - // Only start the test when all tasks are ready to go. - readySemaphore.Release(); - goSemaphore.WaitOne(); - - int success = 0; - int errorResponses = 0; - int protocolErrors = 0; - int cancellations = 0; - var controller = singletonController ?? ViscaController.ForTcp(host, port, ViscaMessageFormat.Raw, commandTimeout); - while (DateTime.UtcNow < testEnd) - { - try - { - await controller.GetPowerStatus(); - success++; - } - catch (ViscaResponseException) - { - errorResponses++; - } - catch (ViscaProtocolException) - { - protocolErrors++; - } - catch (OperationCanceledException) - { - cancellations++; - } - await Task.Delay(delay); - } - return(success, errorResponses, protocolErrors, cancellations); -} diff --git a/CameraControl/CameraControl.Visca/CallerArgumentExpressionAttribute.cs b/CameraControl/CameraControl.Visca/CallerArgumentExpressionAttribute.cs deleted file mode 100644 index 1bac6153..00000000 --- a/CameraControl/CameraControl.Visca/CallerArgumentExpressionAttribute.cs +++ /dev/null @@ -1,10 +0,0 @@ -namespace System.RuntimeCompilerServices; - -[AttributeUsage(AttributeTargets.Parameter, AllowMultiple = false, Inherited = false)] -internal sealed class CallerArgumentExpressionAttribute : Attribute -{ - public string ParameterName { get; set; } - - public CallerArgumentExpressionAttribute(string parameterName) => - ParameterName = parameterName; -} diff --git a/CameraControl/CameraControl.Visca/CameraControl.Visca.csproj b/CameraControl/CameraControl.Visca/CameraControl.Visca.csproj deleted file mode 100644 index 9a18874d..00000000 --- a/CameraControl/CameraControl.Visca/CameraControl.Visca.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - net9.0 - Enable - enable - 10 - - - - - diff --git a/CameraControl/CameraControl.Visca/FakeViscaCamera.cs b/CameraControl/CameraControl.Visca/FakeViscaCamera.cs deleted file mode 100644 index fe05e82f..00000000 --- a/CameraControl/CameraControl.Visca/FakeViscaCamera.cs +++ /dev/null @@ -1,342 +0,0 @@ -// Copyright 2021 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using Microsoft.Extensions.Logging; - -namespace CameraControl.Visca; - -/// -/// A VISCA client (to be used with ) that is purely fake, -/// always responding with success messages (unless bad input is detected), and faking the ability -/// to pan, tilt and zoom within the same limits as PTZOptics PT30X-NDI cameras. -/// -/// -/// Starting the camera creates a new background thread. Disposing of it stops this thread. Note -/// that disposing of the controller also disposes this. -/// -public sealed class FakeViscaCamera : IDisposable -{ - private bool disposed; - - // Panning at maximum speed from hard-left to hard-right should take 4-5 seconds. - // Distance travelled = MaxPan-MinPan = 4896 - // Steps at max speed = 4896 / MaxPanSpeed = 204 - // At 20ms, that's 4080ms - that'll do. - private static readonly TimeSpan DelayStep = TimeSpan.FromMilliseconds(20); - - // Zooming at maximum speed from reset to "fully in" or vice versa should take 4-5 seconds. - // Single steps at max speed = 16384 / MaxZoomSpeed = 2340 - // Time for 2340 single steps = 46800 - // With a multiplier of 10, the time is 4680ms - that'll do. - private const int ZoomSpeedMultiplier = 10; - - private const short MinPan = -2448; - private const short MaxPan = 2448; - - private const short MinTilt = -432; - private const short MaxTilt = 1296; - - private const short MinZoom = 0; - private const short MaxZoom = 16384; - - // TODO: Make these threadsafe, given that we really are accessing them from all over the place. - public short Zoom { get; private set; } - public short Pan { get; private set; } - public short Tilt { get; private set; } - - private volatile sbyte zoomVelocity; - private volatile sbyte panVelocity; - private volatile sbyte tiltVelocity; - - private FakeViscaCamera() - { - } - - public ViscaController CreateController(TimeSpan? commandTimeout, ILogger? logger) => - new ViscaController(new FakeViscaClient(this), commandTimeout ?? ViscaController.DefaultTimeout, logger); - - public static FakeViscaCamera Start() - { - var ret = new FakeViscaCamera(); - new Thread(ret.Loop) { IsBackground = true }.Start(); - return ret; - } - - private void Loop() - { - while (!disposed) - { - if (panVelocity != 0) - { - Pan = Math.Min(Math.Max((short) (Pan + panVelocity), MinPan), MaxPan); - if (Pan == MinPan || Pan == MaxPan) - { - panVelocity = 0; - } - } - if (tiltVelocity != 0) - { - Tilt = Math.Min(Math.Max((short) (Tilt + tiltVelocity), MinTilt), MaxTilt); - if (Tilt == MinTilt || Tilt == MaxTilt) - { - tiltVelocity = 0; - } - } - if (zoomVelocity != 0) - { - Zoom = Math.Min(Math.Max((short) (Zoom + (zoomVelocity * ZoomSpeedMultiplier)), MinZoom), MaxZoom); - if (Zoom == MinZoom || Zoom == MaxZoom) - { - zoomVelocity = 0; - } - } - Thread.Sleep(DelayStep); - } - } - - public void Dispose() => disposed = true; - - /// - /// A Visca client for the fake camera. The behaviour of multiple clients for the same camera is somewhat - /// unpredictable if they're both trying to change pan/tilt etc, but most other operations should be okay - /// - in particular, it's fine to have one client polling the power status, effectively as a connection check, - /// while another operates the fake camera normally. - /// - private class FakeViscaClient : IViscaClient - { - // Note: all these assume a camera address of 1, which corresponds to all the VISCA-over-IP commands. - private static readonly ViscaPayload SyntaxError = CreatePayload(0x90, 0x60, 0x02); - private static readonly ViscaPayload CommandNotExecutable = CreatePayload(0x90, 0x60, 0x41); - private static readonly ViscaPayload Done = CreatePayload(0x90, 0x50); - private static readonly byte[] QueryResponsePrefix = { 0x90, 0x50 }; - - private readonly FakeViscaCamera camera; - - public void Dispose() { } - - internal FakeViscaClient(FakeViscaCamera camera) - { - this.camera = camera; - } - - // We only allow one command to execute at a time per controller. That makes life a lot simpler. - private readonly SemaphoreSlim semaphore = new SemaphoreSlim(1); - - async Task IViscaClient.SendAsync(ViscaMessage message, CancellationToken cancellationToken) - { - var payload = message.Payload; - await semaphore.WaitAsync(cancellationToken).ConfigureAwait(false); - try - { - if (payload.GetByte(0) != 0x81 || payload.Length < 5) - { - return new ViscaMessage(SyntaxError); - } - var responsePayload = payload.GetByte(1) switch - { - 0x01 => await ExecuteCommand(payload).ConfigureAwait(false), - 0x09 => ExecuteQuery(payload), - _ => SyntaxError - }; - return new ViscaMessage(responsePayload); - } - finally - { - semaphore.Release(); - } - } - - private Task ExecuteCommand(ViscaPayload request) => request.GetByte(2) switch - { - 0x04 => ExecuteGeneralCommand(request), - 0x06 => ExecutePanTiltDriveCommand(request), - _ => Task.FromResult(CommandNotExecutable) - }; - - /// - /// Executes a command beginning with 0x81 0x01 0x04. - /// - private async Task ExecuteGeneralCommand(ViscaPayload request) - { - switch (request.GetByte(3)) - { - // CAM_Zoom - case 0x07: - byte arg = request.GetByte(4); - switch (arg) - { - // Stop - case 0x00: - camera.zoomVelocity = 0; - break; - case 0x02: - camera.zoomVelocity = (sbyte) ViscaController.MaxZoomSpeed; - break; - case 0x03: - camera.zoomVelocity = -(sbyte) ViscaController.MaxZoomSpeed; - break; - // TODO: Handle Stop / tele standard / wide standard - case >= 0x20 and < 0x30: - camera.zoomVelocity = (sbyte) (arg & 0x0f); - break; - case >= 0x30 and < 0x40: - camera.zoomVelocity = (sbyte) -(arg & 0x0f); - break; - default: - return CommandNotExecutable; - } - break; - // Direct zoom - case 0x47: - await MoveZoom(request.GetInt16(4), ViscaController.MaxZoomSpeed).ConfigureAwait(false); - break; - // Power - // TODO: simulate power off etc. For the moment, just say "okay" regardless... - case 0x00: - break; - default: - // TODO: Implement or at least say "okay" - return CommandNotExecutable; - } - return Done; - } - - /// - /// Executes a command beginning with 0x81 0x01 0x06 - /// - private async Task ExecutePanTiltDriveCommand(ViscaPayload request) - { - switch (request.GetByte(3)) - { - // Continuous pan/tilt - case 0x01: - var panSpeed = request.GetByte(4); - var tiltSpeed = request.GetByte(5); - var panSign = ConvertSign(request.GetByte(6)); - var tiltSign = ConvertSign(request.GetByte(7)) * -1; // Pan has "2 for positive, 1 for negative"; tilt has the reverse :( - camera.panVelocity = (sbyte) (panSpeed * panSign); - camera.tiltVelocity = (sbyte) (tiltSpeed * tiltSign); - break; - // Absolute position - // TODO: check request length, validate parameters - case 0x02: - await MovePanTilt(request.GetInt16(6), request.GetInt16(10), request.GetByte(4), request.GetByte(5)).ConfigureAwait(false); - break; - // Relative position - // TODO: check request length, validate parameters - case 0x03: - await MovePanTilt((short) (camera.Pan + request.GetInt16(6)), (short) (camera.Tilt + request.GetInt16(10)), request.GetByte(4), request.GetByte(5)).ConfigureAwait(false); - break; - // Home / reset - // TODO: Reset zoom as well - case 0x04: - case 0x05: - await MovePanTilt(0, 0, ViscaController.MaxPanTiltSpeed, ViscaController.MaxPanTiltSpeed).ConfigureAwait(false); - await MoveZoom(0, ViscaController.MaxZoomSpeed).ConfigureAwait(false); - break; - default: - return CommandNotExecutable; - }; - return Done; - - int ConvertSign(byte b) => b switch - { - 1 => -1, - 2 => 1, - 3 => 0, - _ => 0 // But log? - }; - } - - private async Task MovePanTilt(short pan, short tilt, byte panSpeed, byte tiltSpeed) - { - // Stop the normal thread from updating anything. - camera.panVelocity = 0; - camera.zoomVelocity = 0; - - panSpeed = Math.Max(panSpeed, (byte) 1); - tiltSpeed = Math.Max(tiltSpeed, (byte) 1); - while (camera.Pan != pan || camera.Tilt != tilt) - { - camera.Pan = MoveTowardsTarget(camera.Pan, pan, panSpeed); - camera.Tilt = MoveTowardsTarget(camera.Tilt, tilt, tiltSpeed); - await Task.Delay(DelayStep).ConfigureAwait(false); - } - } - - private async Task MoveZoom(short zoom, byte zoomSpeed) - { - zoomSpeed = Math.Max(zoomSpeed, (byte) 1); - while (camera.Zoom != zoom) - { - camera.Zoom = MoveTowardsTarget(camera.Zoom, zoom, (byte) (zoomSpeed * ZoomSpeedMultiplier)); - await Task.Delay(DelayStep).ConfigureAwait(false); - } - } - - private short MoveTowardsTarget(short current, short target, byte maxChange) => - current < target - ? Math.Min((short) (current + maxChange), target) - : Math.Max((short) (current - maxChange), target); - - private ViscaPayload ExecuteQuery(ViscaPayload request) - { - if (request.Length != 5 || request.GetByte(4) != 0xff) - { - return SyntaxError; - } - return (request.GetByte(2), request.GetByte(3)) switch - { - // Zoom position - (0x04, 0x47) => Int16QueryResponse(camera.Zoom), - // Pan/tilt - (0x06, 0x12) => Int16Int16QueryResponse(camera.Pan, camera.Tilt), - // Power (always "on" at the moment...) - (0x04, 0x00) => QueryResponse(0x02), - _ => CommandNotExecutable - }; - - ViscaPayload Int16QueryResponse(short value) - { - byte[] data = new byte[4]; - SetInt16(data, 0, value); - return QueryResponse(data); - } - - ViscaPayload Int16Int16QueryResponse(short value1, short value2) - { - byte[] data = new byte[8]; - SetInt16(data, 0, value1); - SetInt16(data, 4, value2); - return QueryResponse(data); - } - - ViscaPayload QueryResponse(params byte[] data) => - CreatePacket(QueryResponsePrefix, data); - - void SetInt16(byte[] buffer, int start, short value) - { - buffer[start] = (byte) ((value >> 12) & 0xf); - buffer[start + 1] = (byte) ((value >> 8) & 0xf); - buffer[start + 2] = (byte) ((value >> 4) & 0xf); - buffer[start + 3] = (byte) ((value >> 0) & 0xf); - } - } - - private static ViscaPayload CreatePacket(byte[] prefix, params byte[] data) => - CreatePayload(prefix.Concat(data).ToArray()); - - /// - /// Creates a packet from the given byte array, which is *not* expected to - /// include the trailing FF (just for convenience). - /// - private static ViscaPayload CreatePayload(params byte[] bytes) - { - var buffer = new byte[bytes.Length + 1]; - Buffer.BlockCopy(bytes, 0, buffer, 0, bytes.Length); - buffer[bytes.Length] = 0xff; - return ViscaPayload.FromBytes(buffer); - } - } -} diff --git a/CameraControl/CameraControl.Visca/IViscaClient.cs b/CameraControl/CameraControl.Visca/IViscaClient.cs deleted file mode 100644 index f9183fd4..00000000 --- a/CameraControl/CameraControl.Visca/IViscaClient.cs +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -namespace CameraControl.Visca; - -internal interface IViscaClient : IDisposable -{ - /// - /// Sends a single message to the VISCA endpoint, - /// returning the final "done" response message. - /// - /// The message to send to the endpoint. - /// A token to indicate that the method has been cancelled. - /// A task representing the asynchronous operation. - /// The VISCA endpoint violated the VISCA protocol. - /// The VISCA endpoint reported an error in its response. - Task SendAsync(ViscaMessage request, CancellationToken cancellationToken); -} diff --git a/CameraControl/CameraControl.Visca/PowerStatus.cs b/CameraControl/CameraControl.Visca/PowerStatus.cs deleted file mode 100644 index dbb67955..00000000 --- a/CameraControl/CameraControl.Visca/PowerStatus.cs +++ /dev/null @@ -1,12 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -namespace CameraControl.Visca; - -public enum PowerStatus -{ - On = 2, - Standby = 3, - InternalPowerCircuitError = 4 -} diff --git a/CameraControl/CameraControl.Visca/Preconditions.cs b/CameraControl/CameraControl.Visca/Preconditions.cs deleted file mode 100644 index fe09a003..00000000 --- a/CameraControl/CameraControl.Visca/Preconditions.cs +++ /dev/null @@ -1,21 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. -using System.RuntimeCompilerServices; - -namespace CameraControl.Visca; - -internal static class Preconditions -{ - internal static T CheckNotNull(T value, [CallerArgumentExpression("value")] string paramName = "") => - value ?? throw new ArgumentNullException(paramName); - - internal static void CheckRange(int value, int minInclusive, int maxInclusive, - [CallerArgumentExpression("value")] string paramName = "") - { - if (value < minInclusive || value > maxInclusive) - { - throw new ArgumentOutOfRangeException(paramName, $"Value must be in the range [{minInclusive}-{maxInclusive}]"); - } - } -} diff --git a/CameraControl/CameraControl.Visca/ReadBuffer.cs b/CameraControl/CameraControl.Visca/ReadBuffer.cs deleted file mode 100644 index 63bbca95..00000000 --- a/CameraControl/CameraControl.Visca/ReadBuffer.cs +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -namespace CameraControl.Visca; - -/// -/// A read buffer for VISCA packets. -/// -internal class ReadBuffer -{ - // This is larger than we need, given that a single packet is only ever 24 bytes at most, - // but it allows us to read multiple packets in a single Stream.ReadAsync call. - // We only create a single buffer per client, so the difference between this and allocating - // only 24 bytes is trivial. - private readonly byte[] buffer = new byte[256]; - - private readonly ViscaMessageFormat format; - - private int size; - - internal void Clear() - { - size = 0; - } - - internal ReadBuffer(ViscaMessageFormat format) - { - this.format = format; - } - - internal async Task ReadAsync(Stream stream, CancellationToken cancellationToken) - { - while (true) - { - if (ViscaMessage.Parse(buffer.AsSpan().Slice(0, size), format) is ViscaMessage message) - { - Consume(message.Length); - return message; - } - if (size == buffer.Length) - { - throw new ViscaProtocolException($"Read {size} bytes without a reaching the end of a VISCA packet"); - } - // The cancellation token in ReadAsync isn't always used, apparently - so we also close the stream - // if we're cancelled. (We reconnect on any exception anyway, so it shouldn't be a problem to close it.) - using (var registration = cancellationToken.Register(() => stream.Close())) - { - int bytesRead = await stream.ReadAsync(buffer, size, buffer.Length - size, cancellationToken).ConfigureAwait(false); - if (bytesRead == 0) - { - throw new ViscaProtocolException("Reached end of VISCA stream"); - } - size += bytesRead; - } - } - - void Consume(int count) - { - size -= count; - // Shift the content of the array if we need to. - // (Alternatively, we could construct the packet from middle of the byte array, - // and only shift when we got near the end of the buffer. It really shouldn't matter much though.) - if (size != 0) - { - Buffer.BlockCopy(buffer, count, buffer, 0, size); - } - } - } -} diff --git a/CameraControl/CameraControl.Visca/TcpSendLock.cs b/CameraControl/CameraControl.Visca/TcpSendLock.cs deleted file mode 100644 index bfff29d8..00000000 --- a/CameraControl/CameraControl.Visca/TcpSendLock.cs +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2022 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -namespace CameraControl.Visca; - -/// -/// Workaround for https://codeblog.jonskeet.uk/2022/02/17/diagnosing-a-visca-camera-issue/ -/// -public class TcpSendLock -{ - private readonly TimeSpan? postSendDelay; - private readonly SemaphoreSlim semaphore = new SemaphoreSlim(1); - - /// - /// Creates a new send lock which can be shared by multiple clients. - /// - /// The length of time to wait (while still holding the lock) - /// after sending each packet, or null for no delay. - public TcpSendLock(TimeSpan? postSendDelay) - { - this.postSendDelay = postSendDelay; - } - - public Task AcquireAsync(CancellationToken cancellationToken) => - semaphore.WaitAsync(cancellationToken); - - public Task PostSendDelayAsync(CancellationToken cancellationToken) => - postSendDelay is TimeSpan delay - ? Task.Delay(delay, cancellationToken) - : Task.CompletedTask; - - public void Release() => semaphore.Release(); -} diff --git a/CameraControl/CameraControl.Visca/TcpViscaClient.cs b/CameraControl/CameraControl.Visca/TcpViscaClient.cs deleted file mode 100644 index 611b8f50..00000000 --- a/CameraControl/CameraControl.Visca/TcpViscaClient.cs +++ /dev/null @@ -1,110 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using Microsoft.Extensions.Logging; -using System.Net.Sockets; - -namespace CameraControl.Visca; - -internal sealed class TcpViscaClient : ViscaClientBase -{ - private readonly TcpSendLock sendLock; - private readonly byte[] writeBuffer = new byte[16]; - private readonly ReadBuffer readBuffer; - private TcpClient? client; - private Stream? stream; - private bool firstTime = true; - - public string Host { get; } - public int Port { get; } - - public override void Dispose() => client?.Dispose(); - - public TcpViscaClient(string host, int port, ViscaMessageFormat format, ILogger? logger, TcpSendLock? sendLock) : base(format, logger) => - (Host, Port, this.sendLock, readBuffer) = (host, port, sendLock ?? new TcpSendLock(null), new(Format)); - - protected override void Disconnect() - { - readBuffer.Clear(); - client?.Dispose(); - // This is the trigger for reconnection next time. - client = null; - } - - private async Task ReconnectAsync(CancellationToken cancellationToken) - { - if (firstTime) - { - Logger?.LogDebug("Connecting to {host}:{port}", Host, Port); - firstTime = false; - } - else - { - Logger?.LogDebug("Reconnecting to {host}:{port}", Host, Port); - } - readBuffer.Clear(); - client?.Dispose(); - client = new TcpClient { NoDelay = true }; -#if NET5_0_OR_GREATER - try - { - await client.ConnectAsync(Host, Port, cancellationToken).ConfigureAwait(false); - } - catch - { - client = null; - throw; - } -#else - // This is really ugly, but it's the only way we can cancel a connection attempt - // in netstandard2.0. - using (cancellationToken.Register(() => client.Dispose())) - { - try - { - await client.ConnectAsync(Host, Port).ConfigureAwait(false); - } - catch - { - client = null; - // If we're failing because the cancellation token was cancelled, - // that takes priority. - cancellationToken.ThrowIfCancellationRequested(); - // Otherwise, let the normal exception propagate. - throw; - } - } -#endif - stream = client.GetStream(); - } - - protected override async Task SendMessageAsync(ViscaMessage message, CancellationToken cancellationToken) - { - if (client is null) - { - await ReconnectAsync(cancellationToken).ConfigureAwait(false); - } - message.WriteTo(writeBuffer); - await sendLock.AcquireAsync(cancellationToken).ConfigureAwait(false); - try - { - // stream is never null if either client wasn't null, or after reconnection. - await stream!.WriteAsync(writeBuffer.AsMemory(0, message.Length), cancellationToken).ConfigureAwait(false); - await sendLock.PostSendDelayAsync(cancellationToken).ConfigureAwait(false); - } - finally - { - sendLock.Release(); - } - } - - protected override Task ReceiveMessageAsync(CancellationToken cancellationToken) - { - if (stream is null) - { - throw new ViscaProtocolException("Cannot receive a packet before sending one"); - } - return readBuffer.ReadAsync(stream, cancellationToken); - } -} diff --git a/CameraControl/CameraControl.Visca/UdpViscaClient.cs b/CameraControl/CameraControl.Visca/UdpViscaClient.cs deleted file mode 100644 index 1a45d02f..00000000 --- a/CameraControl/CameraControl.Visca/UdpViscaClient.cs +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2023 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using Microsoft.Extensions.Logging; -using System.Net.Sockets; - -namespace CameraControl.Visca; - -internal sealed class UdpViscaClient : ViscaClientBase -{ - private readonly byte[] readBuffer = new byte[32]; - private readonly byte[] writeBuffer = new byte[32]; - private UdpClient? client; - private bool firstTime; - - public string Host { get; } - public int Port { get; } - - public UdpViscaClient(string host, int port, ViscaMessageFormat format, ILogger? logger) : base(format, logger) => - (Host, Port) = (host, port); - - public override void Dispose() - { - client?.Dispose(); - client = null; - } - - protected override void Disconnect() => Dispose(); - - protected async override Task ReceiveMessageAsync(CancellationToken cancellationToken) - { - int bytesRead = await client!.Client.ReceiveAsync(readBuffer, SocketFlags.None, cancellationToken); - if (ViscaMessage.Parse(readBuffer.AsSpan().Slice(0, bytesRead), Format) is not ViscaMessage message) - { - throw new ViscaProtocolException("UDP packet did not include end of VISCA packet"); - } - if (message.Length != bytesRead) - { - throw new ViscaProtocolException("UDP packet contained more than one message"); - } - return message; - } - - private void Reconnect() - { - if (firstTime) - { - Logger?.LogDebug("Connecting to {host}:{port}", Host, Port); - firstTime = false; - } - else - { - Logger?.LogDebug("Reconnecting to {host}:{port}", Host, Port); - } - client?.Dispose(); - client = new UdpClient(); - client.Connect(Host, Port); - } - - protected async override Task SendMessageAsync(ViscaMessage message, CancellationToken cancellationToken) - { - if (client is null) - { - Reconnect(); - } - message.WriteTo(writeBuffer); - - await client!.SendAsync(new ReadOnlyMemory(writeBuffer, 0, message.Length), cancellationToken); - } -} diff --git a/CameraControl/CameraControl.Visca/ViscaClientBase.cs b/CameraControl/CameraControl.Visca/ViscaClientBase.cs deleted file mode 100644 index 898edc99..00000000 --- a/CameraControl/CameraControl.Visca/ViscaClientBase.cs +++ /dev/null @@ -1,116 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using Microsoft.Extensions.Logging; - -namespace CameraControl.Visca; - -/// -/// Base class for VISCA clients, handling VISCA protocol violations and reconnections. -/// -internal abstract class ViscaClientBase : IViscaClient -{ - private readonly SemaphoreSlim semaphore = new(1); - - protected ViscaMessageFormat Format { get; } - - protected ILogger? Logger { get; } - - private int? sequenceNumber; - - /// - /// Resets internal state owned by the base class - typically sequence numbers, when they're being used. - /// - protected void ResetState() - { - } - - /// - /// Sends a single message to the VISCA endpoint. - /// - /// The message to send to the endpoint. - /// A token to indicate that the method has been cancelled. - /// A task representing the asynchronous operation. - protected abstract Task SendMessageAsync(ViscaMessage message, CancellationToken cancellationToken); - - /// - /// Receives a message from the VISCA endpoint. - /// - /// A token to indicate that the method has been cancelled. - /// The message received from the endpoint. - /// The endpoint violated the VISCA protocol. - protected abstract Task ReceiveMessageAsync(CancellationToken cancellationToken); - - /// - /// Disconnects in a way that will force a reconnect on the next request. - /// - protected abstract void Disconnect(); - - public abstract void Dispose(); - - protected ViscaClientBase(ViscaMessageFormat format, ILogger? logger) - { - sequenceNumber = format == ViscaMessageFormat.Raw ? null : 0; - Format = format; - Logger = logger; - } - - async Task IViscaClient.SendAsync(ViscaMessage request, CancellationToken cancellationToken) - { - bool disconnect = true; - await semaphore.WaitAsync(cancellationToken).ConfigureAwait(false); - try - { - if (sequenceNumber is not null) - { - request = request with { SequenceNumber = sequenceNumber++ }; - } - - await SendMessageAsync(request, cancellationToken).ConfigureAwait(false); - while (true) - { - // TODO: Check the sequence number, if we're using encapsulated mode? - ViscaMessage response = await ReceiveMessageAsync(cancellationToken).ConfigureAwait(false); - var responsePayload = response.Payload; - Logger?.LogTrace("Received VISCA packet: {packet}", response); - if (responsePayload.Length < 2) - { - throw new ViscaProtocolException($"Received payload of length {responsePayload.Length} from VISCA endpoint"); - } - switch (responsePayload.GetByte(1) >> 4) - { - // Command received - case 4: - continue; - // Success - case 5: - disconnect = false; - return response; - // Error reported by device - case 6: - throw new ViscaResponseException($"Error reported by VISCA interface. Error data: {response}"); - // VISCA protocol violation - default: - throw new ViscaProtocolException($"Invalid packet returned from VISCA interface. Error data: {response}"); - } - } - } - finally - { - try - { - if (disconnect) - { - // We can't reconnect here, as that could take time and the cancellation token - // may already have been cancelled. - Disconnect(); - } - } - finally - { - semaphore.Release(); - } - } - } -} diff --git a/CameraControl/CameraControl.Visca/ViscaController.cs b/CameraControl/CameraControl.Visca/ViscaController.cs deleted file mode 100644 index 3eace25a..00000000 --- a/CameraControl/CameraControl.Visca/ViscaController.cs +++ /dev/null @@ -1,186 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using Microsoft.Extensions.Logging; -using System.Diagnostics; -using System.Runtime.CompilerServices; - -namespace CameraControl.Visca; - -public sealed class ViscaController : IDisposable -{ - private static readonly ViscaMessage PowerOnMessage = new ViscaMessage(ViscaMessageType.Command, 0x81, 0x01, 0x04, 0x00, 0x02, 0xff); - private static readonly ViscaMessage PowerOffMessage = new ViscaMessage(ViscaMessageType.Command, 0x81, 0x01, 0x04, 0x00, 0x03, 0xff); - private static readonly ViscaMessage GetPowerStatusMessage = new ViscaMessage(ViscaMessageType.Inquiry, 0x81, 0x09, 0x04, 0x00, 0xff); - private static readonly ViscaMessage GetZoomMessage = new ViscaMessage(ViscaMessageType.Inquiry, 0x81, 0x09, 0x04, 0x47, 0xff); - private static readonly ViscaMessage GetPanTiltMessage = new ViscaMessage(ViscaMessageType.Inquiry, 0x81, 0x09, 0x06, 0x12, 0xff); - private static readonly ViscaMessage GoHomeMessage = new ViscaMessage(ViscaMessageType.Command, 0x81, 0x01, 0x06, 0x04, 0xff); - - private static readonly ViscaPayload SetZoomTemplate = ViscaPayload.FromBytes(0x81, 0x01, 0x04, 0x47, 0, 0, 0, 0, 0xff); - private static readonly ViscaPayload ContinuousPanTiltTemplate = ViscaPayload.FromBytes(0x81, 0x01, 0x06, 0x1, 0, 0, 0, 0, 0xff); - private static readonly ViscaPayload ContinuousZoomTemplate = ViscaPayload.FromBytes(0x81, 0x01, 0x04, 0x07, 0, 0xff); - private static readonly ViscaPayload SetPanTiltTemplate = ViscaPayload.FromBytes(0x81, 0x01, 0x06, 0x02, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xff); - private static readonly ViscaPayload RelativePanTiltTemplate = ViscaPayload.FromBytes(0x81, 0x01, 0x06, 0x03, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xff); - - internal static TimeSpan DefaultTimeout { get; } = TimeSpan.FromSeconds(15); - - public const byte MinSpeed = 0x01; - public const byte MaxPanTiltSpeed = 0x18; - public const byte MaxZoomSpeed = 0x7; - - private TimeSpan CommandTimeout { get; } - private readonly ILogger? logger; - private readonly IViscaClient client; - private readonly Stopwatch stopwatch = Stopwatch.StartNew(); - - internal ViscaController(IViscaClient client, TimeSpan commandTimeout, ILogger? logger) - { - this.client = client; - this.CommandTimeout = commandTimeout; - this.logger = logger; - } - - public static ViscaController ForTcp(string host, int port, ViscaMessageFormat format, TimeSpan? commandTimeout = null, ILogger? logger = null, TcpSendLock? sendLock = null) - { - var client = new TcpViscaClient(host, port, format, logger, sendLock); - return new ViscaController(client, commandTimeout ?? DefaultTimeout, logger); - } - - public static ViscaController ForUdp(string host, int port, ViscaMessageFormat format, TimeSpan? commandTimeout = null, ILogger? logger = null) - { - var client = new UdpViscaClient(host, port, format, logger); - return new ViscaController(client, commandTimeout ?? DefaultTimeout, logger); - } - - public async Task PowerCycle(CancellationToken cancellationToken = default) - { - await PowerOff(cancellationToken).ConfigureAwait(false); - // On Minrray cameras, connections fail immediately after PowerOff, so we retry here for a bit. - await RetryWithConstantBackoff(async token => { await PowerOn(token).ConfigureAwait(false); return 0; }, - attempts: 10, perOperationTimeout: TimeSpan.FromSeconds(1), delay: TimeSpan.FromSeconds(1)); - - // Keep trying to get the power status until we can actually do so. This can take a few attempts. - // Note that we don't actually try to validate that the power status is "on". - var status = await RetryWithConstantBackoff(GetPowerStatus, attempts: 20, perOperationTimeout: TimeSpan.FromSeconds(1), delay: TimeSpan.FromSeconds(2)); - logger?.LogDebug("Power cycle complete; power status: {status}", status); - - async Task RetryWithConstantBackoff(Func> operation, int attempts, TimeSpan perOperationTimeout, TimeSpan delay) - { - int attemptsLeft = attempts; - while (true) - { - try - { - var shortCancellationToken = new CancellationTokenSource(perOperationTimeout).Token; - var linkedToken = CancellationTokenSource.CreateLinkedTokenSource(cancellationToken, shortCancellationToken).Token; - var result = await operation(linkedToken).ConfigureAwait(false); - return result; - } - catch (Exception) when (!cancellationToken.IsCancellationRequested && attemptsLeft > 0) - { - await Task.Delay(delay, cancellationToken).ConfigureAwait(false); - attemptsLeft--; - } - } - } - } - - public async Task PowerOn(CancellationToken cancellationToken = default) => - await SendAsync(PowerOnMessage, cancellationToken).ConfigureAwait(false); - - public async Task PowerOff(CancellationToken cancellationToken = default) => - await SendAsync(PowerOffMessage, cancellationToken).ConfigureAwait(false); - - public void Dispose() => client.Dispose(); - - public async Task GetPowerStatus(CancellationToken cancellationToken = default) - { - var response = await SendAsync(GetPowerStatusMessage, cancellationToken).ConfigureAwait(false); - return (PowerStatus) response.Payload.GetByte(2); - } - - public async Task GetZoom(CancellationToken cancellationToken = default) - { - var response = await SendAsync(GetZoomMessage, cancellationToken).ConfigureAwait(false); - return response.Payload.GetInt16(2); - } - - public async Task<(short pan, short tilt)> GetPanTilt(CancellationToken cancellationToken = default) - { - var response = await SendAsync(GetPanTiltMessage, cancellationToken).ConfigureAwait(false); - return (response.Payload.GetInt16(2), response.Payload.GetInt16(6)); - } - - // TODO: What about 41, 42 etc? Would that be "direct with variable speed"? - public async Task SetZoom(short zoom, CancellationToken cancellationToken = default) - { - var message = SetZoomTemplate.WithInt16Set(4, zoom).ToCommandMessage(); - await SendAsync(message, cancellationToken).ConfigureAwait(false); - } - - /// - /// Changes the current rate of pan/tilt. - /// - /// true to pan right (positive); false to pan left (negative); null for no pan - /// true to tilt up (positive); false to tilt down (negative); null for no tilt - /// The speed at which to pan - /// The speed at which to tilt - /// A cancellation token for the operation - /// A task representing the asynchronous operation - public async Task ContinuousPanTilt(bool? pan, bool? tilt, byte panSpeed, byte tiltSpeed, CancellationToken cancellationToken = default) - { - byte actualPan = (byte) (pan is null ? 3 : pan.Value ? 2 : 1); - byte actualTilt = (byte) (tilt is null ? 3 : tilt.Value ? 1 : 2); - var message = ContinuousPanTiltTemplate - .WithByteSet(4, panSpeed) - .WithByteSet(5, tiltSpeed) - .WithByteSet(6, actualPan) - .WithByteSet(7, actualTilt) - .ToCommandMessage(); - await SendAsync(message, cancellationToken).ConfigureAwait(false); - } - - public async Task ContinuousZoom(bool? zoomIn, byte zoomSpeed, CancellationToken cancellationToken = default) - { - byte parameter = (byte) (zoomIn is null ? 0 : zoomIn.Value ? 0x20 | zoomSpeed : 0x30 | zoomSpeed); - var message = ContinuousZoomTemplate.WithByteSet(4, parameter).ToCommandMessage(); - await SendAsync(message, cancellationToken).ConfigureAwait(false); - } - - public async Task SetPanTilt(short pan, short tilt, byte panSpeed, byte tiltSpeed, CancellationToken cancellationToken = default) - { - var message = SetPanTiltTemplate - .WithByteSet(4, panSpeed) - .WithByteSet(5, tiltSpeed) - .WithInt16Set(6, pan) - .WithInt16Set(10, tilt) - .ToCommandMessage(); - await SendAsync(message, cancellationToken).ConfigureAwait(false); - } - - public async Task RelativePanTilt(short pan, short tilt, byte panSpeed, byte tiltSpeed, CancellationToken cancellationToken = default) - { - var message = RelativePanTiltTemplate - .WithByteSet(4, panSpeed) - .WithByteSet(5, tiltSpeed) - .WithInt16Set(6, pan) - .WithInt16Set(10, tilt) - .ToCommandMessage(); - await SendAsync(message, cancellationToken).ConfigureAwait(false); - } - - public async Task GoHome(CancellationToken cancellationToken = default) => - await SendAsync(GoHomeMessage, cancellationToken).ConfigureAwait(false); - - private async Task SendAsync(ViscaMessage message, CancellationToken cancellationToken, [CallerMemberName] string? command = null) - { - var effectiveToken = CancellationTokenSource.CreateLinkedTokenSource(cancellationToken, new CancellationTokenSource(CommandTimeout).Token).Token; - logger?.LogDebug("Sending VISCA command '{command}': {request}", command, message.Payload); - long ticksBefore = stopwatch.ElapsedTicks; - var response = await client.SendAsync(message, effectiveToken).ConfigureAwait(false); - long ticksAfter = stopwatch.ElapsedTicks; - logger?.LogDebug("VISCA command '{command}' completed in {millis}ms", command, (ticksAfter - ticksBefore) * 1000 / Stopwatch.Frequency); - return response; - } -} diff --git a/CameraControl/CameraControl.Visca/ViscaMessage.cs b/CameraControl/CameraControl.Visca/ViscaMessage.cs deleted file mode 100644 index 7a996435..00000000 --- a/CameraControl/CameraControl.Visca/ViscaMessage.cs +++ /dev/null @@ -1,85 +0,0 @@ -// Copyright 2023 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -namespace CameraControl.Visca; - -/// -/// A VISCA message, containing a payload and potentially a sequence number and -/// message type. -/// -internal readonly record struct ViscaMessage(ViscaMessageType? Type, int? SequenceNumber, ViscaPayload Payload) -{ - internal ViscaMessage(ViscaPayload payload) : this(null, null, payload) - { - } - - internal ViscaMessage(ViscaMessageType type, params byte[] payload) : this(type, null, ViscaPayload.FromBytes(payload).WithPreformatting()) - { - } - - private bool IncludeHeader => SequenceNumber is not null && Type is not null; - - /// - /// The total length of this message in bytes, including the header - /// if both and are non-null. - /// - public int Length => Payload.Length + (IncludeHeader ? 8 : 0); - - internal void WriteTo(Span buffer) - { - if (Length > buffer.Length) - { - throw new ArgumentException($"Buffer does not have enough space; {Length} > {buffer.Length}"); - } - if (IncludeHeader) - { - int type = (int) Type!.Value; - buffer[0] = (byte) (type >> 8); - buffer[1] = (byte) type; - buffer[2] = (byte) (Payload.Length >> 8); - buffer[3] = (byte) Payload.Length; - long seq = SequenceNumber!.Value; - buffer[4] = (byte) (seq >> 24); - buffer[5] = (byte) (seq >> 16); - buffer[6] = (byte) (seq >> 8); - buffer[7] = (byte) seq; - buffer = buffer.Slice(8); - } - Payload.WriteTo(buffer); - } - - internal static ViscaMessage? Parse(ReadOnlySpan data, ViscaMessageFormat format) => - format switch - { - ViscaMessageFormat.Raw => ParseRaw(data), - ViscaMessageFormat.Encapsulated => ParseEncapsulated(data), - _ => throw new ArgumentException($"Unknown message format '{format}'") - }; - - internal static ViscaMessage? ParseRaw(ReadOnlySpan data) - { - int index = data.IndexOf((byte) 0xff); - return index == -1 ? null : new ViscaMessage(ViscaPayload.FromSpan(data.Slice(0, index + 1))); - } - - internal static ViscaMessage? ParseEncapsulated(ReadOnlySpan data) - { - if (data.Length < 10) - { - return null; - } - int length = (data[2] << 8) | data[3]; - if (data.Length < length + 8) - { - return null; - } - int seq = (data[4] << 24) | - (data[5] << 16) | - (data[6] << 8) | - data[7]; - int type = (data[0] << 8) | data[1]; - // TODO: Validate that the payload ends with FF? - return new ViscaMessage((ViscaMessageType) type, seq, ViscaPayload.FromSpan(data.Slice(8, length))); - } -} diff --git a/CameraControl/CameraControl.Visca/ViscaMessageFormat.cs b/CameraControl/CameraControl.Visca/ViscaMessageFormat.cs deleted file mode 100644 index de54e19f..00000000 --- a/CameraControl/CameraControl.Visca/ViscaMessageFormat.cs +++ /dev/null @@ -1,18 +0,0 @@ -// Copyright 2023 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -namespace CameraControl.Visca; - -public enum ViscaMessageFormat -{ - /// - /// The message payload is delivered directly, with no header. - /// - Raw = 0, - /// - /// Each message starts with a header containing the type of the message, - /// the payload length, and a sequence number, before the payload. - /// - Encapsulated = 1 -} diff --git a/CameraControl/CameraControl.Visca/ViscaMessageType.cs b/CameraControl/CameraControl.Visca/ViscaMessageType.cs deleted file mode 100644 index eb285111..00000000 --- a/CameraControl/CameraControl.Visca/ViscaMessageType.cs +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright 2023 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -namespace CameraControl.Visca; - -internal enum ViscaMessageType -{ - Command = 0x01_00, - Inquiry = 0x01_10, - Reply = 0x01_11, - DeviceSetting = 0x01_20, - Control = 0x02_00, - ControlReply = 0x02_01 -} diff --git a/CameraControl/CameraControl.Visca/ViscaPayload.cs b/CameraControl/CameraControl.Visca/ViscaPayload.cs deleted file mode 100644 index 952f9950..00000000 --- a/CameraControl/CameraControl.Visca/ViscaPayload.cs +++ /dev/null @@ -1,154 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using System.Text; - -namespace CameraControl.Visca; - -/// -/// VISCA payload, which may be either a complete message in itself, -/// or have additional headers (Sony-style protocol). -/// -internal readonly struct ViscaPayload -{ - // VISCA packets can contain up to 16 bytes of payload. - // It's simplest to represent those as two long values. - // TODO: Use Int128 when we've moved to .NET 8+. - private readonly long head; - private readonly long tail; - - /// - /// The text representation, cached for efficiency for commonly-used packets. - /// - private readonly string? text; - - /// - /// The number of bytes in the packet, including the trailing 0xFF. - /// - public int Length { get; } - - private ViscaPayload(long head, long tail, int length, string? text) => - (this.head, this.tail, this.Length, this.text) = (head, tail, length, text); - - internal static ViscaPayload FromBytes(params byte[] bytes) => - FromSpan(Preconditions.CheckNotNull(bytes)); - - internal ViscaPayload WithPreformatting() => - new ViscaPayload(head, tail, Length, ToString()); - - internal static ViscaPayload FromSpan(ReadOnlySpan bytes) - { - int length = bytes.Length; - long head = GetByteOrZero(0, 56, bytes) | - GetByteOrZero(1, 48, bytes) | - GetByteOrZero(2, 40, bytes) | - GetByteOrZero(3, 32, bytes) | - GetByteOrZero(4, 24, bytes) | - GetByteOrZero(5, 16, bytes) | - GetByteOrZero(6, 8, bytes) | - GetByteOrZero(7, 0, bytes); - - long tail = GetByteOrZero(8, 56, bytes) | - GetByteOrZero(9, 48, bytes) | - GetByteOrZero(10, 40, bytes) | - GetByteOrZero(11, 32, bytes) | - GetByteOrZero(12, 24, bytes) | - GetByteOrZero(13, 16, bytes) | - GetByteOrZero(14, 8, bytes) | - GetByteOrZero(15, 0, bytes); - - return new ViscaPayload(head, tail, length, null); - - long GetByteOrZero(int index, int shift, ReadOnlySpan bytes) => - index >= length ? 0L : ((long) bytes[index]) << shift; - } - - // While this could be an indexer, making it a method allows the - // GetInt16 method to be accessed in a consistent manner. - internal byte GetByte(int index) - { - Preconditions.CheckRange(index, 0, Length); - return index < 8 - ? (byte) (head >> (56 - (index * 8))) - : (byte) (tail >> (120 - (index * 8))); - } - - internal short GetInt16(int index) - { - Preconditions.CheckRange(index, 0, Length - 4); - return (short) ( - (GetByte(index) << 12) | - (GetByte(index + 1) << 8) | - (GetByte(index + 2) << 4) | - (GetByte(index + 3) << 0) - ); - } - - internal ViscaPayload WithInt16Set(int index, short value) - { - long newHead = head; - long newTail = tail; - - SetByte(index, (byte) ((value >> 12) & 0xf), ref newHead, ref newTail); - SetByte(index + 1, (byte) ((value >> 8) & 0xf), ref newHead, ref newTail); - SetByte(index + 2, (byte) ((value >> 4) & 0xf), ref newHead, ref newTail); - SetByte(index + 3, (byte) ((value >> 0) & 0xf), ref newHead, ref newTail); - return new ViscaPayload(newHead, newTail, Length, null); - } - - internal ViscaPayload WithByteSet(int index, byte value) - { - long newHead = head; - long newTail = tail; - - SetByte(index, value, ref newHead, ref newTail); - return new ViscaPayload(newHead, newTail, Length, null); - } - - private void SetByte(int index, byte value, ref long newHead, ref long newTail) - { - if (index < 0 || index >= Length) - { - throw new ArgumentOutOfRangeException(nameof(index)); - } - ref long x = ref index < 8 ? ref newHead : ref newTail; - int shift = (7 - (index & 7)) * 8; - long mask = 0xffL << shift; - x &= ~mask; - x |= ((long) value) << shift; - } - - public override string ToString() - { - if (text is not null) - { - return text; - } - var builder = new StringBuilder(); - for (int i = 0; i < Length; i++) - { - builder.AppendFormat("{0:x2}", GetByte(i)); - builder.Append('-'); - } - builder.Length--; - return builder.ToString(); - } - - internal void WriteTo(Span buffer) - { - if (Length > buffer.Length) - { - throw new ArgumentException($"Buffer does not have enough space; {Length} > {buffer.Length}"); - } - for (int i = 0; i < Length; i++) - { - buffer[i] = GetByte(i); - } - } - - /// - /// Convenience method (for chaining) to create a message with a type of Command from this payload. - /// - internal ViscaMessage ToCommandMessage() => new ViscaMessage(ViscaMessageType.Command, null, this); -} diff --git a/CameraControl/CameraControl.Visca/ViscaProtocolException.cs b/CameraControl/CameraControl.Visca/ViscaProtocolException.cs deleted file mode 100644 index d80b2667..00000000 --- a/CameraControl/CameraControl.Visca/ViscaProtocolException.cs +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -namespace CameraControl.Visca; - -/// -/// Represents a transport-level failure in VISCA communications. -/// This is not thrown when a camera reports an error. -/// -public class ViscaProtocolException : Exception -{ - public ViscaProtocolException() - { - } - - public ViscaProtocolException(string message) : base(message) - { - } - - public ViscaProtocolException(string message, Exception innerException) - : base(message, innerException) - { - } -} diff --git a/CameraControl/CameraControl.Visca/ViscaResponseException.cs b/CameraControl/CameraControl.Visca/ViscaResponseException.cs deleted file mode 100644 index ba67ba80..00000000 --- a/CameraControl/CameraControl.Visca/ViscaResponseException.cs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -namespace CameraControl.Visca; - -/// -/// Represents a failure successfully reported by a VISCA endpoint. -/// -public class ViscaResponseException : Exception -{ - public ViscaResponseException() - { - } - - public ViscaResponseException(string message) : base(message) - { - } - - public ViscaResponseException(string message, Exception innerException) - : base(message, innerException) - { - } -} diff --git a/CameraControl/CameraControl.sln b/CameraControl/CameraControl.sln deleted file mode 100644 index ffeab7e2..00000000 --- a/CameraControl/CameraControl.sln +++ /dev/null @@ -1,79 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 17 -VisualStudioVersion = 17.0.32112.339 -MinimumVisualStudioVersion = 15.0.26124.0 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CameraControl.Visca", "CameraControl.Visca\CameraControl.Visca.csproj", "{91C0AF93-45BC-4F66-8F40-CB7DEC7A6116}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CameraControl.Visca.Demo", "CameraControl.Visca.Demo\CameraControl.Visca.Demo.csproj", "{0709071F-CC4F-41C7-A787-1419181DACB5}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CameraControl.Visca.StressTest", "CameraControl.Visca.StressTest\CameraControl.Visca.StressTest.csproj", "{00A7BB89-7F87-4B96-81D5-084C926688C8}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CameraControl.Sandbox", "CameraControl.Sandbox\CameraControl.Sandbox.csproj", "{3E4770BC-4785-4DDC-861B-06EB99967D90}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Debug|x64 = Debug|x64 - Debug|x86 = Debug|x86 - Release|Any CPU = Release|Any CPU - Release|x64 = Release|x64 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {91C0AF93-45BC-4F66-8F40-CB7DEC7A6116}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {91C0AF93-45BC-4F66-8F40-CB7DEC7A6116}.Debug|Any CPU.Build.0 = Debug|Any CPU - {91C0AF93-45BC-4F66-8F40-CB7DEC7A6116}.Debug|x64.ActiveCfg = Debug|Any CPU - {91C0AF93-45BC-4F66-8F40-CB7DEC7A6116}.Debug|x64.Build.0 = Debug|Any CPU - {91C0AF93-45BC-4F66-8F40-CB7DEC7A6116}.Debug|x86.ActiveCfg = Debug|Any CPU - {91C0AF93-45BC-4F66-8F40-CB7DEC7A6116}.Debug|x86.Build.0 = Debug|Any CPU - {91C0AF93-45BC-4F66-8F40-CB7DEC7A6116}.Release|Any CPU.ActiveCfg = Release|Any CPU - {91C0AF93-45BC-4F66-8F40-CB7DEC7A6116}.Release|Any CPU.Build.0 = Release|Any CPU - {91C0AF93-45BC-4F66-8F40-CB7DEC7A6116}.Release|x64.ActiveCfg = Release|Any CPU - {91C0AF93-45BC-4F66-8F40-CB7DEC7A6116}.Release|x64.Build.0 = Release|Any CPU - {91C0AF93-45BC-4F66-8F40-CB7DEC7A6116}.Release|x86.ActiveCfg = Release|Any CPU - {91C0AF93-45BC-4F66-8F40-CB7DEC7A6116}.Release|x86.Build.0 = Release|Any CPU - {0709071F-CC4F-41C7-A787-1419181DACB5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {0709071F-CC4F-41C7-A787-1419181DACB5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {0709071F-CC4F-41C7-A787-1419181DACB5}.Debug|x64.ActiveCfg = Debug|Any CPU - {0709071F-CC4F-41C7-A787-1419181DACB5}.Debug|x64.Build.0 = Debug|Any CPU - {0709071F-CC4F-41C7-A787-1419181DACB5}.Debug|x86.ActiveCfg = Debug|Any CPU - {0709071F-CC4F-41C7-A787-1419181DACB5}.Debug|x86.Build.0 = Debug|Any CPU - {0709071F-CC4F-41C7-A787-1419181DACB5}.Release|Any CPU.ActiveCfg = Release|Any CPU - {0709071F-CC4F-41C7-A787-1419181DACB5}.Release|Any CPU.Build.0 = Release|Any CPU - {0709071F-CC4F-41C7-A787-1419181DACB5}.Release|x64.ActiveCfg = Release|Any CPU - {0709071F-CC4F-41C7-A787-1419181DACB5}.Release|x64.Build.0 = Release|Any CPU - {0709071F-CC4F-41C7-A787-1419181DACB5}.Release|x86.ActiveCfg = Release|Any CPU - {0709071F-CC4F-41C7-A787-1419181DACB5}.Release|x86.Build.0 = Release|Any CPU - {00A7BB89-7F87-4B96-81D5-084C926688C8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {00A7BB89-7F87-4B96-81D5-084C926688C8}.Debug|Any CPU.Build.0 = Debug|Any CPU - {00A7BB89-7F87-4B96-81D5-084C926688C8}.Debug|x64.ActiveCfg = Debug|Any CPU - {00A7BB89-7F87-4B96-81D5-084C926688C8}.Debug|x64.Build.0 = Debug|Any CPU - {00A7BB89-7F87-4B96-81D5-084C926688C8}.Debug|x86.ActiveCfg = Debug|Any CPU - {00A7BB89-7F87-4B96-81D5-084C926688C8}.Debug|x86.Build.0 = Debug|Any CPU - {00A7BB89-7F87-4B96-81D5-084C926688C8}.Release|Any CPU.ActiveCfg = Release|Any CPU - {00A7BB89-7F87-4B96-81D5-084C926688C8}.Release|Any CPU.Build.0 = Release|Any CPU - {00A7BB89-7F87-4B96-81D5-084C926688C8}.Release|x64.ActiveCfg = Release|Any CPU - {00A7BB89-7F87-4B96-81D5-084C926688C8}.Release|x64.Build.0 = Release|Any CPU - {00A7BB89-7F87-4B96-81D5-084C926688C8}.Release|x86.ActiveCfg = Release|Any CPU - {00A7BB89-7F87-4B96-81D5-084C926688C8}.Release|x86.Build.0 = Release|Any CPU - {3E4770BC-4785-4DDC-861B-06EB99967D90}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {3E4770BC-4785-4DDC-861B-06EB99967D90}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3E4770BC-4785-4DDC-861B-06EB99967D90}.Debug|x64.ActiveCfg = Debug|Any CPU - {3E4770BC-4785-4DDC-861B-06EB99967D90}.Debug|x64.Build.0 = Debug|Any CPU - {3E4770BC-4785-4DDC-861B-06EB99967D90}.Debug|x86.ActiveCfg = Debug|Any CPU - {3E4770BC-4785-4DDC-861B-06EB99967D90}.Debug|x86.Build.0 = Debug|Any CPU - {3E4770BC-4785-4DDC-861B-06EB99967D90}.Release|Any CPU.ActiveCfg = Release|Any CPU - {3E4770BC-4785-4DDC-861B-06EB99967D90}.Release|Any CPU.Build.0 = Release|Any CPU - {3E4770BC-4785-4DDC-861B-06EB99967D90}.Release|x64.ActiveCfg = Release|Any CPU - {3E4770BC-4785-4DDC-861B-06EB99967D90}.Release|x64.Build.0 = Release|Any CPU - {3E4770BC-4785-4DDC-861B-06EB99967D90}.Release|x86.ActiveCfg = Release|Any CPU - {3E4770BC-4785-4DDC-861B-06EB99967D90}.Release|x86.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {22A9C786-6186-4907-98F8-50AB527AE521} - EndGlobalSection -EndGlobal diff --git a/DateTimeDemos/DateTimeDemos.sln b/DateTimeDemos/DateTimeDemos.sln deleted file mode 100644 index 3ab4ad56..00000000 --- a/DateTimeDemos/DateTimeDemos.sln +++ /dev/null @@ -1,22 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 2013 -VisualStudioVersion = 12.0.30501.0 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TimeZoneInfoExplorer", "TimeZoneInfoExplorer\TimeZoneInfoExplorer.csproj", "{C1740F93-74C8-47A1-B60B-E71AAA0B757B}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {C1740F93-74C8-47A1-B60B-E71AAA0B757B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C1740F93-74C8-47A1-B60B-E71AAA0B757B}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C1740F93-74C8-47A1-B60B-E71AAA0B757B}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C1740F93-74C8-47A1-B60B-E71AAA0B757B}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/DateTimeDemos/TimeZoneInfoExplorer/MainForm.Designer.cs b/DateTimeDemos/TimeZoneInfoExplorer/MainForm.Designer.cs deleted file mode 100644 index b46041c3..00000000 --- a/DateTimeDemos/TimeZoneInfoExplorer/MainForm.Designer.cs +++ /dev/null @@ -1,438 +0,0 @@ -namespace TimeZoneInfoExplorer -{ - partial class MainForm - { - /// - /// Required designer variable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Clean up any resources being used. - /// - /// true if managed resources should be disposed; otherwise, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - System.Windows.Forms.Label fromLabel; - System.Windows.Forms.Label toLabel; - System.Windows.Forms.GroupBox offsetsGroupBox; - System.Windows.Forms.GroupBox adjustmentRulesBox; - System.Windows.Forms.TableLayoutPanel zonePanel; - System.Windows.Forms.Label idLabel; - System.Windows.Forms.Label displayNameLabel; - System.Windows.Forms.Label standardNameLabel; - System.Windows.Forms.Label daylightNameLabel; - System.Windows.Forms.Label dstLabel; - this.offsetsPanel = new System.Windows.Forms.TableLayoutPanel(); - this.offsetsFrom = new System.Windows.Forms.DateTimePicker(); - this.offsetsTo = new System.Windows.Forms.DateTimePicker(); - this.utcOffsets = new System.Windows.Forms.DataGridView(); - this.adjustmentRules = new System.Windows.Forms.DataGridView(); - this.timeZones = new System.Windows.Forms.ComboBox(); - this.idValue = new System.Windows.Forms.Label(); - this.displayNameValue = new System.Windows.Forms.Label(); - this.standardOffsetLabel = new System.Windows.Forms.Label(); - this.standardNameValue = new System.Windows.Forms.Label(); - this.daylightNameValue = new System.Windows.Forms.Label(); - this.supportsDstValue = new System.Windows.Forms.Label(); - this.standardOffsetValue = new System.Windows.Forms.Label(); - this.layoutPanel = new System.Windows.Forms.TableLayoutPanel(); - this.zoneBox = new System.Windows.Forms.GroupBox(); - fromLabel = new System.Windows.Forms.Label(); - toLabel = new System.Windows.Forms.Label(); - offsetsGroupBox = new System.Windows.Forms.GroupBox(); - adjustmentRulesBox = new System.Windows.Forms.GroupBox(); - zonePanel = new System.Windows.Forms.TableLayoutPanel(); - idLabel = new System.Windows.Forms.Label(); - displayNameLabel = new System.Windows.Forms.Label(); - standardNameLabel = new System.Windows.Forms.Label(); - daylightNameLabel = new System.Windows.Forms.Label(); - dstLabel = new System.Windows.Forms.Label(); - offsetsGroupBox.SuspendLayout(); - this.offsetsPanel.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.utcOffsets)).BeginInit(); - adjustmentRulesBox.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.adjustmentRules)).BeginInit(); - zonePanel.SuspendLayout(); - this.layoutPanel.SuspendLayout(); - this.zoneBox.SuspendLayout(); - this.SuspendLayout(); - // - // fromLabel - // - fromLabel.AutoSize = true; - fromLabel.Dock = System.Windows.Forms.DockStyle.Fill; - fromLabel.Location = new System.Drawing.Point(0, 0); - fromLabel.Margin = new System.Windows.Forms.Padding(0); - fromLabel.Name = "fromLabel"; - fromLabel.Size = new System.Drawing.Size(33, 26); - fromLabel.TabIndex = 1; - fromLabel.Text = "From:"; - fromLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // toLabel - // - toLabel.AutoSize = true; - toLabel.Dock = System.Windows.Forms.DockStyle.Fill; - toLabel.Location = new System.Drawing.Point(0, 26); - toLabel.Margin = new System.Windows.Forms.Padding(0); - toLabel.Name = "toLabel"; - toLabel.Size = new System.Drawing.Size(33, 26); - toLabel.TabIndex = 2; - toLabel.Text = "To:"; - toLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // offsetsGroupBox - // - offsetsGroupBox.Controls.Add(this.offsetsPanel); - offsetsGroupBox.Dock = System.Windows.Forms.DockStyle.Fill; - offsetsGroupBox.Location = new System.Drawing.Point(403, 133); - offsetsGroupBox.Name = "offsetsGroupBox"; - offsetsGroupBox.Size = new System.Drawing.Size(509, 431); - offsetsGroupBox.TabIndex = 3; - offsetsGroupBox.TabStop = false; - offsetsGroupBox.Text = "Offsets from UTC"; - // - // offsetsPanel - // - this.offsetsPanel.ColumnCount = 2; - this.offsetsPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.offsetsPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F)); - this.offsetsPanel.Controls.Add(this.offsetsFrom, 1, 0); - this.offsetsPanel.Controls.Add(fromLabel, 0, 0); - this.offsetsPanel.Controls.Add(toLabel, 0, 1); - this.offsetsPanel.Controls.Add(this.offsetsTo, 1, 1); - this.offsetsPanel.Controls.Add(this.utcOffsets, 0, 2); - this.offsetsPanel.Dock = System.Windows.Forms.DockStyle.Fill; - this.offsetsPanel.Location = new System.Drawing.Point(3, 16); - this.offsetsPanel.Name = "offsetsPanel"; - this.offsetsPanel.RowCount = 3; - this.offsetsPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.offsetsPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.offsetsPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F)); - this.offsetsPanel.Size = new System.Drawing.Size(503, 412); - this.offsetsPanel.TabIndex = 2; - // - // offsetsFrom - // - this.offsetsFrom.CustomFormat = "yyyy-MM-dd HH:mm"; - this.offsetsFrom.Format = System.Windows.Forms.DateTimePickerFormat.Custom; - this.offsetsFrom.Location = new System.Drawing.Point(36, 3); - this.offsetsFrom.Name = "offsetsFrom"; - this.offsetsFrom.Size = new System.Drawing.Size(149, 20); - this.offsetsFrom.TabIndex = 0; - this.offsetsFrom.Value = new System.DateTime(1999, 12, 31, 23, 0, 0, 0); - this.offsetsFrom.ValueChanged += new System.EventHandler(this.AdjustOffsets); - // - // offsetsTo - // - this.offsetsTo.CustomFormat = "yyyy-MM-dd HH:mm"; - this.offsetsTo.Format = System.Windows.Forms.DateTimePickerFormat.Custom; - this.offsetsTo.Location = new System.Drawing.Point(36, 29); - this.offsetsTo.Name = "offsetsTo"; - this.offsetsTo.Size = new System.Drawing.Size(149, 20); - this.offsetsTo.TabIndex = 3; - this.offsetsTo.Value = new System.DateTime(2000, 1, 1, 1, 0, 0, 0); - this.offsetsTo.ValueChanged += new System.EventHandler(this.AdjustOffsets); - // - // utcOffsets - // - this.utcOffsets.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.AllCells; - this.utcOffsets.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; - this.offsetsPanel.SetColumnSpan(this.utcOffsets, 2); - this.utcOffsets.Dock = System.Windows.Forms.DockStyle.Fill; - this.utcOffsets.Location = new System.Drawing.Point(0, 55); - this.utcOffsets.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3); - this.utcOffsets.Name = "utcOffsets"; - this.utcOffsets.RowHeadersVisible = false; - this.utcOffsets.ShowEditingIcon = false; - this.utcOffsets.Size = new System.Drawing.Size(503, 354); - this.utcOffsets.TabIndex = 4; - // - // adjustmentRulesBox - // - adjustmentRulesBox.Controls.Add(this.adjustmentRules); - adjustmentRulesBox.Dock = System.Windows.Forms.DockStyle.Fill; - adjustmentRulesBox.Location = new System.Drawing.Point(3, 133); - adjustmentRulesBox.Name = "adjustmentRulesBox"; - adjustmentRulesBox.Size = new System.Drawing.Size(394, 431); - adjustmentRulesBox.TabIndex = 4; - adjustmentRulesBox.TabStop = false; - adjustmentRulesBox.Text = "Adjustment rules"; - // - // adjustmentRules - // - this.adjustmentRules.AllowUserToAddRows = false; - this.adjustmentRules.AllowUserToDeleteRows = false; - this.adjustmentRules.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.AllCells; - this.adjustmentRules.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; - this.adjustmentRules.Dock = System.Windows.Forms.DockStyle.Fill; - this.adjustmentRules.Location = new System.Drawing.Point(3, 16); - this.adjustmentRules.Name = "adjustmentRules"; - this.adjustmentRules.ReadOnly = true; - this.adjustmentRules.RowHeadersVisible = false; - this.adjustmentRules.ScrollBars = System.Windows.Forms.ScrollBars.None; - this.adjustmentRules.ShowEditingIcon = false; - this.adjustmentRules.Size = new System.Drawing.Size(388, 412); - this.adjustmentRules.TabIndex = 1; - // - // zonePanel - // - zonePanel.AutoSize = true; - zonePanel.ColumnCount = 2; - zonePanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - zonePanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F)); - zonePanel.Controls.Add(this.timeZones, 0, 0); - zonePanel.Controls.Add(idLabel, 0, 1); - zonePanel.Controls.Add(displayNameLabel, 0, 2); - zonePanel.Controls.Add(this.idValue, 1, 1); - zonePanel.Controls.Add(this.displayNameValue, 1, 2); - zonePanel.Controls.Add(standardNameLabel, 0, 3); - zonePanel.Controls.Add(daylightNameLabel, 0, 4); - zonePanel.Controls.Add(dstLabel, 0, 5); - zonePanel.Controls.Add(this.standardOffsetLabel, 0, 6); - zonePanel.Controls.Add(this.standardNameValue, 1, 3); - zonePanel.Controls.Add(this.daylightNameValue, 1, 4); - zonePanel.Controls.Add(this.supportsDstValue, 1, 5); - zonePanel.Controls.Add(this.standardOffsetValue, 1, 6); - zonePanel.Dock = System.Windows.Forms.DockStyle.Fill; - zonePanel.Location = new System.Drawing.Point(3, 16); - zonePanel.Name = "zonePanel"; - zonePanel.RowCount = 7; - zonePanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); - zonePanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); - zonePanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); - zonePanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); - zonePanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); - zonePanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); - zonePanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F)); - zonePanel.Size = new System.Drawing.Size(903, 105); - zonePanel.TabIndex = 0; - // - // timeZones - // - zonePanel.SetColumnSpan(this.timeZones, 2); - this.timeZones.DisplayMember = "DisplayName"; - this.timeZones.FormattingEnabled = true; - this.timeZones.Location = new System.Drawing.Point(3, 3); - this.timeZones.Name = "timeZones"; - this.timeZones.Size = new System.Drawing.Size(500, 21); - this.timeZones.TabIndex = 0; - this.timeZones.SelectedIndexChanged += new System.EventHandler(this.AdjustToSelectedTimeZone); - this.timeZones.SelectedValueChanged += new System.EventHandler(this.AdjustToSelectedTimeZone); - // - // idLabel - // - idLabel.AutoSize = true; - idLabel.Dock = System.Windows.Forms.DockStyle.Fill; - idLabel.Location = new System.Drawing.Point(3, 27); - idLabel.Name = "idLabel"; - idLabel.Size = new System.Drawing.Size(80, 13); - idLabel.TabIndex = 0; - idLabel.Text = "ID"; - idLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // displayNameLabel - // - displayNameLabel.AutoSize = true; - displayNameLabel.Dock = System.Windows.Forms.DockStyle.Fill; - displayNameLabel.Location = new System.Drawing.Point(3, 40); - displayNameLabel.Name = "displayNameLabel"; - displayNameLabel.Size = new System.Drawing.Size(80, 13); - displayNameLabel.TabIndex = 1; - displayNameLabel.Text = "Display name"; - displayNameLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // idValue - // - this.idValue.AutoSize = true; - this.idValue.Dock = System.Windows.Forms.DockStyle.Fill; - this.idValue.Location = new System.Drawing.Point(89, 27); - this.idValue.Name = "idValue"; - this.idValue.Size = new System.Drawing.Size(811, 13); - this.idValue.TabIndex = 2; - this.idValue.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // displayNameValue - // - this.displayNameValue.AutoSize = true; - this.displayNameValue.Dock = System.Windows.Forms.DockStyle.Fill; - this.displayNameValue.Location = new System.Drawing.Point(89, 40); - this.displayNameValue.Name = "displayNameValue"; - this.displayNameValue.Size = new System.Drawing.Size(811, 13); - this.displayNameValue.TabIndex = 3; - this.displayNameValue.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // standardNameLabel - // - standardNameLabel.AutoSize = true; - standardNameLabel.Dock = System.Windows.Forms.DockStyle.Fill; - standardNameLabel.Location = new System.Drawing.Point(3, 53); - standardNameLabel.Name = "standardNameLabel"; - standardNameLabel.Size = new System.Drawing.Size(80, 13); - standardNameLabel.TabIndex = 4; - standardNameLabel.Text = "Standard name"; - standardNameLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // daylightNameLabel - // - daylightNameLabel.AutoSize = true; - daylightNameLabel.Dock = System.Windows.Forms.DockStyle.Fill; - daylightNameLabel.Location = new System.Drawing.Point(3, 66); - daylightNameLabel.Name = "daylightNameLabel"; - daylightNameLabel.Size = new System.Drawing.Size(80, 13); - daylightNameLabel.TabIndex = 5; - daylightNameLabel.Text = "Daylight name"; - daylightNameLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // dstLabel - // - dstLabel.AutoSize = true; - dstLabel.Dock = System.Windows.Forms.DockStyle.Fill; - dstLabel.Location = new System.Drawing.Point(3, 79); - dstLabel.Name = "dstLabel"; - dstLabel.Size = new System.Drawing.Size(80, 13); - dstLabel.TabIndex = 6; - dstLabel.Text = "Supports DST?"; - dstLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // standardOffsetLabel - // - this.standardOffsetLabel.AutoSize = true; - this.standardOffsetLabel.Dock = System.Windows.Forms.DockStyle.Fill; - this.standardOffsetLabel.Location = new System.Drawing.Point(3, 92); - this.standardOffsetLabel.Name = "standardOffsetLabel"; - this.standardOffsetLabel.Size = new System.Drawing.Size(80, 13); - this.standardOffsetLabel.TabIndex = 7; - this.standardOffsetLabel.Text = "Standard offset"; - // - // standardNameValue - // - this.standardNameValue.AutoSize = true; - this.standardNameValue.Dock = System.Windows.Forms.DockStyle.Fill; - this.standardNameValue.Location = new System.Drawing.Point(89, 53); - this.standardNameValue.Name = "standardNameValue"; - this.standardNameValue.Size = new System.Drawing.Size(811, 13); - this.standardNameValue.TabIndex = 8; - // - // daylightNameValue - // - this.daylightNameValue.AutoSize = true; - this.daylightNameValue.Dock = System.Windows.Forms.DockStyle.Fill; - this.daylightNameValue.Location = new System.Drawing.Point(89, 66); - this.daylightNameValue.Name = "daylightNameValue"; - this.daylightNameValue.Size = new System.Drawing.Size(811, 13); - this.daylightNameValue.TabIndex = 9; - this.daylightNameValue.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // supportsDstValue - // - this.supportsDstValue.AutoSize = true; - this.supportsDstValue.Dock = System.Windows.Forms.DockStyle.Fill; - this.supportsDstValue.Location = new System.Drawing.Point(89, 79); - this.supportsDstValue.Name = "supportsDstValue"; - this.supportsDstValue.Size = new System.Drawing.Size(811, 13); - this.supportsDstValue.TabIndex = 10; - this.supportsDstValue.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // standardOffsetValue - // - this.standardOffsetValue.AutoSize = true; - this.standardOffsetValue.Dock = System.Windows.Forms.DockStyle.Fill; - this.standardOffsetValue.Location = new System.Drawing.Point(89, 92); - this.standardOffsetValue.Name = "standardOffsetValue"; - this.standardOffsetValue.Size = new System.Drawing.Size(811, 13); - this.standardOffsetValue.TabIndex = 11; - // - // layoutPanel - // - this.layoutPanel.AutoSize = true; - this.layoutPanel.ColumnCount = 2; - this.layoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 400F)); - this.layoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F)); - this.layoutPanel.Controls.Add(offsetsGroupBox, 1, 1); - this.layoutPanel.Controls.Add(adjustmentRulesBox, 0, 1); - this.layoutPanel.Controls.Add(this.zoneBox, 0, 0); - this.layoutPanel.Dock = System.Windows.Forms.DockStyle.Fill; - this.layoutPanel.Location = new System.Drawing.Point(0, 0); - this.layoutPanel.Name = "layoutPanel"; - this.layoutPanel.RowCount = 2; - this.layoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.layoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F)); - this.layoutPanel.Size = new System.Drawing.Size(915, 567); - this.layoutPanel.TabIndex = 0; - // - // zoneBox - // - this.zoneBox.AutoSize = true; - this.layoutPanel.SetColumnSpan(this.zoneBox, 2); - this.zoneBox.Controls.Add(zonePanel); - this.zoneBox.Dock = System.Windows.Forms.DockStyle.Fill; - this.zoneBox.Location = new System.Drawing.Point(3, 3); - this.zoneBox.Name = "zoneBox"; - this.zoneBox.Size = new System.Drawing.Size(909, 124); - this.zoneBox.TabIndex = 6; - this.zoneBox.TabStop = false; - this.zoneBox.Text = "Time zone selection"; - // - // MainForm - // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(915, 567); - this.Controls.Add(this.layoutPanel); - this.Name = "MainForm"; - this.Text = "TimeZoneInfo Explorer"; - this.Load += new System.EventHandler(this.PopulateTimeZones); - offsetsGroupBox.ResumeLayout(false); - this.offsetsPanel.ResumeLayout(false); - this.offsetsPanel.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.utcOffsets)).EndInit(); - adjustmentRulesBox.ResumeLayout(false); - ((System.ComponentModel.ISupportInitialize)(this.adjustmentRules)).EndInit(); - zonePanel.ResumeLayout(false); - zonePanel.PerformLayout(); - this.layoutPanel.ResumeLayout(false); - this.layoutPanel.PerformLayout(); - this.zoneBox.ResumeLayout(false); - this.zoneBox.PerformLayout(); - this.ResumeLayout(false); - this.PerformLayout(); - - } - - #endregion - - private System.Windows.Forms.ComboBox timeZones; - private System.Windows.Forms.TableLayoutPanel offsetsPanel; - private System.Windows.Forms.DateTimePicker offsetsFrom; - private System.Windows.Forms.DateTimePicker offsetsTo; - private System.Windows.Forms.DataGridView adjustmentRules; - private System.Windows.Forms.TableLayoutPanel layoutPanel; - private System.Windows.Forms.DataGridView utcOffsets; - private System.Windows.Forms.Label idValue; - private System.Windows.Forms.Label displayNameValue; - private System.Windows.Forms.Label standardOffsetLabel; - private System.Windows.Forms.Label standardNameValue; - private System.Windows.Forms.Label daylightNameValue; - private System.Windows.Forms.Label supportsDstValue; - private System.Windows.Forms.Label standardOffsetValue; - private System.Windows.Forms.GroupBox zoneBox; - } -} - diff --git a/DateTimeDemos/TimeZoneInfoExplorer/MainForm.cs b/DateTimeDemos/TimeZoneInfoExplorer/MainForm.cs deleted file mode 100644 index 624dc8c7..00000000 --- a/DateTimeDemos/TimeZoneInfoExplorer/MainForm.cs +++ /dev/null @@ -1,111 +0,0 @@ -using System; -using System.Data; -using System.Globalization; -using System.Linq; -using System.Windows.Forms; - -namespace TimeZoneInfoExplorer -{ - public partial class MainForm : Form - { - private static readonly string[] OrdinalWeeks = { "", "1st", "2nd", "3rd", "4th", "Last" }; - - public MainForm() - { - InitializeComponent(); - } - - private void AdjustToSelectedTimeZone(object sender, EventArgs e) - { - var zone = (TimeZoneInfo) timeZones.SelectedValue; - - idValue.Text = zone.Id; - displayNameValue.Text = zone.DisplayName; - standardNameValue.Text = zone.StandardName; - daylightNameValue.Text = zone.DaylightName; - supportsDstValue.Text = zone.SupportsDaylightSavingTime ? "Yes" : "No"; - standardOffsetValue.Text = zone.BaseUtcOffset.ToString(); - - adjustmentRules.DataSource = zone.GetAdjustmentRules().Select(rule => new - { - Delta = FormatOffset(rule.DaylightDelta), - Start = rule.DateStart.ToString("yyyy-MM-dd", CultureInfo.InvariantCulture), - End = rule.DateEnd.ToString("yyyy-MM-dd", CultureInfo.InvariantCulture), - StdOff = FormatOffset(DetectStandardOffset(zone, rule)), - DstStart = FormatTransition(rule.DaylightTransitionStart), - DstEnd = FormatTransition(rule.DaylightTransitionEnd), - }).ToList(); - adjustmentRules.ClearSelection(); - - // Not sure of the best way to handle this, basically... could definitely - // do with some work. - layoutPanel.ColumnStyles[0].Width = adjustmentRules.PreferredSize.Width; - - AdjustOffsets(sender, e); - } - - private static TimeSpan DetectStandardOffset(TimeZoneInfo zone, TimeZoneInfo.AdjustmentRule rule) - { - var offset = zone.GetUtcOffset(rule.DateStart); - if (zone.IsDaylightSavingTime(rule.DateStart)) - { - offset -= rule.DaylightDelta; - } - return offset; - } - - private void AdjustOffsets(object sender, EventArgs e) - { - var zone = (TimeZoneInfo) timeZones.SelectedValue; - var offsetList = new[] { new { Utc = "", Offset = "", Local = "", IsDST = "" } }.ToList(); - offsetList.Clear(); - var start = DateTime.SpecifyKind(offsetsFrom.Value, DateTimeKind.Utc); - var end = DateTime.SpecifyKind(offsetsTo.Value, DateTimeKind.Utc); - // Limit it to 100 values... it could be very large temporarily while changing from/to - for (DateTime utc = start; utc <= end && offsetList.Count < 100; utc = utc.AddHours(1)) - { - var local = TimeZoneInfo.ConvertTimeFromUtc(utc, zone); - offsetList.Add(new { - Utc = utc.ToString("yyyy-MM-dd HH:mm", CultureInfo.InvariantCulture), - Offset = FormatOffset(zone.GetUtcOffset(utc)), - Local = local.ToString("yyyy-MM-dd HH:mm", CultureInfo.InvariantCulture), - IsDST = zone.IsDaylightSavingTime(utc) ? "Yes" : "No" - }); - } - - utcOffsets.DataSource = offsetList; - utcOffsets.ClearSelection(); - } - - private static string FormatOffset(TimeSpan offset) - { - string prefix = "+"; - if (offset < TimeSpan.Zero) - { - prefix = "-"; - offset = -offset; - } - string value = offset.Seconds > 0 ? offset.ToString("hh':'mm':'ss", CultureInfo.InvariantCulture) - : offset.Minutes > 0 ? offset.ToString("hh':'mm", CultureInfo.InvariantCulture) - : offset.ToString("hh", CultureInfo.InvariantCulture); - return prefix + value; - } - - private void PopulateTimeZones(object sender, EventArgs e) - { - var zones = TimeZoneInfo.GetSystemTimeZones() - .OrderBy(zone => zone.BaseUtcOffset) - .ThenBy(zone => zone.Id) - .ToList(); - timeZones.DataSource = zones; - timeZones.SelectedIndex = zones.IndexOf(TimeZoneInfo.Utc); - } - - private static string FormatTransition(TimeZoneInfo.TransitionTime transition) - { - return transition.IsFixedDateRule ? - string.Format("{0:MMMM dd} at {1:HH:mm}", new DateTime(2000, transition.Month, transition.Day), transition.TimeOfDay) : - string.Format("{0} {1} of {2:MMMM}; {3:HH:mm}", OrdinalWeeks[transition.Week], transition.DayOfWeek, new DateTime(2000, transition.Month, 1), transition.TimeOfDay); - } - } -} diff --git a/DateTimeDemos/TimeZoneInfoExplorer/MainForm.resx b/DateTimeDemos/TimeZoneInfoExplorer/MainForm.resx deleted file mode 100644 index 7b4279ed..00000000 --- a/DateTimeDemos/TimeZoneInfoExplorer/MainForm.resx +++ /dev/null @@ -1,165 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - \ No newline at end of file diff --git a/DateTimeDemos/TimeZoneInfoExplorer/Program.cs b/DateTimeDemos/TimeZoneInfoExplorer/Program.cs deleted file mode 100644 index a6a85957..00000000 --- a/DateTimeDemos/TimeZoneInfoExplorer/Program.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Windows.Forms; - -namespace TimeZoneInfoExplorer -{ - static class Program - { - /// - /// The main entry point for the application. - /// - [STAThread] - static void Main() - { - Application.EnableVisualStyles(); - Application.SetCompatibleTextRenderingDefault(false); - Application.Run(new MainForm()); - } - } -} diff --git a/DateTimeDemos/TimeZoneInfoExplorer/Properties/AssemblyInfo.cs b/DateTimeDemos/TimeZoneInfoExplorer/Properties/AssemblyInfo.cs deleted file mode 100644 index 7f1464b2..00000000 --- a/DateTimeDemos/TimeZoneInfoExplorer/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("TimeZoneInfoExplorer")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("TimeZoneInfoExplorer")] -[assembly: AssemblyCopyright("Copyright © 2014")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("ac867f3d-99b5-4d46-b69e-54121358064d")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/DateTimeDemos/TimeZoneInfoExplorer/Properties/Resources.Designer.cs b/DateTimeDemos/TimeZoneInfoExplorer/Properties/Resources.Designer.cs deleted file mode 100644 index 018d63cf..00000000 --- a/DateTimeDemos/TimeZoneInfoExplorer/Properties/Resources.Designer.cs +++ /dev/null @@ -1,71 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.34209 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace TimeZoneInfoExplorer.Properties -{ - - - /// - /// A strongly-typed resource class, for looking up localized strings, etc. - /// - // This class was auto-generated by the StronglyTypedResourceBuilder - // class via a tool like ResGen or Visual Studio. - // To add or remove a member, edit your .ResX file then rerun ResGen - // with the /str option, or rebuild your VS project. - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - internal class Resources - { - - private static global::System.Resources.ResourceManager resourceMan; - - private static global::System.Globalization.CultureInfo resourceCulture; - - [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] - internal Resources() - { - } - - /// - /// Returns the cached ResourceManager instance used by this class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Resources.ResourceManager ResourceManager - { - get - { - if ((resourceMan == null)) - { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("TimeZoneInfoExplorer.Properties.Resources", typeof(Resources).Assembly); - resourceMan = temp; - } - return resourceMan; - } - } - - /// - /// Overrides the current thread's CurrentUICulture property for all - /// resource lookups using this strongly typed resource class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Globalization.CultureInfo Culture - { - get - { - return resourceCulture; - } - set - { - resourceCulture = value; - } - } - } -} diff --git a/DateTimeDemos/TimeZoneInfoExplorer/Properties/Resources.resx b/DateTimeDemos/TimeZoneInfoExplorer/Properties/Resources.resx deleted file mode 100644 index af7dbebb..00000000 --- a/DateTimeDemos/TimeZoneInfoExplorer/Properties/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/DateTimeDemos/TimeZoneInfoExplorer/Properties/Settings.Designer.cs b/DateTimeDemos/TimeZoneInfoExplorer/Properties/Settings.Designer.cs deleted file mode 100644 index 30175fe4..00000000 --- a/DateTimeDemos/TimeZoneInfoExplorer/Properties/Settings.Designer.cs +++ /dev/null @@ -1,30 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.34209 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace TimeZoneInfoExplorer.Properties -{ - - - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] - internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase - { - - private static Settings defaultInstance = ((Settings) (global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); - - public static Settings Default - { - get - { - return defaultInstance; - } - } - } -} diff --git a/DateTimeDemos/TimeZoneInfoExplorer/Properties/Settings.settings b/DateTimeDemos/TimeZoneInfoExplorer/Properties/Settings.settings deleted file mode 100644 index 39645652..00000000 --- a/DateTimeDemos/TimeZoneInfoExplorer/Properties/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/DateTimeDemos/TimeZoneInfoExplorer/TimeZoneInfoExplorer.csproj b/DateTimeDemos/TimeZoneInfoExplorer/TimeZoneInfoExplorer.csproj deleted file mode 100644 index 43020e23..00000000 --- a/DateTimeDemos/TimeZoneInfoExplorer/TimeZoneInfoExplorer.csproj +++ /dev/null @@ -1,85 +0,0 @@ - - - - - Debug - AnyCPU - {C1740F93-74C8-47A1-B60B-E71AAA0B757B} - WinExe - Properties - TimeZoneInfoExplorer - TimeZoneInfoExplorer - v4.0 - 512 - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - - - - - - - - - - - - - Form - - - MainForm.cs - - - - - MainForm.cs - - - ResXFileCodeGenerator - Resources.Designer.cs - Designer - - - True - Resources.resx - - - SettingsSingleFileGenerator - Settings.Designer.cs - - - True - Settings.settings - True - - - - - \ No newline at end of file diff --git a/DemoUtil/DemoUtil.sln b/DemoUtil/DemoUtil.sln deleted file mode 100644 index 3c3435a7..00000000 --- a/DemoUtil/DemoUtil.sln +++ /dev/null @@ -1,28 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 15 -VisualStudioVersion = 15.0.26228.9 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JonSkeet.DemoUtil", "JonSkeet.DemoUtil\JonSkeet.DemoUtil.csproj", "{DA9AC72B-325D-4922-93B1-22B363CC1173}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "JonSkeet.DemoUtil.Test", "JonSkeet.DemoUtil.Test\JonSkeet.DemoUtil.Test.csproj", "{ECC3E7F7-1540-4A67-89DA-923FF7A11276}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {DA9AC72B-325D-4922-93B1-22B363CC1173}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {DA9AC72B-325D-4922-93B1-22B363CC1173}.Debug|Any CPU.Build.0 = Debug|Any CPU - {DA9AC72B-325D-4922-93B1-22B363CC1173}.Release|Any CPU.ActiveCfg = Release|Any CPU - {DA9AC72B-325D-4922-93B1-22B363CC1173}.Release|Any CPU.Build.0 = Release|Any CPU - {ECC3E7F7-1540-4A67-89DA-923FF7A11276}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {ECC3E7F7-1540-4A67-89DA-923FF7A11276}.Debug|Any CPU.Build.0 = Debug|Any CPU - {ECC3E7F7-1540-4A67-89DA-923FF7A11276}.Release|Any CPU.ActiveCfg = Release|Any CPU - {ECC3E7F7-1540-4A67-89DA-923FF7A11276}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/DemoUtil/JonSkeet.DemoUtil.Test/DemoWithAsyncMain.cs b/DemoUtil/JonSkeet.DemoUtil.Test/DemoWithAsyncMain.cs deleted file mode 100644 index 65b24a12..00000000 --- a/DemoUtil/JonSkeet.DemoUtil.Test/DemoWithAsyncMain.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System; -using System.Threading.Tasks; - -namespace JonSkeet.DemoUtil.Test -{ - class DemoWithAsyncMain - { - static async Task Main() - { - Console.WriteLine("Before delay"); - await Task.Delay(1000); - Console.WriteLine("After delay"); - } - } -} diff --git a/DemoUtil/JonSkeet.DemoUtil.Test/DemoWithDescription.cs b/DemoUtil/JonSkeet.DemoUtil.Test/DemoWithDescription.cs deleted file mode 100644 index 4c0c1b8d..00000000 --- a/DemoUtil/JonSkeet.DemoUtil.Test/DemoWithDescription.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; -using System.ComponentModel; - -namespace JonSkeet.DemoUtil.Test -{ - [Description("This is a description")] - class DemoWithDescription - { - static void Main() - { - Console.WriteLine("This demo has a description"); - } - } -} diff --git a/DemoUtil/JonSkeet.DemoUtil.Test/DemoWithException.cs b/DemoUtil/JonSkeet.DemoUtil.Test/DemoWithException.cs deleted file mode 100644 index e9a45af9..00000000 --- a/DemoUtil/JonSkeet.DemoUtil.Test/DemoWithException.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; - -namespace JonSkeet.DemoUtil.Test -{ - class DemoWithException - { - static void Main() - { - throw new Exception("Bang!"); - } - } -} diff --git a/DemoUtil/JonSkeet.DemoUtil.Test/DemoWithoutDescription.cs b/DemoUtil/JonSkeet.DemoUtil.Test/DemoWithoutDescription.cs deleted file mode 100644 index ab193c6a..00000000 --- a/DemoUtil/JonSkeet.DemoUtil.Test/DemoWithoutDescription.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; - -namespace JonSkeet.DemoUtil.Test -{ - class DemoWithoutDescription - { - static void Main() - { - Console.WriteLine("This demo has no description"); - } - } -} diff --git a/DemoUtil/JonSkeet.DemoUtil.Test/JonSkeet.DemoUtil.Test.csproj b/DemoUtil/JonSkeet.DemoUtil.Test/JonSkeet.DemoUtil.Test.csproj deleted file mode 100644 index 7a785479..00000000 --- a/DemoUtil/JonSkeet.DemoUtil.Test/JonSkeet.DemoUtil.Test.csproj +++ /dev/null @@ -1,14 +0,0 @@ - - - - Exe - netcoreapp3.1 - JonSkeet.DemoUtil.Test.Program - false - - - - - - - \ No newline at end of file diff --git a/DemoUtil/JonSkeet.DemoUtil.Test/Program.cs b/DemoUtil/JonSkeet.DemoUtil.Test/Program.cs deleted file mode 100644 index 62b97efb..00000000 --- a/DemoUtil/JonSkeet.DemoUtil.Test/Program.cs +++ /dev/null @@ -1,10 +0,0 @@ -namespace JonSkeet.DemoUtil.Test -{ - class Program - { - static void Main(string[] args) - { - ApplicationChooser.Run(); - } - } -} \ No newline at end of file diff --git a/DemoUtil/JonSkeet.DemoUtil/ApplicationChooser.cs b/DemoUtil/JonSkeet.DemoUtil/ApplicationChooser.cs deleted file mode 100644 index f7c36cb8..00000000 --- a/DemoUtil/JonSkeet.DemoUtil/ApplicationChooser.cs +++ /dev/null @@ -1,176 +0,0 @@ -// Copyright 2017 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Linq; -using System.Reflection; -using System.Threading.Tasks; - -namespace JonSkeet.DemoUtil -{ - /// - /// Class allowing a user to choose a console application to run, after - /// examining an assembly for all classes containing a static Main method, either - /// parameterless or with a string array parameter. - /// The options are presented in a list ordered first by those with a Description - /// attribute (by that description) and then those without (ordered by name). - /// - public class ApplicationChooser - { - const string Keys = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; - - /// - /// Displays entry points and prompts the user to choose one. - /// The assembly to find types in is the entry assembly. - /// - /// Arguments to pass in for methods which have a single string array parameter. - public static void Run(string[] args) => Run(Assembly.GetEntryAssembly(), args); - - /// - /// Displays entry points and prompts the user to choose one. - /// The assembly to find types in is the entry assembly. - /// An empty set of arguments will be passed to any Main method - /// with a string array parameter - /// - public static void Run() => Run(Assembly.GetEntryAssembly(), new string[0]); - - /// - /// Displays entry points and prompts the user to choose one. - /// - /// Type within the assembly containing the applications. This type is - /// not included in the list of entry points to run. - /// Arguments to pass in for methods which have a single string array parameter. - public static void Run(Type type, string[] args) => - Run(type.GetTypeInfo().Assembly, args); - - private static void Run(Assembly assembly, string[] args) - { - var options = assembly.DefinedTypes - .Select(t => GetEntryPoint(t)) - .Where(ep => ep != null && ep != assembly.EntryPoint) - .OrderBy(ep => GetDescription(ep.DeclaringType)) - .ThenBy(ep => ep.DeclaringType.Name) - .Zip(Keys, (ep, k) => new { Key = k, EntryPoint = ep }) - .ToList(); - - if (options.Count == 0) - { - Console.WriteLine("No entry points found. Press return to exit."); - Console.ReadLine(); - return; - } - - while (true) - { - foreach (var option in options) - { - Console.WriteLine($"{option.Key}: {GetEntryPointName(option.EntryPoint)}"); - } - Console.WriteLine(); - Console.Write("Entry point to run (or hit return to quit)? "); - - MethodBase entryPoint = null; - do - { - Console.Out.Flush(); - char key = char.ToUpperInvariant(Console.ReadKey().KeyChar); - Console.WriteLine(); - - if (key == '\r' || key == '\n') - { - return; - } - - var selected = options.FirstOrDefault(o => o.Key == key); - if (selected == null) - { - Console.Write("Invalid choice; please select again: "); - } - else - { - entryPoint = selected.EntryPoint; - } - } while (entryPoint == null); - try - { - MethodBase main = entryPoint; - Task task = main.Invoke(null, main.GetParameters().Length == 0 ? null : new object[] { args }) as Task; - if (task != null) - { - task.GetAwaiter().GetResult(); - } - } - catch (Exception e) - { - // Normally we fail due to an exception within the - // code invoked via reflection. - // Unwrap the TargetInvocationException that would otherwise - // be wrapped in. - if (e is TargetInvocationException tie) - { - e = tie.InnerException; - } - Console.WriteLine("Exception: {0}", e); - } - Console.WriteLine(); - Console.WriteLine("(Finished; press return.)"); - Console.ReadLine(); - } - } - - private static object GetEntryPointName(MethodBase methodBase) - { - Type type = methodBase.DeclaringType; - string description = GetDescription(type); - return description == null ? type.Name : $"[{description}] {type.Name}"; - } - - private static string GetDescription(Type type) => - type.GetTypeInfo() - .GetCustomAttributes() - .FirstOrDefault()?.Description; - - /// - /// Returns the entry point for a method, or null if no entry points can be used. - /// An entry point taking string[] is preferred to one with no parameters. - /// - internal static MethodBase GetEntryPoint(TypeInfo type) - { - if (type.IsGenericTypeDefinition || type.IsGenericType) - { - return null; - } - - var methods = type.DeclaredMethods - .Where(m => m.IsStatic && m.Name == "Main" && !m.IsGenericMethodDefinition); - - MethodInfo parameterless = null; - MethodInfo stringArrayParameter = null; - - foreach (MethodInfo method in methods) - { - ParameterInfo[] parameters = method.GetParameters(); - if (parameters.Length == 0) - { - parameterless = method; - } - else - { - if (parameters.Length == 1 && - !parameters[0].IsOut && - !parameters[0].IsOptional && - parameters[0].ParameterType == typeof(string[])) - { - stringArrayParameter = method; - } - } - } - - // Prefer the version with parameters, return null if neither have been found - return stringArrayParameter ?? parameterless; - } - } -} diff --git a/DemoUtil/JonSkeet.DemoUtil/JonSkeet.DemoUtil.csproj b/DemoUtil/JonSkeet.DemoUtil/JonSkeet.DemoUtil.csproj deleted file mode 100644 index 483511ac..00000000 --- a/DemoUtil/JonSkeet.DemoUtil/JonSkeet.DemoUtil.csproj +++ /dev/null @@ -1,29 +0,0 @@ - - - - netstandard2.0 - JonSkeet.DemoUtil - 1.4.0 - Jon Skeet - - - Utilities that are useful when demonstrating code. -(e.g. for books, articles, conferences) - Apache-2.0 - https://github.com/jskeet/democode - https://github.com/jskeet/democode - demo utility - Jon Skeet - portable - true - snupkg - true - true - - - - - - - - diff --git a/DemoUtil/JonSkeet.DemoUtil/targets/JonSkeet.DemoUtil.props b/DemoUtil/JonSkeet.DemoUtil/targets/JonSkeet.DemoUtil.props deleted file mode 100644 index f5d8ed5e..00000000 --- a/DemoUtil/JonSkeet.DemoUtil/targets/JonSkeet.DemoUtil.props +++ /dev/null @@ -1,6 +0,0 @@ - - - - true - - diff --git a/DemoUtil/JonSkeet.DemoUtil/targets/JonSkeet.DemoUtil.targets b/DemoUtil/JonSkeet.DemoUtil/targets/JonSkeet.DemoUtil.targets deleted file mode 100644 index 28e42fa6..00000000 --- a/DemoUtil/JonSkeet.DemoUtil/targets/JonSkeet.DemoUtil.targets +++ /dev/null @@ -1,46 +0,0 @@ - - - - <_GeneratedEntryPointFile>$(IntermediateOutputPath)$(MSBuildProjectName).Program.g.cs - - - - - AutoGeneratedProgram - - - - - - - <_GeneratedProgramFileContent> - -This file was created automatically - using System.Runtime.CompilerServices; - [CompilerGenerated] - internal class AutoGeneratedProgram - { - public static void Main(string[] args) => - global::JonSkeet.DemoUtil.ApplicationChooser.Run(typeof(global::AutoGeneratedProgram), args); - } -]]> - - - - - - - - - - diff --git a/Diagnostics/Diagnostics.sln b/Diagnostics/Diagnostics.sln deleted file mode 100644 index 783ede96..00000000 --- a/Diagnostics/Diagnostics.sln +++ /dev/null @@ -1,85 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 15 -VisualStudioVersion = 15.0.26730.15 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Example1a", "Example1a\Example1a.csproj", "{8BE1177B-210E-4360-B33D-2D78906EB603}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Example1b", "Example1b\Example1b.csproj", "{6DF17CB1-C5FC-4704-916F-FD6D089B319A}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Example1c", "Example1c\Example1c.csproj", "{4053B732-9BD4-4040-A22D-DFEDA2913F1F}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Example1d", "Example1d\Example1d.csproj", "{FD09A689-21D6-42E7-9810-2B598D90FCDB}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Example2a", "Example2a\Example2a.csproj", "{7600B497-A29E-4C40-AA6B-31DB42640CC6}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Example2b", "Example2b\Example2b.csproj", "{52AF51E2-40D9-4A83-8373-DDF506E4F4A1}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Example2c", "Example2c\Example2c.csproj", "{63DA3737-8F67-4C26-9EE8-D7163D34B65F}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Example3a", "Example3a\Example3a.csproj", "{A9AFC226-D88B-4735-8E62-2065CED5948F}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Example3b", "Example3b\Example3b.csproj", "{C3921894-DB11-4488-A47F-FD6977AFCFD4}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Example3c", "Example3c\Example3c.csproj", "{8B72C9CF-8B9F-4F72-87CA-15A9130E2394}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnhelpfulDebugger", "UnhelpfulDebugger\UnhelpfulDebugger.csproj", "{BCE31E51-88B5-4D45-9081-855FA1F3BC53}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {8BE1177B-210E-4360-B33D-2D78906EB603}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {8BE1177B-210E-4360-B33D-2D78906EB603}.Debug|Any CPU.Build.0 = Debug|Any CPU - {8BE1177B-210E-4360-B33D-2D78906EB603}.Release|Any CPU.ActiveCfg = Release|Any CPU - {8BE1177B-210E-4360-B33D-2D78906EB603}.Release|Any CPU.Build.0 = Release|Any CPU - {6DF17CB1-C5FC-4704-916F-FD6D089B319A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {6DF17CB1-C5FC-4704-916F-FD6D089B319A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {6DF17CB1-C5FC-4704-916F-FD6D089B319A}.Release|Any CPU.ActiveCfg = Release|Any CPU - {6DF17CB1-C5FC-4704-916F-FD6D089B319A}.Release|Any CPU.Build.0 = Release|Any CPU - {4053B732-9BD4-4040-A22D-DFEDA2913F1F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {4053B732-9BD4-4040-A22D-DFEDA2913F1F}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4053B732-9BD4-4040-A22D-DFEDA2913F1F}.Release|Any CPU.ActiveCfg = Release|Any CPU - {4053B732-9BD4-4040-A22D-DFEDA2913F1F}.Release|Any CPU.Build.0 = Release|Any CPU - {FD09A689-21D6-42E7-9810-2B598D90FCDB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {FD09A689-21D6-42E7-9810-2B598D90FCDB}.Debug|Any CPU.Build.0 = Debug|Any CPU - {FD09A689-21D6-42E7-9810-2B598D90FCDB}.Release|Any CPU.ActiveCfg = Release|Any CPU - {FD09A689-21D6-42E7-9810-2B598D90FCDB}.Release|Any CPU.Build.0 = Release|Any CPU - {7600B497-A29E-4C40-AA6B-31DB42640CC6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {7600B497-A29E-4C40-AA6B-31DB42640CC6}.Debug|Any CPU.Build.0 = Debug|Any CPU - {7600B497-A29E-4C40-AA6B-31DB42640CC6}.Release|Any CPU.ActiveCfg = Release|Any CPU - {7600B497-A29E-4C40-AA6B-31DB42640CC6}.Release|Any CPU.Build.0 = Release|Any CPU - {52AF51E2-40D9-4A83-8373-DDF506E4F4A1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {52AF51E2-40D9-4A83-8373-DDF506E4F4A1}.Debug|Any CPU.Build.0 = Debug|Any CPU - {52AF51E2-40D9-4A83-8373-DDF506E4F4A1}.Release|Any CPU.ActiveCfg = Release|Any CPU - {52AF51E2-40D9-4A83-8373-DDF506E4F4A1}.Release|Any CPU.Build.0 = Release|Any CPU - {63DA3737-8F67-4C26-9EE8-D7163D34B65F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {63DA3737-8F67-4C26-9EE8-D7163D34B65F}.Debug|Any CPU.Build.0 = Debug|Any CPU - {63DA3737-8F67-4C26-9EE8-D7163D34B65F}.Release|Any CPU.ActiveCfg = Release|Any CPU - {63DA3737-8F67-4C26-9EE8-D7163D34B65F}.Release|Any CPU.Build.0 = Release|Any CPU - {A9AFC226-D88B-4735-8E62-2065CED5948F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {A9AFC226-D88B-4735-8E62-2065CED5948F}.Debug|Any CPU.Build.0 = Debug|Any CPU - {A9AFC226-D88B-4735-8E62-2065CED5948F}.Release|Any CPU.ActiveCfg = Release|Any CPU - {A9AFC226-D88B-4735-8E62-2065CED5948F}.Release|Any CPU.Build.0 = Release|Any CPU - {C3921894-DB11-4488-A47F-FD6977AFCFD4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C3921894-DB11-4488-A47F-FD6977AFCFD4}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C3921894-DB11-4488-A47F-FD6977AFCFD4}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C3921894-DB11-4488-A47F-FD6977AFCFD4}.Release|Any CPU.Build.0 = Release|Any CPU - {8B72C9CF-8B9F-4F72-87CA-15A9130E2394}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {8B72C9CF-8B9F-4F72-87CA-15A9130E2394}.Debug|Any CPU.Build.0 = Debug|Any CPU - {8B72C9CF-8B9F-4F72-87CA-15A9130E2394}.Release|Any CPU.ActiveCfg = Release|Any CPU - {8B72C9CF-8B9F-4F72-87CA-15A9130E2394}.Release|Any CPU.Build.0 = Release|Any CPU - {BCE31E51-88B5-4D45-9081-855FA1F3BC53}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {BCE31E51-88B5-4D45-9081-855FA1F3BC53}.Debug|Any CPU.Build.0 = Debug|Any CPU - {BCE31E51-88B5-4D45-9081-855FA1F3BC53}.Release|Any CPU.ActiveCfg = Release|Any CPU - {BCE31E51-88B5-4D45-9081-855FA1F3BC53}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {5698027C-7C81-46F6-950B-93411CDCA801} - EndGlobalSection -EndGlobal diff --git a/Diagnostics/Example1a/Configuration/ReportDbConfig.cs b/Diagnostics/Example1a/Configuration/ReportDbConfig.cs deleted file mode 100644 index 46ab1114..00000000 --- a/Diagnostics/Example1a/Configuration/ReportDbConfig.cs +++ /dev/null @@ -1,7 +0,0 @@ -namespace Example1a.Configuration -{ - public class ReportDbConfig - { - public string ConnectionString { get; set; } - } -} diff --git a/Diagnostics/Example1a/Controllers/HomeController.cs b/Diagnostics/Example1a/Controllers/HomeController.cs deleted file mode 100644 index 34b14733..00000000 --- a/Diagnostics/Example1a/Controllers/HomeController.cs +++ /dev/null @@ -1,37 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Diagnostics; -using System.Linq; -using System.Threading.Tasks; -using Microsoft.AspNetCore.Mvc; -using Example1a.Models; - -namespace Example1a.Controllers -{ - public class HomeController : Controller - { - public IActionResult Index() - { - return View(); - } - - public IActionResult About() - { - ViewData["Message"] = "Your application description page."; - - return View(); - } - - public IActionResult Contact() - { - ViewData["Message"] = "Your contact page."; - - return View(); - } - - public IActionResult Error() - { - return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier }); - } - } -} diff --git a/Diagnostics/Example1a/Controllers/ReportsController.cs b/Diagnostics/Example1a/Controllers/ReportsController.cs deleted file mode 100644 index 83c2eee8..00000000 --- a/Diagnostics/Example1a/Controllers/ReportsController.cs +++ /dev/null @@ -1,44 +0,0 @@ -using Example1a.Models; -using Microsoft.AspNetCore.Mvc; -using System; -using System.IO; -using System.Linq; -using System.Xml.Linq; - -namespace Example1a.Controllers -{ - /// - /// Controller for generating / downloading reports - /// - public class ReportsController : Controller - { - private IReportRepository repository; - - public ReportsController(IReportRepository repository) - { - this.repository = repository; - } - - public IActionResult Index() - { - return View(); - } - - public IActionResult DownloadXml(string date) - { - DateTime dateTime = DateTime.Parse(date); - var report = repository.GetReport(dateTime); - var document = new XDocument(new XElement("Report", - new XAttribute("date", report.Date), - report.Lines.Select(line => new XElement("Line", - new XAttribute("productName", line.ProductName), - new XAttribute("price", line.Price), - new XAttribute("quantity", line.Quantity)) - )) - ); - var stream = new MemoryStream(); - document.Save(stream); - return File(stream.ToArray(), "text/xml", "report.xml"); - } - } -} diff --git a/Diagnostics/Example1a/Example1a.csproj b/Diagnostics/Example1a/Example1a.csproj deleted file mode 100644 index d59a01de..00000000 --- a/Diagnostics/Example1a/Example1a.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - netcoreapp2.1 - - - - - - - diff --git a/Diagnostics/Example1a/Models/ErrorViewModel.cs b/Diagnostics/Example1a/Models/ErrorViewModel.cs deleted file mode 100644 index 86d47bd7..00000000 --- a/Diagnostics/Example1a/Models/ErrorViewModel.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; - -namespace Example1a.Models -{ - public class ErrorViewModel - { - public string RequestId { get; set; } - - public bool ShowRequestId => !string.IsNullOrEmpty(RequestId); - } -} \ No newline at end of file diff --git a/Diagnostics/Example1a/Models/IReportRepository.cs b/Diagnostics/Example1a/Models/IReportRepository.cs deleted file mode 100644 index 900fa969..00000000 --- a/Diagnostics/Example1a/Models/IReportRepository.cs +++ /dev/null @@ -1,9 +0,0 @@ -using System; - -namespace Example1a.Models -{ - public interface IReportRepository - { - Report GetReport(DateTime date); - } -} diff --git a/Diagnostics/Example1a/Models/Report.cs b/Diagnostics/Example1a/Models/Report.cs deleted file mode 100644 index bdb450d3..00000000 --- a/Diagnostics/Example1a/Models/Report.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace Example1a.Models -{ - public class Report - { - public DateTime Date { get; set; } - public List Lines { get; } = new List(); - } -} diff --git a/Diagnostics/Example1a/Models/ReportLine.cs b/Diagnostics/Example1a/Models/ReportLine.cs deleted file mode 100644 index d6c27556..00000000 --- a/Diagnostics/Example1a/Models/ReportLine.cs +++ /dev/null @@ -1,9 +0,0 @@ -namespace Example1a.Models -{ - public class ReportLine - { - public string ProductName { get; set; } - public decimal Price { get; set; } - public int Quantity { get; set; } - } -} diff --git a/Diagnostics/Example1a/Models/ReportRepository.cs b/Diagnostics/Example1a/Models/ReportRepository.cs deleted file mode 100644 index d1d18a33..00000000 --- a/Diagnostics/Example1a/Models/ReportRepository.cs +++ /dev/null @@ -1,44 +0,0 @@ -using Example1a.Configuration; -using Microsoft.Extensions.Options; -using System; -using System.Data; -using System.Data.SqlClient; - -namespace Example1a.Models -{ - public class ReportRepository : IReportRepository - { - private readonly ReportDbConfig config; - - public ReportRepository(IOptions options) - { - this.config = options.Value; - } - - public Report GetReport(DateTime date) - { - var report = new Report { Date = date }; - using (var conn = new SqlConnection(config.ConnectionString)) - { - conn.Open(); - using (var cmd = new SqlCommand("SELECT * FROM REPORTLINES WHERE REPORTDATE=@date", conn)) - { - cmd.Parameters.Add("date", SqlDbType.Date).Value = date; - using (var reader = cmd.ExecuteReader()) - { - while (reader.Read()) - { - report.Lines.Add(new ReportLine - { - Price = (decimal)reader["price"], - ProductName = (string)reader["productname"], - Quantity = (int)reader["quantity"] - }); - } - } - } - } - return report; - } - } -} diff --git a/Diagnostics/Example1a/Program.cs b/Diagnostics/Example1a/Program.cs deleted file mode 100644 index 30fbc4c2..00000000 --- a/Diagnostics/Example1a/Program.cs +++ /dev/null @@ -1,17 +0,0 @@ -using Microsoft.AspNetCore; -using Microsoft.AspNetCore.Hosting; - -namespace Example1a -{ - public class Program - { - public static void Main(string[] args) - { - CreateWebHostBuilder(args).Build().Run(); - } - - public static IWebHostBuilder CreateWebHostBuilder(string[] args) => - WebHost.CreateDefaultBuilder(args) - .UseStartup(); - } -} diff --git a/Diagnostics/Example1a/Properties/launchSettings.json b/Diagnostics/Example1a/Properties/launchSettings.json deleted file mode 100644 index 5ecfcd29..00000000 --- a/Diagnostics/Example1a/Properties/launchSettings.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "iisSettings": { - "windowsAuthentication": false, - "anonymousAuthentication": true, - "iisExpress": { - "applicationUrl": "http://localhost:58179/", - "sslPort": 0 - } - }, - "profiles": { - "IIS Express": { - "commandName": "IISExpress", - "launchBrowser": true, - "environmentVariables": { - "ASPNETCORE_ENVIRONMENT": "Development" - } - }, - "Example1a": { - "commandName": "Project", - "launchBrowser": true, - "environmentVariables": { - "ASPNETCORE_ENVIRONMENT": "Development" - }, - "applicationUrl": "http://localhost:58180/" - } - } -} diff --git a/Diagnostics/Example1a/Startup.cs b/Diagnostics/Example1a/Startup.cs deleted file mode 100644 index b1334d50..00000000 --- a/Diagnostics/Example1a/Startup.cs +++ /dev/null @@ -1,62 +0,0 @@ -using Example1a.Configuration; -using Example1a.Models; -using Microsoft.AspNetCore.Builder; -using Microsoft.AspNetCore.Hosting; -using Microsoft.AspNetCore.Http; -using Microsoft.AspNetCore.Mvc; -using Microsoft.Extensions.Configuration; -using Microsoft.Extensions.DependencyInjection; - -namespace Example1a -{ - public class Startup - { - public Startup(IConfiguration configuration) - { - Configuration = configuration; - } - - public IConfiguration Configuration { get; } - - // This method gets called by the runtime. Use this method to add services to the container. - public void ConfigureServices(IServiceCollection services) - { - services.Configure(options => - { - // This lambda determines whether user consent for non-essential cookies is needed for a given request. - options.CheckConsentNeeded = context => true; - options.MinimumSameSitePolicy = SameSiteMode.None; - }); - - services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1); - - services.Configure(Configuration.GetSection("ReportDb")); - services.AddSingleton(); - } - - // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. - public void Configure(IApplicationBuilder app, IHostingEnvironment env) - { - if (env.IsDevelopment()) - { - app.UseDeveloperExceptionPage(); - } - else - { - app.UseExceptionHandler("/Home/Error"); - app.UseHsts(); - } - - app.UseHttpsRedirection(); - app.UseStaticFiles(); - app.UseCookiePolicy(); - - app.UseMvc(routes => - { - routes.MapRoute( - name: "default", - template: "{controller=Home}/{action=Index}/{id?}"); - }); - } - } -} diff --git a/Diagnostics/Example1a/Views/Home/About.cshtml b/Diagnostics/Example1a/Views/Home/About.cshtml deleted file mode 100644 index 3674e37a..00000000 --- a/Diagnostics/Example1a/Views/Home/About.cshtml +++ /dev/null @@ -1,7 +0,0 @@ -@{ - ViewData["Title"] = "About"; -} -

@ViewData["Title"]

-

@ViewData["Message"]

- -

Use this area to provide additional information.

diff --git a/Diagnostics/Example1a/Views/Home/Contact.cshtml b/Diagnostics/Example1a/Views/Home/Contact.cshtml deleted file mode 100644 index a11a1867..00000000 --- a/Diagnostics/Example1a/Views/Home/Contact.cshtml +++ /dev/null @@ -1,17 +0,0 @@ -@{ - ViewData["Title"] = "Contact"; -} -

@ViewData["Title"]

-

@ViewData["Message"]

- -
- One Microsoft Way
- Redmond, WA 98052-6399
- P: - 425.555.0100 -
- -
- Support: Support@example.com
- Marketing: Marketing@example.com -
diff --git a/Diagnostics/Example1a/Views/Home/Index.cshtml b/Diagnostics/Example1a/Views/Home/Index.cshtml deleted file mode 100644 index f42d2a08..00000000 --- a/Diagnostics/Example1a/Views/Home/Index.cshtml +++ /dev/null @@ -1,94 +0,0 @@ -@{ - ViewData["Title"] = "Home Page"; -} - - - - diff --git a/Diagnostics/Example1a/Views/Home/Privacy.cshtml b/Diagnostics/Example1a/Views/Home/Privacy.cshtml deleted file mode 100644 index 7bd38619..00000000 --- a/Diagnostics/Example1a/Views/Home/Privacy.cshtml +++ /dev/null @@ -1,6 +0,0 @@ -@{ - ViewData["Title"] = "Privacy Policy"; -} -

@ViewData["Title"]

- -

Use this page to detail your site's privacy policy.

diff --git a/Diagnostics/Example1a/Views/Reports/Index.cshtml b/Diagnostics/Example1a/Views/Reports/Index.cshtml deleted file mode 100644 index ae56ebc8..00000000 --- a/Diagnostics/Example1a/Views/Reports/Index.cshtml +++ /dev/null @@ -1,7 +0,0 @@ -@{ - ViewData["Title"] = "Reports"; -} - -

- Download the report -

diff --git a/Diagnostics/Example1a/Views/Shared/Error.cshtml b/Diagnostics/Example1a/Views/Shared/Error.cshtml deleted file mode 100644 index ec2ea6bd..00000000 --- a/Diagnostics/Example1a/Views/Shared/Error.cshtml +++ /dev/null @@ -1,22 +0,0 @@ -@model ErrorViewModel -@{ - ViewData["Title"] = "Error"; -} - -

Error.

-

An error occurred while processing your request.

- -@if (Model.ShowRequestId) -{ -

- Request ID: @Model.RequestId -

-} - -

Development Mode

-

- Swapping to Development environment will display more detailed information about the error that occurred. -

-

- Development environment should not be enabled in deployed applications, as it can result in sensitive information from exceptions being displayed to end users. For local debugging, development environment can be enabled by setting the ASPNETCORE_ENVIRONMENT environment variable to Development, and restarting the application. -

diff --git a/Diagnostics/Example1a/Views/Shared/_CookieConsentPartial.cshtml b/Diagnostics/Example1a/Views/Shared/_CookieConsentPartial.cshtml deleted file mode 100644 index bbfbb09a..00000000 --- a/Diagnostics/Example1a/Views/Shared/_CookieConsentPartial.cshtml +++ /dev/null @@ -1,41 +0,0 @@ -@using Microsoft.AspNetCore.Http.Features - -@{ - var consentFeature = Context.Features.Get(); - var showBanner = !consentFeature?.CanTrack ?? false; - var cookieString = consentFeature?.CreateConsentCookie(); -} - -@if (showBanner) -{ - - -} \ No newline at end of file diff --git a/Diagnostics/Example1a/Views/Shared/_Layout.cshtml b/Diagnostics/Example1a/Views/Shared/_Layout.cshtml deleted file mode 100644 index 5817d905..00000000 --- a/Diagnostics/Example1a/Views/Shared/_Layout.cshtml +++ /dev/null @@ -1,74 +0,0 @@ - - - - - - @ViewData["Title"] - Example1a - - - - - - - - - - - - - - - -
- @RenderBody() -
-
-

© 2019 - Example1a

-
-
- - - - - - - - - - - - - @RenderSection("Scripts", required: false) - - diff --git a/Diagnostics/Example1a/Views/Shared/_ValidationScriptsPartial.cshtml b/Diagnostics/Example1a/Views/Shared/_ValidationScriptsPartial.cshtml deleted file mode 100644 index 2a9241f5..00000000 --- a/Diagnostics/Example1a/Views/Shared/_ValidationScriptsPartial.cshtml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - diff --git a/Diagnostics/Example1a/Views/_ViewImports.cshtml b/Diagnostics/Example1a/Views/_ViewImports.cshtml deleted file mode 100644 index 105c2c19..00000000 --- a/Diagnostics/Example1a/Views/_ViewImports.cshtml +++ /dev/null @@ -1,3 +0,0 @@ -@using Example1a -@using Example1a.Models -@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers diff --git a/Diagnostics/Example1a/Views/_ViewStart.cshtml b/Diagnostics/Example1a/Views/_ViewStart.cshtml deleted file mode 100644 index a5f10045..00000000 --- a/Diagnostics/Example1a/Views/_ViewStart.cshtml +++ /dev/null @@ -1,3 +0,0 @@ -@{ - Layout = "_Layout"; -} diff --git a/Diagnostics/Example1a/appsettings.Development.json b/Diagnostics/Example1a/appsettings.Development.json deleted file mode 100644 index fa8ce71a..00000000 --- a/Diagnostics/Example1a/appsettings.Development.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "Logging": { - "IncludeScopes": false, - "LogLevel": { - "Default": "Debug", - "System": "Information", - "Microsoft": "Information" - } - } -} diff --git a/Diagnostics/Example1a/appsettings.json b/Diagnostics/Example1a/appsettings.json deleted file mode 100644 index a806ded0..00000000 --- a/Diagnostics/Example1a/appsettings.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "Logging": { - "IncludeScopes": false, - "LogLevel": { - "Default": "Warning" - } - }, - "ReportDb": { - "ConnectionString": "Not a real connection string" - } -} diff --git a/Diagnostics/Example1a/wwwroot/css/site.css b/Diagnostics/Example1a/wwwroot/css/site.css deleted file mode 100644 index e89c7811..00000000 --- a/Diagnostics/Example1a/wwwroot/css/site.css +++ /dev/null @@ -1,37 +0,0 @@ -/* Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification\ -for details on configuring this project to bundle and minify static web assets. */ -body { - padding-top: 50px; - padding-bottom: 20px; -} - -/* Wrapping element */ -/* Set some basic padding to keep content from hitting the edges */ -.body-content { - padding-left: 15px; - padding-right: 15px; -} - -/* Carousel */ -.carousel-caption p { - font-size: 20px; - line-height: 1.4; -} - -/* Make .svg files in the carousel display properly in older browsers */ -.carousel-inner .item img[src$=".svg"] { - width: 100%; -} - -/* QR code generator */ -#qrCode { - margin: 15px; -} - -/* Hide/rearrange for smaller screens */ -@media screen and (max-width: 767px) { - /* Hide captions */ - .carousel-caption { - display: none; - } -} diff --git a/Diagnostics/Example1a/wwwroot/css/site.min.css b/Diagnostics/Example1a/wwwroot/css/site.min.css deleted file mode 100644 index 5e93e30a..00000000 --- a/Diagnostics/Example1a/wwwroot/css/site.min.css +++ /dev/null @@ -1 +0,0 @@ -body{padding-top:50px;padding-bottom:20px}.body-content{padding-left:15px;padding-right:15px}.carousel-caption p{font-size:20px;line-height:1.4}.carousel-inner .item img[src$=".svg"]{width:100%}#qrCode{margin:15px}@media screen and (max-width:767px){.carousel-caption{display:none}} \ No newline at end of file diff --git a/Diagnostics/Example1a/wwwroot/favicon.ico b/Diagnostics/Example1a/wwwroot/favicon.ico deleted file mode 100644 index a3a79998..00000000 Binary files a/Diagnostics/Example1a/wwwroot/favicon.ico and /dev/null differ diff --git a/Diagnostics/Example1a/wwwroot/images/banner1.svg b/Diagnostics/Example1a/wwwroot/images/banner1.svg deleted file mode 100644 index 1ab32b60..00000000 --- a/Diagnostics/Example1a/wwwroot/images/banner1.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/Diagnostics/Example1a/wwwroot/images/banner2.svg b/Diagnostics/Example1a/wwwroot/images/banner2.svg deleted file mode 100644 index 9679c604..00000000 --- a/Diagnostics/Example1a/wwwroot/images/banner2.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/Diagnostics/Example1a/wwwroot/images/banner3.svg b/Diagnostics/Example1a/wwwroot/images/banner3.svg deleted file mode 100644 index 38b3d7cd..00000000 --- a/Diagnostics/Example1a/wwwroot/images/banner3.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/Diagnostics/Example1a/wwwroot/js/site.js b/Diagnostics/Example1a/wwwroot/js/site.js deleted file mode 100644 index ac49c186..00000000 --- a/Diagnostics/Example1a/wwwroot/js/site.js +++ /dev/null @@ -1,4 +0,0 @@ -// Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification -// for details on configuring this project to bundle and minify static web assets. - -// Write your JavaScript code. diff --git a/Diagnostics/Example1a/wwwroot/js/site.min.js b/Diagnostics/Example1a/wwwroot/js/site.min.js deleted file mode 100644 index e69de29b..00000000 diff --git a/Diagnostics/Example1a/wwwroot/lib/bootstrap/.bower.json b/Diagnostics/Example1a/wwwroot/lib/bootstrap/.bower.json deleted file mode 100644 index 1e99b629..00000000 --- a/Diagnostics/Example1a/wwwroot/lib/bootstrap/.bower.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "name": "bootstrap", - "description": "The most popular front-end framework for developing responsive, mobile first projects on the web.", - "keywords": [ - "css", - "js", - "less", - "mobile-first", - "responsive", - "front-end", - "framework", - "web" - ], - "homepage": "http://getbootstrap.com/", - "license": "MIT", - "moduleType": "globals", - "main": [ - "less/bootstrap.less", - "dist/js/bootstrap.js" - ], - "ignore": [ - "/.*", - "_config.yml", - "CNAME", - "composer.json", - "CONTRIBUTING.md", - "docs", - "js/tests", - "test-infra" - ], - "dependencies": { - "jquery": "1.9.1 - 3" - }, - "version": "3.3.7", - "_release": "3.3.7", - "_resolution": { - "type": "version", - "tag": "v3.3.7", - "commit": "0b9c4a4007c44201dce9a6cc1a38407005c26c86" - }, - "_source": "https://github.com/twbs/bootstrap.git", - "_target": "v3.3.7", - "_originalSource": "bootstrap", - "_direct": true -} \ No newline at end of file diff --git a/Diagnostics/Example1a/wwwroot/lib/bootstrap/LICENSE b/Diagnostics/Example1a/wwwroot/lib/bootstrap/LICENSE deleted file mode 100644 index 7a300022..00000000 --- a/Diagnostics/Example1a/wwwroot/lib/bootstrap/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2011-2016 Twitter, Inc. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. diff --git a/Diagnostics/Example1a/wwwroot/lib/jquery-validation-unobtrusive/.bower.json b/Diagnostics/Example1a/wwwroot/lib/jquery-validation-unobtrusive/.bower.json deleted file mode 100644 index 4f4ad975..00000000 --- a/Diagnostics/Example1a/wwwroot/lib/jquery-validation-unobtrusive/.bower.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "name": "jquery-validation-unobtrusive", - "homepage": "https://github.com/aspnet/jquery-validation-unobtrusive", - "version": "3.2.9", - "_release": "3.2.9", - "_resolution": { - "type": "version", - "tag": "v3.2.9", - "commit": "a91f5401898e125f10771c5f5f0909d8c4c82396" - }, - "_source": "https://github.com/aspnet/jquery-validation-unobtrusive.git", - "_target": "^3.2.9", - "_originalSource": "jquery-validation-unobtrusive", - "_direct": true -} \ No newline at end of file diff --git a/Diagnostics/Example1a/wwwroot/lib/jquery-validation-unobtrusive/LICENSE.txt b/Diagnostics/Example1a/wwwroot/lib/jquery-validation-unobtrusive/LICENSE.txt deleted file mode 100644 index 0bdc1962..00000000 --- a/Diagnostics/Example1a/wwwroot/lib/jquery-validation-unobtrusive/LICENSE.txt +++ /dev/null @@ -1,12 +0,0 @@ -Copyright (c) .NET Foundation. All rights reserved. - -Licensed under the Apache License, Version 2.0 (the "License"); you may not use -these files except in compliance with the License. You may obtain a copy of the -License at - -http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software distributed -under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR -CONDITIONS OF ANY KIND, either express or implied. See the License for the -specific language governing permissions and limitations under the License. diff --git a/Diagnostics/Example1a/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js b/Diagnostics/Example1a/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js deleted file mode 100644 index 6af3efad..00000000 --- a/Diagnostics/Example1a/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js +++ /dev/null @@ -1,431 +0,0 @@ -// Unobtrusive validation support library for jQuery and jQuery Validate -// Copyright (C) Microsoft Corporation. All rights reserved. -// @version v3.2.9 - -/*jslint white: true, browser: true, onevar: true, undef: true, nomen: true, eqeqeq: true, plusplus: true, bitwise: true, regexp: true, newcap: true, immed: true, strict: false */ -/*global document: false, jQuery: false */ - -(function (factory) { - if (typeof define === 'function' && define.amd) { - // AMD. Register as an anonymous module. - define("jquery.validate.unobtrusive", ['jquery.validation'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports - module.exports = factory(require('jquery-validation')); - } else { - // Browser global - jQuery.validator.unobtrusive = factory(jQuery); - } -}(function ($) { - var $jQval = $.validator, - adapters, - data_validation = "unobtrusiveValidation"; - - function setValidationValues(options, ruleName, value) { - options.rules[ruleName] = value; - if (options.message) { - options.messages[ruleName] = options.message; - } - } - - function splitAndTrim(value) { - return value.replace(/^\s+|\s+$/g, "").split(/\s*,\s*/g); - } - - function escapeAttributeValue(value) { - // As mentioned on http://api.jquery.com/category/selectors/ - return value.replace(/([!"#$%&'()*+,./:;<=>?@\[\\\]^`{|}~])/g, "\\$1"); - } - - function getModelPrefix(fieldName) { - return fieldName.substr(0, fieldName.lastIndexOf(".") + 1); - } - - function appendModelPrefix(value, prefix) { - if (value.indexOf("*.") === 0) { - value = value.replace("*.", prefix); - } - return value; - } - - function onError(error, inputElement) { // 'this' is the form element - var container = $(this).find("[data-valmsg-for='" + escapeAttributeValue(inputElement[0].name) + "']"), - replaceAttrValue = container.attr("data-valmsg-replace"), - replace = replaceAttrValue ? $.parseJSON(replaceAttrValue) !== false : null; - - container.removeClass("field-validation-valid").addClass("field-validation-error"); - error.data("unobtrusiveContainer", container); - - if (replace) { - container.empty(); - error.removeClass("input-validation-error").appendTo(container); - } - else { - error.hide(); - } - } - - function onErrors(event, validator) { // 'this' is the form element - var container = $(this).find("[data-valmsg-summary=true]"), - list = container.find("ul"); - - if (list && list.length && validator.errorList.length) { - list.empty(); - container.addClass("validation-summary-errors").removeClass("validation-summary-valid"); - - $.each(validator.errorList, function () { - $("
  • ").html(this.message).appendTo(list); - }); - } - } - - function onSuccess(error) { // 'this' is the form element - var container = error.data("unobtrusiveContainer"); - - if (container) { - var replaceAttrValue = container.attr("data-valmsg-replace"), - replace = replaceAttrValue ? $.parseJSON(replaceAttrValue) : null; - - container.addClass("field-validation-valid").removeClass("field-validation-error"); - error.removeData("unobtrusiveContainer"); - - if (replace) { - container.empty(); - } - } - } - - function onReset(event) { // 'this' is the form element - var $form = $(this), - key = '__jquery_unobtrusive_validation_form_reset'; - if ($form.data(key)) { - return; - } - // Set a flag that indicates we're currently resetting the form. - $form.data(key, true); - try { - $form.data("validator").resetForm(); - } finally { - $form.removeData(key); - } - - $form.find(".validation-summary-errors") - .addClass("validation-summary-valid") - .removeClass("validation-summary-errors"); - $form.find(".field-validation-error") - .addClass("field-validation-valid") - .removeClass("field-validation-error") - .removeData("unobtrusiveContainer") - .find(">*") // If we were using valmsg-replace, get the underlying error - .removeData("unobtrusiveContainer"); - } - - function validationInfo(form) { - var $form = $(form), - result = $form.data(data_validation), - onResetProxy = $.proxy(onReset, form), - defaultOptions = $jQval.unobtrusive.options || {}, - execInContext = function (name, args) { - var func = defaultOptions[name]; - func && $.isFunction(func) && func.apply(form, args); - }; - - if (!result) { - result = { - options: { // options structure passed to jQuery Validate's validate() method - errorClass: defaultOptions.errorClass || "input-validation-error", - errorElement: defaultOptions.errorElement || "span", - errorPlacement: function () { - onError.apply(form, arguments); - execInContext("errorPlacement", arguments); - }, - invalidHandler: function () { - onErrors.apply(form, arguments); - execInContext("invalidHandler", arguments); - }, - messages: {}, - rules: {}, - success: function () { - onSuccess.apply(form, arguments); - execInContext("success", arguments); - } - }, - attachValidation: function () { - $form - .off("reset." + data_validation, onResetProxy) - .on("reset." + data_validation, onResetProxy) - .validate(this.options); - }, - validate: function () { // a validation function that is called by unobtrusive Ajax - $form.validate(); - return $form.valid(); - } - }; - $form.data(data_validation, result); - } - - return result; - } - - $jQval.unobtrusive = { - adapters: [], - - parseElement: function (element, skipAttach) { - /// - /// Parses a single HTML element for unobtrusive validation attributes. - /// - /// The HTML element to be parsed. - /// [Optional] true to skip attaching the - /// validation to the form. If parsing just this single element, you should specify true. - /// If parsing several elements, you should specify false, and manually attach the validation - /// to the form when you are finished. The default is false. - var $element = $(element), - form = $element.parents("form")[0], - valInfo, rules, messages; - - if (!form) { // Cannot do client-side validation without a form - return; - } - - valInfo = validationInfo(form); - valInfo.options.rules[element.name] = rules = {}; - valInfo.options.messages[element.name] = messages = {}; - - $.each(this.adapters, function () { - var prefix = "data-val-" + this.name, - message = $element.attr(prefix), - paramValues = {}; - - if (message !== undefined) { // Compare against undefined, because an empty message is legal (and falsy) - prefix += "-"; - - $.each(this.params, function () { - paramValues[this] = $element.attr(prefix + this); - }); - - this.adapt({ - element: element, - form: form, - message: message, - params: paramValues, - rules: rules, - messages: messages - }); - } - }); - - $.extend(rules, { "__dummy__": true }); - - if (!skipAttach) { - valInfo.attachValidation(); - } - }, - - parse: function (selector) { - /// - /// Parses all the HTML elements in the specified selector. It looks for input elements decorated - /// with the [data-val=true] attribute value and enables validation according to the data-val-* - /// attribute values. - /// - /// Any valid jQuery selector. - - // $forms includes all forms in selector's DOM hierarchy (parent, children and self) that have at least one - // element with data-val=true - var $selector = $(selector), - $forms = $selector.parents() - .addBack() - .filter("form") - .add($selector.find("form")) - .has("[data-val=true]"); - - $selector.find("[data-val=true]").each(function () { - $jQval.unobtrusive.parseElement(this, true); - }); - - $forms.each(function () { - var info = validationInfo(this); - if (info) { - info.attachValidation(); - } - }); - } - }; - - adapters = $jQval.unobtrusive.adapters; - - adapters.add = function (adapterName, params, fn) { - /// Adds a new adapter to convert unobtrusive HTML into a jQuery Validate validation. - /// The name of the adapter to be added. This matches the name used - /// in the data-val-nnnn HTML attribute (where nnnn is the adapter name). - /// [Optional] An array of parameter names (strings) that will - /// be extracted from the data-val-nnnn-mmmm HTML attributes (where nnnn is the adapter name, and - /// mmmm is the parameter name). - /// The function to call, which adapts the values from the HTML - /// attributes into jQuery Validate rules and/or messages. - /// - if (!fn) { // Called with no params, just a function - fn = params; - params = []; - } - this.push({ name: adapterName, params: params, adapt: fn }); - return this; - }; - - adapters.addBool = function (adapterName, ruleName) { - /// Adds a new adapter to convert unobtrusive HTML into a jQuery Validate validation, where - /// the jQuery Validate validation rule has no parameter values. - /// The name of the adapter to be added. This matches the name used - /// in the data-val-nnnn HTML attribute (where nnnn is the adapter name). - /// [Optional] The name of the jQuery Validate rule. If not provided, the value - /// of adapterName will be used instead. - /// - return this.add(adapterName, function (options) { - setValidationValues(options, ruleName || adapterName, true); - }); - }; - - adapters.addMinMax = function (adapterName, minRuleName, maxRuleName, minMaxRuleName, minAttribute, maxAttribute) { - /// Adds a new adapter to convert unobtrusive HTML into a jQuery Validate validation, where - /// the jQuery Validate validation has three potential rules (one for min-only, one for max-only, and - /// one for min-and-max). The HTML parameters are expected to be named -min and -max. - /// The name of the adapter to be added. This matches the name used - /// in the data-val-nnnn HTML attribute (where nnnn is the adapter name). - /// The name of the jQuery Validate rule to be used when you only - /// have a minimum value. - /// The name of the jQuery Validate rule to be used when you only - /// have a maximum value. - /// The name of the jQuery Validate rule to be used when you - /// have both a minimum and maximum value. - /// [Optional] The name of the HTML attribute that - /// contains the minimum value. The default is "min". - /// [Optional] The name of the HTML attribute that - /// contains the maximum value. The default is "max". - /// - return this.add(adapterName, [minAttribute || "min", maxAttribute || "max"], function (options) { - var min = options.params.min, - max = options.params.max; - - if (min && max) { - setValidationValues(options, minMaxRuleName, [min, max]); - } - else if (min) { - setValidationValues(options, minRuleName, min); - } - else if (max) { - setValidationValues(options, maxRuleName, max); - } - }); - }; - - adapters.addSingleVal = function (adapterName, attribute, ruleName) { - /// Adds a new adapter to convert unobtrusive HTML into a jQuery Validate validation, where - /// the jQuery Validate validation rule has a single value. - /// The name of the adapter to be added. This matches the name used - /// in the data-val-nnnn HTML attribute(where nnnn is the adapter name). - /// [Optional] The name of the HTML attribute that contains the value. - /// The default is "val". - /// [Optional] The name of the jQuery Validate rule. If not provided, the value - /// of adapterName will be used instead. - /// - return this.add(adapterName, [attribute || "val"], function (options) { - setValidationValues(options, ruleName || adapterName, options.params[attribute]); - }); - }; - - $jQval.addMethod("__dummy__", function (value, element, params) { - return true; - }); - - $jQval.addMethod("regex", function (value, element, params) { - var match; - if (this.optional(element)) { - return true; - } - - match = new RegExp(params).exec(value); - return (match && (match.index === 0) && (match[0].length === value.length)); - }); - - $jQval.addMethod("nonalphamin", function (value, element, nonalphamin) { - var match; - if (nonalphamin) { - match = value.match(/\W/g); - match = match && match.length >= nonalphamin; - } - return match; - }); - - if ($jQval.methods.extension) { - adapters.addSingleVal("accept", "mimtype"); - adapters.addSingleVal("extension", "extension"); - } else { - // for backward compatibility, when the 'extension' validation method does not exist, such as with versions - // of JQuery Validation plugin prior to 1.10, we should use the 'accept' method for - // validating the extension, and ignore mime-type validations as they are not supported. - adapters.addSingleVal("extension", "extension", "accept"); - } - - adapters.addSingleVal("regex", "pattern"); - adapters.addBool("creditcard").addBool("date").addBool("digits").addBool("email").addBool("number").addBool("url"); - adapters.addMinMax("length", "minlength", "maxlength", "rangelength").addMinMax("range", "min", "max", "range"); - adapters.addMinMax("minlength", "minlength").addMinMax("maxlength", "minlength", "maxlength"); - adapters.add("equalto", ["other"], function (options) { - var prefix = getModelPrefix(options.element.name), - other = options.params.other, - fullOtherName = appendModelPrefix(other, prefix), - element = $(options.form).find(":input").filter("[name='" + escapeAttributeValue(fullOtherName) + "']")[0]; - - setValidationValues(options, "equalTo", element); - }); - adapters.add("required", function (options) { - // jQuery Validate equates "required" with "mandatory" for checkbox elements - if (options.element.tagName.toUpperCase() !== "INPUT" || options.element.type.toUpperCase() !== "CHECKBOX") { - setValidationValues(options, "required", true); - } - }); - adapters.add("remote", ["url", "type", "additionalfields"], function (options) { - var value = { - url: options.params.url, - type: options.params.type || "GET", - data: {} - }, - prefix = getModelPrefix(options.element.name); - - $.each(splitAndTrim(options.params.additionalfields || options.element.name), function (i, fieldName) { - var paramName = appendModelPrefix(fieldName, prefix); - value.data[paramName] = function () { - var field = $(options.form).find(":input").filter("[name='" + escapeAttributeValue(paramName) + "']"); - // For checkboxes and radio buttons, only pick up values from checked fields. - if (field.is(":checkbox")) { - return field.filter(":checked").val() || field.filter(":hidden").val() || ''; - } - else if (field.is(":radio")) { - return field.filter(":checked").val() || ''; - } - return field.val(); - }; - }); - - setValidationValues(options, "remote", value); - }); - adapters.add("password", ["min", "nonalphamin", "regex"], function (options) { - if (options.params.min) { - setValidationValues(options, "minlength", options.params.min); - } - if (options.params.nonalphamin) { - setValidationValues(options, "nonalphamin", options.params.nonalphamin); - } - if (options.params.regex) { - setValidationValues(options, "regex", options.params.regex); - } - }); - adapters.add("fileextensions", ["extensions"], function (options) { - setValidationValues(options, "extension", options.params.extensions); - }); - - $(function () { - $jQval.unobtrusive.parse(document); - }); - - return $jQval.unobtrusive; -})); \ No newline at end of file diff --git a/Diagnostics/Example1a/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js b/Diagnostics/Example1a/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js deleted file mode 100644 index 5f6e039b..00000000 --- a/Diagnostics/Example1a/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js +++ /dev/null @@ -1,4 +0,0 @@ -// Unobtrusive validation support library for jQuery and jQuery Validate -// Copyright (C) Microsoft Corporation. All rights reserved. -// @version v3.2.9 -!function(a){"function"==typeof define&&define.amd?define("jquery.validate.unobtrusive",["jquery.validation"],a):"object"==typeof module&&module.exports?module.exports=a(require("jquery-validation")):jQuery.validator.unobtrusive=a(jQuery)}(function(a){function e(a,e,n){a.rules[e]=n,a.message&&(a.messages[e]=a.message)}function n(a){return a.replace(/^\s+|\s+$/g,"").split(/\s*,\s*/g)}function t(a){return a.replace(/([!"#$%&'()*+,.\/:;<=>?@\[\\\]^`{|}~])/g,"\\$1")}function r(a){return a.substr(0,a.lastIndexOf(".")+1)}function i(a,e){return 0===a.indexOf("*.")&&(a=a.replace("*.",e)),a}function o(e,n){var r=a(this).find("[data-valmsg-for='"+t(n[0].name)+"']"),i=r.attr("data-valmsg-replace"),o=i?a.parseJSON(i)!==!1:null;r.removeClass("field-validation-valid").addClass("field-validation-error"),e.data("unobtrusiveContainer",r),o?(r.empty(),e.removeClass("input-validation-error").appendTo(r)):e.hide()}function d(e,n){var t=a(this).find("[data-valmsg-summary=true]"),r=t.find("ul");r&&r.length&&n.errorList.length&&(r.empty(),t.addClass("validation-summary-errors").removeClass("validation-summary-valid"),a.each(n.errorList,function(){a("
  • ").html(this.message).appendTo(r)}))}function s(e){var n=e.data("unobtrusiveContainer");if(n){var t=n.attr("data-valmsg-replace"),r=t?a.parseJSON(t):null;n.addClass("field-validation-valid").removeClass("field-validation-error"),e.removeData("unobtrusiveContainer"),r&&n.empty()}}function l(e){var n=a(this),t="__jquery_unobtrusive_validation_form_reset";if(!n.data(t)){n.data(t,!0);try{n.data("validator").resetForm()}finally{n.removeData(t)}n.find(".validation-summary-errors").addClass("validation-summary-valid").removeClass("validation-summary-errors"),n.find(".field-validation-error").addClass("field-validation-valid").removeClass("field-validation-error").removeData("unobtrusiveContainer").find(">*").removeData("unobtrusiveContainer")}}function u(e){var n=a(e),t=n.data(v),r=a.proxy(l,e),i=f.unobtrusive.options||{},u=function(n,t){var r=i[n];r&&a.isFunction(r)&&r.apply(e,t)};return t||(t={options:{errorClass:i.errorClass||"input-validation-error",errorElement:i.errorElement||"span",errorPlacement:function(){o.apply(e,arguments),u("errorPlacement",arguments)},invalidHandler:function(){d.apply(e,arguments),u("invalidHandler",arguments)},messages:{},rules:{},success:function(){s.apply(e,arguments),u("success",arguments)}},attachValidation:function(){n.off("reset."+v,r).on("reset."+v,r).validate(this.options)},validate:function(){return n.validate(),n.valid()}},n.data(v,t)),t}var m,f=a.validator,v="unobtrusiveValidation";return f.unobtrusive={adapters:[],parseElement:function(e,n){var t,r,i,o=a(e),d=o.parents("form")[0];d&&(t=u(d),t.options.rules[e.name]=r={},t.options.messages[e.name]=i={},a.each(this.adapters,function(){var n="data-val-"+this.name,t=o.attr(n),s={};void 0!==t&&(n+="-",a.each(this.params,function(){s[this]=o.attr(n+this)}),this.adapt({element:e,form:d,message:t,params:s,rules:r,messages:i}))}),a.extend(r,{__dummy__:!0}),n||t.attachValidation())},parse:function(e){var n=a(e),t=n.parents().addBack().filter("form").add(n.find("form")).has("[data-val=true]");n.find("[data-val=true]").each(function(){f.unobtrusive.parseElement(this,!0)}),t.each(function(){var a=u(this);a&&a.attachValidation()})}},m=f.unobtrusive.adapters,m.add=function(a,e,n){return n||(n=e,e=[]),this.push({name:a,params:e,adapt:n}),this},m.addBool=function(a,n){return this.add(a,function(t){e(t,n||a,!0)})},m.addMinMax=function(a,n,t,r,i,o){return this.add(a,[i||"min",o||"max"],function(a){var i=a.params.min,o=a.params.max;i&&o?e(a,r,[i,o]):i?e(a,n,i):o&&e(a,t,o)})},m.addSingleVal=function(a,n,t){return this.add(a,[n||"val"],function(r){e(r,t||a,r.params[n])})},f.addMethod("__dummy__",function(a,e,n){return!0}),f.addMethod("regex",function(a,e,n){var t;return!!this.optional(e)||(t=new RegExp(n).exec(a),t&&0===t.index&&t[0].length===a.length)}),f.addMethod("nonalphamin",function(a,e,n){var t;return n&&(t=a.match(/\W/g),t=t&&t.length>=n),t}),f.methods.extension?(m.addSingleVal("accept","mimtype"),m.addSingleVal("extension","extension")):m.addSingleVal("extension","extension","accept"),m.addSingleVal("regex","pattern"),m.addBool("creditcard").addBool("date").addBool("digits").addBool("email").addBool("number").addBool("url"),m.addMinMax("length","minlength","maxlength","rangelength").addMinMax("range","min","max","range"),m.addMinMax("minlength","minlength").addMinMax("maxlength","minlength","maxlength"),m.add("equalto",["other"],function(n){var o=r(n.element.name),d=n.params.other,s=i(d,o),l=a(n.form).find(":input").filter("[name='"+t(s)+"']")[0];e(n,"equalTo",l)}),m.add("required",function(a){"INPUT"===a.element.tagName.toUpperCase()&&"CHECKBOX"===a.element.type.toUpperCase()||e(a,"required",!0)}),m.add("remote",["url","type","additionalfields"],function(o){var d={url:o.params.url,type:o.params.type||"GET",data:{}},s=r(o.element.name);a.each(n(o.params.additionalfields||o.element.name),function(e,n){var r=i(n,s);d.data[r]=function(){var e=a(o.form).find(":input").filter("[name='"+t(r)+"']");return e.is(":checkbox")?e.filter(":checked").val()||e.filter(":hidden").val()||"":e.is(":radio")?e.filter(":checked").val()||"":e.val()}}),e(o,"remote",d)}),m.add("password",["min","nonalphamin","regex"],function(a){a.params.min&&e(a,"minlength",a.params.min),a.params.nonalphamin&&e(a,"nonalphamin",a.params.nonalphamin),a.params.regex&&e(a,"regex",a.params.regex)}),m.add("fileextensions",["extensions"],function(a){e(a,"extension",a.params.extensions)}),a(function(){f.unobtrusive.parse(document)}),f.unobtrusive}); \ No newline at end of file diff --git a/Diagnostics/Example1a/wwwroot/lib/jquery-validation/.bower.json b/Diagnostics/Example1a/wwwroot/lib/jquery-validation/.bower.json deleted file mode 100644 index 79824166..00000000 --- a/Diagnostics/Example1a/wwwroot/lib/jquery-validation/.bower.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "name": "jquery-validation", - "homepage": "https://jqueryvalidation.org/", - "repository": { - "type": "git", - "url": "git://github.com/jquery-validation/jquery-validation.git" - }, - "authors": [ - "Jörn Zaefferer " - ], - "description": "Form validation made easy", - "main": "dist/jquery.validate.js", - "keywords": [ - "forms", - "validation", - "validate" - ], - "license": "MIT", - "ignore": [ - "**/.*", - "node_modules", - "bower_components", - "test", - "demo", - "lib" - ], - "dependencies": { - "jquery": ">= 1.7.2" - }, - "version": "1.17.0", - "_release": "1.17.0", - "_resolution": { - "type": "version", - "tag": "1.17.0", - "commit": "fc9b12d3bfaa2d0c04605855b896edb2934c0772" - }, - "_source": "https://github.com/jzaefferer/jquery-validation.git", - "_target": "^1.17.0", - "_originalSource": "jquery-validation", - "_direct": true -} \ No newline at end of file diff --git a/Diagnostics/Example1a/wwwroot/lib/jquery-validation/LICENSE.md b/Diagnostics/Example1a/wwwroot/lib/jquery-validation/LICENSE.md deleted file mode 100644 index dc377cc0..00000000 --- a/Diagnostics/Example1a/wwwroot/lib/jquery-validation/LICENSE.md +++ /dev/null @@ -1,22 +0,0 @@ -The MIT License (MIT) -===================== - -Copyright Jörn Zaefferer - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. diff --git a/Diagnostics/Example1a/wwwroot/lib/jquery/.bower.json b/Diagnostics/Example1a/wwwroot/lib/jquery/.bower.json deleted file mode 100644 index 959ddb71..00000000 --- a/Diagnostics/Example1a/wwwroot/lib/jquery/.bower.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "jquery", - "main": "dist/jquery.js", - "license": "MIT", - "ignore": [ - "package.json" - ], - "keywords": [ - "jquery", - "javascript", - "browser", - "library" - ], - "homepage": "https://github.com/jquery/jquery-dist", - "version": "3.3.1", - "_release": "3.3.1", - "_resolution": { - "type": "version", - "tag": "3.3.1", - "commit": "9e8ec3d10fad04748176144f108d7355662ae75e" - }, - "_source": "https://github.com/jquery/jquery-dist.git", - "_target": "^3.3.1", - "_originalSource": "jquery", - "_direct": true -} \ No newline at end of file diff --git a/Diagnostics/Example1a/wwwroot/lib/jquery/LICENSE.txt b/Diagnostics/Example1a/wwwroot/lib/jquery/LICENSE.txt deleted file mode 100644 index e4e5e00e..00000000 --- a/Diagnostics/Example1a/wwwroot/lib/jquery/LICENSE.txt +++ /dev/null @@ -1,36 +0,0 @@ -Copyright JS Foundation and other contributors, https://js.foundation/ - -This software consists of voluntary contributions made by many -individuals. For exact contribution history, see the revision history -available at https://github.com/jquery/jquery - -The following license applies to all parts of this software except as -documented below: - -==== - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==== - -All files located in the node_modules and external directories are -externally maintained libraries used by this software which have their -own licenses; we recommend you read them, as their terms may differ from -the terms above. diff --git a/Diagnostics/Example1b/Example1b.csproj b/Diagnostics/Example1b/Example1b.csproj deleted file mode 100644 index 897fd7fb..00000000 --- a/Diagnostics/Example1b/Example1b.csproj +++ /dev/null @@ -1,12 +0,0 @@ - - - - Exe - netcoreapp2.0 - - - - - - - diff --git a/Diagnostics/Example1b/Program.cs b/Diagnostics/Example1b/Program.cs deleted file mode 100644 index 759f0b06..00000000 --- a/Diagnostics/Example1b/Program.cs +++ /dev/null @@ -1,59 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Data; -using System.Data.SqlClient; - -namespace Example1b -{ - class Program - { - static void Main() - { - var report = GetReport(new DateTime(2017, 5, 6)); - Console.WriteLine(report.Date); - foreach (var line in report.Lines) - { - Console.WriteLine($"{line.ProductName}: {line.Price} (x{line.Quantity})"); - } - } - - public static Report GetReport(DateTime date) - { - var report = new Report { Date = date }; - using (var conn = new SqlConnection("Hard-coded connection string here")) - { - conn.Open(); - using (var cmd = new SqlCommand("SELECT * FROM REPORTLINES WHERE REPORTDATE=@date", conn)) - { - cmd.Parameters.Add("date", SqlDbType.Date).Value = date; - using (var reader = cmd.ExecuteReader()) - { - while (reader.Read()) - { - report.Lines.Add(new ReportLine - { - Price = (decimal)reader["price"], - ProductName = (string)reader["productname"], - Quantity = (int)reader["quantity"] - }); - } - } - } - } - return report; - } - } - - public class Report - { - public DateTime Date { get; set; } - public List Lines { get; } = new List(); - } - - public class ReportLine - { - public string ProductName { get; set; } - public decimal Price { get; set; } - public int Quantity { get; set; } - } -} diff --git a/Diagnostics/Example1c/Example1c.csproj b/Diagnostics/Example1c/Example1c.csproj deleted file mode 100644 index ce1697ae..00000000 --- a/Diagnostics/Example1c/Example1c.csproj +++ /dev/null @@ -1,8 +0,0 @@ - - - - Exe - netcoreapp2.0 - - - diff --git a/Diagnostics/Example1c/Program.cs b/Diagnostics/Example1c/Program.cs deleted file mode 100644 index 7fe0ef12..00000000 --- a/Diagnostics/Example1c/Program.cs +++ /dev/null @@ -1,49 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Xml.Linq; - -namespace Example1c -{ - class Program - { - static void Main() - { - var dateTime = new DateTime(2017, 5, 6); - var report = new Report - { - Date = dateTime, - Lines = { - new ReportLine { ProductName = "ProductA", Price = 10.95m, Quantity = 5 }, - new ReportLine { ProductName = "ProductB", Price = 100m, Quantity = 3 }, - new ReportLine { ProductName = "ProductC", Price = 1.23m, Quantity = 67 }, - } - }; - - // Code from ReportsController - var document = new XDocument(new XElement("Report", - new XAttribute("date", report.Date), - report.Lines.Select(line => new XElement("Line", - new XAttribute("productName", line.ProductName), - new XAttribute("price", line.Price), - new XAttribute("quantity", line.Quantity)) - )) - ); - - Console.WriteLine(document); - } - } - - public class Report - { - public DateTime Date { get; set; } - public List Lines { get; } = new List(); - } - - public class ReportLine - { - public string ProductName { get; set; } - public decimal Price { get; set; } - public int Quantity { get; set; } - } -} diff --git a/Diagnostics/Example1d/Example1d.csproj b/Diagnostics/Example1d/Example1d.csproj deleted file mode 100644 index ce1697ae..00000000 --- a/Diagnostics/Example1d/Example1d.csproj +++ /dev/null @@ -1,8 +0,0 @@ - - - - Exe - netcoreapp2.0 - - - diff --git a/Diagnostics/Example1d/Program.cs b/Diagnostics/Example1d/Program.cs deleted file mode 100644 index 0390b1c9..00000000 --- a/Diagnostics/Example1d/Program.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System; -using System.Globalization; - -namespace Example1d -{ - class Program - { - static void Main() - { - string date = "05/06/2017"; - DateTime dateTime = DateTime.Parse(date); - Console.WriteLine(dateTime); - Console.WriteLine(dateTime.ToString("yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture)); - } - } -} diff --git a/Diagnostics/Example2a/App.config b/Diagnostics/Example2a/App.config deleted file mode 100644 index 53701038..00000000 --- a/Diagnostics/Example2a/App.config +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Diagnostics/Example2a/Example2a.csproj b/Diagnostics/Example2a/Example2a.csproj deleted file mode 100644 index 6fb0a90e..00000000 --- a/Diagnostics/Example2a/Example2a.csproj +++ /dev/null @@ -1,130 +0,0 @@ - - - - - Debug - AnyCPU - {7600B497-A29E-4C40-AA6B-31DB42640CC6} - WinExe - Example2a - Example2a - v4.6.1 - 512 - true - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - ..\packages\Google.Api.Gax.2.0.0\lib\net45\Google.Api.Gax.dll - - - ..\packages\Google.Api.Gax.Rest.2.0.0\lib\net45\Google.Api.Gax.Rest.dll - - - ..\packages\Google.Apis.1.27.1\lib\net45\Google.Apis.dll - - - ..\packages\Google.Apis.Auth.1.27.1\lib\net45\Google.Apis.Auth.dll - - - ..\packages\Google.Apis.Auth.1.27.1\lib\net45\Google.Apis.Auth.PlatformServices.dll - - - ..\packages\Google.Apis.Core.1.27.1\lib\net45\Google.Apis.Core.dll - - - ..\packages\Google.Apis.1.27.1\lib\net45\Google.Apis.PlatformServices.dll - - - ..\packages\Google.Apis.Storage.v1.1.27.1.881\lib\net45\Google.Apis.Storage.v1.dll - - - ..\packages\Google.Cloud.Storage.V1.2.0.0\lib\net45\Google.Cloud.Storage.V1.dll - - - ..\packages\Newtonsoft.Json.10.0.2\lib\net45\Newtonsoft.Json.dll - - - - - ..\packages\System.Interactive.Async.3.1.1\lib\net46\System.Interactive.Async.dll - - - ..\packages\System.Net.Http.4.3.1\lib\net46\System.Net.Http.dll - - - ..\packages\System.Security.Cryptography.Algorithms.4.3.0\lib\net461\System.Security.Cryptography.Algorithms.dll - - - ..\packages\System.Security.Cryptography.Encoding.4.3.0\lib\net46\System.Security.Cryptography.Encoding.dll - - - ..\packages\System.Security.Cryptography.Primitives.4.3.0\lib\net46\System.Security.Cryptography.Primitives.dll - - - ..\packages\System.Security.Cryptography.X509Certificates.4.3.0\lib\net461\System.Security.Cryptography.X509Certificates.dll - - - - - - - - - - - - - Form - - - Form1.cs - - - - - Form1.cs - - - ResXFileCodeGenerator - Resources.Designer.cs - Designer - - - True - Resources.resx - - - - SettingsSingleFileGenerator - Settings.Designer.cs - - - True - Settings.settings - True - - - - - - - \ No newline at end of file diff --git a/Diagnostics/Example2a/Form1.Designer.cs b/Diagnostics/Example2a/Form1.Designer.cs deleted file mode 100644 index 652d09f6..00000000 --- a/Diagnostics/Example2a/Form1.Designer.cs +++ /dev/null @@ -1,73 +0,0 @@ -namespace Example2a -{ - partial class Form1 - { - /// - /// Required designer variable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Clean up any resources being used. - /// - /// true if managed resources should be disposed; otherwise, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - this.button1 = new System.Windows.Forms.Button(); - this.bucketsGroupBox = new System.Windows.Forms.GroupBox(); - this.SuspendLayout(); - // - // button1 - // - this.button1.Location = new System.Drawing.Point(28, 23); - this.button1.Name = "button1"; - this.button1.Size = new System.Drawing.Size(143, 23); - this.button1.TabIndex = 0; - this.button1.Text = "Fetch buckets"; - this.button1.UseVisualStyleBackColor = true; - this.button1.Click += new System.EventHandler(this.FetchBuckets); - // - // bucketsGroupBox - // - this.bucketsGroupBox.Location = new System.Drawing.Point(9, 72); - this.bucketsGroupBox.Name = "bucketsGroupBox"; - this.bucketsGroupBox.Size = new System.Drawing.Size(267, 165); - this.bucketsGroupBox.TabIndex = 1; - this.bucketsGroupBox.TabStop = false; - this.bucketsGroupBox.Text = "Buckets"; - // - // Form1 - // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(284, 261); - this.Controls.Add(this.bucketsGroupBox); - this.Controls.Add(this.button1); - this.Name = "Form1"; - this.Text = "Form1"; - this.ResumeLayout(false); - - } - - #endregion - - private System.Windows.Forms.Button button1; - private System.Windows.Forms.GroupBox bucketsGroupBox; - } -} - diff --git a/Diagnostics/Example2a/Form1.cs b/Diagnostics/Example2a/Form1.cs deleted file mode 100644 index 17f06cbb..00000000 --- a/Diagnostics/Example2a/Form1.cs +++ /dev/null @@ -1,38 +0,0 @@ -using Google.Cloud.Storage.V1; -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; - -namespace Example2a -{ - public partial class Form1 : Form - { - public Form1() - { - InitializeComponent(); - } - - private async void FetchBuckets(object sender, EventArgs e) - { - var client = await StorageClient.CreateAsync(); - - var buckets = client.ListBucketsAsync("jonskeet-uberproject"); - using (var iterator = buckets.GetEnumerator()) - { - while (await iterator.MoveNext()) - { - var bucket = iterator.Current; - var button = new Button { Text = bucket.Name }; - button.Click += delegate { MessageBox.Show($"I would load bucket {bucket.Name}"); }; - bucketsGroupBox.Controls.Add(button); - } - } - } - } -} diff --git a/Diagnostics/Example2a/Form1.resx b/Diagnostics/Example2a/Form1.resx deleted file mode 100644 index 1af7de15..00000000 --- a/Diagnostics/Example2a/Form1.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/Diagnostics/Example2a/Program.cs b/Diagnostics/Example2a/Program.cs deleted file mode 100644 index 7526a9b7..00000000 --- a/Diagnostics/Example2a/Program.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using System.Windows.Forms; - -namespace Example2a -{ - static class Program - { - /// - /// The main entry point for the application. - /// - [STAThread] - static void Main() - { - Application.EnableVisualStyles(); - Application.SetCompatibleTextRenderingDefault(false); - Application.Run(new Form1()); - } - } -} diff --git a/Diagnostics/Example2a/Properties/AssemblyInfo.cs b/Diagnostics/Example2a/Properties/AssemblyInfo.cs deleted file mode 100644 index 5348f45d..00000000 --- a/Diagnostics/Example2a/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("Example2a")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("Example2a")] -[assembly: AssemblyCopyright("Copyright © 2017")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("7600b497-a29e-4c40-aa6b-31db42640cc6")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Diagnostics/Example2a/Properties/Resources.Designer.cs b/Diagnostics/Example2a/Properties/Resources.Designer.cs deleted file mode 100644 index 974695be..00000000 --- a/Diagnostics/Example2a/Properties/Resources.Designer.cs +++ /dev/null @@ -1,71 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace Example2a.Properties -{ - - - /// - /// A strongly-typed resource class, for looking up localized strings, etc. - /// - // This class was auto-generated by the StronglyTypedResourceBuilder - // class via a tool like ResGen or Visual Studio. - // To add or remove a member, edit your .ResX file then rerun ResGen - // with the /str option, or rebuild your VS project. - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - internal class Resources - { - - private static global::System.Resources.ResourceManager resourceMan; - - private static global::System.Globalization.CultureInfo resourceCulture; - - [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] - internal Resources() - { - } - - /// - /// Returns the cached ResourceManager instance used by this class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Resources.ResourceManager ResourceManager - { - get - { - if ((resourceMan == null)) - { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Example2a.Properties.Resources", typeof(Resources).Assembly); - resourceMan = temp; - } - return resourceMan; - } - } - - /// - /// Overrides the current thread's CurrentUICulture property for all - /// resource lookups using this strongly typed resource class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Globalization.CultureInfo Culture - { - get - { - return resourceCulture; - } - set - { - resourceCulture = value; - } - } - } -} diff --git a/Diagnostics/Example2a/Properties/Resources.resx b/Diagnostics/Example2a/Properties/Resources.resx deleted file mode 100644 index af7dbebb..00000000 --- a/Diagnostics/Example2a/Properties/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/Diagnostics/Example2a/Properties/Settings.Designer.cs b/Diagnostics/Example2a/Properties/Settings.Designer.cs deleted file mode 100644 index 3f151688..00000000 --- a/Diagnostics/Example2a/Properties/Settings.Designer.cs +++ /dev/null @@ -1,30 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace Example2a.Properties -{ - - - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] - internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase - { - - private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); - - public static Settings Default - { - get - { - return defaultInstance; - } - } - } -} diff --git a/Diagnostics/Example2a/Properties/Settings.settings b/Diagnostics/Example2a/Properties/Settings.settings deleted file mode 100644 index 39645652..00000000 --- a/Diagnostics/Example2a/Properties/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/Diagnostics/Example2a/packages.config b/Diagnostics/Example2a/packages.config deleted file mode 100644 index da69ac4a..00000000 --- a/Diagnostics/Example2a/packages.config +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Diagnostics/Example2b/Example2b.csproj b/Diagnostics/Example2b/Example2b.csproj deleted file mode 100644 index 69dd3b67..00000000 --- a/Diagnostics/Example2b/Example2b.csproj +++ /dev/null @@ -1,12 +0,0 @@ - - - - Exe - netcoreapp2.0 - - - - - - - diff --git a/Diagnostics/Example2b/Program.cs b/Diagnostics/Example2b/Program.cs deleted file mode 100644 index 70bc9a8e..00000000 --- a/Diagnostics/Example2b/Program.cs +++ /dev/null @@ -1,30 +0,0 @@ -using Google.Cloud.Storage.V1; -using System; -using System.Collections.Generic; -using System.Threading.Tasks; - -namespace Example2b -{ - class Program - { - static void Main() - { - AsyncMain().GetAwaiter().GetResult(); - } - - static async Task AsyncMain() - { - var client = await StorageClient.CreateAsync(); - - var buckets = client.ListBucketsAsync("jonskeet-uberproject"); - using (var iterator = buckets.GetEnumerator()) - { - while (await iterator.MoveNext()) - { - var bucket = iterator.Current; - Console.WriteLine(bucket.Name); - } - } - } - } -} diff --git a/Diagnostics/Example2c/Example2c.csproj b/Diagnostics/Example2c/Example2c.csproj deleted file mode 100644 index b80a732b..00000000 --- a/Diagnostics/Example2c/Example2c.csproj +++ /dev/null @@ -1,70 +0,0 @@ - - - - - Debug - AnyCPU - {63DA3737-8F67-4C26-9EE8-D7163D34B65F} - WinExe - Example2c - Example2c - v4.6.1 - 512 - true - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - - - - - - - - - - - - - - - - ResXFileCodeGenerator - Resources.Designer.cs - Designer - - - True - Resources.resx - - - SettingsSingleFileGenerator - Settings.Designer.cs - - - True - Settings.settings - True - - - - \ No newline at end of file diff --git a/Diagnostics/Example2c/Program.cs b/Diagnostics/Example2c/Program.cs deleted file mode 100644 index a24f26c1..00000000 --- a/Diagnostics/Example2c/Program.cs +++ /dev/null @@ -1,27 +0,0 @@ -using System; -using System.Windows.Forms; - -namespace Example2c -{ - static class Program - { - [STAThread] - static void Main() - { - Application.EnableVisualStyles(); - Application.SetCompatibleTextRenderingDefault(false); - - var groupBox = new GroupBox(); - var items = new[] { "Foo", "Bar", "Baz" }; - - foreach (var item in items) - { - var button = new Button { Text = item }; - groupBox.Controls.Add(button); - } - - var form = new Form { Controls = { groupBox } }; - Application.Run(form); - } - } -} diff --git a/Diagnostics/Example2c/Properties/AssemblyInfo.cs b/Diagnostics/Example2c/Properties/AssemblyInfo.cs deleted file mode 100644 index c5ebc1a4..00000000 --- a/Diagnostics/Example2c/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("Example2c")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("Example2c")] -[assembly: AssemblyCopyright("Copyright © 2017")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("63da3737-8f67-4c26-9ee8-d7163d34b65f")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Diagnostics/Example2c/Properties/Resources.Designer.cs b/Diagnostics/Example2c/Properties/Resources.Designer.cs deleted file mode 100644 index 4d3296f7..00000000 --- a/Diagnostics/Example2c/Properties/Resources.Designer.cs +++ /dev/null @@ -1,71 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace Example2c.Properties -{ - - - /// - /// A strongly-typed resource class, for looking up localized strings, etc. - /// - // This class was auto-generated by the StronglyTypedResourceBuilder - // class via a tool like ResGen or Visual Studio. - // To add or remove a member, edit your .ResX file then rerun ResGen - // with the /str option, or rebuild your VS project. - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - internal class Resources - { - - private static global::System.Resources.ResourceManager resourceMan; - - private static global::System.Globalization.CultureInfo resourceCulture; - - [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] - internal Resources() - { - } - - /// - /// Returns the cached ResourceManager instance used by this class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Resources.ResourceManager ResourceManager - { - get - { - if ((resourceMan == null)) - { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Example2c.Properties.Resources", typeof(Resources).Assembly); - resourceMan = temp; - } - return resourceMan; - } - } - - /// - /// Overrides the current thread's CurrentUICulture property for all - /// resource lookups using this strongly typed resource class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Globalization.CultureInfo Culture - { - get - { - return resourceCulture; - } - set - { - resourceCulture = value; - } - } - } -} diff --git a/Diagnostics/Example2c/Properties/Resources.resx b/Diagnostics/Example2c/Properties/Resources.resx deleted file mode 100644 index af7dbebb..00000000 --- a/Diagnostics/Example2c/Properties/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/Diagnostics/Example2c/Properties/Settings.Designer.cs b/Diagnostics/Example2c/Properties/Settings.Designer.cs deleted file mode 100644 index f63b48f8..00000000 --- a/Diagnostics/Example2c/Properties/Settings.Designer.cs +++ /dev/null @@ -1,30 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace Example2c.Properties -{ - - - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] - internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase - { - - private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); - - public static Settings Default - { - get - { - return defaultInstance; - } - } - } -} diff --git a/Diagnostics/Example2c/Properties/Settings.settings b/Diagnostics/Example2c/Properties/Settings.settings deleted file mode 100644 index 39645652..00000000 --- a/Diagnostics/Example2c/Properties/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/Diagnostics/Example3a/Example3a.csproj b/Diagnostics/Example3a/Example3a.csproj deleted file mode 100644 index d6e89fe6..00000000 --- a/Diagnostics/Example3a/Example3a.csproj +++ /dev/null @@ -1,19 +0,0 @@ - - - - Exe - netcoreapp1.0 - $(PackageTargetFallback);dotnet - NodaTime.Test - NodaTime Release.snk - true - true - - - - - - - - - diff --git a/Diagnostics/Example3a/NodaTime Release.snk b/Diagnostics/Example3a/NodaTime Release.snk deleted file mode 100644 index a31838c8..00000000 Binary files a/Diagnostics/Example3a/NodaTime Release.snk and /dev/null differ diff --git a/Diagnostics/Example3a/Program.cs b/Diagnostics/Example3a/Program.cs deleted file mode 100644 index 80f33116..00000000 --- a/Diagnostics/Example3a/Program.cs +++ /dev/null @@ -1,16 +0,0 @@ -using NUnit.Common; -using NUnitLite; -using System; -using System.Reflection; - -namespace Example3a -{ - class Program - { - public static int Main(string[] args) - { - var writer = new ExtendedTextWrapper(Console.Out); - return new AutoRun(typeof(Program).GetTypeInfo().Assembly).Execute(args, writer, Console.In); - } - } -} diff --git a/Diagnostics/Example3a/UmAlQuraYearMonthDayCalculatorTest.cs b/Diagnostics/Example3a/UmAlQuraYearMonthDayCalculatorTest.cs deleted file mode 100644 index 69c9b46d..00000000 --- a/Diagnostics/Example3a/UmAlQuraYearMonthDayCalculatorTest.cs +++ /dev/null @@ -1,28 +0,0 @@ -using NodaTime.Calendars; -using NUnit.Framework; - -namespace NodaTime.Test.Calendars -{ - public class UmAlQuraYearMonthDayCalculatorTest - { - [Test] - public void GetYearMonthDay_DaysSinceEpoch() - { - var calculator = new UmAlQuraYearMonthDayCalculator(); - int daysSinceEpoch = calculator.GetStartOfYearInDays(calculator.MinYear); - for (int year = calculator.MinYear; year <= calculator.MaxYear; year++) - { - for (int month = 1; month <= 12; month++) - { - for (int day = 1; day <= calculator.GetDaysInMonth(year, month); day++) - { - var actual = calculator.GetYearMonthDay(daysSinceEpoch); - var expected = new YearMonthDay(year, month, day); - Assert.AreEqual(expected, actual, "daysSinceEpoch={0}", daysSinceEpoch); - daysSinceEpoch++; - } - } - } - } - } -} \ No newline at end of file diff --git a/Diagnostics/Example3b/Example3b.csproj b/Diagnostics/Example3b/Example3b.csproj deleted file mode 100644 index 4707d3a1..00000000 --- a/Diagnostics/Example3b/Example3b.csproj +++ /dev/null @@ -1,14 +0,0 @@ - - - - Exe - netcoreapp1.0 - $(PackageTargetFallback);dotnet - - - - - - - - diff --git a/Diagnostics/Example3b/Program.cs b/Diagnostics/Example3b/Program.cs deleted file mode 100644 index 38f1c167..00000000 --- a/Diagnostics/Example3b/Program.cs +++ /dev/null @@ -1,72 +0,0 @@ -using NUnit.Common; -using NUnit.Framework; -using NUnit.Framework.Constraints; -using NUnitLite; -using System; -using System.Reflection; - -namespace Example3b -{ - public class Program - { - public static int Main(string[] args) - { - var writer = new ExtendedTextWrapper(Console.Out); - return new AutoRun(typeof(Program).GetTypeInfo().Assembly).Execute(args, writer, Console.In); - } - - [Test] - public void AreEqual() - { - for (int i = 0; i < 1000000; i++) - { - var x = 10; - var y = 10; - Assert.AreEqual(x, y); - } - } - - [Test] - public void ThatIsEqualTo() - { - for (int i = 0; i < 1000000; i++) - { - var x = 10; - var y = 10; - Assert.AreEqual(x, y); - } - } - - [Test] - public void ComparerConstruction() - { - for (int i = 0; i < 1000000; i++) - { - var comparer = new NUnitEqualityComparer(); - } - } - - [Test] - public void ComparerAreEqual() - { - var comparer = new NUnitEqualityComparer(); - Tolerance tolerance = new Tolerance(0); - for (int i = 0; i < 1000000; i++) - { - var x = 10; - var y = 10; - comparer.AreEqual(x, y, ref tolerance); - } - } - - [Test] - public void IsEqualTo() - { - for (int i = 0; i < 1000000; i++) - { - var y = 10; - Is.EqualTo(y); - } - } - } -} diff --git a/Diagnostics/Example3c/Example3c.csproj b/Diagnostics/Example3c/Example3c.csproj deleted file mode 100644 index 85dfec09..00000000 --- a/Diagnostics/Example3c/Example3c.csproj +++ /dev/null @@ -1,8 +0,0 @@ - - - - Exe - netcoreapp1.0 - - - diff --git a/Diagnostics/Example3c/Program.cs b/Diagnostics/Example3c/Program.cs deleted file mode 100644 index 76a99bb8..00000000 --- a/Diagnostics/Example3c/Program.cs +++ /dev/null @@ -1,25 +0,0 @@ -using System; -using System.Diagnostics; - -namespace Example3c -{ - public class Program - { - public static void Main(string[] args) - { - Time(1); - Time(1000000); - } - - private static void Time(int iterations) - { - var stopwatch = Stopwatch.StartNew(); - for (int i = 0; i < iterations; i++) - { - "abcfeg".EndsWith("123"); - } - stopwatch.Stop(); - Console.WriteLine(stopwatch.Elapsed); - } - } -} \ No newline at end of file diff --git a/Diagnostics/UnhelpfulDebugger/App.config b/Diagnostics/UnhelpfulDebugger/App.config deleted file mode 100644 index 731f6de6..00000000 --- a/Diagnostics/UnhelpfulDebugger/App.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/Diagnostics/UnhelpfulDebugger/DoubleConverter.cs b/Diagnostics/UnhelpfulDebugger/DoubleConverter.cs deleted file mode 100644 index fc48b2c2..00000000 --- a/Diagnostics/UnhelpfulDebugger/DoubleConverter.cs +++ /dev/null @@ -1,220 +0,0 @@ -using System; -using System.Globalization; - -// Note: this is old code. We could probably use BigInteger to good effect here... - -/// -/// A class to allow the conversion of doubles to string representations of -/// their exact decimal values. The implementation aims for readability over -/// efficiency. -/// -public class DoubleConverter -{ - /// - /// Converts the given double to a string representation of its - /// exact decimal value. - /// - /// The double to convert. - /// A string representation of the double's exact decimal value. - public static string ToExactString (double d) - { - if (double.IsPositiveInfinity(d)) - return "+Infinity"; - if (double.IsNegativeInfinity(d)) - return "-Infinity"; - if (double.IsNaN(d)) - return "NaN"; - - // Translate the double into sign, exponent and mantissa. - long bits = BitConverter.DoubleToInt64Bits(d); - // Note that the shift is sign-extended, hence the test against -1 not 1 - bool negative = (bits < 0); - int exponent = (int) ((bits >> 52) & 0x7ffL); - long mantissa = bits & 0xfffffffffffffL; - - // Subnormal numbers; exponent is effectively one higher, - // but there's no extra normalisation bit in the mantissa - if (exponent==0) - { - exponent++; - } - // Normal numbers; leave exponent as it is but add extra - // bit to the front of the mantissa - else - { - mantissa = mantissa | (1L<<52); - } - - // Bias the exponent. It's actually biased by 1023, but we're - // treating the mantissa as m.0 rather than 0.m, so we need - // to subtract another 52 from it. - exponent -= 1075; - - if (mantissa == 0) - { - return "0"; - } - - /* Normalize */ - while((mantissa & 1) == 0) - { /* i.e., Mantissa is even */ - mantissa >>= 1; - exponent++; - } - - /// Construct a new decimal expansion with the mantissa - ArbitraryDecimal ad = new ArbitraryDecimal (mantissa); - - // If the exponent is less than 0, we need to repeatedly - // divide by 2 - which is the equivalent of multiplying - // by 5 and dividing by 10. - if (exponent < 0) - { - for (int i=0; i < -exponent; i++) - ad.MultiplyBy(5); - ad.Shift(-exponent); - } - // Otherwise, we need to repeatedly multiply by 2 - else - { - for (int i=0; i < exponent; i++) - ad.MultiplyBy(2); - } - - // Finally, return the string with an appropriate sign - if (negative) - return "-"+ad.ToString(); - else - return ad.ToString(); - } - - /// Private class used for manipulating decimal values. Not general purpose! - class ArbitraryDecimal - { - /// - /// Digits in the decimal expansion, one byte per digit - /// - byte[] digits; - - /// - /// How many digits are *after* the decimal point - /// - int decimalPoint = 0; - - /// - /// Constructs an arbitrary decimal expansion from the given long. - /// The long must not be negative. - /// - internal ArbitraryDecimal (long x) - { - string tmp = x.ToString(CultureInfo.InvariantCulture); - digits = new byte[tmp.Length]; - for (int i=0; i < tmp.Length; i++) - digits[i] = (byte) (tmp[i]-'0'); - Normalize(); - } - - /// - /// Multiplies the current expansion by the given amount, which should - /// only be 2 or 5. - /// - internal void MultiplyBy(int amount) - { - byte[] result = new byte[digits.Length+1]; - for (int i=digits.Length-1; i >= 0; i--) - { - int resultDigit = digits[i]*amount+result[i+1]; - result[i]=(byte)(resultDigit/10); - result[i+1]=(byte)(resultDigit%10); - } - if (result[0] != 0) - { - digits=result; - } - else - { - Array.Copy (result, 1, digits, 0, digits.Length); - } - Normalize(); - } - - /// - /// Shifts the decimal point; a negative value makes - /// the decimal expansion bigger (as fewer digits come after the - /// decimal place) and a positive value makes the decimal - /// expansion smaller. - /// - internal void Shift (int amount) - { - decimalPoint += amount; - } - - /// - /// Removes leading/trailing zeroes from the expansion. - /// - internal void Normalize() - { - int first; - for (first=0; first < digits.Length; first++) - if (digits[first]!=0) - break; - int last; - for (last=digits.Length-1; last >= 0; last--) - if (digits[last]!=0) - break; - - if (first==0 && last==digits.Length-1) - return; - - byte[] tmp = new byte[last-first+1]; - for (int i=0; i < tmp.Length; i++) - tmp[i]=digits[i+first]; - - decimalPoint -= digits.Length-(last+1); - digits=tmp; - } - - /// - /// Converts the value to a proper decimal string representation. - /// - public override String ToString() - { - char[] digitString = new char[digits.Length]; - for (int i=0; i < digits.Length; i++) - digitString[i] = (char)(digits[i]+'0'); - - // Simplest case - nothing after the decimal point, - // and last real digit is non-zero, eg value=35 - if (decimalPoint==0) - { - return new string (digitString); - } - - // Fairly simple case - nothing after the decimal - // point, but some 0s to add, eg value=350 - if (decimalPoint < 0) - { - return new string (digitString)+ - new string ('0', -decimalPoint); - } - - // Nothing before the decimal point, eg 0.035 - if (decimalPoint >= digitString.Length) - { - return "0."+ - new string ('0',(decimalPoint-digitString.Length))+ - new string (digitString); - } - - // Most complicated case - part of the string comes - // before the decimal point, part comes after it, - // eg 3.5 - return new string (digitString, 0, - digitString.Length-decimalPoint)+ - "."+ - new string (digitString, - digitString.Length-decimalPoint, - decimalPoint); - } - } -} diff --git a/Diagnostics/UnhelpfulDebugger/Program.cs b/Diagnostics/UnhelpfulDebugger/Program.cs deleted file mode 100644 index 0e3f25a0..00000000 --- a/Diagnostics/UnhelpfulDebugger/Program.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System; - -namespace UnhelpfulDebugger -{ - class Program - { - static void Main() - { - string awkward1 = "Foo\\Bar"; - string awkward2 = "FindEle‌​ment"; - double awkward3 = 4.9999999999999995d; - - Console.WriteLine(awkward1); - PrintString(awkward1); - - Console.WriteLine(awkward2); - PrintString(awkward2); - - Console.WriteLine(awkward3); - PrintDouble(awkward3); - } - - static void PrintString(string text) - { - Console.WriteLine($"Text: '{text}'"); - Console.WriteLine($"Length: {text.Length}"); - for (int i = 0; i < text.Length; i++) - { - Console.WriteLine($"{i,2} U+{(int) text[i]:x4} '{text[i]}'"); - } - } - - static void PrintDouble(double value) => - Console.WriteLine(DoubleConverter.ToExactString(value)); - } -} diff --git a/Diagnostics/UnhelpfulDebugger/Properties/AssemblyInfo.cs b/Diagnostics/UnhelpfulDebugger/Properties/AssemblyInfo.cs deleted file mode 100644 index 9d7dbc5b..00000000 --- a/Diagnostics/UnhelpfulDebugger/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("UnhelpfulDebugger")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("UnhelpfulDebugger")] -[assembly: AssemblyCopyright("Copyright © 2017")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("bce31e51-88b5-4d45-9081-855fa1f3bc53")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Diagnostics/UnhelpfulDebugger/UnhelpfulDebugger.csproj b/Diagnostics/UnhelpfulDebugger/UnhelpfulDebugger.csproj deleted file mode 100644 index 4b76c48a..00000000 --- a/Diagnostics/UnhelpfulDebugger/UnhelpfulDebugger.csproj +++ /dev/null @@ -1,53 +0,0 @@ - - - - - Debug - AnyCPU - {BCE31E51-88B5-4D45-9081-855FA1F3BC53} - Exe - UnhelpfulDebugger - UnhelpfulDebugger - v4.6.1 - 512 - true - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/DialogflowDemo/DialogflowDemo.sln b/DialogflowDemo/DialogflowDemo.sln deleted file mode 100644 index 956dcf13..00000000 --- a/DialogflowDemo/DialogflowDemo.sln +++ /dev/null @@ -1,79 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 15 -VisualStudioVersion = 15.0.26124.0 -MinimumVisualStudioVersion = 15.0.26124.0 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DialogflowDemo", "DialogflowDemo\DialogflowDemo.csproj", "{A495E3C7-BF26-4743-860E-A186E2B3DB06}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PopulateFirestore", "PopulateFirestore\PopulateFirestore.csproj", "{17325BBB-1362-4D26-9F4A-68D87957169D}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MentorSearchModels", "MentorSearchModels\MentorSearchModels.csproj", "{9B7BC1F7-F5ED-4D79-8A90-794383985070}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SearchTest", "SearchTest\SearchTest.csproj", "{232D854A-6EE4-49C7-8083-CDA5DE795ED3}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Debug|x64 = Debug|x64 - Debug|x86 = Debug|x86 - Release|Any CPU = Release|Any CPU - Release|x64 = Release|x64 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {A495E3C7-BF26-4743-860E-A186E2B3DB06}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {A495E3C7-BF26-4743-860E-A186E2B3DB06}.Debug|Any CPU.Build.0 = Debug|Any CPU - {A495E3C7-BF26-4743-860E-A186E2B3DB06}.Debug|x64.ActiveCfg = Debug|Any CPU - {A495E3C7-BF26-4743-860E-A186E2B3DB06}.Debug|x64.Build.0 = Debug|Any CPU - {A495E3C7-BF26-4743-860E-A186E2B3DB06}.Debug|x86.ActiveCfg = Debug|Any CPU - {A495E3C7-BF26-4743-860E-A186E2B3DB06}.Debug|x86.Build.0 = Debug|Any CPU - {A495E3C7-BF26-4743-860E-A186E2B3DB06}.Release|Any CPU.ActiveCfg = Release|Any CPU - {A495E3C7-BF26-4743-860E-A186E2B3DB06}.Release|Any CPU.Build.0 = Release|Any CPU - {A495E3C7-BF26-4743-860E-A186E2B3DB06}.Release|x64.ActiveCfg = Release|Any CPU - {A495E3C7-BF26-4743-860E-A186E2B3DB06}.Release|x64.Build.0 = Release|Any CPU - {A495E3C7-BF26-4743-860E-A186E2B3DB06}.Release|x86.ActiveCfg = Release|Any CPU - {A495E3C7-BF26-4743-860E-A186E2B3DB06}.Release|x86.Build.0 = Release|Any CPU - {17325BBB-1362-4D26-9F4A-68D87957169D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {17325BBB-1362-4D26-9F4A-68D87957169D}.Debug|Any CPU.Build.0 = Debug|Any CPU - {17325BBB-1362-4D26-9F4A-68D87957169D}.Debug|x64.ActiveCfg = Debug|Any CPU - {17325BBB-1362-4D26-9F4A-68D87957169D}.Debug|x64.Build.0 = Debug|Any CPU - {17325BBB-1362-4D26-9F4A-68D87957169D}.Debug|x86.ActiveCfg = Debug|Any CPU - {17325BBB-1362-4D26-9F4A-68D87957169D}.Debug|x86.Build.0 = Debug|Any CPU - {17325BBB-1362-4D26-9F4A-68D87957169D}.Release|Any CPU.ActiveCfg = Release|Any CPU - {17325BBB-1362-4D26-9F4A-68D87957169D}.Release|Any CPU.Build.0 = Release|Any CPU - {17325BBB-1362-4D26-9F4A-68D87957169D}.Release|x64.ActiveCfg = Release|Any CPU - {17325BBB-1362-4D26-9F4A-68D87957169D}.Release|x64.Build.0 = Release|Any CPU - {17325BBB-1362-4D26-9F4A-68D87957169D}.Release|x86.ActiveCfg = Release|Any CPU - {17325BBB-1362-4D26-9F4A-68D87957169D}.Release|x86.Build.0 = Release|Any CPU - {9B7BC1F7-F5ED-4D79-8A90-794383985070}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {9B7BC1F7-F5ED-4D79-8A90-794383985070}.Debug|Any CPU.Build.0 = Debug|Any CPU - {9B7BC1F7-F5ED-4D79-8A90-794383985070}.Debug|x64.ActiveCfg = Debug|Any CPU - {9B7BC1F7-F5ED-4D79-8A90-794383985070}.Debug|x64.Build.0 = Debug|Any CPU - {9B7BC1F7-F5ED-4D79-8A90-794383985070}.Debug|x86.ActiveCfg = Debug|Any CPU - {9B7BC1F7-F5ED-4D79-8A90-794383985070}.Debug|x86.Build.0 = Debug|Any CPU - {9B7BC1F7-F5ED-4D79-8A90-794383985070}.Release|Any CPU.ActiveCfg = Release|Any CPU - {9B7BC1F7-F5ED-4D79-8A90-794383985070}.Release|Any CPU.Build.0 = Release|Any CPU - {9B7BC1F7-F5ED-4D79-8A90-794383985070}.Release|x64.ActiveCfg = Release|Any CPU - {9B7BC1F7-F5ED-4D79-8A90-794383985070}.Release|x64.Build.0 = Release|Any CPU - {9B7BC1F7-F5ED-4D79-8A90-794383985070}.Release|x86.ActiveCfg = Release|Any CPU - {9B7BC1F7-F5ED-4D79-8A90-794383985070}.Release|x86.Build.0 = Release|Any CPU - {232D854A-6EE4-49C7-8083-CDA5DE795ED3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {232D854A-6EE4-49C7-8083-CDA5DE795ED3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {232D854A-6EE4-49C7-8083-CDA5DE795ED3}.Debug|x64.ActiveCfg = Debug|Any CPU - {232D854A-6EE4-49C7-8083-CDA5DE795ED3}.Debug|x64.Build.0 = Debug|Any CPU - {232D854A-6EE4-49C7-8083-CDA5DE795ED3}.Debug|x86.ActiveCfg = Debug|Any CPU - {232D854A-6EE4-49C7-8083-CDA5DE795ED3}.Debug|x86.Build.0 = Debug|Any CPU - {232D854A-6EE4-49C7-8083-CDA5DE795ED3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {232D854A-6EE4-49C7-8083-CDA5DE795ED3}.Release|Any CPU.Build.0 = Release|Any CPU - {232D854A-6EE4-49C7-8083-CDA5DE795ED3}.Release|x64.ActiveCfg = Release|Any CPU - {232D854A-6EE4-49C7-8083-CDA5DE795ED3}.Release|x64.Build.0 = Release|Any CPU - {232D854A-6EE4-49C7-8083-CDA5DE795ED3}.Release|x86.ActiveCfg = Release|Any CPU - {232D854A-6EE4-49C7-8083-CDA5DE795ED3}.Release|x86.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {328A3195-75D0-47D4-B6A3-7473E5E1BEEB} - EndGlobalSection -EndGlobal diff --git a/DialogflowDemo/DialogflowDemo/Controllers/MentorSearchController.cs b/DialogflowDemo/DialogflowDemo/Controllers/MentorSearchController.cs deleted file mode 100644 index 2685f32d..00000000 --- a/DialogflowDemo/DialogflowDemo/Controllers/MentorSearchController.cs +++ /dev/null @@ -1,175 +0,0 @@ -using Google.Cloud.Dialogflow.V2; -using Google.Cloud.Firestore; -using Google.Protobuf; -using MentorSearchModels; -using Microsoft.AspNetCore.Mvc; -using Newtonsoft.Json; -using Newtonsoft.Json.Linq; -using System; -using System.IO; -using System.Linq; -using System.Threading.Tasks; -using static Google.Protobuf.WellKnownTypes.Value; - -namespace DialogflowDemo.Controllers -{ - [Route("api/[controller]")] - [ApiController] - public class MentorSearchController : ControllerBase - { - private const string TransferNumber = "+12097484428"; - - // A Protobuf JSON parser configured to ignore unknown fields. This makes - // the action robust against new fields being introduced by Dialogflow. - private static readonly JsonParser jsonParser = - new JsonParser(JsonParser.Settings.Default.WithIgnoreUnknownFields(true)); - - private readonly FirestoreDb firestore; - - public MentorSearchController(FirestoreDb firestore) - { - this.firestore = firestore; - } - - [HttpGet, HttpPost] - public async Task FulfilRequest([FromBody] JObject rawRequest) - { - // TODO: Authenticate the request - - var queryResult = (JObject) rawRequest["queryResult"]; - - // We're using the beta API, which ends up with an enum value that isn't recognized - // by the protobuf JSON parser. We're ignoring unknown *fields*, but we can't ignore unknown - // enum values. We don't use this part of the request, so we'll just remove it. - queryResult.Remove("fulfillmentMessages"); - - // Sentiment analysis is also a beta feature, so we need to use the request as parsed - // by Json.NET, before we get to the "regular" processing. - var response = MaybeRespondFromSentiment(queryResult) ?? await GetResponseAsync(rawRequest); - - // Ask Protobuf to format the JSON to return. - // Again, we don't want to use Json.NET - it doesn't know how to handle Struct - // values etc. - string responseJson = response.ToString(); - return Content(responseJson, "application/json"); - } - - private object MaybeRespondFromSentiment(JObject queryResult) - { - if (queryResult.TryGetValue("sentimentAnalysisResult", out var sentimentToken) && sentimentToken is JObject sentimentObject && - sentimentObject.TryGetValue("queryTextSentiment", out var querySentimentToken) && querySentimentToken is JObject querySentimentObject && - querySentimentObject.TryGetValue("score", out var scoreToken) && - querySentimentObject.TryGetValue("magnitude", out var magnitudeToken)) - { - double score = (double)scoreToken; - double magnitude = (double)magnitudeToken; - if (score < 0 && magnitude > 0.5) - { - // We can't create the exact response we want with WebhookResponse as it requires beta features. - // Create an anonymous type and convert it to JSON instead. Ick. - object response = new - { - fulfillmentMessages = new object[] - { - new { text = new { text = new[] { "Transferring you now" } } }, - new - { - platform = "TELEPHONY", - telephonySynthesizeSpeech = new { text = "Transferring you now" } - }, - new - { - platform = "TELEPHONY", - telephonyTransferCall = new { phoneNumber = TransferNumber } - } - } - }; - var json = JsonConvert.SerializeObject(response); - return json; - } - } - return null; - } - - private async Task GetResponseAsync(JObject rawRequest) - { - // Reparse the body of the request using the Protobuf JSON parser, - // *not* Json.NET. If we didn't need to do the extra work earlier than this, - // we could do without Json.NET entirely. - // (See https://googleapis.github.io/google-cloud-dotnet/docs/Google.Cloud.Dialogflow.V2/ - // for an example.) - WebhookRequest request; - using (var reader = new StringReader(rawRequest.ToString())) - { - request = jsonParser.Parse(reader); - } - - switch (request.QueryResult.Intent.DisplayName) - { - case "Default Welcome Intent": - return GetWelcomeResponse(request); - case "Default Fallback Intent": - return GetFallbackResponse(request); - case "Mentor Search": - return await GetMentorSearchResponse(request); - case "Goodbye": - return GetGoodbyeResponse(request); - default: - return new WebhookResponse { FulfillmentText = "Sorry, I didn't understand that intent." }; - } - } - - private static WebhookResponse GetWelcomeResponse(WebhookRequest request) => - CreateResponse("Greetings! What mentor are you looking for? You can search by name, city or topic."); - - private static WebhookResponse GetFallbackResponse(WebhookRequest request) => - CreateResponse("I didn't understand. I'm sorry, can you try again?"); - - private async Task GetMentorSearchResponse(WebhookRequest request) - { - var name = GetStringParameter(request, "given-name"); - var topic = GetStringParameter(request, "topic"); - var city = GetStringParameter(request, "geo-city"); - - Console.WriteLine($"Search: name={name}; topic={topic}; city={city}"); - - if (name == null && topic == null && city == null) - { - return CreateResponse("I'm sorry, I didn't understand your request. Please specify a name, topic or city."); - } - - Query query = firestore.Collection("mentors"); - if (name != null) - { - query = query.WhereGreaterThanOrEqualTo("Name", name).WhereLessThan("Name", name + "~"); - } - if (topic != null) - { - query = query.WhereArrayContains("Topics", topic.ToLowerInvariant()); - } - if (city != null) - { - query = query.WhereEqualTo("Location", city.ToLowerInvariant()); - } - - var results = await query.GetSnapshotAsync().ConfigureAwait(false); - // Ordering here rather than in the query reduces the number of indexes we need. - var mentors = results.Select(doc => doc.ConvertTo()).OrderBy(m => m.Name).ToList(); - - string mentorNames = string.Join(", ", mentors.Select(m => m.Name)); - return CreateResponse( - $"I found {mentors.Count} {(mentors.Count == 1 ? "mentor" : "mentors")}: {mentorNames}"); - } - - private static WebhookResponse GetGoodbyeResponse(WebhookRequest request) => - CreateResponse("Goodbye"); - - private static WebhookResponse CreateResponse(string message) => - new WebhookResponse { FulfillmentText = message, }; - - private static string GetStringParameter(WebhookRequest request, string parameterName) => - request.QueryResult.Parameters.Fields.TryGetValue(parameterName, out var value) && - value.KindCase == KindOneofCase.StringValue && value.StringValue != "" - ? value.StringValue : null; - } -} diff --git a/DialogflowDemo/DialogflowDemo/DialogflowDemo.csproj b/DialogflowDemo/DialogflowDemo/DialogflowDemo.csproj deleted file mode 100644 index 75e3d456..00000000 --- a/DialogflowDemo/DialogflowDemo/DialogflowDemo.csproj +++ /dev/null @@ -1,22 +0,0 @@ - - - - netcoreapp2.1 - - - - - - - - - - - - - - - - - - diff --git a/DialogflowDemo/DialogflowDemo/Program.cs b/DialogflowDemo/DialogflowDemo/Program.cs deleted file mode 100644 index b30cdc4c..00000000 --- a/DialogflowDemo/DialogflowDemo/Program.cs +++ /dev/null @@ -1,17 +0,0 @@ -using Microsoft.AspNetCore; -using Microsoft.AspNetCore.Hosting; - -namespace DialogflowDemo -{ - public class Program - { - public static void Main(string[] args) - { - CreateWebHostBuilder(args).Build().Run(); - } - - public static IWebHostBuilder CreateWebHostBuilder(string[] args) => - WebHost.CreateDefaultBuilder(args) - .UseStartup(); - } -} diff --git a/DialogflowDemo/DialogflowDemo/Properties/launchSettings.json b/DialogflowDemo/DialogflowDemo/Properties/launchSettings.json deleted file mode 100644 index 34d13104..00000000 --- a/DialogflowDemo/DialogflowDemo/Properties/launchSettings.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "$schema": "http://json.schemastore.org/launchsettings.json", - "iisSettings": { - "windowsAuthentication": false, - "anonymousAuthentication": true, - "iisExpress": { - "applicationUrl": "http://localhost:57260/", - "sslPort": 44375 - } - }, - "profiles": { - "IIS Express": { - "commandName": "IISExpress", - "launchBrowser": true, - "launchUrl": "api/values", - "environmentVariables": { - "ASPNETCORE_ENVIRONMENT": "Development" - } - }, - "DialogflowDemo": { - "commandName": "Project", - "launchBrowser": true, - "launchUrl": "api/values", - "applicationUrl": "https://localhost:5001;http://localhost:5000", - "environmentVariables": { - "ASPNETCORE_ENVIRONMENT": "Development" - } - } - } -} \ No newline at end of file diff --git a/DialogflowDemo/DialogflowDemo/Startup.cs b/DialogflowDemo/DialogflowDemo/Startup.cs deleted file mode 100644 index a04b031c..00000000 --- a/DialogflowDemo/DialogflowDemo/Startup.cs +++ /dev/null @@ -1,42 +0,0 @@ -using Google.Cloud.Firestore; -using Microsoft.AspNetCore.Builder; -using Microsoft.AspNetCore.Hosting; -using Microsoft.AspNetCore.Mvc; -using Microsoft.Extensions.Configuration; -using Microsoft.Extensions.DependencyInjection; - -namespace DialogflowDemo -{ - public class Startup - { - public Startup(IConfiguration configuration) - { - Configuration = configuration; - } - - public IConfiguration Configuration { get; } - - // This method gets called by the runtime. Use this method to add services to the container. - public void ConfigureServices(IServiceCollection services) - { - services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1); - services.AddSingleton(FirestoreDb.Create(Configuration["FirestoreProject"])); - } - - // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. - public void Configure(IApplicationBuilder app, IHostingEnvironment env) - { - if (env.IsDevelopment()) - { - app.UseDeveloperExceptionPage(); - } - else - { - app.UseHsts(); - } - - app.UseHttpsRedirection(); - app.UseMvc(); - } - } -} diff --git a/DialogflowDemo/DialogflowDemo/app.yaml b/DialogflowDemo/DialogflowDemo/app.yaml deleted file mode 100644 index 93e3d85e..00000000 --- a/DialogflowDemo/DialogflowDemo/app.yaml +++ /dev/null @@ -1,3 +0,0 @@ -runtime: aspnetcore -env: flex -service: gdg diff --git a/DialogflowDemo/DialogflowDemo/appsettings.Development.json b/DialogflowDemo/DialogflowDemo/appsettings.Development.json deleted file mode 100644 index e203e940..00000000 --- a/DialogflowDemo/DialogflowDemo/appsettings.Development.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "Logging": { - "LogLevel": { - "Default": "Debug", - "System": "Information", - "Microsoft": "Information" - } - } -} diff --git a/DialogflowDemo/DialogflowDemo/appsettings.json b/DialogflowDemo/DialogflowDemo/appsettings.json deleted file mode 100644 index 090fc95e..00000000 --- a/DialogflowDemo/DialogflowDemo/appsettings.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "Logging": { - "LogLevel": { - "Default": "Warning" - } - }, - "AllowedHosts": "*", - "FirestoreProject": "jonskeet-personal" -} diff --git a/DialogflowDemo/MentorSearchModels/Mentor.cs b/DialogflowDemo/MentorSearchModels/Mentor.cs deleted file mode 100644 index b04d0254..00000000 --- a/DialogflowDemo/MentorSearchModels/Mentor.cs +++ /dev/null @@ -1,41 +0,0 @@ -using Google.Cloud.Firestore; -using Newtonsoft.Json; -using System.Collections.Generic; -using System.Linq; - -namespace MentorSearchModels -{ - [FirestoreData] - public class Mentor - { - [FirestoreProperty] - public string Name { get; set; } - - [FirestoreProperty] - public string Type { get; set; } - - [FirestoreProperty] - public string Region { get; set; } - - [JsonProperty("Topics")] - public string CommaSeparatedTopics { get; set; } - - [FirestoreProperty, JsonIgnore] - public List Topics { get; set; } - - [FirestoreProperty] - public string Location { get; set; } - - [FirestoreProperty] - public string Twitter { get; set; } - - // Note: there are lots of alternative approaches to this munging. We could definitely have an input model and an output model, for example. - public void Normalize() - { - // Split topics so it's a collection - Topics = CommaSeparatedTopics?.Split(",").Select(t => t.Trim(',', '.', ' ').ToLowerInvariant()).ToList(); - // Just get the first part of each location - Location = Location?.Split(',')[0].ToLowerInvariant(); - } - } -} diff --git a/DialogflowDemo/MentorSearchModels/MentorSearchModels.csproj b/DialogflowDemo/MentorSearchModels/MentorSearchModels.csproj deleted file mode 100644 index 5cc6f238..00000000 --- a/DialogflowDemo/MentorSearchModels/MentorSearchModels.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - netcoreapp2.1 - - - - - - - diff --git a/DialogflowDemo/PopulateFirestore/PopulateFirestore.csproj b/DialogflowDemo/PopulateFirestore/PopulateFirestore.csproj deleted file mode 100644 index e017d40a..00000000 --- a/DialogflowDemo/PopulateFirestore/PopulateFirestore.csproj +++ /dev/null @@ -1,14 +0,0 @@ - - - - Exe - netcoreapp2.1 - latest - - - - - - - - diff --git a/DialogflowDemo/PopulateFirestore/Program.cs b/DialogflowDemo/PopulateFirestore/Program.cs deleted file mode 100644 index f850d871..00000000 --- a/DialogflowDemo/PopulateFirestore/Program.cs +++ /dev/null @@ -1,71 +0,0 @@ -using Google.Cloud.Firestore; -using MentorSearchModels; -using Newtonsoft.Json; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Threading.Tasks; - -namespace PopulateFirestore -{ - class Program - { - static async Task Main(string[] args) - { - if (args.Length != 3) - { - Console.WriteLine("Please specify input file, project ID and collection name"); - return; - } - - string json = File.ReadAllText(args[0]); - FileRoot root = JsonConvert.DeserializeObject(json); - foreach (var mentor in root.Mentors) - { - mentor.Normalize(); - } - - FirestoreDb db = FirestoreDb.Create(args[1]); - var collection = db.Collection(args[2]); - - await DeleteExistingDocuments(collection); - await CreateDocuments(collection, root.Mentors); - } - - static async Task DeleteExistingDocuments(CollectionReference collection) - { - // If the collection existed before, let's delete everything in it. - var docs = await collection.ListDocumentsAsync().ToList(); - if (docs.Count == 0) - { - return; - } - - var batch = collection.Database.StartBatch(); - foreach (var doc in docs) - { - batch.Delete(doc); - } - var results = await batch.CommitAsync(); - Console.WriteLine($"Deleted {results.Count} documents"); - } - - static async Task CreateDocuments(CollectionReference collection, List mentors) - { - var batch = collection.Database.StartBatch(); - foreach (var mentor in mentors) - { - batch.Create(collection.Document(), mentor); - } - var results = await batch.CommitAsync(); - Console.WriteLine($"Created {results.Count} documents"); - } - } - - class FileRoot - { - [JsonProperty("techWomenCollection")] - public List Mentors { get; set; } - } -} diff --git a/DialogflowDemo/PopulateFirestore/TechWomenCollection.json b/DialogflowDemo/PopulateFirestore/TechWomenCollection.json deleted file mode 100644 index e18d0496..00000000 --- a/DialogflowDemo/PopulateFirestore/TechWomenCollection.json +++ /dev/null @@ -1,1908 +0,0 @@ -{ - "techWomenCollection": [ - { - "Name": "Seetha Annamraju", - "Type": "Speakers", - "Region": "United States", - "Topics": "Android, Kotlin, Women in Tech, Mentorship, Startups", - "Location": "San Francisco, CA", - "Twitter": "@seetha_a" - }, - { - "Name": "Jina Anne", - "Type": "Speakers", - "Region": "United States", - "Topics": "Design Systems, Sass, Design, CSS", - "Location": null, - "Twitter": "@jina" - }, - { - "Name": "Laurie Barth", - "Type": "Speakers", - "Region": "United States", - "Topics": "Software Engineering, Web Development, DevOps, Engineering Culture, Project Challenges", - "Location": "Washington, DC", - "Twitter": "@laurieontech" - }, - { - "Name": "Jessica Bell", - "Type": "Speakers", - "Region": "United States", - "Topics": "JavaScript, AngularJS, HTML/CSS, SASS, Git/Version Control, Career Change, Web Development", - "Location": "Washington, DC", - "Twitter": "@SirJesstheBrave" - }, - { - "Name": "Jennifer Bland", - "Type": "Speakers", - "Region": "United States", - "Topics": "Workshop Speeches, JavaScript, Node.js, AngularJS, Angular, Vue, Web Components, Polymer, HTML/CSS, Flexbox", - "Location": "Atlanta, GA", - "Twitter": "@ratracegrad" - }, - { - "Name": "Jessica Dene Earley-Cha", - "Type": "Speakers", - "Region": "United States", - "Topics": "Python, Flask, Whiteboarding, Community Management, Google Assistant, Conversational UI, Voice UI and more", - "Location": "Bay Area, CA", - "Twitter": "@chatasweetie" - }, - { - "Name": "Amy Carney", - "Type": "Speakers", - "Region": "United States", - "Topics": "Accessibility, HTML, CSS", - "Location": "Juneau, AK, USA", - "Twitter": "@click2carney" - }, - { - "Name": "Kara Carrell", - "Type": "Speakers", - "Region": "United States", - "Topics": "Git/Github, Ruby, Rails, ES6, HTML/CSS, Learning to Code, Intersectionality, Ideation & Design Thinking", - "Location": "Chicago, IL, USA", - "Twitter": "@KaraAJC" - }, - { - "Name": "Chloe Condon", - "Type": "Speakers", - "Region": "United States", - "Topics": "Developer Evangelism, Docker", - "Location": "Bay Area / San Francisco", - "Twitter": "@chloecondon" - }, - { - "Name": "Allison McMillan", - "Type": "Speakers", - "Region": "United States", - "Topics": "Mentorship, Learning and Professional Growth, Peer Teaching/Learning, Leadership Development, Garbage Collection, Parenting as a Technologist", - "Location": "Washington, DC", - "Twitter": "@allie_p" - }, - { - "Name": "Frances Coronel", - "Type": "Speakers", - "Region": "United States", - "Topics": "Coding Bootcamps, Web Design, Getting Started as a Developer, TypeScript", - "Location": "Redwood City, CA, USA", - "Twitter": "@fvcproductions" - }, - { - "Name": "Kim Crayton", - "Type": "Speakers", - "Region": "United States", - "Topics": "Diversity, Mentoring, Women in Tech", - "Location": "Atlanta, GA, USA", - "Twitter": "@KimCrayton1" - }, - { - "Name": "Lanette Creamer", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynotes, JavaScript, Agile Testing, Test Automation (with JavaScript), iOS and Mac Testing, Enough Git to Git By, Mentoring and Training New Developers, Typography, Coding Basics for Non-Programmers, Pain Management for New Developers, Disability", - "Location": "Seattle, WA, USA", - "Twitter": "@LanetteCream" - }, - { - "Name": "Santina Croniser", - "Type": "Speakers", - "Region": "United States", - "Topics": "Accessibility, Diversity, Women in Tech, Frontend Development, CMS, Tech in Higher Education", - "Location": "Chicago, IL", - "Twitter": "@SantinaCroniser" - }, - { - "Name": "Angela Damaso", - "Type": "Speakers", - "Region": "United States", - "Topics": "CSS, Accessibility, Javascript, Angular, Women in Tech, Design", - "Location": "New York, NY", - "Twitter": "@devbabie" - }, - { - "Name": "Rhia Dixon", - "Type": "Speakers", - "Region": "United States", - "Topics": "C#/.NET, AWS, Cloud Tools, Diversity & Inclusion, Diversity in Tech, Networking, Imposter Syndrome, Tips for Newbies", - "Location": "Kansas City, MO", - "Twitter": "@TheFakeRiRi" - }, - { - "Name": "Bear Douglas", - "Type": "Speakers", - "Region": "United States", - "Topics": "Dev Rel, events, Android, APIs", - "Location": "San Francisco, CA", - "Twitter": "@beardigsit" - }, - { - "Name": "Sarah Drasner", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynote Speeches, JavaScript, SVG, Animations, Vue.js", - "Location": "Denver, CO", - "Twitter": "@sarah_edo" - }, - { - "Name": "Sarah Dutkiewicz", - "Type": "Speakers", - "Region": "United States", - "Topics": "Powershell, C#", - "Location": "Akron, OH", - "Twitter": "@sadukie" - }, - { - "Name": "Ann Marie Fred", - "Type": "Speakers", - "Region": "United States", - "Topics": "DevOps, DevSecOps, Continuous Delivery, Software Development Culture and Best Practices, Github for Managers, Automating Compliance, Squad Models, Agile, Release Management, How to Get a Conference Talk Accepted, How to Be Active on Social Media without Losing Your Soul", - "Location": "St. Louis, MO, USA (relocating from Reasearch Triangle Park, NC, USA)", - "Twitter": "@DukeAMO" - }, - { - "Name": "Deepti Gandluri", - "Type": "Speakers", - "Region": "United States", - "Topics": "WebAssembly, Chrome V8", - "Location": "San Francisco, CA", - "Twitter": "@dptig" - }, - { - "Name": "Christina Gorton", - "Type": "Speakers", - "Region": "United States", - "Topics": null, - "Location": "Bowling Green, KY, USA", - "Twitter": "@coffeecraftcode" - }, - { - "Name": "Val Head", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynotes Speeches, JavaScript, Animations", - "Location": "Pittsburgh, PA", - "Twitter": "@vlh" - }, - { - "Name": "Bianca Henderson", - "Type": "Speakers", - "Region": "United States", - "Topics": "Moms in Tech, Self-starting/Self-teaching, Technical Writing, Ansible, Open Source, Native Americans in Tech", - "Location": "Durham, NC, USA", - "Twitter": "@bizonks" - }, - { - "Name": "Franziska Hinkelmann", - "Type": "Speakers", - "Region": "United States", - "Topics": "JavaScript Performance, Node.js Core, Cloud Platform", - "Location": "New York, NY", - "Twitter": "@fhinkel" - }, - { - "Name": "Asia Hoe", - "Type": "Speakers", - "Region": "United States", - "Topics": "Design, Design Systems, Mentorship, Mobile, Philanthropy, User Research, UX", - "Location": "New York, NY, USA", - "Twitter": "@TwitterHandle" - }, - { - "Name": "Lisa Huang", - "Type": "Speakers", - "Region": "United States", - "Topics": "JavaScript, web development, mobile, AMP open source project", - "Location": "San Francisco Bay area, CA", - "Twitter": "@lisaychuang" - }, - { - "Name": "Ashley Hunsberger", - "Type": "Speakers", - "Region": "United States", - "Topics": "Organizer of Selenium Conference, QA, DevOps, Women in Tech, Culture", - "Location": "Raleigh, North Carolina, USA", - "Twitter": "@aahunsberger" - }, - { - "Name": "Tomomi Imura", - "Type": "Speakers", - "Region": "United States", - "Topics": "API, technical writing, JavaScript, Node.JS, IoT, bots, mentoring, DevRel, design, sketchnotes, combining technology with cats", - "Location": "San Francisco, CA", - "Twitter": "@girlie_mac" - }, - { - "Name": "Angie Jones", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynotes, Test Automation, DevOps, Machine Learning (ML)", - "Location": "San Francisco, CA (will travel nationally & internationally)", - "Twitter": "@techgirl1908" - }, - { - "Name": "Mars Jullian", - "Type": "Speakers", - "Region": "United States", - "Topics": "JavaScript, React", - "Location": "San Francisco, CA", - "Twitter": "@marsjosephine" - }, - { - "Name": "Alaina Kafkes", - "Type": "Speakers", - "Region": "United States", - "Topics": "Technical Writing, Python, iOS Development, Web Development, Community Building", - "Location": "Chicago, IL / San Francisco, CA", - "Twitter": "@alainakafkes" - }, - { - "Name": "Sia Karamalegos", - "Type": "Speakers", - "Region": "United States", - "Topics": "React, Redux, React Native, NodeJS, JavaScript, GraphQL, workshops, teaching", - "Location": "New Orleans, LA, USA", - "Twitter": "@thegreengreek" - }, - { - "Name": "Nara Kasbergen", - "Type": "Speakers", - "Region": "United States", - "Topics": "Mental health in tech, APIs, Developer Experience (DX), JavaScript, Angular, voice UI development (e.g. Alexa)", - "Location": "Washington, DC, USA", - "Twitter": "@xiehan" - }, - { - "Name": "Preethi Kasireddy", - "Type": "Speakers", - "Region": "United States", - "Topics": "JavaScript, React", - "Location": "San Francisco, CA", - "Twitter": "@iam_preethi" - }, - { - "Name": "Amara Keller", - "Type": "Speakers", - "Region": "United States", - "Topics": "AI, JavaScript, NodeJS, Dev Rel, Workshops, meetups", - "Location": "Bay Area / San Francisco, CA", - "Twitter": "@MissAmaraKay" - }, - { - "Name": "Aimee Knight", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynotes Speeches, JavaScript, CSS", - "Location": "Nashville, TN", - "Twitter": "@Aimee_Knight" - }, - { - "Name": "Rae Krantz", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynotes Speeches, JavaScript, Angular, Apprenticeships, Teams", - "Location": "Akron, OH", - "Twitter": "@rustbeltrae" - }, - { - "Name": "Una Kravets", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynotes Speeches, JavaScript, CSS, Animations", - "Location": "New York, NY", - "Twitter": "@una" - }, - { - "Name": "Jules Kremer", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynote Speeches, Angular, Women in Tech", - "Location": "Mountain View & San Diego, CA & Maui, HI", - "Twitter": "@jules_kremer" - }, - { - "Name": "Cara Kuei", - "Type": "Speakers", - "Region": "United States", - "Topics": "JavaScript, React", - "Location": "Los Angeles, CA", - "Twitter": "@carakuei" - }, - { - "Name": "Deborah Kurata", - "Type": "Speakers", - "Region": "United States", - "Topics": "Angular, C#, Software Best Practices", - "Location": "San Francisco Bay/Silicon Valley Area", - "Twitter": "@deborahkurata" - }, - { - "Name": "Pearl Latteier", - "Type": "Speakers", - "Region": "United States", - "Topics": "JavaScript, Web Components, PWAs", - "Location": "Madison, WI", - "Twitter": "@TwitterHandle" - }, - { - "Name": "Tracy Lee", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynote Speeches, JavaScript, NativeScript, React Native, React, Angular, Women in Tech, Startup, Entrepreneurship", - "Location": "Bay Area / San Francisco, CA & Raleigh, NC", - "Twitter": "@ladyleet" - }, - { - "Name": "Gina Likins", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynote Speeches, open source in education, eTextiles & small circuits, open source communities, communication & conflict resolution, open organizations, open source principles", - "Location": "Raleigh, NC", - "Twitter": "@lintqueen" - }, - { - "Name": "Susan Lin", - "Type": "Speakers", - "Region": "United States", - "Topics": "Design Strategy, Design Systems, Leadership, Management & Strategy, Visual Thinking.", - "Location": "San Francisco (SF), CA, USA", - "Twitter": "@mintlodica" - }, - { - "Name": "Devon Lindsey", - "Type": "Speakers", - "Region": "United States", - "Topics": "JavaScript, React", - "Location": "San Francisco, CA", - "Twitter": "@devonbl" - }, - { - "Name": "Stacy London", - "Type": "Speakers", - "Region": "United States", - "Topics": "JavaScript, React", - "Location": "San Francisco, CA", - "Twitter": "@devonbl" - }, - { - "Name": "Jen Looper", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynote Speeches, JavaScript, NativeScript, Web and Mobile Development, IOT, Machine Learning", - "Location": "Boston, MA", - "Twitter": "@jenlooper" - }, - { - "Name": "Jen Luker", - "Type": "Speakers", - "Region": "United States", - "Topics": "Accessibility, Webpack, JavaScript, Imposter Syndrome", - "Location": "Orem, UT", - "Twitter": "@knitcodemonkey" - }, - { - "Name": "Tara Z. Manicsic", - "Type": "Speakers", - "Region": "United States", - "Topics": "JavaScript, PWAs, Node.js, Web Technology, Vue/React/Angular, APIs", - "Location": "Cincinnati, OH", - "Twitter": "@tzmanics" - }, - { - "Name": "Jenny A. Manning", - "Type": "Speakers", - "Region": "United States", - "Topics": "History of programming languages, Scala, Java, C++, Software Architecture", - "Location": "Pittsburgh, PA", - "Twitter": "@j41manning" - }, - { - "Name": "Jessica Mauerhan", - "Type": "Speakers", - "Region": "United States", - "Topics": "PHP, Code Quality, Testing (TDD/BDD), Community", - "Location": "McKinney, TX", - "Twitter": "@jessicamauerhan" - }, - { - "Name": "Rachel Arst McCullough", - "Type": "Speakers", - "Region": "United States", - "Topics": null, - "Location": "Truckee, CA, USA", - "Twitter": "@ArstMcCullough" - }, - { - "Name": "Kathleen McMahon", - "Type": "Speakers", - "Region": "United States", - "Topics": "Accessibility, React, Design Systems, Open Source, Women in Tech", - "Location": "Boston, MA", - "Twitter": "@resource11" - }, - { - "Name": "Catherine Meade", - "Type": "Speakers", - "Region": "United States", - "Topics": "CSS, HTML, JavaScript, GitHub, a11y, CMSs, FrontEnd, Design, Design Systems, Collaboration, Workshops, Women in Tech", - "Location": "Dayton, OH, USA", - "Twitter": "@catheraaine" - }, - { - "Name": "Stefana Muller", - "Type": "Speakers", - "Region": "United States", - "Topics": "Developer Evangelism, DevOps, Agile, Product Management, Docker deployment, Continuous Deployment, Machine Learning for Application Optimization, Women in Tech, Careers in Tech, Personal Branding, Hour of Code, Social Media for Kids (Safety), meetup, Keynotes, Public Speaking, wordpress, css, divi theme.", - "Location": "New York, NY, USA", - "Twitter": "@stefanamuller" - }, - { - "Name": "Linda Nichols", - "Type": "Speakers", - "Region": "United States", - "Topics": "Serverless, NodeBots, Open Source/Github", - "Location": "Norfolk, VA", - "Twitter": "@lynnaloo" - }, - { - "Name": "Rachel Ober", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynote, Writing, Speaking, Open Source Software, CSS, Sass, Ruby, Ruby on Rails, RailsBridge, Mentoring, Starting non-profit organizations, Personal Branding, Community Building, creating programming course curriculum, teaching people how to program, teaching people how to teach people how to program", - "Location": "New York, NY", - "Twitter": "@rachelober" - }, - { - "Name": "Heidi Olsen", - "Type": "Speakers", - "Region": "United States", - "Topics": "CSS, HTML, Web Animations, SVGs, Design Systems, APIs, Solution Architecture, Email Development, a11y", - "Location": "Portland, OR, USA", - "Twitter": "@swisswebmiss" - }, - { - "Name": "Alejandra Quetzalli Olvera-Novack", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynote Speeches, Cloud Computing, AWS, CSS3 Animations, HTML5, Web Accesability, UI Architecture, Front-End UI, Women In Tech, Diversity & Inclusion, Tech Education, JavaScript, NodeJS, NPM, Git, Documentation Best Practices", - "Location": "Seattle, WA, USA", - "Twitter": "@QuetzalliAle" - }, - { - "Name": "Eryn O'Neil", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynote Speeches, Tech Leading/Tech Management, Leadership, Project Chaos, UX for Developers, Software Ethics, PHP, the human people parts of software development", - "Location": "Minneapolis, MN", - "Twitter": "@eryno" - }, - { - "Name": "Lyndsey Padget", - "Type": "Speakers", - "Region": "United States", - "Topics": "Git, REST, Node.js, JavaScript, Microservices, Back-end development, Public Speaking, Java, Women in Tech, Work/life balance, Badassery", - "Location": "Kansas City, MO", - "Twitter": "@lyndseypadget" - }, - { - "Name": "Caterina Paun", - "Type": "Speakers", - "Region": "United States", - "Topics": "Prototyping, React, design systems, voice apps, NLP, community building, leadership", - "Location": "Portland, OR, USA", - "Twitter": "@caterinasworld" - }, - { - "Name": "Violet Pe�a", - "Type": "Speakers", - "Region": "United States", - "Topics": "JavaScript, Socket.IO, React, Creative Coding", - "Location": "Portland, OR", - "Twitter": "" - }, - { - "Name": "Michelle Perz", - "Type": "Speakers", - "Region": "United States", - "Topics": "Ansible Automation (Tower, Engine), Devops, Open Source", - "Location": "Rochester, NY, USA", - "Twitter": "@pinkfiregoddess" - }, - { - "Name": "Maggie Pint", - "Type": "Speakers", - "Region": "United States", - "Topics": "Open Source Sustainability, JavaScript Libraries, Standards/TC39, DateTime, Azure/Cloud", - "Location": "Redmond, WA", - "Twitter": "@maggiepint" - }, - { - "Name": "Eve Porcello", - "Type": "Speakers", - "Region": "United States", - "Topics": "React, GraphQL", - "Location": "Tahoe City, CA", - "Twitter": "@eveporcello" - }, - { - "Name": "Natalie Qabazard", - "Type": "Speakers", - "Region": "United States", - "Topics": "JavaScript, React", - "Location": "San Francisco, CA", - "Twitter": "@natqab" - }, - { - "Name": "Samantha Qui�ones", - "Type": "Speakers", - "Region": "United States", - "Topics": "Ethics, Leadership, Inclusion, PHP, Scaling", - "Location": "New York City, NY", - "Twitter": "@ieatkillerbees" - }, - { - "Name": "Peggy Rayzis", - "Type": "Speakers", - "Region": "United States", - "Topics": "Workshops, JavaScript, Universal Components, React, React Native, GraphQL, Apollo GraphQL", - "Location": "Hoboken, NJ", - "Twitter": "@peggyrayzis" - }, - { - "Name": "Colleen Schnettler", - "Type": "Speakers", - "Region": "United States", - "Topics": "Ruby on Rails, Freelancing, Women in Tech/Engineering", - "Location": "VA, USA", - "Twitter": "@leenyburger" - }, - { - "Name": "Neem Serra", - "Type": "Speakers", - "Region": "United States", - "Topics": "Swift, unconscious bias (being a cupcake in a doughnut world), and intro to programming", - "Location": "St. Louis, MO", - "Twitter": "@TeamNeem" - }, - { - "Name": "Lizzie Siegle", - "Type": "Speakers", - "Region": "United States", - "Topics": "Workshops, JavaScript, Swift, Haskell, meetups, hackathons", - "Location": "Bryn Mawr, PA + San Francisco, CA", - "Twitter": "@lizziepika" - }, - { - "Name": "Jen Simmons", - "Type": "Speakers", - "Region": "United States", - "Topics": "CSS, Layouts, Grids", - "Location": "Brooklyn, NY", - "Twitter": "@jensimmons" - }, - { - "Name": "Emily Stamey", - "Type": "Speakers", - "Region": "United States", - "Topics": "Event Sourcing, Legacy Application Development, Organizing Meetups/Communities, WomenInTech", - "Location": "Raleigh, NC", - "Twitter": "@elstamey" - }, - { - "Name": "Marcy Sutton", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynote Speeches, JavaScript & Accessibility", - "Location": "Bellingham, WA", - "Twitter": "@marcysutton" - }, - { - "Name": "Heather Taylor", - "Type": "Speakers", - "Region": "United States", - "Topics": "Transitioning from Print Designer to Web Developer, Apprenticeships", - "Location": "Dayton, OH, USA", - "Twitter": "@heatherhonie" - }, - { - "Name": "Anagha Todalbagi", - "Type": "Speakers", - "Region": "United States", - "Topics": "Go, Python, start up experience", - "Location": "San Francisco, CA, USA", - "Twitter": "@AnaghaTodalbagi" - }, - { - "Name": "Beth Tucker Long", - "Type": "Speakers", - "Region": "United States", - "Topics": "PHP, WordPress, Web Development Practices - see my [list of slides](http://www.treelinedesign.com/slides) and [talk feedback](https://joind.in/user/e3betht/talks)", - "Location": "Madison, WI", - "Twitter": "@e3betht" - }, - { - "Name": "Raquel V�lez", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynote Speeches, JavaScript, Node.js, npm, Front-End, Robots", - "Location": "Bay Area / San Francisco, CA", - "Twitter": "@rockbot" - }, - { - "Name": "Jennifer Wadella", - "Type": "Speakers", - "Region": "United States", - "Topics": "JavaScript, Jewelbots, Community Building, Women in Tech", - "Location": "Kansas City, MO", - "Twitter": "@likeOMGitsFEDAY" - }, - { - "Name": "Brittany Walker", - "Type": "Speakers", - "Region": "United States", - "Topics": "CSS (Sass), JavaScript, Animations, Illustrations, Front-End, React", - "Location": "Washington, DC", - "Twitter": "@musicalwebdev" - }, - { - "Name": "Hilary Weaver-Robb", - "Type": "Speakers", - "Region": "United States", - "Topics": "Software Testing, REST Web Service and API Testing, Test Automation using C#, TFS Test Manager, Relationships between Devs and Testers", - "Location": "Detroit, MI", - "Twitter": "@g33klady" - }, - { - "Name": "Estelle Weyl", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynote Speeches, CSS, JavaScript, Accessibility, Standards, Web Performance", - "Location": "San Francisco, CA", - "Twitter": "@estellevw" - }, - { - "Name": "Rachel White", - "Type": "Speakers", - "Region": "United States", - "Topics": "Keynote Speeches, JavaScript, Node.js, Creative Coding, Bots, IoT, Hardware / Robotics, Cyberpunk, Educating new devs, Community, AI", - "Location": "Brooklyn, NY.", - "Twitter": "@ohhoe" - }, - { - "Name": "Sarah Withee", - "Type": "Speakers", - "Region": "United States", - "Topics": "Hardware/robotics, workshops, women in tech, mental health in tech", - "Location": "Kansas City, MO, US", - "Twitter": "@geekygirlsarah" - }, - { - "Name": "Shirley Wu", - "Type": "Speakers", - "Region": "United States", - "Topics": "Data Viz, JavaScript, React", - "Location": "San Francisco, CA", - "Twitter": "@sxywu" - }, - { - "Name": "Ayseg�l Y�net", - "Type": "Speakers", - "Region": "United States", - "Topics": "JavaScript, Angular, VR", - "Location": "San Francisco, CA", - "Twitter": "@AysSomething" - }, - { - "Name": "Caree Youngman", - "Type": "Speakers", - "Region": "United States", - "Topics": "Women in Tech, impostor syndrome, Javascript, Accessibility, Front End,", - "Location": "Dallas, TX, US", - "Twitter": "@careecodes" - }, - { - "Name": "Lauren Tan", - "Type": "Speakers", - "Region": "United States", - "Topics": "TypeScript, Javascript, Frontend, Elixir, Ruby, Functional programming, Microservices", - "Location": "SF Bay Area, CA, USA", - "Twitter": "@sugarpirate_" - }, - { - "Name": "Helena McCabe", - "Type": "Speakers", - "Region": "United States", - "Topics": "Web Accessibility, Drupal", - "Location": "Orlando, FL, USA", - "Twitter": "@misshelenasue" - }, - { - "Name": "Tammy B�tow", - "Type": "Speakers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@tammybutow" - }, - { - "Name": "Neha Jain", - "Type": "Speakers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@_nehajain" - }, - { - "Name": "Ayesha Mazumdar", - "Type": "Speakers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@ayeshakmaz" - }, - { - "Name": "Laura Laban", - "Type": "Speakers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@lauraviatrix" - }, - { - "Name": "Amanda Sopkin", - "Type": "Speakers", - "Region": "United States", - "Topics": "Mathematics, Python, Web Development, Best practices in Software Engineering", - "Location": "Seattle, WA, USA", - "Twitter": "@amandasopkin" - }, - { - "Name": "Jigyasa Grover", - "Type": "Speakers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@gmail.com" - }, - { - "Name": "Srishti Sethi", - "Type": "Speakers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@Srish_Aka_Tux" - }, - { - "Name": "Ali Spittel", - "Type": "Speakers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@aspittel" - }, - { - "Name": "Shruti Kapoor", - "Type": "Speakers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@shrutikapoor" - }, - { - "Name": "Adhithi Ravichandran", - "Type": "Speakers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@AdhithiRavi" - }, - { - "Name": "Myriam Jessier", - "Type": "Speakers", - "Region": "Canada", - "Topics": "SEO, Marketing, Search, UX", - "Location": null, - "Twitter": "@myriamjessier" - }, - { - "Name": "Sage Franch", - "Type": "Speakers", - "Region": "Canada", - "Topics": "AI, blockchain, diversity and inclusion, futurism", - "Location": "Toronto, Ontario, Canada", - "Twitter": "@thetrendytechie" - }, - { - "Name": "Sarah Kraynick", - "Type": "Speakers", - "Region": "Canada", - "Topics": null, - "Location": "Split my time between Prince Albert Sk, Vancvouer BC, and Amsterdam NL.", - "Twitter": "@luvnumberz" - }, - { - "Name": "Sophie D�ziel", - "Type": "Speakers", - "Region": "Canada", - "Topics": null, - "Location": "Montreal, Quebec, Canada", - "Twitter": "@sophiedeziel" - }, - { - "Name": "Christina Moro", - "Type": "Speakers", - "Region": "Canada", - "Topics": "AI, robotics, diversity and inclusion, Canadian startup ecosystem", - "Location": "Toronto, ON, Canada & Montreal, QC, Canada", - "Twitter": "" - }, - { - "Name": "Britt Barak", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Android (developement, OS, UX), Communities.", - "Location": "Tel Aviv, Israel", - "Twitter": "@BrittBarak" - }, - { - "Name": "Janet Bastiman", - "Type": "Speakers", - "Region": "Europe", - "Topics": "AI, biologically inspired computing, productionising data science, building great tech teams, continous lifecycle, python, docker", - "Location": "London, UK (will travel nationally and internationally)", - "Twitter": "@yssybyl" - }, - { - "Name": "Victoria Bergquist", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Vue.js, CSS, Diversity, Communities", - "Location": "Frankfurt, Germany (will travel nationally and internationally)", - "Twitter": "@vicbergquist" - }, - { - "Name": "Eliza Camberogiannis", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Android, VUI (conversational apps), diversity, communities", - "Location": "Amsterdam, the Netherlands", - "Twitter": "@elizacamber" - }, - { - "Name": "Ada Rose Cannon", - "Type": "Speakers", - "Region": "Europe", - "Topics": "WebVR, Progressive Web Apps, Web Technology, Samsung Internet Web Browser", - "Location": "London, UK", - "Twitter": "@lady_ada_king" - }, - { - "Name": "Amanda Cavallaro", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Conversational experience - chatbots, women in technology, diversity and inclusion, community.", - "Location": "London, United Kingdom.", - "Twitter": "@chibichibibr" - }, - { - "Name": "Annabel Church", - "Type": "Speakers", - "Region": "Europe", - "Topics": null, - "Location": "Berlin, Germany", - "Twitter": "@annabelchurch" - }, - { - "Name": "Simona Cotin", - "Type": "Speakers", - "Region": "Europe", - "Topics": "JavaScript, Angular, Node.js, Azure", - "Location": "London, UK", - "Twitter": "@simona_cotin" - }, - { - "Name": "Sara Di Bartolomeo", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Generative Art, Data Science, Data Visualization, Computer Graphics", - "Location": "Rome, Italy", - "Twitter": "" - }, - { - "Name": "Ingrid Epure", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Ember, Security, DevOps", - "Location": "Dublin, Ireland", - "Twitter": "@ingridepure" - }, - { - "Name": "Sal Freudenberg", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Neurodiversity, Mob programming, Cucumber, Agile", - "Location": "UK", - "Twitter": "@SalFreudenberg" - }, - { - "Name": "Serena Fritsch", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Building Product, Ember, Javascript", - "Location": "Dublin, Ireland", - "Twitter": "@serifritsch" - }, - { - "Name": "Oana Galbenu", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Keynote Speeches, HTML, CSS and preprocessors, Agile", - "Location": "Bucharest, Romania", - "Twitter": "@oanaalex" - }, - { - "Name": "Ola Gasidlo", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Keynote Speeches, Offline First, Web Compat", - "Location": "Berlin, Germany", - "Twitter": "@misprintedtype" - }, - { - "Name": "Aur�lie Guillaume", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Internationalization, Good practice, Code Quality, PHP, Symfony", - "Location": "Paris, France,", - "Twitter": "@slig36" - }, - { - "Name": "Marie Guillaumet", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Accessibility, UX, HTML/CSS, WordPress, diversity, women in tech", - "Location": "Rennes, France", - "Twitter": "@kReEsTaL" - }, - { - "Name": "Felienne Hermans", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Programming, Programming Education, Programming for kids", - "Location": "Rotterdam, the Netherlands (will travel nationally & internationally)", - "Twitter": "@felienne" - }, - { - "Name": "Franziska Hinkelmann", - "Type": "Speakers", - "Region": "Europe", - "Topics": "JavaScript VMs, Chrome V8", - "Location": "Munich, Germany", - "Twitter": "@fhinkel" - }, - { - "Name": "Marja H�ltt�", - "Type": "Speakers", - "Region": "Europe", - "Topics": "JavaScript Parsers, Chrome V8", - "Location": "Munich, Germany", - "Twitter": "@marjakh" - }, - { - "Name": "Sophie Huts", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Web, PWA, Firebase", - "Location": "Lviv, Ukraine (will travel nationally & internationally)", - "Twitter": "@sophie_h29" - }, - { - "Name": "Sally Lait", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Digital transformation and change, web technologies, APIs, JAMstack, strategy, open data, keynotes, MC", - "Location": "Suffolk, UK", - "Twitter": "@sallylait" - }, - { - "Name": "Eva Lettner", - "Type": "Speakers", - "Region": "Europe", - "Topics": "CSS, Animation", - "Location": "Vienna, Austria", - "Twitter": "@eva_trostlos" - }, - { - "Name": "Steph Locke", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Data Science, Microsoft Data Platform, DataOps", - "Location": "Cardiff, UK (will travel nationally & internationally)", - "Twitter": "@stefflocke" - }, - { - "Name": "Marta Maxymiak", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Web, Payments", - "Location": "Lviv, Ukraine (will travel nationally & internationally)", - "Twitter": "@marta.maxymiak" - }, - { - "Name": "Vasylyna Mytsak", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Development, Typescript, Angular, JavaScript, Community building, Tech event management", - "Location": "Lviv, Ukraine (will travel nationally & internationally)", - "Twitter": "@vasylyna.mytsak" - }, - { - "Name": "Srushtika Neelakantam", - "Type": "Speakers", - "Region": "Europe", - "Topics": "WebVR, A-Frame, Web Technologies, Realtime Technologies, deepstream.io", - "Location": "Berlin, Germany", - "Twitter": "@Srushtika" - }, - { - "Name": "Diana Pinchuk", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Software testing", - "Location": "Lviv, Ukraine (will travel nationally & internationally)", - "Twitter": "@diana_pinchuk" - }, - { - "Name": "Adi Polak", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Big Data, Java, Scala, AI, Kotlin, Serverless, Security, Mentorship, Startups", - "Location": "Tel Aviv, Israel (will travel nationally and internationally)", - "Twitter": "@adipolak" - }, - { - "Name": "Carmen Popoviciu", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Keynote Speeches, Angular, Polymer, Machine Learning, Community", - "Location": "Amsterdam, Netherlands", - "Twitter": "@CarmenPopoviciu" - }, - { - "Name": "Irina Preda", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Community, Diversity and Inclusion, Machine Learning, Algorithmic Fairness", - "Location": "Edinburgh, United Kingdom", - "Twitter": "@IrinaPreda" - }, - { - "Name": "Maaret Pyh�j�rvi", - "Type": "Speakers", - "Region": "Europe", - "Topics": null, - "Location": "Helsinki, Finland", - "Twitter": "@maaretp" - }, - { - "Name": "Manel Rhaiem (Manel, Rhaiem)", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Business Intelligence, Data Science, Web Technologies", - "Location": "Budapest, Hungary", - "Twitter": "@manelbutterfly" - }, - { - "Name": "Ineke Scheffers", - "Type": "Speakers", - "Region": "Europe", - "Topics": null, - "Location": null, - "Twitter": "@FYIneke](https://twitter.com/fyineke) & [@GirlCodeNL" - }, - { - "Name": "Kseniia Shumelchyk", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Android, Architecture design, UI/UX, Wearables, Communities", - "Location": "Dnipro, Ukraine", - "Twitter": "@KseniiaS" - }, - { - "Name": "Agata Sobek", - "Type": "Speakers", - "Region": "Europe", - "Topics": "SCRUM, Agile, KANBAN, LeSS, Team building, #noestimates, soft skills", - "Location": "Wroclaw, Poland", - "Twitter": "@gmail.com" - }, - { - "Name": "Carolyn Stransky", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Accessibility, Documentation, Self-care", - "Location": "Berlin, Germany", - "Twitter": "@carolstran" - }, - { - "Name": "Bo Vandersteene", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Keynote Speeches, Angular, Typescript, Javascript.", - "Location": "Kortrijk, Belgium.", - "Twitter": "@reibo_bo" - }, - { - "Name": "Natalia Venditto", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Frontend Architecture, Frontend Development, Javascript, Web Performance", - "Location": "Barcelona, Spain (will travel nationally & internationally)", - "Twitter": "@anfibiacreativa" - }, - { - "Name": "Stephanie Walter", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Design, Mobile, UX, CSS, HTML, Javascript", - "Location": "Luxembourg", - "Twitter": "@WalterStephanie " - }, - { - "Name": "Kim van Wilgen", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Continuous delivery, DevSecOps, leadership / lead development, culture / organisation", - "Location": "the Netherlands (will travel nationally and internationally)", - "Twitter": "@kimvanwilgen" - }, - { - "Name": "Hannah Wolfe", - "Type": "Speakers", - "Region": "Europe", - "Topics": "JavaScript, sustainable Open Source projects", - "Location": "Northhampton, UK", - "Twitter": "@erisDS" - }, - { - "Name": "Alina Yurenko", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Java, JVM, GraalVM", - "Location": "Lviv, Ukraine (will travel nationally & internationally)", - "Twitter": "@alina_yurenko" - }, - { - "Name": "Laura Morillo-Velarde", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Kubernetes, Google Cloud, Nodejs, Ruby, TDD, Extreme Programming", - "Location": "Madrid, Spain (will travel nationally & internationally)", - "Twitter": "@laura_morillo" - }, - { - "Name": "Tereza Iofciu", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Data Science, Data Engineering", - "Location": "Hambburg, Germany", - "Twitter": "@terezaif" - }, - { - "Name": "Ana Cidre", - "Type": "Speakers", - "Region": "Europe", - "Topics": "JavaScript, Angular, Diversity and Inclusion, Community.", - "Location": "Sanxenxo, Spain", - "Twitter": "@AnaCidre_" - }, - { - "Name": "Natalia Tepluhina", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Vue, TypeScript, RxJS", - "Location": "Kyiv, Ukraine (will travel nationally and internationally)", - "Twitter": "@N_Tepluhina" - }, - { - "Name": "Olga Petrova", - "Type": "Speakers", - "Region": "Europe", - "Topics": "Javascript, Web, Frameworks, UI components, Ext JS", - "Location": "Munich, Germany (will travel nationally and internationally)", - "Twitter": "@tyoushe" - }, - { - "Name": "Sara Vieira", - "Type": "Speakers", - "Region": "Europe", - "Topics": "React, Vue, GraphQL", - "Location": "Berlin, Germany", - "Twitter": "@NikkitaFTW" - }, - { - "Name": "Bhavani Ravi", - "Type": "Speakers", - "Region": "India", - "Topics": null, - "Location": "Chennai, India", - "Twitter": "@geeky_bhavani" - }, - { - "Name": "Khushbu Parakh", - "Type": "Speakers", - "Region": "India", - "Topics": "Cloud Computing, Python, Automation Testing, Open Source", - "Location": "Bengaluru, Karnataka, India", - "Twitter": "@TwitterHandle" - }, - { - "Name": "Ramya Authappan", - "Type": "Speakers", - "Region": "India", - "Topics": null, - "Location": "Chennai, India", - "Twitter": "@atramya" - }, - { - "Name": "Manjula Dube", - "Type": "Speakers", - "Region": "India", - "Topics": null, - "Location": "Mumbai, India", - "Twitter": "@manjula_dube" - }, - { - "Name": "Kritika Maheshwari", - "Type": "Speakers", - "Region": "India", - "Topics": "Open Web Technologies, Rust", - "Location": "Hyderabad, India", - "Twitter": "@mozkri" - }, - { - "Name": "Shagufta Gurmukhdas", - "Type": "Speakers", - "Region": "India", - "Topics": "WebVR, Deep learning", - "Location": "Pune, India", - "Twitter": "@mozkri" - }, - { - "Name": "Palak Jain", - "Type": "Speakers", - "Region": "India", - "Topics": null, - "Location": "Hackathons", - "Twitter": "@till-tomorrow" - }, - { - "Name": "Apoorva Tiwari", - "Type": "Speakers", - "Region": "India", - "Topics": "Google Technology | Mobile | Cloud | Women in Tech | Community", - "Location": "Hyderabad, IN", - "Twitter": "@apoorva_tiw" - }, - { - "Name": "Sara Soueidan", - "Type": "Speakers", - "Region": "Lebanon", - "Topics": "Keynote Speeches, CSS, SVG", - "Location": "Lebanon", - "Twitter": "@SaraSoueidan" - }, - { - "Name": "Ire Aderinokun", - "Type": "Speakers", - "Region": "Nigeria", - "Topics": "HTML/CSS, JavaScript, Accessibility, Progressive Enhancement", - "Location": "Lagos, Nigeria", - "Twitter": "@IreAderinokun" - }, - { - "Name": "Moyinoluwa Adeyemi", - "Type": "Speakers", - "Region": "Nigeria", - "Topics": null, - "Location": "Lagos, Nigeria", - "Twitter": "@moyheen" - }, - { - "Name": "Emem Brownson", - "Type": "Speakers", - "Region": "Nigeria", - "Topics": "Android, Java, Kotlin, Firebase products for Android, Women in tech, How to build a startup, BMC or LMC", - "Location": "Uyo, Nigeria", - "Twitter": "@brownjee001" - }, - { - "Name": "Ada Nduka Oyom", - "Type": "Speakers", - "Region": "Nigeria", - "Topics": "HTML/CSS, JavaScript, Python, Keynote speeches, Women in tech, Community", - "Location": "Lagos, Nigeria", - "Twitter": "@kolokodess" - }, - { - "Name": "Egwuenu Gift", - "Type": "Speakers", - "Region": "Nigeria", - "Topics": "JavaScript, HTML/CSS, Tech Community", - "Location": "Lagos, Nigeria", - "Twitter": "@lauragift21" - }, - { - "Name": "Nenne 'Adora' Nwodo", - "Type": "Speakers", - "Region": "Nigeria", - "Topics": "Android Development, Software Design Patterns, Game Development, DevOps, JavaScript, VueJS, Mobile Experiences", - "Location": "Lagos, Nigeria", - "Twitter": "@theadoranwodo" - }, - { - "Name": "Gergana Young", - "Type": "Speakers", - "Region": "South Africa", - "Topics": "Javascript, Angular, IoT", - "Location": "Johannesburg, Gauteng, South Africa", - "Twitter": "@GerybBg" - }, - { - "Name": "Jade Abbott", - "Type": "Speakers", - "Region": "South Africa", - "Topics": "Machine Learning, Deep learning, Artificial Intelligence, DataOps, Data Engineering", - "Location": "Johannesburg, Gauteng, South Africa", - "Twitter": "@alienelf" - }, - { - "Name": "Pamela Hill", - "Type": "Speakers", - "Region": "South Africa", - "Topics": "Kotlin, Android, User Experience for developers", - "Location": "Pretoria, Gauteng, South Africa", - "Twitter": "@pamelaahill" - }, - { - "Name": "Rebecca Franks", - "Type": "Speakers", - "Region": "South Africa", - "Topics": "Android, Java, Kotlin, Open source", - "Location": "Johannesburg, Gauteng, South Africa", - "Twitter": "@riggaroo" - }, - { - "Name": "Ridhwana Khan", - "Type": "Speakers", - "Region": "South Africa", - "Topics": "ReactJS, Ember.js, CSS, Rails, Women in Tech, Diversity in Tech", - "Location": "Johannesburg, Gauteng, South Africa", - "Twitter": "@Ridhwana_K" - }, - { - "Name": "Hong Phuc Dang", - "Type": "Speakers", - "Region": "Asia", - "Topics": "Open Source AI,SUSI.AI, Open Data, FashionTech", - "Location": "Singapore, Vietnam, and around Asia.", - "Twitter": "@hpdang" - }, - { - "Name": "Xiaoli Shen", - "Type": "Speakers", - "Region": "Japan", - "Topics": "JavaScript (React, Node), Golang, Web Development, Full-stack, Career in Tech, Creative Technologies", - "Location": "Tokyo, Japan | sometimes Frankfurt, Germany (willing to travel elsewhere)", - "Twitter": "@furixturi" - }, - { - "Name": "Jina Anne", - "Type": "Organizers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@jina" - }, - { - "Name": "Jessica Dene Earley-Cha", - "Type": "Organizers", - "Region": "United States", - "Topics": null, - "Location": "San Francisco, CA", - "Twitter": "@chatasweetie" - }, - { - "Name": "Kara Carrell", - "Type": "Organizers", - "Region": "United States", - "Topics": null, - "Location": "Chicago, IL, USA", - "Twitter": "@WSCChicago" - }, - { - "Name": "K.C. Jones-Evans", - "Type": "Organizers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@kcjonesevans" - }, - { - "Name": "Anastasia Lanz", - "Type": "Organizers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@anastasialanz" - }, - { - "Name": "Erin LeDell", - "Type": "Organizers", - "Region": "United States", - "Topics": null, - "Location": "Bay Area, CA, USA", - "Twitter": "@ledell" - }, - { - "Name": "Tracy Lee", - "Type": "Organizers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@ladyleet" - }, - { - "Name": "Stefana Muller", - "Type": "Organizers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@liwomenintech" - }, - { - "Name": "Nitya Narashimhan", - "Type": "Organizers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@nitya" - }, - { - "Name": "Linda Nichols", - "Type": "Organizers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@lynnaloo" - }, - { - "Name": "Caterina Paun", - "Type": "Organizers", - "Region": "United States", - "Topics": null, - "Location": "Portland, OR, USA", - "Twitter": "@caterinasworld" - }, - { - "Name": "Margaret Valtierra", - "Type": "Organizers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@Margaretvaltie" - }, - { - "Name": "Beth Tucker Long", - "Type": "Organizers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@e3betht" - }, - { - "Name": "Estelle Weyl", - "Type": "Organizers", - "Region": "United States", - "Topics": null, - "Location": null, - "Twitter": "@estellevw" - }, - { - "Name": "Laurence de Villers", - "Type": "Organizers", - "Region": "Canada", - "Topics": null, - "Location": null, - "Twitter": "@L\\_de\\_V" - }, - { - "Name": "Heather Payne", - "Type": "Organizers", - "Region": "Canada", - "Topics": null, - "Location": "Toronto, ON", - "Twitter": "@heatherpayne" - }, - { - "Name": "Laura Morinigo", - "Type": "Organizers", - "Region": "Argentina", - "Topics": null, - "Location": "Buenos Aires, Argentina", - "Twitter": "@lala_morinigo" - }, - { - "Name": "Eva Ferreira", - "Type": "Organizers", - "Region": "Argentina", - "Topics": null, - "Location": "Buenos Aires, Argentina", - "Twitter": "@evaferreira92" - }, - { - "Name": "Diana Rodriguez", - "Type": "Organizers", - "Region": "Argentina", - "Topics": null, - "Location": "Worldwide", - "Twitter": "@cotufa82" - }, - { - "Name": "Britt Barak", - "Type": "Organizers", - "Region": "Europe", - "Topics": null, - "Location": null, - "Twitter": "@BrittBarak" - }, - { - "Name": "Victoria Bergquist", - "Type": "Organizers", - "Region": "Europe", - "Topics": null, - "Location": "Frankfurt, Germany", - "Twitter": "@vicbergquist" - }, - { - "Name": "Eliza Camberogiannis", - "Type": "Organizers", - "Region": "Europe", - "Topics": null, - "Location": "Amsterdam, the Netherlands", - "Twitter": "@elizacamber" - }, - { - "Name": "Amanda Cavallaro", - "Type": "Organizers", - "Region": "Europe", - "Topics": null, - "Location": "London, United Kingdom", - "Twitter": "@chibichibibr" - }, - { - "Name": "Annabel Church", - "Type": "Organizers", - "Region": "Europe", - "Topics": null, - "Location": "Berlin, Germany", - "Twitter": "@annabelchurch" - }, - { - "Name": "Sophie Huts", - "Type": "Organizers", - "Region": "Europe", - "Topics": null, - "Location": "Lviv, Ukraine", - "Twitter": "@sophie_h29" - }, - { - "Name": "Madlaina Kalunder", - "Type": "Organizers", - "Region": "Europe", - "Topics": null, - "Location": null, - "Twitter": "@anialdam" - }, - { - "Name": "Sherry List", - "Type": "Organizers", - "Region": "Europe", - "Topics": null, - "Location": null, - "Twitter": "@sherrrylst" - }, - { - "Name": "Marta Maxymiak", - "Type": "Organizers", - "Region": "Europe", - "Topics": null, - "Location": "Lviv, Ukraine", - "Twitter": "@marta.maxymiak" - }, - { - "Name": "Vasylyna Mytsak", - "Type": "Organizers", - "Region": "Europe", - "Topics": null, - "Location": "Lviv, Ukraine", - "Twitter": "@vasylyna.mytsak" - }, - { - "Name": "Diana Pinchuk", - "Type": "Organizers", - "Region": "Europe", - "Topics": null, - "Location": "Lviv, Ukraine", - "Twitter": "@diana_pinchuk" - }, - { - "Name": "Natalie Pistunovich", - "Type": "Organizers", - "Region": "Europe", - "Topics": null, - "Location": null, - "Twitter": "@nataliepis" - }, - { - "Name": "Maaret Pyh�j�rvi", - "Type": "Organizers", - "Region": "Europe", - "Topics": null, - "Location": null, - "Twitter": "@maaretp" - }, - { - "Name": "Kseniia Shumelchyk", - "Type": "Organizers", - "Region": "Europe", - "Topics": null, - "Location": "Dnipro, Ukraine", - "Twitter": "@KseniiaS" - }, - { - "Name": "Katerina Skroumpelou", - "Type": "Organizers", - "Region": "Europe", - "Topics": null, - "Location": "Athens, Greece", - "Twitter": "@psybercity" - }, - { - "Name": "Alina Yurenko", - "Type": "Organizers", - "Region": "Europe", - "Topics": null, - "Location": "Lviv, Ukraine", - "Twitter": "@alina_yurenko" - }, - { - "Name": "Laura Morillo-Velarde", - "Type": "Organizers", - "Region": "Europe", - "Topics": null, - "Location": "Madrid, Spain", - "Twitter": "@laura_morillo" - }, - { - "Name": "Ada Nduka Oyom", - "Type": "Organizers", - "Region": "Nigeria", - "Topics": null, - "Location": "Lagos, Nigeria", - "Twitter": "@kolokodess" - }, - { - "Name": "Emem Brownson", - "Type": "Organizers", - "Region": "Nigeria", - "Topics": null, - "Location": "Uyo, Nigeria", - "Twitter": "@brownjee001" - }, - { - "Name": "Egwuenu Gift", - "Type": "Organizers", - "Region": "Nigeria", - "Topics": null, - "Location": "Lagos, Nigeria", - "Twitter": "@lauragift21" - }, - { - "Name": "Thaissa Candella", - "Type": "Organizers", - "Region": "Brazil", - "Topics": null, - "Location": "Campinas, SP, Brazil", - "Twitter": "" - }, - { - "Name": "Japan", - "Type": "Organizers", - "Region": "Asia", - "Topics": null, - "Location": "Tokyo, Japan", - "Twitter": "@tuttiq" - }, - { - "Name": "Xiaoli Shen", - "Type": "Organizers", - "Region": "Asia", - "Topics": null, - "Location": "Tokyo, Japan (remote anywhere)", - "Twitter": "@furixturi" - }, - { - "Name": "Larene Le Gassick", - "Type": "Organizers", - "Region": "Australia", - "Topics": null, - "Location": "Brisbane, Australia", - "Twitter": "@larenelg" - }, - { - "Name": "Kris Howard", - "Type": "Organizers", - "Region": "Australia", - "Topics": null, - "Location": "Australia, Singapore, Hong Kong", - "Twitter": "@web_goddess" - }, - { - "Name": "Tanya Butenko", - "Type": "Organizers", - "Region": "Australia", - "Topics": null, - "Location": "Sydney, Australia", - "Twitter": "@ButenkoMe" - }, - { - "Name": "Rachel Ober", - "Type": "Mentors", - "Region": "United States", - "Topics": null, - "Location": "New York NY", - "Twitter": "@rachelober" - }, - { - "Name": "Sean Larkin", - "Type": "Mentors", - "Region": "United States", - "Topics": null, - "Location": "Seattle, WA, USA", - "Twitter": "@TheLarkInn" - }, - { - "Name": "Anagha Todalbagi", - "Type": "Mentors", - "Region": "United States", - "Topics": null, - "Location": "San Francisco, CA, USA", - "Twitter": "@AnaghaTodalbagi" - }, - { - "Name": "Ann Marie Fred", - "Type": "Mentors", - "Region": "United States", - "Topics": null, - "Location": "St. Louis, MO, USA (relocating from Reasearch Triangle Park, NC, USA)", - "Twitter": "@DukeAMO" - }, - { - "Name": " Manjula Dune", - "Type": "Mentors", - "Region": "India", - "Topics": null, - "Location": "Mumbai, India", - "Twitter": "@manjula_dube" - }, - { - "Name": "Ada Nduka Oyom", - "Type": "Mentors", - "Region": "Nigeria", - "Topics": null, - "Location": "Lagos, Nigeria", - "Twitter": "@kolokodess" - }, - { - "Name": "Nenne 'Adora' Nwodo", - "Type": "Mentors", - "Region": "Nigeria", - "Topics": null, - "Location": "Lagos, Nigeria", - "Twitter": "@theadoranwodo" - }, - { - "Name": "Emem Brownson", - "Type": "Mentors", - "Region": "Nigeria", - "Topics": null, - "Location": "Uyo, Nigeria", - "Twitter": "@brownjee001" - }, - { - "Name": "Oana Galbenu", - "Type": "Mentors", - "Region": "Europe", - "Topics": null, - "Location": "Bucharest, Romania, other Romanian cities, or any location via Skype (or other media)", - "Twitter": "@oanaalex" - }, - { - "Name": "Madlaina Kalunder", - "Type": "Mentors", - "Region": "Europe", - "Topics": null, - "Location": "Zurich, Switzerland, the Netherlands, any location", - "Twitter": "@anialdam" - }, - { - "Name": "Martin Splitt", - "Type": "Mentors", - "Region": "Europe", - "Topics": null, - "Location": null, - "Twitter": "@g33konaut" - }, - { - "Name": "Ania Kapuscinska", - "Type": "Mentors", - "Region": "Europe", - "Topics": null, - "Location": "London, UK (remote contact also ok)", - "Twitter": "@lambdanis" - }, - { - "Name": "Japan", - "Type": "Mentors", - "Region": "Asia", - "Topics": null, - "Location": "Tokyo, Japan", - "Twitter": "@tuttiq" - }, - { - "Name": "Pavithra Kodmad", - "Type": "Mentors", - "Region": "Australia", - "Topics": null, - "Location": "Sydney, Australia", - "Twitter": "@pkodmad" - }, - { - "Name": "Daisy Smith", - "Type": "Mentors", - "Region": "Australia", - "Topics": null, - "Location": "Sydney, Australia", - "Twitter": "@daisysmells" - }, - { - "Name": "Tanya Butenko", - "Type": "Mentors", - "Region": "Australia", - "Topics": null, - "Location": "Sydney, Australia", - "Twitter": "@ButenkoMe" - } - ] -} \ No newline at end of file diff --git a/DialogflowDemo/SearchTest/Program.cs b/DialogflowDemo/SearchTest/Program.cs deleted file mode 100644 index fc9fe27a..00000000 --- a/DialogflowDemo/SearchTest/Program.cs +++ /dev/null @@ -1,57 +0,0 @@ -using System; -using System.Linq; -using System.Threading.Tasks; -using Google.Cloud.Firestore; -using MentorSearchModels; - -namespace SearchTest -{ - /// - /// Just a simple program to allow us to test searching quickly without deploying to Dialogflow etc. - /// This smells of code duplication, of course - but for prototyping, it's a quick and easy approach. - /// If this were more than a prototype, I'd write a separate local web application allowing a Dialogflow - /// request to be crafted then sent to the webhook. - /// - class Program - { - static async Task Main(string[] args) - { - if (args.Length != 4) - { - Console.WriteLine("Please specify project ID, name, city and topic"); - return; - } - - FirestoreDb db = FirestoreDb.Create(args[0]); - - string name = EmptyToNull(args[1]); - string city = EmptyToNull(args[2]); - string topic = EmptyToNull(args[3]); - - Query query = db.Collection("mentors"); - if (name != null) - { - query = query.WhereGreaterThanOrEqualTo("Name", name).WhereLessThan("Name", name + "~"); - } - if (city != null) - { - query = query.WhereEqualTo("Location", city.ToLowerInvariant()); - } - if (topic != null) - { - query = query.WhereArrayContains("Topics", topic.ToLowerInvariant()); - } - var results = await query.GetSnapshotAsync().ConfigureAwait(false); - var mentors = results.Select(doc => doc.ConvertTo()).OrderBy(m => m.Name).ToList(); - - Console.WriteLine($"{mentors.Count} results"); - foreach (var mentor in mentors) - { - Console.WriteLine(mentor.Name); - } - } - - // It can be annoying to try to get empty command line arguments; treat "-" as a missing parameter. - static string EmptyToNull(string input) => input == "-" || input == "" ? null : input; - } -} diff --git a/DialogflowDemo/SearchTest/SearchTest.csproj b/DialogflowDemo/SearchTest/SearchTest.csproj deleted file mode 100644 index 0de3eb7c..00000000 --- a/DialogflowDemo/SearchTest/SearchTest.csproj +++ /dev/null @@ -1,14 +0,0 @@ - - - - Exe - netcoreapp2.1 - latest - - - - - - - - diff --git a/DigiMixer/DigiMixer.AllenAndHeath.Core/AHControlClient.cs b/DigiMixer/DigiMixer.AllenAndHeath.Core/AHControlClient.cs deleted file mode 100644 index 21c0b1c0..00000000 --- a/DigiMixer/DigiMixer.AllenAndHeath.Core/AHControlClient.cs +++ /dev/null @@ -1,20 +0,0 @@ -using DigiMixer.Core; -using Microsoft.Extensions.Logging; - -namespace DigiMixer.AllenAndHeath.Core; - -public sealed class AHControlClient : TcpMessageProcessingControllerBase -{ - public event EventHandler? MessageReceived; - - public AHControlClient(ILogger logger, string host, int port) : base(logger, host, port, bufferSize: 65540) - { - } - - protected override Task ProcessMessage(AHRawMessage message, CancellationToken cancellationToken) - { - Logger.LogTrace("Received control message: {message}", message); - MessageReceived?.Invoke(this, message); - return Task.CompletedTask; - } -} diff --git a/DigiMixer/DigiMixer.AllenAndHeath.Core/AHMessageFormat.cs b/DigiMixer/DigiMixer.AllenAndHeath.Core/AHMessageFormat.cs deleted file mode 100644 index 1634bd94..00000000 --- a/DigiMixer/DigiMixer.AllenAndHeath.Core/AHMessageFormat.cs +++ /dev/null @@ -1,16 +0,0 @@ -namespace DigiMixer.AllenAndHeath.Core; - -public enum AHMessageFormat -{ - VariableLength, - - /// - /// Total of 8 bytes: the fixed-length indicator and 7 bytes of data - /// - FixedLength8, - - /// - /// Total of 9 bytes: the fixed-length indicator and 8 bytes of data - /// - FixedLength9 -} diff --git a/DigiMixer/DigiMixer.AllenAndHeath.Core/AHMeterClient.cs b/DigiMixer/DigiMixer.AllenAndHeath.Core/AHMeterClient.cs deleted file mode 100644 index 997af6a4..00000000 --- a/DigiMixer/DigiMixer.AllenAndHeath.Core/AHMeterClient.cs +++ /dev/null @@ -1,49 +0,0 @@ -using DigiMixer.AllenAndHeath.Core; -using DigiMixer.Core; -using Microsoft.Extensions.Logging; -using System.Buffers; -using System.Net; - -namespace AllenAndHeath.Core; - -public class AHMeterClient : UdpControllerBase, IDisposable -{ - private readonly MemoryPool SendingPool = MemoryPool.Shared; - - public ushort LocalUdpPort { get; } - public event EventHandler? MessageReceived; - - private AHMeterClient(ILogger logger, ushort localUdpPort) : base(logger, localUdpPort) - { - LocalUdpPort = localUdpPort; - } - - public AHMeterClient(ILogger logger) : this(logger, FindAvailableUdpPort()) - { - } - - public async Task SendAsync(AHRawMessage message, IPEndPoint mixerUdpEndPoint, CancellationToken cancellationToken) - { - if (Logger.IsEnabled(LogLevel.Trace)) - { - Logger.LogTrace("Sending keep-alive message"); - } - using var memoryOwner = SendingPool.Rent(message.Length); - var memory = memoryOwner.Memory[..message.Length]; - message.CopyTo(memory.Span); - await Send(memory, mixerUdpEndPoint, cancellationToken); - } - - protected override void ProcessData(ReadOnlySpan data) - { - if (AHRawMessage.TryParse(data) is not AHRawMessage message) - { - return; - } - if (Logger.IsEnabled(LogLevel.Trace)) - { - Logger.LogTrace("Received meter message: {message}", message); - } - MessageReceived?.Invoke(this, message); - } -} diff --git a/DigiMixer/DigiMixer.AllenAndHeath.Core/AHRawMessage.cs b/DigiMixer/DigiMixer.AllenAndHeath.Core/AHRawMessage.cs deleted file mode 100644 index f6804295..00000000 --- a/DigiMixer/DigiMixer.AllenAndHeath.Core/AHRawMessage.cs +++ /dev/null @@ -1,128 +0,0 @@ -using DigiMixer.Core; -using System.Buffers.Binary; - -namespace DigiMixer.AllenAndHeath.Core; - -/// -/// A raw, uninterpreted (other than format and type) Allen and Heath message. -/// -public sealed class AHRawMessage : IMixerMessage -{ - private const byte VariableLengthPrefix = 0x7f; - private const byte FixedLengthPrefix = 0xf7; - - public AHMessageFormat Format { get; } - - /// - /// The message type, which is null if and only if the format is FixedLength8 or FixedLength9. - /// - public byte? Type { get; } - - private ReadOnlyMemory data; - - public ReadOnlySpan Data => data.Span; - - private AHRawMessage(AHMessageFormat format, byte? type, ReadOnlyMemory data) - { - Format = format; - Type = type; - this.data = data; - } - - public static AHRawMessage ForFixedLength(ReadOnlyMemory data) - { - var format = data.Length switch - { - 7 => AHMessageFormat.FixedLength8, - 8 => AHMessageFormat.FixedLength9, - _ => throw new ArgumentException() - }; - return new(format, null, data); - } - - public static AHRawMessage ForVariableLength(byte type, ReadOnlyMemory data) => - new(AHMessageFormat.VariableLength, type, data); - - /// - /// Length of the total message, including header. - /// - public int Length => Format switch - { - AHMessageFormat.VariableLength => Data.Length + 6, - AHMessageFormat.FixedLength8 => 8, - AHMessageFormat.FixedLength9 => 9, - _ => throw new InvalidOperationException() - }; - - public static AHRawMessage? TryParse(ReadOnlySpan data) - { - if (data.Length == 0) - { - return null; - } - return data[0] switch - { - VariableLengthPrefix => TryParseVariableLength(data.ToArray()), - FixedLengthPrefix => TryParseFixedLength(data.ToArray()), - _ => throw new ArgumentException($"Invalid data: first byte is 0x{data[0]:x2}") - }; - } - - private static AHRawMessage? TryParseVariableLength(ReadOnlyMemory data) - { - if (data.Length < 6) - { - return null; - } - byte type = data.Span[1]; - int dataLength = BinaryPrimitives.ReadInt32LittleEndian(data[2..6].Span); - if (data.Length < dataLength + 6) - { - return null; - } - return new AHRawMessage(AHMessageFormat.VariableLength, type, data[6..(dataLength + 6)].ToArray()); - } - - private static AHRawMessage? TryParseFixedLength(ReadOnlyMemory data) - { - if (data.Length < 8) - { - return null; - } - // Last of these has only been seen on the SQ... - if ((data.Span[1] == 0x12 && data.Span[3] == 0x23) || - (data.Span[1] == 0x13 && data.Span[3] == 0x16) || - (data.Span[1] == 0x1a && data.Span[2] == 0x1a && data.Span[3] == 0x26)) - { - if (data.Length < 9) - { - return null; - } - return ForFixedLength(data[1..9]); - } - - return ForFixedLength(data[1..8]); - } - - public override string ToString() => $"Type={Type}; Length={Data.Length}"; - - public void CopyTo(Span buffer) - { - switch (Format) - { - case AHMessageFormat.VariableLength: - buffer[0] = VariableLengthPrefix; - buffer[1] = Type!.Value; - BinaryPrimitives.WriteInt32LittleEndian(buffer.Slice(2, 4), Data.Length); - data.Span.CopyTo(buffer.Slice(6)); - break; - case AHMessageFormat.FixedLength8: - case AHMessageFormat.FixedLength9: - buffer[0] = FixedLengthPrefix; - data.Span.CopyTo(buffer.Slice(1)); - break; - default: - throw new InvalidOperationException(); - } - } -} diff --git a/DigiMixer/DigiMixer.AllenAndHeath.Core/DigiMixer.AllenAndHeath.Core.csproj b/DigiMixer/DigiMixer.AllenAndHeath.Core/DigiMixer.AllenAndHeath.Core.csproj deleted file mode 100644 index d63e8663..00000000 --- a/DigiMixer/DigiMixer.AllenAndHeath.Core/DigiMixer.AllenAndHeath.Core.csproj +++ /dev/null @@ -1,12 +0,0 @@ - - - - net9.0 - enable - enable - - - - - - diff --git a/DigiMixer/DigiMixer.AppCore/ChannelAppearance.cs b/DigiMixer/DigiMixer.AppCore/ChannelAppearance.cs deleted file mode 100644 index cce489c6..00000000 --- a/DigiMixer/DigiMixer.AppCore/ChannelAppearance.cs +++ /dev/null @@ -1,70 +0,0 @@ -using JonSkeet.CoreAppUtil; - -namespace DigiMixer.AppCore; - -/// -/// The overall appearance of an input or output channel. -/// -public class ChannelAppearance : ViewModelBase -{ - private const string White = "White"; - - private static readonly string[] defaultBrushes = - { - "AntiqueWhite", - "Beige", - "BurlyWood", - "CadetBlue", - "Gold", - "Lavender", - "Khaki", - "LavenderBlush", - "LemonChiffon", - "LightBlue", - "LightCyan", - "LightGreen", - "LightPink", - "LightSalmon", - "LightSkyBlue", - "LightSteelBlue", - "MediumAquamarine", - "MediumTurquoise", - "MistyRose", - "Moccasin", - "Orchid", - "PaleTurquoise", - "PapayaWhip", - "PeachPuff", - "Pink", - "Plum", - "Silver", - "SkyBlue", - "Violet", - "YellowGreen" - }; - - public string Background { get; } - - private bool visible; - public bool Visible - { - get => visible; - set => SetProperty(ref visible, value); - } - - internal static ChannelAppearance ForMapping(ChannelMapping mapping) - { - var brush = !string.IsNullOrEmpty(mapping.Color) ? mapping.Color - : mapping.Channel == 100 ? White - : defaultBrushes[mapping.Channel % defaultBrushes.Length]; - return new ChannelAppearance(brush, mapping.InitiallyVisible); - } - - internal static ChannelAppearance CreateVisibleWhite() => new ChannelAppearance(White, true); - - private ChannelAppearance(string background, bool visible) - { - Background = background; - Visible = visible; - } -} diff --git a/DigiMixer/DigiMixer.AppCore/ChannelMapping.cs b/DigiMixer/DigiMixer.AppCore/ChannelMapping.cs deleted file mode 100644 index 84a349ec..00000000 --- a/DigiMixer/DigiMixer.AppCore/ChannelMapping.cs +++ /dev/null @@ -1,61 +0,0 @@ -using Newtonsoft.Json; - -namespace DigiMixer.AppCore; - -/// -/// A mapping between an configuration channel ID (text-based, user-configurable) -/// and a DigiMixer channel ID (largely opaque integer), with an optional display name. -/// -public class ChannelMapping -{ - /// - /// The mixer channel ID (for the relevant input or output). - /// The precise numbers available will depend on hardware. - /// - public int Channel { get; set; } - - /// - /// The ID used within the configuration file. - /// - public string Id { get; set; } - - /// - /// An optional display name. - /// - public string DisplayName { get; set; } - - /// - /// The background colour to use (or leave empty to use the default). - /// - public string Color { get; set; } - - /// - /// Whether the channel should be shown by default to start with. - /// - public bool InitiallyVisible { get; set; } - - /// - /// Optional short name to use for constrained UIs (e.g. digital scribble strips). - /// - public string ShortName { get; set; } - - /// - /// The effective display name, which is with a fallback to . - /// - [JsonIgnore] - public string EffectiveDisplayName => DisplayName ?? Id; - - /// - /// The effective short name, which is with a fallback to . - /// - [JsonIgnore] - public string EffectiveShortName => ShortName ?? EffectiveDisplayName; - - /// - /// For output channels, set to true if this is a foldback channel. - /// Foldback channels can be muted/unmuted on a per-scene basis. - /// - public bool Foldback { get; set; } - - public override string ToString() => DisplayName is null ? Id : $"{DisplayName} ({Id})"; -} diff --git a/DigiMixer/DigiMixer.AppCore/ChannelStripGroupViewModel.cs b/DigiMixer/DigiMixer.AppCore/ChannelStripGroupViewModel.cs deleted file mode 100644 index 0fd2c77a..00000000 --- a/DigiMixer/DigiMixer.AppCore/ChannelStripGroupViewModel.cs +++ /dev/null @@ -1,28 +0,0 @@ -using JonSkeet.CoreAppUtil; - -namespace DigiMixer.AppCore; - -/// -/// Simple representation of a group of channels, each with an associated set of -/// faders. This is used to display group boxes, e.g. "Inputs" and "Outputs" -/// or just "Outputs" (but with faders per input). -/// -public class ChannelGroupViewModel : ViewModelBase -{ - public string Name { get; } - public IReadOnlyList Channels { get; } - - private bool visible; - public bool Visible - { - get => visible; - set => SetProperty(ref visible, value); - } - - internal ChannelGroupViewModel(string name, IReadOnlyList channels, bool initialVisibility) - { - Name = name; - Channels = channels; - Visible = initialVisibility; - } -} diff --git a/DigiMixer/DigiMixer.AppCore/ChannelViewModelBase.cs b/DigiMixer/DigiMixer.AppCore/ChannelViewModelBase.cs deleted file mode 100644 index 44a1db3e..00000000 --- a/DigiMixer/DigiMixer.AppCore/ChannelViewModelBase.cs +++ /dev/null @@ -1,225 +0,0 @@ -using DigiMixer.Core; -using JonSkeet.CoreAppUtil; -using Microsoft.Extensions.Logging; -using NodaTime; -using System.ComponentModel; - -namespace DigiMixer.AppCore; - -public abstract class ChannelViewModelBase : ViewModelBase, IChannelViewModelBase where T : ChannelBase -{ - private T channel; - [RelatedProperties(nameof(DisplayName), nameof(Output), nameof(StereoOutput), nameof(Muted), nameof(HasMute), nameof(HasMeters))] - private T Channel - { - get => channel; - set - { - var oldChannel = channel; - if (SetProperty(ref channel, value)) - { - Notifications.MaybeUnsubscribe(oldChannel, HandleChannelPropertyChanged); - Notifications.MaybeSubscribe(channel, HandleChannelPropertyChanged); - } - } - } - - public ChannelId ChannelId { get; } - public string Id { get; } - - public ChannelAppearance Appearance { get; } - - public string DisplayName { get; } - public string ShortName { get; } - - /// - /// Whether this channel has mute capabilities. - /// If this is false, the mute button should not be shown. - /// - public bool HasMute { get; set; } = true; - - /// - /// Whether this channel supports meters. The and - /// are convenience properties for view purposes, combining and (for the right meter) - /// whether the channel is stereo. - /// - [RelatedProperties(nameof(HasLeftMeter), nameof(HasRightMeter))] - public bool HasMeters { get; set; } = true; - public bool HasLeftMeter => HasMeters; - public bool HasRightMeter => HasMeters && (Channel?.IsStereo ?? false); - - public MeterLevel Output => Channel?.MeterLevel ?? default; - public MeterLevel StereoOutput => Channel?.StereoMeterLevel ?? default; - - private MeterLevel peakOutput; - public MeterLevel PeakOutput - { - get => peakOutput; - private set => SetProperty(ref peakOutput, value); - } - - private MeterLevel stereoPeakOutput; - public MeterLevel StereoPeakOutput - { - get => stereoPeakOutput; - private set => SetProperty(ref stereoPeakOutput, value); - } - - public bool Muted - { - get => Channel?.Muted ?? false; - set => Channel?.SetMuted(value); - } - - public IReadOnlyList Faders { get; protected set; } = new List(); - - private readonly PeakBuffer peakBuffer; - private readonly PeakBuffer stereoPeakBuffer; - private readonly double? feedbackMutingThreshold; - private readonly Duration? feedbackMutingDuration; - - /// - /// When we last started detecting feedback. - /// - private Instant? feedbackStart; - /// - /// Number of samples we've seen above the feedback threshold. - /// - private int feedbackCount; - - public ChannelViewModelBase( - ChannelId channelId, ChannelMapping mapping, - double? feedbackMutingThreshold = null, Duration? feedbackMutingDuration = null) - { - ChannelId = channelId; - Id = mapping.Id; - Appearance = ChannelAppearance.ForMapping(mapping); - DisplayName = mapping.EffectiveDisplayName ?? channelId.ToString(); - ShortName = mapping.EffectiveShortName ?? DisplayName; - // TODO: Make this configurable - peakBuffer = new PeakBuffer(TimeSpan.FromSeconds(1).Ticks); - stereoPeakBuffer = new PeakBuffer(TimeSpan.FromSeconds(1).Ticks); - this.feedbackMutingThreshold = feedbackMutingThreshold; - this.feedbackMutingDuration = feedbackMutingDuration; - } - - internal void UpdatePeakOutputs(ILogger logger) - { - PeakOutput = peakBuffer.UpdatePeak(Output); - StereoPeakOutput = stereoPeakBuffer.UpdatePeak(StereoOutput); - MaybeHandleFeedback(logger); - } - - private void MaybeHandleFeedback(ILogger logger) - { - if (feedbackMutingThreshold is null || feedbackMutingDuration is null) - { - return; - } - if (Output.Value < feedbackMutingThreshold.Value && StereoOutput.Value < feedbackMutingThreshold.Value) - { - feedbackStart = null; - feedbackCount = 0; - return; - } - // (We can inject a clock if we ever want to test this...) - var now = SystemClock.Instance.GetCurrentInstant(); - feedbackCount++; - if (feedbackStart is null) - { - feedbackStart = now; - } - else - { - var duration = now - feedbackStart.Value; - if (duration >= feedbackMutingDuration.Value && !Muted) - { - logger.LogWarning("Muting channel {channel} ({description}) due to feedback ({count} samples observed)", ChannelId, DisplayName, feedbackCount); - Muted = true; - } - } - } - - public void UpdateFromMixer(Mixer mixer) - { - Channel = GetChannels(mixer).FirstOrDefault(ch => ch.LeftOrMonoChannelId == ChannelId); - foreach (var fader in Faders) - { - fader.PopulateFromMixer(mixer); - } - } - - protected abstract IEnumerable GetChannels(Mixer mixer); - - private void HandleChannelPropertyChanged(object sender, PropertyChangedEventArgs e) - { - switch (e.PropertyName) - { - case nameof(ChannelBase.Name): - RaisePropertyChanged(nameof(DisplayName)); - break; - case nameof(ChannelBase.Muted): - RaisePropertyChanged(nameof(Muted)); - break; - case nameof(ChannelBase.MeterLevel): - RaisePropertyChanged(nameof(Output)); - PeakOutput = peakBuffer.UpdatePeak(Output); - break; - case nameof(ChannelBase.StereoMeterLevel): - RaisePropertyChanged(nameof(StereoOutput)); - StereoPeakOutput = stereoPeakBuffer.UpdatePeak(StereoOutput); - break; - } - } - - private class PeakBuffer - { - private readonly Queue queue; - private MeterLevel currentPeak; - private readonly long bufferPeriodTicks; - - internal PeakBuffer(long bufferPeriodTicks) - { - this.bufferPeriodTicks = bufferPeriodTicks; - queue = new Queue(); - currentPeak = MeterLevel.MinValue; - } - - /// - /// Adds a value to the buffer, trimming the buffer and returning the current peak. - /// - internal MeterLevel UpdatePeak(MeterLevel value) - { - long now = DateTime.UtcNow.Ticks; - - // First trim, remembering whether or not we've trimmed away our current peak. - bool trimmedPeak = false; - while (queue.TryPeek(out var oldest) && oldest.ExpiryTicks < now) - { - queue.Dequeue(); - trimmedPeak |= oldest.Value == currentPeak; - } - - // If the new value is greater than the "old peak", that's definitely - // the new peak. - if (value > currentPeak) - { - currentPeak = value; - } - - // Otherwise, if (and only if) we've removed the "old peak", we need - // to recalculate. - else if (trimmedPeak) - { - currentPeak = queue.Count == 0 ? MeterLevel.MinValue : queue.Max(entry => entry.Value); - } - - // Now we've worked out the new peak, enqueue the new value with a suitable expiry. - queue.Enqueue(new OutputRecord(now + bufferPeriodTicks, value)); - - return currentPeak; - } - - record struct OutputRecord(long ExpiryTicks, MeterLevel Value); - } -} diff --git a/DigiMixer/DigiMixer.AppCore/DigiMixer.AppCore.csproj b/DigiMixer/DigiMixer.AppCore/DigiMixer.AppCore.csproj deleted file mode 100644 index 58656e74..00000000 --- a/DigiMixer/DigiMixer.AppCore/DigiMixer.AppCore.csproj +++ /dev/null @@ -1,16 +0,0 @@ - - - - net9.0 - enable - - - - - - - - - - - diff --git a/DigiMixer/DigiMixer.AppCore/DigiMixerConfig.cs b/DigiMixer/DigiMixer.AppCore/DigiMixerConfig.cs deleted file mode 100644 index a8c5a446..00000000 --- a/DigiMixer/DigiMixer.AppCore/DigiMixerConfig.cs +++ /dev/null @@ -1,134 +0,0 @@ -using DigiMixer.BehringerWing; -using DigiMixer.Core; -using DigiMixer.CqSeries; -using DigiMixer.DmSeries; -using DigiMixer.Mackie; -using DigiMixer.Osc; -using DigiMixer.QuSeries; -using DigiMixer.TfSeries; -using DigiMixer.UCNet; -using DigiMixer.UiHttp; -using Microsoft.Extensions.Logging; -using Newtonsoft.Json; -using System.ComponentModel; - -namespace DigiMixer.AppCore; - -/// -/// Configuration for the mixer. -/// -public class DigiMixerConfig -{ - /// - /// Whether this is a fake mixer or not. This is populated on initialization. - /// - [JsonIgnore] - public bool Fake { get; set; } - - /// - /// Whether the mixer is enabled. This allows the fake to be set up even - /// if the mixer is otherwise fully configured. - /// - [DefaultValue(true)] - public bool Enabled { get; set; } = true; - - public string Address { get; set; } - public int? Port { get; set; } - - public MixerHardwareType HardwareType { get; set; } - - /// - /// The level (0-1) at which feedback is detected. - /// Defaults to null, in which case feedback muting is disabled. - /// - public double? FeedbackMutingThreshold { get; set; } - - /// - /// The duration (in milliseconds) for which the input level must be at or above - /// before the input channel is automatically muted. - /// Defaults to 100 (1/10th of a second). - /// - [DefaultValue(100)] - public int FeedbackMutingMillis { get; set; } = 100; - - /// - /// Name of the X-Touch Mini device as a MIDI port. - /// - public string XTouchMiniDevice { get; set; } - - [DefaultValue(5)] - public int XTouchSensitivity { get; set; } = 5; - - /// - /// Whether the main fader on the X-Touch Mini should be used for the main volume. - /// - [DefaultValue(true)] - public bool XTouchMainVolumeEnabled { get; set; } = true; - - /// - /// Name of the iCON Platform M+ device as a MIDI port. - /// - [JsonProperty("IconM+Device")] - public string IconMPlusDevice { get; set; } - - /// - /// Name of the iCON Platform X+ device as a MIDI port. - /// - [JsonProperty("IconX+Device")] - public string IconXPlusDevice { get; set; } - - public List InputChannels { get; set; } = new List(); - - /// - /// The display names of mixer output channels. For a stereo output - /// only the lower channel number is required. An output index - /// of 0 means "main bus". - /// - public List OutputChannels { get; set; } = new List(); - - public IMixerApi CreateMixerApi(ILogger logger, MixerApiOptions options = null) - { - if (Fake || !Enabled) - { - return new FakeMixerApi(this); - } - return HardwareType switch - { - MixerHardwareType.Fake => new FakeMixerApi(this), - MixerHardwareType.XAir => XAir.CreateMixerApi(logger, Address, Port ?? 10024, options), - MixerHardwareType.X32 => X32.CreateMixerApi(logger, Address, Port ?? 10023, options), - MixerHardwareType.SoundcraftUi => new UiHttpMixerApi(logger, Address, Port ?? 80, options), - MixerHardwareType.AllenHeathQu => QuMixer.CreateMixerApi(logger, Address, Port ?? 51326, options), - // We don't provide inbound port customization, but it would be easy to do if we ever needed to. - MixerHardwareType.RcfM18 => Rcf.CreateMixerApi(logger, Address, Port ?? 8000, options: options), - MixerHardwareType.MackieDL => new MackieMixerApi(logger, Address, Port ?? 50001, options), - MixerHardwareType.StudioLive => StudioLive.CreateMixerApi(logger, Address, Port ?? 53000, options), - MixerHardwareType.AllenHeathCq => CqMixer.CreateMixerApi(logger, Address, Port ?? 51326, options), - MixerHardwareType.YamahaDm => DmMixer.CreateMixerApi(logger, Address, Port ?? 50368, options), - MixerHardwareType.YamahaTf => TfMixer.CreateMixerApi(logger, Address, Port ?? 50368, options), - MixerHardwareType.BehringerWing => WingMixer.CreateMixerApi(logger, Address, Port ?? 2222, options), - _ => throw new InvalidOperationException($"Unknown mixer type: {HardwareType}") - }; - } - - public enum MixerHardwareType - { - Fake, - XAir, - BehringerXAir = XAir, - // The M32C appears to be identical to the X32 in terms of OSC. - X32, - M32 = X32, - MidasM32 = X32, - BehringerX32 = X32, - SoundcraftUi, - AllenHeathQu, - RcfM18, - MackieDL, - StudioLive, - AllenHeathCq, - YamahaDm, - YamahaTf, - BehringerWing - } -} diff --git a/DigiMixer/DigiMixer.AppCore/DigiMixerSnapshot.cs b/DigiMixer/DigiMixer.AppCore/DigiMixerSnapshot.cs deleted file mode 100644 index e044a7e7..00000000 --- a/DigiMixer/DigiMixer.AppCore/DigiMixerSnapshot.cs +++ /dev/null @@ -1,85 +0,0 @@ -namespace DigiMixer.AppCore; - -/// -/// Snapshot of mixer status, with respect to configuration mappings. -/// -public class DigiMixerSnapshot -{ - public Dictionary InputChannels { get; set; } - public Dictionary OutputChannels { get; set; } - - /// - /// Creates a snapshot from the given MixerViewModel, or returns null if - /// not all channels have received data yet. - /// - public static DigiMixerSnapshot FromMixerViewModel(DigiMixerViewModel vm) => - new DigiMixerSnapshot - { - InputChannels = vm.InputChannels.ToDictionary(vm => vm.Id, MixerInputChannelSnapshot.FromChannelViewModel), - OutputChannels = vm.OutputChannels.ToDictionary(vm => vm.Id, MixerOutputChannelSnapshot.FromChannelViewModel) - }; - - public void CopyToViewModel(DigiMixerViewModel vm) - { - foreach (var input in vm.InputChannels) - { - if (InputChannels.TryGetValue(input.Id, out var snapshot)) - { - snapshot.CopyToViewModel(input); - } - } - foreach (var output in vm.OutputChannels) - { - if (OutputChannels.TryGetValue(output.Id, out var snapshot)) - { - snapshot.CopyToViewModel(output); - } - } - } -} - -public class MixerInputChannelSnapshot -{ - public bool Muted { get; set; } - public Dictionary FaderLevels { get; set; } - - public static MixerInputChannelSnapshot FromChannelViewModel(InputChannelViewModel vm) => - new MixerInputChannelSnapshot - { - Muted = vm.Muted, - FaderLevels = vm.Faders.ToDictionary(f => f.OutputId, f => f.FaderLevel) - }; - - public void CopyToViewModel(InputChannelViewModel vm) - { - vm.Muted = Muted; - foreach (var fader in vm.Faders) - { - if (FaderLevels.TryGetValue(fader.OutputId, out var level)) - { - fader.FaderLevel = level; - } - } - } -} - -public class MixerOutputChannelSnapshot -{ - public bool? Muted { get; set; } - public int FaderLevel { get; set; } - - public static MixerOutputChannelSnapshot FromChannelViewModel(OutputChannelViewModel vm) => new MixerOutputChannelSnapshot - { - FaderLevel = vm.OverallFader.FaderLevel, - Muted = vm.Muted - }; - - public void CopyToViewModel(OutputChannelViewModel vm) - { - vm.OverallFader.FaderLevel = FaderLevel; - if (Muted is bool muted) - { - vm.Muted = muted; - } - } -} diff --git a/DigiMixer/DigiMixer.AppCore/DigiMixerViewModel.cs b/DigiMixer/DigiMixer.AppCore/DigiMixerViewModel.cs deleted file mode 100644 index 6467688b..00000000 --- a/DigiMixer/DigiMixer.AppCore/DigiMixerViewModel.cs +++ /dev/null @@ -1,283 +0,0 @@ -using DigiMixer.Core; -using JonSkeet.CoreAppUtil; -using Microsoft.Extensions.Logging; -using NodaTime; -using System.Windows.Input; - -namespace DigiMixer.AppCore; - -/// -/// The view model for the mixer, which may initial not be connected. -/// Once the mixer has been connected once, the configuration is assumed to -/// be static, even if it disconnects and reconnects. -/// -public class DigiMixerViewModel : ViewModelBase, IDisposable -{ - /// - /// Input channels with associated output faders. - /// - public IReadOnlyList InputChannels { get; } - - /// - /// Output channels with all associated faders (input channels and overall) - /// - public IReadOnlyList OutputChannels { get; } - - /// - /// Output channels with a single fader each (just the overall output). - /// - public IReadOnlyList OverallOutputChannels { get; } - - /// - /// Input channels with no associated faders. - /// - public IReadOnlyList InputsWithNoFaders { get; } - - /// - /// A channel group of inputs, with a fader per visible output. - /// This is shown as in the "group by input" configuration. - /// - public ChannelGroupViewModel InputsGroup { get; } - - /// - /// A channel group of outputs, with a main fader and a fader per visible input. - /// This is shown as in the "group by output" configuration. - /// - public ChannelGroupViewModel OutputsWithInputsGroup { get; } - - /// - /// A channel group of just outputs with main faders. - /// This is shown as in the "group by input" configuration. - /// - public ChannelGroupViewModel OverallOutputsGroup { get; } - - /// - /// A channel group of just inputs, with no faders (so just mute buttons and meters). - /// This is shown as in the "group by output" configuration. - /// - public ChannelGroupViewModel InputsMuteAndMeterGroup { get; } - - private bool groupByInput = true; - /// - /// Whether the channels should be grouped by input (i.e. one "channel strip" per input, - /// showing all the output faders for that input, with another strip for all the "overall - /// outputs" below) or grouped by output (i.e. one channel strip per output, with all - /// the inputs and the overall output at the start). - /// - [RelatedProperties(nameof(GroupByOutput))] - public bool GroupByInput - { - get => groupByInput; - set - { - if (SetProperty(ref groupByInput, value)) - { - InputsGroup.Visible = value; - OverallOutputsGroup.Visible = value; - OutputsWithInputsGroup.Visible = !value; - InputsMuteAndMeterGroup.Visible = !value; - } - } - } - - // The inverse of GroupByInput, just for simple binding. - public bool GroupByOutput - { - get => !GroupByInput; - set => GroupByInput = !value; - } - - public ICommand MuteAllCommand { get; } - - private readonly ILogger logger; - - internal DigiMixerConfig Config { get; } - private Mixer mixer; - private bool disposed; - - public StatusViewModel Status { get; } = new StatusViewModel("Mixer"); - public int MaxFaderLevelValue => mixer?.FaderScale.MaxValue ?? 1_000_000; - - public DigiMixerViewModel(ILogger logger, DigiMixerConfig config, MixerApiOptions options = null) - { - Config = config; - this.logger = logger; - Status.ReportNormal("Connecting"); - MuteAllCommand = ActionCommand.FromAction(MuteAll); - - // We build up the input/output channels in two passes, as they need to refer to each other. - Duration feedbackMutingDuration = Duration.FromMilliseconds(config.FeedbackMutingMillis); - InputChannels = config.InputChannels.ToReadOnlyList(mapping => new InputChannelViewModel(mapping, config.FeedbackMutingThreshold, feedbackMutingDuration)); - OutputChannels = config.OutputChannels.ToReadOnlyList(mapping => new OutputChannelViewModel(mapping)); - OverallOutputChannels = config.OutputChannels.ToReadOnlyList(mapping => new OutputChannelViewModel(mapping)); - InputsWithNoFaders = config.InputChannels.ToReadOnlyList(mapping => new InputChannelViewModel(mapping, null, null)); - - foreach (var inputChannel in InputChannels) - { - inputChannel.SetFaders(OutputChannels); - } - foreach (var outputChannel in OutputChannels) - { - outputChannel.SetFaders(InputChannels); - } - foreach (var outputChannel in OverallOutputChannels) - { - outputChannel.SetFaders(Enumerable.Empty()); - } - // No SetFaders call for InputsWithNoFaders - - // START OF HACK - // The Wing has a "Main LR" channel which doesn't have its own overall fader, mute or meter. - // We don't want to show those UI elements, but it's an odd thing to model on its own. - // For the moment, we detect that we're using a Wing and just handle things appropriately. - if (Config.HardwareType == DigiMixerConfig.MixerHardwareType.BehringerWing) - { - // Note: no change for InputChannels, as we *want* the fader there. - // Remove the "overall output" fader, meters and mute for Main LR when grouping by output. - foreach (var outputChannel in OutputChannels) - { - if (outputChannel.ChannelId.IsMainOutput) - { - outputChannel.RemoveOverallOutputFader(); - outputChannel.HasMeters = false; - outputChannel.HasMute = false; - } - } - // Remove the whole "overall output" element when grouping by output. - OverallOutputChannels = OverallOutputChannels.Where(c => !c.ChannelId.IsMainOutput).ToReadOnlyList(); - } - // END OF HACK - - InputsGroup = new ChannelGroupViewModel("Inputs", InputChannels, true); - OutputsWithInputsGroup = new ChannelGroupViewModel("Outputs", OutputChannels, false); - OverallOutputsGroup = new ChannelGroupViewModel("Outputs", OverallOutputChannels, true); - InputsMuteAndMeterGroup = new ChannelGroupViewModel("Inputs", InputsWithNoFaders, false); - - Task mixerCreationTask = CreateMixer(); - mixerCreationTask.ContinueWith(task => logger.LogError("Mixer creation task failed"), TaskContinuationOptions.NotOnRanToCompletion); - - RunMeterUpdateLoop().Ignore(logger); - - async Task CreateMixer() - { - while (!disposed) - { - try - { - Mixer mixer = await Mixer.Create(logger, () => config.CreateMixerApi(logger, options)); - SetMixer(mixer); - logger.LogInformation("Initial connection to mixer successful"); - return; - } - catch (Exception e) - { - Status.ReportError("Failed to connect"); - logger.LogError(e, "Error creating mixer... retrying in a few seconds."); - await Task.Delay(3000); - } - } - } - } - - // This happens once, when we've managed to connect for the first time, - // at which point we assume all the channel configuration has been determined. - private void SetMixer(Mixer mixer) - { - UpdateMixerStatus(); - this.mixer = mixer; - mixer.PropertyChanged += (sender, e) => - { - switch (e.PropertyName) - { - case nameof(Mixer.MixerInfo): - case nameof(Mixer.Connected): - UpdateMixerStatus(); - break; - } - }; - foreach (var input in InputChannels.Concat(InputsWithNoFaders)) - { - input.UpdateFromMixer(mixer); - } - foreach (var output in OutputChannels.Concat(OverallOutputChannels)) - { - output.UpdateFromMixer(mixer); - } - - void UpdateMixerStatus() - { - if (mixer.Connected) - { - Status.ReportNormal(mixer.MixerInfo?.ToString() ?? "Connected"); - logger.LogInformation("Mixer connected: {info}", mixer.MixerInfo?.ToString() ?? "(No info)"); - } - else - { - Status.ReportError("Disconnected"); - logger.LogInformation("Mixer disconnected"); - } - } - } - - private async Task RunMeterUpdateLoop() - { - while (!disposed) - { - UpdateMeterPeaks(); - await Task.Delay(100); - } - - void UpdateMeterPeaks() - { - if (mixer is null) - { - return; - } - foreach (var vm in InputChannels) - { - vm.UpdatePeakOutputs(logger); - } - foreach (var vm in OutputChannels) - { - vm.UpdatePeakOutputs(logger); - } - foreach (var vm in OverallOutputChannels) - { - vm.UpdatePeakOutputs(logger); - } - foreach (var vm in InputsWithNoFaders) - { - vm.UpdatePeakOutputs(logger); - } - } - } - - public void Dispose() - { - disposed = true; - mixer?.Dispose(); - } - - private void MuteAll() - { - foreach (var channelVm in InputChannels) - { - channelVm.Muted = true; - } - } - - public void LogStatus(ILogger statusLogger) - { - if (Config.Fake || mixer is null) - { - return; - } - var unmutedChannels = InputChannels.Where(ic => !ic.Muted).ToList(); - statusLogger.LogTrace("Mixer {mixer}: Connected? {connected}; Unmuted channels: {channelCount}", - mixer.MixerInfo?.Model ?? "(Unknown)", mixer.Connected ? "Yes" : "No", unmutedChannels.Count); - foreach (var channel in unmutedChannels) - { - statusLogger.LogTrace(" {name}: {db}", channel.DisplayName, channel.Faders.FirstOrDefault()?.FaderLevelDb.ToString("0.##")); - } - } -} diff --git a/DigiMixer/DigiMixer.AppCore/FaderViewModel.cs b/DigiMixer/DigiMixer.AppCore/FaderViewModel.cs deleted file mode 100644 index 737ccc79..00000000 --- a/DigiMixer/DigiMixer.AppCore/FaderViewModel.cs +++ /dev/null @@ -1,104 +0,0 @@ -using DigiMixer.Core; -using JonSkeet.CoreAppUtil; -using System.ComponentModel; - -namespace DigiMixer.AppCore; - -// Note on fader appearances: -// - Input-specific faders are always paired with a specific output channel (which may be "main") -// - An output fader may be the "overall" fader for the output, without a specific input. -// Faders are shown in three groups: -// - Grouped by input, where only selected outputs are included. These faders always use the colour -// of the output. -// - Grouped by output, where only selected inputs are included, as well as the overall output. -// These faders use the colour of the input, or white for the overall output, which is always shown. -// - Just the overall outputs, where all output channels are shown, all with a white background. -// -// Corollary: the appearance of an "overall" fader is always white, and always shown. - -/// -/// View model for a fader; it's always associated with an output channel, -/// but may also be specific to an input channel. -/// -public class FaderViewModel : ViewModelBase -{ - private IFader fader; - [RelatedProperties(nameof(FaderLevel), nameof(MaxFaderLevel))] - private IFader Fader - { - get => fader; - set - { - var oldFader = fader; - if (SetProperty(ref fader, value)) - { - Notifications.MaybeUnsubscribe(oldFader, HandleFaderPropertyChanged); - Notifications.MaybeSubscribe(fader, HandleFaderPropertyChanged); - } - } - } - - public ChannelAppearance Appearance { get; } - - [RelatedProperties(nameof(FaderLevelDb), nameof(FaderLevelPercentage))] - public int FaderLevel - { - get => Fader?.FaderLevel.Value ?? 0; - set => Fader?.SetFaderLevel(new(value)); - } - - public double FaderLevelDb => NormalizeSmallNegativeToZero(fader?.Scale.ConvertToDb(FaderLevel) ?? 0); - public int MaxFaderLevel => fader?.Scale.MaxValue ?? 1_000_000; - - // The config-based IDs. - public string InputId { get; } - public string OutputId { get; } - - // The DigiMixer-based IDs. - public ChannelId? InputChannelId { get; } - public ChannelId OutputChannelId { get; } - - /// - /// The level of the fader, as a percentage. - /// - public string FaderLevelPercentage => $"{FaderLevel * 100 / MaxFaderLevel}%"; - - internal FaderViewModel(ChannelId? inputChannelId, ChannelId outputChannelId, string inputId, string outputId, ChannelAppearance channelAppearance) - { - InputChannelId = inputChannelId; - OutputChannelId = outputChannelId; - InputId = inputId; - OutputId = outputId; - Appearance = channelAppearance; - } - - internal void PopulateFromMixer(Mixer mixer) - { - if (InputChannelId is ChannelId inputId) - { - var input = mixer.InputChannels.FirstOrDefault(ch => ch.LeftOrMonoChannelId == inputId); - Fader = input?.OutputMappings.FirstOrDefault(mapping => mapping.OutputChannel.LeftOrMonoChannelId == OutputChannelId); - } - else - { - Fader = mixer.OutputChannels.FirstOrDefault(ch => ch.LeftOrMonoChannelId == OutputChannelId); - } - } - - private void HandleFaderPropertyChanged(object sender, PropertyChangedEventArgs e) - { - if (e.PropertyName == nameof(IFader.FaderLevel)) - { - RaisePropertyChanged(nameof(FaderLevel)); - RaisePropertyChanged(nameof(FaderLevelPercentage)); - RaisePropertyChanged(nameof(FaderLevelDb)); - } - } - - /// - /// If we just format the raw "value" we see -0.0 quite a lot (e.g. for -0.05). - /// With this method, if the 1dp value is going to be rounded to 0.0 anyway, we omit the sign. - /// - private static double NormalizeSmallNegativeToZero(double value) => - -0.1 < value && value < 0 ? 0.0 : value; -} diff --git a/DigiMixer/DigiMixer.AppCore/FakeMixerApi.cs b/DigiMixer/DigiMixer.AppCore/FakeMixerApi.cs deleted file mode 100644 index 3835a3e4..00000000 --- a/DigiMixer/DigiMixer.AppCore/FakeMixerApi.cs +++ /dev/null @@ -1,71 +0,0 @@ -using DigiMixer.Core; - -namespace DigiMixer.AppCore; - -/// -/// A fake implementation which can be used for testing, -/// or for offline use within a larger application (such as At Your Service). -/// -internal sealed class FakeMixerApi : IMixerApi -{ - private readonly DigiMixerConfig config; - private readonly DelegatingReceiver receiver; - - internal FakeMixerApi(DigiMixerConfig config) - { - this.config = config; - receiver = new DelegatingReceiver(); - } - - public TimeSpan KeepAliveInterval => TimeSpan.FromSeconds(1); - public IFaderScale FaderScale { get; } = new LinearFaderScale((1, -100.0), (1000, 10.0)); - - public Task CheckConnection(CancellationToken cancellationToken) => Task.FromResult(true); - - public Task Connect(CancellationToken cancellationToken) => Task.CompletedTask; - - public Task DetectConfiguration(CancellationToken cancellationToken) - { - var channelConfig = new MixerChannelConfiguration( - config.InputChannels.Select(mapping => ChannelId.Input(mapping.Channel)), - config.OutputChannels.Select(mapping => ChannelId.Output(mapping.Channel)), - Enumerable.Empty()); - return Task.FromResult(channelConfig); - } - - public void Dispose() - { - } - - public void RegisterReceiver(IMixerReceiver receiver) - { - this.receiver.RegisterReceiver(receiver); - receiver.ReceiveMixerInfo(new MixerInfo("Fake", "Fake Mixer", "1.0.0")); - } - - public Task RequestAllData(IReadOnlyList channelIds) - { - // TODO: Call Receive methods for channels. - return Task.CompletedTask; - } - - public Task SendKeepAlive() => Task.CompletedTask; - - public Task SetFaderLevel(ChannelId inputId, ChannelId outputId, FaderLevel level) - { - receiver.ReceiveFaderLevel(inputId, outputId, level); - return Task.CompletedTask; - } - - public Task SetFaderLevel(ChannelId outputId, FaderLevel level) - { - receiver.ReceiveFaderLevel(outputId, level); - return Task.CompletedTask; - } - - public Task SetMuted(ChannelId channelId, bool muted) - { - receiver.ReceiveMuteStatus(channelId, muted); - return Task.CompletedTask; - } -} diff --git a/DigiMixer/DigiMixer.AppCore/IChannelViewModelBase.cs b/DigiMixer/DigiMixer.AppCore/IChannelViewModelBase.cs deleted file mode 100644 index f13f7a44..00000000 --- a/DigiMixer/DigiMixer.AppCore/IChannelViewModelBase.cs +++ /dev/null @@ -1,22 +0,0 @@ -using DigiMixer.Core; -using System.ComponentModel; - -namespace DigiMixer.AppCore; - -public interface IChannelViewModelBase : INotifyPropertyChanged -{ - ChannelAppearance Appearance { get; } - string DisplayName { get; } - string ShortName { get; } - - bool HasLeftMeter { get; } - bool HasRightMeter { get; } - bool HasMute { get; } - // TODO: Potentially change Output/StereoOutput to LeftMeterLevel and RightMeterLevel, ditto peaks. - MeterLevel Output { get; } - MeterLevel StereoOutput { get; } - MeterLevel PeakOutput { get; } - MeterLevel StereoPeakOutput { get; } - bool Muted { get; set; } - IReadOnlyList Faders { get; } -} diff --git a/DigiMixer/DigiMixer.AppCore/IconPlatformMixerController.cs b/DigiMixer/DigiMixer.AppCore/IconPlatformMixerController.cs deleted file mode 100644 index 5a40c3fb..00000000 --- a/DigiMixer/DigiMixer.AppCore/IconPlatformMixerController.cs +++ /dev/null @@ -1,128 +0,0 @@ -using IconPlatform.Model; -using JonSkeet.CoreAppUtil; -using Microsoft.Extensions.Logging; - -namespace DigiMixer.AppCore; - -internal class IconPlatformMixerController : IAsyncDisposable -{ - private readonly List channelMappings; - private readonly ILogger logger; - private readonly PlatformMXController platformController; - - private bool lastConnected = false; - - public IconPlatformMixerController(ILogger logger, DigiMixerViewModel mixerVm, PlatformMXController platformController, int channelsToSkip, bool controlMain) - { - (this.logger, this.platformController) = (logger, platformController); - // TODO: Use the knob for something? - platformController.ButtonChanged += HandleButtonChanged; - platformController.FaderMoved += ChangeChannelVolume; - channelMappings = mixerVm.InputChannels - .Skip(channelsToSkip) - .Select((channel, index) => new ChannelMapping(index + 1, channel)) - .Take(8) - .ToList(); - - if (controlMain) - { - channelMappings.Add(new ChannelMapping(9, mixerVm.OutputChannels.FirstOrDefault(o => o.ChannelId.IsMainOutput))); - } - - foreach (var mapping in channelMappings) - { - var mixerChannel = mapping.MixerChannel; - var fader = mapping.Fader; - var platformChannel = mapping.PlatformChannel; - // We don't have a 9th mute light for the overall volume - if (platformChannel < 9) - { - Notifications.Subscribe(mixerChannel, nameof(mixerChannel.Muted), (sender, args) => - platformController.SetLight(platformChannel, ButtonType.Mute, mixerChannel.Muted)); - } - Notifications.Subscribe(fader, nameof(fader.FaderLevel), (sender, args) => - platformController.MoveFader(platformChannel, 1023 * fader.FaderLevel / fader.MaxFaderLevel)); - } - } - - public async Task CheckConnectionAsync() - { - await platformController.MaybeReconnect(); - bool nowConnected = platformController.Connected; - if (lastConnected != nowConnected) - { - logger.LogDebug($"IconPlatform controller '{{port}}' {(nowConnected ? "connected" : "disconnected")}", platformController.PortName); - if (nowConnected) - { - platformController.ClearText(); - platformController.ClearChannelButtons(); - platformController.WriteChannelDelimiters('|'); - foreach (var mapping in channelMappings) - { - var platformChannel = mapping.PlatformChannel; - // Don't try to write the Main channel name - it'll overflow. - if (platformChannel > 8) - { - continue; - } - var mixerChannel = mapping.MixerChannel; - var fader = mapping.Fader; - - // Show the right text - var width = platformController.GetChannelTextWidth(platformChannel); - var text = mapping.MixerChannel.ShortName; - var padded = text.PadRight(width * 2); - platformController.SetChannelText(platformChannel, padded[0..width], padded[width..(width * 2)].Trim()); - - // Set the light and fader position - platformController.SetLight(platformChannel, ButtonType.Mute, mixerChannel.Muted); - platformController.MoveFader(platformChannel, 1023 * fader.FaderLevel / fader.MaxFaderLevel); - } - } - lastConnected = nowConnected; - } - return nowConnected; - } - - private void HandleButtonChanged(object sender, ButtonEventArgs e) - { - if (e.Button == ButtonType.Mute && e.Down) - { - var mapping = GetMappingOrNull(e.Channel); - if (mapping?.MixerChannel is InputChannelViewModel mixerChannel) - { - mixerChannel.Muted = !mixerChannel.Muted; - } - } - } - - private void ChangeChannelVolume(object sender, FaderEventArgs e) - { - if (GetMappingOrNull(e.Channel)?.Fader is FaderViewModel fader) - { - fader.FaderLevel = e.Position * fader.MaxFaderLevel / 1023; - } - } - - // TODO: Maybe make this more efficient... - private ChannelMapping GetMappingOrNull(int platformChannel) => - channelMappings.FirstOrDefault(mapping => mapping.PlatformChannel == platformChannel); - - public ValueTask DisposeAsync() => platformController.DisposeAsync(); - - /// - /// Mapping between an Icon Platform channel (1-8, or 9 for main output) and a mixer input channel. - /// - private class ChannelMapping - { - public int PlatformChannel { get; } - public IChannelViewModelBase MixerChannel { get; } - public FaderViewModel Fader { get; } - - public ChannelMapping(int platformChannel, InputChannelViewModel mixerChannel) => - (PlatformChannel, MixerChannel, Fader) = (platformChannel, mixerChannel, mixerChannel.Faders.FirstOrDefault(fader => fader.OutputChannelId.IsMainOutput)); - - public ChannelMapping(int platformChannel, OutputChannelViewModel mixerChannel) => - (PlatformChannel, MixerChannel, Fader) = (platformChannel, mixerChannel, mixerChannel.OverallFader); - } -} diff --git a/DigiMixer/DigiMixer.AppCore/InputChannelViewModel.cs b/DigiMixer/DigiMixer.AppCore/InputChannelViewModel.cs deleted file mode 100644 index 072ce819..00000000 --- a/DigiMixer/DigiMixer.AppCore/InputChannelViewModel.cs +++ /dev/null @@ -1,21 +0,0 @@ -using DigiMixer.Core; -using JonSkeet.CoreAppUtil; -using NodaTime; - -namespace DigiMixer.AppCore; - -public class InputChannelViewModel : ChannelViewModelBase -{ - public InputChannelViewModel(ChannelMapping mapping, double? feedbackMutingThreshold, Duration? feedbackMutingDuration) - : base(ChannelId.Input(mapping.Channel), mapping, feedbackMutingThreshold, feedbackMutingDuration) - { - } - - internal void SetFaders(IReadOnlyList outputChannels) - { - Faders = outputChannels - .ToReadOnlyList(output => new FaderViewModel(ChannelId, output.ChannelId, Id, output.Id, output.Appearance)); - } - - protected override IEnumerable GetChannels(Mixer mixer) => mixer.InputChannels; -} diff --git a/DigiMixer/DigiMixer.AppCore/OutputChannelViewModel.cs b/DigiMixer/DigiMixer.AppCore/OutputChannelViewModel.cs deleted file mode 100644 index b964ac22..00000000 --- a/DigiMixer/DigiMixer.AppCore/OutputChannelViewModel.cs +++ /dev/null @@ -1,45 +0,0 @@ -using DigiMixer.Core; -using JonSkeet.CoreAppUtil; - -namespace DigiMixer.AppCore; - -// Note: we currently create multiple OutputChannelViewModels for the same output: -// one with faders-per-input and one without. That may not be ideal. -public class OutputChannelViewModel : ChannelViewModelBase -{ - public FaderViewModel OverallFader => Faders[0]; - - /// - /// Whether this output is a foldback. - /// - public bool IsFoldback { get; } - - public OutputChannelViewModel(ChannelMapping mapping) - : base(ChannelId.Output(mapping.Channel), mapping) - { - IsFoldback = mapping.Foldback; - } - - internal void SetFaders(IEnumerable inputChannels) - { - Faders = new[] { new FaderViewModel(inputChannelId: null, ChannelId, inputId: null, Id, ChannelAppearance.CreateVisibleWhite()) } - .Concat(inputChannels.Select(input => new FaderViewModel(input.ChannelId, ChannelId, input.Id, Id, input.Appearance))) - .ToReadOnlyList(); - } - - protected override IEnumerable GetChannels(Mixer mixer) => mixer.OutputChannels; - - // Hack for Behringer Wing. See DigiMixerViewModel constructor for details. - public void RemoveOverallOutputFader() - { - var firstFader = Faders.FirstOrDefault(); - if (firstFader is null) - { - return; - } - if (firstFader.InputChannelId is null) - { - Faders = Faders.Skip(1).ToReadOnlyList(); - } - } -} diff --git a/DigiMixer/DigiMixer.AppCore/PeripheralController.cs b/DigiMixer/DigiMixer.AppCore/PeripheralController.cs deleted file mode 100644 index 20466aba..00000000 --- a/DigiMixer/DigiMixer.AppCore/PeripheralController.cs +++ /dev/null @@ -1,108 +0,0 @@ -using IconPlatform.Model; -using JonSkeet.CoreAppUtil; -using Microsoft.Extensions.Logging; -using XTouchMini.Model; - -namespace DigiMixer.AppCore; - -public class PeripheralController : IAsyncDisposable -{ - private readonly XTouchDigiMixerController xtouchDigiMixerController; - private readonly IconPlatformMixerController platformMMixerController; - private readonly IconPlatformMixerController platformXMixerController; - private readonly ILogger logger; - - private bool disposed; - - public StatusViewModel XTouchStatus { get; } - public StatusViewModel PlatformMStatus { get; } - public StatusViewModel PlatformXStatus { get; } - - private PeripheralController(ILogger logger, - XTouchDigiMixerController xtouchDigiMixerController, - IconPlatformMixerController platformMMixerController, IconPlatformMixerController platformXMixerController) - { - this.logger = logger; - this.xtouchDigiMixerController = xtouchDigiMixerController; - this.platformMMixerController = platformMMixerController; - this.platformXMixerController = platformXMixerController; - XTouchStatus = new StatusViewModel("X-Touch Mini"); - PlatformMStatus = new StatusViewModel("Platform-M"); - PlatformXStatus = new StatusViewModel("Platform-X"); - } - - public static PeripheralController Create(ILoggerFactory loggerFactory, DigiMixerViewModel mixerVm, bool enablePeripherals) - { - var config = mixerVm.Config; - var xtouchController = enablePeripherals && !string.IsNullOrEmpty(config.XTouchMiniDevice) - ? new XTouchMiniMackieController(CreateLogger("XTouchMini"), config.XTouchMiniDevice) : null; - var platformMController = enablePeripherals && !string.IsNullOrEmpty(config.IconMPlusDevice) - ? new PlatformMXController(CreateLogger("IconM"), config.IconMPlusDevice, PlatformMXController.PlatformMModelId) - : null; - var platformXController = enablePeripherals && !string.IsNullOrEmpty(config.IconXPlusDevice) - ? new PlatformMXController(CreateLogger("IconX"), config.IconXPlusDevice, PlatformMXController.PlatformXModelId) - : null; - - var xtouchMixerController = xtouchController is not null - ? new XTouchDigiMixerController(CreateLogger("XTouchMixerController"), mixerVm, xtouchController, config.XTouchSensitivity, config.XTouchMainVolumeEnabled) - : null; - var platformMMixerController = platformMController is not null - ? new IconPlatformMixerController(CreateLogger("PlatformMMixerController"), mixerVm, platformMController, 0, controlMain: true) - : null; - var platformXMixerController = platformXController is not null - ? new IconPlatformMixerController(CreateLogger("PlatformXMixerController"), mixerVm, platformXController, 8, controlMain: false) - : null; - return new PeripheralController(CreateLogger("PeripheralController"), xtouchMixerController, platformMMixerController, platformXMixerController); - - ILogger CreateLogger(string name) => loggerFactory.CreateLogger(name); - } - - public async Task Start() - { - await Task.Delay(500); - - while (!disposed) - { - try - { - await CheckControllerStatuses(); - } - catch (Exception e) - { - logger.LogError(e, "Error while checking status"); - } - // Only a short delay here... this means we update the display more quickly - // on changes, and we're less likely to run into an X-Touch "unplug/plug" issue - // where we don't detect the disconnect. - await Task.Delay(1000); - } - } - - public ValueTask DisposeAsync() - { - if (disposed) - { - return ValueTask.CompletedTask; - } - disposed = true; - return Disposables.DisposeAllAsyncWithCatch([xtouchDigiMixerController, platformMMixerController, platformXMixerController], logger); - } - - private async Task CheckControllerStatuses() - { - await MaybeCheckStatus(xtouchDigiMixerController?.CheckConnectionAsync(), XTouchStatus); - await MaybeCheckStatus(platformMMixerController?.CheckConnectionAsync(), PlatformMStatus); - await MaybeCheckStatus(platformXMixerController?.CheckConnectionAsync(), PlatformXStatus); - - async Task MaybeCheckStatus(Task task, StatusViewModel status) - { - if (task is null) - { - status.ReportNormal("Not enabled"); - return; - } - // We never report a warning here - it's fine for these to be disconnected. - status.ReportNormal(await task ? "Connected" : "Disconnected"); - } - } -} diff --git a/DigiMixer/DigiMixer.AppCore/XTouchDigiMixerControlledChannel.cs b/DigiMixer/DigiMixer.AppCore/XTouchDigiMixerControlledChannel.cs deleted file mode 100644 index 88d25a22..00000000 --- a/DigiMixer/DigiMixer.AppCore/XTouchDigiMixerControlledChannel.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using JonSkeet.CoreAppUtil; -using Microsoft.Extensions.Logging; -using XTouchMini.Model; - -namespace DigiMixer.AppCore; - -/// -/// Connection between an X-Touch Mini controller and a mixer channel. -/// -internal class XTouchDigiMixerControlledChannel -{ - private readonly int sensitivity; - private readonly ILogger logger; - private readonly InputChannelViewModel mixerChannel; - private readonly FaderViewModel fader; - - // Knob/button index (1-based) - private readonly int controllerIndex; - - private readonly XTouchMiniMackieController xtouchController; - - /// - /// True for channels which are controlled by unpushed knobs and/or buttons; - /// false for secondary channels which are only controlled by pushed knobs. - /// - private bool primaryChannel; - private bool knobEnabled = true; - - internal XTouchDigiMixerControlledChannel( - ILogger logger, InputChannelViewModel mixerChannel, XTouchMiniMackieController xtouchController, int controllerIndex, int sensitivity, bool primaryChannel) - { - (this.logger, this.mixerChannel, this.xtouchController, this.controllerIndex, this.sensitivity, this.primaryChannel) = - (logger, mixerChannel, xtouchController, controllerIndex, sensitivity, primaryChannel); - fader = - primaryChannel - ? mixerChannel.Faders.FirstOrDefault(fader => fader.OutputChannelId.IsMainOutput) - : mixerChannel.Faders.FirstOrDefault(fader => !fader.OutputChannelId.IsMainOutput); - knobEnabled = primaryChannel && fader is not null; - Notifications.Subscribe(mixerChannel, nameof(InputChannelViewModel.Muted), (sender, args) => HandleChannelMutedChanged()); - if (knobEnabled) - { - Notifications.Subscribe(fader, nameof(FaderViewModel.FaderLevel), (sender, args) => HandleChannelLevelChanged()); - } - } - - internal void SetKnobEnabled(bool enabled) - { - knobEnabled = enabled; - HandleChannelLevelChanged(); - } - - public void OnReconnection() - { - knobEnabled = primaryChannel; - HandleChannelLevelChanged(); - HandleChannelMutedChanged(); - } - - private void HandleChannelLevelChanged() - { - if (controllerIndex < 9 && knobEnabled) - { - xtouchController.SetKnobRingState( - controllerIndex, KnobRingStyle.Fan, fader.FaderLevel * 11 / fader.MaxFaderLevel); - } - } - - private void HandleChannelMutedChanged() => - xtouchController.SetButtonLedState(controllerIndex, mixerChannel.Muted ? LedState.Off : LedState.On); - - internal void HandleKnobTurned(int value) - { - if (!knobEnabled) - { - return; - } - int velocity = value >= 0x41 ? -(value - 0x40) : value; - var currentLevel = fader.FaderLevel; - var newLevel = Math.Max(Math.Min(currentLevel + velocity * sensitivity, fader.MaxFaderLevel), 0); - logger.LogTrace("Knob {knob} changing channel '{channel}' fader level from {old} to {new}", - controllerIndex, mixerChannel.DisplayName, currentLevel, newLevel); - fader.FaderLevel = newLevel; - } - - public void HandleButtonPressed() => mixerChannel.Muted = !mixerChannel.Muted; -} diff --git a/DigiMixer/DigiMixer.AppCore/XTouchDigiMixerController.cs b/DigiMixer/DigiMixer.AppCore/XTouchDigiMixerController.cs deleted file mode 100644 index ad34a4c4..00000000 --- a/DigiMixer/DigiMixer.AppCore/XTouchDigiMixerController.cs +++ /dev/null @@ -1,90 +0,0 @@ -using Microsoft.Extensions.Logging; -using XTouchMini.Model; - -namespace DigiMixer.AppCore; - -internal class XTouchDigiMixerController : IAsyncDisposable -{ - // Main channels - private readonly List channels; - - // Secondary channels associated with output for the input channels with faders for non-main output. - private readonly List secondaryChannels; - - private readonly ILogger logger; - private readonly FaderViewModel mainFader; - private readonly XTouchMiniMackieController xtouchController; - - private bool lastConnected = false; - - public XTouchDigiMixerController(ILogger logger, DigiMixerViewModel mixerVm, XTouchMiniMackieController xtouchController, int sensitivity, bool mainVolumeEnabled) - { - (this.logger, this.xtouchController) = (logger, xtouchController); - xtouchController.ButtonDown += HandleButtonDown; - xtouchController.KnobTurned += HandleKnobTurned; - xtouchController.KnobUp += HandleKnobPushRelease; - xtouchController.KnobDown += HandleKnobPushRelease; - channels = mixerVm.InputChannels - .Select((channel, index) => new XTouchDigiMixerControlledChannel(logger, channel, xtouchController, index + 1, sensitivity, true)) - // First 8 channels are knob+button (fader and mute); last 8 are button-only (mute). - .Take(16) - .ToList(); - - secondaryChannels = mixerVm.InputChannels - .Take(8) - .Select((channel, index) => new XTouchDigiMixerControlledChannel(logger, channel, xtouchController, index + 1, sensitivity, false)) - .ToList(); - - if (mainVolumeEnabled) - { - mainFader = mixerVm.OverallOutputChannels.FirstOrDefault(channel => channel.ChannelId.IsMainOutput)?.Faders[0]; - if (mainFader is not null) - { - xtouchController.FaderMoved += ChangeMainVolume; - } - } - } - - public async Task CheckConnectionAsync() - { - await xtouchController.MaybeReconnect(); - bool nowConnected = xtouchController.Connected; - if (lastConnected != nowConnected) - { - lastConnected = nowConnected; - logger.LogDebug($"XTouch controller {(nowConnected ? "connected" : "disconnected")}"); - if (nowConnected) - { - xtouchController.Reset(); - channels.ForEach(channel => channel.OnReconnection()); - } - } - return nowConnected; - } - - private void HandleKnobPushRelease(object sender, KnobPressEventArgs e) - { - GetChannelOrNull(e.Knob)?.SetKnobEnabled(!e.Down); - GetSecondaryChannelOrNull(e.Knob)?.SetKnobEnabled(e.Down); - } - - private void HandleKnobTurned(object sender, KnobTurnedEventArgs e) - { - GetChannelOrNull(e.Knob)?.HandleKnobTurned(e.Value); - GetSecondaryChannelOrNull(e.Knob)?.HandleKnobTurned(e.Value); - } - - private void HandleButtonDown(object sender, ButtonEventArgs e) => - GetChannelOrNull(e.Button)?.HandleButtonPressed(); - - private void ChangeMainVolume(object sender, FaderEventArgs e) => - mainFader.FaderLevel = e.Position * mainFader.MaxFaderLevel / 127; - - private XTouchDigiMixerControlledChannel GetChannelOrNull(int index) => - index > 0 && index <= channels.Count ? channels[index - 1] : null; - - private XTouchDigiMixerControlledChannel GetSecondaryChannelOrNull(int index) => - secondaryChannels.Count >= index ? secondaryChannels[index - 1] : null; - - public ValueTask DisposeAsync() => xtouchController.DisposeAsync(); -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Core/DigiMixer.BehringerWing.Core.csproj b/DigiMixer/DigiMixer.BehringerWing.Core/DigiMixer.BehringerWing.Core.csproj deleted file mode 100644 index 93101f20..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Core/DigiMixer.BehringerWing.Core.csproj +++ /dev/null @@ -1,13 +0,0 @@ - - - - net9.0 - enable - enable - - - - - - - diff --git a/DigiMixer/DigiMixer.BehringerWing.Core/WingClient.cs b/DigiMixer/DigiMixer.BehringerWing.Core/WingClient.cs deleted file mode 100644 index f103bec1..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Core/WingClient.cs +++ /dev/null @@ -1,75 +0,0 @@ -using DigiMixer.Core; -using Microsoft.Extensions.Logging; -using System.Buffers; - -namespace DigiMixer.BehringerWing.Core; - -public sealed class WingClient : TcpControllerBase -{ - public event EventHandler? AudioEngineTokenReceived; - public event EventHandler? MeterTokenReceived; - - private const int SendingBufferSize = 65536; - private readonly MemoryPool SendingPool = MemoryPool.Shared; - - /// - /// The amount of unprocessed data left in the buffer. - /// - public int UnprocessedLength { get; private set; } - - /// - /// The total number of messages processed. - /// - public long MessagesProcessed { get; private set; } - - private readonly WingTokenProcessor tokenProcessor; - - public WingClient(ILogger logger, string host, int port) : base(logger, host, port) - { - tokenProcessor = new(); - tokenProcessor.TokenReceived += ProcessToken; - } - - private void ProcessToken(object? sender, (WingProtocolChannel, WingToken) e) - { - var channel = e.Item1; - var token = e.Item2; - Logger.LogTrace("Received token type {type} on channel {channel}", token.Type, channel); - switch (channel) - { - case WingProtocolChannel.AudioEngine: - AudioEngineTokenReceived?.Invoke(this, token); - break; - case WingProtocolChannel.MeterDataRequests: - MeterTokenReceived?.Invoke(this, token); - break; - default: - // TODO: Throw an exception? - break; - } - } - - public Task SendAudioEngineTokens(IEnumerable tokens, CancellationToken cancellationToken) => - SendTokens(WingProtocolChannel.AudioEngine, tokens, cancellationToken); - - public Task SendMeterRequest(WingMeterRequest request, CancellationToken cancellationToken) => - SendTokens(WingProtocolChannel.MeterDataRequests, [WingToken.ForMeterRequest(request)], cancellationToken); - - private async Task SendTokens(WingProtocolChannel channel, IEnumerable tokens, CancellationToken cancellationToken) - { - using var memoryOwner = SendingPool.Rent(SendingBufferSize); - int length = tokenProcessor.WriteTokens(channel, tokens, memoryOwner.Memory.Span); - await base.Send(memoryOwner.Memory[..length], cancellationToken); - } - - /// - /// Synchronously processes the data from , retaining any data - /// that isn't part of a message. The data may contain multiple messages, and each will be - /// processed separately. - /// - protected override Task ProcessData(ReadOnlyMemory data, CancellationToken cancellationToken) - { - tokenProcessor.Process(data.Span); - return Task.CompletedTask; - } -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Core/WingConstants.cs b/DigiMixer/DigiMixer.BehringerWing.Core/WingConstants.cs deleted file mode 100644 index 1bb2b638..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Core/WingConstants.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System.Text; - -namespace DigiMixer.BehringerWing.Core; - -internal static class WingConstants -{ - internal const byte Escape = 0xdf; - internal const byte EscapedEscape = 0xde; - internal const byte MinProtocolChannelChange = 0xd0; - internal const byte MaxProtocolChannelChange = 0xdd; - internal const byte MinValueToEscape = MinProtocolChannelChange; - internal const byte MaxValueToEscape = EscapedEscape; - - internal static Encoding Encoding { get; } = Encoding.ASCII; -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Core/WingMeterClient.cs b/DigiMixer/DigiMixer.BehringerWing.Core/WingMeterClient.cs deleted file mode 100644 index 4af342f7..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Core/WingMeterClient.cs +++ /dev/null @@ -1,32 +0,0 @@ -using DigiMixer.Core; -using Microsoft.Extensions.Logging; - -namespace DigiMixer.BehringerWing.Core; - -public class WingMeterClient : UdpControllerBase, IDisposable -{ - public ushort LocalUdpPort { get; } - public event EventHandler? MessageReceived; - - private WingMeterClient(ILogger logger, ushort localUdpPort) : base(logger, localUdpPort) - { - LocalUdpPort = localUdpPort; - } - - public WingMeterClient(ILogger logger) : this(logger, FindAvailableUdpPort()) - { - } - - protected override void ProcessData(ReadOnlySpan data) - { - if (WingMeterMessage.TryParse(data) is not WingMeterMessage response) - { - return; - } - if (Logger.IsEnabled(LogLevel.Trace)) - { - Logger.LogTrace("Received meter message: {message}", response); - } - MessageReceived?.Invoke(this, response); - } -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Core/WingMeterMessage.cs b/DigiMixer/DigiMixer.BehringerWing.Core/WingMeterMessage.cs deleted file mode 100644 index 8f543412..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Core/WingMeterMessage.cs +++ /dev/null @@ -1,59 +0,0 @@ -using System.Buffers.Binary; -using System.Collections.Immutable; - -namespace DigiMixer.BehringerWing.Core; - -/// -/// A message containing meter data, sent via UDP. -/// -public record WingMeterMessage(uint ReportId, ImmutableList Data) -{ - public ChannelV2Data GetChannelV2(int startOffset, int index) => new(this, startOffset + index * ChannelV2Data.Size); - - public static WingMeterMessage? TryParse(ReadOnlySpan data) - { - if (data.Length < 4) - { - return null; - } - var reportId = BinaryPrimitives.ReadUInt32BigEndian(data); - data = data[4..]; - - var array = new short[data.Length / 2]; - for (int i = 0; i < array.Length; i++) - { - array[i] = BinaryPrimitives.ReadInt16BigEndian(data[(i * 2)..]); - } - return new(reportId, [.. array]); - } - - /// - /// A view over a portion of a . - /// - public readonly struct ChannelV2Data - { - // The number of 16-bit entries in this struct. - public const int Size = 11; - - private readonly WingMeterMessage message; - private readonly int offset; - - public short InputLeft => message.Data[offset]; - public short InputRight => message.Data[offset + 1]; - public short OutputLeft => message.Data[offset + 2]; - public short OutputRight => message.Data[offset + 3]; - public short GateKey => message.Data[offset + 4]; - public short GateGain => message.Data[offset + 5]; - public short GateLed => message.Data[offset + 6]; - public short DynKey => message.Data[offset + 7]; - public short DynGain => message.Data[offset + 8]; - public short DynState => message.Data[offset + 9]; - public short AutoMixGain => message.Data[offset + 10]; - - internal ChannelV2Data(WingMeterMessage message, int offset) - { - this.message = message; - this.offset = offset; - } - } -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Core/WingMeterRequest.cs b/DigiMixer/DigiMixer.BehringerWing.Core/WingMeterRequest.cs deleted file mode 100644 index 56c622c8..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Core/WingMeterRequest.cs +++ /dev/null @@ -1,61 +0,0 @@ -using System.Buffers.Binary; -using System.Collections.Immutable; -using static DigiMixer.BehringerWing.Core.WingMeterRequest; - -namespace DigiMixer.BehringerWing.Core; - -public partial record WingMeterRequest(ushort? UdpPort, uint ReportId, ImmutableList ChannelLists) -{ - public int GetFirstDataOffset(WingMeterType type) - { - int offset = 0; - foreach (var list in ChannelLists) - { - if (list.Type == type) - { - return offset; - } - // TODO: Handle channel types with different sizes. (At the moment we only ever need v2 data.) - offset += list.Ids.Count * WingMeterMessage.ChannelV2Data.Size; - } - throw new ArgumentException($"Channel type {type} is not in the request"); - } - - internal int CopyTo(Span span) - { - int length = 0; - if (UdpPort is ushort port) - { - span[length++] = 0xd3; - BinaryPrimitives.WriteUInt16BigEndian(span[length..], port); - length += 2; - } - span[length++] = 0xd4; - BinaryPrimitives.WriteUInt32BigEndian(span[length..], ReportId); - length += 4; - span[length++] = 0xdc; - foreach (var list in ChannelLists) - { - length += list.CopyTo(span[length..]); - } - span[length++] = 0xde; // End of meter collection - return length; - } - - /// - /// List of channels of a particular type to request data for. - /// Note that these are 1-based even though the serialized form is 0-based. - /// - public record ChannelList(WingMeterType Type, ImmutableList Ids) - { - internal int CopyTo(Span span) - { - span[0] = (byte) Type; - for (int i = 0; i < Ids.Count; i++) - { - span[i + 1] = (byte) (Ids[i] - 1); - } - return 1 + Ids.Count; - } - } -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Core/WingMeterType.cs b/DigiMixer/DigiMixer.BehringerWing.Core/WingMeterType.cs deleted file mode 100644 index 19c8a256..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Core/WingMeterType.cs +++ /dev/null @@ -1,19 +0,0 @@ -namespace DigiMixer.BehringerWing.Core; - -public enum WingMeterType : byte -{ - InputChannel = 0xa0, - Aux = 0xa1, - Bus = 0xa2, - Main = 0xa3, - Matrix = 0xa4, - Dca = 0xa5, - Fx = 0xa6, - SourceDevice = 0xa7, - OutputDevice = 0xa8, - InputChannelV2 = 0xab, - AuxV2 = 0xac, - BusV2 = 0xad, - MainV2 = 0xae, - MatrixV2 = 0xaf -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Core/WingNodeDefinition.cs b/DigiMixer/DigiMixer.BehringerWing.Core/WingNodeDefinition.cs deleted file mode 100644 index bb4b349c..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Core/WingNodeDefinition.cs +++ /dev/null @@ -1,51 +0,0 @@ -using System.Buffers.Binary; - -namespace DigiMixer.BehringerWing.Core; - -public sealed class WingNodeDefinition -{ - /// - /// A fake node definition for convenience. - /// - public static WingNodeDefinition Root { get; } = new WingNodeDefinition(0, 0, 0, "Root", "", 0); - - public uint ParentHash { get; } - public uint NodeHash { get; } - public ushort NodeIndex { get; } - public string Name { get; } - public string LongName { get; } - public ushort Flags { get; } - // TODO: Enums etc - - public WingNodeType Type => (WingNodeType) ((Flags & 0xf0) >> 4); - public WingNodeUnit Units => (WingNodeUnit) (Flags & 0x0f); - public bool IsReadOnly => (Flags & 0x100) != 0; - public bool IsNode => Type == WingNodeType.Node; - - private WingNodeDefinition(uint parentHash, uint nodeHash, ushort nodeIndex, string name, string longName, ushort flags) - { - ParentHash = parentHash; - NodeHash = nodeHash; - NodeIndex = nodeIndex; - Name = name; - LongName = longName; - Flags = flags; - } - - internal static WingNodeDefinition Parse(ReadOnlySpan data) - { - var parentHash = BinaryPrimitives.ReadUInt32BigEndian(data); - var nodeHash = BinaryPrimitives.ReadUInt32BigEndian(data[4..]); - var nodeIndex = BinaryPrimitives.ReadUInt16BigEndian(data[8..]); - int nameLength = data[10]; - string name = WingConstants.Encoding.GetString(data.Slice(11, nameLength)); - int longNameLength = data[11 + nameLength]; - string longName = WingConstants.Encoding.GetString(data.Slice(12 + nameLength, longNameLength)); - var flags = BinaryPrimitives.ReadUInt16BigEndian(data[(12 + nameLength + longNameLength)..]); - // TODO: Post-flags enums etc - return new(parentHash, nodeHash, nodeIndex, name, longName, flags); - } - - // We don't current send node definitions, so we don't need to be able to serialize them. - internal int CopyTo(Span span) => throw new NotImplementedException(); -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Core/WingNodeType.cs b/DigiMixer/DigiMixer.BehringerWing.Core/WingNodeType.cs deleted file mode 100644 index 5632e9ab..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Core/WingNodeType.cs +++ /dev/null @@ -1,13 +0,0 @@ -namespace DigiMixer.BehringerWing.Core; - -public enum WingNodeType -{ - Node = 0, - LinearFloat = 1, - LogFloat = 2, - FaderLevel = 3, - Integer = 4, - StringEnum = 5, - FloatEnum = 6, - String = 7 -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Core/WingNodeUnit.cs b/DigiMixer/DigiMixer.BehringerWing.Core/WingNodeUnit.cs deleted file mode 100644 index 06ad54f7..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Core/WingNodeUnit.cs +++ /dev/null @@ -1,13 +0,0 @@ -namespace DigiMixer.BehringerWing.Core; - -public enum WingNodeUnit -{ - None, - Decibels, - Percent, - Milliseconds, - Hertz, - Meters, - Seconds, - Octaves -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Core/WingProtocolChannel.cs b/DigiMixer/DigiMixer.BehringerWing.Core/WingProtocolChannel.cs deleted file mode 100644 index aa002065..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Core/WingProtocolChannel.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace DigiMixer.BehringerWing.Core; - -public enum WingProtocolChannel : byte -{ - None = 0, - AudioEngine = 1, - MeterDataRequests = 3 -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Core/WingToken.cs b/DigiMixer/DigiMixer.BehringerWing.Core/WingToken.cs deleted file mode 100644 index 11004021..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Core/WingToken.cs +++ /dev/null @@ -1,258 +0,0 @@ -using System.Buffers.Binary; -using System.Runtime.CompilerServices; - -namespace DigiMixer.BehringerWing.Core; - -/// -/// Note: this does not implement IMixerMessage, as the stream contains -/// context about the current channel ID. -/// -public sealed class WingToken -{ - public static WingToken FalseOffZero { get; } = new(WingTokenType.FalseOffZero, 0); - public static WingToken TrueOnOne { get; } = new(WingTokenType.TrueOnOne, 1); - public static WingToken Toggle { get; } = new(WingTokenType.Toggle); - - public static WingToken RootNode { get; } = new(WingTokenType.RootNode); - public static WingToken ParentNode { get; } = new(WingTokenType.ParentNode); - public static WingToken DataRequest { get; } = new(WingTokenType.DataRequest); - public static WingToken DefinitionRequest { get; } = new(WingTokenType.DefinitionRequest); - public static WingToken EndOfRequest { get; } = new(WingTokenType.EndOfRequest); - public static WingToken EmptyString { get; } = ForString(""); - - public static WingToken ForInt16(short value) => new(WingTokenType.Int16, value); - public static WingToken ForInt32(int value) => new(WingTokenType.Int32, value); - public static WingToken ForNodeHash(uint value) => new(WingTokenType.NodeHash, (int) value); - public static WingToken ForNodeIndex(ushort value) => new(WingTokenType.NodeIndex, value); - public static WingToken ForFloat32(float value) => new(WingTokenType.Float32, value); - public static WingToken ForRawFloat32(float value) => new(WingTokenType.RawFloat32, value); - public static WingToken ForString(string value) => new(WingTokenType.String, value); - public static WingToken ForNodeName(string value) => new(WingTokenType.NodeName, value); - public static WingToken ForStep(byte value) => new(WingTokenType.Step, value); - public static WingToken ForBool(bool value) => value ? TrueOnOne : FalseOffZero; - public static WingToken? ForNodeDefinition(WingNodeDefinition definition) => new(WingTokenType.NodeDefinition, definition); - public static WingToken ForMeterRequest(WingMeterRequest request) => new(WingTokenType.MeterRequest, request); - - public WingTokenType Type { get; } - - private readonly int int32Value; - private readonly float float32Value; - private readonly object? objectValue; - - private WingToken(WingTokenType type) - { - Type = type; - } - - private WingToken(WingTokenType type, int int32Value) : this(type) - { - this.int32Value = int32Value; - } - - private WingToken(WingTokenType type, float float32Value) : this(type) - { - this.float32Value = float32Value; - } - - private WingToken(WingTokenType type, object objectValue) : this(type) - { - this.objectValue = objectValue; - } - - public bool BoolValue => ValidateType(WingTokenType.FalseOffZero, WingTokenType.TrueOnOne, int32Value == 1); - public int IntegerValue => ValidateType(WingTokenType.Int16, WingTokenType.Int32, WingTokenType.FalseOffZero, WingTokenType.TrueOnOne, int32Value); - public int Int32Value => ValidateType(WingTokenType.Int32, WingTokenType.FalseOffZero, WingTokenType.TrueOnOne, int32Value); - public short Int16Value => ValidateType(WingTokenType.Int16, (short) int32Value); - public ushort NodeIndex => ValidateType(WingTokenType.NodeIndex, (ushort) int32Value); - public uint NodeHash => ValidateType(WingTokenType.NodeHash, (uint) int32Value); - public float Float32Value => ValidateType(WingTokenType.Float32, WingTokenType.RawFloat32, float32Value); - public string StringValue => ValidateType(WingTokenType.String, objectValue as string)!; - public string NodeName => ValidateType(WingTokenType.NodeName, objectValue as string)!; - public WingNodeDefinition NodeDefinition => ValidateType(WingTokenType.NodeDefinition, objectValue as WingNodeDefinition)!; - public WingMeterRequest MeterRequest => ValidateType(WingTokenType.MeterRequest, objectValue as WingMeterRequest)!; - public byte Step => ValidateType(WingTokenType.Step, (byte) int32Value); - - /// - /// Writes the message to the given span, assuming that the channel has already been set appropriately. - /// This does not perform any escaping. - /// - /// The span to write data to. - /// The number of bytes written. - internal int CopyTo(Span span) - { - switch (Type) - { - case WingTokenType.FalseOffZero: - span[0] = 0; - return 1; - case WingTokenType.TrueOnOne: - span[0] = 1; - return 1; - case WingTokenType.Int16: - { - short value = Int16Value; - if (value >= 0 && value < 64) - { - span[0] = (byte) value; - return 1; - } - span[0] = 0xd3; - BinaryPrimitives.WriteInt16BigEndian(span[1..], value); - return 3; - } - // TODO: Should we handle small Int32 values with 2-63? - case WingTokenType.Int32: - span[0] = 0xd4; - BinaryPrimitives.WriteInt32BigEndian(span[1..], Int32Value); - return 3; - case WingTokenType.String: - { - string value = StringValue; - if (value == "") - { - span[0] = 0xd0; - return 1; - } - if (value.Length < 65) - { - span[0] = (byte) (0x7f + value.Length); - WingConstants.Encoding.GetBytes(value, span[1..]); - return 1 + value.Length; - } - span[0] = 0xd1; - span[1] = (byte) value.Length; - WingConstants.Encoding.GetBytes(value, span[2..]); - return 2 + value.Length; - } - case WingTokenType.NodeName: - { - string value = NodeName; - span[0] = (byte) (0xbf + value.Length); - WingConstants.Encoding.GetBytes(value, span[1..]); - return 1 + value.Length; - } - case WingTokenType.NodeIndex: - span[0] = 0xd2; - BinaryPrimitives.WriteUInt16BigEndian(span[1..], NodeIndex); - return 3; - case WingTokenType.Float32: - span[0] = 0xd5; - BinaryPrimitives.WriteSingleBigEndian(span[1..], Float32Value); - return 5; - case WingTokenType.RawFloat32: - span[0] = 0xd6; - BinaryPrimitives.WriteSingleBigEndian(span[1..], Float32Value); - return 5; - case WingTokenType.NodeHash: - span[0] = 0xd7; - BinaryPrimitives.WriteUInt32BigEndian(span[1..], NodeHash); - return 5; - case WingTokenType.Toggle: - span[0] = 0xd8; - return 1; - case WingTokenType.Step: - span[0] = 0xd9; - span[1] = Step; - return 2; - case WingTokenType.RootNode: - span[0] = 0xda; - return 1; - case WingTokenType.ParentNode: - span[0] = 0xdb; - return 1; - case WingTokenType.DataRequest: - span[0] = 0xdc; - return 1; - case WingTokenType.DefinitionRequest: - span[0] = 0xdd; - return 1; - case WingTokenType.EndOfRequest: - span[0] = 0xde; - return 1; - case WingTokenType.NodeDefinition: - return NodeDefinition.CopyTo(span); - case WingTokenType.MeterRequest: - return MeterRequest.CopyTo(span); - default: - throw new InvalidOperationException($"Unknown token type {Type}"); - } - - } - - private T ValidateType(WingTokenType expectedType1, T value, [CallerMemberName] string? caller = null) => - Type == expectedType1 ? value : throw new InvalidOperationException($"Invalid use of {caller} for type {Type}"); - - private T ValidateType(WingTokenType expectedType1, WingTokenType expectedType2, T value, [CallerMemberName] string? caller = null) => - Type == expectedType1 || Type == expectedType2 ? value : throw new InvalidOperationException($"Invalid use of {caller} for type {Type}"); - - private T ValidateType(WingTokenType expectedType1, WingTokenType expectedType2, WingTokenType expectedType3, T value, [CallerMemberName] string? caller = null) => - Type == expectedType1 || Type == expectedType2 || Type == expectedType3 ? value : throw new InvalidOperationException($"Invalid use of {caller} for type {Type}"); - - private T ValidateType(WingTokenType expectedType1, WingTokenType expectedType2, WingTokenType expectedType3, WingTokenType expectedType4, T value, [CallerMemberName] string? caller = null) => - Type == expectedType1 || Type == expectedType2 || Type == expectedType3 || Type == expectedType4 ? value : throw new InvalidOperationException($"Invalid use of {caller} for type {Type}"); - - internal static (WingToken?, int) TryParse(ReadOnlySpan span) - { - byte firstByte = span[0]; - - return firstByte switch - { - 0 => (FalseOffZero, 1), - 1 => (TrueOnOne, 1), - <= 0x3f => (ForInt16(firstByte), 1), - <= 0x7f => (ForNodeIndex((ushort) (firstByte - 0x3f)), 1), - <= 0xbf => DecodeString(span, 1, firstByte - 0x7f) is string value ? (ForString(value), value.Length + 1) : (null, 0), - <= 0xcf => DecodeString(span, 1, firstByte - 0xbf) is string value ? (ForNodeName(value), value.Length + 1) : (null, 0), - 0xd0 => (EmptyString, 1), - 0xd1 => DecodeString(span, 2, firstByte - 0xd0) is string value ? (ForString(value), value.Length + 2) : (null, 0), - 0xd2 => DecodeUInt16(span) is ushort value ? (ForNodeIndex(value), 3) : (null, 0), - 0xd3 => DecodeInt16(span) is short value ? (ForInt16(value), 3) : (null, 0), - 0xd4 => DecodeInt32(span) is int value ? (ForInt32(value), 5) : (null, 0), - 0xd5 => DecodeFloat(span) is float value ? (ForFloat32(value), 5) : (null, 0), - 0xd6 => DecodeFloat(span) is float value ? (ForRawFloat32(value), 5) : (null, 0), - 0xd7 => DecodeInt32(span) is int value ? (ForNodeHash((uint) value), 5) : (null, 0), - 0xd8 => (Toggle, 1), - 0xd9 => span.Length < 2 ? (null, 0) : (ForStep(span[1]), 2), - 0xda => (RootNode, 1), - 0xdb => (ParentNode, 1), - 0xdc => (DataRequest, 1), - 0xdd => (DefinitionRequest, 1), - 0xde => (EndOfRequest, 1), - 0xdf => DecodeNodeDefinition(span), - _ => throw new ArgumentException($"Unexpected first byte of token: 0x{firstByte:x2}") - }; - - string? DecodeString(ReadOnlySpan span, int offset, int length) => span.Length < offset + length ? null : WingConstants.Encoding.GetString(span.Slice(offset, length)); - - ushort? DecodeUInt16(ReadOnlySpan span) => span.Length < 3 ? null : BinaryPrimitives.ReadUInt16BigEndian(span.Slice(1, 2)); - short? DecodeInt16(ReadOnlySpan span) => span.Length < 3 ? null : BinaryPrimitives.ReadInt16BigEndian(span.Slice(1, 2)); - int? DecodeInt32(ReadOnlySpan span) => span.Length < 5 ? null : BinaryPrimitives.ReadInt32BigEndian(span.Slice(1, 4)); - float? DecodeFloat(ReadOnlySpan span) => span.Length < 5 ? null : BinaryPrimitives.ReadSingleBigEndian(span.Slice(1, 4)); - - (WingToken?, int) DecodeNodeDefinition(ReadOnlySpan span) - { - if (DecodeUInt16(span) is not ushort shortLength) - { - return (null, 0); - } - if (shortLength == 0) - { - if (span.Length < 7) // DF 00 00 + (length as 4 bytes) - { - return (null, 0); - } - int longLength = BinaryPrimitives.ReadInt32BigEndian(span.Slice(3, 4)); - return MaybeDecode(span, 7, longLength); - } - else - { - return MaybeDecode(span, 3, shortLength); - } - - (WingToken?, int) MaybeDecode(ReadOnlySpan span, int bodyStart, int bodyLength) => - span.Length < bodyStart + bodyLength - ? (null, 0) - : (ForNodeDefinition(WingNodeDefinition.Parse(span.Slice(bodyStart, bodyLength))), bodyStart + bodyLength); - } - } -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Core/WingTokenProcessor.cs b/DigiMixer/DigiMixer.BehringerWing.Core/WingTokenProcessor.cs deleted file mode 100644 index c607bdf6..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Core/WingTokenProcessor.cs +++ /dev/null @@ -1,148 +0,0 @@ -using System.Buffers; - -namespace DigiMixer.BehringerWing.Core; - -/// -/// Handles buffering, escaping and unescaping for Wing tokens, keeping track of the currently -/// active send/receive channels. -/// This is separated from so that it can easily be unit tested. -/// -internal class WingTokenProcessor -{ - internal event EventHandler<(WingProtocolChannel, WingToken)>? TokenReceived; - - private const int WriteBufferSize = 65536; - private readonly MemoryPool WritePool = MemoryPool.Shared; - - private WingProtocolChannel writeChannel = WingProtocolChannel.None; - private WingProtocolChannel readChannel = WingProtocolChannel.None; - - /// - /// This is used to store unescaped data for tokens. The data is unescaped in - /// and parsed as far as possible, but some data may be left in the buffer between calls. This is always - /// stored at the start of the buffer, and the amount of unprocessed data is stored in . - /// - private readonly Memory readBuffer = new byte[90000]; - private int unprocessedReadLength; - /// - /// If the buffer passed to finishes with an escape byte, we don't know what that will end up - /// meaning. (It could be a channel change, it could be the first half of an escape pair, it could just be itself.) - /// This flag remembers that we effectively have to start with the escape byte on the next call. (It's also used - /// within the method to remember whether we're within an escape sequence.) - /// - private bool midEscapeReading; - - /// - /// Writes the token into the given span, escaping if necessary. - /// All tokens are written to the same channel. - /// - /// The number of bytes written. - internal int WriteTokens(WingProtocolChannel channel, IEnumerable tokens, Span span) - { - int escapedLength = 0; - if (channel != writeChannel) - { - span[0] = 0xdf; - span[1] = (byte) (0xd0 + (byte) channel); - writeChannel = channel; - escapedLength = 2; - } - - // Write the unescaped token data to our internal buffer. - using var memoryOwner = WritePool.Rent(WriteBufferSize); - var nonEscapedSpan = memoryOwner.Memory.Span; - int nonEscapedLength = 0; - foreach (var token in tokens) - { - nonEscapedLength += token.CopyTo(nonEscapedSpan[nonEscapedLength..]); - } - - // Now copy it to the caller's buffer, escaping as we go. - for (int i = 0; i < nonEscapedLength; i++) - { - span[escapedLength++] = nonEscapedSpan[i]; - if (nonEscapedSpan[i] == WingConstants.Escape && - (i == nonEscapedLength - 1 || (nonEscapedSpan[i + 1] >= WingConstants.MinValueToEscape && nonEscapedSpan[i + 1] <= WingConstants.MaxValueToEscape))) - { - span[escapedLength++] = WingConstants.EscapedEscape; - } - } - return escapedLength; - } - - internal void Process(ReadOnlySpan data) - { - foreach (var db in data) - { - if (midEscapeReading) - { - midEscapeReading = false; - // Channel change: only valid between tokens. - if (db >= WingConstants.MinProtocolChannelChange && db <= WingConstants.MaxProtocolChannelChange) - { - // Process any pending tokens. - ProcessReadBuffer(); - if (unprocessedReadLength != 0) - { - throw new InvalidDataException("Channel change mid-token"); - } - readChannel = (WingProtocolChannel) (db - WingConstants.MinProtocolChannelChange); - } - // Escaped escape: write the escape byte, then continue - else if (db == WingConstants.EscapedEscape) - { - readBuffer.Span[unprocessedReadLength++] = WingConstants.Escape; - } - // Just an escape byte followed by a normal byte: write them both out. - else - { - readBuffer.Span[unprocessedReadLength++] = WingConstants.Escape; - readBuffer.Span[unprocessedReadLength++] = db; - } - continue; - } - if (db == WingConstants.Escape) - { - midEscapeReading = true; - continue; - } - readBuffer.Span[unprocessedReadLength++] = db; - } - // Process any tokens we've now unescaped. - ProcessReadBuffer(); - } - - /// - /// Processes the unescaped read buffer as far as possible, moving any remaining data to the start and setting - /// if necessary. - /// - private void ProcessReadBuffer() - { - if (unprocessedReadLength == 0) - { - return; - } - int start = 0; - while (start < unprocessedReadLength) - { - var (token, tokenLength) = WingToken.TryParse(readBuffer.Span[start..unprocessedReadLength]); - if (token is null) - { - break; - } - TokenReceived?.Invoke(this, (readChannel, token)); - start += tokenLength; - } - // If we've consumed the whole buffer, reset to the start. (No copying required.) - if (start == unprocessedReadLength) - { - unprocessedReadLength = 0; - } - // Otherwise, copy whatever's left. - else - { - readBuffer[start..unprocessedReadLength].CopyTo(readBuffer); - unprocessedReadLength -= start; - } - } -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Core/WingTokenType.cs b/DigiMixer/DigiMixer.BehringerWing.Core/WingTokenType.cs deleted file mode 100644 index b3d5e83f..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Core/WingTokenType.cs +++ /dev/null @@ -1,26 +0,0 @@ -namespace DigiMixer.BehringerWing.Core; - -public enum WingTokenType -{ - None, - FalseOffZero, - TrueOnOne, - Int16, - NodeIndex, - String, - NodeName, - Int32, - Float32, - RawFloat32, - NodeHash, - Toggle, - Step, - RootNode, - ParentNode, - DataRequest, - DefinitionRequest, - EndOfRequest, - NodeDefinition, - // This is never received, only sent. - MeterRequest -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Tools/DigiMixer.BehringerWing.Tools.csproj b/DigiMixer/DigiMixer.BehringerWing.Tools/DigiMixer.BehringerWing.Tools.csproj deleted file mode 100644 index c7f475b4..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Tools/DigiMixer.BehringerWing.Tools.csproj +++ /dev/null @@ -1,15 +0,0 @@ - - - - Exe - net9.0 - enable - enable - - - - - - - - diff --git a/DigiMixer/DigiMixer.BehringerWing.Tools/HashesGenerator.cs b/DigiMixer/DigiMixer.BehringerWing.Tools/HashesGenerator.cs deleted file mode 100644 index c646916b..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Tools/HashesGenerator.cs +++ /dev/null @@ -1,79 +0,0 @@ -using DigiMixer.Core; -using DigiMixer.Diagnostics; -using Newtonsoft.Json; - -namespace DigiMixer.BehringerWing.Tools; - -public class HashesGenerator(string JsonFile, string OutputFile) : Tool -{ - public override Task Execute() - { - string json = File.ReadAllText(JsonFile); - var nameToHash = JsonConvert.DeserializeObject>(json)!; - - var inputPrefixes = Enumerable.Range(1, Channels.WingInputCount).Select(i => $"ch.{i}") - .Concat(Enumerable.Range(1, Channels.AuxCount).Select(i => $"aux.{i}")) - .ToList(); - - var outputPrefixes = Enumerable.Range(1, Channels.MainCount).Select(i => $"main.{i}") - .Concat(Enumerable.Range(1, Channels.BusCount).Select(i => $"bus.{i}")) - .ToList(); - - var outputsForInputs = outputPrefixes.Select(op => op.Replace("bus", "send")); - - var inputs = inputPrefixes - .Select((prefix, index) => new InputChannelHashes( - ChannelId.Input(index + 1), - nameToHash[$"{prefix}.$name"], - nameToHash[$"{prefix}.fdr"], - nameToHash[$"{prefix}.mute"], - nameToHash[$"{prefix}.in.set.$mode"], - [.. outputsForInputs.Select(op => nameToHash[$"{prefix}.{op}.lvl"])])) - .ToList(); - - var outputs = outputPrefixes - .Select((prefix, index) => new OutputChannelHashes( - ChannelId.Output(index + 1), - nameToHash[$"{prefix}.name"], - nameToHash[$"{prefix}.fdr"], - nameToHash[$"{prefix}.mute"])) - .ToList(); - - using var writer = File.CreateText(OutputFile); - writer.WriteLine("using DigiMixer.Core;"); - writer.WriteLine("using System.Collections.Immutable;"); - writer.WriteLine(); - writer.WriteLine("namespace DigiMixer.BehringerWing;"); - writer.WriteLine(); - writer.WriteLine($"// Autogenerated code - do not edit!"); - writer.WriteLine("internal partial record InputChannelHashes"); - writer.WriteLine("{"); - writer.WriteLine(" internal static ImmutableList AllInputs { get; } ="); - writer.WriteLine(" ["); - foreach (var input in inputs) - { - writer.WriteLine($" new(ChannelId.Input({input.Id.Value}), {input.Name}, {input.Fader}, {input.Mute}, {input.StereoMode}, [{string.Join(", ", input.OutputLevels)}]),"); - } - writer.WriteLine(" ];"); - writer.WriteLine(); - writer.WriteLine(" internal static ImmutableDictionary AllInputsByChannelId { get; } ="); - writer.WriteLine(" InputChannelHashes.AllInputs.ToImmutableDictionary(ch => ch.Id);"); - writer.WriteLine("}"); - writer.WriteLine(); - writer.WriteLine("internal partial record OutputChannelHashes"); - writer.WriteLine("{"); - writer.WriteLine(" internal static ImmutableList AllOutputs { get; } ="); - writer.WriteLine(" ["); - foreach (var output in outputs) - { - writer.WriteLine($" new(ChannelId.Output({output.Id.Value}), {output.Name}, {output.Fader}, {output.Mute}),"); - } - writer.WriteLine(" ];"); - writer.WriteLine(); - writer.WriteLine(" internal static ImmutableDictionary AllOutputsByChannelId { get; } ="); - writer.WriteLine(" AllOutputs.ToImmutableDictionary(ch => ch.Id);"); - writer.WriteLine("}"); - - return Task.FromResult(0); - } -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Tools/Program.cs b/DigiMixer/DigiMixer.BehringerWing.Tools/Program.cs deleted file mode 100644 index dda3891e..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Tools/Program.cs +++ /dev/null @@ -1,3 +0,0 @@ -using DigiMixer.Diagnostics; - -await Tool.ExecuteFromCommandLine(args, typeof(Program)); diff --git a/DigiMixer/DigiMixer.BehringerWing.Tools/ShowMeters.cs b/DigiMixer/DigiMixer.BehringerWing.Tools/ShowMeters.cs deleted file mode 100644 index f0307774..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Tools/ShowMeters.cs +++ /dev/null @@ -1,52 +0,0 @@ -using DigiMixer.BehringerWing.Core; -using DigiMixer.Diagnostics; -using Microsoft.Extensions.Logging; - -namespace DigiMixer.BehringerWing.Tools; - -internal class ShowMeters : Tool -{ - // Assume the address... - private const string Address = "192.168.1.74"; - private const int Port = 2222; - - public async override Task Execute() - { - Console.Clear(); - var loggingFactory = LoggerFactory.Create(builder => builder.AddConsole().AddSimpleConsole(options => options.SingleLine = true) - .SetMinimumLevel(LogLevel.Debug)); - - var controlClient = new WingClient(loggingFactory.CreateLogger("Control"), Address, Port); - await controlClient.Connect(default); - controlClient.Start(); - - var meterClient = new WingMeterClient(loggingFactory.CreateLogger("Meters")); - meterClient.MessageReceived += PrintMeter; - meterClient.Start(); - - var request = new WingMeterRequest(UdpPort: null, ReportId: 0x12345678, [new WingMeterRequest.ChannelList(WingMeterType.InputChannelV2, [1])]); - await controlClient.SendMeterRequest(request with { UdpPort = meterClient.LocalUdpPort }, default); - - while (true) - { - await Task.Delay(4000); - await controlClient.SendMeterRequest(request, default); - } - } - - private void PrintMeter(object? sender, WingMeterMessage message) - { - Console.SetCursorPosition(0, 0); - Console.WriteLine($"Total values: {message.Data.Count}"); - Console.WriteLine(); - Console.WriteLine("Input channel 1"); - var channelV2 = message.GetChannelV2(0, 0); - Console.WriteLine($"Input: {channelV2.InputLeft,16} {channelV2.InputRight,16}"); - Console.WriteLine($"Output: {channelV2.OutputLeft,16} {channelV2.OutputRight,16}"); - - Console.WriteLine("Main 1"); - channelV2 = message.GetChannelV2(1, 0); - Console.WriteLine($"Input: {channelV2.InputLeft,16} {channelV2.InputRight,16}"); - Console.WriteLine($"Output: {channelV2.OutputLeft,16} {channelV2.OutputRight,16}"); - } -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Tools/StartClient.cs b/DigiMixer/DigiMixer.BehringerWing.Tools/StartClient.cs deleted file mode 100644 index b7708741..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Tools/StartClient.cs +++ /dev/null @@ -1,111 +0,0 @@ -using DigiMixer.BehringerWing.Core; -using DigiMixer.Diagnostics; -using Microsoft.Extensions.Logging; -using Newtonsoft.Json; - -namespace DigiMixer.BehringerWing.Tools; - -internal class StartClient(string JsonFile) : Tool -{ - // Assume the address... - private const string Address = "192.168.1.74"; - private const int Port = 2222; - - public override async Task Execute() - { - string json = File.ReadAllText(JsonFile); - var descriptions = JsonConvert.DeserializeObject>(json)!; - - var namesByNodeHash = descriptions.ToDictionary(pair => pair.Value, pair => pair.Key); - - var loggingFactory = LoggerFactory.Create(builder => builder.AddConsole().AddSimpleConsole(options => options.SingleLine = true) - .SetMinimumLevel(LogLevel.Debug)); - - var client = new WingClient(loggingFactory.CreateLogger("Wing"), Address, Port); - - uint nodeHash = 0; - string nodeName = ""; - client.AudioEngineTokenReceived += (sender, token) => - { - //Console.WriteLine($"Received {token.Type}"); - switch (token.Type) - { - case WingTokenType.FalseOffZero: - Console.WriteLine($"{nodeName}: false/off/0"); - break; - case WingTokenType.TrueOnOne: - Console.WriteLine($"{nodeName}: true/on/1"); - break; - case WingTokenType.Int16: - Console.WriteLine($"{nodeName}: {token.Int16Value} (int16)"); - break; - case WingTokenType.NodeIndex: - Console.WriteLine($"Node index: {token.NodeIndex}"); - break; - case WingTokenType.String: - Console.WriteLine($"{nodeName}: {token.StringValue}"); - break; - case WingTokenType.NodeName: - Console.WriteLine($"Node name: {token.NodeName}"); - break; - case WingTokenType.Int32: - Console.WriteLine($"{nodeName}: {token.Int32Value} (int32)"); - break; - case WingTokenType.Float32: - Console.WriteLine($"{nodeName}: {token.Float32Value}"); - break; - case WingTokenType.RawFloat32: - Console.WriteLine($"{nodeName}: {token.Float32Value} (raw)"); - break; - case WingTokenType.NodeHash: - nodeHash = token.NodeHash; - nodeName = namesByNodeHash.GetValueOrDefault(nodeHash) ?? nodeHash.ToString("x8"); - break; - case WingTokenType.Toggle: - Console.WriteLine($"{nodeName}: Toggle"); - break; - case WingTokenType.Step: - Console.WriteLine($"{nodeName}: Step {token.Step}"); - break; - case WingTokenType.RootNode: - Console.WriteLine($"Root node"); - break; - case WingTokenType.ParentNode: - Console.WriteLine($"Parent node"); - break; - case WingTokenType.DataRequest: - Console.WriteLine($"Data request"); - break; - case WingTokenType.DefinitionRequest: - Console.WriteLine($"Node definition request"); - break; - case WingTokenType.EndOfRequest: - Console.WriteLine($"End of request"); - break; - case WingTokenType.NodeDefinition: - Console.WriteLine($"Node definition"); - break; - default: - Console.WriteLine($"Received unknown node type {token.Type}"); - break; - } - }; - - await client.Connect(default); - client.Start(); - - await client.SendAudioEngineTokens([WingToken.RootNode, WingToken.DataRequest], default); - //await client.SendAudioEngineTokens([WingToken.ForNodeHash(2273546959), WingToken.DataRequest], default); - - //bool mute = true; - while (true) - { - await Task.Delay(5000); - await client.SendAudioEngineTokens([WingToken.RootNode], default); - //await client.SendAudioEngineTokens([WingToken.ForNodeHash(4111428088), WingToken.ForBool(mute)], default); - //mute = !mute; - } - - //return 0; - } -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Tools/WapiConverter.cs b/DigiMixer/DigiMixer.BehringerWing.Tools/WapiConverter.cs deleted file mode 100644 index 1c07058c..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Tools/WapiConverter.cs +++ /dev/null @@ -1,36 +0,0 @@ -using DigiMixer.Diagnostics; -using Newtonsoft.Json; -using System.Globalization; - -namespace DigiMixer.BehringerWing.Tools; - -public class WapiConverter(string SourceFile, string JsonFile) : Tool -{ - public override Task Execute() - { - var sourceLines = File.ReadAllLines(SourceFile); - - var nodes = sourceLines - .SkipWhile(line => !line.Contains("wingdataset")) - .Skip(1) - .TakeWhile(line => line.Contains('{')) - .Select(ParseSourceLine) - .ToDictionary(node => node.name, node => node.hash); - - string json = JsonConvert.SerializeObject(nodes, Formatting.Indented); - File.WriteAllText(JsonFile, json); - Console.WriteLine($"Converted {nodes.Count} nodes."); - return Task.FromResult(0); - - static (string name, uint hash) ParseSourceLine(string line) - { - // Sample line: - // { "cfg.mtr.$scopesrc", 0xf1f55302, I32, 0x0240, { 0} }, - - var bits = line.Split(','); - string name = bits[0].Split('"')[1]; - uint hash = uint.Parse(bits[1].Trim().Replace("0x", ""), NumberStyles.HexNumber); - return new(name, hash); - } - } -} diff --git a/DigiMixer/DigiMixer.BehringerWing.Tools/nodes.json b/DigiMixer/DigiMixer.BehringerWing.Tools/nodes.json deleted file mode 100644 index 5bf56304..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.Tools/nodes.json +++ /dev/null @@ -1,36826 +0,0 @@ -{ - "$$unknown": 0, - "$stat": 2543846457, - "$stat.A": 3478156002, - "$stat.A.stat": 554023840, - "$stat.A.dev": 2816984698, - "$stat.B": 2104739037, - "$stat.B.stat": 1463728089, - "$stat.B.dev": 2032456987, - "$stat.C": 1533529646, - "$stat.C.stat": 1356429908, - "$stat.C.dev": 2183006102, - "$stat.lock": 1792268214, - "$stat.ppm": 3538190183, - "$stat.solo": 3339262443, - "$stat.sip": 4063931299, - "$stat.rtcerr": 1180276683, - "$stat.time": 2538703482, - "$stat.date": 630786370, - "$stat.usbstate": 4264137798, - "$stat.usbvolname": 2036209123, - "$stat.sc_stat": 1564662452, - "$stat.sc_devices": 3055910638, - "$stat.sc_upcnt": 1820415703, - "$stat.sc_dncnt": 3472484219, - "$stat.sc_uprout": 2510630254, - "$stat.rmt_a": 993625604, - "$stat.rmt_b": 2417284955, - "$stat.rmt_c": 3598271325, - "cfg": 3989469945, - "cfg.mainlink": 393912393, - "cfg.dcamgrp": 3134760765, - "cfg.mon": 2051940530, - "cfg.mon.1": 3816049212, - "cfg.mon.1.$lvl": 2033434390, - "cfg.mon.1.inv": 19383332, - "cfg.mon.1.pan": 2631039317, - "cfg.mon.1.wid": 2177635702, - "cfg.mon.1.eq": 3523171905, - "cfg.mon.1.eq.on": 4180624256, - "cfg.mon.1.eq.lsg": 3235987283, - "cfg.mon.1.eq.lsf": 152258189, - "cfg.mon.1.eq.1g": 2660112656, - "cfg.mon.1.eq.1f": 3840072182, - "cfg.mon.1.eq.1q": 2006530176, - "cfg.mon.1.eq.2g": 563707273, - "cfg.mon.1.eq.2f": 966497876, - "cfg.mon.1.eq.2q": 2458307833, - "cfg.mon.1.eq.3g": 1281246293, - "cfg.mon.1.eq.3f": 646995232, - "cfg.mon.1.eq.3q": 4183462853, - "cfg.mon.1.eq.4g": 4082802294, - "cfg.mon.1.eq.4f": 296711644, - "cfg.mon.1.eq.4q": 1818601958, - "cfg.mon.1.eq.5g": 3999647471, - "cfg.mon.1.eq.5f": 873990714, - "cfg.mon.1.eq.5q": 4283656415, - "cfg.mon.1.eq.6g": 417017275, - "cfg.mon.1.eq.6f": 2472333574, - "cfg.mon.1.eq.6q": 4262669611, - "cfg.mon.1.eq.hsg": 1161956055, - "cfg.mon.1.eq.hsf": 1995722252, - "cfg.mon.1.lim": 1328772205, - "cfg.mon.1.dly": 3914173178, - "cfg.mon.1.dly.on": 1445238041, - "cfg.mon.1.dly.m": 3278331235, - "cfg.mon.1.dim": 3484644406, - "cfg.mon.1.pfldim": 3834831616, - "cfg.mon.1.eqbdtrim": 2492017972, - "cfg.mon.1.srclvl": 4272211975, - "cfg.mon.1.srcmix": 2615340151, - "cfg.mon.1.src": 651116600, - "cfg.mon.1.$lvlact": 3631666008, - "cfg.mon.1.tags": 1079402732, - "cfg.mon.2": 216953134, - "cfg.mon.2.$lvl": 1650723168, - "cfg.mon.2.inv": 2442510814, - "cfg.mon.2.pan": 2801872075, - "cfg.mon.2.wid": 396454292, - "cfg.mon.2.eq": 1473210308, - "cfg.mon.2.eq.on": 69342398, - "cfg.mon.2.eq.lsg": 3084127773, - "cfg.mon.2.eq.lsf": 3927954755, - "cfg.mon.2.eq.1g": 3158329294, - "cfg.mon.2.eq.1f": 4002827096, - "cfg.mon.2.eq.1q": 2514987454, - "cfg.mon.2.eq.2g": 736579935, - "cfg.mon.2.eq.2f": 479011498, - "cfg.mon.2.eq.2q": 2610452815, - "cfg.mon.2.eq.3g": 1464643699, - "cfg.mon.2.eq.3f": 128093150, - "cfg.mon.2.eq.3q": 4010263139, - "cfg.mon.2.eq.4g": 3574057688, - "cfg.mon.2.eq.4f": 794681874, - "cfg.mon.2.eq.4q": 1320753352, - "cfg.mon.2.eq.5g": 213424153, - "cfg.mon.2.eq.5f": 1057266532, - "cfg.mon.2.eq.5q": 476051977, - "cfg.mon.2.eq.6g": 936247709, - "cfg.mon.2.eq.6f": 2288649448, - "cfg.mon.2.eq.6q": 130374029, - "cfg.mon.2.eq.hsg": 653294585, - "cfg.mon.2.eq.hsf": 2168881002, - "cfg.mon.2.lim": 345833295, - "cfg.mon.2.dly": 487361980, - "cfg.mon.2.dly.on": 1893039759, - "cfg.mon.2.dly.m": 2196781245, - "cfg.mon.2.dim": 3397041728, - "cfg.mon.2.pfldim": 3540787306, - "cfg.mon.2.eqbdtrim": 2564322086, - "cfg.mon.2.srclvl": 178633341, - "cfg.mon.2.srcmix": 2909072749, - "cfg.mon.2.src": 599474834, - "cfg.mon.2.$lvlact": 3345318955, - "cfg.mon.2.tags": 3837757022, - "cfg.solo": 640975858, - "cfg.solo.mode": 2623088103, - "cfg.solo.mon": 2816720830, - "cfg.solo.mute": 3551598499, - "cfg.solo.$dim": 3327884913, - "cfg.solo.$mono": 3425384268, - "cfg.solo.$flip": 3083725051, - "cfg.solo.chtap": 2396442457, - "cfg.solo.bustap": 3794635606, - "cfg.solo.maintap": 606928184, - "cfg.solo.mtxtap": 2743741238, - "cfg.solo.srcsolo": 3496304485, - "cfg.solo.$srcsolo": 1738191574, - "cfg.solo.$srcsgrp": 1164430302, - "cfg.solo.$srcsin": 505315810, - "cfg.rta": 3085996440, - "cfg.rta.$src": 437112235, - "cfg.rta.$tap": 1612486809, - "cfg.rta.$dec": 1688791753, - "cfg.rta.$det": 1522607011, - "cfg.rta.rtasrc": 792206572, - "cfg.rta.rtatap": 4064078013, - "cfg.rta.rtadecay": 224896345, - "cfg.rta.rtadet": 3015320, - "cfg.rta.rtarange": 2379072725, - "cfg.rta.rtagain": 1344689153, - "cfg.rta.rtaauto": 1862919304, - "cfg.rta.eqdecay": 120520110, - "cfg.rta.eqdet": 1188440166, - "cfg.rta.eqrange": 2886454588, - "cfg.rta.eqgain": 1002924569, - "cfg.rta.eqauto": 2121472613, - "cfg.mtr": 973268116, - "cfg.mtr.$scopesrc": 4059386626, - "cfg.mtr.$scopetap": 1797922324, - "cfg.mtr.scopesrc": 2479946237, - "cfg.mtr.scopetap": 3292233366, - "cfg.mtr.mtrsfc": 2224189613, - "cfg.mtr.mtrsfc.in": 1505432622, - "cfg.mtr.mtrsfc.bus": 1040704778, - "cfg.mtr.mtrsfc.main": 2295275253, - "cfg.mtr.mtrsfc.mtx": 533717090, - "cfg.mtr.mtrsfc.dca": 3750137731, - "cfg.mtr.mtrpage": 3342099679, - "cfg.mtr.mtrpage.in": 232270201, - "cfg.mtr.mtrpage.bus": 2639107745, - "cfg.mtr.mtrpage.main": 4226868767, - "cfg.mtr.mtrpage.mtx": 222812501, - "cfg.mtr.mtrpage.dca": 1844891816, - "cfg.mtr.mainmtr": 874622998, - "cfg.mtr.mainpos": 2163341047, - "cfg.talk": 3801403378, - "cfg.talk.assign": 2412652176, - "cfg.talk.$lvl": 83104484, - "cfg.talk.A": 3229112940, - "cfg.talk.A.$on": 118143152, - "cfg.talk.A.mode": 1772495716, - "cfg.talk.A.mondim": 453839326, - "cfg.talk.A.busdim": 3491355670, - "cfg.talk.A.indiv": 1075250407, - "cfg.talk.A.B1": 2087094946, - "cfg.talk.A.B2": 3040625824, - "cfg.talk.A.B3": 2227323670, - "cfg.talk.A.B4": 2935514193, - "cfg.talk.A.B5": 3395958204, - "cfg.talk.A.B6": 4282355479, - "cfg.talk.A.B7": 3116753936, - "cfg.talk.A.B8": 4244333963, - "cfg.talk.A.B9": 1461294321, - "cfg.talk.A.B10": 2644748679, - "cfg.talk.A.B11": 3782804217, - "cfg.talk.A.B12": 3053376566, - "cfg.talk.A.B13": 3509908867, - "cfg.talk.A.B14": 3954879146, - "cfg.talk.A.B15": 461143031, - "cfg.talk.A.B16": 1033556889, - "cfg.talk.A.MX1": 3522374659, - "cfg.talk.A.MX2": 2347586198, - "cfg.talk.A.MX3": 2336701205, - "cfg.talk.A.MX4": 2694945290, - "cfg.talk.A.MX5": 2851832697, - "cfg.talk.A.MX6": 1509271436, - "cfg.talk.A.MX7": 1330614467, - "cfg.talk.A.MX8": 145371077, - "cfg.talk.A.M1": 1809096623, - "cfg.talk.A.M2": 2513324221, - "cfg.talk.A.M3": 2334713603, - "cfg.talk.A.M4": 981646420, - "cfg.talk.B": 3354913542, - "cfg.talk.B.$on": 3221365936, - "cfg.talk.B.mode": 3710998377, - "cfg.talk.B.mondim": 529830343, - "cfg.talk.B.busdim": 614066371, - "cfg.talk.B.indiv": 2469328082, - "cfg.talk.B.B1": 2477418146, - "cfg.talk.B.B2": 3299119264, - "cfg.talk.B.B3": 1856773910, - "cfg.talk.B.B4": 3304097873, - "cfg.talk.B.B5": 3137454524, - "cfg.talk.B.B6": 268839703, - "cfg.talk.B.B7": 2789437456, - "cfg.talk.B.B8": 3964131723, - "cfg.talk.B.B9": 1850849521, - "cfg.talk.B.B10": 2993016199, - "cfg.talk.B.B11": 4167874297, - "cfg.talk.B.B12": 2641457206, - "cfg.talk.B.B13": 3836631427, - "cfg.talk.B.B14": 3652394666, - "cfg.talk.B.B15": 868505591, - "cfg.talk.B.B16": 1439598489, - "cfg.talk.B.MX1": 2254725126, - "cfg.talk.B.MX2": 3222412947, - "cfg.talk.B.MX3": 403369752, - "cfg.talk.B.MX4": 2480793095, - "cfg.talk.B.MX5": 3050747772, - "cfg.talk.B.MX6": 226784137, - "cfg.talk.B.MX7": 1535591622, - "cfg.talk.B.MX8": 2513478600, - "cfg.talk.B.M1": 3741199274, - "cfg.talk.B.M2": 145790136, - "cfg.talk.B.M3": 1453978398, - "cfg.talk.B.M4": 2935468121, - "cfg.amix": 1042989645, - "cfg.amix.x": 3468350302, - "cfg.amix.y": 2713208889, - "$syscfg": 4170717350, - "$syscfg.consolename": 3385532640, - "$syscfg.logflags": 3101105809, - "$syscfg.ipmode": 3172224342, - "$syscfg.ip0": 472628958, - "$syscfg.ip1": 1130801829, - "$syscfg.ip2": 2313124872, - "$syscfg.ip3": 3160082447, - "$syscfg.msk0": 1368604510, - "$syscfg.msk1": 2068720491, - "$syscfg.msk2": 2579954852, - "$syscfg.msk3": 1816299818, - "$syscfg.gw0": 2501243927, - "$syscfg.gw1": 3348160570, - "$syscfg.gw2": 4048138644, - "$syscfg.gw3": 935673259, - "$syscfg.$ipapply": 2878575448, - "$syscfg.$firmware": 2657714525, - "$syscfg.$serial": 1442495471, - "$syscfg.$cnscfg": 1557585513, - "$syscfg.$cnsmdl": 2555849122, - "$syscfg.$hwversion": 2798055825, - "$syscfg.tcplock": 751862308, - "$syscfg.usbh_spd": 1116503982, - "$syscfg.$usbspd_act": 3487210066, - "$syscfg.eth_cfg": 1719922593, - "$syscfg.opt_mod": 3291263039, - "io": 693073812, - "io.altsw": 4191032694, - "io.autoaltovr": 3577772400, - "io.in": 481764768, - "io.in.LCL": 1298411291, - "io.in.LCL.1": 1785656874, - "io.in.LCL.1.mode": 1688661414, - "io.in.LCL.1.g": 481939051, - "io.in.LCL.1.vph": 2047843662, - "io.in.LCL.1.mute": 3552772559, - "io.in.LCL.1.pol": 11805462, - "io.in.LCL.1.col": 2561097629, - "io.in.LCL.1.name": 3646684622, - "io.in.LCL.1.icon": 3999119276, - "io.in.LCL.1.tags": 1185600068, - "io.in.LCL.1.$ha": 4211404927, - "io.in.LCL.1.rmt": 635029573, - "io.in.LCL.1.$ract": 3093387192, - "io.in.LCL.1.$rdest": 1230527061, - "io.in.LCL.1.rcvc": 2359576459, - "io.in.LCL.1.$mute": 3667114362, - "io.in.LCL.2": 2288382059, - "io.in.LCL.2.mode": 3585999811, - "io.in.LCL.2.g": 205628046, - "io.in.LCL.2.vph": 1761125595, - "io.in.LCL.2.mute": 3802917730, - "io.in.LCL.2.pol": 298602227, - "io.in.LCL.2.col": 2837426544, - "io.in.LCL.2.name": 1249178715, - "io.in.LCL.2.icon": 2112271689, - "io.in.LCL.2.tags": 3588385489, - "io.in.LCL.2.$ha": 3929886850, - "io.in.LCL.2.rmt": 369194088, - "io.in.LCL.2.$ract": 4031650447, - "io.in.LCL.2.$rdest": 2054909250, - "io.in.LCL.2.rcvc": 2646340542, - "io.in.LCL.2.$mute": 3672187193, - "io.in.LCL.3": 728571838, - "io.in.LCL.3.mode": 4142995705, - "io.in.LCL.3.g": 721820372, - "io.in.LCL.3.vph": 2276071537, - "io.in.LCL.3.mute": 3288048920, - "io.in.LCL.3.pol": 856008361, - "io.in.LCL.3.col": 3438242906, - "io.in.LCL.3.name": 1849346417, - "io.in.LCL.3.icon": 2670986003, - "io.in.LCL.3.tags": 4145358331, - "io.in.LCL.3.$ha": 109890808, - "io.in.LCL.3.rmt": 4189985650, - "io.in.LCL.3.$ract": 1430141088, - "io.in.LCL.3.$rdest": 1745700452, - "io.in.LCL.3.rcvc": 2129566740, - "io.in.LCL.3.$mute": 4256777297, - "io.in.LCL.4": 1941922557, - "io.in.LCL.4.mode": 4227834265, - "io.in.LCL.4.g": 469762612, - "io.in.LCL.4.vph": 2528743697, - "io.in.LCL.4.mute": 3035418040, - "io.in.LCL.4.pol": 940273481, - "io.in.LCL.4.col": 3353424826, - "io.in.LCL.4.name": 1597370897, - "io.in.LCL.4.icon": 2586127283, - "io.in.LCL.4.tags": 4062404251, - "io.in.LCL.4.$ha": 360637528, - "io.in.LCL.4.rmt": 3938604050, - "io.in.LCL.4.$ract": 1197632007, - "io.in.LCL.4.$rdest": 788086634, - "io.in.LCL.4.rcvc": 2214384500, - "io.in.LCL.4.$mute": 2455063025, - "io.in.LCL.5": 570855991, - "io.in.LCL.5.mode": 702947062, - "io.in.LCL.5.g": 1309311035, - "io.in.LCL.5.vph": 3367308766, - "io.in.LCL.5.mute": 2223067007, - "io.in.LCL.5.pol": 3321949094, - "io.in.LCL.5.col": 1399173485, - "io.in.LCL.5.name": 2326818430, - "io.in.LCL.5.icon": 700362076, - "io.in.LCL.5.tags": 2169102324, - "io.in.LCL.5.$ha": 1237869135, - "io.in.LCL.5.rmt": 1451415157, - "io.in.LCL.5.$ract": 964373783, - "io.in.LCL.5.$rdest": 3151395884, - "io.in.LCL.5.rcvc": 1374181147, - "io.in.LCL.5.$mute": 3782840143, - "io.in.LCL.6": 2752521913, - "io.in.LCL.6.mode": 1261210572, - "io.in.LCL.6.g": 1825844001, - "io.in.LCL.6.vph": 3883265748, - "io.in.LCL.6.mute": 1706910325, - "io.in.LCL.6.pol": 3879321788, - "io.in.LCL.6.col": 1998650455, - "io.in.LCL.6.name": 2926984052, - "io.in.LCL.6.icon": 1257768006, - "io.in.LCL.6.tags": 2727419646, - "io.in.LCL.6.$ha": 1711184197, - "io.in.LCL.6.rmt": 977283455, - "io.in.LCL.6.$ract": 3452686383, - "io.in.LCL.6.$rdest": 1761388020, - "io.in.LCL.6.rcvc": 858434065, - "io.in.LCL.6.$mute": 2367011943, - "io.in.LCL.7": 1539817739, - "io.in.LCL.7.mode": 1958201678, - "io.in.LCL.7.g": 1822702947, - "io.in.LCL.7.vph": 99433542, - "io.in.LCL.7.mute": 1177548279, - "io.in.LCL.7.pol": 2292153982, - "io.in.LCL.7.col": 927739621, - "io.in.LCL.7.name": 2952845606, - "io.in.LCL.7.icon": 3774158804, - "io.in.LCL.7.tags": 961766076, - "io.in.LCL.7.$ha": 2230221687, - "io.in.LCL.7.rmt": 2753195261, - "io.in.LCL.7.$ract": 2810358056, - "io.in.LCL.7.$rdest": 2807250542, - "io.in.LCL.7.rcvc": 1018817619, - "io.in.LCL.7.$mute": 2914817003, - "io.in.LCL.8": 4280176734, - "io.in.LCL.8.mode": 3137468814, - "io.in.LCL.8.g": 1549334435, - "io.in.LCL.8.vph": 3617630726, - "io.in.LCL.8.mute": 1977828791, - "io.in.LCL.8.pol": 4145366078, - "io.in.LCL.8.col": 2274862757, - "io.in.LCL.8.name": 508316006, - "io.in.LCL.8.icon": 3666022292, - "io.in.LCL.8.tags": 855995644, - "io.in.LCL.8.$ha": 1450833335, - "io.in.LCL.8.rmt": 711229245, - "io.in.LCL.8.$ract": 1938432511, - "io.in.LCL.8.$rdest": 1119572201, - "io.in.LCL.8.rcvc": 1124335251, - "io.in.LCL.8.$mute": 2038743710, - "io.in.LCL.9": 2908785040, - "io.in.LCL.9.mode": 1038375663, - "io.in.LCL.9.g": 2584566850, - "io.in.LCL.9.vph": 684370415, - "io.in.LCL.9.mute": 587404102, - "io.in.LCL.9.pol": 2715160503, - "io.in.LCL.9.col": 500084060, - "io.in.LCL.9.name": 3709471383, - "io.in.LCL.9.icon": 3362277749, - "io.in.LCL.9.tags": 1877009389, - "io.in.LCL.9.$ha": 2809224766, - "io.in.LCL.9.rmt": 3506559588, - "io.in.LCL.9.$ract": 1542516408, - "io.in.LCL.9.$rdest": 639547337, - "io.in.LCL.9.rcvc": 1441225482, - "io.in.LCL.9.$mute": 2130993510, - "io.in.LCL.10": 1458561002, - "io.in.LCL.10.mode": 599964267, - "io.in.LCL.10.g": 463340806, - "io.in.LCL.10.vph": 2770611451, - "io.in.LCL.10.mute": 2577501224, - "io.in.LCL.10.pol": 1932028652, - "io.in.LCL.10.col": 3107115141, - "io.in.LCL.10.name": 4139743231, - "io.in.LCL.10.icon": 3342699056, - "io.in.LCL.10.tags": 1908146304, - "io.in.LCL.10.$ha": 332735792, - "io.in.LCL.10.rmt": 1045509958, - "io.in.LCL.10.$ract": 3202778019, - "io.in.LCL.10.$rdest": 3550507029, - "io.in.LCL.10.rcvc": 908940835, - "io.in.LCL.10.$mute": 2479986718, - "io.in.LCL.11": 590488375, - "io.in.LCL.11.mode": 3246725550, - "io.in.LCL.11.g": 4013809153, - "io.in.LCL.11.vph": 3872333204, - "io.in.LCL.11.mute": 735921961, - "io.in.LCL.11.pol": 395138403, - "io.in.LCL.11.col": 1411977234, - "io.in.LCL.11.name": 1042222047, - "io.in.LCL.11.icon": 1565601607, - "io.in.LCL.11.tags": 3323660818, - "io.in.LCL.11.$ha": 4207289703, - "io.in.LCL.11.rmt": 3473542025, - "io.in.LCL.11.$ract": 1633243316, - "io.in.LCL.11.$rdest": 2187226899, - "io.in.LCL.11.rcvc": 594694467, - "io.in.LCL.11.$mute": 1115024201, - "io.in.LCL.12": 3488174733, - "io.in.LCL.12.mode": 3288236882, - "io.in.LCL.12.g": 159376550, - "io.in.LCL.12.vph": 3153060507, - "io.in.LCL.12.mute": 1698534092, - "io.in.LCL.12.pol": 2256644428, - "io.in.LCL.12.col": 1114304229, - "io.in.LCL.12.name": 1994116492, - "io.in.LCL.12.icon": 3987318477, - "io.in.LCL.12.tags": 2056259033, - "io.in.LCL.12.$ha": 4224239312, - "io.in.LCL.12.rmt": 3510154982, - "io.in.LCL.12.$ract": 3619326535, - "io.in.LCL.12.$rdest": 2176609007, - "io.in.LCL.12.rcvc": 1678869546, - "io.in.LCL.12.$mute": 52270082, - "io.in.LCL.13": 2017498574, - "io.in.LCL.13.mode": 2117742453, - "io.in.LCL.13.g": 3754401511, - "io.in.LCL.13.vph": 4084569978, - "io.in.LCL.13.mute": 1961009655, - "io.in.LCL.13.pol": 24763029, - "io.in.LCL.13.col": 3135325436, - "io.in.LCL.13.name": 3276019481, - "io.in.LCL.13.icon": 3977295327, - "io.in.LCL.13.tags": 863229474, - "io.in.LCL.13.$ha": 360624945, - "io.in.LCL.13.rmt": 1241500911, - "io.in.LCL.13.$ract": 1773542162, - "io.in.LCL.13.$rdest": 931804490, - "io.in.LCL.13.rcvc": 3091192981, - "io.in.LCL.13.$mute": 3695722679, - "io.in.LCL.14": 478659867, - "io.in.LCL.14.mode": 994271378, - "io.in.LCL.14.g": 568803567, - "io.in.LCL.14.vph": 2712314114, - "io.in.LCL.14.mute": 881537707, - "io.in.LCL.14.pol": 1868491069, - "io.in.LCL.14.col": 2840436356, - "io.in.LCL.14.name": 822678889, - "io.in.LCL.14.icon": 3924951643, - "io.in.LCL.14.tags": 3041698540, - "io.in.LCL.14.$ha": 401578297, - "io.in.LCL.14.rmt": 1278112535, - "io.in.LCL.14.$ract": 2350324166, - "io.in.LCL.14.$rdest": 3202419797, - "io.in.LCL.14.rcvc": 3936007250, - "io.in.LCL.14.$mute": 419527751, - "io.in.LCL.15": 3560554330, - "io.in.LCL.15.mode": 300124305, - "io.in.LCL.15.g": 2546971556, - "io.in.LCL.15.vph": 2039643577, - "io.in.LCL.15.mute": 2334841082, - "io.in.LCL.15.pol": 1861663710, - "io.in.LCL.15.col": 895779191, - "io.in.LCL.15.name": 2282558602, - "io.in.LCL.15.icon": 3769027860, - "io.in.LCL.15.tags": 519872501, - "io.in.LCL.15.$ha": 1745319554, - "io.in.LCL.15.rmt": 2459403812, - "io.in.LCL.15.$ract": 1946087773, - "io.in.LCL.15.$rdest": 3989239467, - "io.in.LCL.15.rcvc": 647254601, - "io.in.LCL.15.$mute": 756377480, - "io.in.LCL.16": 3594777536, - "io.in.LCL.16.mode": 773983389, - "io.in.LCL.16.g": 2903504039, - "io.in.LCL.16.vph": 414497978, - "io.in.LCL.16.mute": 1400536703, - "io.in.LCL.16.pol": 163609301, - "io.in.LCL.16.col": 1168425020, - "io.in.LCL.16.name": 1100769982, - "io.in.LCL.16.icon": 2703796746, - "io.in.LCL.16.tags": 1736142921, - "io.in.LCL.16.$ha": 2017965425, - "io.in.LCL.16.rmt": 2898511791, - "io.in.LCL.16.$ract": 3436076250, - "io.in.LCL.16.$rdest": 1430411327, - "io.in.LCL.16.rcvc": 1344765581, - "io.in.LCL.16.$mute": 361770095, - "io.in.LCL.17": 2223711021, - "io.in.LCL.17.mode": 790951342, - "io.in.LCL.17.g": 2403579346, - "io.in.LCL.17.vph": 2261499911, - "io.in.LCL.17.mute": 3702326087, - "io.in.LCL.17.pol": 2004713016, - "io.in.LCL.17.col": 3022984073, - "io.in.LCL.17.name": 1034612703, - "io.in.LCL.17.icon": 1008016281, - "io.in.LCL.17.tags": 279877138, - "io.in.LCL.17.$ha": 1523360820, - "io.in.LCL.17.rmt": 788301842, - "io.in.LCL.17.$ract": 1664660642, - "io.in.LCL.17.$rdest": 3439196956, - "io.in.LCL.17.rcvc": 3355635014, - "io.in.LCL.17.$mute": 2384758595, - "io.in.LCL.18": 3353462382, - "io.in.LCL.18.mode": 1629249505, - "io.in.LCL.18.g": 1636515747, - "io.in.LCL.18.vph": 1607600022, - "io.in.LCL.18.mute": 404476295, - "io.in.LCL.18.pol": 779502705, - "io.in.LCL.18.col": 3945073120, - "io.in.LCL.18.name": 3921286820, - "io.in.LCL.18.icon": 2148534766, - "io.in.LCL.18.tags": 1206516490, - "io.in.LCL.18.$ha": 1484975061, - "io.in.LCL.18.rmt": 2386825707, - "io.in.LCL.18.$ract": 3768087373, - "io.in.LCL.18.$rdest": 1109353851, - "io.in.LCL.18.rcvc": 1865617441, - "io.in.LCL.18.$mute": 1140511288, - "io.in.LCL.19": 1872295332, - "io.in.LCL.19.mode": 2304564223, - "io.in.LCL.19.g": 3417958600, - "io.in.LCL.19.vph": 3073760893, - "io.in.LCL.19.mute": 2477600326, - "io.in.LCL.19.pol": 3985745218, - "io.in.LCL.19.col": 2804124371, - "io.in.LCL.19.name": 3695920046, - "io.in.LCL.19.icon": 3984917562, - "io.in.LCL.19.tags": 3040758779, - "io.in.LCL.19.$ha": 3653298846, - "io.in.LCL.19.rmt": 233970376, - "io.in.LCL.19.$ract": 2449785449, - "io.in.LCL.19.$rdest": 2221254050, - "io.in.LCL.19.rcvc": 2592827167, - "io.in.LCL.19.$mute": 3380509496, - "io.in.LCL.20": 2614817251, - "io.in.LCL.20.mode": 560334214, - "io.in.LCL.20.g": 241300752, - "io.in.LCL.20.vph": 2044719877, - "io.in.LCL.20.mute": 586572605, - "io.in.LCL.20.pol": 2867737834, - "io.in.LCL.20.col": 3833089915, - "io.in.LCL.20.name": 3472148583, - "io.in.LCL.20.icon": 289808072, - "io.in.LCL.20.tags": 1112744136, - "io.in.LCL.20.$ha": 387638822, - "io.in.LCL.20.rmt": 1268105872, - "io.in.LCL.20.$ract": 605395336, - "io.in.LCL.20.$rdest": 2677833542, - "io.in.LCL.20.rcvc": 269370187, - "io.in.LCL.20.$mute": 1432834737, - "io.in.LCL.21": 1144135996, - "io.in.LCL.21.mode": 2963347955, - "io.in.LCL.21.g": 4034579873, - "io.in.LCL.21.vph": 3893688244, - "io.in.LCL.21.mute": 359221265, - "io.in.LCL.21.pol": 415675843, - "io.in.LCL.21.col": 1390713714, - "io.in.LCL.21.name": 2798324666, - "io.in.LCL.21.icon": 2532126788, - "io.in.LCL.21.tags": 625936999, - "io.in.LCL.21.$ha": 4186037383, - "io.in.LCL.21.rmt": 3452370985, - "io.in.LCL.21.$ract": 2721926908, - "io.in.LCL.21.$rdest": 134901294, - "io.in.LCL.21.rcvc": 3369488859, - "io.in.LCL.21.$mute": 1901202198, - "io.in.LCL.22": 3879298185, - "io.in.LCL.22.mode": 4166463399, - "io.in.LCL.22.g": 641889156, - "io.in.LCL.22.vph": 2628932377, - "io.in.LCL.22.mute": 4289641988, - "io.in.LCL.22.pol": 2487488510, - "io.in.LCL.22.col": 1302877591, - "io.in.LCL.22.name": 1766914356, - "io.in.LCL.22.icon": 356167154, - "io.in.LCL.22.tags": 272161409, - "io.in.LCL.22.$ha": 4077608930, - "io.in.LCL.22.rmt": 3363194372, - "io.in.LCL.22.$ract": 424358367, - "io.in.LCL.22.$rdest": 2219513312, - "io.in.LCL.22.rcvc": 998303247, - "io.in.LCL.22.$mute": 2749978954, - "io.in.LCL.23": 2771410472, - "io.in.LCL.23.mode": 1981618778, - "io.in.LCL.23.g": 1818683969, - "io.in.LCL.23.vph": 346917972, - "io.in.LCL.23.mute": 2491762675, - "io.in.LCL.23.pol": 597641507, - "io.in.LCL.23.col": 3930840786, - "io.in.LCL.23.name": 1032280728, - "io.in.LCL.23.icon": 1442397317, - "io.in.LCL.23.tags": 2849156933, - "io.in.LCL.23.$ha": 2746128679, - "io.in.LCL.23.rmt": 1864023241, - "io.in.LCL.23.$ract": 822192462, - "io.in.LCL.23.$rdest": 3085332112, - "io.in.LCL.23.rcvc": 4291456050, - "io.in.LCL.23.$mute": 1181618463, - "io.in.LCL.24": 1966247285, - "io.in.LCL.24.mode": 4217212890, - "io.in.LCL.24.g": 791099457, - "io.in.LCL.24.vph": 2763553364, - "io.in.LCL.24.mute": 1850007896, - "io.in.LCL.24.pol": 2988717859, - "io.in.LCL.24.col": 4131527890, - "io.in.LCL.24.name": 902252184, - "io.in.LCL.24.icon": 3367605056, - "io.in.LCL.24.tags": 2056446187, - "io.in.LCL.24.$ha": 1692375847, - "io.in.LCL.24.rmt": 2406705865, - "io.in.LCL.24.$ract": 4173408755, - "io.in.LCL.24.$rdest": 3735443506, - "io.in.LCL.24.rcvc": 1821005869, - "io.in.LCL.24.$mute": 858644250, - "io.in.AUX": 1688419191, - "io.in.AUX.1": 2392810120, - "io.in.AUX.1.mode": 2985245138, - "io.in.AUX.1.mute": 2893415507, - "io.in.AUX.1.pol": 1040936186, - "io.in.AUX.1.col": 2069470857, - "io.in.AUX.1.name": 1654975018, - "io.in.AUX.1.icon": 1370859096, - "io.in.AUX.1.tags": 4182995872, - "io.in.AUX.1.$mute": 1214442417, - "io.in.AUX.2": 1227188033, - "io.in.AUX.2.mode": 59080604, - "io.in.AUX.2.mute": 2824826533, - "io.in.AUX.2.pol": 393268492, - "io.in.AUX.2.col": 3816501415, - "io.in.AUX.2.name": 1389391780, - "io.in.AUX.2.icon": 2378643638, - "io.in.AUX.2.tags": 3850496814, - "io.in.AUX.2.$mute": 2382635733, - "io.in.AUX.3": 2019894580, - "io.in.AUX.3.mode": 2840928360, - "io.in.AUX.3.mute": 3289861481, - "io.in.AUX.3.pol": 2504119856, - "io.in.AUX.3.col": 3379791795, - "io.in.AUX.3.name": 1511928032, - "io.in.AUX.3.icon": 2664918914, - "io.in.AUX.3.tags": 1194396266, - "io.in.AUX.3.$mute": 1570218700, - "io.in.AUX.4": 2901079471, - "io.in.AUX.4.mode": 1947771152, - "io.in.AUX.4.mute": 1103928977, - "io.in.AUX.4.pol": 2952965112, - "io.in.AUX.4.col": 1251542075, - "io.in.AUX.4.name": 3947737400, - "io.in.AUX.4.icon": 479488138, - "io.in.AUX.4.tags": 1957957026, - "io.in.AUX.4.$mute": 2284084020, - "io.in.AUX.5": 3619074962, - "io.in.AUX.5.mode": 2422868234, - "io.in.AUX.5.mute": 1266509419, - "io.in.AUX.5.pol": 475856338, - "io.in.AUX.5.col": 1560912929, - "io.in.AUX.5.name": 1135892658, - "io.in.AUX.5.icon": 2957155472, - "io.in.AUX.5.tags": 1480980232, - "io.in.AUX.5.$mute": 2159171667, - "io.in.AUX.6": 2780861224, - "io.in.AUX.6.mode": 4198597557, - "io.in.AUX.6.mute": 4079205004, - "io.in.AUX.6.pol": 2251667741, - "io.in.AUX.6.col": 3116364950, - "io.in.AUX.6.name": 2869597149, - "io.in.AUX.6.icon": 244014255, - "io.in.AUX.6.tags": 3057461063, - "io.in.AUX.6.$mute": 1217297482, - "io.in.AUX.7": 3304495073, - "io.in.AUX.7.mode": 3344749397, - "io.in.AUX.7.mute": 4127910956, - "io.in.AUX.7.pol": 1666091197, - "io.in.AUX.7.col": 4217840886, - "io.in.AUX.7.name": 1007805309, - "io.in.AUX.7.icon": 3503301199, - "io.in.AUX.7.tags": 691563751, - "io.in.AUX.7.$mute": 1365943817, - "io.in.AUX.8": 4185675220, - "io.in.AUX.8.mode": 3718927149, - "io.in.AUX.8.mute": 180329124, - "io.in.AUX.8.pol": 3381698165, - "io.in.AUX.8.col": 285999630, - "io.in.AUX.8.name": 2724242341, - "io.in.AUX.8.icon": 1713530055, - "io.in.AUX.8.tags": 228989487, - "io.in.AUX.8.$mute": 3970819662, - "io.in.A": 2830866923, - "io.in.A.1": 1170680145, - "io.in.A.1.mode": 1612936349, - "io.in.A.1.g": 3407962430, - "io.in.A.1.vph": 2522293948, - "io.in.A.1.mute": 1313840128, - "io.in.A.1.pol": 668092813, - "io.in.A.1.col": 1428569810, - "io.in.A.1.name": 1206831109, - "io.in.A.1.icon": 1058871773, - "io.in.A.1.tags": 3080320848, - "io.in.A.1.$ha": 1887185627, - "io.in.A.1.rmt": 2066687458, - "io.in.A.1.$ract": 1842208256, - "io.in.A.1.$rdest": 901087527, - "io.in.A.1.rcvc": 827435309, - "io.in.A.1.$mute": 3767198949, - "io.in.A.2": 600289267, - "io.in.A.2.mode": 960434151, - "io.in.A.2.g": 3597564875, - "io.in.A.2.vph": 1569141794, - "io.in.A.2.mute": 1916170538, - "io.in.A.2.pol": 766920167, - "io.in.A.2.col": 1193793268, - "io.in.A.2.name": 2795196731, - "io.in.A.2.icon": 1296988723, - "io.in.A.2.tags": 3641937338, - "io.in.A.2.$ha": 1349967393, - "io.in.A.2.rmt": 1247437692, - "io.in.A.2.$ract": 3755741546, - "io.in.A.2.$rdest": 298345629, - "io.in.A.2.rcvc": 2688267139, - "io.in.A.2.$mute": 3950683235, - "io.in.A.3": 1361409485, - "io.in.A.3.mode": 1217326449, - "io.in.A.3.g": 3062688967, - "io.in.A.3.vph": 2646114760, - "io.in.A.3.mute": 1009343212, - "io.in.A.3.pol": 4091962761, - "io.in.A.3.col": 660071150, - "io.in.A.3.name": 2172246801, - "io.in.A.3.icon": 1512141545, - "io.in.A.3.tags": 3286134972, - "io.in.A.3.$ha": 1368879487, - "io.in.A.3.rmt": 1692527766, - "io.in.A.3.$ract": 1640965340, - "io.in.A.3.$rdest": 782750299, - "io.in.A.3.rcvc": 2452123001, - "io.in.A.3.$mute": 2543712537, - "io.in.A.4": 679515434, - "io.in.A.4.mode": 740940059, - "io.in.A.4.g": 2080534341, - "io.in.A.4.vph": 2125284798, - "io.in.A.4.mute": 951592950, - "io.in.A.4.pol": 560575459, - "io.in.A.4.col": 815088960, - "io.in.A.4.name": 2072730503, - "io.in.A.4.icon": 919469487, - "io.in.A.4.tags": 3449128710, - "io.in.A.4.$ha": 1615193861, - "io.in.A.4.rmt": 2473705488, - "io.in.A.4.$ract": 1701115878, - "io.in.A.4.$rdest": 1010670449, - "io.in.A.4.rcvc": 2971184383, - "io.in.A.4.$mute": 3482724583, - "io.in.A.5": 4125000487, - "io.in.A.5.mode": 997668517, - "io.in.A.5.g": 1543200929, - "io.in.A.5.vph": 2780205892, - "io.in.A.5.mute": 1386737224, - "io.in.A.5.pol": 1079504597, - "io.in.A.5.col": 1523412026, - "io.in.A.5.name": 2915946685, - "io.in.A.5.icon": 1134419077, - "io.in.A.5.tags": 3171265944, - "io.in.A.5.$ha": 1856922771, - "io.in.A.5.rmt": 1563351114, - "io.in.A.5.$ract": 1328780712, - "io.in.A.5.$rdest": 407953167, - "io.in.A.5.rcvc": 2497270613, - "io.in.A.5.$mute": 3836485725, - "io.in.A.6": 3286198916, - "io.in.A.6.mode": 855385167, - "io.in.A.6.g": 2003846016, - "io.in.A.6.vph": 1580014730, - "io.in.A.6.mute": 1989065042, - "io.in.A.6.pol": 863757583, - "io.in.A.6.col": 1622908444, - "io.in.A.6.name": 1977446995, - "io.in.A.6.icon": 1369914619, - "io.in.A.6.tags": 504144994, - "io.in.A.6.$ha": 1489622329, - "io.in.A.6.rmt": 1843956996, - "io.in.A.6.$ract": 2063621810, - "io.in.A.6.$rdest": 1311552037, - "io.in.A.6.rcvc": 2762133835, - "io.in.A.6.$mute": 2350888411, - "io.in.A.7": 188534755, - "io.in.A.7.mode": 705386905, - "io.in.A.7.g": 1466676275, - "io.in.A.7.vph": 2235344464, - "io.in.A.7.mute": 837534996, - "io.in.A.7.pol": 470642769, - "io.in.A.7.col": 723175158, - "io.in.A.7.name": 1857819017, - "io.in.A.7.icon": 536700369, - "io.in.A.7.tags": 3213895396, - "io.in.A.7.$ha": 1757366231, - "io.in.A.7.rmt": 1870298942, - "io.in.A.7.$ract": 1376671844, - "io.in.A.7.$rdest": 708836067, - "io.in.A.7.rcvc": 2861575585, - "io.in.A.7.$mute": 3373115761, - "io.in.A.8": 3633876720, - "io.in.A.8.mode": 1566079779, - "io.in.A.8.g": 48308249, - "io.in.A.8.vph": 2471505862, - "io.in.A.8.mute": 1278111806, - "io.in.A.8.pol": 737898315, - "io.in.A.8.col": 1639917416, - "io.in.A.8.name": 1600685439, - "io.in.A.8.icon": 1108352951, - "io.in.A.8.tags": 3124540366, - "io.in.A.8.$ha": 1928143485, - "io.in.A.8.rmt": 1463245144, - "io.in.A.8.$ract": 1801904654, - "io.in.A.8.$rdest": 944011929, - "io.in.A.8.rcvc": 2044238407, - "io.in.A.8.$mute": 3557132639, - "io.in.A.9": 1786406026, - "io.in.A.9.mode": 904413133, - "io.in.A.9.g": 3805942037, - "io.in.A.9.vph": 1952218348, - "io.in.A.9.mute": 1875202448, - "io.in.A.9.pol": 816517053, - "io.in.A.9.col": 1068433730, - "io.in.A.9.name": 2822369429, - "io.in.A.9.icon": 819576493, - "io.in.A.9.tags": 3013877728, - "io.in.A.9.$ha": 1776828427, - "io.in.A.9.rmt": 1541359218, - "io.in.A.9.$ract": 3715418416, - "io.in.A.9.$rdest": 341258199, - "io.in.A.9.rcvc": 2983481469, - "io.in.A.9.$mute": 3992319989, - "io.in.A.10": 654724956, - "io.in.A.10.mode": 3584195359, - "io.in.A.10.g": 789607998, - "io.in.A.10.vph": 2621918001, - "io.in.A.10.mute": 1063770238, - "io.in.A.10.pol": 2506392359, - "io.in.A.10.col": 3387646119, - "io.in.A.10.name": 276347549, - "io.in.A.10.icon": 827630293, - "io.in.A.10.tags": 498742868, - "io.in.A.10.$ha": 912633298, - "io.in.A.10.rmt": 3125511092, - "io.in.A.10.$ract": 881072959, - "io.in.A.10.$rdest": 4115485180, - "io.in.A.10.rcvc": 1203245763, - "io.in.A.10.$mute": 4241688338, - "io.in.A.11": 4110726842, - "io.in.A.11.mode": 2940416596, - "io.in.A.11.g": 254895951, - "io.in.A.11.vph": 1440145214, - "io.in.A.11.mute": 3552694261, - "io.in.A.11.pol": 1507958457, - "io.in.A.11.col": 3872935394, - "io.in.A.11.name": 457392902, - "io.in.A.11.icon": 1524260553, - "io.in.A.11.tags": 3044934233, - "io.in.A.11.$ha": 4236913151, - "io.in.A.11.rmt": 1485289905, - "io.in.A.11.$ract": 4247294666, - "io.in.A.11.$rdest": 2201603043, - "io.in.A.11.rcvc": 1030862046, - "io.in.A.11.$mute": 886034087, - "io.in.A.12": 576726213, - "io.in.A.12.mode": 427925081, - "io.in.A.12.g": 712960300, - "io.in.A.12.vph": 4292627115, - "io.in.A.12.mute": 4073208816, - "io.in.A.12.pol": 3800883878, - "io.in.A.12.col": 4017762854, - "io.in.A.12.name": 2871992587, - "io.in.A.12.icon": 2201751494, - "io.in.A.12.tags": 3589894067, - "io.in.A.12.$ha": 2907225592, - "io.in.A.12.rmt": 2126433870, - "io.in.A.12.$ract": 2896635589, - "io.in.A.12.$rdest": 2007698674, - "io.in.A.12.rcvc": 388448009, - "io.in.A.12.$mute": 1795177144, - "io.in.A.13": 4022191120, - "io.in.A.13.mode": 4271525166, - "io.in.A.13.g": 178084384, - "io.in.A.13.vph": 1740890896, - "io.in.A.13.mute": 2242710831, - "io.in.A.13.pol": 1115578579, - "io.in.A.13.col": 2444120979, - "io.in.A.13.name": 420736273, - "io.in.A.13.icon": 3155717135, - "io.in.A.13.tags": 2367623632, - "io.in.A.13.$ha": 2272578757, - "io.in.A.13.rmt": 2880125515, - "io.in.A.13.$ract": 2283122704, - "io.in.A.13.$rdest": 2061968664, - "io.in.A.13.rcvc": 3952016132, - "io.in.A.13.$mute": 2381245389, - "io.in.A.14": 3609086257, - "io.in.A.14.mode": 912066874, - "io.in.A.14.g": 3490845858, - "io.in.A.14.vph": 1470703453, - "io.in.A.14.mute": 3757033731, - "io.in.A.14.pol": 2040095080, - "io.in.A.14.col": 1750265640, - "io.in.A.14.name": 714907921, - "io.in.A.14.icon": 1940311281, - "io.in.A.14.tags": 990956549, - "io.in.A.14.$ha": 2232254630, - "io.in.A.14.rmt": 1754886728, - "io.in.A.14.$ract": 2221827011, - "io.in.A.14.$rdest": 595318461, - "io.in.A.14.rcvc": 761306511, - "io.in.A.14.$mute": 2127001574, - "io.in.A.15": 2770090124, - "io.in.A.15.mode": 1261457192, - "io.in.A.15.g": 2685101771, - "io.in.A.15.vph": 2851041610, - "io.in.A.15.mute": 3239851025, - "io.in.A.15.pol": 929810325, - "io.in.A.15.col": 3557255490, - "io.in.A.15.name": 624634351, - "io.in.A.15.icon": 1492814133, - "io.in.A.15.tags": 4083759114, - "io.in.A.15.$ha": 981442060, - "io.in.A.15.rmt": 2072247877, - "io.in.A.15.$ract": 970857129, - "io.in.A.15.$rdest": 3134548964, - "io.in.A.15.rcvc": 2278177162, - "io.in.A.15.$mute": 2114279116, - "io.in.A.16": 2533221914, - "io.in.A.16.mode": 3355323700, - "io.in.A.16.g": 3145757080, - "io.in.A.16.vph": 2787310492, - "io.in.A.16.mute": 1816929877, - "io.in.A.16.pol": 2469112706, - "io.in.A.16.col": 3761222466, - "io.in.A.16.name": 3727277631, - "io.in.A.16.icon": 3224370802, - "io.in.A.16.tags": 461900095, - "io.in.A.16.$ha": 203280905, - "io.in.A.16.rmt": 32911583, - "io.in.A.16.$ract": 171888292, - "io.in.A.16.$rdest": 726269608, - "io.in.A.16.rcvc": 20579760, - "io.in.A.16.$mute": 3697664753, - "io.in.A.17": 1683575845, - "io.in.A.17.mode": 3170121703, - "io.in.A.17.g": 2608577273, - "io.in.A.17.vph": 664661913, - "io.in.A.17.mute": 3323480902, - "io.in.A.17.pol": 1219009364, - "io.in.A.17.col": 3582051028, - "io.in.A.17.name": 599734197, - "io.in.A.17.icon": 2121465958, - "io.in.A.17.tags": 3353375932, - "io.in.A.17.$ha": 736644282, - "io.in.A.17.rmt": 921058607, - "io.in.A.17.$ract": 747234327, - "io.in.A.17.$rdest": 964446119, - "io.in.A.17.rcvc": 1595789664, - "io.in.A.17.$mute": 1513138234, - "io.in.A.18": 1001845555, - "io.in.A.18.mode": 1485612019, - "io.in.A.18.g": 3069232510, - "io.in.A.18.vph": 395296502, - "io.in.A.18.mute": 901429130, - "io.in.A.18.pol": 1341120340, - "io.in.A.18.col": 2640271060, - "io.in.A.18.name": 102222533, - "io.in.A.18.icon": 832718737, - "io.in.A.18.tags": 405924881, - "io.in.A.18.$ha": 4026568887, - "io.in.A.18.rmt": 680183449, - "io.in.A.18.$ract": 4016187410, - "io.in.A.18.$rdest": 200980596, - "io.in.A.18.rcvc": 3986731430, - "io.in.A.18.$mute": 4085867583, - "io.in.A.19": 2042067089, - "io.in.A.19.mode": 3472588104, - "io.in.A.19.g": 2531929714, - "io.in.A.19.vph": 1191097075, - "io.in.A.19.mute": 1699316913, - "io.in.A.19.pol": 89752974, - "io.in.A.19.col": 1381001294, - "io.in.A.19.name": 1210602531, - "io.in.A.19.icon": 2363491244, - "io.in.A.19.tags": 1266650646, - "io.in.A.19.$ha": 4268888256, - "io.in.A.19.rmt": 985215401, - "io.in.A.19.$ract": 5317565, - "io.in.A.19.$rdest": 2716758926, - "io.in.A.19.rcvc": 1196715350, - "io.in.A.19.$mute": 33023936, - "io.in.A.20": 3440734219, - "io.in.A.20.mode": 870677813, - "io.in.A.20.g": 3324010427, - "io.in.A.20.vph": 2881854863, - "io.in.A.20.mute": 174513428, - "io.in.A.20.pol": 2280960221, - "io.in.A.20.col": 3582230621, - "io.in.A.20.name": 3713549543, - "io.in.A.20.icon": 14250303, - "io.in.A.20.tags": 275207634, - "io.in.A.20.$ha": 309673172, - "io.in.A.20.rmt": 3938409354, - "io.in.A.20.$ract": 320094177, - "io.in.A.20.$rdest": 2833043930, - "io.in.A.20.rcvc": 746855293, - "io.in.A.20.$mute": 3471014868, - "io.in.A.21": 2591067654, - "io.in.A.21.mode": 3591656458, - "io.in.A.21.g": 2789298383, - "io.in.A.21.vph": 1043763604, - "io.in.A.21.mute": 1559605107, - "io.in.A.21.pol": 776597943, - "io.in.A.21.col": 2071304472, - "io.in.A.21.name": 3877529992, - "io.in.A.21.icon": 2502614291, - "io.in.A.21.tags": 3297572823, - "io.in.A.21.$ha": 73382497, - "io.in.A.21.rmt": 2568472455, - "io.in.A.21.$ract": 62994700, - "io.in.A.21.$rdest": 946021588, - "io.in.A.21.rcvc": 1759631224, - "io.in.A.21.$mute": 870841577, - "io.in.A.22": 2177799191, - "io.in.A.22.mode": 1083097103, - "io.in.A.22.g": 1804522153, - "io.in.A.22.vph": 4067198465, - "io.in.A.22.mute": 464919438, - "io.in.A.22.pol": 2311146460, - "io.in.A.22.col": 168615260, - "io.in.A.22.name": 2423594381, - "io.in.A.22.icon": 2304055392, - "io.in.A.22.tags": 2852701929, - "io.in.A.22.$ha": 3646815810, - "io.in.A.22.rmt": 1985229540, - "io.in.A.22.$ract": 3678371119, - "io.in.A.22.$rdest": 2950150536, - "io.in.A.22.rcvc": 194732947, - "io.in.A.22.$mute": 3708729602, - "io.in.A.23": 1338956642, - "io.in.A.23.mode": 4067079876, - "io.in.A.23.g": 1001204902, - "io.in.A.23.vph": 1353199630, - "io.in.A.23.mute": 2426195141, - "io.in.A.23.pol": 1968113161, - "io.in.A.23.col": 131938249, - "io.in.A.23.name": 4269911419, - "io.in.A.23.icon": 3014370393, - "io.in.A.23.tags": 254751470, - "io.in.A.23.$ha": 2812848367, - "io.in.A.23.rmt": 3073154785, - "io.in.A.23.$ract": 2844205114, - "io.in.A.23.$rdest": 451631754, - "io.in.A.23.rcvc": 3422080942, - "io.in.A.23.$mute": 3110079511, - "io.in.A.24": 489474445, - "io.in.A.24.mode": 1546257104, - "io.in.A.24.g": 1461849968, - "io.in.A.24.vph": 919197755, - "io.in.A.24.mute": 4275919033, - "io.in.A.24.pol": 2383321590, - "io.in.A.24.col": 2196085686, - "io.in.A.24.name": 940327291, - "io.in.A.24.icon": 664397211, - "io.in.A.24.tags": 1184722755, - "io.in.A.24.$ha": 912743653, - "io.in.A.24.rmt": 1445412030, - "io.in.A.24.$ract": 923128880, - "io.in.A.24.$rdest": 1543200855, - "io.in.A.24.rcvc": 1091714009, - "io.in.A.24.$mute": 1521915885, - "io.in.A.25": 1418233851, - "io.in.A.25.mode": 1738666334, - "io.in.A.25.g": 924557364, - "io.in.A.25.vph": 2474724256, - "io.in.A.25.mute": 3433249023, - "io.in.A.25.pol": 2451219832, - "io.in.A.25.col": 3783266552, - "io.in.A.25.name": 1122575873, - "io.in.A.25.icon": 1603600863, - "io.in.A.25.tags": 3087694688, - "io.in.A.25.$ha": 2077584598, - "io.in.A.25.rmt": 4185354939, - "io.in.A.25.$ract": 2046189491, - "io.in.A.25.$rdest": 2740836940, - "io.in.A.25.rcvc": 165686740, - "io.in.A.25.$mute": 2351385558, - "io.in.A.26": 568741686, - "io.in.A.26.mode": 4290997615, - "io.in.A.26.g": 4069557013, - "io.in.A.26.vph": 2287770074, - "io.in.A.26.mute": 1531188462, - "io.in.A.26.pol": 2243910008, - "io.in.A.26.col": 3284096248, - "io.in.A.26.name": 245687404, - "io.in.A.26.icon": 3405804252, - "io.in.A.26.tags": 907569365, - "io.in.A.26.$ha": 418250963, - "io.in.A.26.rmt": 603457333, - "io.in.A.26.$ract": 449770382, - "io.in.A.26.$rdest": 400941310, - "io.in.A.26.rcvc": 4063508506, - "io.in.A.26.$mute": 477476827, - "io.in.A.27": 4290696500, - "io.in.A.27.mode": 2755736605, - "io.in.A.27.g": 3532387434, - "io.in.A.27.vph": 187051479, - "io.in.A.27.mute": 3255203324, - "io.in.A.27.pol": 992957010, - "io.in.A.27.col": 3356828114, - "io.in.A.27.name": 1098356767, - "io.in.A.27.icon": 1686494976, - "io.in.A.27.tags": 1901202138, - "io.in.A.27.$ha": 110838716, - "io.in.A.27.rmt": 729183109, - "io.in.A.27.$ract": 100249817, - "io.in.A.27.$rdest": 3374319049, - "io.in.A.27.rcvc": 3599606730, - "io.in.A.27.$mute": 742946044, - "io.in.A.28": 3608986450, - "io.in.A.28.mode": 1612533801, - "io.in.A.28.g": 4160794363, - "io.in.A.28.vph": 4229920876, - "io.in.A.28.mute": 586101280, - "io.in.A.28.pol": 1533072466, - "io.in.A.28.col": 3086771666, - "io.in.A.28.name": 852503343, - "io.in.A.28.icon": 1446126587, - "io.in.A.28.tags": 2546812175, - "io.in.A.28.$ha": 4166879161, - "io.in.A.28.rmt": 862440271, - "io.in.A.28.$ract": 4198233300, - "io.in.A.28.$rdest": 60014529, - "io.in.A.28.rcvc": 3466360448, - "io.in.A.28.$mute": 3893047521, - "io.in.A.29": 2759320253, - "io.in.A.29.mode": 80493310, - "io.in.A.29.g": 3355049984, - "io.in.A.29.vph": 1469563497, - "io.in.A.29.mute": 2306742431, - "io.in.A.29.pol": 3964797604, - "io.in.A.29.col": 1826663524, - "io.in.A.29.name": 764850405, - "io.in.A.29.icon": 2977103862, - "io.in.A.29.tags": 1040518988, - "io.in.A.29.$ha": 466007850, - "io.in.A.29.rmt": 2940221023, - "io.in.A.29.$ract": 434656263, - "io.in.A.29.$rdest": 3192276583, - "io.in.A.29.rcvc": 3891913264, - "io.in.A.29.$mute": 3963043882, - "io.in.A.30": 1752559658, - "io.in.A.30.mode": 924362315, - "io.in.A.30.g": 120625444, - "io.in.A.30.vph": 2379561509, - "io.in.A.30.mute": 4226899170, - "io.in.A.30.pol": 1552426027, - "io.in.A.30.col": 3515430827, - "io.in.A.30.name": 4190519577, - "io.in.A.30.icon": 4125723017, - "io.in.A.30.tags": 4091194632, - "io.in.A.30.$ha": 188995902, - "io.in.A.30.rmt": 3167607264, - "io.in.A.30.$ract": 178412107, - "io.in.A.30.$rdest": 1846091912, - "io.in.A.30.rcvc": 1161189831, - "io.in.A.30.$mute": 3706789438, - "io.in.A.31": 903241589, - "io.in.A.31.mode": 2678689568, - "io.in.A.31.g": 3880880696, - "io.in.A.31.vph": 1488891410, - "io.in.A.31.mute": 3332260649, - "io.in.A.31.pol": 1887360365, - "io.in.A.31.col": 1594218278, - "io.in.A.31.name": 332842514, - "io.in.A.31.icon": 2904376781, - "io.in.A.31.tags": 3071932685, - "io.in.A.31.$ha": 236151627, - "io.in.A.31.rmt": 2428126717, - "io.in.A.31.$ract": 246572822, - "io.in.A.31.$rdest": 1477136886, - "io.in.A.31.rcvc": 2258486722, - "io.in.A.31.$mute": 676942579, - "io.in.A.32": 221511040, - "io.in.A.32.mode": 1466432293, - "io.in.A.32.g": 4070483167, - "io.in.A.32.vph": 3505469023, - "io.in.A.32.mute": 899985188, - "io.in.A.32.pol": 2756188506, - "io.in.A.32.col": 513674010, - "io.in.A.32.name": 3173218839, - "io.in.A.32.icon": 1063780559, - "io.in.A.32.tags": 2624579175, - "io.in.A.32.$ha": 2787899204, - "io.in.A.32.rmt": 920944122, - "io.in.A.32.$ract": 2777348881, - "io.in.A.32.$rdest": 3968234217, - "io.in.A.32.rcvc": 1280033357, - "io.in.A.32.$mute": 1841020612, - "io.in.A.33": 4279630553, - "io.in.A.33.mode": 1360779322, - "io.in.A.33.g": 3535607331, - "io.in.A.33.vph": 2033887844, - "io.in.A.33.mute": 858683907, - "io.in.A.33.pol": 1239348167, - "io.in.A.33.col": 2823570247, - "io.in.A.33.name": 3345107453, - "io.in.A.33.icon": 3124477091, - "io.in.A.33.tags": 702304900, - "io.in.A.33.$ha": 2566291409, - "io.in.A.33.rmt": 1159771127, - "io.in.A.33.$ract": 2576715004, - "io.in.A.33.$rdest": 1585752488, - "io.in.A.33.rcvc": 1376085064, - "io.in.A.33.$mute": 3345905881, - "io.in.A.34": 3440450068, - "io.in.A.34.mode": 692396966, - "io.in.A.34.g": 2385639664, - "io.in.A.34.vph": 770567825, - "io.in.A.34.mute": 3787785799, - "io.in.A.34.pol": 2119882732, - "io.in.A.34.col": 3046025068, - "io.in.A.34.name": 82536445, - "io.in.A.34.icon": 2236507189, - "io.in.A.34.tags": 2930626297, - "io.in.A.34.$ha": 2434053042, - "io.in.A.34.rmt": 2293049620, - "io.in.A.34.$ract": 2423669023, - "io.in.A.34.$rdest": 2535020924, - "io.in.A.34.rcvc": 4183876643, - "io.in.A.34.$mute": 1993278706, - "io.in.A.35": 2859409290, - "io.in.A.35.mode": 1622612724, - "io.in.A.35.g": 1848347057, - "io.in.A.35.vph": 3339813534, - "io.in.A.35.mute": 3696605333, - "io.in.A.35.pol": 646926553, - "io.in.A.35.col": 3011289158, - "io.in.A.35.name": 247074923, - "io.in.A.35.icon": 528752681, - "io.in.A.35.tags": 4248137982, - "io.in.A.35.$ha": 2229485912, - "io.in.A.35.rmt": 3539547409, - "io.in.A.35.$ract": 2240072229, - "io.in.A.35.$rdest": 1248278794, - "io.in.A.35.rcvc": 809525310, - "io.in.A.35.$mute": 2167780888, - "io.in.A.36": 2177863376, - "io.in.A.36.mode": 4191389445, - "io.in.A.36.g": 2308992214, - "io.in.A.36.vph": 2381231728, - "io.in.A.36.mute": 1127490692, - "io.in.A.36.pol": 2848723654, - "io.in.A.36.col": 3731764294, - "io.in.A.36.name": 473605302, - "io.in.A.36.icon": 2475916070, - "io.in.A.36.tags": 842735571, - "io.in.A.36.$ha": 4110144853, - "io.in.A.36.rmt": 377873835, - "io.in.A.36.$ract": 4099759648, - "io.in.A.36.$rdest": 652558548, - "io.in.A.36.rcvc": 3952879204, - "io.in.A.36.$mute": 4002292253, - "io.in.A.37": 1328360611, - "io.in.A.37.mode": 2907085235, - "io.in.A.37.g": 1503381144, - "io.in.A.37.vph": 957030541, - "io.in.A.37.mute": 2935929290, - "io.in.A.37.pol": 1847448072, - "io.in.A.37.col": 2227396552, - "io.in.A.37.name": 652701809, - "io.in.A.37.icon": 1544349546, - "io.in.A.37.tags": 4150160368, - "io.in.A.37.$ha": 1015776774, - "io.in.A.37.rmt": 419713531, - "io.in.A.37.$ract": 1047338275, - "io.in.A.37.$rdest": 3380072026, - "io.in.A.37.rcvc": 4265558548, - "io.in.A.37.$mute": 1144795462, - "io.in.A.38": 2099844094, - "io.in.A.38.mode": 772468703, - "io.in.A.38.g": 2131839113, - "io.in.A.38.vph": 608174250, - "io.in.A.38.mute": 104479678, - "io.in.A.38.pol": 1687139848, - "io.in.A.38.col": 3017869768, - "io.in.A.38.name": 406725505, - "io.in.A.38.icon": 548509845, - "io.in.A.38.tags": 2278711845, - "io.in.A.38.$ha": 2978638339, - "io.in.A.38.rmt": 721416101, - "io.in.A.38.$ract": 2968215870, - "io.in.A.38.$rdest": 2147497355, - "io.in.A.38.rcvc": 3944185578, - "io.in.A.38.$mute": 3608300875, - "io.in.A.39": 1250361881, - "io.in.A.39.mode": 3247890516, - "io.in.A.39.g": 1594505629, - "io.in.A.39.vph": 2079159463, - "io.in.A.39.mute": 1232138741, - "io.in.A.39.pol": 116833314, - "io.in.A.39.col": 330367970, - "io.in.A.39.name": 592358735, - "io.in.A.39.icon": 3420824720, - "io.in.A.39.tags": 940887594, - "io.in.A.39.$ha": 198616044, - "io.in.A.39.rmt": 1205402293, - "io.in.A.39.$ract": 209207433, - "io.in.A.39.$rdest": 3649170365, - "io.in.A.39.rcvc": 1333082778, - "io.in.A.39.$mute": 4198978732, - "io.in.A.40": 3085365441, - "io.in.A.40.mode": 3525706081, - "io.in.A.40.g": 2386586298, - "io.in.A.40.vph": 3161975395, - "io.in.A.40.mute": 954159256, - "io.in.A.40.pol": 2376099777, - "io.in.A.40.col": 3290166657, - "io.in.A.40.name": 628097379, - "io.in.A.40.icon": 474366419, - "io.in.A.40.tags": 368790662, - "io.in.A.40.$ha": 594580864, - "io.in.A.40.rmt": 3444507286, - "io.in.A.40.$ract": 626095229, - "io.in.A.40.$rdest": 2846257394, - "io.in.A.40.rcvc": 882283089, - "io.in.A.40.$mute": 318267520, - "io.in.A.41": 2235903708, - "io.in.A.41.mode": 1820298870, - "io.in.A.41.g": 1851905214, - "io.in.A.41.vph": 246898312, - "io.in.A.41.mute": 2848770935, - "io.in.A.41.pol": 1158581691, - "io.in.A.41.col": 3517857884, - "io.in.A.41.name": 558154628, - "io.in.A.41.icon": 1170525719, - "io.in.A.41.tags": 3576281227, - "io.in.A.41.$ha": 786648621, - "io.in.A.41.rmt": 1481808019, - "io.in.A.41.$ract": 776099400, - "io.in.A.41.$rdest": 1369057604, - "io.in.A.41.rcvc": 723047532, - "io.in.A.41.$mute": 1416194709, - "io.in.A.42": 1396743743, - "io.in.A.42.mode": 691251835, - "io.in.A.42.g": 699326024, - "io.in.A.42.vph": 75017397, - "io.in.A.42.mute": 3956385650, - "io.in.A.42.pol": 3662778736, - "io.in.A.42.col": 3922228272, - "io.in.A.42.name": 3724452233, - "io.in.A.42.icon": 2645629780, - "io.in.A.42.tags": 3195858397, - "io.in.A.42.$ha": 2709148014, - "io.in.A.42.rmt": 271698512, - "io.in.A.42.$ract": 2677586491, - "io.in.A.42.$rdest": 1953148773, - "io.in.A.42.rcvc": 1931201175, - "io.in.A.42.$mute": 1908385262, - "io.in.A.43": 2594047032, - "io.in.A.43.mode": 401144272, - "io.in.A.43.g": 164450220, - "io.in.A.43.vph": 1221214370, - "io.in.A.43.mute": 4246493625, - "io.in.A.43.pol": 761642749, - "io.in.A.43.col": 2053041789, - "io.in.A.43.name": 4147328071, - "io.in.A.43.icon": 2309785501, - "io.in.A.43.tags": 2230038466, - "io.in.A.43.$ha": 2467056699, - "io.in.A.43.rmt": 934172269, - "io.in.A.43.$ract": 2435657542, - "io.in.A.43.$rdest": 723308899, - "io.in.A.43.rcvc": 1601640082, - "io.in.A.43.$mute": 3581700899, - "io.in.A.44": 1742138027, - "io.in.A.44.mode": 1117087068, - "io.in.A.44.g": 625095309, - "io.in.A.44.vph": 1455137007, - "io.in.A.44.mute": 4222928381, - "io.in.A.44.pol": 1940644074, - "io.in.A.44.col": 2317275754, - "io.in.A.44.name": 560187463, - "io.in.A.44.icon": 794905759, - "io.in.A.44.tags": 1476470263, - "io.in.A.44.$ha": 2669994036, - "io.in.A.44.rmt": 1647211242, - "io.in.A.44.$ract": 2701509441, - "io.in.A.44.$rdest": 2274926234, - "io.in.A.44.rcvc": 533398237, - "io.in.A.44.$mute": 1725880116, - "io.in.A.45": 903121062, - "io.in.A.45.mode": 1690545706, - "io.in.A.45.g": 4114308231, - "io.in.A.45.vph": 2400793844, - "io.in.A.45.mute": 3460541459, - "io.in.A.45.pol": 86531159, - "io.in.A.45.col": 3205476860, - "io.in.A.45.name": 997373677, - "io.in.A.45.icon": 639043699, - "io.in.A.45.tags": 360772116, - "io.in.A.45.$ha": 682441250, - "io.in.A.45.rmt": 3272179431, - "io.in.A.45.$ract": 671852559, - "io.in.A.45.$rdest": 2898496310, - "io.in.A.45.rcvc": 1391509208, - "io.in.A.45.$mute": 977058786, - "io.in.A.46": 668884540, - "io.in.A.46.mode": 2938137627, - "io.in.A.46.g": 447758084, - "io.in.A.46.vph": 2561359726, - "io.in.A.46.mute": 2905368338, - "io.in.A.46.pol": 2623271036, - "io.in.A.46.col": 3606550012, - "io.in.A.46.name": 3838528317, - "io.in.A.46.icon": 3089298368, - "io.in.A.46.tags": 615800713, - "io.in.A.46.$ha": 628063807, - "io.in.A.46.rmt": 3862867521, - "io.in.A.46.$ract": 659459082, - "io.in.A.46.$rdest": 3208761774, - "io.in.A.46.rcvc": 824401678, - "io.in.A.46.$mute": 183859175, - "io.in.A.47": 4281978271, - "io.in.A.47.mode": 3134544617, - "io.in.A.47.g": 4205555736, - "io.in.A.47.vph": 580047723, - "io.in.A.47.mute": 3547463520, - "io.in.A.47.pol": 1118898838, - "io.in.A.47.col": 3738190422, - "io.in.A.47.name": 1402327259, - "io.in.A.47.icon": 648007604, - "io.in.A.47.tags": 3253652366, - "io.in.A.47.$ha": 412861128, - "io.in.A.47.rmt": 359013521, - "io.in.A.47.$ract": 402438677, - "io.in.A.47.$rdest": 2661906096, - "io.in.A.47.rcvc": 3989434558, - "io.in.A.47.$mute": 541849032, - "io.in.A.48": 3700937624, - "io.in.A.48.mode": 1407457013, - "io.in.A.48.g": 3055628794, - "io.in.A.48.vph": 390086400, - "io.in.A.48.mute": 791198548, - "io.in.A.48.pol": 2132299414, - "io.in.A.48.col": 3463566934, - "io.in.A.48.name": 223284715, - "io.in.A.48.icon": 4021556031, - "io.in.A.48.tags": 2473815011, - "io.in.A.48.$ha": 3738728133, - "io.in.A.48.rmt": 579887643, - "io.in.A.48.$ract": 3707334160, - "io.in.A.48.$rdest": 2670147049, - "io.in.A.48.rcvc": 3771194676, - "io.in.A.48.$mute": 3105915341, - "io.in.B": 1262611154, - "io.in.B.1": 2241983337, - "io.in.B.1.mode": 761048266, - "io.in.B.1.g": 4173806630, - "io.in.B.1.vph": 1115414899, - "io.in.B.1.mute": 3423228669, - "io.in.B.1.pol": 466974898, - "io.in.B.1.col": 3494565774, - "io.in.B.1.name": 2885674858, - "io.in.B.1.icon": 516059684, - "io.in.B.1.tags": 4125678609, - "io.in.B.1.$ha": 3860953500, - "io.in.B.1.rmt": 58596463, - "io.in.B.1.$ract": 1961522049, - "io.in.B.1.$rdest": 2902991126, - "io.in.B.1.rcvc": 212136152, - "io.in.B.1.$mute": 6405182, - "io.in.B.2": 1377889019, - "io.in.B.2.mode": 267524896, - "io.in.B.2.g": 1464336499, - "io.in.B.2.vph": 2240448413, - "io.in.B.2.mute": 3910237195, - "io.in.B.2.pol": 95256664, - "io.in.B.2.col": 3604547348, - "io.in.B.2.name": 2427973876, - "io.in.B.2.icon": 51618254, - "io.in.B.2.tags": 3961143087, - "io.in.B.2.$ha": 1144797558, - "io.in.B.2.rmt": 359338677, - "io.in.B.2.$ract": 2144913967, - "io.in.B.2.$rdest": 3086692696, - "io.in.B.2.rcvc": 503337570, - "io.in.B.2.$mute": 221379744, - "io.in.B.3": 3533716165, - "io.in.B.3.mode": 1646380438, - "io.in.B.3.g": 2001995727, - "io.in.B.3.vph": 2004030967, - "io.in.B.3.mute": 1877256801, - "io.in.B.3.pol": 201166182, - "io.in.B.3.col": 3337184370, - "io.in.B.3.name": 2254624606, - "io.in.B.3.icon": 3961411288, - "io.in.B.3.tags": 4288893637, - "io.in.B.3.$ha": 366143976, - "io.in.B.3.rmt": 900126395, - "io.in.B.3.$ract": 1848769797, - "io.in.B.3.$rdest": 2706659874, - "io.in.B.3.rcvc": 4279089596, - "io.in.B.3.$mute": 3666552842, - "io.in.B.4": 2736417314, - "io.in.B.4.mode": 836428300, - "io.in.B.4.g": 4192770397, - "io.in.B.4.vph": 2206777009, - "io.in.B.4.mute": 152785727, - "io.in.B.4.pol": 678618892, - "io.in.B.4.col": 3801247256, - "io.in.B.4.name": 3214198184, - "io.in.B.4.icon": 882583650, - "io.in.B.4.tags": 42874227, - "io.in.B.4.$ha": 3617628226, - "io.in.B.4.rmt": 370622209, - "io.in.B.4.$ract": 2242532163, - "io.in.B.4.$rdest": 2994276964, - "io.in.B.4.rcvc": 450705478, - "io.in.B.4.$mute": 2615076924, - "io.in.B.5": 931502463, - "io.in.B.5.mode": 474482530, - "io.in.B.5.g": 2581633961, - "io.in.B.5.vph": 1134150955, - "io.in.B.5.mute": 3488297493, - "io.in.B.5.pol": 475338154, - "io.in.B.5.col": 3973465638, - "io.in.B.5.name": 2141767282, - "io.in.B.5.icon": 373997500, - "io.in.B.5.tags": 4175318825, - "io.in.B.5.$ha": 3749425764, - "io.in.B.5.rmt": 782090247, - "io.in.B.5.$ract": 2342010425, - "io.in.B.5.$rdest": 3177943374, - "io.in.B.5.rcvc": 804524496, - "io.in.B.5.$mute": 124219526, - "io.in.B.6": 134500572, - "io.in.B.6.mode": 279798232, - "io.in.B.6.g": 4101360968, - "io.in.B.6.vph": 1685058997, - "io.in.B.6.mute": 3975285059, - "io.in.B.6.pol": 4271423024, - "io.in.B.6.col": 3601100364, - "io.in.B.6.name": 3457728732, - "io.in.B.6.icon": 4285787334, - "io.in.B.6.tags": 337245735, - "io.in.B.6.$ha": 3374091230, - "io.in.B.6.rmt": 252013293, - "io.in.B.6.$ract": 1715717831, - "io.in.B.6.$rdest": 2467434416, - "io.in.B.6.rcvc": 286259706, - "io.in.B.6.$mute": 3627052808, - "io.in.B.7": 2558782187, - "io.in.B.7.mode": 4131834830, - "io.in.B.7.g": 343067275, - "io.in.B.7.vph": 2057303343, - "io.in.B.7.mute": 49835065, - "io.in.B.7.pol": 330428382, - "io.in.B.7.col": 4059930346, - "io.in.B.7.name": 2971097510, - "io.in.B.7.icon": 769148496, - "io.in.B.7.tags": 4259929053, - "io.in.B.7.$ha": 3673292336, - "io.in.B.7.rmt": 540490739, - "io.in.B.7.$ract": 1878107453, - "io.in.B.7.$rdest": 2651148826, - "io.in.B.7.rcvc": 4292667860, - "io.in.B.7.$mute": 289299538, - "io.in.B.8": 1425898056, - "io.in.B.8.mode": 881310244, - "io.in.B.8.g": 1929878353, - "io.in.B.8.vph": 1234369385, - "io.in.B.8.mute": 3385574007, - "io.in.B.8.pol": 398476516, - "io.in.B.8.col": 3540120560, - "io.in.B.8.name": 2538289648, - "io.in.B.8.icon": 575366906, - "io.in.B.8.tags": 4097180459, - "io.in.B.8.$ha": 3846198442, - "io.in.B.8.rmt": 3777903065, - "io.in.B.8.$ract": 2248276859, - "io.in.B.8.$rdest": 2938724956, - "io.in.B.8.rcvc": 367247614, - "io.in.B.8.$mute": 2618715588, - "io.in.B.9": 3941833410, - "io.in.B.9.mode": 372717466, - "io.in.B.9.g": 320050733, - "io.in.B.9.vph": 2223058499, - "io.in.B.9.mute": 3877781869, - "io.in.B.9.pol": 131103938, - "io.in.B.9.col": 3146898334, - "io.in.B.9.name": 2155696858, - "io.in.B.9.icon": 4214527700, - "io.in.B.9.tags": 601838273, - "io.in.B.9.$ha": 3715821420, - "io.in.B.9.rmt": 647362143, - "io.in.B.9.$ract": 2452622929, - "io.in.B.9.$rdest": 3122422054, - "io.in.B.9.rcvc": 522694792, - "io.in.B.9.$mute": 153529902, - "io.in.B.10": 2757764420, - "io.in.B.10.mode": 2832544000, - "io.in.B.10.g": 2662021942, - "io.in.B.10.vph": 696425324, - "io.in.B.10.mute": 2339709577, - "io.in.B.10.pol": 3249790136, - "io.in.B.10.col": 4230370971, - "io.in.B.10.name": 1554223906, - "io.in.B.10.icon": 3684265516, - "io.in.B.10.tags": 1499512552, - "io.in.B.10.$ha": 1661516125, - "io.in.B.10.rmt": 2493960987, - "io.in.B.10.$ract": 1629961016, - "io.in.B.10.$rdest": 4277950310, - "io.in.B.10.rcvc": 43213364, - "io.in.B.10.$mute": 2776629061, - "io.in.B.11": 1625218210, - "io.in.B.11.mode": 2769980129, - "io.in.B.11.g": 1052196231, - "io.in.B.11.vph": 779749225, - "io.in.B.11.mute": 3890913048, - "io.in.B.11.pol": 1076897480, - "io.in.B.11.col": 4110402926, - "io.in.B.11.name": 2926089235, - "io.in.B.11.icon": 1559560726, - "io.in.B.11.tags": 99267270, - "io.in.B.11.$ha": 3488405242, - "io.in.B.11.rmt": 2650222878, - "io.in.B.11.$ract": 3519800407, - "io.in.B.11.$rdest": 2246345374, - "io.in.B.11.rcvc": 4183874617, - "io.in.B.11.$mute": 3044876410, - "io.in.B.12": 2706966925, - "io.in.B.12.mode": 879697633, - "io.in.B.12.g": 3241660180, - "io.in.B.12.vph": 18152919, - "io.in.B.12.mute": 1339765528, - "io.in.B.12.pol": 2959446454, - "io.in.B.12.col": 1072095585, - "io.in.B.12.name": 3659680292, - "io.in.B.12.icon": 3345820966, - "io.in.B.12.tags": 3185985110, - "io.in.B.12.$ha": 2672157431, - "io.in.B.12.rmt": 2398839351, - "io.in.B.12.$ract": 2640597074, - "io.in.B.12.$rdest": 2774692215, - "io.in.B.12.rcvc": 1949577608, - "io.in.B.12.$mute": 3283293311, - "io.in.B.13": 2245540056, - "io.in.B.13.mode": 1485291367, - "io.in.B.13.g": 3779318760, - "io.in.B.13.vph": 3708598743, - "io.in.B.13.mute": 901759942, - "io.in.B.13.pol": 2019112774, - "io.in.B.13.col": 3411254226, - "io.in.B.13.name": 2659752734, - "io.in.B.13.icon": 3897012576, - "io.in.B.13.tags": 52412524, - "io.in.B.13.$ha": 3820583561, - "io.in.B.13.rmt": 3075491204, - "io.in.B.13.$ract": 3789225508, - "io.in.B.13.$rdest": 2673456480, - "io.in.B.13.rcvc": 1253296691, - "io.in.B.13.$mute": 3022666353, - "io.in.B.14": 1448555257, - "io.in.B.14.mode": 2100056957, - "io.in.B.14.g": 4225294330, - "io.in.B.14.vph": 3802125693, - "io.in.B.14.mute": 3743438812, - "io.in.B.14.pol": 2108035417, - "io.in.B.14.col": 3088709615, - "io.in.B.14.name": 3180295966, - "io.in.B.14.icon": 3152809200, - "io.in.B.14.tags": 2902714684, - "io.in.B.14.$ha": 1190155891, - "io.in.B.14.rmt": 1911028029, - "io.in.B.14.$ract": 1221712430, - "io.in.B.14.$rdest": 820666882, - "io.in.B.14.rcvc": 607089922, - "io.in.B.14.$mute": 1249418875, - "io.in.B.15": 650273332, - "io.in.B.15.mode": 2701098349, - "io.in.B.15.g": 3419447811, - "io.in.B.15.vph": 493787131, - "io.in.B.15.mute": 3310149100, - "io.in.B.15.pol": 2171795338, - "io.in.B.15.col": 1004963509, - "io.in.B.15.name": 3606434015, - "io.in.B.15.icon": 4243038453, - "io.in.B.15.tags": 2111339967, - "io.in.B.15.$ha": 3835331107, - "io.in.B.15.rmt": 1924836650, - "io.in.B.15.$ract": 3803810398, - "io.in.B.15.$rdest": 3803447135, - "io.in.B.15.rcvc": 594602269, - "io.in.B.15.$mute": 4276778603, - "io.in.B.16": 1421388482, - "io.in.B.16.mode": 3904461672, - "io.in.B.16.g": 979741584, - "io.in.B.16.vph": 2632567307, - "io.in.B.16.mute": 596682705, - "io.in.B.16.pol": 3375956871, - "io.in.B.16.col": 4095912163, - "io.in.B.16.name": 2423143642, - "io.in.B.16.icon": 2146867077, - "io.in.B.16.tags": 2132367744, - "io.in.B.16.$ha": 1585483302, - "io.in.B.16.rmt": 1882785891, - "io.in.B.16.$ract": 1596069443, - "io.in.B.16.$rdest": 707545894, - "io.in.B.16.rcvc": 317492380, - "io.in.B.16.$mute": 2194877030, - "io.in.B.17": 3912423981, - "io.in.B.17.mode": 2420427736, - "io.in.B.17.g": 1516426721, - "io.in.B.17.vph": 3880748545, - "io.in.B.17.mute": 2248642081, - "io.in.B.17.pol": 3098891565, - "io.in.B.17.col": 2344251827, - "io.in.B.17.name": 4021063882, - "io.in.B.17.icon": 4230343055, - "io.in.B.17.tags": 3731725701, - "io.in.B.17.$ha": 604337461, - "io.in.B.17.rmt": 4153338982, - "io.in.B.17.$ract": 572943616, - "io.in.B.17.$rdest": 38886342, - "io.in.B.17.rcvc": 2320924801, - "io.in.B.17.$mute": 4101996797, - "io.in.B.18": 3115452811, - "io.in.B.18.mode": 1251586030, - "io.in.B.18.g": 2365054838, - "io.in.B.18.vph": 1726648465, - "io.in.B.18.mute": 1135465071, - "io.in.B.18.pol": 1579901229, - "io.in.B.18.col": 2808884681, - "io.in.B.18.name": 2153557148, - "io.in.B.18.icon": 2144693902, - "io.in.B.18.tags": 98122510, - "io.in.B.18.$ha": 2172510527, - "io.in.B.18.rmt": 1312018646, - "io.in.B.18.$ract": 2141116682, - "io.in.B.18.$rdest": 2917229423, - "io.in.B.18.rcvc": 1226428561, - "io.in.B.18.$mute": 2446333159, - "io.in.B.19": 1244726169, - "io.in.B.19.mode": 3501334767, - "io.in.B.19.g": 755197130, - "io.in.B.19.vph": 3963747476, - "io.in.B.19.mute": 2341658990, - "io.in.B.19.pol": 1302876590, - "io.in.B.19.col": 402100825, - "io.in.B.19.name": 455845452, - "io.in.B.19.icon": 3174085257, - "io.in.B.19.tags": 3071476979, - "io.in.B.19.$ha": 3103057775, - "io.in.B.19.rmt": 3525862636, - "io.in.B.19.$ract": 3071539642, - "io.in.B.19.$rdest": 3480994357, - "io.in.B.19.rcvc": 3309548699, - "io.in.B.19.$mute": 2135231895, - "io.in.B.20": 1622160563, - "io.in.B.20.mode": 1477337450, - "io.in.B.20.g": 2275092915, - "io.in.B.20.vph": 984904182, - "io.in.B.20.mute": 3695069395, - "io.in.B.20.pol": 400807682, - "io.in.B.20.col": 3850196685, - "io.in.B.20.name": 1887232728, - "io.in.B.20.icon": 387978690, - "io.in.B.20.tags": 1346768690, - "io.in.B.20.$ha": 1949862651, - "io.in.B.20.rmt": 1443008165, - "io.in.B.20.$ract": 1918299654, - "io.in.B.20.$rdest": 565507536, - "io.in.B.20.rcvc": 1094158826, - "io.in.B.20.$mute": 2393909731, - "io.in.B.21": 824861710, - "io.in.B.21.mode": 1548157899, - "io.in.B.21.g": 665267207, - "io.in.B.21.vph": 823778803, - "io.in.B.21.mute": 3120758626, - "io.in.B.21.pol": 1448551698, - "io.in.B.21.col": 3915953408, - "io.in.B.21.name": 3238088137, - "io.in.B.21.icon": 1258027468, - "io.in.B.21.tags": 1486084424, - "io.in.B.21.$ha": 3378672272, - "io.in.B.21.rmt": 1181164200, - "io.in.B.21.$ract": 3389262285, - "io.in.B.21.$rdest": 2217491450, - "io.in.B.21.rcvc": 1001463279, - "io.in.B.21.$mute": 3082110480, - "io.in.B.22": 3247791663, - "io.in.B.22.mode": 4183549899, - "io.in.B.22.g": 3928472977, - "io.in.B.22.vph": 474279833, - "io.in.B.22.mute": 296305506, - "io.in.B.22.pol": 3214724904, - "io.in.B.22.col": 1444553035, - "io.in.B.22.name": 3267000498, - "io.in.B.22.icon": 3718760668, - "io.in.B.22.tags": 3985599704, - "io.in.B.22.$ha": 2998107821, - "io.in.B.22.rmt": 3103621537, - "io.in.B.22.$ract": 3008656840, - "io.in.B.22.$rdest": 1135246093, - "io.in.B.22.rcvc": 3731141230, - "io.in.B.22.$mute": 2198157845, - "io.in.B.23": 2115286394, - "io.in.B.23.mode": 1270326705, - "io.in.B.23.g": 3123967918, - "io.in.B.23.vph": 3580725657, - "io.in.B.23.mute": 277853256, - "io.in.B.23.pol": 1728042488, - "io.in.B.23.col": 2107803860, - "io.in.B.23.name": 2274282164, - "io.in.B.23.icon": 4016491718, - "io.in.B.23.tags": 1808773302, - "io.in.B.23.$ha": 3037020167, - "io.in.B.23.rmt": 3237070254, - "io.in.B.23.$ract": 3068420578, - "io.in.B.23.$rdest": 2532353088, - "io.in.B.23.rcvc": 1446921833, - "io.in.B.23.$mute": 3501422095, - "io.in.B.24": 1318315205, - "io.in.B.24.mode": 2472069575, - "io.in.B.24.g": 348727608, - "io.in.B.24.vph": 2399577351, - "io.in.B.24.mute": 4209948710, - "io.in.B.24.pol": 1955566115, - "io.in.B.24.col": 2936849617, - "io.in.B.24.name": 2787083956, - "io.in.B.24.icon": 3524443222, - "io.in.B.24.tags": 2351994502, - "io.in.B.24.$ha": 1145818153, - "io.in.B.24.rmt": 1695984327, - "io.in.B.24.$ract": 1177218500, - "io.in.B.24.$rdest": 3875385667, - "io.in.B.24.rcvc": 486643384, - "io.in.B.24.$mute": 1104292369, - "io.in.B.25": 3473763491, - "io.in.B.25.mode": 3394567607, - "io.in.B.25.g": 3032516236, - "io.in.B.25.vph": 341831965, - "io.in.B.25.mute": 1756386358, - "io.in.B.25.pol": 2543410572, - "io.in.B.25.col": 626714399, - "io.in.B.25.name": 4159428725, - "io.in.B.25.icon": 3378663515, - "io.in.B.25.tags": 1917135489, - "io.in.B.25.$ha": 529537881, - "io.in.B.25.rmt": 1850925396, - "io.in.B.25.$ract": 540126580, - "io.in.B.25.$rdest": 3220704770, - "io.in.B.25.rcvc": 2478530659, - "io.in.B.25.$mute": 3856177537, - "io.in.B.26": 3012346878, - "io.in.B.26.mode": 4276003250, - "io.in.B.26.g": 1666562093, - "io.in.B.26.vph": 3111764781, - "io.in.B.26.mute": 896055355, - "io.in.B.26.pol": 3224123785, - "io.in.B.26.col": 4216496917, - "io.in.B.26.name": 1067947632, - "io.in.B.26.icon": 1055768864, - "io.in.B.26.tags": 2546551274, - "io.in.B.26.$ha": 1433438044, - "io.in.B.26.rmt": 356162061, - "io.in.B.26.$ract": 1402083705, - "io.in.B.26.$rdest": 730065384, - "io.in.B.26.rcvc": 2183585330, - "io.in.B.26.$mute": 2378378652, - "io.in.B.27": 1140308876, - "io.in.B.27.mode": 2456927394, - "io.in.B.27.g": 55753298, - "io.in.B.27.vph": 987683499, - "io.in.B.27.mute": 2044042891, - "io.in.B.27.pol": 3575413623, - "io.in.B.27.col": 2716715301, - "io.in.B.27.name": 3893149792, - "io.in.B.27.icon": 3231253797, - "io.in.B.27.tags": 4044801007, - "io.in.B.27.$ha": 788522547, - "io.in.B.27.rmt": 2428468720, - "io.in.B.27.$ract": 798942446, - "io.in.B.27.$rdest": 685924463, - "io.in.B.27.rcvc": 4045849143, - "io.in.B.27.$mute": 829935931, - "io.in.B.28": 343338346, - "io.in.B.28.mode": 1413914808, - "io.in.B.28.g": 904381427, - "io.in.B.28.vph": 861579835, - "io.in.B.28.mute": 952492673, - "io.in.B.28.pol": 1231158647, - "io.in.B.28.col": 3285554579, - "io.in.B.28.name": 1676991594, - "io.in.B.28.icon": 2286219812, - "io.in.B.28.tags": 4019347824, - "io.in.B.28.$ha": 2327880277, - "io.in.B.28.rmt": 642412256, - "io.in.B.28.$ract": 2317287712, - "io.in.B.28.$rdest": 776283743, - "io.in.B.28.rcvc": 3685691079, - "io.in.B.28.$mute": 2289571101, - "io.in.B.29": 3505462453, - "io.in.B.29.mode": 3873408185, - "io.in.B.29.g": 99845640, - "io.in.B.29.vph": 3609785406, - "io.in.B.29.mute": 2641022672, - "io.in.B.29.pol": 2688898112, - "io.in.B.29.col": 879191843, - "io.in.B.29.name": 628709018, - "io.in.B.29.icon": 2309203519, - "io.in.B.29.tags": 3549189493, - "io.in.B.29.$ha": 2749113605, - "io.in.B.29.rmt": 3331261174, - "io.in.B.29.$ract": 2759658832, - "io.in.B.29.$rdest": 1099907232, - "io.in.B.29.rcvc": 3167294129, - "io.in.B.29.$mute": 2452476173, - "io.in.B.30": 997201426, - "io.in.B.30.mode": 506721588, - "io.in.B.30.g": 1149963836, - "io.in.B.30.vph": 1277465400, - "io.in.B.30.mute": 1209405013, - "io.in.B.30.pol": 248952836, - "io.in.B.30.col": 3642503063, - "io.in.B.30.name": 2416644694, - "io.in.B.30.icon": 214962552, - "io.in.B.30.tags": 2308952884, - "io.in.B.30.$ha": 2447817361, - "io.in.B.30.rmt": 1332776015, - "io.in.B.30.$ract": 2437228476, - "io.in.B.30.$rdest": 1551675250, - "io.in.B.30.rcvc": 847842176, - "io.in.B.30.$mute": 2174630809, - "io.in.B.31": 4159653245, - "io.in.B.31.mode": 1924983477, - "io.in.B.31.g": 1687621744, - "io.in.B.31.vph": 4288536373, - "io.in.B.31.mute": 3414878100, - "io.in.B.31.pol": 905837332, - "io.in.B.31.col": 4036517098, - "io.in.B.31.name": 2863758423, - "io.in.B.31.icon": 2205586813, - "io.in.B.31.tags": 515983122, - "io.in.B.31.$ha": 2647568270, - "io.in.B.31.rmt": 3751092274, - "io.in.B.31.$ract": 2616008027, - "io.in.B.31.$rdest": 3600748813, - "io.in.B.31.rcvc": 2725834629, - "io.in.B.31.$mute": 2518550798, - "io.in.B.32": 3361371976, - "io.in.B.32.mode": 71360181, - "io.in.B.32.g": 2199378391, - "io.in.B.32.vph": 120317731, - "io.in.B.32.mute": 113998740, - "io.in.B.32.pol": 3733153522, - "io.in.B.32.col": 1923004669, - "io.in.B.32.name": 2789779560, - "io.in.B.32.icon": 3860550258, - "io.in.B.32.tags": 104120226, - "io.in.B.32.$ha": 2148473739, - "io.in.B.32.rmt": 2251125579, - "io.in.B.32.$ract": 2158856534, - "io.in.B.32.$rdest": 2182275186, - "io.in.B.32.rcvc": 2415174660, - "io.in.B.32.$mute": 2421464371, - "io.in.B.33": 3461398481, - "io.in.B.33.mode": 4267780251, - "io.in.B.33.g": 2737036331, - "io.in.B.33.vph": 99844899, - "io.in.B.33.mute": 1743334034, - "io.in.B.33.pol": 1575997506, - "io.in.B.33.col": 2555958590, - "io.in.B.33.name": 4138672729, - "io.in.B.33.icon": 4158035580, - "io.in.B.33.tags": 1614128056, - "io.in.B.33.$ha": 3576942909, - "io.in.B.33.rmt": 3554498872, - "io.in.B.33.$ract": 3545381400, - "io.in.B.33.$rdest": 612915378, - "io.in.B.33.rcvc": 1108483615, - "io.in.B.33.$mute": 3282118181, - "io.in.B.34": 2664099628, - "io.in.B.34.mode": 1882324113, - "io.in.B.34.g": 3183021496, - "io.in.B.34.vph": 2960039625, - "io.in.B.34.mute": 3940015784, - "io.in.B.34.pol": 3400936533, - "io.in.B.34.col": 2645799227, - "io.in.B.34.name": 3067666562, - "io.in.B.34.icon": 2230687244, - "io.in.B.34.tags": 2829092616, - "io.in.B.34.$ha": 1431932199, - "io.in.B.34.rmt": 645026545, - "io.in.B.34.$ract": 1463490050, - "io.in.B.34.$rdest": 2315574180, - "io.in.B.34.rcvc": 1537590046, - "io.in.B.34.$mute": 990521903, - "io.in.B.35": 726264114, - "io.in.B.35.mode": 3536742785, - "io.in.B.35.g": 3719329033, - "io.in.B.35.vph": 546310823, - "io.in.B.35.mute": 1803446712, - "io.in.B.35.pol": 1988272726, - "io.in.B.35.col": 1103872001, - "io.in.B.35.name": 158161395, - "io.in.B.35.icon": 3821611505, - "io.in.B.35.tags": 1626231019, - "io.in.B.35.$ha": 41831127, - "io.in.B.35.rmt": 1699251966, - "io.in.B.35.$ract": 31450930, - "io.in.B.35.$rdest": 1936642788, - "io.in.B.35.rcvc": 2987374361, - "io.in.B.35.$mute": 101100383, - "io.in.B.36": 2882082968, - "io.in.B.36.mode": 1150201244, - "io.in.B.36.g": 1279633054, - "io.in.B.36.vph": 2938879799, - "io.in.B.36.mute": 3329797565, - "io.in.B.36.pol": 2681390163, - "io.in.B.36.col": 1474395135, - "io.in.B.36.name": 569755150, - "io.in.B.36.icon": 1195384966, - "io.in.B.36.tags": 2690806028, - "io.in.B.36.$ha": 1692862170, - "io.in.B.36.rmt": 131907479, - "io.in.B.36.$ract": 1724384055, - "io.in.B.36.$rdest": 15775348, - "io.in.B.36.rcvc": 2383589352, - "io.in.B.36.$mute": 2157375322, - "io.in.B.37": 2085111803, - "io.in.B.37.mode": 2618784524, - "io.in.B.37.g": 474144912, - "io.in.B.37.vph": 57006413, - "io.in.B.37.mute": 2532149005, - "io.in.B.37.pol": 2613258617, - "io.in.B.37.col": 2522114191, - "io.in.B.37.name": 4087109630, - "io.in.B.37.icon": 3058959499, - "io.in.B.37.tags": 3246626033, - "io.in.B.37.$ha": 413576169, - "io.in.B.37.rmt": 2276303770, - "io.in.B.37.$ract": 424167556, - "io.in.B.37.$rdest": 3061182413, - "io.in.B.37.rcvc": 259560429, - "io.in.B.37.$mute": 4246801617, - "io.in.B.38": 1354891062, - "io.in.B.38.mode": 787478786, - "io.in.B.38.g": 1322742321, - "io.in.B.38.vph": 1734441309, - "io.in.B.38.mute": 739596523, - "io.in.B.38.pol": 721982841, - "io.in.B.38.col": 2072373893, - "io.in.B.38.name": 1954735104, - "io.in.B.38.icon": 2323139034, - "io.in.B.38.tags": 200782938, - "io.in.B.38.$ha": 3651606483, - "io.in.B.38.rmt": 1387337354, - "io.in.B.38.$ract": 3683169422, - "io.in.B.38.$rdest": 1644571594, - "io.in.B.38.rcvc": 793269885, - "io.in.B.38.$mute": 3613499611, - "io.in.B.39": 556608529, - "io.in.B.39.mode": 3556465923, - "io.in.B.39.g": 4007883909, - "io.in.B.39.vph": 3905471808, - "io.in.B.39.mute": 2454453562, - "io.in.B.39.pol": 3061156522, - "io.in.B.39.col": 1176382293, - "io.in.B.39.name": 506068528, - "io.in.B.39.icon": 2346593749, - "io.in.B.39.tags": 4189866079, - "io.in.B.39.$ha": 3037470211, - "io.in.B.39.rmt": 3658852992, - "io.in.B.39.$ract": 3048019262, - "io.in.B.39.$rdest": 1082147154, - "io.in.B.39.rcvc": 2818697831, - "io.in.B.39.$mute": 2069748043, - "io.in.B.40": 866962057, - "io.in.B.40.mode": 1675662238, - "io.in.B.40.g": 1568354146, - "io.in.B.40.vph": 975266498, - "io.in.B.40.mute": 19175103, - "io.in.B.40.pol": 3089993838, - "io.in.B.40.col": 4161751577, - "io.in.B.40.name": 1932214796, - "io.in.B.40.icon": 370348254, - "io.in.B.40.tags": 1443668894, - "io.in.B.40.$ha": 1401766319, - "io.in.B.40.rmt": 1369856473, - "io.in.B.40.$ract": 1391380986, - "io.in.B.40.$rdest": 2330154925, - "io.in.B.40.rcvc": 1147001318, - "io.in.B.40.$mute": 1699198423, - "io.in.B.41": 3358284228, - "io.in.B.41.mode": 2662360607, - "io.in.B.41.g": 4253466294, - "io.in.B.41.vph": 1041411807, - "io.in.B.41.mute": 3852223870, - "io.in.B.41.pol": 711839102, - "io.in.B.41.col": 3761196012, - "io.in.B.41.name": 2365596685, - "io.in.B.41.icon": 1479111960, - "io.in.B.41.tags": 3610326932, - "io.in.B.41.$ha": 2935933220, - "io.in.B.41.rmt": 2505820124, - "io.in.B.41.$ract": 2904369137, - "io.in.B.41.$rdest": 3134381055, - "io.in.B.41.rcvc": 32623595, - "io.in.B.41.$mute": 2303585188, - "io.in.B.42": 2560985383, - "io.in.B.42.mode": 1122654751, - "io.in.B.42.g": 2886191168, - "io.in.B.42.vph": 995341285, - "io.in.B.42.mute": 1243281790, - "io.in.B.42.pol": 3502287220, - "io.in.B.42.col": 1632610247, - "io.in.B.42.name": 1675715046, - "io.in.B.42.icon": 359781544, - "io.in.B.42.tags": 4204922916, - "io.in.B.42.$ha": 2415723809, - "io.in.B.42.rmt": 2794003157, - "io.in.B.42.$ract": 2405172172, - "io.in.B.42.$rdest": 2958726260, - "io.in.B.42.rcvc": 1537416122, - "io.in.B.42.$mute": 3549228969, - "io.in.B.43": 690297136, - "io.in.B.43.mode": 156102533, - "io.in.B.43.g": 1276365460, - "io.in.B.43.vph": 430141413, - "io.in.B.43.mute": 2230795268, - "io.in.B.43.pol": 1698604100, - "io.in.B.43.col": 3033283792, - "io.in.B.43.name": 2757252152, - "io.in.B.43.icon": 830281874, - "io.in.B.43.tags": 4276013570, - "io.in.B.43.$ha": 3865638235, - "io.in.B.43.rmt": 3402333890, - "io.in.B.43.$ract": 3834283878, - "io.in.B.43.$rdest": 2964388838, - "io.in.B.43.rcvc": 946073525, - "io.in.B.43.$mute": 2900607811, - "io.in.B.44": 3851407507, - "io.in.B.44.mode": 2254582523, - "io.in.B.44.g": 2796092469, - "io.in.B.44.vph": 4254494803, - "io.in.B.44.mute": 4238876402, - "io.in.B.44.pol": 2036123199, - "io.in.B.44.col": 3018021101, - "io.in.B.44.name": 3610800184, - "io.in.B.44.icon": 3380397474, - "io.in.B.44.tags": 4200181714, - "io.in.B.44.$ha": 1300889821, - "io.in.B.44.rmt": 1834209435, - "io.in.B.44.$ract": 1269494712, - "io.in.B.44.$rdest": 2548867798, - "io.in.B.44.rcvc": 703620276, - "io.in.B.44.$mute": 1173993413, - "io.in.B.45": 3054435694, - "io.in.B.45.mode": 3720021995, - "io.in.B.45.g": 1990235727, - "io.in.B.45.vph": 275786857, - "io.in.B.45.mute": 1619808770, - "io.in.B.45.pol": 3034126280, - "io.in.B.45.col": 595526251, - "io.in.B.45.name": 3955581353, - "io.in.B.45.icon": 4194064807, - "io.in.B.45.tags": 1997775853, - "io.in.B.45.$ha": 3544830477, - "io.in.B.45.rmt": 2658690184, - "io.in.B.45.$ract": 3513313576, - "io.in.B.45.$rdest": 1762015419, - "io.in.B.45.rcvc": 2027923663, - "io.in.B.45.$mute": 361768309, - "io.in.B.46": 4228196324, - "io.in.B.46.mode": 1523534822, - "io.in.B.46.g": 2838874716, - "io.in.B.46.vph": 2527194873, - "io.in.B.46.mute": 3795662343, - "io.in.B.46.pol": 3053638597, - "io.in.B.46.col": 2759224929, - "io.in.B.46.name": 1873157540, - "io.in.B.46.icon": 2372934711, - "io.in.B.46.tags": 3062843606, - "io.in.B.46.$ha": 1630199280, - "io.in.B.46.rmt": 4158900353, - "io.in.B.46.$ract": 1619612973, - "io.in.B.46.$rdest": 143165286, - "io.in.B.46.rcvc": 2320005454, - "io.in.B.46.$mute": 2260343152, - "io.in.B.47": 3430897479, - "io.in.B.47.mode": 3381690582, - "io.in.B.47.g": 3375547664, - "io.in.B.47.vph": 3568937687, - "io.in.B.47.mute": 3300338263, - "io.in.B.47.pol": 3027644355, - "io.in.B.47.col": 1890250993, - "io.in.B.47.name": 3693772180, - "io.in.B.47.icon": 3200720929, - "io.in.B.47.tags": 3618868443, - "io.in.B.47.$ha": 240552295, - "io.in.B.47.rmt": 201930372, - "io.in.B.47.$ract": 272111426, - "io.in.B.47.$rdest": 3876373103, - "io.in.B.47.rcvc": 1998392115, - "io.in.B.47.$mute": 135342959, - "io.in.B.48": 2566801872, - "io.in.B.48.mode": 1159029996, - "io.in.B.48.g": 4157036194, - "io.in.B.48.vph": 910743527, - "io.in.B.48.mute": 1039625837, - "io.in.B.48.pol": 1199938499, - "io.in.B.48.col": 2487942383, - "io.in.B.48.name": 2287754142, - "io.in.B.48.icon": 2037314544, - "io.in.B.48.tags": 321170492, - "io.in.B.48.$ha": 1821709705, - "io.in.B.48.rmt": 1277233332, - "io.in.B.48.$ract": 1811325732, - "io.in.B.48.$rdest": 3195671948, - "io.in.B.48.rcvc": 1238931395, - "io.in.B.48.$mute": 2790252401, - "io.in.C": 1304912263, - "io.in.C.1": 2576931009, - "io.in.C.1.mode": 4216927812, - "io.in.C.1.g": 659525966, - "io.in.C.1.vph": 1749362953, - "io.in.C.1.mute": 1487509495, - "io.in.C.1.pol": 3309344532, - "io.in.C.1.col": 2237915685, - "io.in.C.1.name": 622667872, - "io.in.C.1.icon": 2823762018, - "io.in.C.1.tags": 452462863, - "io.in.C.1.$ha": 1455304010, - "io.in.C.1.rmt": 2032491197, - "io.in.C.1.$ract": 2346174375, - "io.in.C.1.$rdest": 1403742864, - "io.in.C.1.rcvc": 215459392, - "io.in.C.1.$mute": 3199761992, - "io.in.C.2": 3614040707, - "io.in.C.2.mode": 3393773618, - "io.in.C.2.g": 574802875, - "io.in.C.2.vph": 2428321971, - "io.in.C.2.mute": 1670384421, - "io.in.C.2.pol": 3240376650, - "io.in.C.2.col": 2317739267, - "io.in.C.2.name": 1212234362, - "io.in.C.2.icon": 3122179892, - "io.in.C.2.tags": 591999389, - "io.in.C.2.$ha": 2499347252, - "io.in.C.2.rmt": 3386114099, - "io.in.C.2.$ract": 2162528021, - "io.in.C.2.$rdest": 1220429234, - "io.in.C.2.rcvc": 51221346, - "io.in.C.2.$mute": 3278422106, - "io.in.C.3": 2643109181, - "io.in.C.3.mode": 2958617400, - "io.in.C.3.g": 35833207, - "io.in.C.3.vph": 2093354005, - "io.in.C.3.mute": 2630049987, - "io.in.C.3.pol": 2903817568, - "io.in.C.3.col": 2144722977, - "io.in.C.3.name": 1365199756, - "io.in.C.3.icon": 3672884622, - "io.in.C.3.tags": 293917275, - "io.in.C.3.$ha": 1792143678, - "io.in.C.3.rmt": 3264991569, - "io.in.C.3.$ract": 2501447267, - "io.in.C.3.$rdest": 1581607812, - "io.in.C.3.rcvc": 4193961132, - "io.in.C.3.$mute": 1994666620, - "io.in.C.4": 3424674298, - "io.in.C.4.mode": 4292342886, - "io.in.C.4.g": 808339125, - "io.in.C.4.vph": 2099482271, - "io.in.C.4.mute": 2013925873, - "io.in.C.4.pol": 2956717702, - "io.in.C.4.col": 1983618671, - "io.in.C.4.name": 1727107974, - "io.in.C.4.icon": 2757747184, - "io.in.C.4.tags": 372996841, - "io.in.C.4.$ha": 1493155000, - "io.in.C.4.rmt": 2183905991, - "io.in.C.4.$ract": 2257544593, - "io.in.C.4.$rdest": 1505479782, - "io.in.C.4.rcvc": 4272584846, - "io.in.C.4.$mute": 3856397454, - "io.in.C.5": 4064359383, - "io.in.C.5.mode": 4129612908, - "io.in.C.5.g": 2419470801, - "io.in.C.5.vph": 1831633297, - "io.in.C.5.mute": 1631204991, - "io.in.C.5.pol": 3161060988, - "io.in.C.5.col": 1811134861, - "io.in.C.5.name": 1331666008, - "io.in.C.5.icon": 3245334154, - "io.in.C.5.tags": 535513367, - "io.in.C.5.$ha": 2701697954, - "io.in.C.5.rmt": 2928739077, - "io.in.C.5.$ract": 2094875471, - "io.in.C.5.$rdest": 1322159224, - "io.in.C.5.rcvc": 1219188744, - "io.in.C.5.$mute": 3266473376, - "io.in.C.6": 403869844, - "io.in.C.6.mode": 3379209114, - "io.in.C.6.g": 2063667920, - "io.in.C.6.vph": 2336953627, - "io.in.C.6.mute": 2485157837, - "io.in.C.6.pol": 3658349714, - "io.in.C.6.col": 2183234283, - "io.in.C.6.name": 1378875986, - "io.in.C.6.icon": 3609247068, - "io.in.C.6.tags": 217764933, - "io.in.C.6.$ha": 1878741228, - "io.in.C.6.rmt": 3450527675, - "io.in.C.6.$ract": 983202941, - "io.in.C.6.$rdest": 1840460634, - "io.in.C.6.rcvc": 135591562, - "io.in.C.6.$mute": 1893544050, - "io.in.C.7": 3606247059, - "io.in.C.7.mode": 3798030144, - "io.in.C.7.g": 1526989539, - "io.in.C.7.vph": 2191185341, - "io.in.C.7.mute": 1912978763, - "io.in.C.7.pol": 2837912200, - "io.in.C.7.col": 1967709513, - "io.in.C.7.name": 1552816420, - "io.in.C.7.icon": 3039500246, - "io.in.C.7.tags": 148244579, - "io.in.C.7.$ha": 1643203222, - "io.in.C.7.rmt": 2222742009, - "io.in.C.7.$ract": 2431145483, - "io.in.C.7.$rdest": 1657141612, - "io.in.C.7.rcvc": 4173462356, - "io.in.C.7.$mute": 3754665684, - "io.in.C.8": 617178880, - "io.in.C.8.mode": 95322766, - "io.in.C.8.g": 3071231529, - "io.in.C.8.vph": 2256939815, - "io.in.C.8.mute": 1530433689, - "io.in.C.8.pol": 3377804718, - "io.in.C.8.col": 1730985015, - "io.in.C.8.name": 2456957310, - "io.in.C.8.icon": 3254692280, - "io.in.C.8.tags": 457376145, - "io.in.C.8.$ha": 2749321584, - "io.in.C.8.rmt": 3019985263, - "io.in.C.8.$ract": 2056831289, - "io.in.C.8.$rdest": 1368026702, - "io.in.C.8.rcvc": 1127903190, - "io.in.C.8.$mute": 3833837478, - "io.in.C.9": 1055339162, - "io.in.C.9.mode": 4227771252, - "io.in.C.9.g": 387397093, - "io.in.C.9.vph": 2427345977, - "io.in.C.9.mute": 1713334215, - "io.in.C.9.pol": 3246727812, - "io.in.C.9.col": 2333926805, - "io.in.C.9.name": 1476680752, - "io.in.C.9.icon": 3099545138, - "io.in.C.9.tags": 4247146399, - "io.in.C.9.$ha": 2681854330, - "io.in.C.9.rmt": 3548959373, - "io.in.C.9.$ract": 1854868695, - "io.in.C.9.$rdest": 1184721472, - "io.in.C.9.rcvc": 34500112, - "io.in.C.9.$mute": 3346260312, - "io.in.C.10": 2061150220, - "io.in.C.10.mode": 2556438648, - "io.in.C.10.g": 2329912590, - "io.in.C.10.vph": 4281444196, - "io.in.C.10.mute": 4125764289, - "io.in.C.10.pol": 4276553872, - "io.in.C.10.col": 3295530094, - "io.in.C.10.name": 518442020, - "io.in.C.10.icon": 2627908642, - "io.in.C.10.tags": 2524164523, - "io.in.C.10.$ha": 2629010151, - "io.in.C.10.rmt": 1283315145, - "io.in.C.10.$ract": 2618422722, - "io.in.C.10.$rdest": 3376180026, - "io.in.C.10.rcvc": 1234856566, - "io.in.C.10.$mute": 3426300399, - "io.in.C.11": 3366716618, - "io.in.C.11.mode": 2654832371, - "io.in.C.11.g": 3938422751, - "io.in.C.11.vph": 1280392031, - "io.in.C.11.mute": 2496111754, - "io.in.C.11.pol": 1946096990, - "io.in.C.11.col": 3907951499, - "io.in.C.11.name": 3924655534, - "io.in.C.11.icon": 2630340606, - "io.in.C.11.tags": 3130531238, - "io.in.C.11.$ha": 3472639410, - "io.in.C.11.rmt": 716840908, - "io.in.C.11.$ract": 3503998751, - "io.in.C.11.$rdest": 3109644189, - "io.in.C.11.rcvc": 1465131131, - "io.in.C.11.$mute": 2525082354, - "io.in.C.12": 3469858485, - "io.in.C.12.mode": 2350097166, - "io.in.C.12.g": 2935165532, - "io.in.C.12.vph": 742551573, - "io.in.C.12.mute": 2968936591, - "io.in.C.12.pol": 2448599377, - "io.in.C.12.col": 9973575, - "io.in.C.12.name": 3392751534, - "io.in.C.12.icon": 816748945, - "io.in.C.12.tags": 1311733492, - "io.in.C.12.$ha": 1625983441, - "io.in.C.12.rmt": 4155824778, - "io.in.C.12.$ract": 1657383676, - "io.in.C.12.$rdest": 3418675165, - "io.in.C.12.rcvc": 2322422397, - "io.in.C.12.$mute": 2759487193, - "io.in.C.13": 4083323744, - "io.in.C.13.mode": 2678098801, - "io.in.C.13.g": 2396195856, - "io.in.C.13.vph": 1777972245, - "io.in.C.13.mute": 3144107656, - "io.in.C.13.pol": 1672233948, - "io.in.C.13.col": 309909514, - "io.in.C.13.name": 4195469000, - "io.in.C.13.icon": 292201912, - "io.in.C.13.tags": 3179076823, - "io.in.C.13.$ha": 2509404763, - "io.in.C.13.rmt": 1490613898, - "io.in.C.13.$ract": 2519990886, - "io.in.C.13.$rdest": 2240887108, - "io.in.C.13.rcvc": 2836166269, - "io.in.C.13.$mute": 1877294659, - "io.in.C.14": 3548616993, - "io.in.C.14.mode": 4087302149, - "io.in.C.14.g": 597552466, - "io.in.C.14.vph": 2376019568, - "io.in.C.14.mute": 1902994308, - "io.in.C.14.pol": 1124282807, - "io.in.C.14.col": 140033053, - "io.in.C.14.name": 3670420168, - "io.in.C.14.icon": 919129950, - "io.in.C.14.tags": 1622599506, - "io.in.C.14.$ha": 971451995, - "io.in.C.14.rmt": 1994328925, - "io.in.C.14.$ract": 940095078, - "io.in.C.14.$rdest": 3859881014, - "io.in.C.14.rcvc": 2353433634, - "io.in.C.14.$mute": 1583467075, - "io.in.C.15": 4183058908, - "io.in.C.15.mode": 3946228546, - "io.in.C.15.g": 1403404155, - "io.in.C.15.vph": 2830984459, - "io.in.C.15.mute": 2715156139, - "io.in.C.15.pol": 3236290106, - "io.in.C.15.col": 106503091, - "io.in.C.15.name": 2788219954, - "io.in.C.15.icon": 1255988079, - "io.in.C.15.tags": 1121407853, - "io.in.C.15.$ha": 693490405, - "io.in.C.15.rmt": 1667340096, - "io.in.C.15.$ract": 703870512, - "io.in.C.15.$rdest": 1589321677, - "io.in.C.15.rcvc": 2660751399, - "io.in.C.15.$mute": 1472405997, - "io.in.C.16": 460469610, - "io.in.C.16.mode": 150238518, - "io.in.C.16.g": 1068572776, - "io.in.C.16.vph": 2476515201, - "io.in.C.16.mute": 223720631, - "io.in.C.16.pol": 314970672, - "io.in.C.16.col": 3249109430, - "io.in.C.16.name": 2281140136, - "io.in.C.16.icon": 1883628381, - "io.in.C.16.tags": 203028291, - "io.in.C.16.$ha": 585873128, - "io.in.C.16.rmt": 2851102910, - "io.in.C.16.$ract": 554514997, - "io.in.C.16.$rdest": 3040677526, - "io.in.C.16.rcvc": 3981696985, - "io.in.C.16.$mute": 1700527592, - "io.in.C.17": 1074267989, - "io.in.C.17.mode": 1810770272, - "io.in.C.17.g": 531893129, - "io.in.C.17.vph": 3865084804, - "io.in.C.17.mute": 3340644585, - "io.in.C.17.pol": 2279512227, - "io.in.C.17.col": 915913289, - "io.in.C.17.name": 3031503132, - "io.in.C.17.icon": 2408128793, - "io.in.C.17.tags": 3795497795, - "io.in.C.17.$ha": 1410491247, - "io.in.C.17.rmt": 2578979872, - "io.in.C.17.$ract": 1400067514, - "io.in.C.17.$rdest": 4244343005, - "io.in.C.17.rcvc": 3919535111, - "io.in.C.17.$mute": 801280407, - "io.in.C.18": 1881719747, - "io.in.C.18.mode": 1980667220, - "io.in.C.18.g": 3799968974, - "io.in.C.18.vph": 434712599, - "io.in.C.18.mute": 3170450677, - "io.in.C.18.pol": 2111450275, - "io.in.C.18.col": 884801097, - "io.in.C.18.name": 2527720722, - "io.in.C.18.icon": 1892960710, - "io.in.C.18.tags": 670826974, - "io.in.C.18.$ha": 4157273938, - "io.in.C.18.rmt": 3397451828, - "io.in.C.18.$ract": 4188793279, - "io.in.C.18.$rdest": 1904060563, - "io.in.C.18.rcvc": 3080142915, - "io.in.C.18.$mute": 156433810, - "io.in.C.19": 637127105, - "io.in.C.19.mode": 266697455, - "io.in.C.19.g": 1116175490, - "io.in.C.19.vph": 369673242, - "io.in.C.19.mute": 1260357486, - "io.in.C.19.pol": 3003621689, - "io.in.C.19.col": 2817956655, - "io.in.C.19.name": 1642243718, - "io.in.C.19.icon": 2331882955, - "io.in.C.19.tags": 3810637785, - "io.in.C.19.$ha": 3365139897, - "io.in.C.19.rmt": 253455262, - "io.in.C.19.$ract": 3375568596, - "io.in.C.19.$rdest": 3612596070, - "io.in.C.19.rcvc": 2265361337, - "io.in.C.19.$mute": 2564424417, - "io.in.C.20": 416978779, - "io.in.C.20.mode": 1881627754, - "io.in.C.20.g": 4069504651, - "io.in.C.20.vph": 879170534, - "io.in.C.20.mute": 317017555, - "io.in.C.20.pol": 3904297826, - "io.in.C.20.col": 4136250416, - "io.in.C.20.name": 209829962, - "io.in.C.20.icon": 2971886848, - "io.in.C.20.tags": 2717471197, - "io.in.C.20.$ha": 2571327533, - "io.in.C.20.rmt": 3887692899, - "io.in.C.20.$ract": 2581754952, - "io.in.C.20.$rdest": 3654953824, - "io.in.C.20.rcvc": 2946404508, - "io.in.C.20.$mute": 3347669141, - "io.in.C.21": 1051748662, - "io.in.C.21.mode": 2472431981, - "io.in.C.21.g": 1383047519, - "io.in.C.21.vph": 1327015929, - "io.in.C.21.mute": 2007740908, - "io.in.C.21.pol": 1571295712, - "io.in.C.21.col": 3429081317, - "io.in.C.21.name": 3605583129, - "io.in.C.21.icon": 4122530012, - "io.in.C.21.tags": 1564936152, - "io.in.C.21.$ha": 3056187536, - "io.in.C.21.rmt": 3528058982, - "io.in.C.21.$ract": 3087743949, - "io.in.C.21.$rdest": 1978399162, - "io.in.C.21.rcvc": 3305352321, - "io.in.C.21.$mute": 2950299664, - "io.in.C.22": 1569811975, - "io.in.C.22.mode": 2103491944, - "io.in.C.22.g": 1063461849, - "io.in.C.22.vph": 831664943, - "io.in.C.22.mute": 3047431633, - "io.in.C.22.pol": 16220203, - "io.in.C.22.col": 3932894449, - "io.in.C.22.name": 3772746004, - "io.in.C.22.icon": 447144887, - "io.in.C.22.tags": 2724109366, - "io.in.C.22.$ha": 3456126103, - "io.in.C.22.rmt": 139069756, - "io.in.C.22.$ract": 3445698546, - "io.in.C.22.$rdest": 2858846772, - "io.in.C.22.rcvc": 2380372043, - "io.in.C.22.$mute": 2508745759, - "io.in.C.23": 2875337394, - "io.in.C.23.mode": 2767252195, - "io.in.C.23.g": 1866651094, - "io.in.C.23.vph": 2899228975, - "io.in.C.23.mute": 3222726810, - "io.in.C.23.pol": 875633838, - "io.in.C.23.col": 1572813628, - "io.in.C.23.name": 272606686, - "io.in.C.23.icon": 45989774, - "io.in.C.23.tags": 3226253361, - "io.in.C.23.$ha": 1271811554, - "io.in.C.23.rmt": 1589298492, - "io.in.C.23.$ract": 1240291023, - "io.in.C.23.$rdest": 1908128973, - "io.in.C.23.rcvc": 2762429515, - "io.in.C.23.$mute": 1209952930, - "io.in.C.24": 3515022525, - "io.in.C.24.mode": 762046167, - "io.in.C.24.g": 1531819712, - "io.in.C.24.vph": 2418277778, - "io.in.C.24.mute": 94094422, - "io.in.C.24.pol": 1277169825, - "io.in.C.24.col": 292286231, - "io.in.C.24.name": 3581315550, - "io.in.C.24.icon": 1973650556, - "io.in.C.24.tags": 1711535300, - "io.in.C.24.$ha": 995971585, - "io.in.C.24.rmt": 2083351543, - "io.in.C.24.$ract": 1006353068, - "io.in.C.24.$rdest": 2485594160, - "io.in.C.24.rcvc": 2264443976, - "io.in.C.24.$mute": 1437378185, - "io.in.C.25": 2686017387, - "io.in.C.25.mode": 2879360956, - "io.in.C.25.g": 3142993636, - "io.in.C.25.vph": 2437902757, - "io.in.C.25.mute": 1768256093, - "io.in.C.25.pol": 2611787500, - "io.in.C.25.col": 246019501, - "io.in.C.25.name": 2698987256, - "io.in.C.25.icon": 1112469645, - "io.in.C.25.tags": 1313890471, - "io.in.C.25.$ha": 2174961547, - "io.in.C.25.rmt": 1518177786, - "io.in.C.25.$ract": 2164536662, - "io.in.C.25.$rdest": 3448984471, - "io.in.C.25.rcvc": 3167097421, - "io.in.C.25.$mute": 1731555635, - "io.in.C.26": 3325697030, - "io.in.C.26.mode": 1103715376, - "io.in.C.26.g": 3324061669, - "io.in.C.26.vph": 3333875611, - "io.in.C.26.mute": 1262353945, - "io.in.C.26.pol": 467233482, - "io.in.C.26.col": 3296319888, - "io.in.C.26.name": 3852126398, - "io.in.C.26.icon": 985033491, - "io.in.C.26.tags": 4125767997, - "io.in.C.26.$ha": 737905550, - "io.in.C.26.rmt": 2960257392, - "io.in.C.26.$ract": 748493147, - "io.in.C.26.$rdest": 3357460364, - "io.in.C.26.rcvc": 3535674551, - "io.in.C.26.$mute": 1517038862, - "io.in.C.27": 3694339524, - "io.in.C.27.mode": 1710944306, - "io.in.C.27.g": 639903482, - "io.in.C.27.vph": 2346724254, - "io.in.C.27.mute": 2957828539, - "io.in.C.27.pol": 1804415837, - "io.in.C.27.col": 1005265987, - "io.in.C.27.name": 2963902562, - "io.in.C.27.icon": 924571455, - "io.in.C.27.tags": 3508772669, - "io.in.C.27.$ha": 1584186197, - "io.in.C.27.rmt": 2793934042, - "io.in.C.27.$ract": 1552670752, - "io.in.C.27.$rdest": 94705894, - "io.in.C.27.rcvc": 4040132653, - "io.in.C.27.$mute": 618329117, - "io.in.C.28": 180613826, - "io.in.C.28.mode": 1819257894, - "io.in.C.28.g": 4096723019, - "io.in.C.28.vph": 4252604753, - "io.in.C.28.mute": 3353148871, - "io.in.C.28.pol": 3535728989, - "io.in.C.28.col": 405936195, - "io.in.C.28.name": 3018445784, - "io.in.C.28.icon": 1751406756, - "io.in.C.28.tags": 3594201072, - "io.in.C.28.$ha": 4089161560, - "io.in.C.28.rmt": 3245455598, - "io.in.C.28.$ract": 4078576677, - "io.in.C.28.$rdest": 3156698293, - "io.in.C.28.rcvc": 3567680937, - "io.in.C.28.$mute": 255922200, - "io.in.C.29": 1491709837, - "io.in.C.29.mode": 293996233, - "io.in.C.29.g": 607607600, - "io.in.C.29.vph": 3507877716, - "io.in.C.29.mute": 1254358208, - "io.in.C.29.pol": 2717384691, - "io.in.C.29.col": 2340832793, - "io.in.C.29.name": 2140183180, - "io.in.C.29.icon": 2190533801, - "io.in.C.29.tags": 4006540243, - "io.in.C.29.$ha": 4249144799, - "io.in.C.29.rmt": 3399624080, - "io.in.C.29.$ract": 4238763434, - "io.in.C.29.$rdest": 2248530632, - "io.in.C.29.rcvc": 3077302743, - "io.in.C.29.$mute": 3136629127, - "io.in.C.30": 884656986, - "io.in.C.30.mode": 1506714692, - "io.in.C.30.g": 3674193396, - "io.in.C.30.vph": 1157075288, - "io.in.C.30.mute": 20668229, - "io.in.C.30.pol": 4056524180, - "io.in.C.30.col": 3659182850, - "io.in.C.30.name": 117965552, - "io.in.C.30.icon": 3019066070, - "io.in.C.30.tags": 2889906431, - "io.in.C.30.$ha": 2387733043, - "io.in.C.30.rmt": 1128782997, - "io.in.C.30.$ract": 2356168942, - "io.in.C.30.$rdest": 593645790, - "io.in.C.30.rcvc": 1074815354, - "io.in.C.30.$mute": 2325155131, - "io.in.C.31": 2174453765, - "io.in.C.31.mode": 3462649055, - "io.in.C.31.g": 3135225032, - "io.in.C.31.vph": 849413427, - "io.in.C.31.mute": 3051607742, - "io.in.C.31.pol": 2351733746, - "io.in.C.31.col": 3518219647, - "io.in.C.31.name": 3530076351, - "io.in.C.31.icon": 3981682402, - "io.in.C.31.tags": 1192477946, - "io.in.C.31.$ha": 3808767774, - "io.in.C.31.rmt": 3911993496, - "io.in.C.31.$ract": 3840166699, - "io.in.C.31.$rdest": 2312439808, - "io.in.C.31.rcvc": 2923416959, - "io.in.C.31.$mute": 3534980894, - "io.in.C.32": 2976666864, - "io.in.C.32.mode": 1941586138, - "io.in.C.32.g": 4145214031, - "io.in.C.32.vph": 1077346761, - "io.in.C.32.mute": 2559722147, - "io.in.C.32.pol": 3794153477, - "io.in.C.32.col": 3455842699, - "io.in.C.32.name": 3599590586, - "io.in.C.32.icon": 1647988373, - "io.in.C.32.tags": 1007001000, - "io.in.C.32.$ha": 2033586845, - "io.in.C.32.rmt": 2971294870, - "io.in.C.32.$ract": 2002030456, - "io.in.C.32.$rdest": 277680, - "io.in.C.32.rcvc": 3864123473, - "io.in.C.32.$mute": 2309858181, - "io.in.C.33": 2877956169, - "io.in.C.33.mode": 4049213085, - "io.in.C.33.g": 3606245715, - "io.in.C.33.vph": 1776297417, - "io.in.C.33.mute": 1773147004, - "io.in.C.33.pol": 1472240304, - "io.in.C.33.col": 673563662, - "io.in.C.33.name": 2717368452, - "io.in.C.33.icon": 4157454956, - "io.in.C.33.tags": 2748471691, - "io.in.C.33.$ha": 731691200, - "io.in.C.33.rmt": 2488675990, - "io.in.C.33.$ract": 763046845, - "io.in.C.33.$rdest": 4209921347, - "io.in.C.33.rcvc": 1863007825, - "io.in.C.33.$mute": 1697398720, - "io.in.C.34": 3512725732, - "io.in.C.34.mode": 134963825, - "io.in.C.34.g": 1639830080, - "io.in.C.34.vph": 2696914372, - "io.in.C.34.mute": 2252251016, - "io.in.C.34.pol": 902373115, - "io.in.C.34.col": 613992449, - "io.in.C.34.name": 3335643780, - "io.in.C.34.icon": 1161082503, - "io.in.C.34.tags": 2576586054, - "io.in.C.34.$ha": 1232248007, - "io.in.C.34.rmt": 1605833257, - "io.in.C.34.$ract": 1263808418, - "io.in.C.34.$rdest": 1365827120, - "io.in.C.34.rcvc": 2724889302, - "io.in.C.34.$mute": 1191517135, - "io.in.C.35": 1312880378, - "io.in.C.35.mode": 3974440750, - "io.in.C.35.g": 1103517793, - "io.in.C.35.vph": 2527017407, - "io.in.C.35.mute": 2519151407, - "io.in.C.35.pol": 2806612094, - "io.in.C.35.col": 441360999, - "io.in.C.35.name": 2397574158, - "io.in.C.35.icon": 2355503710, - "io.in.C.35.tags": 754928449, - "io.in.C.35.$ha": 2117145137, - "io.in.C.35.rmt": 3011452460, - "io.in.C.35.$ract": 2127735132, - "io.in.C.35.$rdest": 1088493120, - "io.in.C.35.rcvc": 1315327707, - "io.in.C.35.$mute": 1652811065, - "io.in.C.36": 2115089312, - "io.in.C.36.mode": 2887377666, - "io.in.C.36.g": 768686502, - "io.in.C.36.vph": 3423108469, - "io.in.C.36.mute": 1781395179, - "io.in.C.36.pol": 579198580, - "io.in.C.36.col": 2818586218, - "io.in.C.36.name": 3678971748, - "io.in.C.36.icon": 2186353137, - "io.in.C.36.tags": 1881497079, - "io.in.C.36.$ha": 428471860, - "io.in.C.36.rmt": 3091181802, - "io.in.C.36.$ract": 459992385, - "io.in.C.36.$rdest": 257487930, - "io.in.C.36.rcvc": 3718638813, - "io.in.C.36.$mute": 390332724, - "io.in.C.37": 2733802835, - "io.in.C.37.mode": 1615875116, - "io.in.C.37.g": 1574169448, - "io.in.C.37.vph": 4249135992, - "io.in.C.37.mute": 3052734253, - "io.in.C.37.pol": 2540969815, - "io.in.C.37.col": 485569597, - "io.in.C.37.name": 2769913384, - "io.in.C.37.icon": 1013089821, - "io.in.C.37.tags": 1353775607, - "io.in.C.37.$ha": 3892178107, - "io.in.C.37.rmt": 2945871116, - "io.in.C.37.$ract": 3881754310, - "io.in.C.37.$rdest": 829227380, - "io.in.C.37.rcvc": 3531712699, - "io.in.C.37.$mute": 730188451, - "io.in.C.38": 684253710, - "io.in.C.38.mode": 1086622752, - "io.in.C.38.g": 715091449, - "io.in.C.38.vph": 3753797483, - "io.in.C.38.mute": 629175849, - "io.in.C.38.pol": 3582309207, - "io.in.C.38.col": 1144461885, - "io.in.C.38.name": 2937076526, - "io.in.C.38.icon": 1842024138, - "io.in.C.38.tags": 3790129266, - "io.in.C.38.$ha": 2784264382, - "io.in.C.38.rmt": 184447904, - "io.in.C.38.$ract": 2794812107, - "io.in.C.38.$rdest": 2784542442, - "io.in.C.38.rcvc": 2017830023, - "io.in.C.38.$mute": 3227793086, - "io.in.C.39": 1323938825, - "io.in.C.39.mode": 614763227, - "io.in.C.39.g": 2326228173, - "io.in.C.39.vph": 3733445486, - "io.in.C.39.mute": 1604536402, - "io.in.C.39.pol": 2805237741, - "io.in.C.39.col": 1443595091, - "io.in.C.39.name": 2054227090, - "io.in.C.39.icon": 1818979023, - "io.in.C.39.tags": 3592369293, - "io.in.C.39.$ha": 3625249989, - "io.in.C.39.rmt": 118415114, - "io.in.C.39.$ract": 3614822416, - "io.in.C.39.$rdest": 3337067390, - "io.in.C.39.rcvc": 2083217405, - "io.in.C.39.$mute": 3687123917, - "io.in.C.40": 997856657, - "io.in.C.40.mode": 2463868694, - "io.in.C.40.g": 313498794, - "io.in.C.40.vph": 1181638618, - "io.in.C.40.mute": 4029252631, - "io.in.C.40.pol": 4226212454, - "io.in.C.40.col": 3853402484, - "io.in.C.40.name": 626428614, - "io.in.C.40.icon": 2888038836, - "io.in.C.40.tags": 3082394993, - "io.in.C.40.$ha": 2550817145, - "io.in.C.40.rmt": 1175014287, - "io.in.C.40.$ract": 2519423124, - "io.in.C.40.$rdest": 4255886406, - "io.in.C.40.rcvc": 1005636544, - "io.in.C.40.$mute": 3497694369, - "io.in.C.41": 1637582732, - "io.in.C.41.mode": 2909623673, - "io.in.C.41.g": 1922048398, - "io.in.C.41.vph": 354497517, - "io.in.C.41.mute": 2409584144, - "io.in.C.41.pol": 2503802340, - "io.in.C.41.col": 3766489705, - "io.in.C.41.name": 4014938656, - "io.in.C.41.icon": 3021112768, - "io.in.C.41.tags": 3064203660, - "io.in.C.41.$ha": 3394608060, - "io.in.C.41.rmt": 567866738, - "io.in.C.41.$ract": 3425962201, - "io.in.C.41.$rdest": 270514182, - "io.in.C.41.rcvc": 1950304709, - "io.in.C.41.$mute": 2617449724, - "io.in.C.42": 2272347215, - "io.in.C.42.mode": 2301456756, - "io.in.C.42.g": 2105738168, - "io.in.C.42.vph": 1163307459, - "io.in.C.42.mute": 2870448661, - "io.in.C.42.pol": 2339332575, - "io.in.C.42.col": 4196308197, - "io.in.C.42.name": 872987695, - "io.in.C.42.icon": 752015275, - "io.in.C.42.tags": 1200785674, - "io.in.C.42.$ha": 1747734435, - "io.in.C.42.rmt": 1133506568, - "io.in.C.42.$ract": 1716174046, - "io.in.C.42.$rdest": 2963540527, - "io.in.C.42.rcvc": 1403629391, - "io.in.C.42.$mute": 2691803371, - "io.in.C.43": 1179759368, - "io.in.C.43.mode": 933682703, - "io.in.C.43.g": 3714253532, - "io.in.C.43.vph": 1756401091, - "io.in.C.43.mute": 4238222734, - "io.in.C.43.pol": 1563374978, - "io.in.C.43.col": 196690384, - "io.in.C.43.name": 4282481834, - "io.in.C.43.icon": 379470770, - "io.in.C.43.tags": 3070330629, - "io.in.C.43.$ha": 2591163277, - "io.in.C.43.rmt": 2766457864, - "io.in.C.43.$ract": 2622726056, - "io.in.C.43.$rdest": 506885650, - "io.in.C.43.rcvc": 1920813903, - "io.in.C.43.$mute": 1811592181, - "io.in.C.44": 2487947451, - "io.in.C.44.mode": 4057659875, - "io.in.C.44.g": 3379422173, - "io.in.C.44.vph": 2300162630, - "io.in.C.44.mute": 1785651610, - "io.in.C.44.pol": 1011717013, - "io.in.C.44.col": 703125019, - "io.in.C.44.name": 3244409002, - "io.in.C.44.icon": 818401632, - "io.in.C.44.tags": 1176157048, - "io.in.C.44.$ha": 713201549, - "io.in.C.44.rmt": 1882780355, - "io.in.C.44.$ract": 702821288, - "io.in.C.44.$rdest": 1387685358, - "io.in.C.44.rcvc": 2782208764, - "io.in.C.44.$mute": 1846878197, - "io.in.C.45": 3122389654, - "io.in.C.45.mode": 3811684488, - "io.in.C.45.g": 4185273815, - "io.in.C.45.vph": 2723083865, - "io.in.C.45.mute": 2702551409, - "io.in.C.45.pol": 224796107, - "io.in.C.45.col": 488776337, - "io.in.C.45.name": 2872606068, - "io.in.C.45.icon": 1178135841, - "io.in.C.45.tags": 338110299, - "io.in.C.45.$ha": 762793719, - "io.in.C.45.rmt": 3394199238, - "io.in.C.45.$ract": 794147922, - "io.in.C.45.$rdest": 3504498829, - "io.in.C.45.rcvc": 932634337, - "io.in.C.45.$mute": 1392945279, - "io.in.C.46": 1947318316, - "io.in.C.46.mode": 3982933116, - "io.in.C.46.g": 3326154516, - "io.in.C.46.vph": 2276815759, - "io.in.C.46.mute": 2531661213, - "io.in.C.46.pol": 206942670, - "io.in.C.46.col": 499738260, - "io.in.C.46.name": 2374025610, - "io.in.C.46.icon": 1772158999, - "io.in.C.46.tags": 168198097, - "io.in.C.46.$ha": 1065718522, - "io.in.C.46.rmt": 2388150428, - "io.in.C.46.$ract": 1076142167, - "io.in.C.46.$rdest": 2338605599, - "io.in.C.46.rcvc": 1938642859, - "io.in.C.46.$mute": 1173578874, - "io.in.C.47": 2734126319, - "io.in.C.47.mode": 1998022430, - "io.in.C.47.g": 2789476072, - "io.in.C.47.vph": 3687626610, - "io.in.C.47.mute": 3153075007, - "io.in.C.47.pol": 2168928833, - "io.in.C.47.col": 1342074935, - "io.in.C.47.name": 3162989886, - "io.in.C.47.icon": 2171984851, - "io.in.C.47.tags": 3724581841, - "io.in.C.47.$ha": 4065180257, - "io.in.C.47.rmt": 3726645734, - "io.in.C.47.$ract": 4033820940, - "io.in.C.47.$rdest": 4167222170, - "io.in.C.47.rcvc": 3085141249, - "io.in.C.47.$mute": 546700521, - "io.in.C.48": 3771237288, - "io.in.C.48.mode": 819864306, - "io.in.C.48.g": 844073322, - "io.in.C.48.vph": 281415685, - "io.in.C.48.mute": 707671803, - "io.in.C.48.pol": 2030992961, - "io.in.C.48.col": 772256823, - "io.in.C.48.name": 2638325396, - "io.in.C.48.icon": 2152589544, - "io.in.C.48.tags": 2938200804, - "io.in.C.48.$ha": 297934436, - "io.in.C.48.rmt": 336461914, - "io.in.C.48.$ract": 287546673, - "io.in.C.48.$rdest": 2665143935, - "io.in.C.48.rcvc": 2180355245, - "io.in.C.48.$mute": 24303844, - "io.in.SC": 3735457167, - "io.in.SC.1": 1577440457, - "io.in.SC.1.mode": 3744614917, - "io.in.SC.1.mute": 2245497220, - "io.in.SC.1.pol": 63040439, - "io.in.SC.1.col": 291476150, - "io.in.SC.1.name": 3978852568, - "io.in.SC.1.icon": 1390424409, - "io.in.SC.1.tags": 1412015111, - "io.in.SC.1.$mute": 4229552903, - "io.in.SC.2": 937653162, - "io.in.SC.2.mode": 2207841797, - "io.in.SC.2.mute": 3782280580, - "io.in.SC.2.pol": 1530431415, - "io.in.SC.2.col": 2825727692, - "io.in.SC.2.name": 300035783, - "io.in.SC.2.icon": 2123720922, - "io.in.SC.2.tags": 4191893929, - "io.in.SC.2.$mute": 211144455, - "io.in.SC.3": 4173413279, - "io.in.SC.3.mode": 2074041748, - "io.in.SC.3.mute": 292375733, - "io.in.SC.3.pol": 1094439398, - "io.in.SC.3.col": 502403427, - "io.in.SC.3.name": 2758510390, - "io.in.SC.3.icon": 4129795295, - "io.in.SC.3.tags": 3313578921, - "io.in.SC.3.$mute": 3618551789, - "io.in.SC.4": 3801432046, - "io.in.SC.4.mode": 2751676842, - "io.in.SC.4.mute": 3909390483, - "io.in.SC.4.pol": 479282172, - "io.in.SC.4.col": 486722915, - "io.in.SC.4.name": 2403025718, - "io.in.SC.4.icon": 1845497808, - "io.in.SC.4.tags": 3138841376, - "io.in.SC.4.$mute": 169626600, - "io.in.SC.5": 403910611, - "io.in.SC.5.mode": 937389353, - "io.in.SC.5.mute": 3542445344, - "io.in.SC.5.pol": 1190505315, - "io.in.SC.5.col": 2170164405, - "io.in.SC.5.name": 3160622108, - "io.in.SC.5.icon": 90592213, - "io.in.SC.5.tags": 3527647006, - "io.in.SC.5.$mute": 4151078374, - "io.in.SC.6": 1778976105, - "io.in.SC.6.mode": 3615959844, - "io.in.SC.6.mute": 3044923173, - "io.in.SC.6.pol": 2396940134, - "io.in.SC.6.col": 480814776, - "io.in.SC.6.name": 3197407391, - "io.in.SC.6.icon": 3131665654, - "io.in.SC.6.tags": 3624907077, - "io.in.SC.6.$mute": 3115319782, - "io.in.SC.7": 761742410, - "io.in.SC.7.mode": 2084522515, - "io.in.SC.7.mute": 2584567850, - "io.in.SC.7.pol": 2475196373, - "io.in.SC.7.col": 1621876546, - "io.in.SC.7.name": 2540193761, - "io.in.SC.7.icon": 4194547504, - "io.in.SC.7.tags": 985765184, - "io.in.SC.7.$mute": 1211333345, - "io.in.SC.8": 2805664176, - "io.in.SC.8.mode": 3024391721, - "io.in.SC.8.mute": 3636675616, - "io.in.SC.8.pol": 930126808, - "io.in.SC.8.col": 87784258, - "io.in.SC.8.name": 3151651957, - "io.in.SC.8.icon": 3765784049, - "io.in.SC.8.tags": 2698264783, - "io.in.SC.8.$mute": 824975100, - "io.in.SC.9": 1287196814, - "io.in.SC.9.mode": 99243064, - "io.in.SC.9.mute": 2120199937, - "io.in.SC.9.pol": 2496333967, - "io.in.SC.9.col": 827840100, - "io.in.SC.9.name": 2262126255, - "io.in.SC.9.icon": 2524045809, - "io.in.SC.9.tags": 46650570, - "io.in.SC.9.$mute": 182555903, - "io.in.SC.10": 2282967479, - "io.in.SC.10.mode": 3336304939, - "io.in.SC.10.mute": 1821427274, - "io.in.SC.10.pol": 3669929627, - "io.in.SC.10.col": 2765905688, - "io.in.SC.10.name": 328313203, - "io.in.SC.10.icon": 3511740497, - "io.in.SC.10.tags": 695743177, - "io.in.SC.10.$mute": 1268896220, - "io.in.SC.11": 1265703034, - "io.in.SC.11.mode": 502911319, - "io.in.SC.11.mute": 1290661038, - "io.in.SC.11.pol": 165774463, - "io.in.SC.11.col": 1417292804, - "io.in.SC.11.name": 3845054895, - "io.in.SC.11.icon": 666051293, - "io.in.SC.11.tags": 3486871589, - "io.in.SC.11.$mute": 4126223907, - "io.in.SC.12": 625260000, - "io.in.SC.12.mode": 3424711751, - "io.in.SC.12.mute": 2663827902, - "io.in.SC.12.pol": 805945711, - "io.in.SC.12.col": 2393018612, - "io.in.SC.12.name": 1465377855, - "io.in.SC.12.icon": 965486509, - "io.in.SC.12.tags": 3791456949, - "io.in.SC.12.$mute": 3554387636, - "io.in.SC.13": 4207060323, - "io.in.SC.13.mode": 3631586883, - "io.in.SC.13.mute": 2456789218, - "io.in.SC.13.pol": 1687267699, - "io.in.SC.13.col": 2601779696, - "io.in.SC.13.name": 2344529627, - "io.in.SC.13.icon": 1829726921, - "io.in.SC.13.tags": 356061265, - "io.in.SC.13.$mute": 2865831777, - "io.in.SC.14": 278309489, - "io.in.SC.14.mode": 2821235396, - "io.in.SC.14.mute": 3057732685, - "io.in.SC.14.pol": 873312244, - "io.in.SC.14.col": 2241663599, - "io.in.SC.14.name": 1827820220, - "io.in.SC.14.icon": 1537480286, - "io.in.SC.14.tags": 56953126, - "io.in.SC.14.$mute": 3997744126, - "io.in.SC.15": 91517191, - "io.in.SC.15.mode": 1439590356, - "io.in.SC.15.mute": 2291914621, - "io.in.SC.15.pol": 433904388, - "io.in.SC.15.col": 2144343423, - "io.in.SC.15.name": 3733239852, - "io.in.SC.15.icon": 2906028366, - "io.in.SC.15.tags": 1439827670, - "io.in.SC.15.$mute": 1365181411, - "io.in.SC.16": 3614107293, - "io.in.SC.16.mode": 2714620480, - "io.in.SC.16.mute": 3164204321, - "io.in.SC.16.pol": 2380104872, - "io.in.SC.16.col": 3419286251, - "io.in.SC.16.name": 1384309192, - "io.in.SC.16.icon": 2704745306, - "io.in.SC.16.tags": 1238462578, - "io.in.SC.16.$mute": 1976998499, - "io.in.SC.17": 248022656, - "io.in.SC.17.mode": 107165569, - "io.in.SC.17.mute": 3624175264, - "io.in.SC.17.pol": 1785988337, - "io.in.SC.17.col": 3497584802, - "io.in.SC.17.name": 2402125737, - "io.in.SC.17.icon": 4238463163, - "io.in.SC.17.tags": 2770776915, - "io.in.SC.17.$mute": 2701258978, - "io.in.SC.18": 3577508739, - "io.in.SC.18.mode": 1374644657, - "io.in.SC.18.mute": 209028272, - "io.in.SC.18.pol": 3725302753, - "io.in.SC.18.col": 458867602, - "io.in.SC.18.name": 44333369, - "io.in.SC.18.icon": 4055186059, - "io.in.SC.18.tags": 2572375971, - "io.in.SC.18.$mute": 1758201777, - "io.in.SC.19": 3122297620, - "io.in.SC.19.mode": 4258046717, - "io.in.SC.19.mute": 3810348116, - "io.in.SC.19.pol": 1641656325, - "io.in.SC.19.col": 3720417886, - "io.in.SC.19.name": 2635485909, - "io.in.SC.19.icon": 139990647, - "io.in.SC.19.tags": 2951809375, - "io.in.SC.19.$mute": 1850964323, - "io.in.SC.20": 3321372846, - "io.in.SC.20.mode": 1325236992, - "io.in.SC.20.mute": 1768385633, - "io.in.SC.20.pol": 3941126120, - "io.in.SC.20.col": 1853043243, - "io.in.SC.20.name": 2949149320, - "io.in.SC.20.icon": 1154430618, - "io.in.SC.20.tags": 2621040946, - "io.in.SC.20.$mute": 2322476264, - "io.in.SC.21": 2607550609, - "io.in.SC.21.mode": 3670609239, - "io.in.SC.21.mute": 228647086, - "io.in.SC.21.pol": 2665568383, - "io.in.SC.21.col": 4208240644, - "io.in.SC.21.name": 1669332399, - "io.in.SC.21.icon": 675004125, - "io.in.SC.21.tags": 3503125541, - "io.in.SC.21.$mute": 3279005032, - "io.in.SC.22": 1967773508, - "io.in.SC.22.mode": 742961629, - "io.in.SC.22.mute": 840731700, - "io.in.SC.22.pol": 4030594789, - "io.in.SC.22.col": 1785220734, - "io.in.SC.22.name": 3373506997, - "io.in.SC.22.icon": 384068183, - "io.in.SC.22.tags": 3202665791, - "io.in.SC.22.$mute": 719807303, - "io.in.SC.23": 2828917973, - "io.in.SC.23.mode": 2596387012, - "io.in.SC.23.mute": 2477110861, - "io.in.SC.23.pol": 3602165236, - "io.in.SC.23.col": 1682003055, - "io.in.SC.23.name": 4220299452, - "io.in.SC.23.icon": 3104500830, - "io.in.SC.23.tags": 280905510, - "io.in.SC.23.$mute": 1317606650, - "io.in.SC.24": 2105244568, - "io.in.SC.24.mode": 3858857673, - "io.in.SC.24.mute": 2020274248, - "io.in.SC.24.pol": 1239774201, - "io.in.SC.24.col": 2943823466, - "io.in.SC.24.name": 1858850465, - "io.in.SC.24.icon": 1573589571, - "io.in.SC.24.tags": 87911723, - "io.in.SC.24.$mute": 3888600520, - "io.in.SC.25": 1475963195, - "io.in.SC.25.mode": 2289758453, - "io.in.SC.25.mute": 2741960012, - "io.in.SC.25.pol": 610270173, - "io.in.SC.25.col": 3036372822, - "io.in.SC.25.name": 3954180381, - "io.in.SC.25.icon": 137480047, - "io.in.SC.25.tags": 1616297095, - "io.in.SC.25.$mute": 741766968, - "io.in.SC.26": 416100334, - "io.in.SC.26.mode": 1455640454, - "io.in.SC.26.mute": 2275843759, - "io.in.SC.26.pol": 447978742, - "io.in.SC.26.col": 2151874749, - "io.in.SC.26.name": 3750600622, - "io.in.SC.26.icon": 2903074956, - "io.in.SC.26.tags": 1421810468, - "io.in.SC.26.$mute": 1745339258, - "io.in.SC.27": 44774783, - "io.in.SC.27.mode": 2132586881, - "io.in.SC.27.mute": 2898824352, - "io.in.SC.27.pol": 456785649, - "io.in.SC.27.col": 3216789154, - "io.in.SC.27.name": 4133986729, - "io.in.SC.27.icon": 292055739, - "io.in.SC.27.tags": 1776340307, - "io.in.SC.27.$mute": 2864840554, - "io.in.SC.28": 973657122, - "io.in.SC.28.mode": 363270071, - "io.in.SC.28.mute": 583380878, - "io.in.SC.28.pol": 1368628575, - "io.in.SC.28.col": 3910235556, - "io.in.SC.28.name": 2321334287, - "io.in.SC.28.icon": 1042676157, - "io.in.SC.28.tags": 2510494853, - "io.in.SC.28.$mute": 3041208654, - "io.in.SC.29": 4219257877, - "io.in.SC.29.mode": 546516158, - "io.in.SC.29.mute": 3310960967, - "io.in.SC.29.pol": 2222399470, - "io.in.SC.29.col": 4134853525, - "io.in.SC.29.name": 3217694006, - "io.in.SC.29.icon": 549020452, - "io.in.SC.29.tags": 3364864140, - "io.in.SC.29.$mute": 1916171647, - "io.in.SC.30": 1532692911, - "io.in.SC.30.mode": 2275964460, - "io.in.SC.30.mute": 776227157, - "io.in.SC.30.pol": 2612936860, - "io.in.SC.30.col": 1571294967, - "io.in.SC.30.name": 3606275540, - "io.in.SC.30.icon": 159164198, - "io.in.SC.30.tags": 1628212318, - "io.in.SC.30.$mute": 3293171580, - "io.in.SC.31": 2150527280, - "io.in.SC.31.mode": 477468173, - "io.in.SC.31.mute": 259283204, - "io.in.SC.31.pol": 2422524885, - "io.in.SC.31.col": 1224733230, - "io.in.SC.31.name": 1470842501, - "io.in.SC.31.icon": 1949765415, - "io.in.SC.31.tags": 3427936783, - "io.in.SC.31.$mute": 2379332277, - "io.in.SC.32": 1185732147, - "io.in.SC.32.mode": 3917376989, - "io.in.SC.32.mute": 1114361908, - "io.in.SC.32.pol": 2240602853, - "io.in.SC.32.col": 358615678, - "io.in.SC.32.name": 1286913461, - "io.in.SC.32.icon": 1738966615, - "io.in.SC.32.tags": 3215069503, - "io.in.SC.32.$mute": 1483204481, - "io.in.USB": 1772555205, - "io.in.USB.1": 1557208189, - "io.in.USB.1.mode": 2086030796, - "io.in.USB.1.mute": 1855352949, - "io.in.USB.1.pol": 1080099516, - "io.in.USB.1.col": 2655693399, - "io.in.USB.1.name": 127884660, - "io.in.USB.1.icon": 3385763398, - "io.in.USB.1.tags": 1908011262, - "io.in.USB.1.$mute": 3285576824, - "io.in.USB.2": 590775232, - "io.in.USB.2.mode": 2991358293, - "io.in.USB.2.mute": 2887773740, - "io.in.USB.2.pol": 1044018877, - "io.in.USB.2.col": 2087462646, - "io.in.USB.2.name": 1662439805, - "io.in.USB.2.icon": 1356861519, - "io.in.USB.2.tags": 4175981287, - "io.in.USB.2.$mute": 1219120007, - "io.in.USB.3": 1696322793, - "io.in.USB.3.mode": 200994738, - "io.in.USB.3.mute": 3656175539, - "io.in.USB.3.pol": 2550906202, - "io.in.USB.3.col": 3801126313, - "io.in.USB.3.name": 3544571914, - "io.in.USB.3.icon": 881465784, - "io.in.USB.3.tags": 3703504000, - "io.in.USB.3.$mute": 3779527217, - "io.in.USB.4": 2406300732, - "io.in.USB.4.mode": 524314063, - "io.in.USB.4.mute": 296343974, - "io.in.USB.4.pol": 2468796439, - "io.in.USB.4.col": 1261834876, - "io.in.USB.4.name": 1519039863, - "io.in.USB.4.icon": 1997306837, - "io.in.USB.4.tags": 3464235213, - "io.in.USB.4.$mute": 2502458877, - "io.in.USB.5": 1443763463, - "io.in.USB.5.mode": 918354088, - "io.in.USB.5.mute": 833111337, - "io.in.USB.5.pol": 3269084144, - "io.in.USB.5.col": 4141655923, - "io.in.USB.5.name": 3884402976, - "io.in.USB.5.icon": 3427274562, - "io.in.USB.5.tags": 1958769834, - "io.in.USB.5.$mute": 3653206534, - "io.in.USB.6": 1472719517, - "io.in.USB.6.mode": 2542501263, - "io.in.USB.6.mute": 3378430438, - "io.in.USB.6.pol": 1534839383, - "io.in.USB.6.col": 3291161276, - "io.in.USB.6.name": 584437047, - "io.in.USB.6.icon": 1847692309, - "io.in.USB.6.tags": 371650189, - "io.in.USB.6.$mute": 2791345375, - "io.in.USB.7": 2166927867, - "io.in.USB.7.mode": 1377880703, - "io.in.USB.7.mute": 3821794294, - "io.in.USB.7.pol": 1714853191, - "io.in.USB.7.col": 348150508, - "io.in.USB.7.name": 2372606599, - "io.in.USB.7.icon": 1046761957, - "io.in.USB.7.tags": 2531538717, - "io.in.USB.7.$mute": 273326154, - "io.in.USB.8": 3246301961, - "io.in.USB.8.mode": 3948986038, - "io.in.USB.8.mute": 3523653567, - "io.in.USB.8.pol": 4283019494, - "io.in.USB.8.col": 3210890925, - "io.in.USB.8.name": 941076030, - "io.in.USB.8.icon": 1825301916, - "io.in.USB.8.tags": 3309126324, - "io.in.USB.8.$mute": 3773953420, - "io.in.USB.9": 942893660, - "io.in.USB.9.mode": 3271533853, - "io.in.USB.9.mute": 2817333492, - "io.in.USB.9.pol": 655071141, - "io.in.USB.9.col": 2564903742, - "io.in.USB.9.name": 1647703285, - "io.in.USB.9.icon": 1126513431, - "io.in.USB.9.tags": 3944958079, - "io.in.USB.9.$mute": 2630870225, - "io.in.USB.10": 3438721760, - "io.in.USB.10.mode": 2351711767, - "io.in.USB.10.mute": 3453237041, - "io.in.USB.10.pol": 1296862043, - "io.in.USB.10.col": 2472071370, - "io.in.USB.10.name": 248642003, - "io.in.USB.10.icon": 450381228, - "io.in.USB.10.tags": 3848646164, - "io.in.USB.10.$mute": 2663191109, - "io.in.USB.11": 3797713485, - "io.in.USB.11.mode": 710379483, - "io.in.USB.11.mute": 1969780761, - "io.in.USB.11.pol": 1946783322, - "io.in.USB.11.col": 814930091, - "io.in.USB.11.name": 2544536731, - "io.in.USB.11.icon": 3826018400, - "io.in.USB.11.tags": 2204440364, - "io.in.USB.11.$mute": 904486105, - "io.in.USB.12": 2999005978, - "io.in.USB.12.mode": 4140037114, - "io.in.USB.12.mute": 240951699, - "io.in.USB.12.pol": 3248389253, - "io.in.USB.12.col": 2114754284, - "io.in.USB.12.name": 3233431169, - "io.in.USB.12.icon": 3939950915, - "io.in.USB.12.tags": 2839406948, - "io.in.USB.12.$mute": 4213312127, - "io.in.USB.13": 1024629351, - "io.in.USB.13.mode": 2117146548, - "io.in.USB.13.mute": 4033964695, - "io.in.USB.13.pol": 3103478871, - "io.in.USB.13.col": 4289399230, - "io.in.USB.13.name": 2633225841, - "io.in.USB.13.icon": 3848020593, - "io.in.USB.13.tags": 223505786, - "io.in.USB.13.$mute": 2096191731, - "io.in.USB.14": 1962082190, - "io.in.USB.14.mode": 2064425414, - "io.in.USB.14.mute": 1978922336, - "io.in.USB.14.pol": 2808207451, - "io.in.USB.14.col": 3981000138, - "io.in.USB.14.name": 3245496184, - "io.in.USB.14.icon": 4235755438, - "io.in.USB.14.tags": 767935781, - "io.in.USB.14.$mute": 3621563462, - "io.in.USB.15": 1162402523, - "io.in.USB.15.mode": 1537749859, - "io.in.USB.15.mute": 412091520, - "io.in.USB.15.pol": 3513193840, - "io.in.USB.15.col": 2536864449, - "io.in.USB.15.name": 1261571384, - "io.in.USB.15.icon": 861913430, - "io.in.USB.15.tags": 843693723, - "io.in.USB.15.$mute": 1559712166, - "io.in.USB.16": 391336045, - "io.in.USB.16.mode": 3223456761, - "io.in.USB.16.mute": 2920454530, - "io.in.USB.16.pol": 1194664511, - "io.in.USB.16.col": 2171033478, - "io.in.USB.16.name": 3147072745, - "io.in.USB.16.icon": 1383387142, - "io.in.USB.16.tags": 1732722415, - "io.in.USB.16.$mute": 775072576, - "io.in.USB.17": 4038329274, - "io.in.USB.17.mode": 2267240361, - "io.in.USB.17.mute": 2697651755, - "io.in.USB.17.pol": 3285886387, - "io.in.USB.17.col": 2144366626, - "io.in.USB.17.name": 4285070012, - "io.in.USB.17.icon": 1571526050, - "io.in.USB.17.tags": 246999180, - "io.in.USB.17.$mute": 3137591739, - "io.in.USB.18": 3071855388, - "io.in.USB.18.mode": 3794464090, - "io.in.USB.18.mute": 3900391155, - "io.in.USB.18.pol": 3332029970, - "io.in.USB.18.col": 2366657379, - "io.in.USB.18.name": 3841806689, - "io.in.USB.18.icon": 2483488550, - "io.in.USB.18.tags": 2649507460, - "io.in.USB.18.$mute": 1357674399, - "io.in.USB.19": 1365889070, - "io.in.USB.19.mode": 1361334770, - "io.in.USB.19.mute": 3933455376, - "io.in.USB.19.pol": 928901340, - "io.in.USB.19.col": 4052570997, - "io.in.USB.19.name": 691404603, - "io.in.USB.19.icon": 2515735005, - "io.in.USB.19.tags": 2761282862, - "io.in.USB.19.$mute": 609490279, - "io.in.USB.20": 156212804, - "io.in.USB.20.mode": 1287138635, - "io.in.USB.20.mute": 551550710, - "io.in.USB.20.pol": 2609745904, - "io.in.USB.20.col": 3793209921, - "io.in.USB.20.name": 2216856080, - "io.in.USB.20.icon": 1259333584, - "io.in.USB.20.tags": 1140439164, - "io.in.USB.20.$mute": 1688676265, - "io.in.USB.21": 3483400593, - "io.in.USB.21.mode": 3018018043, - "io.in.USB.21.mute": 964885173, - "io.in.USB.21.pol": 909322537, - "io.in.USB.21.col": 4186140376, - "io.in.USB.21.name": 3871412224, - "io.in.USB.21.icon": 3220114204, - "io.in.USB.21.tags": 2863719662, - "io.in.USB.21.$mute": 1392632500, - "io.in.USB.22": 3393289912, - "io.in.USB.22.mode": 2897348949, - "io.in.USB.22.mute": 2869565402, - "io.in.USB.22.pol": 2549712725, - "io.in.USB.22.col": 1576128956, - "io.in.USB.22.name": 3997979245, - "io.in.USB.22.icon": 4204317214, - "io.in.USB.22.tags": 1152099309, - "io.in.USB.22.$mute": 1082127959, - "io.in.USB.23": 2573616645, - "io.in.USB.23.mode": 3389181404, - "io.in.USB.23.mute": 3214007167, - "io.in.USB.23.pol": 1589016001, - "io.in.USB.23.col": 2604666992, - "io.in.USB.23.name": 374581311, - "io.in.USB.23.icon": 2434425775, - "io.in.USB.23.tags": 428349743, - "io.in.USB.23.$mute": 745604320, - "io.in.USB.24": 2953574738, - "io.in.USB.24.mode": 2537741996, - "io.in.USB.24.mute": 4054536591, - "io.in.USB.24.pol": 96173384, - "io.in.USB.24.col": 1235851225, - "io.in.USB.24.name": 548224719, - "io.in.USB.24.icon": 3427191095, - "io.in.USB.24.tags": 2274119296, - "io.in.USB.24.$mute": 2584891451, - "io.in.USB.25": 2321338932, - "io.in.USB.25.mode": 1035445994, - "io.in.USB.25.mute": 3691550501, - "io.in.USB.25.pol": 1445715802, - "io.in.USB.25.col": 315193771, - "io.in.USB.25.name": 793422339, - "io.in.USB.25.icon": 3182159155, - "io.in.USB.25.tags": 3989120918, - "io.in.USB.25.$mute": 1871309237, - "io.in.USB.26": 205363585, - "io.in.USB.26.mode": 2407744638, - "io.in.USB.26.mute": 3096131128, - "io.in.USB.26.pol": 3660100318, - "io.in.USB.26.col": 2643322999, - "io.in.USB.26.name": 2985085341, - "io.in.USB.26.icon": 4060513945, - "io.in.USB.26.tags": 2484900208, - "io.in.USB.26.$mute": 125111865, - "io.in.USB.27": 1116643603, - "io.in.USB.27.mode": 2095896533, - "io.in.USB.27.mute": 4144318944, - "io.in.USB.27.pol": 1222906488, - "io.in.USB.27.col": 2194832585, - "io.in.USB.27.name": 2860715398, - "io.in.USB.27.icon": 107811406, - "io.in.USB.27.tags": 2415284387, - "io.in.USB.27.$mute": 1473017170, - "io.in.USB.28": 468996597, - "io.in.USB.28.mode": 527463912, - "io.in.USB.28.mute": 1223165354, - "io.in.USB.28.pol": 2801018107, - "io.in.USB.28.col": 1618108266, - "io.in.USB.28.name": 1558584042, - "io.in.USB.28.icon": 4152134502, - "io.in.USB.28.tags": 2351036997, - "io.in.USB.28.$mute": 326158604, - "io.in.USB.29": 844740930, - "io.in.USB.29.mode": 1285031879, - "io.in.USB.29.mute": 1143495301, - "io.in.USB.29.pol": 1840327770, - "io.in.USB.29.col": 833873579, - "io.in.USB.29.name": 787126068, - "io.in.USB.29.icon": 684477004, - "io.in.USB.29.tags": 2602900871, - "io.in.USB.29.$mute": 2829698896, - "io.in.USB.30": 1487546301, - "io.in.USB.30.mode": 3212916985, - "io.in.USB.30.mute": 4235257403, - "io.in.USB.30.pol": 441929348, - "io.in.USB.30.col": 1448425789, - "io.in.USB.30.name": 2349771404, - "io.in.USB.30.icon": 4022869170, - "io.in.USB.30.tags": 303508793, - "io.in.USB.30.$mute": 866183872, - "io.in.USB.31": 881520394, - "io.in.USB.31.mode": 2883929917, - "io.in.USB.31.mute": 1055722886, - "io.in.USB.31.pol": 2635345976, - "io.in.USB.31.col": 3818317193, - "io.in.USB.31.name": 3396039038, - "io.in.USB.31.icon": 1263853848, - "io.in.USB.31.tags": 921590267, - "io.in.USB.31.$mute": 107223636, - "io.in.USB.32": 2866898924, - "io.in.USB.32.mode": 705728523, - "io.in.USB.32.mute": 548380104, - "io.in.USB.32.pol": 2451884945, - "io.in.USB.32.col": 1312187904, - "io.in.USB.32.name": 2871908767, - "io.in.USB.32.icon": 1463044048, - "io.in.USB.32.tags": 1515601405, - "io.in.USB.32.$mute": 1144977790, - "io.in.USB.33": 3437968742, - "io.in.USB.33.mode": 2217378192, - "io.in.USB.33.mute": 1966706483, - "io.in.USB.33.pol": 2149272364, - "io.in.USB.33.col": 3293188293, - "io.in.USB.33.name": 1188527189, - "io.in.USB.33.icon": 1389733533, - "io.in.USB.33.tags": 761533358, - "io.in.USB.33.$mute": 1723473119, - "io.in.USB.34": 2643194035, - "io.in.USB.34.mode": 1692462445, - "io.in.USB.34.mute": 1703501647, - "io.in.USB.34.pol": 197146776, - "io.in.USB.34.col": 1161186793, - "io.in.USB.34.name": 2336705141, - "io.in.USB.34.icon": 3389049641, - "io.in.USB.34.tags": 46288024, - "io.in.USB.34.$mute": 317738207, - "io.in.USB.35": 2528179677, - "io.in.USB.35.mode": 3947592703, - "io.in.USB.35.mute": 2692927068, - "io.in.USB.35.pol": 3984814835, - "io.in.USB.35.col": 2799241314, - "io.in.USB.35.name": 1973478300, - "io.in.USB.35.icon": 1952670805, - "io.in.USB.35.tags": 1424026559, - "io.in.USB.35.$mute": 2701908786, - "io.in.USB.36": 1560395047, - "io.in.USB.36.mode": 3920455545, - "io.in.USB.36.mute": 4065671556, - "io.in.USB.36.pol": 1883476013, - "io.in.USB.36.col": 879949236, - "io.in.USB.36.name": 2423748172, - "io.in.USB.36.icon": 3638552756, - "io.in.USB.36.tags": 3352199305, - "io.in.USB.36.$mute": 2305525414, - "io.in.USB.37": 2275907724, - "io.in.USB.37.mode": 3657682106, - "io.in.USB.37.mute": 3227686484, - "io.in.USB.37.pol": 2596330537, - "io.in.USB.37.col": 3727323608, - "io.in.USB.37.name": 312550020, - "io.in.USB.37.icon": 2530168533, - "io.in.USB.37.tags": 3369167153, - "io.in.USB.37.$mute": 2330035903, - "io.in.USB.38": 1496866777, - "io.in.USB.38.mode": 250542199, - "io.in.USB.38.mute": 735520788, - "io.in.USB.38.pol": 591777214, - "io.in.USB.38.col": 3910580311, - "io.in.USB.38.name": 2604218980, - "io.in.USB.38.icon": 1608670221, - "io.in.USB.38.tags": 1655737991, - "io.in.USB.38.$mute": 1667314426, - "io.in.USB.39": 534319270, - "io.in.USB.39.mode": 1714790667, - "io.in.USB.39.mute": 2298883826, - "io.in.USB.39.pol": 2947729258, - "io.in.USB.39.col": 1765965051, - "io.in.USB.39.name": 639920610, - "io.in.USB.39.icon": 2226527446, - "io.in.USB.39.tags": 495151391, - "io.in.USB.39.$mute": 3587662820, - "io.in.USB.40": 4076318, - "io.in.USB.40.mode": 93540301, - "io.in.USB.40.mute": 3797605779, - "io.in.USB.40.pol": 2711341918, - "io.in.USB.40.col": 3725559287, - "io.in.USB.40.name": 3873260161, - "io.in.USB.40.icon": 3975589190, - "io.in.USB.40.tags": 4115440996, - "io.in.USB.40.$mute": 2045040255, - "io.in.USB.41": 3483625067, - "io.in.USB.41.mode": 2615379297, - "io.in.USB.41.mute": 3515021066, - "io.in.USB.41.pol": 41511209, - "io.in.USB.41.col": 1059270360, - "io.in.USB.41.name": 247521825, - "io.in.USB.41.icon": 3354341230, - "io.in.USB.41.tags": 3266371466, - "io.in.USB.41.$mute": 721531267, - "io.in.USB.42": 2515840432, - "io.in.USB.42.mode": 46667073, - "io.in.USB.42.mute": 812648227, - "io.in.USB.42.pol": 2258523067, - "io.in.USB.42.col": 1243015466, - "io.in.USB.42.name": 3106804353, - "io.in.USB.42.icon": 2894366317, - "io.in.USB.42.tags": 3237595540, - "io.in.USB.42.$mute": 1000945699, - "io.in.USB.43": 836093663, - "io.in.USB.43.mode": 288092051, - "io.in.USB.43.mute": 1546445296, - "io.in.USB.43.pol": 2934197551, - "io.in.USB.43.col": 1790445494, - "io.in.USB.43.name": 3649734248, - "io.in.USB.43.icon": 1012603353, - "io.in.USB.43.tags": 1853459307, - "io.in.USB.43.$mute": 464273910, - "io.in.USB.44": 36081188, - "io.in.USB.44.mode": 2177204461, - "io.in.USB.44.mute": 1797583512, - "io.in.USB.44.pol": 832670233, - "io.in.USB.44.col": 2018755720, - "io.in.USB.44.name": 3741758808, - "io.in.USB.44.icon": 3448046280, - "io.in.USB.44.tags": 3184710917, - "io.in.USB.44.$mute": 3797151194, - "io.in.USB.45": 2026692337, - "io.in.USB.45.mode": 1259198412, - "io.in.USB.45.mute": 2494974542, - "io.in.USB.45.pol": 1406581440, - "io.in.USB.45.col": 433038673, - "io.in.USB.45.name": 3350486246, - "io.in.USB.45.icon": 2838603370, - "io.in.USB.45.tags": 3462884737, - "io.in.USB.45.$mute": 1753064624, - "io.in.USB.46": 445035659, - "io.in.USB.46.mode": 4144695015, - "io.in.USB.46.mute": 4058216772, - "io.in.USB.46.pol": 1447355773, - "io.in.USB.46.col": 2410127300, - "io.in.USB.46.name": 1893809268, - "io.in.USB.46.icon": 659128754, - "io.in.USB.46.tags": 4086590401, - "io.in.USB.46.$mute": 1537823370, - "io.in.USB.47": 4093344749, - "io.in.USB.47.mode": 2719109851, - "io.in.USB.47.mute": 3578388632, - "io.in.USB.47.pol": 1420133366, - "io.in.USB.47.col": 2595671663, - "io.in.USB.47.name": 323472146, - "io.in.USB.47.icon": 1751764512, - "io.in.USB.47.tags": 197369133, - "io.in.USB.47.$mute": 2278840110, - "io.in.USB.48": 1514968319, - "io.in.USB.48.mode": 2247344532, - "io.in.USB.48.mute": 684471158, - "io.in.USB.48.pol": 2182122832, - "io.in.USB.48.col": 999028641, - "io.in.USB.48.name": 1871595249, - "io.in.USB.48.icon": 3093046799, - "io.in.USB.48.tags": 728590058, - "io.in.USB.48.$mute": 2890076557, - "io.in.CRD": 1104777747, - "io.in.CRD.1": 1423031046, - "io.in.CRD.1.mode": 574669959, - "io.in.CRD.1.mute": 455354750, - "io.in.CRD.1.pol": 1580611375, - "io.in.CRD.1.col": 3787483316, - "io.in.CRD.1.name": 2198541439, - "io.in.CRD.1.icon": 915131245, - "io.in.CRD.1.tags": 2386340085, - "io.in.CRD.1.$mute": 790829386, - "io.in.CRD.2": 2183534252, - "io.in.CRD.2.mode": 813832248, - "io.in.CRD.2.mute": 4259850009, - "io.in.CRD.2.pol": 1818790592, - "io.in.CRD.2.col": 243516675, - "io.in.CRD.2.name": 2771978256, - "io.in.CRD.2.icon": 1655359794, - "io.in.CRD.2.tags": 3139327642, - "io.in.CRD.2.$mute": 1056779445, - "io.in.CRD.3": 2990087673, - "io.in.CRD.3.mode": 100118954, - "io.in.CRD.3.mute": 3631549579, - "io.in.CRD.3.pol": 1778623474, - "io.in.CRD.3.col": 3478735745, - "io.in.CRD.3.name": 2393768274, - "io.in.CRD.3.icon": 4255990448, - "io.in.CRD.3.tags": 2774224808, - "io.in.CRD.3.$mute": 2648576308, - "io.in.CRD.4": 4128099298, - "io.in.CRD.4.mode": 3953964292, - "io.in.CRD.4.mute": 1161476621, - "io.in.CRD.4.pol": 2277353396, - "io.in.CRD.4.col": 405690415, - "io.in.CRD.4.name": 1323541756, - "io.in.CRD.4.icon": 1775754270, - "io.in.CRD.4.tags": 3262200166, - "io.in.CRD.4.$mute": 1555122391, - "io.in.CRD.5": 372576829, - "io.in.CRD.5.mode": 567973098, - "io.in.CRD.5.mute": 336714059, - "io.in.CRD.5.pol": 2515558834, - "io.in.CRD.5.col": 1137064769, - "io.in.CRD.5.name": 1561388178, - "io.in.CRD.5.icon": 1867129712, - "io.in.CRD.5.tags": 3342751208, - "io.in.CRD.5.$mute": 365323058, - "io.in.CRD.6": 3489851363, - "io.in.CRD.6.mode": 1079933229, - "io.in.CRD.6.mute": 2609280164, - "io.in.CRD.6.pol": 746318965, - "io.in.CRD.6.col": 1827279886, - "io.in.CRD.6.name": 4086655397, - "io.in.CRD.6.icon": 3223726791, - "io.in.CRD.6.tags": 1751320623, - "io.in.CRD.6.$mute": 653110847, - "io.in.CRD.7": 2614796, - "io.in.CRD.7.mode": 95302127, - "io.in.CRD.7.mute": 2872839238, - "io.in.CRD.7.pol": 431783607, - "io.in.CRD.7.col": 3861892700, - "io.in.CRD.7.name": 1424302487, - "io.in.CRD.7.icon": 2413226613, - "io.in.CRD.7.tags": 3899804909, - "io.in.CRD.7.$mute": 1516534423, - "io.in.CRD.8": 1140780377, - "io.in.CRD.8.mode": 1539172478, - "io.in.CRD.8.mute": 2317833607, - "io.in.CRD.8.pol": 1202282030, - "io.in.CRD.8.col": 2444464085, - "io.in.CRD.8.name": 587741430, - "io.in.CRD.8.icon": 3851351908, - "io.in.CRD.8.tags": 2365162060, - "io.in.CRD.8.$mute": 3264132368, - "io.in.CRD.9": 1369677263, - "io.in.CRD.9.mode": 1272128282, - "io.in.CRD.9.mute": 437537947, - "io.in.CRD.9.pol": 3622039010, - "io.in.CRD.9.col": 566800945, - "io.in.CRD.9.name": 320697122, - "io.in.CRD.9.icon": 4115769984, - "io.in.CRD.9.tags": 2637619128, - "io.in.CRD.9.$mute": 4276628168, - "io.in.CRD.10": 1450494304, - "io.in.CRD.10.mode": 473053981, - "io.in.CRD.10.mute": 1107963363, - "io.in.CRD.10.pol": 1201416875, - "io.in.CRD.10.col": 197726298, - "io.in.CRD.10.name": 2408334130, - "io.in.CRD.10.icon": 3743593210, - "io.in.CRD.10.tags": 965449470, - "io.in.CRD.10.$mute": 1005799023, - "io.in.CRD.11": 605638855, - "io.in.CRD.11.mode": 18269185, - "io.in.CRD.11.mute": 1861702088, - "io.in.CRD.11.pol": 2275367410, - "io.in.CRD.11.col": 1090981699, - "io.in.CRD.11.name": 4284058957, - "io.in.CRD.11.icon": 527656958, - "io.in.CRD.11.tags": 2264942134, - "io.in.CRD.11.$mute": 13128931, - "io.in.CRD.12": 805606924, - "io.in.CRD.12.mode": 4114669852, - "io.in.CRD.12.mute": 2007585442, - "io.in.CRD.12.pol": 2159045965, - "io.in.CRD.12.col": 1027254228, - "io.in.CRD.12.name": 2527815010, - "io.in.CRD.12.icon": 1380189551, - "io.in.CRD.12.tags": 1904903791, - "io.in.CRD.12.$mute": 537852448, - "io.in.CRD.13": 1608054099, - "io.in.CRD.13.mode": 2033572956, - "io.in.CRD.13.mute": 604384767, - "io.in.CRD.13.pol": 3980136298, - "io.in.CRD.13.col": 2804577531, - "io.in.CRD.13.name": 2703508287, - "io.in.CRD.13.icon": 162923623, - "io.in.CRD.13.tags": 2558741712, - "io.in.CRD.13.$mute": 2060942283, - "io.in.CRD.14": 2415928166, - "io.in.CRD.14.mode": 465654072, - "io.in.CRD.14.mute": 3710476155, - "io.in.CRD.14.pol": 1465585997, - "io.in.CRD.14.col": 336210900, - "io.in.CRD.14.name": 892040237, - "io.in.CRD.14.icon": 1757669221, - "io.in.CRD.14.tags": 3943322118, - "io.in.CRD.14.$mute": 93279095, - "io.in.CRD.15": 3553970861, - "io.in.CRD.15.mode": 2927897352, - "io.in.CRD.15.mute": 4040472669, - "io.in.CRD.15.pol": 4151154671, - "io.in.CRD.15.col": 3179209334, - "io.in.CRD.15.name": 4157756189, - "io.in.CRD.15.icon": 1956835659, - "io.in.CRD.15.tags": 4285598752, - "io.in.CRD.15.$mute": 2068089233, - "io.in.CRD.16": 2378899495, - "io.in.CRD.16.mode": 2572809733, - "io.in.CRD.16.mute": 1910637648, - "io.in.CRD.16.pol": 2036581024, - "io.in.CRD.16.col": 3012745265, - "io.in.CRD.16.name": 1142943552, - "io.in.CRD.16.icon": 3933083520, - "io.in.CRD.16.tags": 2853933645, - "io.in.CRD.16.$mute": 2834925474, - "io.in.CRD.17": 2876401004, - "io.in.CRD.17.mode": 696138253, - "io.in.CRD.17.mute": 538339286, - "io.in.CRD.17.pol": 4078226059, - "io.in.CRD.17.col": 759588154, - "io.in.CRD.17.name": 2868391157, - "io.in.CRD.17.icon": 1428060586, - "io.in.CRD.17.tags": 1525671563, - "io.in.CRD.17.$mute": 1135531204, - "io.in.CRD.18": 2069546163, - "io.in.CRD.18.mode": 296971325, - "io.in.CRD.18.mute": 2900647455, - "io.in.CRD.18.pol": 2420111546, - "io.in.CRD.18.col": 3384173323, - "io.in.CRD.18.name": 2336670277, - "io.in.CRD.18.icon": 1873290873, - "io.in.CRD.18.tags": 2293848008, - "io.in.CRD.18.$mute": 3764735951, - "io.in.CRD.19": 3207721030, - "io.in.CRD.19.mode": 192226659, - "io.in.CRD.19.mute": 1049433998, - "io.in.CRD.19.pol": 1263469283, - "io.in.CRD.19.col": 89528466, - "io.in.CRD.19.name": 3417264760, - "io.in.CRD.19.icon": 3827385192, - "io.in.CRD.19.tags": 2011878827, - "io.in.CRD.19.$mute": 1808143569, - "io.in.CRD.20": 2237055294, - "io.in.CRD.20.mode": 1118428531, - "io.in.CRD.20.mute": 931843985, - "io.in.CRD.20.pol": 214441343, - "io.in.CRD.20.col": 1189294790, - "io.in.CRD.20.name": 2586612538, - "io.in.CRD.20.icon": 2691479492, - "io.in.CRD.20.tags": 1158621415, - "io.in.CRD.20.$mute": 33193622, - "io.in.CRD.21": 3375210277, - "io.in.CRD.21.mode": 1638630673, - "io.in.CRD.21.mute": 1159394652, - "io.in.CRD.21.pol": 3674384308, - "io.in.CRD.21.col": 2712924717, - "io.in.CRD.21.name": 1492947252, - "io.in.CRD.21.icon": 1311129420, - "io.in.CRD.21.tags": 3707813809, - "io.in.CRD.21.$mute": 2739589102, - "io.in.CRD.22": 4182910584, - "io.in.CRD.22.mode": 3229194350, - "io.in.CRD.22.mute": 3877291527, - "io.in.CRD.22.pol": 444688895, - "io.in.CRD.22.col": 1461302342, - "io.in.CRD.22.name": 349997348, - "io.in.CRD.22.icon": 3613175393, - "io.in.CRD.22.tags": 1493141632, - "io.in.CRD.22.$mute": 1172998814, - "io.in.CRD.23": 647320095, - "io.in.CRD.23.mode": 2692650230, - "io.in.CRD.23.mute": 3478110511, - "io.in.CRD.23.pol": 104618215, - "io.in.CRD.23.col": 3266317902, - "io.in.CRD.23.name": 3756874725, - "io.in.CRD.23.icon": 4258658050, - "io.in.CRD.23.tags": 1739068792, - "io.in.CRD.23.$mute": 566199195, - "io.in.CRD.24": 2730078617, - "io.in.CRD.24.mode": 2608693792, - "io.in.CRD.24.mute": 3732198421, - "io.in.CRD.24.pol": 1932387918, - "io.in.CRD.24.col": 746488039, - "io.in.CRD.24.name": 418582939, - "io.in.CRD.24.icon": 2804730876, - "io.in.CRD.24.tags": 1282856974, - "io.in.CRD.24.$mute": 1298089433, - "io.in.CRD.25": 43054763, - "io.in.CRD.25.mode": 2112814392, - "io.in.CRD.25.mute": 1879003021, - "io.in.CRD.25.pol": 3975211623, - "io.in.CRD.25.col": 2835064014, - "io.in.CRD.25.name": 595419770, - "io.in.CRD.25.icon": 3110462459, - "io.in.CRD.25.tags": 1761111095, - "io.in.CRD.25.$mute": 3738130876, - "io.in.CRD.26": 850755070, - "io.in.CRD.26.mode": 2629539864, - "io.in.CRD.26.mute": 1949509274, - "io.in.CRD.26.pol": 409971827, - "io.in.CRD.26.col": 3689637602, - "io.in.CRD.26.name": 2133943213, - "io.in.CRD.26.icon": 1492333971, - "io.in.CRD.26.tags": 3929052086, - "io.in.CRD.26.$mute": 3642492737, - "io.in.CRD.27": 1988930536, - "io.in.CRD.27.mode": 3351031195, - "io.in.CRD.27.mute": 3994361688, - "io.in.CRD.27.pol": 2191988472, - "io.in.CRD.27.col": 1219755081, - "io.in.CRD.27.name": 1244869039, - "io.in.CRD.27.icon": 1117579104, - "io.in.CRD.27.tags": 1717991952, - "io.in.CRD.27.$mute": 1350344686, - "io.in.CRD.28": 2754718543, - "io.in.CRD.28.mode": 2468452703, - "io.in.CRD.28.mute": 1223224189, - "io.in.CRD.28.pol": 1651157443, - "io.in.CRD.28.col": 686931826, - "io.in.CRD.28.name": 1363879415, - "io.in.CRD.28.icon": 2171454404, - "io.in.CRD.28.tags": 3570320840, - "io.in.CRD.28.$mute": 2463247325, - "io.in.CRD.29": 874306498, - "io.in.CRD.29.mode": 1280746301, - "io.in.CRD.29.mute": 515347743, - "io.in.CRD.29.pol": 1354838002, - "io.in.CRD.29.col": 379839811, - "io.in.CRD.29.name": 714713438, - "io.in.CRD.29.icon": 724783274, - "io.in.CRD.29.tags": 2529177001, - "io.in.CRD.29.$mute": 2793988938, - "io.in.CRD.30": 233899959, - "io.in.CRD.30.mode": 2808628092, - "io.in.CRD.30.mute": 533713083, - "io.in.CRD.30.pol": 2791142075, - "io.in.CRD.30.col": 1650010154, - "io.in.CRD.30.name": 1242434825, - "io.in.CRD.30.icon": 1751418117, - "io.in.CRD.30.tags": 3172608188, - "io.in.CRD.30.$mute": 1325975339, - "io.in.CRD.31": 1041794545, - "io.in.CRD.31.mode": 1718536504, - "io.in.CRD.31.mute": 2308946874, - "io.in.CRD.31.pol": 4151743410, - "io.in.CRD.31.col": 2968504579, - "io.in.CRD.31.name": 102841082, - "io.in.CRD.31.icon": 3449493302, - "io.in.CRD.31.tags": 3843581429, - "io.in.CRD.31.$mute": 1981853244, - "io.in.CRD.32": 1844251972, - "io.in.CRD.32.mode": 99001815, - "io.in.CRD.32.mute": 391492418, - "io.in.CRD.32.pol": 573417100, - "io.in.CRD.32.col": 3862400037, - "io.in.CRD.32.name": 949219588, - "io.in.CRD.32.icon": 1826696604, - "io.in.CRD.32.tags": 882374384, - "io.in.CRD.32.$mute": 1216737541, - "io.in.CRD.33": 400771517, - "io.in.CRD.33.mode": 6078769, - "io.in.CRD.33.mute": 4007382803, - "io.in.CRD.33.pol": 941040241, - "io.in.CRD.33.col": 2073384928, - "io.in.CRD.33.name": 2079964276, - "io.in.CRD.33.icon": 315622538, - "io.in.CRD.33.tags": 665449761, - "io.in.CRD.33.$mute": 4005226728, - "io.in.CRD.34": 1544169712, - "io.in.CRD.34.mode": 1588770276, - "io.in.CRD.34.mute": 2136695750, - "io.in.CRD.34.pol": 345387208, - "io.in.CRD.34.col": 1477383769, - "io.in.CRD.34.name": 1279076814, - "io.in.CRD.34.icon": 2664862594, - "io.in.CRD.34.tags": 1879081, - "io.in.CRD.34.$mute": 4263669048, - "io.in.CRD.35": 2306004762, - "io.in.CRD.35.mode": 1455823818, - "io.in.CRD.35.mute": 583929507, - "io.in.CRD.35.pol": 2552143819, - "io.in.CRD.35.col": 3565992570, - "io.in.CRD.35.name": 2786054801, - "io.in.CRD.35.icon": 358006867, - "io.in.CRD.35.tags": 2578969300, - "io.in.CRD.35.$mute": 4139176495, - "io.in.CRD.36": 3108616145, - "io.in.CRD.36.mode": 3044559706, - "io.in.CRD.36.mute": 3290438772, - "io.in.CRD.36.pol": 1951064560, - "io.in.CRD.36.col": 807107649, - "io.in.CRD.36.name": 4058143041, - "io.in.CRD.36.icon": 2119173229, - "io.in.CRD.36.tags": 909729319, - "io.in.CRD.36.$mute": 1760003333, - "io.in.CRD.37": 1970159396, - "io.in.CRD.37.mode": 1467258513, - "io.in.CRD.37.mute": 2713952988, - "io.in.CRD.37.pol": 2667681628, - "io.in.CRD.37.col": 3853745397, - "io.in.CRD.37.name": 3655730868, - "io.in.CRD.37.icon": 4108545740, - "io.in.CRD.37.tags": 3058030129, - "io.in.CRD.37.$mute": 3208876398, - "io.in.CRD.38": 2504360685, - "io.in.CRD.38.mode": 719725111, - "io.in.CRD.38.mute": 2890831316, - "io.in.CRD.38.pol": 3561321333, - "io.in.CRD.38.col": 2421623004, - "io.in.CRD.38.name": 896544886, - "io.in.CRD.38.icon": 1075618892, - "io.in.CRD.38.tags": 352805745, - "io.in.CRD.38.$mute": 1605646522, - "io.in.CRD.39": 3647615840, - "io.in.CRD.39.mode": 2902736757, - "io.in.CRD.39.mute": 3532910011, - "io.in.CRD.39.pol": 559709660, - "io.in.CRD.39.col": 1577633909, - "io.in.CRD.39.name": 3243618970, - "io.in.CRD.39.icon": 504569170, - "io.in.CRD.39.tags": 3967169862, - "io.in.CRD.39.$mute": 2574509495, - "io.in.CRD.40": 2938968182, - "io.in.CRD.40.mode": 1557378713, - "io.in.CRD.40.mute": 4208116900, - "io.in.CRD.40.pol": 709168372, - "io.in.CRD.40.col": 3999277677, - "io.in.CRD.40.name": 248838156, - "io.in.CRD.40.icon": 710808892, - "io.in.CRD.40.tags": 3022576591, - "io.in.CRD.40.$mute": 2991789190, - "io.in.CRD.41": 3436305768, - "io.in.CRD.41.mode": 1814012653, - "io.in.CRD.41.mute": 1832948918, - "io.in.CRD.41.pol": 873958223, - "io.in.CRD.41.col": 4165193942, - "io.in.CRD.41.name": 786354645, - "io.in.CRD.41.icon": 988728330, - "io.in.CRD.41.tags": 2235906606, - "io.in.CRD.41.$mute": 2125509092, - "io.in.CRD.42": 279514290, - "io.in.CRD.42.mode": 4070659293, - "io.in.CRD.42.mute": 4216390335, - "io.in.CRD.42.pol": 2738831748, - "io.in.CRD.42.col": 1723202621, - "io.in.CRD.42.name": 2062458597, - "io.in.CRD.42.icon": 1999142278, - "io.in.CRD.42.tags": 758597288, - "io.in.CRD.42.$mute": 58761391, - "io.in.CRD.43": 3771559305, - "io.in.CRD.43.mode": 4142805579, - "io.in.CRD.43.mute": 618020872, - "io.in.CRD.43.pol": 245632960, - "io.in.CRD.43.col": 3523762769, - "io.in.CRD.43.name": 1733592976, - "io.in.CRD.43.icon": 366058454, - "io.in.CRD.43.tags": 382161021, - "io.in.CRD.43.$mute": 2778557246, - "io.in.CRD.44": 279254236, - "io.in.CRD.44.mode": 446680987, - "io.in.CRD.44.mute": 3545161048, - "io.in.CRD.44.pol": 841122185, - "io.in.CRD.44.col": 3950558264, - "io.in.CRD.44.name": 1659705536, - "io.in.CRD.44.icon": 521859137, - "io.in.CRD.44.tags": 624229667, - "io.in.CRD.44.$mute": 4219335534, - "io.in.CRD.45": 751420131, - "io.in.CRD.45.mode": 312328506, - "io.in.CRD.45.mute": 1556493521, - "io.in.CRD.45.pol": 743300928, - "io.in.CRD.45.col": 3898119377, - "io.in.CRD.45.name": 1298427763, - "io.in.CRD.45.icon": 2338433868, - "io.in.CRD.45.tags": 3637992564, - "io.in.CRD.45.$mute": 875393445, - "io.in.CRD.46": 4271353695, - "io.in.CRD.46.mode": 2409558097, - "io.in.CRD.46.mute": 1244654266, - "io.in.CRD.46.pol": 2767506407, - "io.in.CRD.46.col": 3949433166, - "io.in.CRD.46.name": 374199882, - "io.in.CRD.46.icon": 79043103, - "io.in.CRD.46.tags": 2185780405, - "io.in.CRD.46.$mute": 1100952904, - "io.in.CRD.47": 741006994, - "io.in.CRD.47.mode": 1862217695, - "io.in.CRD.47.mute": 2165219878, - "io.in.CRD.47.pol": 2484289236, - "io.in.CRD.47.col": 3655464013, - "io.in.CRD.47.name": 4050715900, - "io.in.CRD.47.icon": 4186611296, - "io.in.CRD.47.tags": 3031241833, - "io.in.CRD.47.$mute": 1877912792, - "io.in.CRD.48": 1543453929, - "io.in.CRD.48.mode": 1316090191, - "io.in.CRD.48.mute": 2682920556, - "io.in.CRD.48.pol": 17288438, - "io.in.CRD.48.col": 1150596975, - "io.in.CRD.48.name": 1541934235, - "io.in.CRD.48.icon": 344561380, - "io.in.CRD.48.tags": 589530012, - "io.in.CRD.48.$mute": 611585250, - "io.in.CRD.49": 2015773756, - "io.in.CRD.49.mode": 1982713375, - "io.in.CRD.49.mute": 4240235581, - "io.in.CRD.49.pol": 1608948313, - "io.in.CRD.49.col": 2583987400, - "io.in.CRD.49.name": 3149832334, - "io.in.CRD.49.icon": 3307037840, - "io.in.CRD.49.tags": 2608536027, - "io.in.CRD.49.$mute": 3829138962, - "io.in.CRD.50": 1710963028, - "io.in.CRD.50.mode": 1141522860, - "io.in.CRD.50.mute": 1496436879, - "io.in.CRD.50.pol": 2109186486, - "io.in.CRD.50.col": 3249375023, - "io.in.CRD.50.name": 4201627122, - "io.in.CRD.50.icon": 827451447, - "io.in.CRD.50.tags": 4072394653, - "io.in.CRD.50.$mute": 90989904, - "io.in.CRD.51": 4129439931, - "io.in.CRD.51.mode": 2643820461, - "io.in.CRD.51.mute": 4235496882, - "io.in.CRD.51.pol": 3720038041, - "io.in.CRD.51.col": 389090312, - "io.in.CRD.51.name": 3908497592, - "io.in.CRD.51.icon": 2159352598, - "io.in.CRD.51.tags": 2416143061, - "io.in.CRD.51.$mute": 3993219871, - "io.in.CRD.52": 302685902, - "io.in.CRD.52.mode": 3237691593, - "io.in.CRD.52.mute": 2884834123, - "io.in.CRD.52.pol": 3151609864, - "io.in.CRD.52.col": 29457049, - "io.in.CRD.52.name": 1263891909, - "io.in.CRD.52.icon": 621738915, - "io.in.CRD.52.tags": 1053064334, - "io.in.CRD.52.$mute": 3020569499, - "io.in.CRD.53": 1063374325, - "io.in.CRD.53.mode": 361391704, - "io.in.CRD.53.mute": 1487526106, - "io.in.CRD.53.pol": 712250113, - "io.in.CRD.53.col": 3992078512, - "io.in.CRD.53.name": 1965823514, - "io.in.CRD.53.icon": 3729920598, - "io.in.CRD.53.tags": 2511345109, - "io.in.CRD.53.$mute": 1171846556, - "io.in.CRD.54": 2676397130, - "io.in.CRD.54.mode": 269945203, - "io.in.CRD.54.mute": 3941563281, - "io.in.CRD.54.pol": 1103927133, - "io.in.CRD.54.col": 2077142180, - "io.in.CRD.54.name": 3758964643, - "io.in.CRD.54.icon": 918915445, - "io.in.CRD.54.tags": 3682098964, - "io.in.CRD.54.$mute": 795175169, - "io.in.CRD.55": 3814562433, - "io.in.CRD.55.mode": 2593373298, - "io.in.CRD.55.mute": 84192620, - "io.in.CRD.55.pol": 3649637818, - "io.in.CRD.55.col": 2674743307, - "io.in.CRD.55.name": 1206276649, - "io.in.CRD.55.icon": 4098360813, - "io.in.CRD.55.tags": 4095279548, - "io.in.CRD.55.$mute": 3313863906, - "io.in.CRD.56": 1937896980, - "io.in.CRD.56.mode": 333896089, - "io.in.CRD.56.mute": 1597983652, - "io.in.CRD.56.pol": 1287623645, - "io.in.CRD.56.col": 154500644, - "io.in.CRD.56.name": 490571253, - "io.in.CRD.56.icon": 842371090, - "io.in.CRD.56.tags": 4192770024, - "io.in.CRD.56.$mute": 22369931, - "io.in.CRD.57": 2403673470, - "io.in.CRD.57.mode": 1220426554, - "io.in.CRD.57.mute": 913721528, - "io.in.CRD.57.pol": 991961397, - "io.in.CRD.57.col": 4114298524, - "io.in.CRD.57.name": 2474149395, - "io.in.CRD.57.icon": 2797896381, - "io.in.CRD.57.tags": 1201638788, - "io.in.CRD.57.$mute": 93085887, - "io.in.CRD.58": 3169461093, - "io.in.CRD.58.mode": 1760180536, - "io.in.CRD.58.mute": 2457462651, - "io.in.CRD.58.pol": 391800108, - "io.in.CRD.58.col": 1410071237, - "io.in.CRD.58.name": 1586998317, - "io.in.CRD.58.icon": 253038437, - "io.in.CRD.58.tags": 2812553734, - "io.in.CRD.58.$mute": 3086601079, - "io.in.CRD.59": 482406839, - "io.in.CRD.59.mode": 3411822932, - "io.in.CRD.59.mute": 604248883, - "io.in.CRD.59.pol": 3944573253, - "io.in.CRD.59.col": 2761498284, - "io.in.CRD.59.name": 1092759697, - "io.in.CRD.59.icon": 1470011069, - "io.in.CRD.59.tags": 3306531076, - "io.in.CRD.59.$mute": 1226447571, - "io.in.CRD.60": 3336930221, - "io.in.CRD.60.mode": 1031840172, - "io.in.CRD.60.mute": 3957330977, - "io.in.CRD.60.pol": 3553469713, - "io.in.CRD.60.col": 2413750912, - "io.in.CRD.60.name": 4252872889, - "io.in.CRD.60.icon": 730080191, - "io.in.CRD.60.tags": 4159038092, - "io.in.CRD.60.$mute": 2148448213, - "io.in.CRD.61": 2528978743, - "io.in.CRD.61.mode": 3545062462, - "io.in.CRD.61.mute": 3095718649, - "io.in.CRD.61.pol": 973976270, - "io.in.CRD.61.col": 4138256487, - "io.in.CRD.61.name": 4255327471, - "io.in.CRD.61.icon": 2623303895, - "io.in.CRD.61.tags": 1822863554, - "io.in.CRD.61.$mute": 957300473, - "io.in.CRD.62": 3068219449, - "io.in.CRD.62.mode": 373334991, - "io.in.CRD.62.mute": 1696576016, - "io.in.CRD.62.pol": 2271862545, - "io.in.CRD.62.col": 1099068544, - "io.in.CRD.62.name": 2436754747, - "io.in.CRD.62.icon": 398755776, - "io.in.CRD.62.tags": 3508938539, - "io.in.CRD.62.$mute": 3310252909, - "io.in.CRD.63": 4172268979, - "io.in.CRD.63.mode": 1023525025, - "io.in.CRD.63.mute": 1525715587, - "io.in.CRD.63.pol": 1872775812, - "io.in.CRD.63.col": 2836796733, - "io.in.CRD.63.name": 1234073057, - "io.in.CRD.63.icon": 1397268941, - "io.in.CRD.63.tags": 4103537460, - "io.in.CRD.63.$mute": 304159555, - "io.in.CRD.64": 3032654150, - "io.in.CRD.64.mode": 100419559, - "io.in.CRD.64.mute": 1080301650, - "io.in.CRD.64.pol": 3366912069, - "io.in.CRD.64.col": 45487532, - "io.in.CRD.64.name": 3431106900, - "io.in.CRD.64.icon": 3716062572, - "io.in.CRD.64.tags": 1958068327, - "io.in.CRD.64.$mute": 1752827189, - "io.in.MOD": 1039381233, - "io.in.MOD.1": 2964151684, - "io.in.MOD.1.mode": 984226507, - "io.in.MOD.1.mute": 767382378, - "io.in.MOD.1.pol": 4271695291, - "io.in.MOD.1.col": 1523168632, - "io.in.MOD.1.name": 3279186707, - "io.in.MOD.1.icon": 142782833, - "io.in.MOD.1.tags": 2961565289, - "io.in.MOD.1.$mute": 1687001515, - "io.in.MOD.2": 2251060350, - "io.in.MOD.2.mode": 2736629176, - "io.in.MOD.2.mute": 1246697881, - "io.in.MOD.2.pol": 120166464, - "io.in.MOD.2.col": 1999852163, - "io.in.MOD.2.name": 1072166288, - "io.in.MOD.2.icon": 2766617522, - "io.in.MOD.2.tags": 1294027034, - "io.in.MOD.2.$mute": 1561168061, - "io.in.MOD.3": 238380843, - "io.in.MOD.3.mode": 470314784, - "io.in.MOD.3.mute": 350342913, - "io.in.MOD.3.pol": 1475273096, - "io.in.MOD.3.col": 3892185355, - "io.in.MOD.3.name": 2136129192, - "io.in.MOD.3.icon": 977569082, - "io.in.MOD.3.tags": 2449740370, - "io.in.MOD.3.$mute": 2561296050, - "io.in.MOD.4": 3526323968, - "io.in.MOD.4.mode": 4014075785, - "io.in.MOD.4.mute": 4263726984, - "io.in.MOD.4.pol": 2069193273, - "io.in.MOD.4.col": 3277293738, - "io.in.MOD.4.name": 3020701537, - "io.in.MOD.4.icon": 415434115, - "io.in.MOD.4.tags": 3242562283, - "io.in.MOD.4.$mute": 1209991990, - "io.in.MOD.5": 3123622847, - "io.in.MOD.5.mode": 3083929457, - "io.in.MOD.5.mute": 2836981488, - "io.in.MOD.5.pol": 2078888993, - "io.in.MOD.5.col": 3820793298, - "io.in.MOD.5.name": 1124595449, - "io.in.MOD.5.icon": 2387849419, - "io.in.MOD.5.tags": 905274211, - "io.in.MOD.5.$mute": 3091478789, - "io.in.MOD.6": 2886769953, - "io.in.MOD.6.mode": 3174843048, - "io.in.MOD.6.mute": 4004215593, - "io.in.MOD.6.pol": 825167344, - "io.in.MOD.6.col": 3922189683, - "io.in.MOD.6.name": 4168258336, - "io.in.MOD.6.icon": 2473646402, - "io.in.MOD.6.tags": 3956784810, - "io.in.MOD.6.$mute": 1165985981, - "io.in.MOD.7": 2215003422, - "io.in.MOD.7.mode": 1359063909, - "io.in.MOD.7.mute": 2540376796, - "io.in.MOD.7.pol": 350593101, - "io.in.MOD.7.col": 2222412230, - "io.in.MOD.7.name": 3989568237, - "io.in.MOD.7.icon": 2999661823, - "io.in.MOD.7.tags": 1513963415, - "io.in.MOD.7.$mute": 3614481320, - "io.in.MOD.8": 1208301515, - "io.in.MOD.8.mode": 3786463981, - "io.in.MOD.8.mute": 3686195940, - "io.in.MOD.8.pol": 496619701, - "io.in.MOD.8.col": 2702344782, - "io.in.MOD.8.name": 1114098533, - "io.in.MOD.8.icon": 1998324999, - "io.in.MOD.8.tags": 3471642607, - "io.in.MOD.8.$mute": 3162886734, - "io.in.MOD.9": 3447668653, - "io.in.MOD.9.mode": 801871211, - "io.in.MOD.9.mute": 4271483402, - "io.in.MOD.9.pol": 1809778779, - "io.in.MOD.9.col": 231555800, - "io.in.MOD.9.name": 2760017331, - "io.in.MOD.9.icon": 1664699409, - "io.in.MOD.9.tags": 3150960905, - "io.in.MOD.9.$mute": 843681187, - "io.in.MOD.10": 2056191730, - "io.in.MOD.10.mode": 1837953868, - "io.in.MOD.10.mute": 3244647886, - "io.in.MOD.10.pol": 668424568, - "io.in.MOD.10.col": 1842201545, - "io.in.MOD.10.name": 2942511206, - "io.in.MOD.10.icon": 4258041831, - "io.in.MOD.10.tags": 588690945, - "io.in.MOD.10.$mute": 757881904, - "io.in.MOD.11": 586149, - "io.in.MOD.11.mode": 3783466351, - "io.in.MOD.11.mute": 107674422, - "io.in.MOD.11.pol": 3943836488, - "io.in.MOD.11.col": 2762237401, - "io.in.MOD.11.name": 1793921182, - "io.in.MOD.11.icon": 956741290, - "io.in.MOD.11.tags": 3310127371, - "io.in.MOD.11.$mute": 1439840968, - "io.in.MOD.12": 3555342238, - "io.in.MOD.12.mode": 1116621091, - "io.in.MOD.12.mute": 3704485469, - "io.in.MOD.12.pol": 611071948, - "io.in.MOD.12.col": 1614742117, - "io.in.MOD.12.name": 600554227, - "io.in.MOD.12.icon": 3101234820, - "io.in.MOD.12.tags": 2470454374, - "io.in.MOD.12.$mute": 2135811857, - "io.in.MOD.13": 1542017585, - "io.in.MOD.13.mode": 778994919, - "io.in.MOD.13.mute": 1072533797, - "io.in.MOD.13.pol": 2251214028, - "io.in.MOD.13.col": 1120384869, - "io.in.MOD.13.name": 4226534403, - "io.in.MOD.13.icon": 3027871539, - "io.in.MOD.13.tags": 3273655702, - "io.in.MOD.13.$mute": 2221773749, - "io.in.MOD.14": 870210084, - "io.in.MOD.14.mode": 2500197533, - "io.in.MOD.14.mute": 1482066760, - "io.in.MOD.14.pol": 1629580266, - "io.in.MOD.14.col": 2815665787, - "io.in.MOD.14.name": 4132717576, - "io.in.MOD.14.icon": 2972075832, - "io.in.MOD.14.tags": 3539155029, - "io.in.MOD.14.$mute": 3234322282, - "io.in.MOD.15": 4158188767, - "io.in.MOD.15.mode": 2362823547, - "io.in.MOD.15.mute": 1281803576, - "io.in.MOD.15.pol": 3743729258, - "io.in.MOD.15.col": 2725743611, - "io.in.MOD.15.name": 411321632, - "io.in.MOD.15.icon": 286652961, - "io.in.MOD.15.tags": 2166570563, - "io.in.MOD.15.$mute": 1043825038, - "io.in.MOD.16": 3923952197, - "io.in.MOD.16.mode": 1288982235, - "io.in.MOD.16.mute": 3531849478, - "io.in.MOD.16.pol": 2349765681, - "io.in.MOD.16.col": 3365396128, - "io.in.MOD.16.name": 4100072288, - "io.in.MOD.16.icon": 3422046048, - "io.in.MOD.16.tags": 1772238892, - "io.in.MOD.16.$mute": 1477602777, - "io.in.MOD.17": 3479308350, - "io.in.MOD.17.mode": 2815058479, - "io.in.MOD.17.mute": 1433014349, - "io.in.MOD.17.pol": 6834433, - "io.in.MOD.17.col": 1149439664, - "io.in.MOD.17.name": 2724976158, - "io.in.MOD.17.icon": 873592352, - "io.in.MOD.17.tags": 242242763, - "io.in.MOD.17.$mute": 110673026, - "io.in.MOD.18": 1464017617, - "io.in.MOD.18.mode": 2937984390, - "io.in.MOD.18.mute": 219557664, - "io.in.MOD.18.pol": 2020264501, - "io.in.MOD.18.col": 3023810460, - "io.in.MOD.18.name": 2056785877, - "io.in.MOD.18.icon": 1130691529, - "io.in.MOD.18.tags": 1048557051, - "io.in.MOD.18.$mute": 4281100337, - "io.in.MOD.19": 457319876, - "io.in.MOD.19.mode": 4214085301, - "io.in.MOD.19.mute": 3982918940, - "io.in.MOD.19.pol": 461210805, - "io.in.MOD.19.col": 1424473884, - "io.in.MOD.19.name": 2093500998, - "io.in.MOD.19.icon": 1125412482, - "io.in.MOD.19.tags": 1211091042, - "io.in.MOD.19.$mute": 1591495671, - "io.in.MOD.20": 2302441068, - "io.in.MOD.20.mode": 1588543393, - "io.in.MOD.20.mute": 974572874, - "io.in.MOD.20.pol": 3161776062, - "io.in.MOD.20.col": 2032564823, - "io.in.MOD.20.name": 2381897825, - "io.in.MOD.20.icon": 488809006, - "io.in.MOD.20.tags": 1374737863, - "io.in.MOD.20.$mute": 245428216, - "io.in.MOD.21": 1295089223, - "io.in.MOD.21.mode": 1836927435, - "io.in.MOD.21.mute": 1193596790, - "io.in.MOD.21.pol": 2542770723, - "io.in.MOD.21.col": 1578565586, - "io.in.MOD.21.name": 421991051, - "io.in.MOD.21.icon": 1427737168, - "io.in.MOD.21.tags": 1144185827, - "io.in.MOD.21.$mute": 3893212713, - "io.in.MOD.22": 3576721658, - "io.in.MOD.22.mode": 2514295684, - "io.in.MOD.22.mute": 264587622, - "io.in.MOD.22.pol": 999471907, - "io.in.MOD.22.col": 4110975186, - "io.in.MOD.22.name": 138894561, - "io.in.MOD.22.icon": 1631145279, - "io.in.MOD.22.tags": 2685575817, - "io.in.MOD.22.$mute": 2897092760, - "io.in.MOD.23": 2864280557, - "io.in.MOD.23.mode": 1297954491, - "io.in.MOD.23.mute": 2895430776, - "io.in.MOD.23.pol": 2577754958, - "io.in.MOD.23.col": 1438057959, - "io.in.MOD.23.name": 118686066, - "io.in.MOD.23.icon": 726444032, - "io.in.MOD.23.tags": 1045872205, - "io.in.MOD.23.$mute": 2021579470, - "io.in.MOD.24": 515083915, - "io.in.MOD.24.mode": 4213910687, - "io.in.MOD.24.mute": 4104331004, - "io.in.MOD.24.pol": 302311411, - "io.in.MOD.24.col": 1474796898, - "io.in.MOD.24.name": 1908476348, - "io.in.MOD.24.icon": 679685802, - "io.in.MOD.24.tags": 4039168041, - "io.in.MOD.24.$mute": 1512840082, - "io.in.MOD.25": 112383097, - "io.in.MOD.25.mode": 3574275187, - "io.in.MOD.25.mute": 2596474031, - "io.in.MOD.25.pol": 2579606771, - "io.in.MOD.25.col": 3554337378, - "io.in.MOD.25.name": 2623591100, - "io.in.MOD.25.icon": 1218690153, - "io.in.MOD.25.tags": 4079023064, - "io.in.MOD.25.$mute": 2773207574, - "io.in.MOD.26": 2393360172, - "io.in.MOD.26.mode": 1558697918, - "io.in.MOD.26.mute": 971418263, - "io.in.MOD.26.pol": 1845289417, - "io.in.MOD.26.col": 2863560568, - "io.in.MOD.26.name": 2340722260, - "io.in.MOD.26.icon": 515080553, - "io.in.MOD.26.tags": 1325218626, - "io.in.MOD.26.$mute": 241564275, - "io.in.MOD.27": 1386663690, - "io.in.MOD.27.mode": 2688000957, - "io.in.MOD.27.mute": 381096966, - "io.in.MOD.27.pol": 152332361, - "io.in.MOD.27.col": 1335284472, - "io.in.MOD.27.name": 2058672126, - "io.in.MOD.27.icon": 1180892568, - "io.in.MOD.27.tags": 4104999291, - "io.in.MOD.27.$mute": 362143956, - "io.in.MOD.28": 673286589, - "io.in.MOD.28.mode": 4226671665, - "io.in.MOD.28.mute": 4043093523, - "io.in.MOD.28.pol": 1343691865, - "io.in.MOD.28.col": 328554184, - "io.in.MOD.28.name": 1954476916, - "io.in.MOD.28.icon": 4166869898, - "io.in.MOD.28.tags": 884684321, - "io.in.MOD.28.$mute": 763101672, - "io.in.MOD.29": 2952958352, - "io.in.MOD.29.mode": 1329683163, - "io.in.MOD.29.mute": 3114871938, - "io.in.MOD.29.pol": 3207740749, - "io.in.MOD.29.col": 4169324500, - "io.in.MOD.29.name": 1487639008, - "io.in.MOD.29.icon": 1682168444, - "io.in.MOD.29.tags": 1334487917, - "io.in.MOD.29.$mute": 2718900820, - "io.in.MOD.30": 167853365, - "io.in.MOD.30.mode": 4288215395, - "io.in.MOD.30.mute": 1834067841, - "io.in.MOD.30.pol": 3226218253, - "io.in.MOD.30.col": 2221566356, - "io.in.MOD.30.name": 1630749799, - "io.in.MOD.30.icon": 4285259391, - "io.in.MOD.30.tags": 2212682682, - "io.in.MOD.30.$mute": 426181841, - "io.in.MOD.31": 3791054099, - "io.in.MOD.31.mode": 3187169253, - "io.in.MOD.31.mute": 4234168880, - "io.in.MOD.31.pol": 593776443, - "io.in.MOD.31.col": 1565661610, - "io.in.MOD.31.name": 3544059670, - "io.in.MOD.31.icon": 3688117214, - "io.in.MOD.31.tags": 1787429779, - "io.in.MOD.31.$mute": 2096695234, - "io.in.MOD.32": 1777391558, - "io.in.MOD.32.mode": 4007171245, - "io.in.MOD.32.mute": 3430934004, - "io.in.MOD.32.pol": 3628000315, - "io.in.MOD.32.col": 2485538474, - "io.in.MOD.32.name": 4267571918, - "io.in.MOD.32.icon": 3723794458, - "io.in.MOD.32.tags": 2406095609, - "io.in.MOD.32.$mute": 2182675103, - "io.in.MOD.33": 3153783631, - "io.in.MOD.33.mode": 2364704863, - "io.in.MOD.33.mute": 1198119549, - "io.in.MOD.33.pol": 2590679286, - "io.in.MOD.33.col": 3773938543, - "io.in.MOD.33.name": 1248345335, - "io.in.MOD.33.icon": 1963565764, - "io.in.MOD.33.tags": 3735262920, - "io.in.MOD.33.$mute": 2448677085, - "io.in.MOD.34": 2147086818, - "io.in.MOD.34.mode": 818018694, - "io.in.MOD.34.mute": 2222585661, - "io.in.MOD.34.pol": 1257069430, - "io.in.MOD.34.col": 74957039, - "io.in.MOD.34.name": 4036506727, - "io.in.MOD.34.icon": 1022976712, - "io.in.MOD.34.tags": 1624487112, - "io.in.MOD.34.$mute": 1801729713, - "io.in.MOD.35": 89853400, - "io.in.MOD.35.mode": 2964045151, - "io.in.MOD.35.mute": 1032604604, - "io.in.MOD.35.pol": 1652886906, - "io.in.MOD.35.col": 2782282443, - "io.in.MOD.35.name": 2418948348, - "io.in.MOD.35.icon": 1450206498, - "io.in.MOD.35.tags": 2937152223, - "io.in.MOD.35.$mute": 1878907602, - "io.in.MOD.36": 3713668531, - "io.in.MOD.36.mode": 1942718945, - "io.in.MOD.36.mute": 1953281987, - "io.in.MOD.36.pol": 295723130, - "io.in.MOD.36.col": 1259742667, - "io.in.MOD.36.name": 1385069857, - "io.in.MOD.36.icon": 1792019341, - "io.in.MOD.36.tags": 3853584500, - "io.in.MOD.36.$mute": 64863875, - "io.in.MOD.37": 1364461670, - "io.in.MOD.37.mode": 1897515612, - "io.in.MOD.37.mute": 1249531903, - "io.in.MOD.37.pol": 3225086207, - "io.in.MOD.37.col": 2221560646, - "io.in.MOD.37.name": 2302438857, - "io.in.MOD.37.icon": 2017255033, - "io.in.MOD.37.tags": 77556914, - "io.in.MOD.37.$mute": 3293205579, - "io.in.MOD.38": 961105183, - "io.in.MOD.38.mode": 2608330930, - "io.in.MOD.38.mute": 3525314251, - "io.in.MOD.38.pol": 2052870640, - "io.in.MOD.38.col": 1045433409, - "io.in.MOD.38.name": 3621929865, - "io.in.MOD.38.icon": 1146101886, - "io.in.MOD.38.tags": 1882816460, - "io.in.MOD.38.$mute": 518459943, - "io.in.MOD.39": 4249375986, - "io.in.MOD.39.mode": 726124180, - "io.in.MOD.39.mute": 2096133238, - "io.in.MOD.39.pol": 706194544, - "io.in.MOD.39.col": 3817697729, - "io.in.MOD.39.name": 1511163902, - "io.in.MOD.39.icon": 2151653135, - "io.in.MOD.39.tags": 3999878713, - "io.in.MOD.39.$mute": 1549234312, - "io.in.MOD.40": 189883028, - "io.in.MOD.40.mode": 2347880559, - "io.in.MOD.40.mute": 1638028854, - "io.in.MOD.40.pol": 2425327295, - "io.in.MOD.40.col": 1281739014, - "io.in.MOD.40.name": 1166318311, - "io.in.MOD.40.icon": 157617840, - "io.in.MOD.40.tags": 7830218, - "io.in.MOD.40.$mute": 623034701, - "io.in.MOD.41": 4039878794, - "io.in.MOD.41.mode": 3341664247, - "io.in.MOD.41.mute": 3784717204, - "io.in.MOD.41.pol": 616867264, - "io.in.MOD.41.col": 1747349585, - "io.in.MOD.41.name": 3214155716, - "io.in.MOD.41.icon": 496087426, - "io.in.MOD.41.tags": 3464969841, - "io.in.MOD.41.$mute": 2069718010, - "io.in.MOD.42": 3033187104, - "io.in.MOD.42.mode": 2382212398, - "io.in.MOD.42.mute": 4167442092, - "io.in.MOD.42.pol": 2340700224, - "io.in.MOD.42.col": 3358643665, - "io.in.MOD.42.name": 344228804, - "io.in.MOD.42.icon": 629270297, - "io.in.MOD.42.tags": 213358753, - "io.in.MOD.42.$mute": 1624050910, - "io.in.MOD.43": 1019202331, - "io.in.MOD.43.mode": 785744218, - "io.in.MOD.43.mute": 1090310899, - "io.in.MOD.43.pol": 1721685262, - "io.in.MOD.43.col": 2903345831, - "io.in.MOD.43.name": 1283112289, - "io.in.MOD.43.icon": 892660515, - "io.in.MOD.43.tags": 3247364740, - "io.in.MOD.43.$mute": 1301765023, - "io.in.MOD.44": 348085710, - "io.in.MOD.44.mode": 3228896405, - "io.in.MOD.44.mute": 2858236695, - "io.in.MOD.44.pol": 3296314382, - "io.in.MOD.44.col": 132217255, - "io.in.MOD.44.name": 1188767801, - "io.in.MOD.44.icon": 840217087, - "io.in.MOD.44.tags": 976155394, - "io.in.MOD.44.$mute": 2985752599, - "io.in.MOD.45": 2293851553, - "io.in.MOD.45.mode": 3729075748, - "io.in.MOD.45.mute": 1722596358, - "io.in.MOD.45.pol": 2476015758, - "io.in.MOD.45.col": 1294048039, - "io.in.MOD.45.name": 3939170670, - "io.in.MOD.45.icon": 1359261047, - "io.in.MOD.45.tags": 2233391547, - "io.in.MOD.45.$mute": 585586936, - "io.in.MOD.46": 3667622189, - "io.in.MOD.46.mode": 2953892054, - "io.in.MOD.46.mute": 3940638607, - "io.in.MOD.46.pol": 1438489954, - "io.in.MOD.46.col": 2582570995, - "io.in.MOD.46.name": 434064663, - "io.in.MOD.46.icon": 1917407009, - "io.in.MOD.46.tags": 10098826, - "io.in.MOD.46.$mute": 2125649467, - "io.in.MOD.47": 2955187136, - "io.in.MOD.47.mode": 256729629, - "io.in.MOD.47.mute": 2040321023, - "io.in.MOD.47.pol": 2109750617, - "io.in.MOD.47.col": 967104456, - "io.in.MOD.47.name": 2560550974, - "io.in.MOD.47.icon": 2759688586, - "io.in.MOD.47.tags": 2426078921, - "io.in.MOD.47.$mute": 3793450991, - "io.in.MOD.48": 941857723, - "io.in.MOD.48.mode": 2871882761, - "io.in.MOD.48.mute": 3250382475, - "io.in.MOD.48.pol": 416993881, - "io.in.MOD.48.col": 1590791368, - "io.in.MOD.48.name": 2831080092, - "io.in.MOD.48.icon": 3021798786, - "io.in.MOD.48.tags": 1081804969, - "io.in.MOD.48.$mute": 3476805211, - "io.in.MOD.49": 4229467758, - "io.in.MOD.49.mode": 2083965185, - "io.in.MOD.49.mute": 3990338215, - "io.in.MOD.49.pol": 4051053810, - "io.in.MOD.49.col": 3089429059, - "io.in.MOD.49.name": 2847485380, - "io.in.MOD.49.icon": 1817381646, - "io.in.MOD.49.tags": 2191551719, - "io.in.MOD.49.$mute": 1286121368, - "io.in.MOD.50": 1779625782, - "io.in.MOD.50.mode": 2921146206, - "io.in.MOD.50.mute": 2362273158, - "io.in.MOD.50.pol": 2634867511, - "io.in.MOD.50.col": 3819457950, - "io.in.MOD.50.name": 1068487183, - "io.in.MOD.50.icon": 501743863, - "io.in.MOD.50.tags": 3412474274, - "io.in.MOD.50.$mute": 3270326873, - "io.in.MOD.51": 4061258217, - "io.in.MOD.51.mode": 1903992131, - "io.in.MOD.51.mute": 2238550240, - "io.in.MOD.51.pol": 1088947255, - "io.in.MOD.51.col": 4201926302, - "io.in.MOD.51.name": 3822044199, - "io.in.MOD.51.icon": 2542258440, - "io.in.MOD.51.tags": 2621852040, - "io.in.MOD.51.$mute": 4153252422, - "io.in.MOD.52": 3052595676, - "io.in.MOD.52.mode": 3729303375, - "io.in.MOD.52.mute": 3975149676, - "io.in.MOD.52.pol": 2617425851, - "io.in.MOD.52.col": 3747108138, - "io.in.MOD.52.name": 3836632492, - "io.in.MOD.52.icon": 2516884517, - "io.in.MOD.52.tags": 2641999727, - "io.in.MOD.52.$mute": 1344845922, - "io.in.MOD.53": 997327991, - "io.in.MOD.53.mode": 3133026057, - "io.in.MOD.53.mute": 769023316, - "io.in.MOD.53.pol": 130371723, - "io.in.MOD.53.col": 1105267514, - "io.in.MOD.53.name": 1547182460, - "io.in.MOD.53.icon": 2732486060, - "io.in.MOD.53.tags": 3517976735, - "io.in.MOD.53.$mute": 1064240342, - "io.in.MOD.54": 594299176, - "io.in.MOD.54.mode": 3852242198, - "io.in.MOD.54.mute": 2281413583, - "io.in.MOD.54.pol": 2545874332, - "io.in.MOD.54.col": 1542205493, - "io.in.MOD.54.name": 1792913724, - "io.in.MOD.54.icon": 293298401, - "io.in.MOD.54.tags": 2064519449, - "io.in.MOD.54.$mute": 378250363, - "io.in.MOD.55": 3881909507, - "io.in.MOD.55.mode": 2154461512, - "io.in.MOD.55.mute": 2546608014, - "io.in.MOD.55.pol": 3227144193, - "io.in.MOD.55.col": 2220627376, - "io.in.MOD.55.name": 281789555, - "io.in.MOD.55.icon": 494034619, - "io.in.MOD.55.tags": 2819644086, - "io.in.MOD.55.$mute": 3153626343, - "io.in.MOD.56": 1868578806, - "io.in.MOD.56.mode": 2974473451, - "io.in.MOD.56.mute": 2414471855, - "io.in.MOD.56.pol": 1597302017, - "io.in.MOD.56.col": 623921840, - "io.in.MOD.56.name": 1676410466, - "io.in.MOD.56.icon": 361920174, - "io.in.MOD.56.tags": 3438267933, - "io.in.MOD.56.$mute": 3239635076, - "io.in.MOD.57": 862542508, - "io.in.MOD.57.mode": 1960608072, - "io.in.MOD.57.mute": 4173041309, - "io.in.MOD.57.pol": 2171366300, - "io.in.MOD.57.col": 1199482421, - "io.in.MOD.57.name": 387825482, - "io.in.MOD.57.icon": 3510344459, - "io.in.MOD.57.tags": 4006480992, - "io.in.MOD.57.$mute": 2689305553, - "io.in.MOD.58": 3101950599, - "io.in.MOD.58.mode": 773363730, - "io.in.MOD.58.mute": 665298825, - "io.in.MOD.58.pol": 3297223377, - "io.in.MOD.58.col": 2154741056, - "io.in.MOD.58.name": 715504204, - "io.in.MOD.58.icon": 1445746189, - "io.in.MOD.58.tags": 1029581212, - "io.in.MOD.58.$mute": 830905026, - "io.in.MOD.59": 2699203381, - "io.in.MOD.59.mode": 2818103915, - "io.in.MOD.59.mute": 3452414953, - "io.in.MOD.59.pol": 3180095441, - "io.in.MOD.59.col": 4197057088, - "io.in.MOD.59.name": 675680415, - "io.in.MOD.59.icon": 3637270919, - "io.in.MOD.59.tags": 1606298322, - "io.in.MOD.59.$mute": 2091294729, - "io.in.MOD.60": 3940006367, - "io.in.MOD.60.mode": 2500329615, - "io.in.MOD.60.mute": 1807241644, - "io.in.MOD.60.pol": 2919551887, - "io.in.MOD.60.col": 4049051158, - "io.in.MOD.60.name": 496426732, - "io.in.MOD.60.icon": 340197861, - "io.in.MOD.60.tags": 2102224303, - "io.in.MOD.60.$mute": 1899507618, - "io.in.MOD.61": 1926711477, - "io.in.MOD.61.mode": 4167545165, - "io.in.MOD.61.mute": 1733877551, - "io.in.MOD.61.pol": 3099341967, - "io.in.MOD.61.col": 4231667478, - "io.in.MOD.61.name": 968281301, - "io.in.MOD.61.icon": 3320255753, - "io.in.MOD.61.tags": 2116912312, - "io.in.MOD.61.$mute": 903371135, - "io.in.MOD.62": 1523642987, - "io.in.MOD.62.mode": 2529692305, - "io.in.MOD.62.mute": 1492671226, - "io.in.MOD.62.pol": 3925413263, - "io.in.MOD.62.col": 2795730966, - "io.in.MOD.62.name": 4283854673, - "io.in.MOD.62.icon": 3901150942, - "io.in.MOD.62.tags": 4220348698, - "io.in.MOD.62.$mute": 477649299, - "io.in.MOD.63": 2629003217, - "io.in.MOD.63.mode": 2639493146, - "io.in.MOD.63.mute": 779814196, - "io.in.MOD.63.pol": 1380645171, - "io.in.MOD.63.col": 2384170658, - "io.in.MOD.63.name": 586740225, - "io.in.MOD.63.icon": 2176561069, - "io.in.MOD.63.tags": 726193639, - "io.in.MOD.63.$mute": 1528041413, - "io.in.MOD.64": 280788676, - "io.in.MOD.64.mode": 4205133129, - "io.in.MOD.64.mute": 4081896400, - "io.in.MOD.64.pol": 3084747150, - "io.in.MOD.64.col": 2110241831, - "io.in.MOD.64.name": 2196430450, - "io.in.MOD.64.icon": 1059372582, - "io.in.MOD.64.tags": 1157552142, - "io.in.MOD.64.$mute": 1535568411, - "io.in.PLAY": 3468701105, - "io.in.PLAY.1": 149717296, - "io.in.PLAY.1.mode": 1348093555, - "io.in.PLAY.1.mute": 2439624849, - "io.in.PLAY.1.pol": 1959661740, - "io.in.PLAY.1.col": 786910021, - "io.in.PLAY.1.name": 2498219063, - "io.in.PLAY.1.icon": 3135613071, - "io.in.PLAY.1.tags": 322164714, - "io.in.PLAY.1.$mute": 357145985, - "io.in.PLAY.2": 2926456477, - "io.in.PLAY.2.mode": 206603908, - "io.in.PLAY.2.mute": 1794086009, - "io.in.PLAY.2.pol": 2517331388, - "io.in.PLAY.2.col": 3688956757, - "io.in.PLAY.2.name": 1139933527, - "io.in.PLAY.2.icon": 1979669536, - "io.in.PLAY.2.tags": 2133455831, - "io.in.PLAY.2.$mute": 3067059997, - "io.in.PLAY.3": 1848814567, - "io.in.PLAY.3.mode": 3778643358, - "io.in.PLAY.3.mute": 4157658965, - "io.in.PLAY.3.pol": 3266020739, - "io.in.PLAY.3.col": 146467634, - "io.in.PLAY.3.name": 1087584687, - "io.in.PLAY.3.icon": 3369426843, - "io.in.PLAY.3.tags": 3492217360, - "io.in.PLAY.3.$mute": 1969866777, - "io.in.PLAY.4": 330632548, - "io.in.PLAY.4.mode": 2037876176, - "io.in.PLAY.4.mute": 1951339379, - "io.in.PLAY.4.pol": 572096467, - "io.in.PLAY.4.col": 3863722562, - "io.in.PLAY.4.name": 44912789, - "io.in.PLAY.4.icon": 3182382429, - "io.in.PLAY.4.tags": 3328497390, - "io.in.PLAY.4.$mute": 3694661919, - "io.in.AES": 1535762461, - "io.in.AES.1": 1742503369, - "io.in.AES.1.mode": 3306985142, - "io.in.AES.1.mute": 4081625023, - "io.in.AES.1.pol": 1630456038, - "io.in.AES.1.col": 4168935085, - "io.in.AES.1.name": 970040894, - "io.in.AES.1.icon": 3465043356, - "io.in.AES.1.tags": 645933748, - "io.in.AES.1.$mute": 670158589, - "io.in.AES.2": 989840646, - "io.in.AES.2.mode": 2330968570, - "io.in.AES.2.mute": 3505728635, - "io.in.AES.2.pol": 1322988738, - "io.in.AES.2.col": 3402720849, - "io.in.AES.2.name": 707138050, - "io.in.AES.2.icon": 1985793632, - "io.in.AES.2.tags": 506178456, - "io.in.AES.2.$mute": 215770694, - "io.in.USR": 3146939871, - "io.in.USR.1": 1363942066, - "io.in.USR.1.mode": 1912654316, - "io.in.USR.1.mute": 2028729749, - "io.in.USR.1.pol": 907450076, - "io.in.USR.1.col": 2829081399, - "io.in.USR.1.name": 290134420, - "io.in.USR.1.icon": 3548664678, - "io.in.USR.1.tags": 2080650782, - "io.in.USR.1.$mute": 339863806, - "io.in.USR.1.user": 1025497344, - "io.in.USR.1.user.grp": 3311686119, - "io.in.USR.1.user.in": 3568299396, - "io.in.USR.1.user.tap": 3387850862, - "io.in.USR.1.user.lr": 3323715306, - "io.in.USR.2": 2448237147, - "io.in.USR.2.mode": 60481397, - "io.in.USR.2.mute": 1565462220, - "io.in.USR.2.pol": 4018147933, - "io.in.USR.2.col": 807095766, - "io.in.USR.2.name": 3067080605, - "io.in.USR.2.icon": 34713839, - "io.in.USR.2.tags": 2855718407, - "io.in.USR.2.$mute": 1424392132, - "io.in.USR.2.user": 916140097, - "io.in.USR.2.user.grp": 3684497719, - "io.in.USR.2.user.in": 1659326900, - "io.in.USR.2.user.tap": 3659917086, - "io.in.USR.2.user.lr": 3717497626, - "io.in.USR.3": 159568686, - "io.in.USR.3.mode": 1580621778, - "io.in.USR.3.mute": 2360577619, - "io.in.USR.3.pol": 1246014202, - "io.in.USR.3.col": 2484596873, - "io.in.USR.3.name": 627879978, - "io.in.USR.3.icon": 3891162200, - "io.in.USR.3.tags": 2409243040, - "io.in.USR.3.$mute": 1252209964, - "io.in.USR.3.user": 1352122046, - "io.in.USR.3.user.grp": 2993432906, - "io.in.USR.3.user.in": 2535539825, - "io.in.USR.3.user.tap": 65187675, - "io.in.USR.3.user.lr": 2981368535, - "io.in.USR.4": 3827579505, - "io.in.USR.4.mode": 2340142319, - "io.in.USR.4.mute": 1517355334, - "io.in.USR.4.pol": 392137143, - "io.in.USR.4.col": 1643995996, - "io.in.USR.4.name": 1387400343, - "io.in.USR.4.icon": 3039906677, - "io.in.USR.4.tags": 1565994477, - "io.in.USR.4.$mute": 4005851800, - "io.in.USR.4.user": 2205993979, - "io.in.USR.4.user.grp": 3999718395, - "io.in.USR.4.user.in": 1813725432, - "io.in.USR.4.user.tap": 4107795946, - "io.in.USR.4.user.lr": 4050296678, - "io.in.USR.5": 76092868, - "io.in.USR.5.mode": 1165679688, - "io.in.USR.5.mute": 376541897, - "io.in.USR.5.pol": 2844757904, - "io.in.USR.5.col": 291843027, - "io.in.USR.5.name": 3501231296, - "io.in.USR.5.icon": 3148466402, - "io.in.USR.5.tags": 1671390794, - "io.in.USR.5.$mute": 1327200782, - "io.in.USR.5.user": 1424343892, - "io.in.USR.5.user.grp": 2298735620, - "io.in.USR.5.user.in": 112953087, - "io.in.USR.5.user.tap": 2584932765, - "io.in.USR.5.user.lr": 2351714457, - "io.in.USR.6": 110291797, - "io.in.USR.6.mode": 155610031, - "io.in.USR.6.mute": 3618001542, - "io.in.USR.6.pol": 2503226871, - "io.in.USR.6.col": 3912374684, - "io.in.USR.6.name": 3497876311, - "io.in.USR.6.icon": 1023843509, - "io.in.USR.6.tags": 3833758125, - "io.in.USR.6.$mute": 1419522474, - "io.in.USR.6.user": 4222756027, - "io.in.USR.6.user.grp": 1219430662, - "io.in.USR.6.user.in": 3068363133, - "io.in.USR.6.user.tap": 1100990159, - "io.in.USR.6.user.lr": 1165125611, - "io.in.USR.7": 1000599675, - "io.in.USR.7.mode": 2287694495, - "io.in.USR.7.mute": 3800661270, - "io.in.USR.7.pol": 1953424743, - "io.in.USR.7.col": 2856129996, - "io.in.USR.7.name": 999449255, - "io.in.USR.7.icon": 2110332677, - "io.in.USR.7.tags": 633338941, - "io.in.USR.7.$mute": 393647349, - "io.in.USR.7.user": 3132987755, - "io.in.USR.7.user.grp": 1565319587, - "io.in.USR.7.user.in": 3969210880, - "io.in.USR.7.user.tap": 2984111970, - "io.in.USR.7.user.lr": 1575260302, - "io.in.USR.8": 1716102094, - "io.in.USR.8.mode": 2961911382, - "io.in.USR.8.mute": 3042558303, - "io.in.USR.8.pol": 1954494598, - "io.in.USR.8.col": 3866461965, - "io.in.USR.8.name": 1338039774, - "io.in.USR.8.icon": 2428608316, - "io.in.USR.8.tags": 948409428, - "io.in.USR.8.$mute": 3343765375, - "io.in.USR.8.user": 2146826058, - "io.in.USR.8.user.grp": 2507717550, - "io.in.USR.8.user.in": 4198618117, - "io.in.USR.8.user.tap": 2710182183, - "io.in.USR.8.user.lr": 2478273971, - "io.in.USR.9": 748317460, - "io.in.USR.9.mode": 339151037, - "io.in.USR.9.mute": 1496200852, - "io.in.USR.9.pol": 3629404997, - "io.in.USR.9.col": 1201837982, - "io.in.USR.9.name": 2968344725, - "io.in.USR.9.icon": 4100854967, - "io.in.USR.9.tags": 2623175199, - "io.in.USR.9.$mute": 460027414, - "io.in.USR.9.user": 471996297, - "io.in.USR.9.user.grp": 703585932, - "io.in.USR.9.user.in": 3602528775, - "io.in.USR.9.user.tap": 627242261, - "io.in.USR.9.user.lr": 674337697, - "io.in.USR.10": 4059464313, - "io.in.USR.10.mode": 2990034907, - "io.in.USR.10.mute": 3307225143, - "io.in.USR.10.pol": 872547643, - "io.in.USR.10.col": 1889161130, - "io.in.USR.10.name": 2726167700, - "io.in.USR.10.icon": 1469337745, - "io.in.USR.10.tags": 1531547728, - "io.in.USR.10.$mute": 3065590958, - "io.in.USR.10.user": 3473385455, - "io.in.USR.10.user.grp": 158645641, - "io.in.USR.10.user.in": 4172772417, - "io.in.USR.10.user.tap": 950746465, - "io.in.USR.10.user.lr": 4000454111, - "io.in.USR.11": 3411828166, - "io.in.USR.11.mode": 83085461, - "io.in.USR.11.mute": 4070856444, - "io.in.USR.11.pol": 2759804602, - "io.in.USR.11.col": 1743130891, - "io.in.USR.11.name": 3330698278, - "io.in.USR.11.icon": 3496484322, - "io.in.USR.11.tags": 2910412625, - "io.in.USR.11.$mute": 3894764567, - "io.in.USR.11.user": 1608902474, - "io.in.USR.11.user.grp": 2597081868, - "io.in.USR.11.user.in": 1911934028, - "io.in.USR.11.user.tap": 2343490358, - "io.in.USR.11.user.lr": 3632257754, - "io.in.USR.12": 1270989480, - "io.in.USR.12.mode": 52420840, - "io.in.USR.12.mute": 3691709, - "io.in.USR.12.pol": 745486053, - "io.in.USR.12.col": 3900449100, - "io.in.USR.12.name": 867602282, - "io.in.USR.12.icon": 4139944747, - "io.in.USR.12.tags": 1453423687, - "io.in.USR.12.$mute": 1318998449, - "io.in.USR.12.user": 2579294901, - "io.in.USR.12.user.grp": 3776745698, - "io.in.USR.12.user.in": 936186139, - "io.in.USR.12.user.tap": 2918650112, - "io.in.USR.12.user.lr": 1046151781, - "io.in.USR.13": 303199733, - "io.in.USR.13.mode": 486323704, - "io.in.USR.13.mute": 1340990586, - "io.in.USR.13.pol": 4252246071, - "io.in.USR.13.col": 921852574, - "io.in.USR.13.name": 1599056314, - "io.in.USR.13.icon": 4043823734, - "io.in.USR.13.tags": 2328272309, - "io.in.USR.13.$mute": 269318396, - "io.in.USR.13.user": 3075743648, - "io.in.USR.13.user.grp": 3642105622, - "io.in.USR.13.user.in": 444856726, - "io.in.USR.13.user.tap": 1873059613, - "io.in.USR.13.user.lr": 143761392, - "io.in.USR.14": 1576238471, - "io.in.USR.14.mode": 1789423758, - "io.in.USR.14.mute": 1922039365, - "io.in.USR.14.pol": 1487376571, - "io.in.USR.14.col": 2618226218, - "io.in.USR.14.name": 273542096, - "io.in.USR.14.icon": 1495575913, - "io.in.USR.14.tags": 1205451680, - "io.in.USR.14.$mute": 164179838, - "io.in.USR.14.user": 479682918, - "io.in.USR.14.user.grp": 3964322007, - "io.in.USR.14.user.in": 2871496776, - "io.in.USR.14.user.tap": 1801994703, - "io.in.USR.14.user.lr": 2741111278, - "io.in.USR.15": 2118735465, - "io.in.USR.15.mode": 1837367841, - "io.in.USR.15.mute": 2015104970, - "io.in.USR.15.pol": 2289548240, - "io.in.USR.15.col": 1160028449, - "io.in.USR.15.name": 624839393, - "io.in.USR.15.icon": 181152430, - "io.in.USR.15.tags": 735938890, - "io.in.USR.15.$mute": 120788088, - "io.in.USR.15.user": 3486790722, - "io.in.USR.15.user.grp": 924408517, - "io.in.USR.15.user.in": 29622132, - "io.in.USR.15.user.tap": 2829703597, - "io.in.USR.15.user.lr": 1897400514, - "io.in.USR.16": 2152934371, - "io.in.USR.16.mode": 597545886, - "io.in.USR.16.mute": 545153365, - "io.in.USR.16.pol": 1924021151, - "io.in.USR.16.col": 3099088358, - "io.in.USR.16.name": 3563080623, - "io.in.USR.16.icon": 323041632, - "io.in.USR.16.tags": 929789968, - "io.in.USR.16.$mute": 1475267097, - "io.in.USR.16.user": 360513539, - "io.in.USR.16.user.grp": 1450302076, - "io.in.USR.16.user.in": 2985106517, - "io.in.USR.16.user.tap": 4120468159, - "io.in.USR.16.user.lr": 1222143435, - "io.in.USR.17": 1169421128, - "io.in.USR.17.mode": 2154777828, - "io.in.USR.17.mute": 2224504477, - "io.in.USR.17.pol": 158021011, - "io.in.USR.17.col": 1173363458, - "io.in.USR.17.name": 3056937879, - "io.in.USR.17.icon": 2274847329, - "io.in.USR.17.tags": 891071528, - "io.in.USR.17.$mute": 2697981117, - "io.in.USR.17.user": 357209373, - "io.in.USR.17.user.grp": 3547022185, - "io.in.USR.17.user.in": 2988071987, - "io.in.USR.17.user.tap": 1325646445, - "io.in.USR.17.user.lr": 3289066141, - "io.in.USR.18": 1880663701, - "io.in.USR.18.mode": 2017902079, - "io.in.USR.18.mute": 3936858182, - "io.in.USR.18.pol": 185611634, - "io.in.USR.18.col": 3336970179, - "io.in.USR.18.name": 3114910519, - "io.in.USR.18.icon": 1195563008, - "io.in.USR.18.tags": 4237330170, - "io.in.USR.18.$mute": 3038284989, - "io.in.USR.18.user": 3091780836, - "io.in.USR.18.user.grp": 3294334640, - "io.in.USR.18.user.in": 255395018, - "io.in.USR.18.user.tap": 2711031510, - "io.in.USR.18.user.lr": 2743899772, - "io.in.USR.19": 2791943100, - "io.in.USR.19.mode": 1718663497, - "io.in.USR.19.mute": 1708100555, - "io.in.USR.19.pol": 1658243260, - "io.in.USR.19.col": 685006421, - "io.in.USR.19.name": 1775355356, - "io.in.USR.19.icon": 601858882, - "io.in.USR.19.tags": 424273129, - "io.in.USR.19.$mute": 3618638768, - "io.in.USR.19.user": 229399086, - "io.in.USR.19.user.grp": 563495732, - "io.in.USR.19.user.in": 3118217728, - "io.in.USR.19.user.tap": 954581521, - "io.in.USR.19.user.lr": 753656742, - "io.in.USR.20": 3729750490, - "io.in.USR.20.mode": 4026777999, - "io.in.USR.20.mute": 2308730540, - "io.in.USR.20.pol": 3590766544, - "io.in.USR.20.col": 424969505, - "io.in.USR.20.name": 2277399532, - "io.in.USR.20.icon": 3880501010, - "io.in.USR.20.tags": 559786159, - "io.in.USR.20.$mute": 817055394, - "io.in.USR.20.user": 1817425100, - "io.in.USR.20.user.grp": 92183349, - "io.in.USR.20.user.in": 1531174594, - "io.in.USR.20.user.tap": 2026642269, - "io.in.USR.20.user.lr": 4019731828, - "io.in.USR.21": 1755332903, - "io.in.USR.21.mode": 3737081673, - "io.in.USR.21.mute": 4163831188, - "io.in.USR.21.pol": 482575497, - "io.in.USR.21.col": 3606245176, - "io.in.USR.21.name": 2337085724, - "io.in.USR.21.icon": 3514494404, - "io.in.USR.21.tags": 3537171257, - "io.in.USR.21.$mute": 1985862806, - "io.in.USR.21.user": 2952295378, - "io.in.USR.21.user.grp": 3587410283, - "io.in.USR.21.user.in": 399007236, - "io.in.USR.21.user.tap": 1111492931, - "io.in.USR.21.user.lr": 247711634, - "io.in.USR.22": 2671860273, - "io.in.USR.22.mode": 469639303, - "io.in.USR.22.mute": 2922786629, - "io.in.USR.22.pol": 2167338805, - "io.in.USR.22.col": 1204259996, - "io.in.USR.22.name": 2746769443, - "io.in.USR.22.icon": 42269523, - "io.in.USR.22.tags": 2808065142, - "io.in.USR.22.$mute": 3679185813, - "io.in.USR.22.user": 3423296272, - "io.in.USR.22.user.grp": 2366915241, - "io.in.USR.22.user.in": 96157382, - "io.in.USR.22.user.tap": 3685139073, - "io.in.USR.22.user.lr": 1903224096, - "io.in.USR.23": 3194364315, - "io.in.USR.23.mode": 1619962336, - "io.in.USR.23.mute": 3148724181, - "io.in.USR.23.pol": 2570003361, - "io.in.USR.23.col": 3531422032, - "io.in.USR.23.name": 1479550811, - "io.in.USR.23.icon": 1741045817, - "io.in.USR.23.tags": 721156814, - "io.in.USR.23.$mute": 2156690329, - "io.in.USR.23.user": 3033509109, - "io.in.USR.23.user.grp": 3431229541, - "io.in.USR.23.user.in": 314557531, - "io.in.USR.23.user.tap": 872344653, - "io.in.USR.23.user.lr": 2349351589, - "io.in.USR.24": 2567689440, - "io.in.USR.24.mode": 3319723695, - "io.in.USR.24.mute": 327641673, - "io.in.USR.24.pol": 4195112360, - "io.in.USR.24.col": 865660985, - "io.in.USR.24.name": 4199110139, - "io.in.USR.24.icon": 754105668, - "io.in.USR.24.tags": 94384188, - "io.in.USR.24.$mute": 1476290189, - "io.in.USR.24.user": 3479387524, - "io.in.USR.24.user.grp": 1539309240, - "io.in.USR.24.user.in": 39001130, - "io.in.USR.24.user.tap": 217808494, - "io.in.USR.24.user.lr": 214236636, - "io.in.USR.25": 1599945805, - "io.in.USR.25.mode": 17033363, - "io.in.USR.25.mute": 993294001, - "io.in.USR.25.pol": 1086934842, - "io.in.USR.25.col": 80950411, - "io.in.USR.25.name": 1219932867, - "io.in.USR.25.icon": 2979524376, - "io.in.USR.25.tags": 3492359028, - "io.in.USR.25.$mute": 4065703009, - "io.in.USR.25.user": 3809850140, - "io.in.USR.25.user.grp": 2219371070, - "io.in.USR.25.user.in": 3838150994, - "io.in.USR.26": 3778942234, - "io.in.USR.26.mode": 172972498, - "io.in.USR.26.mute": 477554667, - "io.in.USR.26.pol": 2438901438, - "io.in.USR.26.col": 3410786647, - "io.in.USR.26.name": 2270735529, - "io.in.USR.26.icon": 3657620507, - "io.in.USR.26.tags": 2257639468, - "io.in.USR.26.$mute": 419491719, - "io.in.USR.26.user": 2399490139, - "io.in.USR.26.user.grp": 2356622832, - "io.in.USR.26.user.in": 1117096189, - "io.in.USR.27": 730758305, - "io.in.USR.27.mode": 730407808, - "io.in.USR.27.mute": 1101082978, - "io.in.USR.27.pol": 2033490648, - "io.in.USR.27.col": 3166819625, - "io.in.USR.27.name": 606008786, - "io.in.USR.27.icon": 119087555, - "io.in.USR.27.tags": 537555055, - "io.in.USR.27.$mute": 3182993908, - "io.in.USR.27.user": 2047667760, - "io.in.USR.27.user.grp": 2114487314, - "io.in.USR.27.user.in": 1471991334, - "io.in.USR.28": 1089790350, - "io.in.USR.28.mode": 3581686558, - "io.in.USR.28.mute": 2309235928, - "io.in.USR.28.pol": 1629615067, - "io.in.USR.28.col": 445210186, - "io.in.USR.28.name": 2915184672, - "io.in.USR.28.icon": 508079398, - "io.in.USR.28.tags": 542477741, - "io.in.USR.28.$mute": 3542953582, - "io.in.USR.28.user": 3297971731, - "io.in.USR.28.user.grp": 1362878797, - "io.in.USR.28.user.in": 218317605, - "io.in.USR.29": 458855643, - "io.in.USR.29.mode": 926117275, - "io.in.USR.29.mute": 828661592, - "io.in.USR.29.pol": 1646716090, - "io.in.USR.29.col": 460693259, - "io.in.USR.29.name": 818322112, - "io.in.USR.29.icon": 4012397134, - "io.in.USR.29.tags": 3040437027, - "io.in.USR.29.$mute": 451272046, - "io.in.USR.29.user": 4247101072, - "io.in.USR.29.user.grp": 2168730628, - "io.in.USR.29.user.in": 3568661318, - "io.in.USR.30": 1101666099, - "io.in.USR.30.mode": 4166863611, - "io.in.USR.30.mute": 1976367545, - "io.in.USR.30.pol": 269488868, - "io.in.USR.30.col": 1285979549, - "io.in.USR.30.name": 776649647, - "io.in.USR.30.icon": 2250525463, - "io.in.USR.30.tags": 271239042, - "io.in.USR.30.$mute": 3596410809, - "io.in.USR.30.user": 3508355244, - "io.in.USR.30.user.grp": 3068853464, - "io.in.USR.30.user.in": 5077730, - "io.in.USR.31": 3112921752, - "io.in.USR.31.mode": 831591924, - "io.in.USR.31.mute": 1480139689, - "io.in.USR.31.pol": 1267548696, - "io.in.USR.31.col": 2438847593, - "io.in.USR.31.name": 1972833927, - "io.in.USR.31.icon": 2324763856, - "io.in.USR.31.tags": 4065490090, - "io.in.USR.31.$mute": 2231398701, - "io.in.USR.31.user": 12912529, - "io.in.USR.31.user.grp": 3303327689, - "io.in.USR.31.user.in": 3333762087, - "io.in.USR.32": 2481008485, - "io.in.USR.32.mode": 1200386664, - "io.in.USR.32.mute": 1103896747, - "io.in.USR.32.pol": 3034214385, - "io.in.USR.32.col": 2072775264, - "io.in.USR.32.name": 2563357789, - "io.in.USR.32.icon": 333467669, - "io.in.USR.32.tags": 2558142166, - "io.in.USR.32.$mute": 2185925447, - "io.in.USR.32.user": 2652196609, - "io.in.USR.32.user.grp": 699600954, - "io.in.USR.32.user.in": 862290647, - "io.in.USR.33": 904599807, - "io.in.USR.33.mode": 2420543140, - "io.in.USR.33.mute": 3740638342, - "io.in.USR.33.pol": 1787842444, - "io.in.USR.33.col": 2920023333, - "io.in.USR.33.name": 1454604417, - "io.in.USR.33.icon": 3221327071, - "io.in.USR.33.tags": 3950511130, - "io.in.USR.33.$mute": 841325560, - "io.in.USR.33.user": 775596849, - "io.in.USR.33.user.grp": 2693635, - "io.in.USR.33.user.in": 2743764487, - "io.in.USR.34": 3062620225, - "io.in.USR.34.mode": 1992091427, - "io.in.USR.34.mute": 2232768833, - "io.in.USR.34.pol": 22077176, - "io.in.USR.34.col": 995456073, - "io.in.USR.34.name": 825443384, - "io.in.USR.34.icon": 3080506536, - "io.in.USR.34.tags": 1902530923, - "io.in.USR.34.$mute": 2776390289, - "io.in.USR.34.user": 2196322956, - "io.in.USR.34.user.grp": 689350052, - "io.in.USR.34.user.in": 1320754818, - "io.in.USR.35": 1806755795, - "io.in.USR.35.mode": 1922531866, - "io.in.USR.35.mute": 690934577, - "io.in.USR.35.pol": 3796632275, - "io.in.USR.35.col": 2652532034, - "io.in.USR.35.name": 2601314305, - "io.in.USR.35.icon": 1004973, - "io.in.USR.35.tags": 2667896810, - "io.in.USR.35.$mute": 1729617349, - "io.in.USR.35.user": 1593990015, - "io.in.USR.35.user.grp": 3364255668, - "io.in.USR.35.user.in": 1756534225, - "io.in.USR.36": 369203384, - "io.in.USR.36.mode": 755553421, - "io.in.USR.36.mute": 3271640722, - "io.in.USR.36.pol": 1522074253, - "io.in.USR.36.col": 506607636, - "io.in.USR.36.name": 813922837, - "io.in.USR.36.icon": 3665557238, - "io.in.USR.36.tags": 850575605, - "io.in.USR.36.$mute": 3933699775, - "io.in.USR.36.user": 3280602378, - "io.in.USR.36.user.grp": 4251212200, - "io.in.USR.36.user.in": 72993804, - "io.in.USR.37": 3701956610, - "io.in.USR.37.mode": 1347381364, - "io.in.USR.37.mute": 696194906, - "io.in.USR.37.pol": 3514417417, - "io.in.USR.37.col": 192644792, - "io.in.USR.37.name": 637338183, - "io.in.USR.37.icon": 111878791, - "io.in.USR.37.tags": 1178946426, - "io.in.USR.37.$mute": 269322419, - "io.in.USR.37.user": 3450362005, - "io.in.USR.37.user.grp": 4140307893, - "io.in.USR.37.user.in": 4195907771, - "io.in.USR.38": 2922920815, - "io.in.USR.38.mode": 339443605, - "io.in.USR.38.mute": 3268611547, - "io.in.USR.38.pol": 1549184414, - "io.in.USR.38.col": 587580215, - "io.in.USR.38.name": 3419742256, - "io.in.USR.38.icon": 4258190194, - "io.in.USR.38.tags": 1460957219, - "io.in.USR.38.$mute": 4000141788, - "io.in.USR.38.user": 161029726, - "io.in.USR.38.user.grp": 2972969975, - "io.in.USR.38.user.in": 3358126832, - "io.in.USR.39": 953781300, - "io.in.USR.39.mode": 2953970367, - "io.in.USR.39.mute": 3115472093, - "io.in.USR.39.pol": 1391162058, - "io.in.USR.39.col": 386510171, - "io.in.USR.39.name": 3031470379, - "io.in.USR.39.icon": 2017609643, - "io.in.USR.39.tags": 2471974078, - "io.in.USR.39.$mute": 2206458621, - "io.in.USR.39.user": 3946555331, - "io.in.USR.39.user.grp": 1447714724, - "io.in.USR.39.user.in": 3700134421, - "io.in.USR.40": 3577613975, - "io.in.USR.40.mode": 970936991, - "io.in.USR.40.mute": 1271324902, - "io.in.USR.40.pol": 2182208318, - "io.in.USR.40.col": 3353649367, - "io.in.USR.40.name": 71910359, - "io.in.USR.40.icon": 4113737888, - "io.in.USR.40.tags": 3556812634, - "io.in.USR.40.$mute": 3501247896, - "io.in.USR.40.user": 1723161220, - "io.in.USR.40.user.grp": 2464126162, - "io.in.USR.40.user.in": 1793425194, - "io.in.USR.41": 2762200572, - "io.in.USR.41.mode": 1722783352, - "io.in.USR.41.mute": 1696532730, - "io.in.USR.41.pol": 4184787465, - "io.in.USR.41.col": 854351800, - "io.in.USR.41.name": 1830614541, - "io.in.USR.41.icon": 634068211, - "io.in.USR.41.tags": 421842774, - "io.in.USR.41.$mute": 3601712481, - "io.in.USR.41.user": 252239165, - "io.in.USR.41.user.grp": 1065330057, - "io.in.USR.41.user.in": 3099114515, - "io.in.USR.42": 3472173382, - "io.in.USR.42.mode": 56916359, - "io.in.USR.42.mute": 4043049074, - "io.in.USR.42.pol": 867125787, - "io.in.USR.42.col": 4155903882, - "io.in.USR.42.name": 3264890100, - "io.in.USR.42.icon": 3550496652, - "io.in.USR.42.tags": 2916995143, - "io.in.USR.42.$mute": 3879018773, - "io.in.USR.42.user": 1630230344, - "io.in.USR.42.user.grp": 537988740, - "io.in.USR.42.user.in": 1891312238, - "io.in.USR.43": 114658896, - "io.in.USR.43.mode": 3497514256, - "io.in.USR.43.mute": 2666055347, - "io.in.USR.43.pol": 3516534031, - "io.in.USR.43.col": 2550874774, - "io.in.USR.43.name": 338059723, - "io.in.USR.43.icon": 882300683, - "io.in.USR.43.tags": 2396858681, - "io.in.USR.43.$mute": 2433249759, - "io.in.USR.43.user": 3843496177, - "io.in.USR.43.user.grp": 1942031007, - "io.in.USR.43.user.in": 3798401735, - "io.in.USR.44": 2267482557, - "io.in.USR.44.mode": 1852919345, - "io.in.USR.44.mute": 472972307, - "io.in.USR.44.pol": 3759635449, - "io.in.USR.44.col": 596971880, - "io.in.USR.44.name": 4275235188, - "io.in.USR.44.icon": 4205916554, - "io.in.USR.44.tags": 3435589665, - "io.in.USR.44.$mute": 1320134632, - "io.in.USR.44.user": 787644598, - "io.in.USR.44.user.grp": 1507652361, - "io.in.USR.44.user.in": 2564968600, - "io.in.USR.45": 1640812807, - "io.in.USR.45.mode": 2213143960, - "io.in.USR.45.mute": 2054313947, - "io.in.USR.45.pol": 1456963360, - "io.in.USR.45.col": 283044273, - "io.in.USR.45.name": 290483014, - "io.in.USR.45.icon": 1239262603, - "io.in.USR.45.tags": 1288398950, - "io.in.USR.45.$mute": 4075399900, - "io.in.USR.45.user": 349287588, - "io.in.USR.45.user.grp": 3308514029, - "io.in.USR.45.user.in": 3171016586, - "io.in.USR.46": 59156121, - "io.in.USR.46.mode": 1445394020, - "io.in.USR.46.mute": 385837145, - "io.in.USR.46.pol": 1259186653, - "io.in.USR.46.col": 2262754340, - "io.in.USR.46.name": 444410679, - "io.in.USR.46.icon": 3522555904, - "io.in.USR.46.tags": 1906863866, - "io.in.USR.46.$mute": 638932157, - "io.in.USR.46.user": 2679135457, - "io.in.USR.46.user.grp": 4015972174, - "io.in.USR.46.user.in": 673201399, - "io.in.USR.47": 2029737830, - "io.in.USR.47.mode": 2669570696, - "io.in.USR.47.mute": 1353054411, - "io.in.USR.47.pol": 1205525206, - "io.in.USR.47.col": 2223654223, - "io.in.USR.47.name": 2745427069, - "io.in.USR.47.icon": 1295348258, - "io.in.USR.47.tags": 309829814, - "io.in.USR.47.$mute": 4237315239, - "io.in.USR.47.user": 1546931233, - "io.in.USR.47.user.grp": 3756441923, - "io.in.USR.47.user.in": 1971611703, - "io.in.USR.48": 3276562189, - "io.in.USR.48.mode": 3205499360, - "io.in.USR.48.mute": 1753749062, - "io.in.USR.48.pol": 2735841712, - "io.in.USR.48.col": 1771760641, - "io.in.USR.48.name": 2087332414, - "io.in.USR.48.icon": 4038585459, - "io.in.USR.48.tags": 1989254843, - "io.in.USR.48.$mute": 16720660, - "io.in.USR.48.user": 116926409, - "io.in.USR.48.user.grp": 1851891787, - "io.in.USR.48.user.in": 3402107855, - "io.in.OSC": 1306793586, - "io.in.OSC.1": 1666995747, - "io.in.OSC.1.mode": 627664874, - "io.in.OSC.1.mute": 193156683, - "io.in.OSC.1.col": 90118209, - "io.in.OSC.1.name": 1957975954, - "io.in.OSC.1.icon": 820224112, - "io.in.OSC.1.tags": 2292548328, - "io.in.OSC.1.$mute": 3064329737, - "io.in.OSC.1.osc": 1999306516, - "io.in.OSC.1.osc.lvl": 3486644136, - "io.in.OSC.1.osc.mode": 2839716527, - "io.in.OSC.1.osc.f": 1870134921, - "io.in.OSC.2": 2629527254, - "io.in.OSC.2.mode": 2433098470, - "io.in.OSC.2.mute": 576801935, - "io.in.OSC.2.col": 1518711389, - "io.in.OSC.2.name": 3385881358, - "io.in.OSC.2.icon": 127838828, - "io.in.OSC.2.tags": 1596579716, - "io.in.OSC.2.$mute": 3738931035, - "io.in.OSC.2.osc": 3428191184, - "io.in.OSC.2.osc.lvl": 1215436199, - "io.in.OSC.2.osc.mode": 646539936, - "io.in.OSC.2.osc.f": 13455086, - "io.in.$BUS": 1475677090, - "io.in.$BUS.1": 228602208, - "io.in.$BUS.1.mode": 2605439037, - "io.in.$BUS.1.col": 482953240, - "io.in.$BUS.1.name": 3579378130, - "io.in.$BUS.1.icon": 4230444570, - "io.in.$BUS.1.tags": 1341709790, - "io.in.$BUS.2": 1715447691, - "io.in.$BUS.2.mode": 257643235, - "io.in.$BUS.2.col": 3863438903, - "io.in.$BUS.2.name": 2058694808, - "io.in.$BUS.2.icon": 1563337422, - "io.in.$BUS.2.tags": 2117390085, - "io.in.$BUS.3": 1686626500, - "io.in.$BUS.3.mode": 61036353, - "io.in.$BUS.3.col": 3137832836, - "io.in.$BUS.3.name": 975770810, - "io.in.$BUS.3.icon": 1888615614, - "io.in.$BUS.3.tags": 841789814, - "io.in.$BUS.4": 388799953, - "io.in.$BUS.4.mode": 4038281090, - "io.in.$BUS.4.col": 1071372141, - "io.in.$BUS.4.name": 1802817337, - "io.in.$BUS.4.icon": 2726209781, - "io.in.$BUS.4.tags": 1468584991, - "io.in.$BUS.5": 3212760663, - "io.in.$BUS.5.mode": 1871727664, - "io.in.$BUS.5.col": 1426897087, - "io.in.$BUS.5.name": 3878289646, - "io.in.$BUS.5.icon": 403411115, - "io.in.$BUS.5.tags": 4221666201, - "io.in.$BUS.6": 2250764176, - "io.in.$BUS.6.mode": 2329266051, - "io.in.$BUS.6.col": 3275944456, - "io.in.$BUS.6.name": 1043801400, - "io.in.$BUS.6.icon": 645233892, - "io.in.$BUS.6.tags": 1019426277, - "io.in.$BUS.7": 3900345022, - "io.in.$BUS.7.mode": 3165417989, - "io.in.$BUS.7.col": 4117954335, - "io.in.$BUS.7.name": 1895179776, - "io.in.$BUS.7.icon": 794276942, - "io.in.$BUS.7.tags": 1036370237, - "io.in.$BUS.8": 3877585588, - "io.in.$BUS.8.mode": 350915304, - "io.in.$BUS.8.col": 4168693091, - "io.in.$BUS.8.name": 2898109821, - "io.in.$BUS.8.icon": 3779539233, - "io.in.$BUS.8.tags": 3693901376, - "io.in.$BUS.9": 2408504321, - "io.in.$BUS.9.mode": 1691942500, - "io.in.$BUS.9.col": 1493014185, - "io.in.$BUS.9.name": 1741632631, - "io.in.$BUS.9.icon": 3540555895, - "io.in.$BUS.9.tags": 62539210, - "io.in.$BUS.10": 2157346369, - "io.in.$BUS.10.mode": 3922867572, - "io.in.$BUS.10.col": 1683576865, - "io.in.$BUS.10.name": 1507771595, - "io.in.$BUS.10.icon": 2799714720, - "io.in.$BUS.10.tags": 1168349843, - "io.in.$BUS.11": 2860362380, - "io.in.$BUS.11.mode": 2187673794, - "io.in.$BUS.11.col": 785800607, - "io.in.$BUS.11.name": 401397173, - "io.in.$BUS.11.icon": 3705538266, - "io.in.$BUS.11.tags": 1204595129, - "io.in.$BUS.12": 3599057598, - "io.in.$BUS.12.mode": 1751727200, - "io.in.$BUS.12.col": 361254837, - "io.in.$BUS.12.name": 1845210095, - "io.in.$BUS.12.icon": 3081590772, - "io.in.$BUS.12.tags": 2605630583, - "io.in.$BUS.13": 1328276248, - "io.in.$BUS.13.mode": 1735994574, - "io.in.$BUS.13.col": 2222473107, - "io.in.$BUS.13.name": 1766437321, - "io.in.$BUS.13.icon": 2813995374, - "io.in.$BUS.13.tags": 1378890269, - "io.in.$BUS.14": 1989027271, - "io.in.$BUS.14.mode": 2112246812, - "io.in.$BUS.14.col": 731318025, - "io.in.$BUS.14.name": 1332467875, - "io.in.$BUS.14.icon": 1747799880, - "io.in.$BUS.14.tags": 1394822043, - "io.in.$BUS.15": 52515954, - "io.in.$BUS.15.mode": 2369348714, - "io.in.$BUS.15.col": 747329575, - "io.in.$BUS.15.name": 770259501, - "io.in.$BUS.15.icon": 3179101794, - "io.in.$BUS.15.tags": 1137893537, - "io.in.$BUS.16": 724080385, - "io.in.$BUS.16.mode": 2349567240, - "io.in.$BUS.16.col": 532483037, - "io.in.$BUS.16.name": 1677279495, - "io.in.$BUS.16.icon": 3247214332, - "io.in.$BUS.16.tags": 1454183423, - "io.in.$BUS.17": 2500824270, - "io.in.$BUS.17.mode": 4027366166, - "io.in.$BUS.17.col": 1084053947, - "io.in.$BUS.17.name": 1599840801, - "io.in.$BUS.17.icon": 1847441046, - "io.in.$BUS.17.tags": 1470130437, - "io.in.$BUS.18": 3518086061, - "io.in.$BUS.18.mode": 4011874340, - "io.in.$BUS.18.col": 869368657, - "io.in.$BUS.18.name": 646380827, - "io.in.$BUS.18.icon": 3593114352, - "io.in.$BUS.18.tags": 1214087971, - "io.in.$BUS.19": 2412770599, - "io.in.$BUS.19.mode": 2255505586, - "io.in.$BUS.19.col": 381776975, - "io.in.$BUS.19.name": 1890134661, - "io.in.$BUS.19.icon": 3346653674, - "io.in.$BUS.19.tags": 1669331017, - "io.in.$BUS.20": 2189006086, - "io.in.$BUS.20.mode": 3705988458, - "io.in.$BUS.20.col": 803186298, - "io.in.$BUS.20.name": 1572505849, - "io.in.$BUS.20.icon": 1267016801, - "io.in.$BUS.20.tags": 550120209, - "io.in.$BUS.21": 836199387, - "io.in.$BUS.21.mode": 4004619036, - "io.in.$BUS.21.col": 502288196, - "io.in.$BUS.21.name": 277613191, - "io.in.$BUS.21.icon": 966446415, - "io.in.$BUS.21.tags": 756347851, - "io.in.$BUS.22": 264989529, - "io.in.$BUS.22.mode": 3864837750, - "io.in.$BUS.22.col": 727584686, - "io.in.$BUS.22.name": 1057758637, - "io.in.$BUS.22.icon": 803974613, - "io.in.$BUS.22.tags": 919362117, - "io.in.$BUS.23": 1697193063, - "io.in.$BUS.23.mode": 3559688168, - "io.in.$BUS.23.col": 1246660936, - "io.in.$BUS.23.name": 1188956283, - "io.in.$BUS.23.icon": 1019127507, - "io.in.$BUS.23.tags": 638127423, - "io.in.$BUS.24": 344387000, - "io.in.$BUS.24.mode": 3936200578, - "io.in.$BUS.24.col": 606925778, - "io.in.$BUS.24.name": 1571790337, - "io.in.$BUS.24.icon": 1692053817, - "io.in.$BUS.24.tags": 422958057, - "io.in.$BUS.25": 165330701, - "io.in.$BUS.25.mode": 3124646196, - "io.in.$BUS.25.col": 391672508, - "io.in.$BUS.25.name": 971087151, - "io.in.$BUS.25.icon": 1487572999, - "io.in.$BUS.25.tags": 585497091, - "io.in.$BUS.26": 2950236230, - "io.in.$BUS.26.mode": 3821720238, - "io.in.$BUS.26.col": 765126086, - "io.in.$BUS.26.name": 1332821749, - "io.in.$BUS.26.icon": 796618861, - "io.in.$BUS.26.tags": 267546909, - "io.in.$BUS.27": 523005257, - "io.in.$BUS.27.mode": 3599509504, - "io.in.$BUS.27.col": 658224736, - "io.in.$BUS.27.name": 1483683331, - "io.in.$BUS.27.icon": 1443961099, - "io.in.$BUS.27.tags": 639595383, - "io.in.$BUS.28": 3968523986, - "io.in.$BUS.28.mode": 3898119610, - "io.in.$BUS.28.col": 484929226, - "io.in.$BUS.28.name": 1976783337, - "io.in.$BUS.28.icon": 899935313, - "io.in.$BUS.28.tags": 802551297, - "io.in.$BUS.29": 1451277912, - "io.in.$BUS.29.mode": 3064499244, - "io.in.$BUS.29.col": 857176788, - "io.in.$BUS.29.name": 996457783, - "io.in.$BUS.29.icon": 1217203007, - "io.in.$BUS.29.tags": 4292015739, - "io.in.$BUS.30": 1593652749, - "io.in.$BUS.30.mode": 2406898813, - "io.in.$BUS.30.col": 2350246988, - "io.in.$BUS.30.name": 1206501731, - "io.in.$BUS.30.icon": 412658729, - "io.in.$BUS.30.tags": 3441082036, - "io.in.$BUS.31": 135742200, - "io.in.$BUS.31.mode": 994675303, - "io.in.$BUS.31.col": 3155379182, - "io.in.$BUS.31.name": 1254905009, - "io.in.$BUS.31.icon": 1179452327, - "io.in.$BUS.31.tags": 3666731550, - "io.in.$BUS.32": 3897265258, - "io.in.$BUS.32.mode": 834981201, - "io.in.$BUS.32.col": 2286236440, - "io.in.$BUS.32.name": 2033228431, - "io.in.$BUS.32.icon": 974942853, - "io.in.$BUS.32.tags": 3807865616, - "io.in.$MAIN": 2683479182, - "io.in.$MAIN.1": 2670091766, - "io.in.$MAIN.1.mode": 3991477734, - "io.in.$MAIN.1.col": 2327463298, - "io.in.$MAIN.1.name": 605463313, - "io.in.$MAIN.1.icon": 3407072360, - "io.in.$MAIN.1.tags": 4133908253, - "io.in.$MAIN.2": 3499922484, - "io.in.$MAIN.2.mode": 2298053740, - "io.in.$MAIN.2.col": 2584479160, - "io.in.$MAIN.2.name": 3996260811, - "io.in.$MAIN.2.icon": 3570076674, - "io.in.$MAIN.2.tags": 3973366275, - "io.in.$MAIN.3": 2736427394, - "io.in.$MAIN.3.mode": 2028568314, - "io.in.$MAIN.3.col": 3118205054, - "io.in.$MAIN.3.name": 3864227549, - "io.in.$MAIN.3.icon": 3354913172, - "io.in.$MAIN.3.tags": 4271500681, - "io.in.$MAIN.4": 3499496669, - "io.in.$MAIN.4.mode": 3916045120, - "io.in.$MAIN.4.col": 2917352980, - "io.in.$MAIN.4.name": 528613687, - "io.in.$MAIN.4.icon": 3965944974, - "io.in.$MAIN.4.tags": 4193048287, - "io.in.$MAIN.5": 4010410728, - "io.in.$MAIN.5.mode": 2211001294, - "io.in.$MAIN.5.col": 2399084298, - "io.in.$MAIN.5.name": 4191385577, - "io.in.$MAIN.5.icon": 3667100112, - "io.in.$MAIN.5.tags": 4030505541, - "io.in.$MAIN.6": 478799403, - "io.in.$MAIN.6.mode": 2143570772, - "io.in.$MAIN.6.col": 3078399232, - "io.in.$MAIN.6.name": 3808684131, - "io.in.$MAIN.6.icon": 3114410314, - "io.in.$MAIN.6.tags": 52675019, - "io.in.$MAIN.7": 3657318436, - "io.in.$MAIN.7.mode": 3737942594, - "io.in.$MAIN.7.col": 2661908198, - "io.in.$MAIN.7.name": 3676648149, - "io.in.$MAIN.7.icon": 3988256892, - "io.in.$MAIN.7.tags": 4270991633, - "io.in.$MAIN.8": 544804791, - "io.in.$MAIN.8.mode": 3816809640, - "io.in.$MAIN.8.col": 2834373500, - "io.in.$MAIN.8.name": 4114662191, - "io.in.$MAIN.8.icon": 3437577846, - "io.in.$MAIN.8.tags": 4108018855, - "io.in.$MTX": 3916029425, - "io.in.$MTX.1": 4172701856, - "io.in.$MTX.1.mode": 2701364560, - "io.in.$MTX.1.col": 2873144610, - "io.in.$MTX.1.name": 3045645887, - "io.in.$MTX.1.icon": 4148938387, - "io.in.$MTX.1.tags": 4170749791, - "io.in.$MTX.2": 1364319539, - "io.in.$MTX.2.mode": 4112098019, - "io.in.$MTX.2.col": 4167463750, - "io.in.$MTX.2.name": 624742887, - "io.in.$MTX.2.icon": 2352794623, - "io.in.$MTX.2.tags": 413088314, - "io.in.$MTX.3": 2834685926, - "io.in.$MTX.3.mode": 2380034670, - "io.in.$MTX.3.col": 2033854282, - "io.in.$MTX.3.name": 1382154239, - "io.in.$MTX.3.icon": 1583907371, - "io.in.$MTX.3.tags": 4122347648, - "io.in.$MTX.4": 4279652313, - "io.in.$MTX.4.mode": 923341879, - "io.in.$MTX.4.col": 2669039742, - "io.in.$MTX.4.name": 505112100, - "io.in.$MTX.4.icon": 3441699661, - "io.in.$MTX.4.tags": 3670690631, - "io.in.$MTX.5": 515508570, - "io.in.$MTX.5.mode": 3610051049, - "io.in.$MTX.5.col": 1134886247, - "io.in.$MTX.5.name": 2512582194, - "io.in.$MTX.5.icon": 343692812, - "io.in.$MTX.5.tags": 3431396317, - "io.in.$MTX.6": 78659008, - "io.in.$MTX.6.mode": 2436078869, - "io.in.$MTX.6.col": 602227618, - "io.in.$MTX.6.name": 798572710, - "io.in.$MTX.6.icon": 1985720930, - "io.in.$MTX.6.tags": 3467153105, - "io.in.$MTX.7": 1549471187, - "io.in.$MTX.7.mode": 2060434754, - "io.in.$MTX.7.col": 2782557803, - "io.in.$MTX.7.name": 2700228857, - "io.in.$MTX.7.icon": 185886005, - "io.in.$MTX.7.tags": 2617074370, - "io.in.$MTX.8": 3036221577, - "io.in.$MTX.8.mode": 1376657687, - "io.in.$MTX.8.col": 1764259279, - "io.in.$MTX.8.name": 1349773924, - "io.in.$MTX.8.icon": 3649412258, - "io.in.$MTX.8.tags": 2429020497, - "io.in.$MTX.9": 3835657724, - "io.in.$MTX.9.mode": 1973977112, - "io.in.$MTX.9.col": 468465587, - "io.in.$MTX.9.name": 3425147821, - "io.in.$MTX.9.icon": 43056531, - "io.in.$MTX.9.tags": 3304374, - "io.in.$MTX.10": 247398011, - "io.in.$MTX.10.mode": 2831923831, - "io.in.$MTX.10.col": 332626580, - "io.in.$MTX.10.name": 460736356, - "io.in.$MTX.10.icon": 2143312337, - "io.in.$MTX.10.tags": 2500271146, - "io.in.$MTX.11": 3087402598, - "io.in.$MTX.11.mode": 2805902457, - "io.in.$MTX.11.col": 1658354550, - "io.in.$MTX.11.name": 1336157882, - "io.in.$MTX.11.icon": 1792946479, - "io.in.$MTX.11.tags": 2527372292, - "io.in.$MTX.12": 4166823876, - "io.in.$MTX.12.mode": 1847805739, - "io.in.$MTX.12.col": 1705656608, - "io.in.$MTX.12.name": 125305008, - "io.in.$MTX.12.icon": 2375360685, - "io.in.$MTX.12.tags": 1126894838, - "io.in.$MTX.13": 1080315378, - "io.in.$MTX.13.mode": 2324940845, - "io.in.$MTX.13.col": 242881538, - "io.in.$MTX.13.name": 224001990, - "io.in.$MTX.13.icon": 2076299771, - "io.in.$MTX.13.tags": 2258623712, - "io.in.$MTX.14": 3914749101, - "io.in.$MTX.14.mode": 2864195871, - "io.in.$MTX.14.col": 1370041660, - "io.in.$MTX.14.name": 449306588, - "io.in.$MTX.14.icon": 3717547897, - "io.in.$MTX.14.tags": 2473772018, - "io.in.$MTX.15": 2437504152, - "io.in.$MTX.15.mode": 1935093505, - "io.in.$MTX.15.col": 1585766430, - "io.in.$MTX.15.name": 1241889042, - "io.in.$MTX.15.icon": 1803925751, - "io.in.$MTX.15.tags": 2730679692, - "io.in.$MTX.16": 966812475, - "io.in.$MTX.16.mode": 1720835571, - "io.in.$MTX.16.col": 2135090888, - "io.in.$MTX.16.name": 83195816, - "io.in.$MTX.16.icon": 2365368277, - "io.in.$MTX.16.tags": 2201049758, - "io.in.$SEND": 1465010698, - "io.in.$SEND.1": 3728869579, - "io.in.$SEND.1.mode": 282566591, - "io.in.$SEND.1.col": 1887324112, - "io.in.$SEND.1.name": 3789184164, - "io.in.$SEND.1.icon": 3604290353, - "io.in.$SEND.1.tags": 1076590194, - "io.in.$SEND.2": 3110923881, - "io.in.$SEND.2.mode": 4009151461, - "io.in.$SEND.2.col": 1840008822, - "io.in.$SEND.2.name": 3974227230, - "io.in.$SEND.2.icon": 4075124774, - "io.in.$SEND.2.tags": 4276227096, - "io.in.$SEND.3": 3118874967, - "io.in.$SEND.3.mode": 3385231987, - "io.in.$SEND.3.col": 1079807180, - "io.in.$SEND.3.name": 3392408016, - "io.in.$SEND.3.icon": 3824743341, - "io.in.$SEND.3.tags": 1183750014, - "io.in.$SEND.4": 263285256, - "io.in.$SEND.4.mode": 59465177, - "io.in.$SEND.4.col": 1669524450, - "io.in.$SEND.4.name": 3188042378, - "io.in.$SEND.4.icon": 214224199, - "io.in.$SEND.4.tags": 1157357188, - "io.in.$SEND.5": 272523965, - "io.in.$SEND.5.mode": 312214599, - "io.in.$SEND.5.col": 1915667352, - "io.in.$SEND.5.name": 2895327996, - "io.in.$SEND.5.icon": 4162096852, - "io.in.$SEND.5.tags": 879487994, - "io.in.$SEND.6": 1533643606, - "io.in.$SEND.6.mode": 4150875821, - "io.in.$SEND.6.col": 2037423902, - "io.in.$SEND.6.name": 2166591350, - "io.in.$SEND.6.icon": 4125420494, - "io.in.$SEND.6.tags": 587774208, - "io.in.$SEND.7": 4041380089, - "io.in.$SEND.7.mode": 1352804123, - "io.in.$SEND.7.col": 1749644852, - "io.in.$SEND.7.name": 3407954664, - "io.in.$SEND.7.icon": 308200757, - "io.in.$SEND.7.tags": 1211437702, - "io.in.$SEND.8": 1101904354, - "io.in.$SEND.8.mode": 191808865, - "io.in.$SEND.8.col": 2352312970, - "io.in.$SEND.8.name": 3112000418, - "io.in.$SEND.8.icon": 3371319375, - "io.in.$SEND.8.tags": 955009548, - "io.in.$SEND.9": 2207226216, - "io.in.$SEND.9.mode": 4072568015, - "io.in.$SEND.9.col": 1822775840, - "io.in.$SEND.9.name": 2928608916, - "io.in.$SEND.9.icon": 4177698172, - "io.in.$SEND.9.tags": 724884322, - "io.in.$SEND.10": 3171298950, - "io.in.$SEND.10.mode": 2708526251, - "io.in.$SEND.10.col": 1474334203, - "io.in.$SEND.10.name": 1466678208, - "io.in.$SEND.10.icon": 1092753911, - "io.in.$SEND.10.tags": 3083699574, - "io.in.$SEND.11": 221173536, - "io.in.$SEND.11.mode": 3353469345, - "io.in.$SEND.11.col": 4214479136, - "io.in.$SEND.11.name": 782066250, - "io.in.$SEND.11.icon": 3218093619, - "io.in.$SEND.11.tags": 862441843, - "io.in.$SEND.12": 2292862935, - "io.in.$SEND.12.mode": 883641761, - "io.in.$SEND.12.col": 2037017868, - "io.in.$SEND.12.name": 1964077153, - "io.in.$SEND.12.icon": 4140165126, - "io.in.$SEND.12.tags": 2615549807, - "io.in.$SEND.13": 3648190602, - "io.in.$SEND.13.mode": 31651295, - "io.in.$SEND.13.col": 2313811607, - "io.in.$SEND.13.name": 1276681236, - "io.in.$SEND.13.icon": 4041962517, - "io.in.$SEND.13.tags": 1387020681, - "io.in.$SEND.14": 4008607331, - "io.in.$SEND.14.mode": 1974473160, - "io.in.$SEND.14.col": 4125186706, - "io.in.$SEND.14.name": 3215720427, - "io.in.$SEND.14.icon": 2631883016, - "io.in.$SEND.14.tags": 2676791877, - "io.in.$SEND.15": 1059813142, - "io.in.$SEND.15.mode": 1032223157, - "io.in.$SEND.15.col": 471930765, - "io.in.$SEND.15.name": 3521194430, - "io.in.$SEND.15.icon": 558634271, - "io.in.$SEND.15.tags": 390858335, - "io.in.$SEND.16": 17671808, - "io.in.$SEND.16.mode": 3603769254, - "io.in.$SEND.16.col": 3101987202, - "io.in.$SEND.16.name": 1325055348, - "io.in.$SEND.16.icon": 3458104658, - "io.in.$SEND.16.tags": 3685066965, - "io.in.$SEND.17": 4242087735, - "io.in.$SEND.17.mode": 2165411891, - "io.in.$SEND.17.col": 564806014, - "io.in.$SEND.17.name": 2354636824, - "io.in.$SEND.17.icon": 1693009297, - "io.in.$SEND.17.tags": 3789866197, - "io.in.$SEND.18": 1381091361, - "io.in.$SEND.18.mode": 269549063, - "io.in.$SEND.18.col": 3479512472, - "io.in.$SEND.18.name": 3216559102, - "io.in.$SEND.18.icon": 289014139, - "io.in.$SEND.18.tags": 2621773931, - "io.in.$SEND.19": 3799862723, - "io.in.$SEND.19.mode": 970597434, - "io.in.$SEND.19.col": 3794529140, - "io.in.$SEND.19.name": 870577305, - "io.in.$SEND.19.icon": 2601282928, - "io.in.$SEND.19.tags": 3272313454, - "io.in.$SEND.20": 871777449, - "io.in.$SEND.20.mode": 3001406109, - "io.in.$SEND.20.col": 1874873749, - "io.in.$SEND.20.name": 1170993814, - "io.in.$SEND.20.icon": 1394953117, - "io.in.$SEND.20.tags": 2814772880, - "io.in.$SEND.21": 2227268956, - "io.in.$SEND.21.mode": 3786351408, - "io.in.$SEND.21.col": 868681626, - "io.in.$SEND.21.name": 2157550608, - "io.in.$SEND.21.icon": 3275208665, - "io.in.$SEND.21.tags": 1151367277, - "io.in.$SEND.22": 441348997, - "io.in.$SEND.22.mode": 1622708027, - "io.in.$SEND.22.col": 1874041702, - "io.in.$SEND.22.name": 2098122727, - "io.in.$SEND.22.icon": 57098156, - "io.in.$SEND.22.tags": 622773737, - "io.in.$SEND.23": 1702468664, - "io.in.$SEND.23.mode": 246591921, - "io.in.$SEND.23.col": 1017042081, - "io.in.$SEND.23.name": 747010970, - "io.in.$SEND.23.icon": 2914982819, - "io.in.$SEND.23.tags": 3715924451, - "io.in.$SEND.24": 3052573935, - "io.in.$SEND.24.mode": 2629651874, - "io.in.$SEND.24.col": 1307236540, - "io.in.$SEND.24.name": 2665242545, - "io.in.$SEND.24.icon": 2847063542, - "io.in.$SEND.24.tags": 3183840543, - "io.in.$SEND.25": 3149776697, - "io.in.$SEND.25.mode": 2331080559, - "io.in.$SEND.25.col": 868486919, - "io.in.$SEND.25.name": 3662635044, - "io.in.$SEND.25.icon": 668936645, - "io.in.$SEND.25.tags": 1004075321, - "io.in.$SEND.26": 204894188, - "io.in.$SEND.26.mode": 3818505112, - "io.in.$SEND.26.col": 2981425868, - "io.in.$SEND.26.name": 1033346522, - "io.in.$SEND.26.icon": 2607654136, - "io.in.$SEND.26.tags": 4235544847, - "io.in.$SEND.27": 2538468910, - "io.in.$SEND.27.mode": 737302917, - "io.in.$SEND.27.col": 1113576440, - "io.in.$SEND.27.name": 2495932046, - "io.in.$SEND.27.icon": 2306609359, - "io.in.$SEND.27.tags": 4080757519, - "io.in.$SEND.28": 3977703112, - "io.in.$SEND.28.mode": 421361081, - "io.in.$SEND.28.col": 3925350386, - "io.in.$SEND.28.name": 3273927556, - "io.in.$SEND.28.icon": 1237969153, - "io.in.$SEND.28.tags": 3183067653, - "io.in.$SEND.29": 1032984447, - "io.in.$SEND.29.mode": 1688680588, - "io.in.$SEND.29.col": 3569069102, - "io.in.$SEND.29.name": 445775679, - "io.in.$SEND.29.icon": 1201632542, - "io.in.$SEND.29.tags": 3046641160, - "io.in.$SEND.30": 1320885040, - "io.in.$SEND.30.mode": 3235138583, - "io.in.$SEND.30.col": 1141054031, - "io.in.$SEND.30.name": 1291481660, - "io.in.$SEND.30.icon": 267726859, - "io.in.$SEND.30.tags": 3215107562, - "io.in.$SEND.31": 2671154151, - "io.in.$SEND.31.mode": 4001098090, - "io.in.$SEND.31.col": 748069380, - "io.in.$SEND.31.name": 1103467750, - "io.in.$SEND.31.icon": 2369678359, - "io.in.$SEND.31.tags": 1030549991, - "io.in.$SEND.32": 4111678618, - "io.in.$SEND.32.mode": 684021101, - "io.in.$SEND.32.col": 1816569408, - "io.in.$SEND.32.name": 2847754413, - "io.in.$SEND.32.icon": 670739210, - "io.in.$SEND.32.tags": 505276611, - "io.in.$MON": 1268061281, - "io.in.$MON.1": 2385067981, - "io.in.$MON.1.mode": 2964805837, - "io.in.$MON.1.col": 2233669389, - "io.in.$MON.1.name": 3092816609, - "io.in.$MON.1.icon": 3260187322, - "io.in.$MON.1.tags": 2460301834, - "io.in.$MON.2": 3871818371, - "io.in.$MON.2.mode": 2173954834, - "io.in.$MON.2.col": 4167833196, - "io.in.$MON.2.name": 212501833, - "io.in.$MON.2.icon": 486985997, - "io.in.$MON.2.tags": 2892879516, - "io.in.$MON.3": 778927393, - "io.in.$MON.3.mode": 709933158, - "io.in.$MON.3.col": 3698447189, - "io.in.$MON.3.name": 569508684, - "io.in.$MON.3.icon": 1677661617, - "io.in.$MON.3.tags": 556381065, - "io.in.$MON.4": 2249944020, - "io.in.$MON.4.mode": 3134117482, - "io.in.$MON.4.col": 2426237443, - "io.in.$MON.4.name": 2923516052, - "io.in.$MON.4.icon": 951800957, - "io.in.$MON.4.tags": 1828205847, - "io.out": 624228718, - "io.out.LCL": 673460974, - "io.out.LCL.1": 2732352206, - "io.out.LCL.1.grp": 2897694939, - "io.out.LCL.1.in": 2725049664, - "io.out.LCL.2": 2063652539, - "io.out.LCL.2.grp": 1634195636, - "io.out.LCL.2.in": 3996103111, - "io.out.LCL.3": 3166707882, - "io.out.LCL.3.grp": 103858924, - "io.out.LCL.3.in": 4184243727, - "io.out.LCL.4": 2490148695, - "io.out.LCL.4.grp": 3615019989, - "io.out.LCL.4.in": 675368782, - "io.out.LCL.5": 1902887636, - "io.out.LCL.5.grp": 1218935989, - "io.out.LCL.5.in": 1181947950, - "io.out.LCL.6": 2943718251, - "io.out.LCL.6.grp": 1461284218, - "io.out.LCL.6.in": 3905802857, - "io.out.LCL.7": 2172782392, - "io.out.LCL.7.grp": 867531428, - "io.out.LCL.7.in": 3431047607, - "io.out.LCL.8": 1225347402, - "io.out.LCL.8.grp": 2957323641, - "io.out.LCL.8.in": 3749328130, - "io.out.AUX": 2635132615, - "io.out.AUX.1": 2775425101, - "io.out.AUX.1.grp": 1973858613, - "io.out.AUX.1.in": 3369965742, - "io.out.AUX.2": 1661965583, - "io.out.AUX.2.grp": 2599446457, - "io.out.AUX.2.in": 2770611394, - "io.out.AUX.3": 337117108, - "io.out.AUX.3.grp": 3674424222, - "io.out.AUX.3.in": 3218005821, - "io.out.AUX.4": 3250194366, - "io.out.AUX.4.grp": 873030343, - "io.out.AUX.4.in": 3436382652, - "io.out.AUX.5": 1947617899, - "io.out.AUX.5.grp": 3715751838, - "io.out.AUX.5.in": 2066594621, - "io.out.AUX.6": 2721304173, - "io.out.AUX.6.grp": 1341829234, - "io.out.AUX.6.in": 1219597649, - "io.out.AUX.7": 1623614884, - "io.out.AUX.7.grp": 4048389996, - "io.out.AUX.7.in": 1602555535, - "io.out.AUX.8": 241709137, - "io.out.AUX.8.grp": 4220873237, - "io.out.AUX.8.in": 48213774, - "io.out.A": 2932079904, - "io.out.A.1": 1537299189, - "io.out.A.1.grp": 2725744763, - "io.out.A.1.in": 491753218, - "io.out.A.2": 239274350, - "io.out.A.2.grp": 2828324482, - "io.out.A.2.in": 2347657281, - "io.out.A.3": 3126152531, - "io.out.A.3.grp": 108943990, - "io.out.A.3.in": 3946990720, - "io.out.A.4": 2097234474, - "io.out.A.4.grp": 1018115983, - "io.out.A.4.in": 818366615, - "io.out.A.5": 710106655, - "io.out.A.5.grp": 215336328, - "io.out.A.5.in": 1717734534, - "io.out.A.6": 1483834261, - "io.out.A.6.grp": 2432278745, - "io.out.A.6.in": 2913161637, - "io.out.A.7": 117692942, - "io.out.A.7.grp": 3516861657, - "io.out.A.7.in": 1785951129, - "io.out.A.8": 3114015604, - "io.out.A.8.grp": 3049655507, - "io.out.A.8.in": 983951850, - "io.out.A.9": 1995313866, - "io.out.A.9.grp": 4197415126, - "io.out.A.9.in": 4042620399, - "io.out.A.10": 3662925731, - "io.out.A.10.grp": 106264996, - "io.out.A.10.in": 1047248077, - "io.out.A.11": 2301981270, - "io.out.A.11.grp": 3968360952, - "io.out.A.11.in": 3359167953, - "io.out.A.12": 1000720348, - "io.out.A.12.grp": 2214336220, - "io.out.A.12.in": 3233570869, - "io.out.A.13": 3908559735, - "io.out.A.13.grp": 2010817884, - "io.out.A.13.in": 750031285, - "io.out.A.14": 2858670133, - "io.out.A.14.grp": 3737581107, - "io.out.A.14.in": 100286810, - "io.out.A.15": 1471552243, - "io.out.A.15.grp": 1992336131, - "io.out.A.15.in": 768594602, - "io.out.A.16": 2242658441, - "io.out.A.16.grp": 901536199, - "io.out.A.16.in": 3470580926, - "io.out.A.17": 881760380, - "io.out.A.17.grp": 1360118219, - "io.out.A.17.in": 4085167394, - "io.out.A.18": 3875451287, - "io.out.A.18.grp": 264263542, - "io.out.A.18.in": 4107198191, - "io.out.A.19": 2756749544, - "io.out.A.19.grp": 2343235062, - "io.out.A.19.in": 1760446575, - "io.out.A.20": 4021487202, - "io.out.A.20.grp": 706549093, - "io.out.A.20.in": 1788567692, - "io.out.A.21": 2635009621, - "io.out.A.21.grp": 225291768, - "io.out.A.21.in": 3878472145, - "io.out.A.22": 1336979736, - "io.out.A.22.grp": 1910099413, - "io.out.A.22.in": 1122544124, - "io.out.A.23": 238634769, - "io.out.A.23.grp": 175546573, - "io.out.A.23.in": 3928216868, - "io.out.A.24": 3151696324, - "io.out.A.24.grp": 3389997619, - "io.out.A.24.in": 2323723610, - "io.out.A.25": 1848448767, - "io.out.A.25.grp": 3657252594, - "io.out.A.25.in": 3130783467, - "io.out.A.26": 446257570, - "io.out.A.26.grp": 4094908288, - "io.out.A.26.in": 2961645481, - "io.out.A.27": 3706408891, - "io.out.A.27.grp": 1842204672, - "io.out.A.27.in": 650946345, - "io.out.A.28": 2345515630, - "io.out.A.28.grp": 2519135622, - "io.out.A.28.in": 1583890815, - "io.out.A.29": 960348753, - "io.out.A.29.grp": 1825410045, - "io.out.A.29.in": 2546133972, - "io.out.A.30": 2240815083, - "io.out.A.30.grp": 1242317717, - "io.out.A.30.in": 4203623484, - "io.out.A.31": 1107040044, - "io.out.A.31.grp": 3945941382, - "io.out.A.31.in": 2844061055, - "io.out.A.32": 4098775111, - "io.out.A.32.grp": 2846939610, - "io.out.A.32.in": 1256168931, - "io.out.A.33": 574914013, - "io.out.A.33.grp": 2935942344, - "io.out.A.33.in": 1435519265, - "io.out.A.34": 3487991232, - "io.out.A.34.grp": 2579748313, - "io.out.A.34.in": 1523933152, - "io.out.A.35": 2123780238, - "io.out.A.35.grp": 1286772238, - "io.out.A.35.in": 132637079, - "io.out.A.36": 1089004876, - "io.out.A.36.grp": 3685106565, - "io.out.A.36.in": 3102274476, - "io.out.A.37": 4002056423, - "io.out.A.37.grp": 26765873, - "io.out.A.37.in": 1391905832, - "io.out.A.38": 2678492781, - "io.out.A.38.grp": 810377628, - "io.out.A.38.in": 2221528437, - "io.out.A.39": 1296627984, - "io.out.A.39.grp": 3430406073, - "io.out.A.39.in": 2018074432, - "io.out.A.40": 2844844837, - "io.out.A.40.grp": 3738230534, - "io.out.A.40.in": 635852799, - "io.out.A.41": 1483931432, - "io.out.A.41.grp": 1158198657, - "io.out.A.41.in": 260473208, - "io.out.A.42": 96818646, - "io.out.A.42.grp": 2049880939, - "io.out.A.42.in": 443269698, - "io.out.A.43": 3073480537, - "io.out.A.43.grp": 2143647128, - "io.out.A.43.in": 1691599089, - "io.out.A.44": 1954778703, - "io.out.A.44.grp": 3243917785, - "io.out.A.44.in": 4083610592, - "io.out.A.45": 656774069, - "io.out.A.45.grp": 510356047, - "io.out.A.45.in": 3593407702, - "io.out.A.46": 1425263939, - "io.out.A.46.grp": 325074414, - "io.out.A.46.in": 1096956023, - "io.out.A.47": 63710198, - "io.out.A.47.grp": 1642124883, - "io.out.A.47.in": 853565434, - "io.out.A.48": 2971518969, - "io.out.A.48.grp": 2535825012, - "io.out.A.48.in": 3177896093, - "io.out.B": 3200125606, - "io.out.B.1": 2886568126, - "io.out.B.1.grp": 3995086309, - "io.out.B.1.in": 2076563272, - "io.out.B.2": 2207367077, - "io.out.B.2.grp": 2883495760, - "io.out.B.2.in": 2716370315, - "io.out.B.3": 1292441488, - "io.out.B.3.grp": 3198712651, - "io.out.B.3.in": 863695306, - "io.out.B.4": 2492304377, - "io.out.B.4.grp": 3881686353, - "io.out.B.4.in": 3093294917, - "io.out.B.5": 1734644692, - "io.out.B.5.grp": 2787985202, - "io.out.B.5.in": 3301354292, - "io.out.B.6": 3112352094, - "io.out.B.6.grp": 2513812167, - "io.out.B.6.in": 2506772599, - "io.out.B.7": 2155319365, - "io.out.B.7.grp": 635588288, - "io.out.B.7.in": 2929319526, - "io.out.B.8": 1475012031, - "io.out.B.8.grp": 2724434189, - "io.out.B.8.in": 2251279136, - "io.out.B.9": 2596232345, - "io.out.B.9.grp": 1855444208, - "io.out.B.9.in": 3373131557, - "io.out.B.10": 929367488, - "io.out.B.10.grp": 2305462429, - "io.out.B.10.in": 726525428, - "io.out.B.11": 4272503933, - "io.out.B.11.grp": 1891636506, - "io.out.B.11.in": 3554304675, - "io.out.B.12": 3589575127, - "io.out.B.12.grp": 2440343286, - "io.out.B.12.in": 3275917167, - "io.out.B.13": 2831751548, - "io.out.B.13.grp": 3416369258, - "io.out.B.13.in": 2297351539, - "io.out.B.14": 1569721982, - "io.out.B.14.grp": 1106074749, - "io.out.B.14.in": 2728598356, - "io.out.B.15": 3116688656, - "io.out.B.15.grp": 1655438021, - "io.out.B.15.in": 2448243820, - "io.out.B.16": 2344290970, - "io.out.B.16.grp": 2646872621, - "io.out.B.16.in": 1459512580, - "io.out.B.17": 1560437367, - "io.out.B.17.grp": 1007304618, - "io.out.B.17.in": 1485108787, - "io.out.B.18": 552265628, - "io.out.B.18.grp": 600308264, - "io.out.B.18.in": 1892187393, - "io.out.B.19": 1830936347, - "io.out.B.19.grp": 2149670476, - "io.out.B.19.in": 1687623717, - "io.out.B.20": 400997537, - "io.out.B.20.grp": 835140670, - "io.out.B.20.in": 315095751, - "io.out.B.21": 3938305182, - "io.out.B.21.grp": 279345439, - "io.out.B.21.in": 3555245734, - "io.out.B.22": 3259104075, - "io.out.B.22.grp": 620377067, - "io.out.B.22.in": 3754361282, - "io.out.B.23": 4179988690, - "io.out.B.23.grp": 107589812, - "io.out.B.23.in": 3730277981, - "io.out.B.24": 3416901519, - "io.out.B.24.grp": 3521691773, - "io.out.B.24.in": 853047124, - "io.out.B.25": 2743127348, - "io.out.B.25.grp": 1909657360, - "io.out.B.25.in": 853895353, - "io.out.B.26": 1833280481, - "io.out.B.26.grp": 2001513002, - "io.out.B.26.in": 490900403, - "io.out.B.27": 3028064648, - "io.out.B.27.grp": 1968058823, - "io.out.B.27.in": 2404058302, - "io.out.B.28": 2244046885, - "io.out.B.28.grp": 854425671, - "io.out.B.28.in": 296547902, - "io.out.B.29": 1319925778, - "io.out.B.29.grp": 3450278391, - "io.out.B.29.in": 3877250030, - "io.out.B.30": 199316920, - "io.out.B.30.grp": 789591852, - "io.out.B.30.in": 1702822021, - "io.out.B.31": 3483913511, - "io.out.B.31.grp": 3956157436, - "io.out.B.31.in": 418662869, - "io.out.B.32": 2474451532, - "io.out.B.32.grp": 647723016, - "io.out.B.32.in": 3724393953, - "io.out.B.33": 3849537462, - "io.out.B.33.grp": 391451874, - "io.out.B.33.in": 3982713563, - "io.out.B.34": 3254407075, - "io.out.B.34.grp": 2843244503, - "io.out.B.34.in": 4212653902, - "io.out.B.35": 2466416197, - "io.out.B.35.grp": 4160086303, - "io.out.B.35.in": 2895730342, - "io.out.B.36": 3336182599, - "io.out.B.36.grp": 86138415, - "io.out.B.36.in": 2943883190, - "io.out.B.37": 2740867820, - "io.out.B.37.grp": 4253016588, - "io.out.B.37.in": 1192268901, - "io.out.B.38": 1742035014, - "io.out.B.38.grp": 2941477954, - "io.out.B.38.in": 2503807547, - "io.out.B.39": 978988787, - "io.out.B.39.grp": 3719087886, - "io.out.B.39.in": 1997254807, - "io.out.B.40": 1746742638, - "io.out.B.40.grp": 3063405784, - "io.out.B.40.in": 2653591985, - "io.out.B.41": 794932571, - "io.out.B.41.grp": 1752154159, - "io.out.B.41.in": 2619389366, - "io.out.B.42": 26807293, - "io.out.B.42.grp": 4240526933, - "io.out.B.42.in": 2818566524, - "io.out.B.43": 3663585642, - "io.out.B.43.grp": 2342694638, - "io.out.B.43.in": 1763690359, - "io.out.B.44": 322230404, - "io.out.B.44.grp": 2839153252, - "io.out.B.44.in": 4220021773, - "io.out.B.45": 3938016766, - "io.out.B.45.grp": 3517224793, - "io.out.B.45.in": 1927978592, - "io.out.B.46": 3162997600, - "io.out.B.46.grp": 2472809036, - "io.out.B.46.in": 1364403237, - "io.out.B.47": 2377832989, - "io.out.B.47.grp": 2106029609, - "io.out.B.47.in": 3339255856, - "io.out.B.48": 1452216842, - "io.out.B.48.grp": 335479526, - "io.out.B.48.in": 3502387935, - "io.out.C": 1834304657, - "io.out.C.1": 4201528463, - "io.out.C.1.grp": 455066665, - "io.out.C.1.in": 2275234892, - "io.out.C.2": 4199162772, - "io.out.C.2.grp": 2840884275, - "io.out.C.2.in": 1121222871, - "io.out.C.3": 1180882361, - "io.out.C.3.grp": 2074779736, - "io.out.C.3.in": 2794964142, - "io.out.C.4": 2252889168, - "io.out.C.4.grp": 3809199894, - "io.out.C.4.in": 1992927473, - "io.out.C.5": 734082661, - "io.out.C.5.grp": 3764754710, - "io.out.C.5.in": 3485003032, - "io.out.C.6": 3986885615, - "io.out.C.6.grp": 2124251595, - "io.out.C.6.in": 2894676398, - "io.out.C.7": 968774388, - "io.out.C.7.grp": 3359305156, - "io.out.C.7.in": 2033807295, - "io.out.C.8": 2577465998, - "io.out.C.8.grp": 63303809, - "io.out.C.8.in": 1556352985, - "io.out.C.9": 521964464, - "io.out.C.9.grp": 2573708415, - "io.out.C.9.in": 2053874649, - "io.out.C.10": 3149968777, - "io.out.C.10.grp": 2521818095, - "io.out.C.10.in": 1581208054, - "io.out.C.11": 131893468, - "io.out.C.11.grp": 1081253398, - "io.out.C.11.in": 1679595919, - "io.out.C.12": 127357270, - "io.out.C.12.grp": 3032867290, - "io.out.C.12.in": 2413073891, - "io.out.C.13": 1561504733, - "io.out.C.13.grp": 4202713351, - "io.out.C.13.in": 1514202494, - "io.out.C.14": 1580577231, - "io.out.C.14.grp": 1930234704, - "io.out.C.14.in": 2441227385, - "io.out.C.15": 957408569, - "io.out.C.15.grp": 659977153, - "io.out.C.15.in": 2104230712, - "io.out.C.16": 2065349283, - "io.out.C.16.grp": 868122641, - "io.out.C.16.in": 2163783560, - "io.out.C.17": 557023414, - "io.out.C.17.grp": 367538536, - "io.out.C.17.in": 4004660673, - "io.out.C.18": 1905318077, - "io.out.C.18.grp": 4038723811, - "io.out.C.18.in": 2751933962, - "io.out.C.19": 2892620066, - "io.out.C.19.grp": 4033375752, - "io.out.C.19.in": 3293497313, - "io.out.C.20": 2743414952, - "io.out.C.20.grp": 217787153, - "io.out.C.20.in": 1204243592, - "io.out.C.21": 2835871407, - "io.out.C.21.grp": 1958418971, - "io.out.C.21.in": 2415746418, - "io.out.C.22": 4175677938, - "io.out.C.22.grp": 2408030367, - "io.out.C.22.in": 1426642726, - "io.out.C.23": 2231775083, - "io.out.C.23.grp": 2186368332, - "io.out.C.23.in": 842998053, - "io.out.C.24": 3655477950, - "io.out.C.24.grp": 2635695952, - "io.out.C.24.in": 1202253945, - "io.out.C.25": 3663392261, - "io.out.C.25.grp": 3637426052, - "io.out.C.25.in": 465600557, - "io.out.C.26": 645931368, - "io.out.C.26.grp": 2645386894, - "io.out.C.26.in": 4142076183, - "io.out.C.27": 1717118657, - "io.out.C.27.grp": 1574153052, - "io.out.C.27.in": 2263141301, - "io.out.C.28": 208962068, - "io.out.C.28.grp": 38069696, - "io.out.C.28.in": 1381257577, - "io.out.C.29": 1473202219, - "io.out.C.29.grp": 397660774, - "io.out.C.29.in": 3706102623, - "io.out.C.30": 229283729, - "io.out.C.30.grp": 1420448857, - "io.out.C.30.in": 2953716064, - "io.out.C.31": 3285032966, - "io.out.C.31.grp": 2612253912, - "io.out.C.31.in": 4175782321, - "io.out.C.32": 340316173, - "io.out.C.32.grp": 1254513772, - "io.out.C.32.in": 2583436101, - "io.out.C.33": 911385975, - "io.out.C.33.grp": 1608864054, - "io.out.C.33.in": 884204847, - "io.out.C.34": 824929178, - "io.out.C.34.grp": 100795418, - "io.out.C.34.in": 1052062627, - "io.out.C.35": 2267637492, - "io.out.C.35.grp": 2141495432, - "io.out.C.35.in": 3306411361, - "io.out.C.36": 396479718, - "io.out.C.36.grp": 3363811955, - "io.out.C.36.in": 742491418, - "io.out.C.37": 1652399981, - "io.out.C.37.grp": 2174874034, - "io.out.C.37.in": 589251627, - "io.out.C.38": 3013634023, - "io.out.C.38.grp": 4294943168, - "io.out.C.38.in": 2761528681, - "io.out.C.39": 3095118666, - "io.out.C.39.grp": 4245561007, - "io.out.C.39.in": 1468077878, - "io.out.C.40": 2667494111, - "io.out.C.40.grp": 344137587, - "io.out.C.40.in": 1075189786, - "io.out.C.41": 3944355042, - "io.out.C.41.grp": 1527922882, - "io.out.C.41.in": 2309944763, - "io.out.C.42": 2415058012, - "io.out.C.42.grp": 2935579913, - "io.out.C.42.in": 2509705872, - "io.out.C.43": 3776450771, - "io.out.C.43.grp": 1264551960, - "io.out.C.43.in": 1764732529, - "io.out.C.44": 3432060085, - "io.out.C.44.grp": 3294654490, - "io.out.C.44.in": 2150549411, - "io.out.C.45": 476863823, - "io.out.C.45.grp": 3814010693, - "io.out.C.45.in": 3241887724, - "io.out.C.46": 4266542825, - "io.out.C.46.grp": 408344880, - "io.out.C.46.in": 3963198809, - "io.out.C.47": 74518076, - "io.out.C.47.grp": 4185587110, - "io.out.C.47.in": 2872850463, - "io.out.C.48": 1340923955, - "io.out.C.48.grp": 1618704418, - "io.out.C.48.in": 2753494939, - "io.out.SC": 824967290, - "io.out.SC.1": 127156347, - "io.out.SC.1.grp": 3400007132, - "io.out.SC.1.in": 2313713973, - "io.out.SC.2": 3116595502, - "io.out.SC.2.grp": 4125784810, - "io.out.SC.2.in": 2662333171, - "io.out.SC.3": 2329452245, - "io.out.SC.3.grp": 3541556988, - "io.out.SC.3.in": 564827861, - "io.out.SC.4": 620925850, - "io.out.SC.4.grp": 1412565524, - "io.out.SC.4.in": 2693819325, - "io.out.SC.5": 4276211089, - "io.out.SC.5.grp": 3501537469, - "io.out.SC.5.in": 2214723348, - "io.out.SC.6": 2319915588, - "io.out.SC.6.grp": 1825436071, - "io.out.SC.6.in": 669681182, - "io.out.SC.7": 1512461371, - "io.out.SC.7.grp": 890115001, - "io.out.SC.7.in": 1605657408, - "io.out.SC.8": 206600357, - "io.out.SC.8.grp": 2446285040, - "io.out.SC.8.in": 1657396633, - "io.out.SC.9": 2808445079, - "io.out.SC.9.grp": 1092606714, - "io.out.SC.9.in": 1937415043, - "io.out.SC.10": 2877098137, - "io.out.SC.10.grp": 387066623, - "io.out.SC.10.in": 844959716, - "io.out.SC.11": 727138562, - "io.out.SC.11.grp": 2053642950, - "io.out.SC.11.in": 362618869, - "io.out.SC.12": 113020687, - "io.out.SC.12.grp": 3366989607, - "io.out.SC.12.in": 1097069468, - "io.out.SC.13": 820758437, - "io.out.SC.13.grp": 1275983237, - "io.out.SC.13.in": 1153716350, - "io.out.SC.14": 3804253630, - "io.out.SC.14.grp": 575240364, - "io.out.SC.14.in": 949165391, - "io.out.SC.15": 606792812, - "io.out.SC.15.grp": 3308937613, - "io.out.SC.15.in": 2473715990, - "io.out.SC.16": 169898402, - "io.out.SC.16.grp": 617350984, - "io.out.SC.16.in": 738266203, - "io.out.SC.17": 3825188760, - "io.out.SC.17.grp": 3002185775, - "io.out.SC.17.in": 2545802388, - "io.out.SC.18": 2519005253, - "io.out.SC.18.grp": 4171338952, - "io.out.SC.18.in": 1608027611, - "io.out.SC.19": 395584350, - "io.out.SC.19.grp": 2231207022, - "io.out.SC.19.in": 2059836685, - "io.out.SC.20": 1533944797, - "io.out.SC.20.grp": 3310159093, - "io.out.SC.20.in": 991387118, - "io.out.SC.21": 227756499, - "io.out.SC.21.grp": 4287014958, - "io.out.SC.21.in": 2597220173, - "io.out.SC.22": 783450764, - "io.out.SC.22.grp": 2162056738, - "io.out.SC.22.in": 2123752065, - "io.out.SC.23": 2027394634, - "io.out.SC.23.grp": 2565159062, - "io.out.SC.23.in": 2778354565, - "io.out.SC.24": 66178784, - "io.out.SC.24.grp": 272813098, - "io.out.SC.24.in": 2298106009, - "io.out.SC.25": 3726700525, - "io.out.SC.25.grp": 2229974984, - "io.out.SC.25.in": 3584143579, - "io.out.SC.26": 4260767910, - "io.out.SC.26.grp": 3408816746, - "io.out.SC.26.in": 1046750553, - "io.out.SC.27": 2976175763, - "io.out.SC.27.grp": 3780011184, - "io.out.SC.27.in": 1846992915, - "io.out.SC.28": 4215239962, - "io.out.SC.28.grp": 2263017687, - "io.out.SC.28.in": 153919948, - "io.out.SC.29": 2070190855, - "io.out.SC.29.grp": 3156957424, - "io.out.SC.29.in": 1306472915, - "io.out.SC.30": 684931777, - "io.out.SC.30.grp": 3752819350, - "io.out.SC.30.in": 1768276357, - "io.out.SC.31": 44589194, - "io.out.SC.31.grp": 773655741, - "io.out.SC.31.in": 559026438, - "io.out.SC.32": 2631073589, - "io.out.SC.32.grp": 3132329750, - "io.out.SC.32.in": 2675870213, - "io.out.USB": 1001034495, - "io.out.USB.1": 1531052283, - "io.out.USB.1.grp": 838845660, - "io.out.USB.1.in": 3444022783, - "io.out.USB.2": 3576156389, - "io.out.USB.2.grp": 3221601000, - "io.out.USB.2.in": 3476862587, - "io.out.USB.3": 172691000, - "io.out.USB.3.grp": 3625305953, - "io.out.USB.3.in": 1893813402, - "io.out.USB.4": 1708202138, - "io.out.USB.4.grp": 2366851446, - "io.out.USB.4.in": 3160166501, - "io.out.USB.5": 2411288004, - "io.out.USB.5.grp": 3004234119, - "io.out.USB.5.in": 3712556540, - "io.out.USB.6": 1640222814, - "io.out.USB.6.grp": 1067304652, - "io.out.USB.6.in": 1323748847, - "io.out.USB.7": 3790180677, - "io.out.USB.7.grp": 3628193509, - "io.out.USB.7.in": 1735966174, - "io.out.USB.8": 40690328, - "io.out.USB.8.grp": 4241607829, - "io.out.USB.8.in": 1386041742, - "io.out.USB.9": 1817373905, - "io.out.USB.9.grp": 3311772838, - "io.out.USB.9.in": 2477780053, - "io.out.USB.10": 2732816581, - "io.out.USB.10.grp": 3920419818, - "io.out.USB.10.in": 3930585541, - "io.out.USB.11": 1948871632, - "io.out.USB.11.grp": 4162161840, - "io.out.USB.11.in": 311927827, - "io.out.USB.12": 3022353010, - "io.out.USB.12.grp": 3625128670, - "io.out.USB.12.in": 2888295022, - "io.out.USB.13": 2217423684, - "io.out.USB.13.grp": 3777355108, - "io.out.USB.13.in": 1148700398, - "io.out.USB.14": 1433457299, - "io.out.USB.14.grp": 2962673218, - "io.out.USB.14.in": 1845991580, - "io.out.USB.15": 629194942, - "io.out.USB.15.grp": 4100392168, - "io.out.USB.15.in": 106420199, - "io.out.USB.16": 4119275525, - "io.out.USB.16.grp": 544382774, - "io.out.USB.16.in": 535280738, - "io.out.USB.17": 918721122, - "io.out.USB.17.grp": 3794249180, - "io.out.USB.17.in": 3090676477, - "io.out.USB.18": 113824121, - "io.out.USB.18.grp": 3056883450, - "io.out.USB.18.in": 3787956075, - "io.out.USB.19": 3637682675, - "io.out.USB.19.grp": 3636584768, - "io.out.USB.19.in": 2048384486, - "io.out.USB.20": 1424623505, - "io.out.USB.20.grp": 852058708, - "io.out.USB.20.in": 1010593737, - "io.out.USB.21": 640351548, - "io.out.USB.21.grp": 2131227895, - "io.out.USB.21.in": 344764527, - "io.out.USB.22": 4063749646, - "io.out.USB.22.grp": 615423448, - "io.out.USB.22.in": 4263266794, - "io.out.USB.23": 1916357064, - "io.out.USB.23.grp": 964921006, - "io.out.USB.23.in": 3530308970, - "io.out.USB.24": 1132224279, - "io.out.USB.24.grp": 2354205833, - "io.out.USB.24.in": 2885461800, - "io.out.USB.25": 3614660386, - "io.out.USB.25.grp": 2097290543, - "io.out.USB.25.in": 2488025563, - "io.out.USB.26": 2809566289, - "io.out.USB.26.grp": 688308848, - "io.out.USB.26.in": 2111583574, - "io.out.USB.27": 952211838, - "io.out.USB.27.grp": 809102086, - "io.out.USB.27.in": 1714187985, - "io.out.USB.28": 4106535677, - "io.out.USB.28.grp": 2253463073, - "io.out.USB.28.in": 1069331895, - "io.out.USB.29": 1256361591, - "io.out.USB.29.grp": 603963786, - "io.out.USB.29.in": 671895346, - "io.out.USB.30": 1145666400, - "io.out.USB.30.grp": 3503774873, - "io.out.USB.30.in": 2212608800, - "io.out.USB.31": 435203381, - "io.out.USB.31.grp": 2138589683, - "io.out.USB.31.in": 2899399310, - "io.out.USB.32": 1304315159, - "io.out.USB.32.grp": 200398125, - "io.out.USB.32.in": 1128390963, - "io.out.USB.33": 635756713, - "io.out.USB.33.grp": 3221174151, - "io.out.USB.33.in": 3987850675, - "io.out.USB.34": 4256637966, - "io.out.USB.34.grp": 2000153121, - "io.out.USB.34.in": 337730337, - "io.out.USB.35": 3253228355, - "io.out.USB.35.grp": 1921503643, - "io.out.USB.35.in": 2903632194, - "io.out.USB.36": 2579469984, - "io.out.USB.36.grp": 125524917, - "io.out.USB.36.in": 2206322119, - "io.out.USB.37": 3747385607, - "io.out.USB.37.grp": 3378948911, - "io.out.USB.37.in": 435272792, - "io.out.USB.38": 2737750036, - "io.out.USB.38.grp": 2009821321, - "io.out.USB.38.in": 1080118470, - "io.out.USB.39": 892925102, - "io.out.USB.39.grp": 211887395, - "io.out.USB.39.in": 3646020427, - "io.out.USB.40": 298775887, - "io.out.USB.40.grp": 518810962, - "io.out.USB.40.in": 1331467743, - "io.out.USB.41": 1659765626, - "io.out.USB.41.grp": 3993361848, - "io.out.USB.41.in": 2007779833, - "io.out.USB.42": 2237713384, - "io.out.USB.42.grp": 743892230, - "io.out.USB.42.in": 2436651892, - "io.out.USB.43": 3745496046, - "io.out.USB.43.grp": 592031340, - "io.out.USB.43.in": 2676782836, - "io.out.USB.44": 811355273, - "io.out.USB.44.grp": 3757230986, - "io.out.USB.44.in": 3374077366, - "io.out.USB.45": 2319801652, - "io.out.USB.45.grp": 4045607568, - "io.out.USB.45.in": 3781977933, - "io.out.USB.46": 3837945359, - "io.out.USB.46.grp": 3892456638, - "io.out.USB.46.in": 3137110728, - "io.out.USB.47": 634850296, - "io.out.USB.47.grp": 472584260, - "io.out.USB.47.in": 3545011319, - "io.out.USB.48": 1471429731, - "io.out.USB.48.grp": 3747919906, - "io.out.USB.48.in": 4074524689, - "io.out.CRD": 3426786410, - "io.out.CRD.1": 2785308055, - "io.out.CRD.1.grp": 3056661204, - "io.out.CRD.1.in": 2759415783, - "io.out.CRD.2": 4146045165, - "io.out.CRD.2.grp": 3054161955, - "io.out.CRD.2.in": 2302789976, - "io.out.CRD.3": 1107454342, - "io.out.CRD.3.grp": 1941615700, - "io.out.CRD.3.in": 3874470247, - "io.out.CRD.4": 847118580, - "io.out.CRD.4.grp": 2986038943, - "io.out.CRD.4.in": 1296494468, - "io.out.CRD.5": 2291583482, - "io.out.CRD.5.grp": 798930510, - "io.out.CRD.5.in": 719871341, - "io.out.CRD.6": 2591596384, - "io.out.CRD.6.grp": 1049783711, - "io.out.CRD.6.in": 3410667140, - "io.out.CRD.7": 3848131277, - "io.out.CRD.7.grp": 2125912331, - "io.out.CRD.7.in": 275628208, - "io.out.CRD.8": 903297254, - "io.out.CRD.8.grp": 1627821942, - "io.out.CRD.8.in": 3896226405, - "io.out.CRD.9": 3421647569, - "io.out.CRD.9.grp": 983908138, - "io.out.CRD.9.in": 3295683481, - "io.out.CRD.10": 3501014301, - "io.out.CRD.10.grp": 3985874309, - "io.out.CRD.10.in": 3883466397, - "io.out.CRD.11": 396264, - "io.out.CRD.11.grp": 3348791131, - "io.out.CRD.11.in": 1586058331, - "io.out.CRD.12": 831046522, - "io.out.CRD.12.grp": 3888522481, - "io.out.CRD.12.in": 672732630, - "io.out.CRD.13": 56738908, - "io.out.CRD.13.grp": 3736674231, - "io.out.CRD.13.in": 2695442774, - "io.out.CRD.14": 809493931, - "io.out.CRD.14.grp": 256875805, - "io.out.CRD.14.in": 2050579604, - "io.out.CRD.15": 1310897910, - "io.out.CRD.15.grp": 3330279411, - "io.out.CRD.15.in": 3779665391, - "io.out.CRD.16": 2073759837, - "io.out.CRD.16.grp": 2675928169, - "io.out.CRD.16.in": 2782476650, - "io.out.CRD.17": 989750634, - "io.out.CRD.17.grp": 3718797839, - "io.out.CRD.17.in": 258538213, - "io.out.CRD.18": 2161895089, - "io.out.CRD.18.grp": 3417273781, - "io.out.CRD.18.in": 3824769059, - "io.out.CRD.19": 3669890635, - "io.out.CRD.19.grp": 2760302219, - "io.out.CRD.19.in": 1258887614, - "io.out.CRD.20": 2263816818, - "io.out.CRD.20.grp": 1164988817, - "io.out.CRD.20.in": 1178688802, - "io.out.CRD.21": 808446599, - "io.out.CRD.21.grp": 2556396087, - "io.out.CRD.21.in": 3465659788, - "io.out.CRD.22": 271765701, - "io.out.CRD.22.grp": 1291503637, - "io.out.CRD.22.in": 136394545, - "io.out.CRD.23": 1748252411, - "io.out.CRD.23.grp": 1139269355, - "io.out.CRD.23.in": 2691781297, - "io.out.CRD.24": 293041228, - "io.out.CRD.24.grp": 2695807945, - "io.out.CRD.24.in": 3389110755, - "io.out.CRD.25": 158876737, - "io.out.CRD.25.grp": 2438920815, - "io.out.CRD.25.in": 1649486976, - "io.out.CRD.26": 2977661362, - "io.out.CRD.26.grp": 1278906765, - "io.out.CRD.26.in": 2615232517, - "io.out.CRD.27": 448562869, - "io.out.CRD.27.grp": 981796675, - "io.out.CRD.27.in": 875649418, - "io.out.CRD.28": 3938441254, - "io.out.CRD.28.grp": 2734983265, - "io.out.CRD.28.in": 1572981460, - "io.out.CRD.29": 1423811500, - "io.out.CRD.29.grp": 1504186055, - "io.out.CRD.29.in": 4128324697, - "io.out.CRD.30": 2469813917, - "io.out.CRD.30.grp": 327407000, - "io.out.CRD.30.in": 2851088413, - "io.out.CRD.31": 1032886888, - "io.out.CRD.31.grp": 665494638, - "io.out.CRD.31.in": 553629147, - "io.out.CRD.32": 1947361786, - "io.out.CRD.32.grp": 1404440068, - "io.out.CRD.32.in": 1787819094, - "io.out.CRD.33": 3320597980, - "io.out.CRD.33.grp": 1556695658, - "io.out.CRD.33.in": 1579147990, - "io.out.CRD.34": 1841870635, - "io.out.CRD.34.grp": 442479920, - "io.out.CRD.34.in": 934264340, - "io.out.CRD.35": 194572406, - "io.out.CRD.35.grp": 594533638, - "io.out.CRD.35.in": 515898479, - "io.out.CRD.36": 3188783581, - "io.out.CRD.36.grp": 1250924220, - "io.out.CRD.36.in": 3897551594, - "io.out.CRD.37": 2020910058, - "io.out.CRD.37.grp": 1486388738, - "io.out.CRD.37.in": 3521128805, - "io.out.CRD.38": 1045540145, - "io.out.CRD.38.grp": 681528488, - "io.out.CRD.38.in": 2708453795, - "io.out.CRD.39": 2554824651, - "io.out.CRD.39.grp": 1335277950, - "io.out.CRD.39.in": 2290087998, - "io.out.CRD.40": 585039982, - "io.out.CRD.40.grp": 2019863530, - "io.out.CRD.40.in": 1783046710, - "io.out.CRD.41": 4095808547, - "io.out.CRD.41.grp": 509992112, - "io.out.CRD.41.in": 2459364280, - "io.out.CRD.42": 875408369, - "io.out.CRD.42.grp": 955917022, - "io.out.CRD.42.in": 740774461, - "io.out.CRD.43": 70212559, - "io.out.CRD.43.grp": 941968740, - "io.out.CRD.43.in": 3296159933, - "io.out.CRD.44": 3580995840, - "io.out.CRD.44.grp": 748076610, - "io.out.CRD.44.in": 3993428063, - "io.out.CRD.45": 2776480341, - "io.out.CRD.45.grp": 774264040, - "io.out.CRD.45.in": 2253866532, - "io.out.CRD.46": 1971324846, - "io.out.CRD.46.grp": 842706742, - "io.out.CRD.46.in": 2682739881, - "io.out.CRD.47": 3066823137, - "io.out.CRD.47.grp": 2085058012, - "io.out.CRD.47.in": 943137582, - "io.out.CRD.48": 2261672762, - "io.out.CRD.48.grp": 655181562, - "io.out.CRD.48.in": 1640427504, - "io.out.CRD.49": 1490581920, - "io.out.CRD.49.grp": 967414080, - "io.out.CRD.49.in": 4195833461, - "io.out.CRD.50": 2940406919, - "io.out.CRD.50.grp": 2068253750, - "io.out.CRD.50.in": 2380802455, - "io.out.CRD.51": 2177514610, - "io.out.CRD.51.grp": 1687580380, - "io.out.CRD.51.in": 1693999393, - "io.out.CRD.52": 1472509392, - "io.out.CRD.52.grp": 1607853170, - "io.out.CRD.52.in": 1317556156, - "io.out.CRD.53": 3788238822, - "io.out.CRD.53.grp": 1760108760, - "io.out.CRD.53.in": 1108882492, - "io.out.CRD.54": 2983244417, - "io.out.CRD.54.grp": 2891980718, - "io.out.CRD.54.in": 464022670, - "io.out.CRD.55": 669115020, - "io.out.CRD.55.grp": 2813342580, - "io.out.CRD.55.in": 45636213, - "io.out.CRD.56": 31851847, - "io.out.CRD.56.grp": 1872436458, - "io.out.CRD.56.in": 742932208, - "io.out.CRD.57": 2489556960, - "io.out.CRD.57.grp": 1920494000, - "io.out.CRD.57.in": 366488959, - "io.out.CRD.58": 1516744379, - "io.out.CRD.58.grp": 2846577478, - "io.out.CRD.58.in": 3848821673, - "io.out.CRD.59": 3698451233, - "io.out.CRD.59.grp": 1733993388, - "io.out.CRD.59.in": 3430435364, - "io.out.CRD.60": 500613486, - "io.out.CRD.60.grp": 1157957110, - "io.out.CRD.60.in": 4266287414, - "io.out.CRD.61": 1958605603, - "io.out.CRD.61.grp": 2227581728, - "io.out.CRD.61.in": 2247797944, - "io.out.CRD.62": 876931825, - "io.out.CRD.62.grp": 1184508418, - "io.out.CRD.62.in": 1013619517, - "io.out.CRD.63": 3966515919, - "io.out.CRD.63.grp": 1338327740, - "io.out.CRD.63.in": 1411022781, - "io.out.CRD.64": 1129212416, - "io.out.CRD.64.grp": 2130080670, - "io.out.CRD.64.in": 2055905631, - "io.out.MOD": 3619320311, - "io.out.MOD.1": 4178448693, - "io.out.MOD.1.grp": 2826159993, - "io.out.MOD.1.in": 1472119554, - "io.out.MOD.2": 1233745218, - "io.out.MOD.2.grp": 3334483369, - "io.out.MOD.2.in": 3371513010, - "io.out.MOD.3": 2583195311, - "io.out.MOD.3.grp": 880004079, - "io.out.MOD.3.in": 623396564, - "io.out.MOD.4": 2054421305, - "io.out.MOD.4.grp": 1479973274, - "io.out.MOD.4.in": 1107358345, - "io.out.MOD.5": 2062334779, - "io.out.MOD.5.grp": 3493321157, - "io.out.MOD.5.in": 973058622, - "io.out.MOD.6": 1021501589, - "io.out.MOD.6.grp": 3188716288, - "io.out.MOD.6.in": 2438614499, - "io.out.MOD.7": 2640856255, - "io.out.MOD.7.grp": 480890421, - "io.out.MOD.7.in": 854739374, - "io.out.MOD.8": 3990961484, - "io.out.MOD.8.grp": 2747675744, - "io.out.MOD.8.in": 2784910147, - "io.out.MOD.9": 3999017625, - "io.out.MOD.9.grp": 2312263147, - "io.out.MOD.9.in": 2141010704, - "io.out.MOD.10": 745020984, - "io.out.MOD.10.grp": 1491236509, - "io.out.MOD.10.in": 1958630520, - "io.out.MOD.11": 4266190541, - "io.out.MOD.11.grp": 2969638887, - "io.out.MOD.11.in": 2624505590, - "io.out.MOD.12": 715509663, - "io.out.MOD.12.grp": 1840575177, - "io.out.MOD.12.in": 895368571, - "io.out.MOD.13": 4215746081, - "io.out.MOD.13.grp": 1656883539, - "io.out.MOD.13.in": 3146664443, - "io.out.MOD.14": 3394925958, - "io.out.MOD.14.grp": 3276867829, - "io.out.MOD.14.in": 3833511353, - "io.out.MOD.15": 2936355739, - "io.out.MOD.15.grp": 2988483679, - "io.out.MOD.15.in": 2083403082, - "io.out.MOD.16": 2136507128, - "io.out.MOD.16.grp": 1883032417, - "io.out.MOD.16.in": 2501788111, - "io.out.MOD.17": 3242429711, - "io.out.MOD.17.grp": 1762870987, - "io.out.MOD.17.in": 793663552, - "io.out.MOD.18": 2107036780, - "io.out.MOD.18.grp": 3228205677, - "io.out.MOD.18.in": 1480507934, - "io.out.MOD.19": 1671472358, - "io.out.MOD.19.grp": 1797676279, - "io.out.MOD.19.in": 4025366659, - "io.out.MOD.20": 4130071528, - "io.out.MOD.20.grp": 3353133857, - "io.out.MOD.20.in": 368419336, - "io.out.MOD.21": 619386141, - "io.out.MOD.21.grp": 2482722187, - "io.out.MOD.21.in": 2376415366, - "io.out.MOD.22": 1276632399, - "io.out.MOD.22.grp": 3243698749, - "io.out.MOD.22.in": 1452635915, - "io.out.MOD.23": 345426033, - "io.out.MOD.23.grp": 3395568807, - "io.out.MOD.23.in": 2982501259, - "io.out.MOD.24": 1092827958, - "io.out.MOD.24.grp": 2331161529, - "io.out.MOD.24.in": 2327135209, - "io.out.MOD.25": 2106485227, - "io.out.MOD.25.grp": 2588053987, - "io.out.MOD.25.in": 4066738970, - "io.out.MOD.26": 2696641704, - "io.out.MOD.26.grp": 3157685909, - "io.out.MOD.26.in": 1985308575, - "io.out.MOD.27": 1601840991, - "io.out.MOD.27.grp": 2282597119, - "io.out.MOD.27.in": 3766855184, - "io.out.MOD.28": 2621908508, - "io.out.MOD.28.grp": 2370322449, - "io.out.MOD.28.in": 3195352142, - "io.out.MOD.29": 3392998038, - "io.out.MOD.29.grp": 3032994939, - "io.out.MOD.29.in": 639988467, - "io.out.MOD.30": 1342710206, - "io.out.MOD.30.grp": 1229614334, - "io.out.MOD.30.in": 1747451942, - "io.out.MOD.31": 2118718163, - "io.out.MOD.31.grp": 943968404, - "io.out.MOD.31.in": 3765979752, - "io.out.MOD.32": 2988034881, - "io.out.MOD.32.grp": 1243100594, - "io.out.MOD.32.in": 2810722541, - "io.out.MOD.33": 2174409343, - "io.out.MOD.33.grp": 135982632, - "io.out.MOD.33.in": 559422829, - "io.out.MOD.34": 2987444496, - "io.out.MOD.34.grp": 1082429062, - "io.out.MOD.34.in": 4167582255, - "io.out.MOD.35": 3448879045, - "io.out.MOD.35.grp": 961828924, - "io.out.MOD.35.in": 1622683860, - "io.out.MOD.36": 4251070078, - "io.out.MOD.36.grp": 1114186074, - "io.out.MOD.36.in": 667424089, - "io.out.MOD.37": 3148056913, - "io.out.MOD.37.grp": 70632944, - "io.out.MOD.37.in": 2375549918, - "io.out.MOD.38": 4275623946, - "io.out.MOD.38.grp": 875480622, - "io.out.MOD.38.in": 1688749696, - "io.out.MOD.39": 1492580464, - "io.out.MOD.39.grp": 1029148612, - "io.out.MOD.39.in": 3438818565, - "io.out.MOD.40": 3962195283, - "io.out.MOD.40.grp": 361205605, - "io.out.MOD.40.in": 2768315707, - "io.out.MOD.41": 2517636926, - "io.out.MOD.41.grp": 591983327, - "io.out.MOD.41.in": 2091972797, - "io.out.MOD.42": 1524539148, - "io.out.MOD.42.grp": 473261025, - "io.out.MOD.42.in": 1663110968, - "io.out.MOD.43": 184835786, - "io.out.MOD.43.grp": 371892027, - "io.out.MOD.43.in": 1171332024, - "io.out.MOD.44": 3029837317, - "io.out.MOD.44.grp": 828088045, - "io.out.MOD.44.in": 474017114, - "io.out.MOD.45": 1690791248, - "io.out.MOD.45.grp": 707507815, - "io.out.MOD.45.in": 66126633, - "io.out.MOD.46": 429937811, - "io.out.MOD.46.grp": 525851465, - "io.out.MOD.46.in": 4016115620, - "io.out.MOD.47": 3548102396, - "io.out.MOD.47.grp": 405455075, - "io.out.MOD.47.in": 3608225363, - "io.out.MOD.48": 2203035199, - "io.out.MOD.48.grp": 842010997, - "io.out.MOD.48.in": 2827023093, - "io.out.MOD.49": 2975430309, - "io.out.MOD.49.grp": 483392495, - "io.out.MOD.49.in": 2419132784, - "io.out.MOD.50": 3022753028, - "io.out.MOD.50.grp": 3714891365, - "io.out.MOD.50.in": 1828709596, - "io.out.MOD.51": 3725678457, - "io.out.MOD.51.grp": 3943541727, - "io.out.MOD.51.in": 4105156722, - "io.out.MOD.52": 2732416699, - "io.out.MOD.52.grp": 3824059105, - "io.out.MOD.52.in": 2870988535, - "io.out.MOD.53": 2198019845, - "io.out.MOD.53.grp": 3724884027, - "io.out.MOD.53.in": 3184515959, - "io.out.MOD.54": 2895701450, - "io.out.MOD.54.grp": 4265496045, - "io.out.MOD.54.in": 3829378437, - "io.out.MOD.55": 751349183, - "io.out.MOD.55.grp": 4061011815, - "io.out.MOD.55.in": 4226794238, - "io.out.MOD.56": 1637815364, - "io.out.MOD.56.grp": 3878615625, - "io.out.MOD.56.in": 2002767715, - "io.out.MOD.57": 3413802827, - "io.out.MOD.57.grp": 3757848035, - "io.out.MOD.57.in": 2400183796, - "io.out.MOD.58": 4216382928, - "io.out.MOD.58.grp": 4198809717, - "io.out.MOD.58.in": 2961158954, - "io.out.MOD.59": 3109729898, - "io.out.MOD.59.grp": 3836824815, - "io.out.MOD.59.in": 3358575023, - "io.out.MOD.60": 1053534409, - "io.out.MOD.60.grp": 969422521, - "io.out.MOD.60.in": 4267343361, - "io.out.MOD.61": 3890506676, - "io.out.MOD.61.grp": 3904418847, - "io.out.MOD.61.in": 3601486263, - "io.out.MOD.62": 3362407798, - "io.out.MOD.62.grp": 1304259901, - "io.out.MOD.62.in": 3225072434, - "io.out.MOD.63": 1883420736, - "io.out.MOD.63.grp": 1067881971, - "io.out.MOD.63.in": 2827666610, - "io.out.MOD.64": 425611023, - "io.out.MOD.64.grp": 3806275857, - "io.out.MOD.64.in": 2182760768, - "io.out.REC": 2636679113, - "io.out.REC.1": 3842978457, - "io.out.REC.1.grp": 1523734777, - "io.out.REC.1.in": 3835510914, - "io.out.REC.2": 1569368908, - "io.out.REC.2.grp": 2584110633, - "io.out.REC.2.in": 1874723122, - "io.out.REC.3": 2651674378, - "io.out.REC.3.grp": 833400793, - "io.out.REC.3.in": 1583507682, - "io.out.REC.4": 3330854816, - "io.out.REC.4.grp": 1896523529, - "io.out.REC.4.in": 3921857426, - "io.out.AES": 4182222780, - "io.out.AES.1": 2965309633, - "io.out.AES.1.grp": 1458513255, - "io.out.AES.1.in": 4062584924, - "io.out.AES.2": 1830879235, - "io.out.AES.2.grp": 2445861864, - "io.out.AES.2.in": 2902240123, - "ch": 1890648377, - "ch.1": 2273546959, - "ch.1.in": 677855999, - "ch.1.in.set": 1728804897, - "ch.1.in.set.$mode": 3884397269, - "ch.1.in.set.srcauto": 550176263, - "ch.1.in.set.altsrc": 2472482281, - "ch.1.in.set.inv": 490602455, - "ch.1.in.set.trim": 2497045124, - "ch.1.in.set.bal": 2432440185, - "ch.1.in.set.$g": 2251094073, - "ch.1.in.set.$vph": 4008142735, - "ch.1.in.set.dlymode": 2199208692, - "ch.1.in.set.dly": 1787847147, - "ch.1.in.set.dlyon": 2746457908, - "ch.1.in.conn": 2514231238, - "ch.1.in.conn.grp": 1859269499, - "ch.1.in.conn.in": 2609376864, - "ch.1.in.conn.altgrp": 363167859, - "ch.1.in.conn.altin": 4010915178, - "ch.1.flt": 3926627202, - "ch.1.flt.lc": 2929645743, - "ch.1.flt.lcf": 1075735798, - "ch.1.flt.hc": 2188327316, - "ch.1.flt.hcf": 2688705929, - "ch.1.flt.tf": 373665339, - "ch.1.flt.mdl": 273598072, - "ch.1.flt.1": 1271131400, - "ch.1.flt.2": 421557355, - "ch.1.clink": 419515184, - "ch.1.col": 1514590652, - "ch.1.name": 3333248141, - "ch.1.icon": 1659205166, - "ch.1.led": 2316843554, - "ch.1.$col": 409426624, - "ch.1.$name": 2627760978, - "ch.1.$icon": 1552390190, - "ch.1.mute": 4111428088, - "ch.1.fdr": 950957506, - "ch.1.pan": 930861522, - "ch.1.wid": 708755617, - "ch.1.$solo": 126159095, - "ch.1.$sololed": 226370150, - "ch.1.solosafe": 3890718309, - "ch.1.mon": 309953196, - "ch.1.proc": 1737889104, - "ch.1.ptap": 1608963503, - "ch.1.$presolo": 2173253686, - "ch.1.peq": 2929249205, - "ch.1.peq.on": 2562523896, - "ch.1.peq.1g": 4040969736, - "ch.1.peq.1f": 2903035166, - "ch.1.peq.1q": 1783295480, - "ch.1.peq.2g": 3226159513, - "ch.1.peq.2f": 2110091308, - "ch.1.peq.2q": 4284266889, - "ch.1.peq.3g": 2508743349, - "ch.1.peq.3f": 2471659864, - "ch.1.peq.3q": 278188709, - "ch.1.gate": 1223451595, - "ch.1.gate.on": 2833102951, - "ch.1.gate.mdl": 1174189065, - "ch.1.gate.1": 2342526252, - "ch.1.gate.2": 1555290745, - "ch.1.gate.3": 3871081078, - "ch.1.gate.4": 2567433200, - "ch.1.gate.5": 3830149602, - "ch.1.gate.6": 67181375, - "ch.1.gate.7": 3745471593, - "ch.1.gate.8": 1771389350, - "ch.1.gate.9": 966330803, - "ch.1.gatesc": 1131739787, - "ch.1.gatesc.type": 2720352484, - "ch.1.gatesc.f": 2034911121, - "ch.1.gatesc.q": 1342377594, - "ch.1.gatesc.src": 2131807780, - "ch.1.gatesc.tap": 1285440647, - "ch.1.gatesc.$solo": 2192406985, - "ch.1.eq": 3682365741, - "ch.1.eq.on": 3390121431, - "ch.1.eq.mdl": 4025192951, - "ch.1.eq.mix": 12897014, - "ch.1.eq.$solo": 2183674395, - "ch.1.eq.$solobd": 1283740148, - "ch.1.eq.1": 3335670925, - "ch.1.eq.2": 4207977903, - "ch.1.eq.3": 2049835025, - "ch.1.eq.4": 2844525438, - "ch.1.eq.5": 349565323, - "ch.1.eq.6": 1154741424, - "ch.1.eq.7": 3023154975, - "ch.1.eq.8": 4153384516, - "ch.1.eq.9": 1636160222, - "ch.1.eq.10": 2819571104, - "ch.1.eq.11": 3960291542, - "ch.1.eq.12": 2875928945, - "ch.1.eq.13": 3335075020, - "ch.1.eq.14": 4129746693, - "ch.1.eq.15": 638639696, - "ch.1.eq.16": 4161172150, - "ch.1.eq.17": 1667522769, - "ch.1.eq.18": 2462213127, - "ch.1.eq.19": 46145125, - "ch.1.eq.20": 3961393375, - "ch.1.dyn": 3497984493, - "ch.1.dyn.on": 340149044, - "ch.1.dyn.mdl": 3572755062, - "ch.1.dyn.mix": 972843212, - "ch.1.dyn.gain": 1943776889, - "ch.1.dyn.1": 273355590, - "ch.1.dyn.2": 3763223709, - "ch.1.dyn.3": 2958293480, - "ch.1.dyn.4": 4031939617, - "ch.1.dyn.5": 3227019644, - "ch.1.dyn.6": 1383482342, - "ch.1.dyn.7": 620367165, - "ch.1.dyn.8": 3036007031, - "ch.1.dyn.9": 889083073, - "ch.1.dynxo": 1318079401, - "ch.1.dynxo.depth": 3053840875, - "ch.1.dynxo.type": 2997075851, - "ch.1.dynxo.f": 2231416967, - "ch.1.dynxo.$solo": 3797810001, - "ch.1.dynsc": 1847943810, - "ch.1.dynsc.type": 3583867739, - "ch.1.dynsc.f": 1370311885, - "ch.1.dynsc.q": 2833285648, - "ch.1.dynsc.src": 1504779363, - "ch.1.dynsc.tap": 3806114500, - "ch.1.dynsc.$solo": 214009038, - "ch.1.preins": 2676446098, - "ch.1.preins.on": 2763774466, - "ch.1.preins.ins": 3630252903, - "ch.1.preins.$stat": 228036603, - "ch.1.main": 3380535867, - "ch.1.main.1": 1534617525, - "ch.1.main.1.on": 914524254, - "ch.1.main.1.lvl": 3137631695, - "ch.1.main.1.pre": 737873012, - "ch.1.main.2": 362442520, - "ch.1.main.2.on": 1659282409, - "ch.1.main.2.lvl": 2388890104, - "ch.1.main.2.pre": 1487894683, - "ch.1.main.3": 4070716486, - "ch.1.main.3.on": 2699404392, - "ch.1.main.3.lvl": 2238152793, - "ch.1.main.3.pre": 749606058, - "ch.1.main.4": 2049194924, - "ch.1.main.4.on": 4133801331, - "ch.1.main.4.lvl": 115780098, - "ch.1.main.4.pre": 2162869041, - "ch.1.send": 393113562, - "ch.1.send.1": 3610419335, - "ch.1.send.1.on": 3907917653, - "ch.1.send.1.lvl": 3026994532, - "ch.1.send.1.pon": 1730348013, - "ch.1.send.1.ind": 182929928, - "ch.1.send.1.mode": 3005452411, - "ch.1.send.1.plink": 878657812, - "ch.1.send.1.pan": 2085150720, - "ch.1.send.2": 2905029453, - "ch.1.send.2.on": 4177232694, - "ch.1.send.2.lvl": 75411783, - "ch.1.send.2.pon": 345020414, - "ch.1.send.2.ind": 3271134723, - "ch.1.send.2.mode": 1788214360, - "ch.1.send.2.plink": 1124227927, - "ch.1.send.2.pan": 1102486475, - "ch.1.send.3": 2268603376, - "ch.1.send.3.on": 1117203018, - "ch.1.send.3.lvl": 3608825435, - "ch.1.send.3.pon": 1190663658, - "ch.1.send.3.ind": 4170538319, - "ch.1.send.3.mode": 1353253700, - "ch.1.send.3.plink": 2189825540, - "ch.1.send.3.pan": 433934775, - "ch.1.send.4": 1217180859, - "ch.1.send.4.on": 2039757418, - "ch.1.send.4.lvl": 2853326075, - "ch.1.send.4.pon": 3556734794, - "ch.1.send.4.ind": 462909423, - "ch.1.send.4.mode": 3282805220, - "ch.1.send.4.plink": 2229388964, - "ch.1.send.4.pan": 3806024471, - "ch.1.send.5": 2480143036, - "ch.1.send.5.on": 2246168296, - "ch.1.send.5.lvl": 4133806297, - "ch.1.send.5.pon": 2276254584, - "ch.1.send.5.ind": 3488209949, - "ch.1.send.5.mode": 2002662854, - "ch.1.send.5.plink": 2756923231, - "ch.1.send.5.pan": 2928207765, - "ch.1.send.6": 630053370, - "ch.1.send.6.on": 1183871407, - "ch.1.send.6.lvl": 906922782, - "ch.1.send.6.pon": 1118920231, - "ch.1.send.6.ind": 2760483906, - "ch.1.send.6.mode": 4243404289, - "ch.1.send.6.plink": 20352897, - "ch.1.send.6.pan": 4090927706, - "ch.1.send.7": 4203285165, - "ch.1.send.7.on": 2046819351, - "ch.1.send.7.lvl": 2239965574, - "ch.1.send.7.pon": 2517417919, - "ch.1.send.7.ind": 1140721434, - "ch.1.send.7.mode": 3960591513, - "ch.1.send.7.plink": 2864056903, - "ch.1.send.7.pan": 3274843010, - "ch.1.send.8": 3235902288, - "ch.1.send.8.on": 3051024407, - "ch.1.send.8.lvl": 3847822726, - "ch.1.send.8.pon": 2472946623, - "ch.1.send.8.ind": 3957203738, - "ch.1.send.8.mode": 1134717081, - "ch.1.send.8.plink": 4214610136, - "ch.1.send.8.pan": 2894202754, - "ch.1.send.9": 1462010910, - "ch.1.send.9.on": 1408144570, - "ch.1.send.9.lvl": 678214315, - "ch.1.send.9.pon": 4121274778, - "ch.1.send.9.ind": 2985402943, - "ch.1.send.9.mode": 157642676, - "ch.1.send.9.plink": 130011017, - "ch.1.send.9.pan": 3766553959, - "ch.1.send.10": 1399440225, - "ch.1.send.10.on": 4248498842, - "ch.1.send.10.lvl": 1901252170, - "ch.1.send.10.pon": 276757296, - "ch.1.send.10.ind": 265160395, - "ch.1.send.10.mode": 3965468853, - "ch.1.send.10.plink": 3967243908, - "ch.1.send.10.pan": 2829284803, - "ch.1.send.11": 699280430, - "ch.1.send.11.on": 3305083474, - "ch.1.send.11.lvl": 1367849906, - "ch.1.send.11.pon": 2985790872, - "ch.1.send.11.ind": 3003981011, - "ch.1.send.11.mode": 1069387298, - "ch.1.send.11.plink": 3369482692, - "ch.1.send.11.pan": 768807963, - "ch.1.send.12": 1517255637, - "ch.1.send.12.on": 111900410, - "ch.1.send.12.lvl": 606294698, - "ch.1.send.12.pon": 1135507152, - "ch.1.send.12.ind": 4036922475, - "ch.1.send.12.mode": 1577075370, - "ch.1.send.12.plink": 1484498824, - "ch.1.send.12.pan": 2815621667, - "ch.1.send.13": 885263490, - "ch.1.send.13.on": 4050000195, - "ch.1.send.13.lvl": 2102279563, - "ch.1.send.13.pon": 1580271313, - "ch.1.send.13.ind": 113878282, - "ch.1.send.13.mode": 1274808522, - "ch.1.send.13.plink": 3309429416, - "ch.1.send.13.pan": 1511429570, - "ch.1.send.14": 184622415, - "ch.1.send.14.on": 3683321179, - "ch.1.send.14.lvl": 2804101427, - "ch.1.send.14.pon": 1219237881, - "ch.1.send.14.ind": 4037568978, - "ch.1.send.14.mode": 1194657303, - "ch.1.send.14.plink": 1791803736, - "ch.1.send.14.pan": 793151770, - "ch.1.send.15": 3501598196, - "ch.1.send.15.on": 3403178701, - "ch.1.send.15.lvl": 1271938029, - "ch.1.send.15.pon": 2919378215, - "ch.1.send.15.ind": 3075135044, - "ch.1.send.15.mode": 463693523, - "ch.1.send.15.plink": 168325534, - "ch.1.send.15.pan": 682091596, - "ch.1.send.16": 1656748942, - "ch.1.send.16.on": 1455666056, - "ch.1.send.16.lvl": 3555430184, - "ch.1.send.16.pon": 4086544866, - "ch.1.send.16.ind": 1081143689, - "ch.1.send.16.mode": 3430772918, - "ch.1.send.16.plink": 2077139201, - "ch.1.send.16.pan": 4155455409, - "ch.1.send.MX1": 3824082655, - "ch.1.send.MX1.on": 1496927723, - "ch.1.send.MX1.lvl": 5879810, - "ch.1.send.MX1.pon": 2157687210, - "ch.1.send.MX1.ind": 1815755006, - "ch.1.send.MX1.mode": 1486060736, - "ch.1.send.MX1.plink": 4229398080, - "ch.1.send.MX1.pan": 4170371362, - "ch.1.send.MX2": 3295942797, - "ch.1.send.MX2.on": 583628469, - "ch.1.send.MX2.lvl": 4001861796, - "ch.1.send.MX2.pon": 653867672, - "ch.1.send.MX2.ind": 1622279524, - "ch.1.send.MX2.mode": 813392306, - "ch.1.send.MX2.plink": 1300261218, - "ch.1.send.MX2.pan": 1505136936, - "ch.1.send.MX3": 1951209267, - "ch.1.send.MX3.on": 2602134069, - "ch.1.send.MX3.lvl": 263387605, - "ch.1.send.MX3.pon": 2542347686, - "ch.1.send.MX3.ind": 1449257994, - "ch.1.send.MX3.mode": 2953517748, - "ch.1.send.MX3.plink": 256918836, - "ch.1.send.MX3.pan": 1342829118, - "ch.1.send.MX4": 3311964132, - "ch.1.send.MX4.on": 3030995898, - "ch.1.send.MX4.lvl": 30590832, - "ch.1.send.MX4.pon": 2423722132, - "ch.1.send.MX4.ind": 3281559216, - "ch.1.send.MX4.mode": 1435630950, - "ch.1.send.MX4.plink": 4565590, - "ch.1.send.MX4.pan": 3902397732, - "ch.1.send.MX5": 355961305, - "ch.1.send.MX5.on": 3707339028, - "ch.1.send.MX5.lvl": 3753988266, - "ch.1.send.MX5.pon": 2136214642, - "ch.1.send.MX5.ind": 1689765254, - "ch.1.send.MX5.mode": 752783720, - "ch.1.send.MX5.plink": 1087310776, - "ch.1.send.MX5.pan": 4041435082, - "ch.1.send.MX6": 1706189482, - "ch.1.send.MX6.on": 4136203417, - "ch.1.send.MX6.lvl": 372014515, - "ch.1.send.MX6.pon": 694649120, - "ch.1.send.MX6.ind": 1558548684, - "ch.1.send.MX6.mode": 804015706, - "ch.1.send.MX6.plink": 358341850, - "ch.1.send.MX6.pan": 1475175408, - "ch.1.send.MX7": 2799024285, - "ch.1.send.MX7.on": 2933480990, - "ch.1.send.MX7.lvl": 4133388966, - "ch.1.send.MX7.pon": 2353109070, - "ch.1.send.MX7.ind": 1325603026, - "ch.1.send.MX7.mode": 1318822748, - "ch.1.send.MX7.plink": 4007109740, - "ch.1.send.MX7.pan": 1077567686, - "ch.1.send.MX8": 4138766622, - "ch.1.send.MX8.on": 946441128, - "ch.1.send.MX8.lvl": 4274958168, - "ch.1.send.MX8.pon": 2400521532, - "ch.1.send.MX8.ind": 3208694296, - "ch.1.send.MX8.mode": 1529639950, - "ch.1.send.MX8.plink": 1604887438, - "ch.1.send.MX8.pan": 4213919692, - "ch.1.tapwid": 2046254576, - "ch.1.postins": 1843894099, - "ch.1.postins.on": 1909955855, - "ch.1.postins.mode": 1910818036, - "ch.1.postins.ins": 4018337451, - "ch.1.postins.w": 3453914209, - "ch.1.postins.$stat": 3539197674, - "ch.1.tags": 618174085, - "ch.1.$fdr": 2118530164, - "ch.1.$mute": 646274259, - "ch.1.$muteovr": 1106526407, - "ch.2": 3736617228, - "ch.2.in": 899764372, - "ch.2.in.set": 608998290, - "ch.2.in.set.$mode": 1430623240, - "ch.2.in.set.srcauto": 2349163417, - "ch.2.in.set.altsrc": 1039990803, - "ch.2.in.set.inv": 2618316264, - "ch.2.in.set.trim": 1680701619, - "ch.2.in.set.bal": 1750219134, - "ch.2.in.set.$g": 1591107110, - "ch.2.in.set.$vph": 3055284608, - "ch.2.in.set.dlymode": 979357487, - "ch.2.in.set.dly": 1231941628, - "ch.2.in.set.dlyon": 2230757344, - "ch.2.in.conn": 3843916277, - "ch.2.in.conn.grp": 1654380771, - "ch.2.in.conn.in": 3722887320, - "ch.2.in.conn.altgrp": 693508712, - "ch.2.in.conn.altin": 2067995777, - "ch.2.flt": 1442940377, - "ch.2.flt.lc": 2000922146, - "ch.2.flt.lcf": 1957761139, - "ch.2.flt.hc": 3369288977, - "ch.2.flt.hcf": 3989641996, - "ch.2.flt.tf": 3362050494, - "ch.2.flt.mdl": 3260594421, - "ch.2.flt.1": 48971661, - "ch.2.flt.2": 1388775638, - "ch.2.clink": 3838819809, - "ch.2.col": 3604956543, - "ch.2.name": 1858287899, - "ch.2.icon": 2944159187, - "ch.2.led": 2801762745, - "ch.2.$col": 1758457168, - "ch.2.$name": 3655738499, - "ch.2.$icon": 2444662375, - "ch.2.mute": 3785696643, - "ch.2.fdr": 125312537, - "ch.2.pan": 4188399657, - "ch.2.wid": 1039554666, - "ch.2.$solo": 2374811306, - "ch.2.$sololed": 3780080708, - "ch.2.solosafe": 3385278899, - "ch.2.mon": 1352873583, - "ch.2.proc": 3647830061, - "ch.2.ptap": 635846522, - "ch.2.$presolo": 2297772118, - "ch.2.peq": 2861745478, - "ch.2.peq.on": 1586389093, - "ch.2.peq.1g": 959377525, - "ch.2.peq.1f": 1761749659, - "ch.2.peq.1q": 2969226085, - "ch.2.peq.2g": 2264606492, - "ch.2.peq.2f": 3246133929, - "ch.2.peq.2q": 3064257548, - "ch.2.peq.3g": 3518874952, - "ch.2.peq.3f": 1252961221, - "ch.2.peq.3q": 3514529080, - "ch.2.gate": 3842350544, - "ch.2.gate.on": 3262594956, - "ch.2.gate.mdl": 649230724, - "ch.2.gate.1": 3082459263, - "ch.2.gate.2": 219931938, - "ch.2.gate.3": 1530920725, - "ch.2.gate.4": 2500665339, - "ch.2.gate.5": 1932671417, - "ch.2.gate.6": 721998444, - "ch.2.gate.7": 2327291186, - "ch.2.gate.8": 3633236453, - "ch.2.gate.9": 817071080, - "ch.2.gatesc": 671937376, - "ch.2.gatesc.type": 3056058756, - "ch.2.gatesc.f": 2008694833, - "ch.2.gatesc.q": 184649178, - "ch.2.gatesc.src": 3212003012, - "ch.2.gatesc.tap": 4097723687, - "ch.2.gatesc.$solo": 1307170199, - "ch.2.eq": 2277681846, - "ch.2.eq.on": 2432275536, - "ch.2.eq.mdl": 2936377240, - "ch.2.eq.mix": 3517631857, - "ch.2.eq.$solo": 326355200, - "ch.2.eq.$solobd": 3676413543, - "ch.2.eq.1": 4172925698, - "ch.2.eq.2": 954798880, - "ch.2.eq.3": 13111958, - "ch.2.eq.4": 686944585, - "ch.2.eq.5": 1354571772, - "ch.2.eq.6": 2028783263, - "ch.2.eq.7": 860582192, - "ch.2.eq.8": 2205544483, - "ch.2.eq.9": 3714826409, - "ch.2.eq.10": 393718727, - "ch.2.eq.11": 1739018873, - "ch.2.eq.12": 797016990, - "ch.2.eq.13": 1471177283, - "ch.2.eq.14": 1871686946, - "ch.2.eq.15": 2544557015, - "ch.2.eq.16": 3114304601, - "ch.2.eq.17": 3830100734, - "ch.2.eq.18": 204050912, - "ch.2.eq.19": 3294157954, - "ch.2.eq.20": 2050494056, - "ch.2.dyn": 2377551742, - "ch.2.dyn.on": 46102761, - "ch.2.dyn.mdl": 3908644651, - "ch.2.dyn.mix": 2372085953, - "ch.2.dyn.gain": 501432670, - "ch.2.dyn.1": 1589946515, - "ch.2.dyn.2": 921220992, - "ch.2.dyn.3": 4191156789, - "ch.2.dyn.4": 3790237636, - "ch.2.dyn.5": 426881673, - "ch.2.dyn.6": 1803278323, - "ch.2.dyn.7": 778077920, - "ch.2.dyn.8": 2794571546, - "ch.2.dyn.9": 1310080804, - "ch.2.dynxo": 2676609116, - "ch.2.dynxo.depth": 929431527, - "ch.2.dynxo.type": 840998379, - "ch.2.dynxo.f": 958005474, - "ch.2.dynxo.$solo": 1900088994, - "ch.2.dynsc": 353196431, - "ch.2.dynsc.type": 2324613851, - "ch.2.dynsc.f": 1486178088, - "ch.2.dynsc.q": 1517949381, - "ch.2.dynsc.src": 2824209542, - "ch.2.dynsc.tap": 3511202628, - "ch.2.dynsc.$solo": 1498571443, - "ch.2.preins": 274526179, - "ch.2.preins.on": 1563247489, - "ch.2.preins.ins": 2466421900, - "ch.2.preins.$stat": 2570237375, - "ch.2.main": 949053134, - "ch.2.main.1": 666170008, - "ch.2.main.1.on": 3770751666, - "ch.2.main.1.lvl": 3158261283, - "ch.2.main.1.pre": 1430968832, - "ch.2.main.2": 3652585781, - "ch.2.main.2.on": 3140329896, - "ch.2.main.2.lvl": 3937450777, - "ch.2.main.2.pre": 653742570, - "ch.2.main.3": 596064787, - "ch.2.main.3.on": 672937129, - "ch.2.main.3.lvl": 4086976824, - "ch.2.main.3.pre": 3185960283, - "ch.2.main.4": 4091019481, - "ch.2.main.4.on": 817835248, - "ch.2.main.4.lvl": 3309132385, - "ch.2.main.4.pre": 3304506930, - "ch.2.send": 3598100874, - "ch.2.send.1": 2552920951, - "ch.2.send.1.on": 2032681645, - "ch.2.send.1.lvl": 2913363484, - "ch.2.send.1.pon": 3538517557, - "ch.2.send.1.ind": 790721936, - "ch.2.send.1.mode": 2257918723, - "ch.2.send.1.plink": 4053266138, - "ch.2.send.1.pan": 3855530520, - "ch.2.send.2": 4005781597, - "ch.2.send.2.on": 1853205343, - "ch.2.send.2.lvl": 788060526, - "ch.2.send.2.pon": 4053168087, - "ch.2.send.2.ind": 2423502322, - "ch.2.send.2.mode": 3901236337, - "ch.2.send.2.plink": 483961616, - "ch.2.send.2.pan": 4055659530, - "ch.2.send.3": 1189027232, - "ch.2.send.3.on": 1302921399, - "ch.2.send.3.lvl": 841754278, - "ch.2.send.3.pon": 3994434975, - "ch.2.send.3.ind": 2879862330, - "ch.2.send.3.mode": 1399511993, - "ch.2.send.3.plink": 692167146, - "ch.2.send.3.pan": 3929766242, - "ch.2.send.4": 2326949643, - "ch.2.send.4.on": 1142579941, - "ch.2.send.4.lvl": 3633870036, - "ch.2.send.4.pon": 1207521149, - "ch.2.send.4.ind": 4196243480, - "ch.2.send.4.mode": 1371130315, - "ch.2.send.4.plink": 3738514795, - "ch.2.send.4.pan": 450177936, - "ch.2.send.5": 3516429260, - "ch.2.send.5.on": 1638417783, - "ch.2.send.5.lvl": 2435538662, - "ch.2.send.5.pon": 3890678367, - "ch.2.send.5.ind": 1068519546, - "ch.2.send.5.mode": 2548828665, - "ch.2.send.5.plink": 3347682585, - "ch.2.send.5.pan": 3640815138, - "ch.2.send.6": 1667645354, - "ch.2.send.6.on": 1486224271, - "ch.2.send.6.lvl": 2635337086, - "ch.2.send.6.pon": 3811260103, - "ch.2.send.6.ind": 915353762, - "ch.2.send.6.mode": 3732628065, - "ch.2.send.6.plink": 498768059, - "ch.2.send.6.pan": 3746632442, - "ch.2.send.7": 3146027261, - "ch.2.send.7.on": 1124173192, - "ch.2.send.7.lvl": 2927930233, - "ch.2.send.7.pon": 3398080728, - "ch.2.send.7.ind": 218075837, - "ch.2.send.7.mode": 3040608358, - "ch.2.send.7.plink": 2189370974, - "ch.2.send.7.pan": 4134575349, - "ch.2.send.8": 4284108352, - "ch.2.send.8.on": 4278544364, - "ch.2.send.8.lvl": 2139330045, - "ch.2.send.8.pon": 2696696660, - "ch.2.send.8.ind": 1225300665, - "ch.2.send.8.mode": 2697740514, - "ch.2.send.8.plink": 3791710166, - "ch.2.send.8.pan": 932679457, - "ch.2.send.9": 2520620334, - "ch.2.send.9.on": 4092640061, - "ch.2.send.9.lvl": 4285458764, - "ch.2.send.9.pon": 430145541, - "ch.2.send.9.ind": 3186869792, - "ch.2.send.9.mode": 1703908435, - "ch.2.send.9.plink": 3791513584, - "ch.2.send.9.pan": 1186915304, - "ch.2.send.10": 298887281, - "ch.2.send.10.on": 3529821049, - "ch.2.send.10.lvl": 3292329121, - "ch.2.send.10.pon": 2677331131, - "ch.2.send.10.ind": 3233295840, - "ch.2.send.10.mode": 1839979462, - "ch.2.send.10.plink": 3229233747, - "ch.2.send.10.pan": 997805304, - "ch.2.send.11": 1756620254, - "ch.2.send.11.on": 3538270669, - "ch.2.send.11.lvl": 1138594541, - "ch.2.send.11.pon": 1710339623, - "ch.2.send.11.ind": 3210933572, - "ch.2.send.11.mode": 180568994, - "ch.2.send.11.plink": 3085447317, - "ch.2.send.11.pan": 2156739404, - "ch.2.send.12": 2628252901, - "ch.2.send.12.on": 1546494519, - "ch.2.send.12.lvl": 3462776471, - "ch.2.send.12.pon": 4016872893, - "ch.2.send.12.ind": 1239442894, - "ch.2.send.12.mode": 1297076306, - "ch.2.send.12.plink": 3518782087, - "ch.2.send.12.pan": 4149288694, - "ch.2.send.13": 4102042162, - "ch.2.send.13.on": 2462880043, - "ch.2.send.13.lvl": 399795555, - "ch.2.send.13.pon": 4121656969, - "ch.2.send.13.ind": 2119118050, - "ch.2.send.13.mode": 618879335, - "ch.2.send.13.plink": 303991946, - "ch.2.send.13.pan": 3675327978, - "ch.2.send.14": 1264321439, - "ch.2.send.14.on": 4123864452, - "ch.2.send.14.lvl": 2029324588, - "ch.2.send.14.pon": 1485455366, - "ch.2.send.14.ind": 125452789, - "ch.2.send.14.mode": 250853304, - "ch.2.send.14.plink": 3783012220, - "ch.2.send.14.pan": 1352970445, - "ch.2.send.15": 2402238692, - "ch.2.send.15.on": 3954063330, - "ch.2.send.15.lvl": 48651938, - "ch.2.send.15.pon": 518784360, - "ch.2.send.15.ind": 23133219, - "ch.2.send.15.mode": 22235970, - "ch.2.send.15.plink": 2432736599, - "ch.2.send.15.pan": 2597434987, - "ch.2.send.16": 556078718, - "ch.2.send.16.on": 1629588903, - "ch.2.send.16.lvl": 561624807, - "ch.2.send.16.pon": 3293942317, - "ch.2.send.16.ind": 1962874750, - "ch.2.send.16.mode": 2034880302, - "ch.2.send.16.plink": 214561592, - "ch.2.send.16.pan": 2846953126, - "ch.2.send.MX1": 686339832, - "ch.2.send.MX1.on": 3376399828, - "ch.2.send.MX1.lvl": 3074564210, - "ch.2.send.MX1.pon": 1432898104, - "ch.2.send.MX1.ind": 2469844127, - "ch.2.send.MX1.mode": 1841929209, - "ch.2.send.MX1.plink": 2402901265, - "ch.2.send.MX1.pan": 231353539, - "ch.2.send.MX2": 113655914, - "ch.2.send.MX2.on": 3752828562, - "ch.2.send.MX2.lvl": 3111422568, - "ch.2.send.MX2.pon": 1044290098, - "ch.2.send.MX2.ind": 161381729, - "ch.2.send.MX2.mode": 88377783, - "ch.2.send.MX2.plink": 3098813007, - "ch.2.send.MX2.pan": 3297320117, - "ch.2.send.MX3": 753332076, - "ch.2.send.MX3.on": 102732306, - "ch.2.send.MX3.lvl": 3298065854, - "ch.2.send.MX3.pon": 1112465748, - "ch.2.send.MX3.ind": 4283351867, - "ch.2.send.MX3.mode": 450166157, - "ch.2.send.MX3.plink": 507791077, - "ch.2.send.MX3.pan": 3134605087, - "ch.2.send.MX4": 1555699739, - "ch.2.send.MX4.on": 1821342573, - "ch.2.send.MX4.lvl": 3438149828, - "ch.2.send.MX4.pon": 1606516158, - "ch.2.send.MX4.ind": 2591297965, - "ch.2.send.MX4.mode": 1791115803, - "ch.2.send.MX4.plink": 17975171, - "ch.2.send.MX4.pan": 2573580065, - "ch.2.send.MX5": 2196050438, - "ch.2.send.MX5.on": 1165973803, - "ch.2.send.MX5.lvl": 3202317738, - "ch.2.send.MX5.pon": 1417980304, - "ch.2.send.MX5.ind": 231881591, - "ch.2.send.MX5.mode": 34944529, - "ch.2.send.MX5.plink": 3215772025, - "ch.2.send.MX5.pan": 101747451, - "ch.2.send.MX6": 2830686925, - "ch.2.send.MX6.on": 3052379302, - "ch.2.send.MX6.lvl": 3075759552, - "ch.2.send.MX6.pon": 714179626, - "ch.2.send.MX6.ind": 100928281, - "ch.2.send.MX6.mode": 82320111, - "ch.2.send.MX6.plink": 373265623, - "ch.2.send.MX6.pan": 3269965485, - "ch.2.send.MX7": 1717780602, - "ch.2.send.MX7.on": 476022305, - "ch.2.send.MX7.lvl": 2407107030, - "ch.2.send.MX7.pon": 528606796, - "ch.2.send.MX7.ind": 3656307347, - "ch.2.send.MX7.mode": 4117850533, - "ch.2.send.MX7.plink": 64318797, - "ch.2.send.MX7.pan": 3211437367, - "ch.2.send.MX8": 3023505697, - "ch.2.send.MX8.on": 4073677823, - "ch.2.send.MX8.lvl": 3031005180, - "ch.2.send.MX8.pon": 1347333334, - "ch.2.send.MX8.ind": 2520000325, - "ch.2.send.MX8.mode": 1882217523, - "ch.2.send.MX8.plink": 3061592427, - "ch.2.send.MX8.pan": 271665241, - "ch.2.tapwid": 1764937919, - "ch.2.postins": 4085064496, - "ch.2.postins.on": 1768803984, - "ch.2.postins.mode": 3722468779, - "ch.2.postins.ins": 3745346732, - "ch.2.postins.w": 2977095166, - "ch.2.postins.$stat": 3152744642, - "ch.2.tags": 2575733563, - "ch.2.$fdr": 3416343091, - "ch.2.$mute": 1764703364, - "ch.2.$muteovr": 98122192, - "ch.3": 721408793, - "ch.3.in": 3504848956, - "ch.3.in.set": 2836764784, - "ch.3.in.set.$mode": 4067175846, - "ch.3.in.set.srcauto": 331349838, - "ch.3.in.set.altsrc": 3209665621, - "ch.3.in.set.inv": 971098192, - "ch.3.in.set.trim": 3275516523, - "ch.3.in.set.bal": 3313541014, - "ch.3.in.set.$g": 3165073422, - "ch.3.in.set.$vph": 1397595912, - "ch.3.in.set.dlymode": 3623653749, - "ch.3.in.set.dly": 3995003492, - "ch.3.in.set.dlyon": 1118281746, - "ch.3.in.conn": 1448377559, - "ch.3.in.conn.grp": 2875804902, - "ch.3.in.conn.in": 2914067989, - "ch.3.in.conn.altgrp": 1272016770, - "ch.3.in.conn.altin": 149358139, - "ch.3.flt": 2437879329, - "ch.3.flt.lc": 2078329639, - "ch.3.flt.lcf": 242849726, - "ch.3.flt.hc": 2958281500, - "ch.3.flt.hcf": 1918910065, - "ch.3.flt.tf": 3804452451, - "ch.3.flt.mdl": 3738387184, - "ch.3.flt.1": 490781696, - "ch.3.flt.2": 3949171987, - "ch.3.clink": 3021524227, - "ch.3.col": 2987644439, - "ch.3.name": 1697368086, - "ch.3.icon": 1228785886, - "ch.3.led": 3795261697, - "ch.3.$col": 3400599576, - "ch.3.$name": 404268486, - "ch.3.$icon": 3111489856, - "ch.3.mute": 44948235, - "ch.3.fdr": 3760910689, - "ch.3.pan": 3730650225, - "ch.3.wid": 2193769730, - "ch.3.$solo": 713258764, - "ch.3.$sololed": 1578629821, - "ch.3.solosafe": 3805557385, - "ch.3.mon": 1767237383, - "ch.3.proc": 2044598050, - "ch.3.ptap": 810530239, - "ch.3.$presolo": 2494599241, - "ch.3.peq": 98455038, - "ch.3.peq.on": 2312053744, - "ch.3.peq.1g": 74458240, - "ch.3.peq.1f": 1047228038, - "ch.3.peq.1q": 3686414576, - "ch.3.peq.2g": 2981753361, - "ch.3.peq.2f": 2360521188, - "ch.3.peq.2q": 3950476417, - "ch.3.peq.3g": 2801083341, - "ch.3.peq.3f": 2137909392, - "ch.3.peq.3q": 2628301629, - "ch.3.gate": 3994887363, - "ch.3.gate.on": 2746646703, - "ch.3.gate.mdl": 2572655536, - "ch.3.gate.1": 284776292, - "ch.3.gate.2": 973364913, - "ch.3.gate.3": 1767998990, - "ch.3.gate.4": 2657126520, - "ch.3.gate.5": 1593619066, - "ch.3.gate.6": 2304530871, - "ch.3.gate.7": 3160726561, - "ch.3.gate.8": 3965969278, - "ch.3.gate.9": 381709003, - "ch.3.gatesc": 505706995, - "ch.3.gatesc.type": 2165990672, - "ch.3.gatesc.f": 1102374485, - "ch.3.gatesc.q": 3574444310, - "ch.3.gatesc.src": 916185064, - "ch.3.gatesc.tap": 1829316963, - "ch.3.gatesc.$solo": 2310603223, - "ch.3.eq": 2197546510, - "ch.3.eq.on": 1646825095, - "ch.3.eq.mdl": 2536275975, - "ch.3.eq.mix": 2575553254, - "ch.3.eq.$solo": 706336911, - "ch.3.eq.$solobd": 1104025704, - "ch.3.eq.1": 763020605, - "ch.3.eq.2": 1380454143, - "ch.3.eq.3": 3530488001, - "ch.3.eq.4": 4248897934, - "ch.3.eq.5": 2103319419, - "ch.3.eq.6": 2989859840, - "ch.3.eq.7": 449990415, - "ch.3.eq.8": 1252327316, - "ch.3.eq.9": 146987566, - "ch.3.eq.10": 1320734608, - "ch.3.eq.11": 2123388966, - "ch.3.eq.12": 62024225, - "ch.3.eq.13": 863992540, - "ch.3.eq.14": 2661729717, - "ch.3.eq.15": 3463698016, - "ch.3.eq.16": 2358347974, - "ch.3.eq.17": 249797313, - "ch.3.eq.18": 973777751, - "ch.3.eq.19": 2849502805, - "ch.3.eq.20": 1493106415, - "ch.3.dyn": 687997894, - "ch.3.dyn.on": 899551903, - "ch.3.dyn.mdl": 3055840725, - "ch.3.dyn.mix": 1531703039, - "ch.3.dyn.gain": 4211870151, - "ch.3.dyn.1": 832128749, - "ch.3.dyn.2": 4277542454, - "ch.3.dyn.3": 3517276251, - "ch.3.dyn.4": 251777442, - "ch.3.dyn.5": 3786468279, - "ch.3.dyn.6": 866588237, - "ch.3.dyn.7": 106122646, - "ch.3.dyn.8": 3550382140, - "ch.3.dyn.9": 374014210, - "ch.3.dynxo": 1835600442, - "ch.3.dynxo.depth": 1034067205, - "ch.3.dynxo.type": 3530099583, - "ch.3.dynxo.f": 1717082820, - "ch.3.dynxo.$solo": 3599441235, - "ch.3.dynsc": 1289222209, - "ch.3.dynsc.type": 1093300260, - "ch.3.dynsc.f": 811600158, - "ch.3.dynsc.q": 2277036987, - "ch.3.dynsc.src": 3042913204, - "ch.3.dynsc.tap": 4233084723, - "ch.3.dynsc.$solo": 590106492, - "ch.3.preins": 2249992753, - "ch.3.preins.on": 3700275603, - "ch.3.preins.ins": 143533038, - "ch.3.preins.$stat": 3590026885, - "ch.3.main": 93629096, - "ch.3.main.1": 1182140830, - "ch.3.main.1.on": 30602661, - "ch.3.main.1.lvl": 576065300, - "ch.3.main.1.pre": 3981059567, - "ch.3.main.2": 426689963, - "ch.3.main.2.on": 2990950088, - "ch.3.main.2.lvl": 4056181305, - "ch.3.main.2.pre": 504223242, - "ch.3.main.3": 4154873357, - "ch.3.main.3.on": 2157973662, - "ch.3.main.3.lvl": 2770550927, - "ch.3.main.3.pre": 208120244, - "ch.3.main.4": 3394189831, - "ch.3.main.4.on": 743765856, - "ch.3.main.4.lvl": 3973588977, - "ch.3.main.4.pre": 3256795458, - "ch.3.send": 1938657615, - "ch.3.send.1": 4213045170, - "ch.3.send.1.on": 1801463275, - "ch.3.send.1.lvl": 987892218, - "ch.3.send.1.pon": 3769449035, - "ch.3.send.1.ind": 2707222630, - "ch.3.send.1.mode": 4184956645, - "ch.3.send.1.plink": 2759931059, - "ch.3.send.1.pan": 4170317438, - "ch.3.send.2": 1271257560, - "ch.3.send.2.on": 1497106938, - "ch.3.send.2.lvl": 2562256235, - "ch.3.send.2.pon": 3758552794, - "ch.3.send.2.ind": 926809343, - "ch.3.send.2.mode": 3741426292, - "ch.3.send.2.plink": 3271015108, - "ch.3.send.2.pan": 3756061351, - "ch.3.send.3": 2750143765, - "ch.3.send.3.on": 3627638758, - "ch.3.send.3.lvl": 481707479, - "ch.3.send.3.pon": 1670128494, - "ch.3.send.3.ind": 3057331507, - "ch.3.send.3.mode": 1590098632, - "ch.3.send.3.plink": 3212085395, - "ch.3.send.3.pan": 1604732731, - "ch.3.send.4": 3966716726, - "ch.3.send.4.on": 2430789158, - "ch.3.send.4.lvl": 1633992599, - "ch.3.send.4.pon": 3165497774, - "ch.3.send.4.ind": 1525264627, - "ch.3.send.4.mode": 39676552, - "ch.3.send.4.plink": 1668046335, - "ch.3.send.4.pan": 2743586171, - "ch.3.send.5": 882180481, - "ch.3.send.5.on": 1819682825, - "ch.3.send.5.lvl": 2431845528, - "ch.3.send.5.pon": 2367644857, - "ch.3.send.5.ind": 1248730452, - "ch.3.send.5.mode": 4060721031, - "ch.3.send.5.plink": 2322514951, - "ch.3.send.5.pan": 3376636060, - "ch.3.send.6": 111098655, - "ch.3.send.6.on": 132022309, - "ch.3.send.6.lvl": 325078932, - "ch.3.send.6.pon": 90150077, - "ch.3.send.6.ind": 2849721048, - "ch.3.send.6.mode": 1369375883, - "ch.3.send.6.plink": 2808918943, - "ch.3.send.6.pan": 1518581968, - "ch.3.send.7": 1506257208, - "ch.3.send.7.on": 3041920613, - "ch.3.send.7.lvl": 3838637652, - "ch.3.send.7.pon": 2487415549, - "ch.3.send.7.ind": 3948018584, - "ch.3.send.7.mode": 1122869579, - "ch.3.send.7.plink": 1092950332, - "ch.3.send.7.pan": 2887577360, - "ch.3.send.8": 2639113333, - "ch.3.send.8.on": 3700640452, - "ch.3.send.8.lvl": 1209350997, - "ch.3.send.8.pon": 816451068, - "ch.3.send.8.ind": 2124027841, - "ch.3.send.8.mode": 654214730, - "ch.3.send.8.plink": 2460577985, - "ch.3.send.8.pan": 2244268569, - "ch.3.send.9": 4159773331, - "ch.3.send.9.on": 1515232736, - "ch.3.send.9.lvl": 3402796657, - "ch.3.send.9.pon": 3002063552, - "ch.3.send.9.ind": 4233597797, - "ch.3.send.9.mode": 2755869038, - "ch.3.send.9.plink": 2692235932, - "ch.3.send.9.pan": 50976429, - "ch.3.send.10": 1960266316, - "ch.3.send.10.on": 3886874969, - "ch.3.send.10.lvl": 117757313, - "ch.3.send.10.pon": 617410267, - "ch.3.send.10.ind": 4220140800, - "ch.3.send.10.mode": 3003101819, - "ch.3.send.10.plink": 2621323572, - "ch.3.send.10.pan": 2653453784, - "ch.3.send.11": 3313159571, - "ch.3.send.11.on": 1510997072, - "ch.3.send.11.lvl": 2495074432, - "ch.3.send.11.pon": 4140307450, - "ch.3.send.11.ind": 1848798721, - "ch.3.send.11.mode": 4122473163, - "ch.3.send.11.plink": 3514290711, - "ch.3.send.11.pan": 292321305, - "ch.3.send.12": 4271932064, - "ch.3.send.12.on": 3306411255, - "ch.3.send.12.lvl": 2843454423, - "ch.3.send.12.pon": 2282141821, - "ch.3.send.12.ind": 3623252750, - "ch.3.send.12.mode": 2745677288, - "ch.3.send.12.plink": 2864999769, - "ch.3.send.12.pan": 560747574, - "ch.3.send.13": 1445529095, - "ch.3.send.13.on": 3612881986, - "ch.3.send.13.lvl": 2539653890, - "ch.3.send.13.pon": 975124744, - "ch.3.send.13.ind": 3940239811, - "ch.3.send.13.mode": 1746363100, - "ch.3.send.13.plink": 1714707526, - "ch.3.send.13.pan": 864269003, - "ch.3.send.14": 2840523802, - "ch.3.send.14.on": 4229653198, - "ch.3.send.14.lvl": 782470166, - "ch.3.send.14.pon": 2396806492, - "ch.3.send.14.ind": 3928509631, - "ch.3.send.14.mode": 37221966, - "ch.3.send.14.plink": 2651045417, - "ch.3.send.14.pan": 2528633783, - "ch.3.send.15": 3983701881, - "ch.3.send.15.on": 767569237, - "ch.3.send.15.lvl": 4242014597, - "ch.3.send.15.pon": 1627022079, - "ch.3.send.15.ind": 408733468, - "ch.3.send.15.mode": 3138795535, - "ch.3.send.15.plink": 3231263732, - "ch.3.send.15.pan": 3306465556, - "ch.3.send.16": 3212614899, - "ch.3.send.16.on": 1261686288, - "ch.3.send.16.lvl": 929821888, - "ch.3.send.16.pon": 409202618, - "ch.3.send.16.ind": 1625733697, - "ch.3.send.16.mode": 2140145460, - "ch.3.send.16.plink": 1044354797, - "ch.3.send.16.pan": 2689092697, - "ch.3.send.MX1": 1321462704, - "ch.3.send.MX1.on": 2925877484, - "ch.3.send.MX1.lvl": 2071701842, - "ch.3.send.MX1.pon": 1904147387, - "ch.3.send.MX1.ind": 1612157516, - "ch.3.send.MX1.mode": 3584981041, - "ch.3.send.MX1.plink": 3590374526, - "ch.3.send.MX1.pan": 1911524101, - "ch.3.send.MX2": 449504146, - "ch.3.send.MX2.on": 938837034, - "ch.3.send.MX2.lvl": 1898790972, - "ch.3.send.MX2.pon": 2202143905, - "ch.3.send.MX2.ind": 3911706282, - "ch.3.send.MX2.mode": 4116699195, - "ch.3.send.MX2.plink": 1272529616, - "ch.3.send.MX2.pan": 1583609683, - "ch.3.send.MX3": 1255285796, - "ch.3.send.MX3.on": 1904572330, - "ch.3.send.MX3.lvl": 2371970838, - "ch.3.send.MX3.pon": 2161229954, - "ch.3.send.MX3.ind": 1247255248, - "ch.3.send.MX3.mode": 623888445, - "ch.3.send.MX3.plink": 3916000826, - "ch.3.send.MX3.pan": 3224437961, - "ch.3.send.MX4": 450135411, - "ch.3.send.MX4.on": 185960741, - "ch.3.send.MX4.lvl": 1929979840, - "ch.3.send.MX4.pon": 1059759157, - "ch.3.send.MX4.ind": 1701497918, - "ch.3.send.MX4.mode": 3514515415, - "ch.3.send.MX4.plink": 3776769100, - "ch.3.send.MX4.pan": 1237366951, - "ch.3.send.MX5": 4275803870, - "ch.3.send.MX5.on": 841332403, - "ch.3.send.MX5.lvl": 2447812602, - "ch.3.send.MX5.pon": 1862350915, - "ch.3.send.MX5.ind": 3997917844, - "ch.3.send.MX5.mode": 4044240601, - "ch.3.send.MX5.plink": 1354084950, - "ch.3.send.MX5.pan": 1950979501, - "ch.3.send.MX6": 3470929957, - "ch.3.send.MX6.on": 3417670158, - "ch.3.send.MX6.lvl": 2061166276, - "ch.3.send.MX6.pon": 2056156105, - "ch.3.send.MX6.ind": 1333597938, - "ch.3.send.MX6.mode": 4074572483, - "ch.3.send.MX6.plink": 3683193480, - "ch.3.send.MX6.pan": 1541170683, - "ch.3.send.MX7": 292144514, - "ch.3.send.MX7.on": 88445833, - "ch.3.send.MX7.lvl": 2749661502, - "ch.3.send.MX7.pon": 1198191015, - "ch.3.send.MX7.ind": 3588740664, - "ch.3.send.MX7.mode": 3014929989, - "ch.3.send.MX7.plink": 4190776466, - "ch.3.send.MX7.pan": 1735604113, - "ch.3.send.MX8": 3446376089, - "ch.3.send.MX8.on": 2396372679, - "ch.3.send.MX8.lvl": 1800689640, - "ch.3.send.MX8.pon": 1832381277, - "ch.3.send.MX8.ind": 1659035846, - "ch.3.send.MX8.mode": 3481767935, - "ch.3.send.MX8.plink": 969886244, - "ch.3.send.MX8.pan": 2143845711, - "ch.3.tapwid": 4193375642, - "ch.3.postins": 171711861, - "ch.3.postins.on": 4219946200, - "ch.3.postins.mode": 4289411610, - "ch.3.postins.ins": 2782077156, - "ch.3.postins.w": 1678652774, - "ch.3.postins.$stat": 2716229309, - "ch.3.tags": 1617935356, - "ch.3.$fdr": 3293716928, - "ch.3.$mute": 4266122722, - "ch.3.$muteovr": 3797452693, - "ch.4": 3100900936, - "ch.4.in": 1050065805, - "ch.4.in.set": 152219632, - "ch.4.in.set.$mode": 1857646476, - "ch.4.in.set.srcauto": 4178649973, - "ch.4.in.set.altsrc": 2857419615, - "ch.4.in.set.inv": 3849410248, - "ch.4.in.set.trim": 114032275, - "ch.4.in.set.bal": 183549790, - "ch.4.in.set.$g": 3157765894, - "ch.4.in.set.$vph": 1824354144, - "ch.4.in.set.dlymode": 4169892563, - "ch.4.in.set.dly": 3960412700, - "ch.4.in.set.dlyon": 4099576420, - "ch.4.in.conn": 4216810071, - "ch.4.in.conn.grp": 2438531270, - "ch.4.in.conn.in": 119636469, - "ch.4.in.conn.altgrp": 2536865516, - "ch.4.in.conn.altin": 1566242693, - "ch.4.flt": 507255536, - "ch.4.flt.lc": 3639810377, - "ch.4.flt.lcf": 2876722512, - "ch.4.flt.hc": 1480770058, - "ch.4.flt.hcf": 173886967, - "ch.4.flt.tf": 7671469, - "ch.4.flt.mdl": 97662494, - "ch.4.flt.1": 1978862702, - "ch.4.flt.2": 3447012341, - "ch.4.clink": 3510535094, - "ch.4.col": 1309990222, - "ch.4.name": 2528025736, - "ch.4.icon": 2856250440, - "ch.4.led": 2102006864, - "ch.4.$col": 787373170, - "ch.4.$name": 1908890256, - "ch.4.$icon": 2379626440, - "ch.4.mute": 1940959569, - "ch.4.fdr": 1836964016, - "ch.4.pan": 2058366272, - "ch.4.wid": 3866140083, - "ch.4.$solo": 4017893209, - "ch.4.$sololed": 1597435998, - "ch.4.solosafe": 4285043729, - "ch.4.mon": 3551054782, - "ch.4.proc": 845852834, - "ch.4.ptap": 2319318705, - "ch.4.$presolo": 1677428907, - "ch.4.peq": 2043491015, - "ch.4.peq.on": 1929225338, - "ch.4.peq.1g": 2556412426, - "ch.4.peq.1f": 1588721948, - "ch.4.peq.1q": 550154106, - "ch.4.peq.2g": 1254773915, - "ch.4.peq.2f": 275551598, - "ch.4.peq.2q": 280316939, - "ch.4.peq.3g": 4130161975, - "ch.4.peq.3f": 2092923930, - "ch.4.peq.3q": 2896551, - "ch.4.gate": 741551397, - "ch.4.gate.on": 2324988961, - "ch.4.gate.mdl": 2931133498, - "ch.4.gate.1": 1834570714, - "ch.4.gate.2": 1157430551, - "ch.4.gate.3": 3305295472, - "ch.4.gate.4": 2080284662, - "ch.4.gate.5": 3154422276, - "ch.4.gate.6": 3775560529, - "ch.4.gate.7": 3263571079, - "ch.4.gate.8": 1116468704, - "ch.4.gate.9": 395470653, - "ch.4.gatesc": 1613485669, - "ch.4.gatesc.type": 2788492252, - "ch.4.gatesc.f": 3348802089, - "ch.4.gatesc.q": 4210416962, - "ch.4.gatesc.src": 257130172, - "ch.4.gatesc.tap": 1146690927, - "ch.4.gatesc.$solo": 17595278, - "ch.4.eq": 3981241695, - "ch.4.eq.on": 1804594373, - "ch.4.eq.mdl": 1294945045, - "ch.4.eq.mix": 3412923492, - "ch.4.eq.$solo": 2284489225, - "ch.4.eq.$solobd": 3185478822, - "ch.4.eq.1": 2757985791, - "ch.4.eq.2": 3286985789, - "ch.4.eq.3": 2607921539, - "ch.4.eq.4": 1949625564, - "ch.4.eq.5": 1270536937, - "ch.4.eq.6": 591597090, - "ch.4.eq.7": 1770592301, - "ch.4.eq.8": 420231094, - "ch.4.eq.9": 3205897276, - "ch.4.eq.10": 2242029234, - "ch.4.eq.11": 891836916, - "ch.4.eq.12": 3433809923, - "ch.4.eq.13": 2775677790, - "ch.4.eq.14": 754582935, - "ch.4.eq.15": 75494626, - "ch.4.eq.16": 1116350804, - "ch.4.eq.17": 416126819, - "ch.4.eq.18": 4031990517, - "ch.4.eq.19": 937153783, - "ch.4.eq.20": 581027709, - "ch.4.dyn": 2528181423, - "ch.4.dyn.on": 3075267593, - "ch.4.dyn.mdl": 4131029195, - "ch.4.dyn.mix": 2444611489, - "ch.4.dyn.gain": 129454574, - "ch.4.dyn.1": 3142711219, - "ch.4.dyn.2": 3981922464, - "ch.4.dyn.3": 458055317, - "ch.4.dyn.4": 3712556260, - "ch.4.dyn.5": 178193129, - "ch.4.dyn.6": 2025662547, - "ch.4.dyn.7": 2796757312, - "ch.4.dyn.8": 414135994, - "ch.4.dyn.9": 2516905348, - "ch.4.dynxo": 2139567292, - "ch.4.dynxo.depth": 656001272, - "ch.4.dynxo.type": 1933870899, - "ch.4.dynxo.f": 1173836738, - "ch.4.dynxo.$solo": 3740614100, - "ch.4.dynsc": 1613678255, - "ch.4.dynsc.type": 981667208, - "ch.4.dynsc.f": 2091300232, - "ch.4.dynsc.q": 613903077, - "ch.4.dynsc.src": 3481933318, - "ch.4.dynsc.tap": 4093407087, - "ch.4.dynsc.$solo": 2184610859, - "ch.4.preins": 1731902531, - "ch.4.preins.on": 781781634, - "ch.4.preins.ins": 4204167911, - "ch.4.preins.$stat": 3771179878, - "ch.4.main": 1738904566, - "ch.4.main.1": 2845783616, - "ch.4.main.1.on": 3005872297, - "ch.4.main.1.lvl": 1118311736, - "ch.4.main.1.pre": 1202977115, - "ch.4.main.2": 2009147485, - "ch.4.main.2.on": 3434529182, - "ch.4.main.2.lvl": 1362749327, - "ch.4.main.2.pre": 3237007540, - "ch.4.main.3": 1417374171, - "ch.4.main.3.on": 887035059, - "ch.4.main.3.lvl": 1079853762, - "ch.4.main.3.pre": 1226366577, - "ch.4.main.4": 743277537, - "ch.4.main.4.on": 2812574890, - "ch.4.main.4.lvl": 3609373371, - "ch.4.main.4.pre": 320607896, - "ch.4.send": 2458238356, - "ch.4.send.1": 1880844001, - "ch.4.send.1.on": 3732321571, - "ch.4.send.1.lvl": 3204044946, - "ch.4.send.1.pon": 3247960211, - "ch.4.send.1.ind": 7661582, - "ch.4.send.1.mode": 1485385101, - "ch.4.send.1.plink": 2584632592, - "ch.4.send.1.pan": 2176699510, - "ch.4.send.2": 1112697627, - "ch.4.send.2.on": 3000724457, - "ch.4.send.2.lvl": 1113168376, - "ch.4.send.2.pon": 3639095129, - "ch.4.send.2.ind": 2429843124, - "ch.4.send.2.mode": 3912819943, - "ch.4.send.2.plink": 880958460, - "ch.4.send.2.pan": 2316186428, - "ch.4.send.3": 3259986382, - "ch.4.send.3.on": 223221245, - "ch.4.send.3.lvl": 416040588, - "ch.4.send.3.pon": 46334661, - "ch.4.send.3.ind": 2940685152, - "ch.4.send.3.mode": 1468240275, - "ch.4.send.3.plink": 929411632, - "ch.4.send.3.pan": 1453907624, - "ch.4.send.4": 2124511341, - "ch.4.send.4.on": 2471808779, - "ch.4.send.4.lvl": 1742200602, - "ch.4.send.4.pon": 3051883051, - "ch.4.send.4.ind": 1901920646, - "ch.4.send.4.mode": 3387462661, - "ch.4.send.4.plink": 1960662903, - "ch.4.send.4.pan": 2697152094, - "ch.4.send.5": 3198729810, - "ch.4.send.5.on": 3495513777, - "ch.4.send.5.lvl": 2883018272, - "ch.4.send.5.pon": 3443034897, - "ch.4.send.5.ind": 442270028, - "ch.4.send.5.mode": 1912083263, - "ch.4.send.5.plink": 1159041603, - "ch.4.send.5.pan": 1762903876, - "ch.4.send.6": 2759234500, - "ch.4.send.6.on": 419488325, - "ch.4.send.6.lvl": 2223242164, - "ch.4.send.6.pon": 4144876957, - "ch.4.send.6.ind": 989795576, - "ch.4.send.6.mode": 3809691307, - "ch.4.send.6.plink": 692648679, - "ch.4.send.6.pan": 1278454192, - "ch.4.send.7": 1953774203, - "ch.4.send.7.on": 1602196414, - "ch.4.send.7.lvl": 2482880815, - "ch.4.send.7.pon": 3927222294, - "ch.4.send.7.ind": 1031315003, - "ch.4.send.7.mode": 2501143600, - "ch.4.send.7.plink": 1777153066, - "ch.4.send.7.pan": 3594128435, - "ch.4.send.8": 818626862, - "ch.4.send.8.on": 1544302182, - "ch.4.send.8.lvl": 395266647, - "ch.4.send.8.pon": 25369070, - "ch.4.send.8.ind": 2786354099, - "ch.4.send.8.mode": 4253545800, - "ch.4.send.8.plink": 1478771510, - "ch.4.send.8.pan": 3734918587, - "ch.4.send.9": 3545057856, - "ch.4.send.9.on": 2380166275, - "ch.4.send.9.lvl": 1835112434, - "ch.4.send.9.pon": 2875044147, - "ch.4.send.9.ind": 1810278254, - "ch.4.send.9.mode": 343076077, - "ch.4.send.9.plink": 1920092490, - "ch.4.send.9.pan": 2872675606, - "ch.4.send.10": 2118186415, - "ch.4.send.10.on": 3169789267, - "ch.4.send.10.lvl": 3986095163, - "ch.4.send.10.pon": 3488106529, - "ch.4.send.10.ind": 2837209882, - "ch.4.send.10.mode": 1703033956, - "ch.4.send.10.plink": 536573682, - "ch.4.send.10.pan": 1451402194, - "ch.4.send.11": 2697133128, - "ch.4.send.11.on": 1995087043, - "ch.4.send.11.lvl": 3015886347, - "ch.4.send.11.pon": 336569169, - "ch.4.send.11.ind": 1699186826, - "ch.4.send.11.mode": 4092354936, - "ch.4.send.11.plink": 863098620, - "ch.4.send.11.pan": 468393538, - "ch.4.send.12": 4103619131, - "ch.4.send.12.on": 1288106300, - "ch.4.send.12.lvl": 567199092, - "ch.4.send.12.pon": 4289797774, - "ch.4.send.12.ind": 1616088317, - "ch.4.send.12.mode": 2565372071, - "ch.4.send.12.plink": 1847785423, - "ch.4.send.12.pan": 4178275813, - "ch.4.send.13": 1961838804, - "ch.4.send.13.on": 3872129386, - "ch.4.send.13.lvl": 134469050, - "ch.4.send.13.pon": 600698560, - "ch.4.send.13.ind": 4236197147, - "ch.4.send.13.mode": 319443310, - "ch.4.send.13.plink": 1011980804, - "ch.4.send.13.pan": 2679340499, - "ch.4.send.14": 1156337537, - "ch.4.send.14.on": 3410422634, - "ch.4.send.14.lvl": 2741944250, - "ch.4.send.14.pon": 2282947776, - "ch.4.send.14.ind": 3706322715, - "ch.4.send.14.mode": 1951042566, - "ch.4.send.14.plink": 2308015820, - "ch.4.send.14.pan": 2151114707, - "ch.4.send.15": 10417698, - "ch.4.send.15.on": 4248969404, - "ch.4.send.15.lvl": 759843316, - "ch.4.send.15.pon": 2419392270, - "ch.4.send.15.ind": 3905258621, - "ch.4.send.15.mode": 3059266957, - "ch.4.send.15.plink": 651356428, - "ch.4.send.15.pan": 2509939301, - "ch.4.send.16": 3868511144, - "ch.4.send.16.on": 414107105, - "ch.4.send.16.lvl": 1440128185, - "ch.4.send.16.pon": 900450163, - "ch.4.send.16.ind": 710632504, - "ch.4.send.16.mode": 2239675596, - "ch.4.send.16.plink": 1300170570, - "ch.4.send.16.pan": 3452388640, - "ch.4.send.MX1": 1370736334, - "ch.4.send.MX1.on": 3665081882, - "ch.4.send.MX1.lvl": 558918085, - "ch.4.send.MX1.pon": 194390837, - "ch.4.send.MX1.ind": 2370411671, - "ch.4.send.MX1.mode": 798868157, - "ch.4.send.MX1.plink": 3709978181, - "ch.4.send.MX1.pan": 328994145, - "ch.4.send.MX2": 1856974972, - "ch.4.send.MX2.on": 3288632988, - "ch.4.send.MX2.lvl": 4218274471, - "ch.4.send.MX2.pon": 32472075, - "ch.4.send.MX2.ind": 2679868381, - "ch.4.send.MX2.mode": 393234319, - "ch.4.send.MX2.plink": 3666558314, - "ch.4.send.MX2.pan": 783128447, - "ch.4.send.MX3": 4038426458, - "ch.4.send.MX3.on": 391414300, - "ch.4.send.MX3.lvl": 715785665, - "ch.4.send.MX3.pon": 1820294737, - "ch.4.send.MX3.ind": 1164668851, - "ch.4.send.MX3.mode": 1358998193, - "ch.4.send.MX3.plink": 173743516, - "ch.4.send.MX3.pan": 621036845, - "ch.4.send.MX4": 519776245, - "ch.4.send.MX4.on": 820276107, - "ch.4.send.MX4.lvl": 249092995, - "ch.4.send.MX4.pon": 630251767, - "ch.4.send.MX4.ind": 2493653561, - "ch.4.send.MX4.mode": 747075939, - "ch.4.send.MX4.plink": 255557310, - "ch.4.send.MX4.pan": 60049787, - "ch.4.send.MX5": 2700550624, - "ch.4.send.MX5.on": 1496639757, - "ch.4.send.MX5.lvl": 13271885, - "ch.4.send.MX5.pon": 173918717, - "ch.4.send.MX5.ind": 2746083551, - "ch.4.send.MX5.mode": 1004174725, - "ch.4.send.MX5.plink": 3787761120, - "ch.4.send.MX5.pan": 4225608265, - "ch.4.send.MX6": 3455896195, - "ch.4.send.MX6.on": 1841597576, - "ch.4.send.MX6.lvl": 1162247215, - "ch.4.send.MX6.pon": 4033667603, - "ch.4.send.MX6.ind": 1272305189, - "ch.4.send.MX6.mode": 380964471, - "ch.4.send.MX6.plink": 3294062367, - "ch.4.send.MX6.pan": 750194215, - "ch.4.send.MX7": 1010356364, - "ch.4.send.MX7.on": 2249487927, - "ch.4.send.MX7.lvl": 4183095401, - "ch.4.send.MX7.pon": 898141977, - "ch.4.send.MX7.ind": 3218195771, - "ch.4.send.MX7.mode": 1466151577, - "ch.4.send.MX7.plink": 300921556, - "ch.4.send.MX7.pan": 692293397, - "ch.4.send.MX8": 1849588015, - "ch.4.send.MX8.on": 2862937017, - "ch.4.send.MX8.lvl": 533009035, - "ch.4.send.MX8.pon": 105592767, - "ch.4.send.MX8.ind": 2418560129, - "ch.4.send.MX8.mode": 842449739, - "ch.4.send.MX8.plink": 12629590, - "ch.4.send.MX8.pan": 372555075, - "ch.4.tapwid": 551586975, - "ch.4.postins": 2606418741, - "ch.4.postins.on": 1483710340, - "ch.4.postins.mode": 2301850955, - "ch.4.postins.ins": 3761994688, - "ch.4.postins.w": 578154194, - "ch.4.postins.$stat": 215444770, - "ch.4.tags": 2438279675, - "ch.4.$fdr": 1272256662, - "ch.4.$mute": 3850397745, - "ch.4.$muteovr": 4237914778, - "ch.5": 274410917, - "ch.5.in": 1552497880, - "ch.5.in.set": 3537391943, - "ch.5.in.set.$mode": 3063650725, - "ch.5.in.set.srcauto": 1346311959, - "ch.5.in.set.altsrc": 514261414, - "ch.5.in.set.inv": 2428240632, - "ch.5.in.set.trim": 1902208259, - "ch.5.in.set.bal": 1932737166, - "ch.5.in.set.$g": 334928534, - "ch.5.in.set.$vph": 24134800, - "ch.5.in.set.dlymode": 1120247556, - "ch.5.in.set.dly": 2535382924, - "ch.5.in.set.dlyon": 119289513, - "ch.5.in.conn": 4094806240, - "ch.5.in.conn.grp": 251834270, - "ch.5.in.conn.in": 2319117117, - "ch.5.in.conn.altgrp": 3321922054, - "ch.5.in.conn.altin": 3737253311, - "ch.5.flt": 2598476357, - "ch.5.flt.lc": 1764181822, - "ch.5.flt.lcf": 2078481023, - "ch.5.flt.hc": 3354021637, - "ch.5.flt.hcf": 3670653848, - "ch.5.flt.tf": 3492928418, - "ch.5.flt.mdl": 3591686249, - "ch.5.flt.1": 95043425, - "ch.5.flt.2": 1571098098, - "ch.5.clink": 1512730788, - "ch.5.col": 3122617331, - "ch.5.name": 3198299286, - "ch.5.icon": 1392793743, - "ch.5.led": 1256698789, - "ch.5.$col": 400436754, - "ch.5.$name": 1297550679, - "ch.5.$icon": 518470207, - "ch.5.mute": 2940225825, - "ch.5.fdr": 2343983621, - "ch.5.pan": 226741237, - "ch.5.wid": 1789713678, - "ch.5.$solo": 1706163041, - "ch.5.$sololed": 2941001454, - "ch.5.solosafe": 3928403287, - "ch.5.mon": 1116433155, - "ch.5.proc": 2128938421, - "ch.5.ptap": 3820804878, - "ch.5.$presolo": 3743955700, - "ch.5.peq": 3864179730, - "ch.5.peq.on": 2753758829, - "ch.5.peq.1g": 1812152541, - "ch.5.peq.1f": 2944850323, - "ch.5.peq.1q": 2451995501, - "ch.5.peq.2g": 2082920036, - "ch.5.peq.2f": 3735862673, - "ch.5.peq.2q": 4252600052, - "ch.5.peq.3g": 3337164176, - "ch.5.peq.3f": 1768883917, - "ch.5.peq.3q": 2352402464, - "ch.5.gate": 1638114988, - "ch.5.gate.on": 2514091384, - "ch.5.gate.mdl": 733474205, - "ch.5.gate.1": 2736249483, - "ch.5.gate.2": 1371396062, - "ch.5.gate.3": 4158523361, - "ch.5.gate.4": 2981103247, - "ch.5.gate.5": 3331600221, - "ch.5.gate.6": 375840928, - "ch.5.gate.7": 3478806350, - "ch.5.gate.8": 1965841553, - "ch.5.gate.9": 626060452, - "ch.5.gatesc": 728431916, - "ch.5.gatesc.type": 1814195451, - "ch.5.gatesc.f": 2529160014, - "ch.5.gatesc.q": 1074214109, - "ch.5.gatesc.src": 2343102395, - "ch.5.gatesc.tap": 1107533424, - "ch.5.gatesc.$solo": 3401571066, - "ch.5.eq": 1759803050, - "ch.5.eq.on": 3605470296, - "ch.5.eq.mdl": 3094878800, - "ch.5.eq.mix": 2688369977, - "ch.5.eq.$solo": 2639721062, - "ch.5.eq.$solobd": 1906494025, - "ch.5.eq.1": 789009802, - "ch.5.eq.2": 4173044920, - "ch.5.eq.3": 649431326, - "ch.5.eq.4": 4278156209, - "ch.5.eq.5": 3773803428, - "ch.5.eq.6": 2929344071, - "ch.5.eq.7": 4095600968, - "ch.5.eq.8": 2926077931, - "ch.5.eq.9": 2489207889, - "ch.5.eq.10": 1347041247, - "ch.5.eq.11": 167037553, - "ch.5.eq.12": 4159633366, - "ch.5.eq.13": 3661818523, - "ch.5.eq.14": 37565818, - "ch.5.eq.15": 3487392815, - "ch.5.eq.16": 2916284561, - "ch.5.eq.17": 2375886966, - "ch.5.eq.18": 1704401704, - "ch.5.eq.19": 2739627546, - "ch.5.eq.20": 3074791072, - "ch.5.dyn": 74219002, - "ch.5.dyn.on": 3889275838, - "ch.5.dyn.mdl": 3312187900, - "ch.5.dyn.mix": 1651856454, - "ch.5.dyn.gain": 1212910628, - "ch.5.dyn.1": 2346111708, - "ch.5.dyn.2": 3185282055, - "ch.5.dyn.3": 3940402514, - "ch.5.dyn.4": 215827627, - "ch.5.dyn.5": 3655302630, - "ch.5.dyn.6": 1206494076, - "ch.5.dyn.7": 2003680423, - "ch.5.dyn.8": 1233386253, - "ch.5.dyn.9": 1719891275, - "ch.5.dynxo": 1326947347, - "ch.5.dynxo.depth": 3810265736, - "ch.5.dynxo.type": 3956097206, - "ch.5.dynxo.f": 1971793165, - "ch.5.dynxo.$solo": 1823582748, - "ch.5.dynsc": 2426048024, - "ch.5.dynsc.type": 3309320341, - "ch.5.dynsc.f": 1277328711, - "ch.5.dynsc.q": 1432831658, - "ch.5.dynsc.src": 3804551205, - "ch.5.dynsc.tap": 4078060938, - "ch.5.dynsc.$solo": 446772589, - "ch.5.preins": 4248781884, - "ch.5.preins.on": 1457788208, - "ch.5.preins.ins": 2369652805, - "ch.5.preins.$stat": 3604428942, - "ch.5.main": 86713295, - "ch.5.main.1": 534742641, - "ch.5.main.1.on": 1154341791, - "ch.5.main.1.lvl": 3645557806, - "ch.5.main.1.pre": 3641095541, - "ch.5.main.2": 1342524868, - "ch.5.main.2.on": 16338571, - "ch.5.main.2.lvl": 628830874, - "ch.5.main.2.pre": 2361511497, - "ch.5.main.3": 943181290, - "ch.5.main.3.on": 209889377, - "ch.5.main.3.lvl": 2432666736, - "ch.5.main.3.pre": 2159768339, - "ch.5.main.4": 1069399344, - "ch.5.main.4.on": 3852477297, - "ch.5.main.4.lvl": 3239905632, - "ch.5.main.4.pre": 1360424323, - "ch.5.send": 706767379, - "ch.5.send.1": 1485845254, - "ch.5.send.1.on": 1857858676, - "ch.5.send.1.lvl": 2923006053, - "ch.5.send.1.pon": 3439706348, - "ch.5.send.1.ind": 615807345, - "ch.5.send.1.mode": 3443577722, - "ch.5.send.1.plink": 576421475, - "ch.5.send.1.pan": 4129981705, - "ch.5.send.2": 2849218220, - "ch.5.send.2.on": 1871676084, - "ch.5.send.2.lvl": 2417054245, - "ch.5.send.2.pon": 4029585196, - "ch.5.send.2.ind": 966151473, - "ch.5.send.2.mode": 2441217850, - "ch.5.send.2.plink": 160659156, - "ch.5.send.2.pan": 3360209737, - "ch.5.send.3": 4192122361, - "ch.5.send.3.on": 4108111164, - "ch.5.send.3.lvl": 2304684205, - "ch.5.send.3.pon": 2536749220, - "ch.5.send.3.ind": 1390657545, - "ch.5.send.3.mode": 2868340146, - "ch.5.send.3.plink": 4244546876, - "ch.5.send.3.pan": 1108194417, - "ch.5.send.4": 904012770, - "ch.5.send.4.on": 1827094076, - "ch.5.send.4.lvl": 946083757, - "ch.5.send.4.pon": 3764277668, - "ch.5.send.4.ind": 2397636873, - "ch.5.send.4.mode": 917291698, - "ch.5.send.4.plink": 3663629410, - "ch.5.send.4.pan": 4118312305, - "ch.5.send.5": 388160061, - "ch.5.send.5.on": 1484368764, - "ch.5.send.5.lvl": 419134829, - "ch.5.send.5.pon": 80144100, - "ch.5.send.5.ind": 2725683401, - "ch.5.send.5.mode": 4208603762, - "ch.5.send.5.plink": 4285957968, - "ch.5.send.5.pan": 3685409457, - "ch.5.send.6": 489488355, - "ch.5.send.6.on": 938675467, - "ch.5.send.6.lvl": 1819275546, - "ch.5.send.6.pon": 295696427, - "ch.5.send.6.ind": 1844117382, - "ch.5.send.6.mode": 3311314437, - "ch.5.send.6.plink": 1696400649, - "ch.5.send.6.pan": 612627550, - "ch.5.send.7": 1832504844, - "ch.5.send.7.on": 4041429262, - "ch.5.send.7.lvl": 207959327, - "ch.5.send.7.pon": 1817842726, - "ch.5.send.7.ind": 3135904651, - "ch.5.send.7.mode": 313428480, - "ch.5.send.7.plink": 2509997567, - "ch.5.send.7.pan": 1232394307, - "ch.5.send.8": 2839209305, - "ch.5.send.8.on": 3699365710, - "ch.5.send.8.lvl": 3170675167, - "ch.5.send.8.pon": 3239221862, - "ch.5.send.8.ind": 4269909067, - "ch.5.send.8.mode": 1455292096, - "ch.5.send.8.plink": 1628668110, - "ch.5.send.8.pan": 2146262659, - "ch.5.send.9": 3665712591, - "ch.5.send.9.on": 1651303222, - "ch.5.send.9.lvl": 921293127, - "ch.5.send.9.pon": 3872913406, - "ch.5.send.9.ind": 2557390339, - "ch.5.send.9.mode": 4040367192, - "ch.5.send.9.plink": 1459767510, - "ch.5.send.9.pan": 4189240267, - "ch.5.send.10": 1455755616, - "ch.5.send.10.on": 1576768515, - "ch.5.send.10.lvl": 613640907, - "ch.5.send.10.pon": 3242088849, - "ch.5.send.10.ind": 1930340938, - "ch.5.send.10.mode": 475287741, - "ch.5.send.10.plink": 4062802524, - "ch.5.send.10.pan": 2816742146, - "ch.5.send.11": 134785223, - "ch.5.send.11.on": 3535799798, - "ch.5.send.11.lvl": 3287822126, - "ch.5.send.11.pon": 2681674196, - "ch.5.send.11.ind": 3228789047, - "ch.5.send.11.mode": 3898801121, - "ch.5.send.11.plink": 1311838857, - "ch.5.send.11.pan": 1002145599, - "ch.5.send.12": 4229127692, - "ch.5.send.12.on": 1951749745, - "ch.5.send.12.lvl": 2388470441, - "ch.5.send.12.pon": 2972006723, - "ch.5.send.12.ind": 2279731592, - "ch.5.send.12.mode": 3023371836, - "ch.5.send.12.plink": 2064183403, - "ch.5.send.12.pan": 377541296, - "ch.5.send.13": 1276562771, - "ch.5.send.13.on": 3650596977, - "ch.5.send.13.lvl": 355435689, - "ch.5.send.13.pon": 1990180675, - "ch.5.send.13.ind": 4004168584, - "ch.5.send.13.mode": 2121589436, - "ch.5.send.13.plink": 2487804262, - "ch.5.send.13.pan": 2437164208, - "ch.5.send.14": 2640427878, - "ch.5.send.14.on": 1044185951, - "ch.5.send.14.lvl": 1817520015, - "ch.5.send.14.pon": 192593141, - "ch.5.send.14.ind": 684705030, - "ch.5.send.14.mode": 550693272, - "ch.5.send.14.plink": 2099314729, - "ch.5.send.14.pan": 2409660190, - "ch.5.send.15": 3647255213, - "ch.5.send.15.on": 1662044383, - "ch.5.send.15.lvl": 1199088143, - "ch.5.send.15.pon": 638175093, - "ch.5.send.15.ind": 1308441222, - "ch.5.send.15.mode": 2969720232, - "ch.5.send.15.plink": 2123437806, - "ch.5.send.15.pan": 2875476382, - "ch.5.send.16": 3748583463, - "ch.5.send.16.on": 3766782490, - "ch.5.send.16.lvl": 571236554, - "ch.5.send.16.pon": 2104722352, - "ch.5.send.16.ind": 4136042059, - "ch.5.send.16.mode": 2735505253, - "ch.5.send.16.plink": 2233943572, - "ch.5.send.16.pan": 2237139011, - "ch.5.send.MX1": 1533182875, - "ch.5.send.MX1.on": 3150380327, - "ch.5.send.MX1.lvl": 243313878, - "ch.5.send.MX1.pon": 3438287078, - "ch.5.send.MX1.ind": 1601615681, - "ch.5.send.MX1.mode": 642374451, - "ch.5.send.MX1.plink": 1546903862, - "ch.5.send.MX1.pan": 1649282503, - "ch.5.send.MX2": 2106338713, - "ch.5.send.MX2.on": 884394921, - "ch.5.send.MX2.lvl": 70195188, - "ch.5.send.MX2.pon": 2290323808, - "ch.5.send.MX2.ind": 1180994798, - "ch.5.send.MX2.mode": 486854417, - "ch.5.send.MX2.plink": 2227618324, - "ch.5.send.MX2.pan": 465890425, - "ch.5.send.MX3": 2819018791, - "ch.5.send.MX3.on": 2129059113, - "ch.5.send.MX3.lvl": 672833386, - "ch.5.send.MX3.pon": 2484298698, - "ch.5.send.MX3.ind": 1406443688, - "ch.5.send.MX3.mode": 995396991, - "ch.5.send.MX3.plink": 1209465202, - "ch.5.send.MX3.pan": 655528843, - "ch.5.send.MX4": 2005981048, - "ch.5.send.MX4.on": 1742139054, - "ch.5.send.MX4.lvl": 4086275864, - "ch.5.send.MX4.pon": 3530336548, - "ch.5.send.MX4.ind": 1544384591, - "ch.5.send.MX4.mode": 1538594445, - "ch.5.send.MX4.plink": 1048516416, - "ch.5.send.MX4.pan": 849519053, - "ch.5.send.MX5": 35577549, - "ch.5.send.MX5.on": 1065837184, - "ch.5.send.MX5.lvl": 331196798, - "ch.5.send.MX5.pon": 2340395918, - "ch.5.send.MX5.ind": 1081682028, - "ch.5.send.MX5.mode": 559306011, - "ch.5.send.MX5.plink": 2452775086, - "ch.5.send.MX5.pan": 1565891503, - "ch.5.send.MX6": 3695764998, - "ch.5.send.MX6.on": 511104005, - "ch.5.send.MX6.lvl": 598285468, - "ch.5.send.MX6.pon": 2535266888, - "ch.5.send.MX6.ind": 1263064630, - "ch.5.send.MX6.mode": 396576697, - "ch.5.send.MX6.plink": 2312353292, - "ch.5.send.MX6.pan": 375317313, - "ch.5.send.MX7": 1845701385, - "ch.5.send.MX7.on": 1755768202, - "ch.5.send.MX7.lvl": 4290261874, - "ch.5.send.MX7.pon": 3421376210, - "ch.5.send.MX7.ind": 1488228720, - "ch.5.send.MX7.mode": 1563662919, - "ch.5.send.MX7.plink": 958240490, - "ch.5.send.MX7.pan": 569516435, - "ch.5.send.MX8": 550318738, - "ch.5.send.MX8.on": 3784792332, - "ch.5.send.MX8.lvl": 262670816, - "ch.5.send.MX8.pon": 3447149068, - "ch.5.send.MX8.ind": 1535072983, - "ch.5.send.MX8.mode": 1421897877, - "ch.5.send.MX8.plink": 2357275384, - "ch.5.send.MX8.pan": 1422203605, - "ch.5.tapwid": 1461738919, - "ch.5.postins": 2350857643, - "ch.5.postins.on": 804051084, - "ch.5.postins.mode": 2306240900, - "ch.5.postins.ins": 843723352, - "ch.5.postins.w": 1877420314, - "ch.5.postins.$stat": 3865228338, - "ch.5.tags": 1781342092, - "ch.5.$fdr": 3075702127, - "ch.5.$mute": 800186949, - "ch.5.$muteovr": 2379271909, - "ch.6": 2182439471, - "ch.6.in": 1112752501, - "ch.6.in.set": 3895716681, - "ch.6.in.set.$mode": 982258527, - "ch.6.in.set.srcauto": 2802205103, - "ch.6.in.set.altsrc": 931360690, - "ch.6.in.set.inv": 3413954201, - "ch.6.in.set.trim": 3418401898, - "ch.6.in.set.bal": 3216865015, - "ch.6.in.set.$g": 1382835951, - "ch.6.in.set.$vph": 833746793, - "ch.6.in.set.dlymode": 3472773521, - "ch.6.in.set.dly": 2782637189, - "ch.6.in.set.dlyon": 2434486071, - "ch.6.in.conn": 389426926, - "ch.6.in.conn.grp": 3427501138, - "ch.6.in.conn.in": 1023450417, - "ch.6.in.conn.altgrp": 2197859553, - "ch.6.in.conn.altin": 566348488, - "ch.6.flt": 2348258744, - "ch.6.flt.lc": 763387348, - "ch.6.flt.lcf": 3200512261, - "ch.6.flt.hc": 4273955951, - "ch.6.flt.hcf": 601919730, - "ch.6.flt.tf": 2457317976, - "ch.6.flt.mdl": 2358571779, - "ch.6.flt.1": 3439356427, - "ch.6.flt.2": 2634152104, - "ch.6.clink": 2676696211, - "ch.6.col": 3436369030, - "ch.6.name": 1158670640, - "ch.6.icon": 3947347648, - "ch.6.led": 3686021272, - "ch.6.$col": 2605145109, - "ch.6.$name": 503451486, - "ch.6.$icon": 3687675088, - "ch.6.mute": 1898819184, - "ch.6.fdr": 4209668856, - "ch.6.pan": 3977761640, - "ch.6.wid": 134399019, - "ch.6.$solo": 2310729839, - "ch.6.$sololed": 4030034872, - "ch.6.solosafe": 3072711336, - "ch.6.mon": 1544914454, - "ch.6.proc": 4160203195, - "ch.6.ptap": 3786366841, - "ch.6.$presolo": 214124444, - "ch.6.peq": 2019348287, - "ch.6.peq.on": 451322912, - "ch.6.peq.1g": 1929953552, - "ch.6.peq.1f": 791869782, - "ch.6.peq.1q": 3978407712, - "ch.6.peq.2g": 1126257569, - "ch.6.peq.2f": 4210792020, - "ch.6.peq.2q": 2100317105, - "ch.6.peq.3g": 398214237, - "ch.6.peq.3f": 287735040, - "ch.6.peq.3q": 2378248813, - "ch.6.gate": 3333848186, - "ch.6.gate.on": 651154358, - "ch.6.gate.mdl": 1904108960, - "ch.6.gate.1": 160695365, - "ch.6.gate.2": 3739856296, - "ch.6.gate.3": 1768431023, - "ch.6.gate.4": 384168129, - "ch.6.gate.5": 1633900851, - "ch.6.gate.6": 2262944390, - "ch.6.gate.7": 1549759768, - "ch.6.gate.8": 3873261151, - "ch.6.gate.9": 3160086114, - "ch.6.gatesc": 3326027578, - "ch.6.gatesc.type": 3816291099, - "ch.6.gatesc.f": 443176046, - "ch.6.gatesc.q": 3115262397, - "ch.6.gatesc.src": 4258365403, - "ch.6.gatesc.tap": 3318976912, - "ch.6.gatesc.$solo": 2868665464, - "ch.6.eq": 1435529111, - "ch.6.eq.on": 1052978079, - "ch.6.eq.mdl": 1899093839, - "ch.6.eq.mix": 2137682238, - "ch.6.eq.$solo": 3773755188, - "ch.6.eq.$solobd": 3373860635, - "ch.6.eq.1": 1252009141, - "ch.6.eq.2": 1995352679, - "ch.6.eq.3": 4008992089, - "ch.6.eq.4": 380087814, - "ch.6.eq.5": 2729934515, - "ch.6.eq.6": 3406841688, - "ch.6.eq.7": 898346231, - "ch.6.eq.8": 1899994604, - "ch.6.eq.9": 4014570854, - "ch.6.eq.10": 694121112, - "ch.6.eq.11": 1706408750, - "ch.6.eq.12": 498666473, - "ch.6.eq.13": 1499782276, - "ch.6.eq.14": 2171429501, - "ch.6.eq.15": 2848797480, - "ch.6.eq.16": 1742137998, - "ch.6.eq.17": 4127865673, - "ch.6.eq.18": 504368175, - "ch.6.eq.19": 2254344669, - "ch.6.eq.20": 2086953111, - "ch.6.dyn": 2588083543, - "ch.6.dyn.on": 2526535383, - "ch.6.dyn.mdl": 1386842285, - "ch.6.dyn.mix": 3073562359, - "ch.6.dyn.gain": 1793882940, - "ch.6.dyn.1": 2459107109, - "ch.6.dyn.2": 1662012990, - "ch.6.dyn.3": 765355395, - "ch.6.dyn.4": 1847334394, - "ch.6.dyn.5": 1128924495, - "ch.6.dyn.6": 3576442821, - "ch.6.dyn.7": 2721717982, - "ch.6.dyn.8": 850931364, - "ch.6.dyn.9": 3085297306, - "ch.6.dynxo": 3420600162, - "ch.6.dynxo.depth": 2155427868, - "ch.6.dynxo.type": 1364956884, - "ch.6.dynxo.f": 49436380, - "ch.6.dynxo.$solo": 999316500, - "ch.6.dynsc": 3946693705, - "ch.6.dynsc.type": 2665590383, - "ch.6.dynsc.f": 3469061782, - "ch.6.dynsc.q": 651322355, - "ch.6.dynsc.src": 824831999, - "ch.6.dynsc.tap": 2576908528, - "ch.6.dynsc.$solo": 2638157393, - "ch.6.preins": 577879849, - "ch.6.preins.on": 1236970830, - "ch.6.preins.ins": 527773755, - "ch.6.preins.$stat": 2966436308, - "ch.6.main": 1081927393, - "ch.6.main.1": 3754459903, - "ch.6.main.1.on": 2074506693, - "ch.6.main.1.lvl": 2646836, - "ch.6.main.1.pre": 3882647311, - "ch.6.main.2": 2443343426, - "ch.6.main.2.on": 1299920969, - "ch.6.main.2.lvl": 3455589464, - "ch.6.main.2.pre": 3786507003, - "ch.6.main.3": 2071116700, - "ch.6.main.3.on": 2346815379, - "ch.6.main.3.lvl": 274953762, - "ch.6.main.3.pre": 22514257, - "ch.6.main.4": 4226602710, - "ch.6.main.4.on": 208681475, - "ch.6.main.4.lvl": 401743218, - "ch.6.main.4.pre": 2548611361, - "ch.6.send": 2513496140, - "ch.6.send.1": 1490722889, - "ch.6.send.1.on": 209201803, - "ch.6.send.1.lvl": 4043001498, - "ch.6.send.1.pon": 756487595, - "ch.6.send.1.ind": 3934280966, - "ch.6.send.1.mode": 2451309445, - "ch.6.send.1.plink": 3802986503, - "ch.6.send.1.pan": 691163614, - "ch.6.send.2": 730413923, - "ch.6.send.2.on": 4234843242, - "ch.6.send.2.lvl": 552123131, - "ch.6.send.2.pon": 4289309002, - "ch.6.send.2.ind": 2993529327, - "ch.6.send.2.mode": 1521053668, - "ch.6.send.2.plink": 2275512385, - "ch.6.send.2.pan": 1673858327, - "ch.6.send.3": 90731542, - "ch.6.send.3.on": 928455593, - "ch.6.send.3.lvl": 1809138232, - "ch.6.send.3.pon": 300549913, - "ch.6.send.3.ind": 1834635508, - "ch.6.send.3.mode": 3320223527, - "ch.6.send.3.plink": 2611627255, - "ch.6.send.3.pan": 616948476, - "ch.6.send.4": 3415387317, - "ch.6.send.4.on": 1971702070, - "ch.6.send.4.lvl": 2785600327, - "ch.6.send.4.pon": 3624338942, - "ch.6.send.4.ind": 394525699, - "ch.6.send.4.mode": 3203894872, - "ch.6.send.4.plink": 3611440550, - "ch.6.send.4.pan": 3895214539, - "ch.6.send.5": 359770122, - "ch.6.send.5.on": 1366842857, - "ch.6.send.5.lvl": 3589699576, - "ch.6.send.5.pon": 2862182745, - "ch.6.send.5.ind": 124872884, - "ch.6.send.5.mode": 2944738023, - "ch.6.send.5.plink": 3594689328, - "ch.6.send.5.pan": 247387452, - "ch.6.send.6": 2812531244, - "ch.6.send.6.on": 1617552116, - "ch.6.send.6.lvl": 2431448293, - "ch.6.send.6.pon": 3973369708, - "ch.6.send.6.ind": 712120305, - "ch.6.send.6.mode": 3537259002, - "ch.6.send.6.plink": 2395716630, - "ch.6.send.6.pan": 3551570825, - "ch.6.send.7": 2005076675, - "ch.6.send.7.on": 1704880812, - "ch.6.send.7.lvl": 2518457149, - "ch.6.send.7.pon": 3891605012, - "ch.6.send.7.ind": 799111161, - "ch.6.send.7.mode": 3619022370, - "ch.6.send.7.plink": 1305000747, - "ch.6.send.7.pan": 3469816289, - "ch.6.send.8": 1035092854, - "ch.6.send.8.on": 2050686221, - "ch.6.send.8.lvl": 4206766716, - "ch.6.send.8.pon": 629422549, - "ch.6.send.8.ind": 3292082160, - "ch.6.send.8.mode": 482661731, - "ch.6.send.8.plink": 3789290067, - "ch.6.send.8.pan": 3181999544, - "ch.6.send.9": 3658251944, - "ch.6.send.9.on": 1978631203, - "ch.6.send.9.lvl": 2255663506, - "ch.6.send.9.pon": 2543622035, - "ch.6.send.9.ind": 1072533262, - "ch.6.send.9.mode": 3881958541, - "ch.6.send.9.plink": 3282991433, - "ch.6.send.9.pan": 3196230518, - "ch.6.send.10": 3577475911, - "ch.6.send.10.on": 3679487544, - "ch.6.send.10.lvl": 1332238968, - "ch.6.send.10.pon": 1852279250, - "ch.6.send.10.ind": 3319986169, - "ch.6.send.10.mode": 4192152703, - "ch.6.send.10.plink": 211047491, - "ch.6.send.10.pan": 1921778209, - "ch.6.send.11": 2811636704, - "ch.6.send.11.on": 3297484417, - "ch.6.send.11.lvl": 1375978841, - "ch.6.send.11.pon": 2983108307, - "ch.6.send.11.ind": 2927528856, - "ch.6.send.11.mode": 2507859867, - "ch.6.send.11.plink": 370857942, - "ch.6.send.11.pan": 703864256, - "ch.6.send.12": 3718063827, - "ch.6.send.12.on": 1804077788, - "ch.6.send.12.lvl": 725606164, - "ch.6.send.12.pon": 3465544942, - "ch.6.send.12.ind": 1455062365, - "ch.6.send.12.mode": 4102347798, - "ch.6.send.12.plink": 3635372092, - "ch.6.send.12.pan": 3354691461, - "ch.6.send.13": 3083624332, - "ch.6.send.13.on": 3578079422, - "ch.6.send.13.lvl": 2909622118, - "ch.6.send.13.pon": 2450855116, - "ch.6.send.13.ind": 3874624943, - "ch.6.send.13.mode": 2714896454, - "ch.6.send.13.plink": 2808220977, - "ch.6.send.13.pan": 1982900135, - "ch.6.send.14": 2276169785, - "ch.6.send.14.on": 3901231762, - "ch.6.send.14.lvl": 437270898, - "ch.6.send.14.pon": 896674520, - "ch.6.send.14.ind": 4271167379, - "ch.6.send.14.mode": 4261764207, - "ch.6.send.14.plink": 2041452807, - "ch.6.send.14.pan": 1028428251, - "ch.6.send.15": 1305858266, - "ch.6.send.15.on": 2244169977, - "ch.6.send.15.lvl": 4244317473, - "ch.6.send.15.pon": 2564038459, - "ch.6.send.15.ind": 2608882528, - "ch.6.send.15.mode": 3931898379, - "ch.6.send.15.plink": 2548709732, - "ch.6.send.15.pan": 548392312, - "ch.6.send.16": 3755998016, - "ch.6.send.16.on": 1448077748, - "ch.6.send.16.lvl": 3563569276, - "ch.6.send.16.pon": 4083852278, - "ch.6.send.16.ind": 1088577189, - "ch.6.send.16.mode": 120975519, - "ch.6.send.16.plink": 289022243, - "ch.6.send.16.pan": 4153436349, - "ch.6.send.MX1": 609374368, - "ch.6.send.MX1.on": 3268795420, - "ch.6.send.MX1.lvl": 2267882366, - "ch.6.send.MX1.pon": 169666062, - "ch.6.send.MX1.ind": 3800175649, - "ch.6.send.MX1.mode": 4157890636, - "ch.6.send.MX1.plink": 2095757281, - "ch.6.send.MX1.pan": 2199215361, - "ch.6.send.MX2": 1565566626, - "ch.6.send.MX2.on": 3924166810, - "ch.6.send.MX2.lvl": 1948215576, - "ch.6.send.MX2.pon": 48231332, - "ch.6.send.MX2.ind": 988404303, - "ch.6.send.MX2.mode": 4260990470, - "ch.6.send.MX2.plink": 2490850907, - "ch.6.send.MX2.pan": 2134779471, - "ch.6.send.MX3": 3702393108, - "ch.6.send.MX3.on": 100006938, - "ch.6.send.MX3.lvl": 2132009314, - "ch.6.send.MX3.pon": 2775571730, - "ch.6.send.MX3.ind": 857328133, - "ch.6.send.MX3.mode": 1388935864, - "ch.6.send.MX3.plink": 2433195181, - "ch.6.send.MX3.pan": 2014005221, - "ch.6.send.MX4": 118227395, - "ch.6.send.MX4.on": 486925717, - "ch.6.send.MX4.lvl": 2343756524, - "ch.6.send.MX4.pon": 453830792, - "ch.6.send.MX4.ind": 3940612739, - "ch.6.send.MX4.mode": 308888146, - "ch.6.send.MX4.plink": 2206155655, - "ch.6.send.MX4.pan": 1310401928, - "ch.6.send.MX5": 1918237326, - "ch.6.send.MX5.on": 1142256035, - "ch.6.send.MX5.lvl": 2358304246, - "ch.6.send.MX5.pon": 291744582, - "ch.6.send.MX5.ind": 1314210041, - "ch.6.send.MX5.mode": 4189869476, - "ch.6.send.MX5.plink": 2915799561, - "ch.6.send.MX5.pan": 2042069113, - "ch.6.send.MX6": 2807296821, - "ch.6.send.MX6.on": 1445332286, - "ch.6.send.MX6.lvl": 1996818256, - "ch.6.send.MX6.pon": 66096284, - "ch.6.send.MX6.ind": 956762663, - "ch.6.send.MX6.mode": 1316705118, - "ch.6.send.MX6.plink": 2543750755, - "ch.6.send.MX6.pan": 1920618951, - "ch.6.send.MX7": 296855858, - "ch.6.send.MX7.on": 1832251065, - "ch.6.send.MX7.lvl": 2694203546, - "ch.6.send.MX7.pon": 353690602, - "ch.6.send.MX7.ind": 681136285, - "ch.6.send.MX7.mode": 231369872, - "ch.6.send.MX7.plink": 2631954773, - "ch.6.send.MX7.pan": 1427191658, - "ch.6.send.MX8": 1427087785, - "ch.6.send.MX8.on": 2571467575, - "ch.6.send.MX8.lvl": 2332430564, - "ch.6.send.MX8.pon": 400666752, - "ch.6.send.MX8.ind": 3908640251, - "ch.6.send.MX8.mode": 4070412810, - "ch.6.send.MX8.plink": 3011319215, - "ch.6.send.MX8.pan": 2258509083, - "ch.6.tapwid": 3542831629, - "ch.6.postins": 3956390446, - "ch.6.postins.on": 1035995449, - "ch.6.postins.mode": 2158242058, - "ch.6.postins.ins": 496444821, - "ch.6.postins.w": 2077825183, - "ch.6.postins.$stat": 3078851659, - "ch.6.tags": 2818976429, - "ch.6.$fdr": 161341272, - "ch.6.$mute": 2823647442, - "ch.6.$muteovr": 3674402308, - "ch.7": 3503951980, - "ch.7.in": 3605877896, - "ch.7.in.set": 2650147478, - "ch.7.in.set.$mode": 1893595307, - "ch.7.in.set.srcauto": 2609781409, - "ch.7.in.set.altsrc": 3569469952, - "ch.7.in.set.inv": 2739806675, - "ch.7.in.set.trim": 1264994608, - "ch.7.in.set.bal": 3977865821, - "ch.7.in.set.$g": 3658385813, - "ch.7.in.set.$vph": 2933179427, - "ch.7.in.set.dlymode": 758008698, - "ch.7.in.set.dly": 3500875743, - "ch.7.in.set.dlyon": 3088892533, - "ch.7.in.conn": 1593052401, - "ch.7.in.conn.grp": 2038007882, - "ch.7.in.conn.in": 2411978937, - "ch.7.in.conn.altgrp": 1644960633, - "ch.7.in.conn.altin": 2192333456, - "ch.7.flt": 4170023413, - "ch.7.flt.lc": 4191519167, - "ch.7.flt.lcf": 4145371110, - "ch.7.flt.hc": 1264870532, - "ch.7.flt.hcf": 1799081625, - "ch.7.flt.tf": 1255675563, - "ch.7.flt.mdl": 1156504296, - "ch.7.flt.1": 2152727704, - "ch.7.flt.2": 3495119707, - "ch.7.clink": 1734091076, - "ch.7.col": 1231766595, - "ch.7.name": 2081455601, - "ch.7.icon": 841091329, - "ch.7.led": 2560326485, - "ch.7.$col": 3373302836, - "ch.7.$name": 1579496311, - "ch.7.$icon": 341904378, - "ch.7.mute": 1695726215, - "ch.7.fdr": 710156725, - "ch.7.pan": 2290213957, - "ch.7.wid": 454710462, - "ch.7.$solo": 4108576678, - "ch.7.$sololed": 2911473050, - "ch.7.solosafe": 3825965701, - "ch.7.mon": 3279893171, - "ch.7.proc": 1817378500, - "ch.7.ptap": 2849681400, - "ch.7.$presolo": 1564361828, - "ch.7.peq": 2633419714, - "ch.7.peq.on": 3634430561, - "ch.7.peq.1g": 2965463793, - "ch.7.peq.1f": 3977547807, - "ch.7.peq.1q": 711486817, - "ch.7.peq.2g": 6861408, - "ch.7.peq.2f": 1041139581, - "ch.7.peq.2q": 1058487504, - "ch.7.peq.3g": 1439387188, - "ch.7.peq.3f": 3542163009, - "ch.7.peq.3q": 1351144356, - "ch.7.gate": 1607562859, - "ch.7.gate.on": 1022892807, - "ch.7.gate.mdl": 4288751310, - "ch.7.gate.1": 842381964, - "ch.7.gate.2": 2292184025, - "ch.7.gate.3": 3760182550, - "ch.7.gate.4": 262269264, - "ch.7.gate.5": 4167458946, - "ch.7.gate.6": 2951266783, - "ch.7.gate.7": 103316937, - "ch.7.gate.8": 1571458822, - "ch.7.gate.9": 3039744083, - "ch.7.gatesc": 2894651371, - "ch.7.gatesc.type": 3200350355, - "ch.7.gatesc.f": 3886928422, - "ch.7.gatesc.q": 3899039205, - "ch.7.gatesc.src": 3108303763, - "ch.7.gatesc.tap": 3966375192, - "ch.7.gatesc.$solo": 2468819053, - "ch.7.eq": 712420954, - "ch.7.eq.on": 4117551020, - "ch.7.eq.mdl": 1418863372, - "ch.7.eq.mix": 1410284045, - "ch.7.eq.$solo": 3397298261, - "ch.7.eq.$solobd": 2582642, - "ch.7.eq.1": 2655084150, - "ch.7.eq.2": 3142408148, - "ch.7.eq.3": 1699718626, - "ch.7.eq.4": 3125935237, - "ch.7.eq.5": 3294495880, - "ch.7.eq.6": 425704259, - "ch.7.eq.7": 2968278500, - "ch.7.eq.8": 3807251647, - "ch.7.eq.9": 2029530405, - "ch.7.eq.10": 3171203155, - "ch.7.eq.11": 4010176301, - "ch.7.eq.12": 2483582722, - "ch.7.eq.13": 3994340791, - "ch.7.eq.14": 3809921150, - "ch.7.eq.15": 1025691427, - "ch.7.eq.16": 1261256653, - "ch.7.eq.17": 1387218850, - "ch.7.eq.18": 2813435516, - "ch.7.eq.19": 1102944542, - "ch.7.eq.20": 3904872868, - "ch.7.dyn": 2128254378, - "ch.7.dyn.on": 2431632656, - "ch.7.dyn.mdl": 1822296538, - "ch.7.dyn.mix": 290934960, - "ch.7.dyn.gain": 2240689154, - "ch.7.dyn.1": 3975450874, - "ch.7.dyn.2": 3170482041, - "ch.7.dyn.3": 1940635476, - "ch.7.dyn.4": 1403749413, - "ch.7.dyn.5": 2298317840, - "ch.7.dyn.6": 4011549082, - "ch.7.dyn.7": 2823809049, - "ch.7.dyn.8": 408022387, - "ch.7.dyn.9": 3181491397, - "ch.7.dynxo": 635792813, - "ch.7.dynxo.depth": 4085537332, - "ch.7.dynxo.type": 3551375508, - "ch.7.dynxo.f": 3159702787, - "ch.7.dynxo.$solo": 2922167312, - "ch.7.dynsc": 2446087534, - "ch.7.dynsc.type": 3717953513, - "ch.7.dynsc.f": 3573837001, - "ch.7.dynsc.q": 3426034220, - "ch.7.dynsc.src": 1913803655, - "ch.7.dynsc.tap": 182715638, - "ch.7.dynsc.$solo": 1896773263, - "ch.7.preins": 2451662130, - "ch.7.preins.on": 2230293470, - "ch.7.preins.ins": 1546488875, - "ch.7.preins.$stat": 2999595049, - "ch.7.main": 3259534256, - "ch.7.main.1": 2734501414, - "ch.7.main.1.on": 1514941581, - "ch.7.main.1.lvl": 634343420, - "ch.7.main.1.pre": 1686333111, - "ch.7.main.2": 1562587187, - "ch.7.main.2.on": 2445257447, - "ch.7.main.2.lvl": 373150070, - "ch.7.main.2.pre": 4227261917, - "ch.7.main.3": 2602131861, - "ch.7.main.3.on": 2079803839, - "ch.7.main.3.lvl": 2876922958, - "ch.7.main.3.pre": 1714319509, - "ch.7.main.4": 1928281007, - "ch.7.main.4.on": 1512948421, - "ch.7.main.4.lvl": 2578507316, - "ch.7.main.4.pre": 1341641231, - "ch.7.send": 1424889447, - "ch.7.send.1": 432178682, - "ch.7.send.1.on": 2981958322, - "ch.7.send.1.lvl": 3258906147, - "ch.7.send.1.pon": 1582321154, - "ch.7.send.1.ind": 4223927655, - "ch.7.send.1.mode": 2751482684, - "ch.7.send.1.plink": 1335141254, - "ch.7.send.1.pan": 2234182207, - "ch.7.send.2": 1790266336, - "ch.7.send.2.on": 2395152016, - "ch.7.send.2.lvl": 1849688577, - "ch.7.send.2.pon": 2865750576, - "ch.7.send.2.ind": 1824188821, - "ch.7.send.2.mode": 349091614, - "ch.7.send.2.plink": 1428825679, - "ch.7.send.2.pan": 2884896285, - "ch.7.send.3": 3299631773, - "ch.7.send.3.on": 174969713, - "ch.7.send.3.lvl": 3924474208, - "ch.7.send.3.pon": 827789265, - "ch.7.send.3.ind": 3898984588, - "ch.7.send.3.mode": 2421296767, - "ch.7.send.3.plink": 3330096064, - "ch.7.send.3.pan": 825994244, - "ch.7.send.4": 184537758, - "ch.7.send.4.on": 1131663728, - "ch.7.send.4.lvl": 3623201505, - "ch.7.send.4.pon": 1176288848, - "ch.7.send.4.ind": 4184917109, - "ch.7.send.4.mode": 1359762942, - "ch.7.send.4.plink": 2500744608, - "ch.7.send.4.pan": 440449597, - "ch.7.send.5": 1447070809, - "ch.7.send.5.on": 1066472974, - "ch.7.send.5.lvl": 3205361695, - "ch.7.send.5.pon": 3162757414, - "ch.7.send.5.ind": 496165003, - "ch.7.send.5.mode": 3308206848, - "ch.7.send.5.plink": 3850072148, - "ch.7.send.5.pan": 4234059075, - "ch.7.send.6": 3893275783, - "ch.7.send.6.on": 1541369017, - "ch.7.send.6.lvl": 3345038376, - "ch.7.send.6.pon": 2975770665, - "ch.7.send.6.ind": 4259733380, - "ch.7.send.6.mode": 2792485175, - "ch.7.send.6.plink": 391159434, - "ch.7.send.6.pan": 87598092, - "ch.7.send.7": 941366400, - "ch.7.send.7.on": 3921604778, - "ch.7.send.7.lvl": 3191594683, - "ch.7.send.7.pon": 1649673610, - "ch.7.send.7.ind": 532069295, - "ch.7.send.7.mode": 2001897892, - "ch.7.send.7.plink": 3197773890, - "ch.7.send.7.pan": 1987586391, - "ch.7.send.8": 2121085757, - "ch.7.send.8.on": 4226430122, - "ch.7.send.8.lvl": 543957691, - "ch.7.send.8.pon": 4292026762, - "ch.7.send.8.ind": 2984716207, - "ch.7.send.8.mode": 1507028388, - "ch.7.send.8.plink": 1092193869, - "ch.7.send.8.pan": 1656208727, - "ch.7.send.9": 431006523, - "ch.7.send.9.on": 228428746, - "ch.7.send.9.lvl": 421493211, - "ch.7.send.9.pon": 41045866, - "ch.7.send.9.ind": 2946127567, - "ch.7.send.9.mode": 1463207108, - "ch.7.send.9.plink": 2157286046, - "ch.7.send.9.pan": 1448547127, - "ch.7.send.10": 2514666372, - "ch.7.send.10.on": 1573535247, - "ch.7.send.10.lvl": 2431803999, - "ch.7.send.10.pon": 4035969573, - "ch.7.send.10.ind": 1869414518, - "ch.7.send.10.mode": 1925467350, - "ch.7.send.10.plink": 4059001468, - "ch.7.send.10.pan": 146127438, - "ch.7.send.11": 3878050379, - "ch.7.send.11.on": 2443765479, - "ch.7.send.11.lvl": 1895873959, - "ch.7.send.11.pon": 3469682285, - "ch.7.send.11.ind": 2776990526, - "ch.7.send.11.mode": 3773947008, - "ch.7.send.11.plink": 3512877940, - "ch.7.send.11.pan": 875128166, - "ch.7.send.12": 485821176, - "ch.7.send.12.on": 1341157989, - "ch.7.send.12.lvl": 514365109, - "ch.7.send.12.pon": 3173592527, - "ch.7.send.12.ind": 1663948268, - "ch.7.send.12.mode": 795641916, - "ch.7.send.12.plink": 3221437466, - "ch.7.send.12.pan": 3062165156, - "ch.7.send.13": 2001238463, - "ch.7.send.13.on": 1702437134, - "ch.7.send.13.lvl": 1159788502, - "ch.7.send.13.pon": 576605340, - "ch.7.send.13.ind": 1369857407, - "ch.7.send.13.mode": 2728373489, - "ch.7.send.13.plink": 1587266605, - "ch.7.send.13.pan": 150511479, - "ch.7.send.14": 3365104018, - "ch.7.send.14.on": 2073075105, - "ch.7.send.14.lvl": 2604168953, - "ch.7.send.14.pon": 3091690035, - "ch.7.send.14.ind": 1739788664, - "ch.7.send.14.mode": 2436297915, - "ch.7.send.14.plink": 2544300519, - "ch.7.send.14.pan": 854400864, - "ch.7.send.15": 239534161, - "ch.7.send.15.on": 326682451, - "ch.7.send.15.lvl": 3679514171, - "ch.7.send.15.pon": 4135638561, - "ch.7.send.15.ind": 701246746, - "ch.7.send.15.mode": 3468811400, - "ch.7.send.15.plink": 926671834, - "ch.7.send.15.pan": 1919239634, - "ch.7.send.16": 2688363243, - "ch.7.send.16.on": 1675935000, - "ch.7.send.16.lvl": 849143384, - "ch.7.send.16.pon": 3509781234, - "ch.7.send.16.ind": 1327605785, - "ch.7.send.16.mode": 2668846039, - "ch.7.send.16.plink": 393796511, - "ch.7.send.16.pan": 3398254081, - "ch.7.send.MX1": 3073058927, - "ch.7.send.MX1.on": 721327227, - "ch.7.send.MX1.lvl": 2233965840, - "ch.7.send.MX1.pon": 3883795848, - "ch.7.send.MX1.ind": 967297248, - "ch.7.send.MX1.mode": 3573380290, - "ch.7.send.MX1.plink": 2702012730, - "ch.7.send.MX1.pan": 1748786252, - "ch.7.send.MX2": 4067938045, - "ch.7.send.MX2.on": 1418621125, - "ch.7.send.MX2.lvl": 1599440250, - "ch.7.send.MX2.pon": 3758802390, - "ch.7.send.MX2.ind": 4229943694, - "ch.7.send.MX2.mode": 68235940, - "ch.7.send.MX2.plink": 3730983516, - "ch.7.send.MX2.pan": 839692362, - "ch.7.send.MX3": 1115644099, - "ch.7.send.MX3.on": 1763599429, - "ch.7.send.MX3.lvl": 1317082836, - "ch.7.send.MX3.pon": 4162507260, - "ch.7.send.MX3.ind": 4098907156, - "ch.7.send.MX3.mode": 3718323630, - "ch.7.send.MX3.plink": 1848786438, - "ch.7.send.MX3.pan": 719312352, - "ch.7.send.MX4": 2536589844, - "ch.7.send.MX4.on": 2192461258, - "ch.7.send.MX4.lvl": 1931001518, - "ch.7.send.MX4.pon": 31783242, - "ch.7.send.MX4.ind": 1102777970, - "ch.7.send.MX4.mode": 3347302976, - "ch.7.send.MX4.plink": 1951648104, - "ch.7.send.MX4.pan": 2674902542, - "ch.7.send.MX5": 3878584873, - "ch.7.send.MX5.on": 2847853028, - "ch.7.send.MX5.lvl": 1673973720, - "ch.7.send.MX5.pon": 3866253680, - "ch.7.send.MX5.ind": 4286944424, - "ch.7.send.MX5.mode": 3603994730, - "ch.7.send.MX5.plink": 3840475410, - "ch.7.send.MX5.pan": 1591026964, - "ch.7.send.MX6": 847604634, - "ch.7.send.MX6.on": 3360583017, - "ch.7.send.MX6.lvl": 1727170594, - "ch.7.send.MX6.pon": 478504574, - "ch.7.send.MX6.ind": 4197695766, - "ch.7.send.MX6.mode": 193888620, - "ch.7.send.MX6.plink": 2272666036, - "ch.7.send.MX6.pan": 965691634, - "ch.7.send.MX7": 2046996717, - "ch.7.send.MX7.on": 3789444846, - "ch.7.send.MX7.lvl": 1505544060, - "ch.7.send.MX7.pon": 267902052, - "ch.7.send.MX7.ind": 1806256540, - "ch.7.send.MX7.mode": 4108651382, - "ch.7.send.MX7.plink": 2051104030, - "ch.7.send.MX7.pan": 741124712, - "ch.7.send.MX8": 3384056334, - "ch.7.send.MX8.on": 107926392, - "ch.7.send.MX8.lvl": 1961671510, - "ch.7.send.MX8.pon": 3771395570, - "ch.7.send.MX8.ind": 1066587930, - "ch.7.send.MX8.mode": 3464920296, - "ch.7.send.MX8.plink": 4271565504, - "ch.7.send.MX8.pan": 1808125654, - "ch.7.tapwid": 3929987913, - "ch.7.postins": 2030147671, - "ch.7.postins.on": 679093403, - "ch.7.postins.mode": 3260863592, - "ch.7.postins.ins": 849378919, - "ch.7.postins.w": 2432766989, - "ch.7.postins.$stat": 3236485478, - "ch.7.tags": 435619338, - "ch.7.$fdr": 1517407119, - "ch.7.$mute": 3873676851, - "ch.7.$muteovr": 3405277395, - "ch.8": 514916998, - "ch.8.in": 2928973961, - "ch.8.in.set": 2838835677, - "ch.8.in.set.$mode": 527868765, - "ch.8.in.set.srcauto": 3316849536, - "ch.8.in.set.altsrc": 881758007, - "ch.8.in.set.inv": 607307371, - "ch.8.in.set.trim": 3691095128, - "ch.8.in.set.bal": 2310852389, - "ch.8.in.set.$g": 4251741901, - "ch.8.in.set.$vph": 2012389307, - "ch.8.in.set.dlymode": 1848735292, - "ch.8.in.set.dly": 2703295575, - "ch.8.in.set.dlyon": 3796618025, - "ch.8.in.conn": 1446306682, - "ch.8.in.conn.grp": 4245630194, - "ch.8.in.conn.in": 1389905361, - "ch.8.in.conn.altgrp": 261935170, - "ch.8.in.conn.altin": 4110263675, - "ch.8.flt": 3492691396, - "ch.8.flt.lc": 741872243, - "ch.8.flt.lcf": 2108858154, - "ch.8.flt.hc": 668668864, - "ch.8.flt.hcf": 3134801725, - "ch.8.flt.tf": 694246871, - "ch.8.flt.mdl": 761629252, - "ch.8.flt.1": 2749018916, - "ch.8.flt.2": 2780077247, - "ch.8.clink": 3151723127, - "ch.8.col": 1617526138, - "ch.8.name": 1170280020, - "ch.8.icon": 612598306, - "ch.8.led": 1878366628, - "ch.8.$col": 3689046601, - "ch.8.$name": 3773282737, - "ch.8.$icon": 4004759594, - "ch.8.mute": 2829243284, - "ch.8.fdr": 1048688132, - "ch.8.pan": 827273236, - "ch.8.wid": 3294806127, - "ch.8.$solo": 3197026979, - "ch.8.$sololed": 1928797604, - "ch.8.solosafe": 399960275, - "ch.8.mon": 408342122, - "ch.8.proc": 1684997186, - "ch.8.ptap": 2697698004, - "ch.8.$presolo": 1450160054, - "ch.8.peq": 885394779, - "ch.8.peq.on": 2979330375, - "ch.8.peq.1g": 741827031, - "ch.8.peq.1f": 1711888697, - "ch.8.peq.1q": 3019050567, - "ch.8.peq.2g": 2314384254, - "ch.8.peq.2f": 3027890315, - "ch.8.peq.2q": 330737134, - "ch.8.peq.3g": 2125849898, - "ch.8.peq.3f": 2813142823, - "ch.8.peq.3q": 1953160346, - "ch.8.gate": 302487071, - "ch.8.gate.on": 3682464283, - "ch.8.gate.mdl": 830149033, - "ch.8.gate.1": 3233670640, - "ch.8.gate.2": 370710861, - "ch.8.gate.3": 507066202, - "ch.8.gate.4": 1645492012, - "ch.8.gate.5": 2855944174, - "ch.8.gate.6": 1376444219, - "ch.8.gate.7": 2478149309, - "ch.8.gate.8": 2609287690, - "ch.8.gate.9": 4088188935, - "ch.8.gatesc": 4212146319, - "ch.8.gatesc.type": 1545009572, - "ch.8.gatesc.f": 2406242385, - "ch.8.gatesc.q": 2249264570, - "ch.8.gatesc.src": 1202945764, - "ch.8.gatesc.tap": 2481759559, - "ch.8.gatesc.$solo": 1160115615, - "ch.8.eq": 3243840171, - "ch.8.eq.on": 201119118, - "ch.8.eq.mdl": 1039678046, - "ch.8.eq.mix": 1118378799, - "ch.8.eq.$solo": 459908730, - "ch.8.eq.$solobd": 1402114333, - "ch.8.eq.1": 2276556500, - "ch.8.eq.2": 2849854838, - "ch.8.eq.3": 2075505216, - "ch.8.eq.4": 2749453207, - "ch.8.eq.5": 3587056570, - "ch.8.eq.6": 133799169, - "ch.8.eq.7": 3260176230, - "ch.8.eq.8": 4101896317, - "ch.8.eq.9": 1650467575, - "ch.8.eq.10": 2792757201, - "ch.8.eq.11": 3634303295, - "ch.8.eq.12": 2860147008, - "ch.8.eq.13": 3701703317, - "ch.8.eq.14": 4101946556, - "ch.8.eq.15": 649825793, - "ch.8.eq.16": 882720927, - "ch.8.eq.17": 1766363296, - "ch.8.eq.18": 2434904510, - "ch.8.eq.19": 1397550108, - "ch.8.eq.20": 4280661622, - "ch.8.dyn": 1453479795, - "ch.8.dyn.on": 432419827, - "ch.8.dyn.mdl": 2516613297, - "ch.8.dyn.mix": 2321602491, - "ch.8.dyn.gain": 3601288739, - "ch.8.dyn.1": 1707147209, - "ch.8.dyn.2": 3823585450, - "ch.8.dyn.3": 2630354591, - "ch.8.dyn.4": 3673363694, - "ch.8.dyn.5": 41155283, - "ch.8.dyn.6": 410898537, - "ch.8.dyn.7": 3512957258, - "ch.8.dyn.8": 4019076784, - "ch.8.dyn.9": 923747726, - "ch.8.dynxo": 2626411686, - "ch.8.dynxo.depth": 777783362, - "ch.8.dynxo.type": 2052231627, - "ch.8.dynxo.f": 1176218568, - "ch.8.dynxo.$solo": 3824726338, - "ch.8.dynsc": 1745800869, - "ch.8.dynsc.type": 1064653814, - "ch.8.dynsc.f": 4220960130, - "ch.8.dynsc.q": 2742776575, - "ch.8.dynsc.src": 3566044838, - "ch.8.dynsc.tap": 4178193249, - "ch.8.dynsc.$solo": 1395813742, - "ch.8.preins": 660628753, - "ch.8.preins.on": 3855196836, - "ch.8.preins.ins": 3142728401, - "ch.8.preins.$stat": 1204858017, - "ch.8.main": 60315033, - "ch.8.main.1": 1219284631, - "ch.8.main.1.on": 3296564335, - "ch.8.main.1.lvl": 3103748190, - "ch.8.main.1.pre": 783516837, - "ch.8.main.2": 414451706, - "ch.8.main.2.on": 3048859653, - "ch.8.main.2.lvl": 3845574132, - "ch.8.main.2.pre": 703607375, - "ch.8.main.3": 4169728564, - "ch.8.main.3.on": 445296201, - "ch.8.main.3.lvl": 168590936, - "ch.8.main.3.pre": 84993275, - "ch.8.main.4": 3370138510, - "ch.8.main.4.on": 2891946391, - "ch.8.main.4.lvl": 1826719494, - "ch.8.main.4.pre": 1109926637, - "ch.8.send": 930624404, - "ch.8.send.1": 1932385505, - "ch.8.send.1.on": 3065441485, - "ch.8.send.1.lvl": 1178211004, - "ch.8.send.1.pon": 3537351061, - "ch.8.send.1.ind": 2494888496, - "ch.8.send.1.mode": 3972622243, - "ch.8.send.1.plink": 2745424200, - "ch.8.send.1.pan": 2214442360, - "ch.8.send.2": 2713711899, - "ch.8.send.2.on": 3910893858, - "ch.8.send.2.lvl": 161064883, - "ch.8.send.2.pon": 1948826738, - "ch.8.send.2.ind": 3004479063, - "ch.8.send.2.mode": 192437420, - "ch.8.send.2.plink": 4198436116, - "ch.8.send.2.pan": 1280178351, - "ch.8.send.3": 3353470926, - "ch.8.send.3.on": 755923991, - "ch.8.send.3.lvl": 1821157766, - "ch.8.send.3.pon": 209928127, - "ch.8.send.3.ind": 1661437722, - "ch.8.send.3.mode": 188961945, - "ch.8.send.3.plink": 984971736, - "ch.8.send.3.pan": 879272834, - "ch.8.send.4": 28569197, - "ch.8.send.4.on": 3306475038, - "ch.8.send.4.lvl": 3768049679, - "ch.8.send.4.pon": 2594703670, - "ch.8.send.4.ind": 3877438235, - "ch.8.send.4.mode": 1068012816, - "ch.8.send.4.plink": 1944151903, - "ch.8.send.4.pan": 2659403091, - "ch.8.send.5": 3063297106, - "ch.8.send.5.on": 2417572311, - "ch.8.send.5.lvl": 1687636934, - "ch.8.send.5.pon": 3153591679, - "ch.8.send.5.ind": 1847347034, - "ch.8.send.5.mode": 3317211353, - "ch.8.send.5.plink": 1195230699, - "ch.8.send.5.pan": 2798911810, - "ch.8.send.6": 610540996, - "ch.8.send.6.on": 3342938856, - "ch.8.send.6.lvl": 2881766617, - "ch.8.send.6.pon": 1917722488, - "ch.8.send.6.ind": 624912413, - "ch.8.send.6.mode": 3444767174, - "ch.8.send.6.plink": 1020482335, - "ch.8.send.6.pan": 1853053845, - "ch.8.send.7": 1418118267, - "ch.8.send.7.on": 1606397096, - "ch.8.send.7.lvl": 540921881, - "ch.8.send.7.pon": 5544248, - "ch.8.send.7.ind": 2847465309, - "ch.8.send.7.mode": 22316294, - "ch.8.send.7.plink": 2438660226, - "ch.8.send.7.pan": 3631863125, - "ch.8.send.8": 2388178734, - "ch.8.send.8.on": 1951143987, - "ch.8.send.8.lvl": 3016703042, - "ch.8.send.8.pon": 3351456995, - "ch.8.send.8.ind": 710157086, - "ch.8.send.8.mode": 3519541597, - "ch.8.send.8.plink": 946089838, - "ch.8.send.8.pan": 4041117894, - "ch.8.send.9": 4080713792, - "ch.8.send.9.on": 3583931264, - "ch.8.send.9.lvl": 1176607249, - "ch.8.send.9.pon": 975023904, - "ch.8.send.9.ind": 2007410949, - "ch.8.send.9.mode": 540208910, - "ch.8.send.9.plink": 1925439762, - "ch.8.send.9.pan": 2298055437, - "ch.8.send.10": 4140728239, - "ch.8.send.10.on": 2838458398, - "ch.8.send.10.lvl": 2169980614, - "ch.8.send.10.pon": 3861421420, - "ch.8.send.10.ind": 2463895119, - "ch.8.send.10.mode": 3442877404, - "ch.8.send.10.plink": 2596662458, - "ch.8.send.10.pan": 1245900551, - "ch.8.send.11": 632320584, - "ch.8.send.11.on": 1789546477, - "ch.8.send.11.lvl": 1073902605, - "ch.8.send.11.pon": 500125703, - "ch.8.send.11.ind": 1451743780, - "ch.8.send.11.mode": 1693391968, - "ch.8.send.11.plink": 423912980, - "ch.8.send.11.pan": 53136492, - "ch.8.send.12": 4020942907, - "ch.8.send.12.on": 2626087826, - "ch.8.send.12.lvl": 2383331954, - "ch.8.send.12.pon": 3916505560, - "ch.8.send.12.ind": 2324924563, - "ch.8.send.12.mode": 2808460271, - "ch.8.send.12.plink": 2320391303, - "ch.8.send.12.pan": 4048251611, - "ch.8.send.13": 360501972, - "ch.8.send.13.on": 655093328, - "ch.8.send.13.lvl": 1539576448, - "ch.8.send.13.pon": 973976058, - "ch.8.send.13.ind": 977227777, - "ch.8.send.13.mode": 1022895430, - "ch.8.send.13.plink": 330800204, - "ch.8.send.13.pan": 3212012057, - "ch.8.send.14": 1147066753, - "ch.8.send.14.on": 3783715748, - "ch.8.send.14.lvl": 556711884, - "ch.8.send.14.pon": 2119369830, - "ch.8.send.14.ind": 4121558741, - "ch.8.send.14.mode": 1957674878, - "ch.8.send.14.plink": 2341996212, - "ch.8.send.14.pan": 2230806381, - "ch.8.send.15": 2117168162, - "ch.8.send.15.on": 3171042653, - "ch.8.send.15.lvl": 3649707037, - "ch.8.send.15.pon": 2046109751, - "ch.8.send.15.ind": 2869265108, - "ch.8.send.15.mode": 830030133, - "ch.8.send.15.plink": 3016923844, - "ch.8.send.15.pan": 1977271260, - "ch.8.send.16": 3961995688, - "ch.8.send.16.on": 3966684295, - "ch.8.send.16.lvl": 35037383, - "ch.8.send.16.pon": 527156045, - "ch.8.send.16.ind": 10184606, - "ch.8.send.16.mode": 2281532308, - "ch.8.send.16.plink": 1160674690, - "ch.8.send.16.pan": 2584168582, - "ch.8.send.MX1": 2641610648, - "ch.8.send.MX1.on": 347387188, - "ch.8.send.MX1.lvl": 564534717, - "ch.8.send.MX1.pon": 158587245, - "ch.8.send.MX1.ind": 2365246799, - "ch.8.send.MX1.mode": 813522245, - "ch.8.send.MX1.plink": 3715454333, - "ch.8.send.MX1.pan": 364772745, - "ch.8.send.MX2": 2062495690, - "ch.8.send.MX2.on": 3955527474, - "ch.8.send.MX2.lvl": 4204278943, - "ch.8.send.MX2.pon": 38457107, - "ch.8.send.MX2.ind": 1289930149, - "ch.8.send.MX2.mode": 378565479, - "ch.8.send.MX2.plink": 3741331074, - "ch.8.send.MX2.pan": 747957527, - "ch.8.send.MX3": 4168450060, - "ch.8.send.MX3.on": 3516170930, - "ch.8.send.MX3.lvl": 720927465, - "ch.8.send.MX3.pon": 1826262665, - "ch.8.send.MX3.ind": 1158855659, - "ch.8.send.MX3.mode": 1365279513, - "ch.8.send.MX3.plink": 80777124, - "ch.8.send.MX3.pan": 627165125, - "ch.8.send.MX4": 3510315195, - "ch.8.send.MX4.on": 3097783309, - "ch.8.send.MX4.lvl": 243924347, - "ch.8.send.MX4.pon": 624256815, - "ch.8.send.MX4.ind": 2523411009, - "ch.8.send.MX4.mode": 733862859, - "ch.8.send.MX4.plink": 264645590, - "ch.8.send.MX4.pan": 66201475, - "ch.8.send.MX5": 1320624486, - "ch.8.send.MX5.on": 2431969419, - "ch.8.send.MX5.lvl": 29081877, - "ch.8.send.MX5.pon": 167290565, - "ch.8.send.MX5.ind": 2757667559, - "ch.8.send.MX5.mode": 1011944317, - "ch.8.send.MX5.plink": 3782278600, - "ch.8.send.MX5.pan": 4232903585, - "ch.8.send.MX6": 473745965, - "ch.8.send.MX6.on": 2181336070, - "ch.8.send.MX6.lvl": 1156602807, - "ch.8.send.MX6.pon": 4068844811, - "ch.8.send.MX6.ind": 1284537181, - "ch.8.send.MX6.mode": 535055071, - "ch.8.send.MX6.plink": 3309559015, - "ch.8.send.MX6.pan": 757313295, - "ch.8.send.MX7": 2994261978, - "ch.8.send.MX7.on": 1741976961, - "ch.8.send.MX7.lvl": 4129130561, - "ch.8.send.MX7.pon": 901656225, - "ch.8.send.MX7.ind": 3271185219, - "ch.8.send.MX7.mode": 1478861617, - "ch.8.send.MX7.plink": 295281164, - "ch.8.send.MX7.pan": 662085117, - "ch.8.send.MX8": 2147383425, - "ch.8.send.MX8.on": 1055192223, - "ch.8.send.MX8.lvl": 520983187, - "ch.8.send.MX8.pon": 109780295, - "ch.8.send.MX8.ind": 2423236601, - "ch.8.send.MX8.mode": 838128099, - "ch.8.send.MX8.plink": 17307710, - "ch.8.send.MX8.pan": 368386747, - "ch.8.tapwid": 976543276, - "ch.8.postins": 2189444821, - "ch.8.postins.on": 1334546283, - "ch.8.postins.mode": 267048342, - "ch.8.postins.ins": 3979310551, - "ch.8.postins.w": 250732573, - "ch.8.postins.$stat": 2474299896, - "ch.8.tags": 1019291009, - "ch.8.$fdr": 2292483258, - "ch.8.$mute": 3056322266, - "ch.8.$muteovr": 971090416, - "ch.9": 741723560, - "ch.9.in": 142763033, - "ch.9.in.set": 35626951, - "ch.9.in.set.$mode": 3483610047, - "ch.9.in.set.srcauto": 1613815605, - "ch.9.in.set.altsrc": 767757700, - "ch.9.in.set.inv": 3136028397, - "ch.9.in.set.trim": 4073805710, - "ch.9.in.set.bal": 3993182819, - "ch.9.in.set.$g": 3827734307, - "ch.9.in.set.$vph": 2353023109, - "ch.9.in.set.dlymode": 1011029390, - "ch.9.in.set.dly": 216989921, - "ch.9.in.set.dlyon": 4048778431, - "ch.9.in.conn": 2420798816, - "ch.9.in.conn.grp": 1725067553, - "ch.9.in.conn.in": 3909790938, - "ch.9.in.conn.altgrp": 2141154340, - "ch.9.in.conn.altin": 3573140365, - "ch.9.flt": 3202904788, - "ch.9.flt.lc": 2581724603, - "ch.9.flt.lcf": 478712034, - "ch.9.flt.hc": 3207650712, - "ch.9.flt.hcf": 2741963285, - "ch.9.flt.tf": 1233867311, - "ch.9.flt.mdl": 1153126892, - "ch.9.flt.1": 251971820, - "ch.9.flt.2": 878608247, - "ch.9.clink": 2827084345, - "ch.9.col": 1847669866, - "ch.9.name": 3379234323, - "ch.9.icon": 4052591119, - "ch.9.led": 518372660, - "ch.9.$col": 3798465951, - "ch.9.$name": 1688316887, - "ch.9.$icon": 400136122, - "ch.9.mute": 3909707966, - "ch.9.fdr": 2411304340, - "ch.9.pan": 831246468, - "ch.9.wid": 3333742975, - "ch.9.$solo": 2388967905, - "ch.9.$sololed": 830232277, - "ch.9.solosafe": 1952522812, - "ch.9.mon": 512000890, - "ch.9.proc": 3621323842, - "ch.9.ptap": 4037388942, - "ch.9.$presolo": 3975072743, - "ch.9.peq": 1112599147, - "ch.9.peq.on": 2878810093, - "ch.9.peq.1g": 83435357, - "ch.9.peq.1f": 3245568787, - "ch.9.peq.1q": 2117156077, - "ch.9.peq.2g": 3559978980, - "ch.9.peq.2f": 1762655249, - "ch.9.peq.2q": 337692020, - "ch.9.peq.3g": 2831932432, - "ch.9.peq.3f": 2150294861, - "ch.9.peq.3q": 4240486048, - "ch.9.gate": 564235479, - "ch.9.gate.on": 2150643843, - "ch.9.gate.mdl": 1902018174, - "ch.9.gate.1": 1928306568, - "ch.9.gate.2": 1166980645, - "ch.9.gate.3": 526855698, - "ch.9.gate.4": 3516526836, - "ch.9.gate.5": 3145222822, - "ch.9.gate.6": 3953181011, - "ch.9.gate.7": 3354383413, - "ch.9.gate.8": 2719521506, - "ch.9.gate.9": 1911993055, - "ch.9.gatesc": 1788486231, - "ch.9.gatesc.type": 3159629526, - "ch.9.gatesc.f": 2256239891, - "ch.9.gatesc.q": 2413052664, - "ch.9.gatesc.src": 2075302294, - "ch.9.gatesc.tap": 838299733, - "ch.9.gatesc.$solo": 319876223, - "ch.9.eq": 3034663483, - "ch.9.eq.on": 4269724381, - "ch.9.eq.mdl": 3761649373, - "ch.9.eq.mix": 3363772860, - "ch.9.eq.$solo": 1547934474, - "ch.9.eq.$solobd": 2450905837, - "ch.9.eq.1": 124746743, - "ch.9.eq.2": 3505607461, - "ch.9.eq.3": 1316205723, - "ch.9.eq.4": 657937716, - "ch.9.eq.5": 3099076385, - "ch.9.eq.6": 2252054490, - "ch.9.eq.7": 477910453, - "ch.9.eq.8": 3590321774, - "ch.9.eq.9": 1813915092, - "ch.9.eq.10": 682892122, - "ch.9.eq.11": 3795129340, - "ch.9.eq.12": 532177771, - "ch.9.eq.13": 41518086, - "ch.9.eq.14": 3657218559, - "ch.9.eq.15": 2810022570, - "ch.9.eq.16": 3583722012, - "ch.9.eq.17": 1709085707, - "ch.9.eq.18": 1029682349, - "ch.9.eq.19": 3403868831, - "ch.9.eq.20": 3752048677, - "ch.9.dyn": 1618256003, - "ch.9.dyn.on": 1474827569, - "ch.9.dyn.mdl": 2444128371, - "ch.9.dyn.mix": 3712410313, - "ch.9.dyn.gain": 2589887396, - "ch.9.dyn.1": 199424347, - "ch.9.dyn.2": 2210491032, - "ch.9.dyn.3": 3571061741, - "ch.9.dyn.4": 2361204268, - "ch.9.dyn.5": 1698033521, - "ch.9.dyn.6": 254527995, - "ch.9.dyn.7": 1615436600, - "ch.9.dyn.8": 2014856306, - "ch.9.dyn.9": 4036054732, - "ch.9.dynxo": 3407723924, - "ch.9.dynxo.depth": 1321372530, - "ch.9.dynxo.type": 3605127577, - "ch.9.dynxo.f": 3784154762, - "ch.9.dynxo.$solo": 2477775854, - "ch.9.dynsc": 3382490247, - "ch.9.dynsc.type": 4183555182, - "ch.9.dynsc.f": 907331248, - "ch.9.dynsc.q": 2217578541, - "ch.9.dynsc.src": 15920871, - "ch.9.dynsc.tap": 2997039241, - "ch.9.dynsc.$solo": 25117105, - "ch.9.preins": 199630239, - "ch.9.preins.on": 3405302379, - "ch.9.preins.ins": 19404182, - "ch.9.preins.$stat": 61489171, - "ch.9.main": 3305264207, - "ch.9.main.1": 1616299505, - "ch.9.main.1.on": 2690515876, - "ch.9.main.1.lvl": 2077946933, - "ch.9.main.1.pre": 2513866094, - "ch.9.main.2": 266209604, - "ch.9.main.2.on": 2024351330, - "ch.9.main.2.lvl": 2905279091, - "ch.9.main.2.pre": 1685190224, - "ch.9.main.3": 4166975082, - "ch.9.main.3.on": 3664977974, - "ch.9.main.3.lvl": 3387950151, - "ch.9.main.3.pre": 1173068556, - "ch.9.main.4": 2151039408, - "ch.9.main.4.on": 4073737030, - "ch.9.main.4.lvl": 3008180535, - "ch.9.main.4.pre": 4266018172, - "ch.9.send": 2587006358, - "ch.9.send.1": 2087953283, - "ch.9.send.1.on": 1730768432, - "ch.9.send.1.lvl": 850173473, - "ch.9.send.1.pon": 3859983120, - "ch.9.send.1.ind": 2301076405, - "ch.9.send.1.mode": 823388478, - "ch.9.send.1.plink": 2392199109, - "ch.9.send.1.pan": 4193814269, - "ch.9.send.2": 711339561, - "ch.9.send.2.on": 2300325838, - "ch.9.send.2.lvl": 4103755359, - "ch.9.send.2.pon": 2258957030, - "ch.9.send.2.ind": 3541384395, - "ch.9.send.2.mode": 2074192704, - "ch.9.send.2.plink": 1837342914, - "ch.9.send.2.pan": 2995451651, - "ch.9.send.3": 704389500, - "ch.9.send.3.on": 390673234, - "ch.9.send.3.lvl": 113727811, - "ch.9.send.3.pon": 1959423970, - "ch.9.send.3.ind": 3443681415, - "ch.9.send.3.mode": 615951964, - "ch.9.send.3.plink": 1787879822, - "ch.9.send.3.pan": 1307593759, - "ch.9.send.4": 3989720943, - "ch.9.send.4.on": 3690198258, - "ch.9.send.4.lvl": 1198985443, - "ch.9.send.4.pon": 826980418, - "ch.9.send.4.ind": 2113667623, - "ch.9.send.4.mode": 643849212, - "ch.9.send.4.plink": 2018291357, - "ch.9.send.4.pan": 2233908351, - "ch.9.send.5": 2928712368, - "ch.9.send.5.on": 2934359248, - "ch.9.send.5.lvl": 3462717633, - "ch.9.send.5.pon": 1247643760, - "ch.9.send.5.ind": 216650325, - "ch.9.send.5.mode": 3031272414, - "ch.9.send.5.plink": 375516450, - "ch.9.send.5.pan": 2339957853, - "ch.9.send.6": 139100006, - "ch.9.send.6.on": 3422544263, - "ch.9.send.6.lvl": 1535308822, - "ch.9.send.6.pon": 3222074671, - "ch.9.send.6.ind": 2180902666, - "ch.9.send.6.mode": 3658590473, - "ch.9.send.6.plink": 2382340103, - "ch.9.send.6.pan": 2570213618, - "ch.9.send.7": 3083623817, - "ch.9.send.7.on": 1217408559, - "ch.9.send.7.lvl": 3020837278, - "ch.9.send.7.pon": 3299930791, - "ch.9.send.7.ind": 310982850, - "ch.9.send.7.mode": 3136136833, - "ch.9.send.7.plink": 4054243649, - "ch.9.send.7.pan": 4057396954, - "ch.9.send.8": 2073972956, - "ch.9.send.8.on": 4048348463, - "ch.9.send.8.lvl": 2161119902, - "ch.9.send.8.pon": 2554319271, - "ch.9.send.8.ind": 1330976706, - "ch.9.send.8.mode": 2800795009, - "ch.9.send.8.plink": 2462516156, - "ch.9.send.8.pan": 1209732570, - "ch.9.send.9": 2581627202, - "ch.9.send.9.on": 416919289, - "ch.9.send.9.lvl": 3831291624, - "ch.9.send.9.pon": 879028841, - "ch.9.send.9.ind": 3806454852, - "ch.9.send.9.mode": 2326145527, - "ch.9.send.9.plink": 3070770424, - "ch.9.send.9.pan": 562087500, - "ch.9.send.10": 1848174077, - "ch.9.send.10.on": 3000130370, - "ch.9.send.10.lvl": 3821679106, - "ch.9.send.10.pon": 3322384904, - "ch.9.send.10.ind": 2672793795, - "ch.9.send.10.mode": 3107430328, - "ch.9.send.10.plink": 2358549662, - "ch.9.send.10.pan": 1621219787, - "ch.9.send.11": 3429554506, - "ch.9.send.11.on": 1628020922, - "ch.9.send.11.lvl": 2711713002, - "ch.9.send.11.pon": 4264456080, - "ch.9.send.11.ind": 1982206891, - "ch.9.send.11.mode": 3019386668, - "ch.9.send.11.plink": 1984140968, - "ch.9.send.11.pan": 80354403, - "ch.9.send.12": 2008095113, - "ch.9.send.12.on": 3649167533, - "ch.9.send.12.lvl": 2838083405, - "ch.9.send.12.pon": 1180175559, - "ch.9.send.12.ind": 3987676516, - "ch.9.send.12.mode": 3938928251, - "ch.9.send.12.plink": 2758574004, - "ch.9.send.12.pan": 754081708, - "ch.9.send.13": 2005077206, - "ch.9.send.13.on": 2437595275, - "ch.9.send.13.lvl": 1568839491, - "ch.9.send.13.pon": 2118954153, - "ch.9.send.13.ind": 2801663362, - "ch.9.send.13.mode": 1589058814, - "ch.9.send.13.plink": 544384692, - "ch.9.send.13.pan": 4197597130, - "ch.9.send.14": 675625699, - "ch.9.send.14.on": 1844015635, - "ch.9.send.14.lvl": 1017224059, - "ch.9.send.14.pon": 3677203937, - "ch.9.send.14.ind": 1495072090, - "ch.9.send.14.mode": 335170586, - "ch.9.send.14.plink": 3030611418, - "ch.9.send.14.pan": 3230790418, - "ch.9.send.15": 3950456336, - "ch.9.send.15.on": 643942805, - "ch.9.send.15.lvl": 4033455429, - "ch.9.send.15.pon": 320390207, - "ch.9.send.15.ind": 300180956, - "ch.9.send.15.mode": 1753129593, - "ch.9.send.15.plink": 1810994385, - "ch.9.send.15.pan": 2357087444, - "ch.9.send.16": 1166084266, - "ch.9.send.16.on": 3469560779, - "ch.9.send.16.lvl": 2679447555, - "ch.9.send.16.pon": 1003103209, - "ch.9.send.16.ind": 3829030466, - "ch.9.send.16.mode": 666826352, - "ch.9.send.16.plink": 3620392070, - "ch.9.send.16.pan": 933611658, - "ch.9.send.MX1": 3843292375, - "ch.9.send.MX1.on": 2182350819, - "ch.9.send.MX1.lvl": 1569896369, - "ch.9.send.MX1.pon": 1337126531, - "ch.9.send.MX1.ind": 389483306, - "ch.9.send.MX1.mode": 122715220, - "ch.9.send.MX1.plink": 1417555412, - "ch.9.send.MX1.pan": 1469047997, - "ch.9.send.MX2": 456839797, - "ch.9.send.MX2.on": 2879665229, - "ch.9.send.MX2.lvl": 1837146259, - "ch.9.send.MX2.pon": 1635511153, - "ch.9.send.MX2.ind": 1722770384, - "ch.9.send.MX2.mode": 4270985798, - "ch.9.send.MX2.plink": 771052790, - "ch.9.send.MX2.pan": 2160959435, - "ch.9.send.MX3": 488125771, - "ch.9.send.MX3.on": 1140074445, - "ch.9.send.MX3.lvl": 1266683229, - "ch.9.send.MX3.pon": 2332830511, - "ch.9.send.MX3.ind": 668926182, - "ch.9.send.MX3.mode": 1113741128, - "ch.9.send.MX3.plink": 1736787672, - "ch.9.send.MX3.pan": 1117847737, - "ch.9.send.MX4": 3330528764, - "ch.9.send.MX4.on": 3716430194, - "ch.9.send.MX4.lvl": 2088119359, - "ch.9.send.MX4.pon": 1702101533, - "ch.9.send.MX4.ind": 525578796, - "ch.9.send.MX4.mode": 64421434, - "ch.9.send.MX4.plink": 650443130, - "ch.9.send.MX4.pan": 1773178007, - "ch.9.send.MX5": 3026953873, - "ch.9.send.MX5.on": 97764828, - "ch.9.send.MX5.lvl": 1916277849, - "ch.9.send.MX5.pon": 1287478571, - "ch.9.send.MX5.ind": 1779730994, - "ch.9.send.MX5.mode": 4196630076, - "ch.9.send.MX5.plink": 864840524, - "ch.9.send.MX5.pan": 1311246725, - "ch.9.send.MX6": 1721507682, - "ch.9.send.MX6.on": 2506371393, - "ch.9.send.MX6.lvl": 1617153339, - "ch.9.send.MX6.pon": 1481650393, - "ch.9.send.MX6.ind": 767725944, - "ch.9.send.MX6.mode": 4247882478, - "ch.9.send.MX6.plink": 555275758, - "ch.9.send.MX6.pan": 2117233107, - "ch.9.send.MX7": 3484407045, - "ch.9.send.MX7.on": 766788294, - "ch.9.send.MX7.lvl": 2251132837, - "ch.9.send.MX7.pon": 3284315063, - "ch.9.send.MX7.ind": 1412983182, - "ch.9.send.MX7.mode": 236594640, - "ch.9.send.MX7.plink": 412362736, - "ch.9.send.MX7.pan": 968572545, - "ch.9.send.MX8": 2514187734, - "ch.9.send.MX8.on": 1464061776, - "ch.9.send.MX8.lvl": 1952295047, - "ch.9.send.MX8.pon": 1234570341, - "ch.9.send.MX8.ind": 492049588, - "ch.9.send.MX8.mode": 31939202, - "ch.9.send.MX8.plink": 533679890, - "ch.9.send.MX8.pan": 1961271394, - "ch.9.tapwid": 1465310764, - "ch.9.postins": 2240156168, - "ch.9.postins.on": 3201479627, - "ch.9.postins.mode": 717176265, - "ch.9.postins.ins": 3699660727, - "ch.9.postins.w": 451658557, - "ch.9.postins.$stat": 1747937277, - "ch.9.tags": 1554982403, - "ch.9.$fdr": 1162746594, - "ch.9.$mute": 938599872, - "ch.9.$muteovr": 4213048479, - "ch.10": 4223608869, - "ch.10.in": 3848737493, - "ch.10.in.set": 3094675243, - "ch.10.in.set.$mode": 218865536, - "ch.10.in.set.srcauto": 2705519240, - "ch.10.in.set.altsrc": 1409503648, - "ch.10.in.set.inv": 929021606, - "ch.10.in.set.trim": 2489289876, - "ch.10.in.set.bal": 2445431183, - "ch.10.in.set.$g": 1729874927, - "ch.10.in.set.$vph": 3793348170, - "ch.10.in.set.dlymode": 3568290711, - "ch.10.in.set.dly": 173966746, - "ch.10.in.set.dlyon": 1649279969, - "ch.10.in.conn": 1024835243, - "ch.10.in.conn.grp": 919792015, - "ch.10.in.conn.in": 996675102, - "ch.10.in.conn.altgrp": 2102389315, - "ch.10.in.conn.altin": 2492503753, - "ch.10.flt": 3031057662, - "ch.10.flt.lc": 896647359, - "ch.10.flt.lcf": 675866508, - "ch.10.flt.hc": 1229093729, - "ch.10.flt.hcf": 4274839314, - "ch.10.flt.tf": 3438429280, - "ch.10.flt.mdl": 539785444, - "ch.10.flt.1": 2017504632, - "ch.10.flt.2": 2982227797, - "ch.10.clink": 2972583728, - "ch.10.col": 3975803996, - "ch.10.name": 3285053875, - "ch.10.icon": 1098196473, - "ch.10.led": 4110798249, - "ch.10.$col": 2247408644, - "ch.10.$name": 2640026618, - "ch.10.$icon": 2814247021, - "ch.10.mute": 2701577458, - "ch.10.fdr": 4155811605, - "ch.10.pan": 2040213477, - "ch.10.wid": 799442126, - "ch.10.$solo": 128090149, - "ch.10.$sololed": 2017174017, - "ch.10.solosafe": 3319598127, - "ch.10.mon": 3637462746, - "ch.10.proc": 2303392982, - "ch.10.ptap": 77399001, - "ch.10.$presolo": 2336435442, - "ch.10.peq": 403405770, - "ch.10.peq.on": 2257558011, - "ch.10.peq.1g": 2641217352, - "ch.10.peq.1f": 2554578482, - "ch.10.peq.1q": 429532376, - "ch.10.peq.2g": 530196540, - "ch.10.peq.2f": 427458793, - "ch.10.peq.2q": 1451634572, - "ch.10.peq.3g": 4022259280, - "ch.10.peq.3f": 2593124125, - "ch.10.peq.3q": 1790573984, - "ch.10.gate": 2657178508, - "ch.10.gate.on": 2023718887, - "ch.10.gate.mdl": 3763457070, - "ch.10.gate.1": 1575294162, - "ch.10.gate.2": 2946022804, - "ch.10.gate.3": 1117177766, - "ch.10.gate.4": 2089447827, - "ch.10.gate.5": 3460852469, - "ch.10.gate.6": 3762729890, - "ch.10.gate.7": 838491567, - "ch.10.gate.8": 3304613814, - "ch.10.gate.9": 4277559395, - "ch.10.gatesc": 504352686, - "ch.10.gatesc.type": 2861383397, - "ch.10.gatesc.f": 2649830671, - "ch.10.gatesc.q": 2675370578, - "ch.10.gatesc.src": 2363794599, - "ch.10.gatesc.tap": 3531298368, - "ch.10.gatesc.$solo": 1045887649, - "ch.10.eq": 2222776583, - "ch.10.eq.on": 808833972, - "ch.10.eq.mdl": 1767606774, - "ch.10.eq.mix": 93635660, - "ch.10.eq.$solo": 2007603502, - "ch.10.eq.$solobd": 2648031853, - "ch.10.eq.1": 875627206, - "ch.10.eq.2": 1554930717, - "ch.10.eq.3": 2884392296, - "ch.10.eq.4": 1684673697, - "ch.10.eq.5": 2364018172, - "ch.10.eq.6": 3873321830, - "ch.10.eq.7": 949759165, - "ch.10.eq.8": 2701535991, - "ch.10.eq.9": 428074305, - "ch.10.eq.10": 2095613720, - "ch.10.eq.11": 2795888725, - "ch.10.eq.12": 3473922479, - "ch.10.eq.13": 4153267076, - "ch.10.eq.14": 2529923638, - "ch.10.eq.15": 4283009928, - "ch.10.eq.16": 1497346290, - "ch.10.eq.17": 2197662287, - "ch.10.eq.18": 3546786084, - "ch.10.eq.19": 2347066067, - "ch.10.eq.20": 2703445785, - "ch.10.dyn": 2931575353, - "ch.10.dyn.on": 4084118581, - "ch.10.dyn.mdl": 4270268169, - "ch.10.dyn.mix": 3782744799, - "ch.10.dyn.gain": 3312548965, - "ch.10.dyn.1": 1901128183, - "ch.10.dyn.2": 2950074906, - "ch.10.dyn.3": 2372312468, - "ch.10.dyn.4": 3756813742, - "ch.10.dyn.5": 1098006253, - "ch.10.dyn.6": 2675710295, - "ch.10.dyn.7": 4059546618, - "ch.10.dyn.8": 3565014267, - "ch.10.dyn.9": 2517475214, - "ch.10.dynxo": 841617062, - "ch.10.dynxo.depth": 944842241, - "ch.10.dynxo.type": 2283027713, - "ch.10.dynxo.f": 2864307812, - "ch.10.dynxo.$solo": 433572474, - "ch.10.dynsc": 1571005507, - "ch.10.dynsc.type": 1879329391, - "ch.10.dynsc.f": 2782872538, - "ch.10.dynsc.q": 488903217, - "ch.10.dynsc.src": 2974142279, - "ch.10.dynsc.tap": 2053062884, - "ch.10.dynsc.$solo": 593391749, - "ch.10.preins": 1441640695, - "ch.10.preins.on": 3249944074, - "ch.10.preins.ins": 2583992742, - "ch.10.preins.$stat": 1280671715, - "ch.10.main": 2248753767, - "ch.10.main.1": 3426308208, - "ch.10.main.1.on": 3043352728, - "ch.10.main.1.lvl": 3443373272, - "ch.10.main.1.pre": 2536945170, - "ch.10.main.2": 1289455930, - "ch.10.main.2.on": 3743895636, - "ch.10.main.2.lvl": 258942108, - "ch.10.main.2.pre": 721110646, - "ch.10.main.3": 490815161, - "ch.10.main.3.on": 4036481843, - "ch.10.main.3.lvl": 3120560027, - "ch.10.main.3.pre": 2932426913, - "ch.10.main.4": 1569969659, - "ch.10.main.4.on": 3368991425, - "ch.10.main.4.lvl": 969314073, - "ch.10.main.4.pre": 84062451, - "ch.10.send": 3918309718, - "ch.10.send.1": 2137065770, - "ch.10.send.1.on": 3474802207, - "ch.10.send.1.lvl": 2674203855, - "ch.10.send.1.pon": 1008347061, - "ch.10.send.1.ind": 3823796806, - "ch.10.send.1.mode": 2424993302, - "ch.10.send.1.plink": 3551087888, - "ch.10.send.1.pan": 917881950, - "ch.10.send.2": 2973278391, - "ch.10.send.2.on": 3621668792, - "ch.10.send.2.lvl": 3200676088, - "ch.10.send.2.pon": 2595846226, - "ch.10.send.2.ind": 3309384057, - "ch.10.send.2.mode": 3952033872, - "ch.10.send.2.plink": 2902775121, - "ch.10.send.2.pan": 916310177, - "ch.10.send.3": 3139869113, - "ch.10.send.3.on": 158862183, - "ch.10.send.3.lvl": 4179638055, - "ch.10.send.3.pon": 1449275885, - "ch.10.send.3.ind": 497350590, - "ch.10.send.3.mode": 419532913, - "ch.10.send.3.plink": 2008157613, - "ch.10.send.3.pan": 1560055526, - "ch.10.send.4": 3148052291, - "ch.10.send.4.on": 2379074327, - "ch.10.send.4.lvl": 2632316663, - "ch.10.send.4.pon": 3236557405, - "ch.10.send.4.ind": 2019604462, - "ch.10.send.4.mode": 3167990799, - "ch.10.send.4.plink": 2139105267, - "ch.10.send.4.pan": 621694806, - "ch.10.send.5": 402501744, - "ch.10.send.5.on": 3244649664, - "ch.10.send.5.lvl": 3913126800, - "ch.10.send.5.pon": 2224304362, - "ch.10.send.5.ind": 2948125105, - "ch.10.send.5.mode": 1281503846, - "ch.10.send.5.plink": 585479091, - "ch.10.send.5.pan": 209316745, - "ch.10.send.6": 635428874, - "ch.10.send.6.on": 1334906868, - "ch.10.send.6.lvl": 3340317756, - "ch.10.send.6.pon": 3798339638, - "ch.10.send.6.ind": 1033804389, - "ch.10.send.6.mode": 2365453937, - "ch.10.send.6.plink": 3771866739, - "ch.10.send.6.pan": 4265708669, - "ch.10.send.7": 800550935, - "ch.10.send.7.on": 161608621, - "ch.10.send.7.lvl": 556407373, - "ch.10.send.7.pon": 1012214215, - "ch.10.send.7.ind": 4154818660, - "ch.10.send.7.mode": 1181167281, - "ch.10.send.7.plink": 2773273273, - "ch.10.send.7.pan": 2755228332, - "ch.10.send.8": 2956027542, - "ch.10.send.8.on": 3283281693, - "ch.10.send.8.lvl": 3541766237, - "ch.10.send.8.pon": 1986320631, - "ch.10.send.8.ind": 2929054228, - "ch.10.send.8.mode": 1196510975, - "ch.10.send.8.plink": 834313539, - "ch.10.send.8.pan": 1875535900, - "ch.10.send.9": 437143203, - "ch.10.send.9.on": 2408681142, - "ch.10.send.9.lvl": 1593424494, - "ch.10.send.9.pon": 3263532692, - "ch.10.send.9.ind": 2725573751, - "ch.10.send.9.mode": 383462803, - "ch.10.send.9.plink": 2709053897, - "ch.10.send.9.pan": 1005195903, - "ch.10.send.10": 125103929, - "ch.10.send.10.on": 1981643237, - "ch.10.send.10.lvl": 491233512, - "ch.10.send.10.pon": 1231974848, - "ch.10.send.10.ind": 81081044, - "ch.10.send.10.mode": 3070953722, - "ch.10.send.10.plink": 543472421, - "ch.10.send.10.pan": 2337340608, - "ch.10.send.11": 1499198788, - "ch.10.send.11.on": 3452799840, - "ch.10.send.11.lvl": 339219982, - "ch.10.send.11.pon": 1184132733, - "ch.10.send.11.ind": 2512610278, - "ch.10.send.11.mode": 2069764416, - "ch.10.send.11.plink": 402135667, - "ch.10.send.11.pan": 538576482, - "ch.10.send.12": 2410068966, - "ch.10.send.12.on": 3065863638, - "ch.10.send.12.lvl": 4058607084, - "ch.10.send.12.pon": 1377915423, - "ch.10.send.12.ind": 2738170728, - "ch.10.send.12.mode": 2612271910, - "ch.10.send.12.plink": 3528507729, - "ch.10.send.12.pan": 3551774740, - "ch.10.send.13": 3930964432, - "ch.10.send.13.on": 283995990, - "ch.10.send.13.lvl": 3386763138, - "ch.10.send.13.pon": 967918270, - "ch.10.send.13.ind": 2921667018, - "ch.10.send.13.mode": 772046476, - "ch.10.send.13.plink": 1793131151, - "ch.10.send.13.pan": 2366030118, - "ch.10.send.14": 962742591, - "ch.10.send.14.on": 702382289, - "ch.10.send.14.lvl": 625780464, - "ch.10.send.14.pon": 2420849091, - "ch.10.send.14.ind": 2390248380, - "ch.10.send.14.mode": 2308910530, - "ch.10.send.14.plink": 704216733, - "ch.10.send.14.pan": 2560017768, - "ch.10.send.15": 2147438410, - "ch.10.send.15.on": 1368216327, - "ch.10.send.15.lvl": 410941334, - "ch.10.send.15.pon": 1440222981, - "ch.10.send.15.ind": 2623509198, - "ch.10.send.15.mode": 2145302056, - "ch.10.send.15.plink": 1485996395, - "ch.10.send.15.pan": 3755962698, - "ch.10.send.16": 3662968441, - "ch.10.send.16.on": 1618830466, - "ch.10.send.16.lvl": 3546194100, - "ch.10.send.16.pon": 1634642791, - "ch.10.send.16.ind": 2767159920, - "ch.10.send.16.mode": 2508249550, - "ch.10.send.16.plink": 1926337737, - "ch.10.send.16.pan": 3448041980, - "ch.10.send.MX1": 4066617853, - "ch.10.send.MX1.on": 2827078222, - "ch.10.send.MX1.lvl": 755200101, - "ch.10.send.MX1.pon": 503877231, - "ch.10.send.MX1.ind": 3104657862, - "ch.10.send.MX1.mode": 904683695, - "ch.10.send.MX1.plink": 874897114, - "ch.10.send.MX1.pan": 1176781409, - "ch.10.send.MX2": 1122075792, - "ch.10.send.MX2.on": 184684100, - "ch.10.send.MX2.lvl": 3024925823, - "ch.10.send.MX2.pon": 3367455893, - "ch.10.send.MX2.ind": 3279556766, - "ch.10.send.MX2.mode": 1747438756, - "ch.10.send.MX2.plink": 2997574864, - "ch.10.send.MX2.pan": 3429199995, - "ch.10.send.MX3": 1214225211, - "ch.10.send.MX3.on": 4252211434, - "ch.10.send.MX3.lvl": 59633463, - "ch.10.send.MX3.pon": 1035401221, - "ch.10.send.MX3.ind": 3211963524, - "ch.10.send.MX3.mode": 2130078725, - "ch.10.send.MX3.plink": 1735902656, - "ch.10.send.MX3.pan": 1455971307, - "ch.10.send.MX4": 621362492, - "ch.10.send.MX4.on": 2644126954, - "ch.10.send.MX4.lvl": 2313630473, - "ch.10.send.MX4.pon": 1780132990, - "ch.10.send.MX4.ind": 1280678260, - "ch.10.send.MX4.mode": 709118515, - "ch.10.send.MX4.plink": 1077174587, - "ch.10.send.MX4.pan": 1253394584, - "ch.10.send.MX5": 629625799, - "ch.10.send.MX5.on": 2416305904, - "ch.10.send.MX5.lvl": 3615858521, - "ch.10.send.MX5.pon": 1434342449, - "ch.10.send.MX5.ind": 872830329, - "ch.10.send.MX5.mode": 1999288347, - "ch.10.send.MX5.plink": 1801755612, - "ch.10.send.MX5.pan": 1604585535, - "ch.10.send.MX6": 2063937146, - "ch.10.send.MX6.on": 57854669, - "ch.10.send.MX6.lvl": 4081849171, - "ch.10.send.MX6.pon": 1956775948, - "ch.10.send.MX6.ind": 611958561, - "ch.10.send.MX6.mode": 2208986142, - "ch.10.send.MX6.plink": 1591818201, - "ch.10.send.MX6.pan": 1871729722, - "ch.10.send.MX7": 2051228989, - "ch.10.send.MX7.on": 3195072278, - "ch.10.send.MX7.lvl": 597085149, - "ch.10.send.MX7.pon": 1793176975, - "ch.10.send.MX7.ind": 1148865415, - "ch.10.send.MX7.mode": 192288654, - "ch.10.send.MX7.plink": 2498602938, - "ch.10.send.MX7.pan": 2045985153, - "ch.10.send.MX8": 3317737419, - "ch.10.send.MX8.on": 3625603820, - "ch.10.send.MX8.lvl": 2209353622, - "ch.10.send.MX8.pon": 3662664586, - "ch.10.send.MX8.ind": 1363764734, - "ch.10.send.MX8.mode": 3493147572, - "ch.10.send.MX8.plink": 3291645351, - "ch.10.send.MX8.pan": 3660869532, - "ch.10.tapwid": 1029598192, - "ch.10.postins": 2606815224, - "ch.10.postins.on": 1346095767, - "ch.10.postins.mode": 250336180, - "ch.10.postins.ins": 3608944287, - "ch.10.postins.w": 2702094640, - "ch.10.postins.$stat": 4156002253, - "ch.10.tags": 1375674836, - "ch.10.$fdr": 4210910415, - "ch.10.$mute": 3618211333, - "ch.10.$muteovr": 3904809531, - "ch.11": 3436716240, - "ch.11.in": 1840725843, - "ch.11.in.set": 2701355673, - "ch.11.in.set.$mode": 2165037722, - "ch.11.in.set.srcauto": 3720874939, - "ch.11.in.set.altsrc": 2144908574, - "ch.11.in.set.inv": 2947747048, - "ch.11.in.set.trim": 1040321270, - "ch.11.in.set.bal": 759633321, - "ch.11.in.set.$g": 804715841, - "ch.11.in.set.$vph": 567824695, - "ch.11.in.set.dlymode": 3624392076, - "ch.11.in.set.dly": 2984629172, - "ch.11.in.set.dlyon": 561536314, - "ch.11.in.conn": 2169009445, - "ch.11.in.conn.grp": 17311336, - "ch.11.in.conn.in": 3550299056, - "ch.11.in.conn.altgrp": 2069528352, - "ch.11.in.conn.altin": 2685764050, - "ch.11.flt": 3225020656, - "ch.11.flt.lc": 1090657425, - "ch.11.flt.lcf": 954393594, - "ch.11.flt.hc": 1370670223, - "ch.11.flt.hcf": 3318918532, - "ch.11.flt.tf": 3244460838, - "ch.11.flt.mdl": 3781335042, - "ch.11.flt.1": 1792038870, - "ch.11.flt.2": 3165747331, - "ch.11.clink": 2432741602, - "ch.11.col": 4016511806, - "ch.11.name": 149962465, - "ch.11.icon": 1134644951, - "ch.11.led": 3916784479, - "ch.11.$col": 1418432618, - "ch.11.$name": 1170785004, - "ch.11.$icon": 3620246415, - "ch.11.mute": 606157068, - "ch.11.fdr": 2519074739, - "ch.11.pan": 822491003, - "ch.11.wid": 1863852820, - "ch.11.$solo": 4046940815, - "ch.11.$sololed": 1827403404, - "ch.11.solosafe": 944639720, - "ch.11.mon": 3475389280, - "ch.11.proc": 3764631568, - "ch.11.ptap": 1632808095, - "ch.11.$presolo": 1088145031, - "ch.11.peq": 953656644, - "ch.11.peq.on": 2713776213, - "ch.11.peq.1g": 2866896110, - "ch.11.peq.1f": 2025102020, - "ch.11.peq.1q": 560489854, - "ch.11.peq.2g": 996697002, - "ch.11.peq.2f": 296667735, - "ch.11.peq.2q": 974583034, - "ch.11.peq.3g": 3471545078, - "ch.11.peq.3f": 2787203491, - "ch.11.peq.3q": 1344873542, - "ch.11.gate": 3025025198, - "ch.11.gate.on": 724613944, - "ch.11.gate.mdl": 42495020, - "ch.11.gate.1": 1290918976, - "ch.11.gate.2": 2735465398, - "ch.11.gate.3": 2548278436, - "ch.11.gate.4": 3395136177, - "ch.11.gate.5": 544878903, - "ch.11.gate.6": 3394558064, - "ch.11.gate.7": 543973021, - "ch.11.gate.8": 367438228, - "ch.11.gate.9": 1203974369, - "ch.11.gatesc": 882680252, - "ch.11.gatesc.type": 3495145184, - "ch.11.gatesc.f": 136865525, - "ch.11.gatesc.q": 1740610648, - "ch.11.gatesc.src": 1697640973, - "ch.11.gatesc.tap": 884114906, - "ch.11.gatesc.$solo": 3154958340, - "ch.11.eq": 193752293, - "ch.11.eq.on": 3710567682, - "ch.11.eq.mdl": 3155763912, - "ch.11.eq.mix": 1473723506, - "ch.11.eq.$solo": 4152143376, - "ch.11.eq.$solobd": 1363564507, - "ch.11.eq.1": 2166749688, - "ch.11.eq.2": 3005835451, - "ch.11.eq.3": 4117719894, - "ch.11.eq.4": 393714711, - "ch.11.eq.5": 3833437890, - "ch.11.eq.6": 1050397016, - "ch.11.eq.7": 2162071579, - "ch.11.eq.8": 1389401537, - "ch.11.eq.9": 1876478839, - "ch.11.eq.10": 880637374, - "ch.11.eq.11": 1321269355, - "ch.11.eq.12": 2161829649, - "ch.11.eq.13": 2917361970, - "ch.11.eq.14": 3844676224, - "ch.11.eq.15": 2989268302, - "ch.11.eq.16": 203564996, - "ch.11.eq.17": 3664254577, - "ch.11.eq.18": 545559442, - "ch.11.eq.19": 1032473069, - "ch.11.eq.20": 3939354023, - "ch.11.dyn": 3142115223, - "ch.11.dyn.on": 979509267, - "ch.11.dyn.mdl": 397346040, - "ch.11.dyn.mix": 1582522421, - "ch.11.dyn.gain": 692409071, - "ch.11.dyn.1": 2848090713, - "ch.11.dyn.2": 1466200492, - "ch.11.dyn.3": 2698523058, - "ch.11.dyn.4": 1977235736, - "ch.11.dyn.5": 1350484067, - "ch.11.dyn.6": 2391358201, - "ch.11.dyn.7": 1701528140, - "ch.11.dyn.8": 2869625429, - "ch.11.dyn.9": 2233534904, - "ch.11.dynxo": 3893838624, - "ch.11.dynxo.depth": 3058798516, - "ch.11.dynxo.type": 910545691, - "ch.11.dynxo.f": 4113050734, - "ch.11.dynxo.$solo": 2046579168, - "ch.11.dynsc": 2845126669, - "ch.11.dynsc.type": 2167795204, - "ch.11.dynsc.f": 2855888817, - "ch.11.dynsc.q": 720674394, - "ch.11.dynsc.src": 1993503556, - "ch.11.dynsc.tap": 785396903, - "ch.11.dynsc.$solo": 3736710889, - "ch.11.preins": 2578474473, - "ch.11.preins.on": 1657151597, - "ch.11.preins.ins": 3676371481, - "ch.11.preins.$stat": 2033601525, - "ch.11.main": 3177652021, - "ch.11.main.1": 3032919282, - "ch.11.main.1.on": 355756355, - "ch.11.main.1.lvl": 23891339, - "ch.11.main.1.pre": 862450033, - "ch.11.main.2": 3125153192, - "ch.11.main.2.on": 2985208531, - "ch.11.main.2.lvl": 1016518331, - "ch.11.main.2.pre": 2552212161, - "ch.11.main.3": 263119355, - "ch.11.main.3.on": 4031678354, - "ch.11.main.3.lvl": 642166386, - "ch.11.main.3.pre": 159547448, - "ch.11.main.4": 3861764793, - "ch.11.main.4.on": 2182620738, - "ch.11.main.4.lvl": 8387842, - "ch.11.main.4.pre": 3444125736, - "ch.11.send": 1463653644, - "ch.11.send.1": 2572164784, - "ch.11.send.1.on": 2090713289, - "ch.11.send.1.lvl": 101050897, - "ch.11.send.1.pon": 3917250379, - "ch.11.send.1.ind": 2407563952, - "ch.11.send.1.mode": 100281045, - "ch.11.send.1.plink": 1674298340, - "ch.11.send.1.pan": 3470934408, - "ch.11.send.2": 3880400157, - "ch.11.send.2.on": 1421780750, - "ch.11.send.2.lvl": 3590749654, - "ch.11.send.2.pon": 930866844, - "ch.11.send.2.ind": 1099645823, - "ch.11.send.2.mode": 1751107410, - "ch.11.send.2.plink": 3059492730, - "ch.11.send.2.pan": 2652251511, - "ch.11.send.3": 1163407187, - "ch.11.send.3.on": 2262281284, - "ch.11.send.3.lvl": 267354220, - "ch.11.send.3.pon": 4091528134, - "ch.11.send.3.ind": 1902820917, - "ch.11.send.3.mode": 2074865236, - "ch.11.send.3.plink": 2474889582, - "ch.11.send.3.pan": 3959695373, - "ch.11.send.4": 2639430057, - "ch.11.send.4.on": 2221810505, - "ch.11.send.4.lvl": 1779845009, - "ch.11.send.4.pon": 3345751243, - "ch.11.send.4.ind": 2560288048, - "ch.11.send.4.mode": 3167362708, - "ch.11.send.4.plink": 1096555138, - "ch.11.send.4.pan": 3792084744, - "ch.11.send.5": 3905692906, - "ch.11.send.5.on": 170232286, - "ch.11.send.5.lvl": 2354930438, - "ch.11.send.5.pon": 1836221996, - "ch.11.send.5.ind": 4158793103, - "ch.11.send.5.mode": 1288560367, - "ch.11.send.5.plink": 237888839, - "ch.11.send.5.pan": 1766722375, - "ch.11.send.6": 1521371728, - "ch.11.send.6.on": 2277086834, - "ch.11.send.6.lvl": 1729196626, - "ch.11.send.6.pon": 3300939512, - "ch.11.send.6.ind": 2609687731, - "ch.11.send.6.mode": 3659118144, - "ch.11.send.6.plink": 2897370402, - "ch.11.send.6.pan": 1042684603, - "ch.11.send.7": 2829608381, - "ch.11.send.7.on": 1660584370, - "ch.11.send.7.lvl": 866298642, - "ch.11.send.7.pon": 366984760, - "ch.11.send.7.ind": 1327983987, - "ch.11.send.7.mode": 2311139873, - "ch.11.send.7.plink": 3270132413, - "ch.11.send.7.pan": 276431739, - "ch.11.send.8": 2426559228, - "ch.11.send.8.on": 301152951, - "ch.11.send.8.lvl": 4037764119, - "ch.11.send.8.pon": 1327957309, - "ch.11.send.8.ind": 623902286, - "ch.11.send.8.mode": 2493484412, - "ch.11.send.8.plink": 1393292122, - "ch.11.send.8.pan": 3028466806, - "ch.11.send.9": 1050456649, - "ch.11.send.9.on": 1655291132, - "ch.11.send.9.lvl": 1208083380, - "ch.11.send.9.pon": 634380366, - "ch.11.send.9.ind": 1317489469, - "ch.11.send.9.mode": 111179616, - "ch.11.send.9.plink": 2445997831, - "ch.11.send.9.pan": 2871671845, - "ch.11.send.10": 1844757023, - "ch.11.send.10.on": 261980603, - "ch.11.send.10.lvl": 2301468647, - "ch.11.send.10.pon": 2325778251, - "ch.11.send.10.ind": 3691527339, - "ch.11.send.10.mode": 3107285804, - "ch.11.send.10.plink": 3922029049, - "ch.11.send.10.pan": 1595279666, - "ch.11.send.11": 3292263082, - "ch.11.send.11.on": 669869622, - "ch.11.send.11.lvl": 2180888689, - "ch.11.send.11.pon": 2077426158, - "ch.11.send.11.ind": 1471671705, - "ch.11.send.11.mode": 4004024518, - "ch.11.send.11.plink": 3371733203, - "ch.11.send.11.pan": 1537944685, - "ch.11.send.12": 3826445240, - "ch.11.send.12.on": 1325239040, - "ch.11.send.12.lvl": 1892639059, - "ch.11.send.12.pon": 1606833228, - "ch.11.send.12.ind": 1329574823, - "ch.11.send.12.mode": 3466994464, - "ch.11.send.12.plink": 813519821, - "ch.11.send.12.pan": 1751633454, - "ch.11.send.13": 999963166, - "ch.11.send.13.on": 1691195264, - "ch.11.send.13.lvl": 2627164813, - "ch.11.send.13.pon": 2058740141, - "ch.11.send.13.ind": 3994040709, - "ch.11.send.13.mode": 550894554, - "ch.11.send.13.plink": 4222441511, - "ch.11.send.13.pan": 1620357916, - "ch.11.send.14": 2483841369, - "ch.11.send.14.on": 2078115343, - "ch.11.send.14.lvl": 2297354079, - "ch.11.send.14.pon": 1063918728, - "ch.11.send.14.ind": 1422584323, - "ch.11.send.14.mode": 4050171524, - "ch.11.send.14.plink": 3706239617, - "ch.11.send.14.pan": 1468310634, - "ch.11.send.15": 3952318308, - "ch.11.send.15.on": 2754455593, - "ch.11.send.15.lvl": 1799409577, - "ch.11.send.15.pon": 1943875398, - "ch.11.send.15.ind": 1245425905, - "ch.11.send.15.mode": 3709580350, - "ch.11.send.15.plink": 728621947, - "ch.11.send.15.pan": 1494884805, - "ch.11.send.16": 1131040479, - "ch.11.send.16.on": 3141373092, - "ch.11.send.16.lvl": 2178720203, - "ch.11.send.16.pon": 1787213988, - "ch.11.send.16.ind": 3909984031, - "ch.11.send.16.mode": 3494332056, - "ch.11.send.16.plink": 3802214549, - "ch.11.send.16.pan": 3309592454, - "ch.11.send.MX1": 2631678347, - "ch.11.send.MX1.on": 1584186040, - "ch.11.send.MX1.lvl": 2673869330, - "ch.11.send.MX1.pon": 3685069158, - "ch.11.send.MX1.ind": 3689919651, - "ch.11.send.MX1.mode": 2089080228, - "ch.11.send.MX1.plink": 4052329059, - "ch.11.send.MX1.pan": 148848000, - "ch.11.send.MX2": 1616876926, - "ch.11.send.MX2.on": 552591062, - "ch.11.send.MX2.lvl": 3255221718, - "ch.11.send.MX2.pon": 1010618219, - "ch.11.send.MX2.ind": 1190485150, - "ch.11.send.MX2.mode": 534342063, - "ch.11.send.MX2.plink": 307331174, - "ch.11.send.MX2.pan": 4170673029, - "ch.11.send.MX3": 1619332333, - "ch.11.send.MX3.on": 2760548561, - "ch.11.send.MX3.lvl": 1774251515, - "ch.11.send.MX3.pon": 1906541612, - "ch.11.send.MX3.ind": 3678830770, - "ch.11.send.MX3.mode": 2365132434, - "ch.11.send.MX3.plink": 2271989689, - "ch.11.send.MX3.pan": 2474567770, - "ch.11.send.MX4": 3747858642, - "ch.11.send.MX4.on": 2257849556, - "ch.11.send.MX4.lvl": 817605136, - "ch.11.send.MX4.pon": 862326865, - "ch.11.send.MX4.ind": 635300164, - "ch.11.send.MX4.mode": 858442849, - "ch.11.send.MX4.plink": 1568490428, - "ch.11.send.MX4.pan": 1366056031, - "ch.11.send.MX5": 1804156833, - "ch.11.send.MX5.on": 1773706335, - "ch.11.send.MX5.lvl": 832426934, - "ch.11.send.MX5.pon": 666099335, - "ch.11.send.MX5.ind": 1688808823, - "ch.11.send.MX5.mode": 1094863323, - "ch.11.send.MX5.plink": 1372509618, - "ch.11.send.MX5.pan": 1820027545, - "ch.11.send.MX6": 453811092, - "ch.11.send.MX6.on": 3721099330, - "ch.11.send.MX6.lvl": 1326895009, - "ch.11.send.MX6.pon": 2477681287, - "ch.11.send.MX6.ind": 3703003474, - "ch.11.send.MX6.mode": 3125993052, - "ch.11.send.MX6.plink": 1772091826, - "ch.11.send.MX6.pan": 1366351513, - "ch.11.send.MX7": 434680395, - "ch.11.send.MX7.on": 33631069, - "ch.11.send.MX7.lvl": 3703350836, - "ch.11.send.MX7.pon": 3360459720, - "ch.11.send.MX7.ind": 663153990, - "ch.11.send.MX7.mode": 124198046, - "ch.11.send.MX7.plink": 3728857205, - "ch.11.send.MX7.pan": 3973070766, - "ch.11.send.MX8": 3725669821, - "ch.11.send.MX8.on": 3155408796, - "ch.11.send.MX8.lvl": 1718837811, - "ch.11.send.MX8.pon": 3365685709, - "ch.11.send.MX8.ind": 2556826891, - "ch.11.send.MX8.mode": 2256273517, - "ch.11.send.MX8.plink": 3733345864, - "ch.11.send.MX8.pan": 3430968787, - "ch.11.tapwid": 1233935978, - "ch.11.postins": 189599138, - "ch.11.postins.on": 3191903453, - "ch.11.postins.mode": 168555818, - "ch.11.postins.ins": 3741158741, - "ch.11.postins.w": 3899582186, - "ch.11.postins.$stat": 2874645169, - "ch.11.tags": 1328702526, - "ch.11.$fdr": 3691956761, - "ch.11.$mute": 3969104363, - "ch.11.$muteovr": 2682318472, - "ch.12": 2609567362, - "ch.12.in": 2764515550, - "ch.12.in.set": 2863711951, - "ch.12.in.set.$mode": 3762581150, - "ch.12.in.set.srcauto": 1269978455, - "ch.12.in.set.altsrc": 1800834970, - "ch.12.in.set.inv": 3507898894, - "ch.12.in.set.trim": 1060257426, - "ch.12.in.set.bal": 26795127, - "ch.12.in.set.$g": 3965337799, - "ch.12.in.set.$vph": 3970371523, - "ch.12.in.set.dlymode": 2809827800, - "ch.12.in.set.dly": 1719996002, - "ch.12.in.set.dlyon": 3050752718, - "ch.12.in.conn": 3766565875, - "ch.12.in.conn.grp": 1212818423, - "ch.12.in.conn.in": 2385416358, - "ch.12.in.conn.altgrp": 2924420033, - "ch.12.in.conn.altin": 1663269211, - "ch.12.flt": 2685527106, - "ch.12.flt.lc": 530211235, - "ch.12.flt.lcf": 82202453, - "ch.12.flt.hc": 2267744973, - "ch.12.flt.hcf": 3823712915, - "ch.12.flt.tf": 3784261908, - "ch.12.flt.mdl": 254535887, - "ch.12.flt.1": 2342735076, - "ch.12.flt.2": 3286793937, - "ch.12.clink": 3312295428, - "ch.12.col": 10042200, - "ch.12.name": 3621530271, - "ch.12.icon": 867192917, - "ch.12.led": 356947653, - "ch.12.$col": 853246360, - "ch.12.$name": 2990162742, - "ch.12.$icon": 3793078305, - "ch.12.mute": 2920171054, - "ch.12.fdr": 2272847489, - "ch.12.pan": 2437760737, - "ch.12.wid": 1125985786, - "ch.12.$solo": 4240815241, - "ch.12.$sololed": 3433837694, - "ch.12.solosafe": 4061833746, - "ch.12.mon": 292360134, - "ch.12.proc": 4010823098, - "ch.12.ptap": 1753615125, - "ch.12.$presolo": 1684638865, - "ch.12.peq": 738715174, - "ch.12.peq.on": 2593173303, - "ch.12.peq.1g": 2977018460, - "ch.12.peq.1f": 2219105190, - "ch.12.peq.1q": 764983884, - "ch.12.peq.2g": 865649192, - "ch.12.peq.2f": 92171125, - "ch.12.peq.2q": 1116162584, - "ch.12.peq.3g": 3686478708, - "ch.12.peq.3f": 2928739521, - "ch.12.peq.3q": 1454957412, - "ch.12.gate": 2888491624, - "ch.12.gate.on": 1905586716, - "ch.12.gate.mdl": 2509066498, - "ch.12.gate.1": 1088857094, - "ch.12.gate.2": 2557254960, - "ch.12.gate.3": 2415192818, - "ch.12.gate.4": 3548046431, - "ch.12.gate.5": 721307561, - "ch.12.gate.6": 3196338422, - "ch.12.gate.7": 369937987, - "ch.12.gate.8": 227706850, - "ch.12.gate.9": 1360396623, - "ch.12.gatesc": 725349194, - "ch.12.gatesc.type": 4136717715, - "ch.12.gatesc.f": 123376625, - "ch.12.gatesc.q": 655187604, - "ch.12.gatesc.src": 676540521, - "ch.12.gatesc.tap": 1678882102, - "ch.12.gatesc.$solo": 527359368, - "ch.12.eq": 1180456544, - "ch.12.eq.on": 3642624608, - "ch.12.eq.mdl": 3601621802, - "ch.12.eq.mix": 1237904736, - "ch.12.eq.$solo": 892988074, - "ch.12.eq.$solobd": 335616321, - "ch.12.eq.1": 2769873322, - "ch.12.eq.2": 2738582217, - "ch.12.eq.3": 3713883140, - "ch.12.eq.4": 462007157, - "ch.12.eq.5": 3272336576, - "ch.12.eq.6": 1495906890, - "ch.12.eq.7": 2429264745, - "ch.12.eq.8": 786666531, - "ch.12.eq.9": 1986386965, - "ch.12.eq.10": 319516780, - "ch.12.eq.11": 1924004281, - "ch.12.eq.12": 1894637683, - "ch.12.eq.13": 3362789936, - "ch.12.eq.14": 4070336738, - "ch.12.eq.15": 2428392028, - "ch.12.eq.16": 649340870, - "ch.12.eq.17": 3428192531, - "ch.12.eq.18": 100029008, - "ch.12.eq.19": 1142462863, - "ch.12.eq.20": 4164580789, - "ch.12.dyn": 2994192997, - "ch.12.dyn.on": 3811765393, - "ch.12.dyn.mdl": 3739522026, - "ch.12.dyn.mix": 916304567, - "ch.12.dyn.gain": 4241492093, - "ch.12.dyn.1": 2173788459, - "ch.12.dyn.2": 3348339486, - "ch.12.dyn.3": 2309592208, - "ch.12.dyn.4": 28026506, - "ch.12.dyn.5": 531498817, - "ch.12.dyn.6": 2444726731, - "ch.12.dyn.7": 372886462, - "ch.12.dyn.8": 3460023591, - "ch.12.dyn.9": 2622609194, - "ch.12.dynxo": 1072006562, - "ch.12.dynxo.depth": 2512364597, - "ch.12.dynxo.type": 733400062, - "ch.12.dynxo.f": 1461142939, - "ch.12.dynxo.$solo": 1368011614, - "ch.12.dynsc": 1969659023, - "ch.12.dynsc.type": 992924738, - "ch.12.dynsc.f": 448056823, - "ch.12.dynsc.q": 1744406548, - "ch.12.dynsc.src": 644569466, - "ch.12.dynsc.tap": 1865730737, - "ch.12.dynsc.$solo": 1454655994, - "ch.12.preins": 2332531267, - "ch.12.preins.on": 1773000027, - "ch.12.preins.ins": 4049154471, - "ch.12.preins.$stat": 2297516196, - "ch.12.main": 2188792523, - "ch.12.main.1": 3432563876, - "ch.12.main.1.on": 2656460860, - "ch.12.main.1.lvl": 3493737588, - "ch.12.main.1.pre": 3665966638, - "ch.12.main.2": 1408338798, - "ch.12.main.2.on": 540529221, - "ch.12.main.2.lvl": 1313844757, - "ch.12.main.2.pre": 1812387023, - "ch.12.main.3": 725834293, - "ch.12.main.3.on": 1909404019, - "ch.12.main.3.lvl": 2430033243, - "ch.12.main.3.pre": 1570492769, - "ch.12.main.4": 1262208071, - "ch.12.main.4.on": 3186634104, - "ch.12.main.4.lvl": 818415928, - "ch.12.main.4.pre": 4206830962, - "ch.12.send": 3477959114, - "ch.12.send.1": 2325737862, - "ch.12.send.1.on": 1518924924, - "ch.12.send.1.lvl": 3492880436, - "ch.12.send.1.pon": 3981363406, - "ch.12.send.1.ind": 1185659581, - "ch.12.send.1.mode": 2781936990, - "ch.12.send.1.plink": 4118488404, - "ch.12.send.1.pan": 4092885157, - "ch.12.send.2": 3455715443, - "ch.12.send.2.on": 778305792, - "ch.12.send.2.lvl": 3225146704, - "ch.12.send.2.pon": 462688042, - "ch.12.send.2.ind": 1152807793, - "ch.12.send.2.mode": 2020213318, - "ch.12.send.2.plink": 1381886163, - "ch.12.send.2.pan": 2541256009, - "ch.12.send.3": 2909295101, - "ch.12.send.3.on": 1448248666, - "ch.12.send.3.lvl": 743090570, - "ch.12.send.3.pon": 159890160, - "ch.12.send.3.ind": 1791979275, - "ch.12.send.3.mode": 2350138856, - "ch.12.send.3.plink": 3244250030, - "ch.12.send.3.pan": 4028760323, - "ch.12.send.4": 3714211559, - "ch.12.send.4.on": 342657887, - "ch.12.send.4.lvl": 3995361167, - "ch.12.send.4.pon": 1370195189, - "ch.12.send.4.ind": 664730886, - "ch.12.send.4.mode": 2748482026, - "ch.12.send.4.plink": 2283861199, - "ch.12.send.4.pan": 3071280926, - "ch.12.send.5": 4173088684, - "ch.12.send.5.on": 3492893640, - "ch.12.send.5.lvl": 2656644328, - "ch.12.send.5.pon": 2200517666, - "ch.12.send.5.ind": 3789418313, - "ch.12.send.5.mode": 822429308, - "ch.12.send.5.plink": 3643197978, - "ch.12.send.5.pan": 2068108657, - "ch.12.send.6": 446572326, - "ch.12.send.6.on": 3420761724, - "ch.12.send.6.lvl": 1252842036, - "ch.12.send.6.pon": 2933026510, - "ch.12.send.6.ind": 3056080061, - "ch.12.send.6.mode": 1662044209, - "ch.12.send.6.plink": 2512059560, - "ch.12.send.6.pan": 653800101, - "ch.12.send.7": 1241004307, - "ch.12.send.7.on": 2369760896, - "ch.12.send.7.lvl": 495421392, - "ch.12.send.7.pon": 4193763754, - "ch.12.send.7.ind": 2047000817, - "ch.12.send.7.mode": 2136636853, - "ch.12.send.7.plink": 2504878805, - "ch.12.send.7.pan": 3768332233, - "ch.12.send.8": 2851241370, - "ch.12.send.8.on": 671834757, - "ch.12.send.8.lvl": 45321173, - "ch.12.send.8.pon": 1691114927, - "ch.12.send.8.ind": 339233996, - "ch.12.send.8.mode": 30946448, - "ch.12.send.8.plink": 3201252823, - "ch.12.send.8.pan": 3412583364, - "ch.12.send.9": 625774471, - "ch.12.send.9.on": 1128788046, - "ch.12.send.9.lvl": 728765590, - "ch.12.send.9.pon": 269430748, - "ch.12.send.9.ind": 1424718399, - "ch.12.send.9.mode": 2602758, - "ch.12.send.9.plink": 1827912652, - "ch.12.send.9.pan": 2821942327, - "ch.12.send.10": 1748405058, - "ch.12.send.10.on": 3012081310, - "ch.12.send.10.lvl": 430870700, - "ch.12.send.10.pon": 567435976, - "ch.12.send.10.ind": 2011392147, - "ch.12.send.10.mode": 1825257058, - "ch.12.send.10.plink": 3274806522, - "ch.12.send.10.pan": 1787062424, - "ch.12.send.11": 311475639, - "ch.12.send.11.on": 2593697539, - "ch.12.send.11.lvl": 289316550, - "ch.12.send.11.pon": 3942058774, - "ch.12.send.11.ind": 1250082505, - "ch.12.send.11.mode": 1522283364, - "ch.12.send.11.plink": 3081929996, - "ch.12.send.11.pan": 1580972966, - "ch.12.send.12": 3742512277, - "ch.12.send.12.on": 1948833069, - "ch.12.send.12.lvl": 927770464, - "ch.12.send.12.pon": 3642771484, - "ch.12.send.12.ind": 1109053735, - "ch.12.send.12.mode": 1540754798, - "ch.12.send.12.plink": 327781734, - "ch.12.send.12.pan": 672257452, - "ch.12.send.13": 2263642411, - "ch.12.send.13.on": 1572392365, - "ch.12.send.13.lvl": 1139572122, - "ch.12.send.13.pon": 873465338, - "ch.12.send.13.ind": 2162886445, - "ch.12.send.13.mode": 2223381392, - "ch.12.send.13.plink": 3401161416, - "ch.12.send.13.pan": 1715778874, - "ch.12.send.14": 784937948, - "ch.12.send.14.on": 1195949138, - "ch.12.send.14.lvl": 380252532, - "ch.12.send.14.pon": 3864027024, - "ch.12.send.14.ind": 1344263867, - "ch.12.send.14.mode": 1980429578, - "ch.12.send.14.plink": 3466655442, - "ch.12.send.14.pan": 1563744032, - "ch.12.send.15": 3935921073, - "ch.12.send.15.on": 509140988, - "ch.12.send.15.lvl": 936109934, - "ch.12.send.15.pon": 3564715454, - "ch.12.send.15.ind": 1194888977, - "ch.12.send.15.mode": 1450698764, - "ch.12.send.15.plink": 408423140, - "ch.12.send.15.pan": 1656475726, - "ch.12.send.16": 2467333762, - "ch.12.send.16.on": 132700257, - "ch.12.send.16.lvl": 1691840520, - "ch.12.send.16.pon": 3370940452, - "ch.12.send.16.ind": 2248581455, - "ch.12.send.16.mode": 1549134390, - "ch.12.send.16.plink": 2206514526, - "ch.12.send.16.pan": 1834357364, - "ch.12.send.MX1": 3798610805, - "ch.12.send.MX1.on": 145912453, - "ch.12.send.MX1.lvl": 699406125, - "ch.12.send.MX1.pon": 3283972214, - "ch.12.send.MX1.ind": 598619749, - "ch.12.send.MX1.mode": 2193040682, - "ch.12.send.MX1.plink": 2916149491, - "ch.12.send.MX1.pan": 3239005328, - "ch.12.send.MX2": 2495609704, - "ch.12.send.MX2.on": 3069017736, - "ch.12.send.MX2.lvl": 1066259251, - "ch.12.send.MX2.pon": 1714171516, - "ch.12.send.MX2.ind": 3002412062, - "ch.12.send.MX2.mode": 966441255, - "ch.12.send.MX2.plink": 1008090825, - "ch.12.send.MX2.pan": 1313907306, - "ch.12.send.MX3": 432083683, - "ch.12.send.MX3.on": 3066321533, - "ch.12.send.MX3.lvl": 2331713588, - "ch.12.send.MX3.pon": 3949735992, - "ch.12.send.MX3.ind": 3473403959, - "ch.12.send.MX3.mode": 2653114876, - "ch.12.send.MX3.plink": 20390757, - "ch.12.send.MX3.pan": 431209502, - "ch.12.send.MX4": 3215442676, - "ch.12.send.MX4.on": 879150698, - "ch.12.send.MX4.lvl": 4126837852, - "ch.12.send.MX4.pon": 4174232637, - "ch.12.send.MX4.ind": 3184950232, - "ch.12.send.MX4.mode": 2715637704, - "ch.12.send.MX4.plink": 582305656, - "ch.12.send.MX4.pan": 196227075, - "ch.12.send.MX5": 2309544351, - "ch.12.send.MX5.on": 3823664359, - "ch.12.send.MX5.lvl": 1733633945, - "ch.12.send.MX5.pon": 3379251216, - "ch.12.send.MX5.ind": 3159973873, - "ch.12.send.MX5.mode": 1922559451, - "ch.12.send.MX5.plink": 3749952349, - "ch.12.send.MX5.pan": 3402048502, - "ch.12.send.MX6": 1593745778, - "ch.12.send.MX6.on": 1338104124, - "ch.12.send.MX6.lvl": 2505929647, - "ch.12.send.MX6.pon": 33477648, - "ch.12.send.MX6.ind": 350528906, - "ch.12.send.MX6.mode": 219492778, - "ch.12.send.MX6.plink": 3957579613, - "ch.12.send.MX6.pan": 52623350, - "ch.12.send.MX7": 3930699829, - "ch.12.send.MX7.on": 139712529, - "ch.12.send.MX7.lvl": 3129318173, - "ch.12.send.MX7.pon": 3525624015, - "ch.12.send.MX7.ind": 793590206, - "ch.12.send.MX7.mode": 288687693, - "ch.12.send.MX7.plink": 2817165434, - "ch.12.send.MX7.pan": 3271566529, - "ch.12.send.MX8": 2532978611, - "ch.12.send.MX8.on": 2186785789, - "ch.12.send.MX8.lvl": 547575581, - "ch.12.send.MX8.pon": 812441290, - "ch.12.send.MX8.ind": 3298184797, - "ch.12.send.MX8.mode": 934694265, - "ch.12.send.MX8.plink": 1182895719, - "ch.12.send.MX8.pan": 1674017500, - "ch.12.tapwid": 1085783444, - "ch.12.postins": 3956271613, - "ch.12.postins.on": 2647726226, - "ch.12.postins.mode": 3392051264, - "ch.12.postins.ins": 944368035, - "ch.12.postins.w": 1185813301, - "ch.12.postins.$stat": 176052937, - "ch.12.tags": 1071329216, - "ch.12.$fdr": 251682939, - "ch.12.$mute": 3838057449, - "ch.12.$muteovr": 1431976666, - "ch.13": 3370375492, - "ch.13.in": 731323486, - "ch.13.in.set": 3068163661, - "ch.13.in.set.$mode": 2390717969, - "ch.13.in.set.srcauto": 1398196393, - "ch.13.in.set.altsrc": 731465548, - "ch.13.in.set.inv": 46629548, - "ch.13.in.set.trim": 196028400, - "ch.13.in.set.bal": 3152515093, - "ch.13.in.set.$g": 2460715125, - "ch.13.in.set.$vph": 2793501169, - "ch.13.in.set.dlymode": 1624260218, - "ch.13.in.set.dly": 3570813952, - "ch.13.in.set.dlyon": 1057211884, - "ch.13.in.conn": 1519253265, - "ch.13.in.conn.grp": 1111284713, - "ch.13.in.conn.in": 1826477460, - "ch.13.in.conn.altgrp": 3915615066, - "ch.13.in.conn.altin": 2984544520, - "ch.13.flt": 3564959556, - "ch.13.flt.lc": 1409603653, - "ch.13.flt.lcf": 58616538, - "ch.13.flt.hc": 1721234395, - "ch.13.flt.hcf": 3382130096, - "ch.13.flt.tf": 2904829146, - "ch.13.flt.mdl": 4151713701, - "ch.13.flt.1": 1463181570, - "ch.13.flt.2": 2824169407, - "ch.13.clink": 2734484262, - "ch.13.col": 3712554986, - "ch.13.name": 3207215517, - "ch.13.icon": 851290771, - "ch.13.led": 4251889099, - "ch.13.$col": 1686775294, - "ch.13.$name": 2544832664, - "ch.13.$icon": 3902965459, - "ch.13.mute": 2788911080, - "ch.13.fdr": 139209055, - "ch.13.pan": 2316940167, - "ch.13.wid": 890080320, - "ch.13.$solo": 55479763, - "ch.13.$sololed": 815554237, - "ch.13.solosafe": 750651444, - "ch.13.mon": 507314540, - "ch.13.proc": 2205908868, - "ch.13.ptap": 7112635, - "ch.13.$presolo": 1878389503, - "ch.13.peq": 628564864, - "ch.13.peq.on": 2367287665, - "ch.13.peq.1g": 2415488626, - "ch.13.peq.1f": 2454595848, - "ch.13.peq.1q": 151946850, - "ch.13.peq.2g": 588154374, - "ch.13.peq.2f": 495987027, - "ch.13.peq.2q": 1341904566, - "ch.13.peq.3g": 3964875066, - "ch.13.peq.3f": 2483390599, - "ch.13.peq.3q": 1522898410, - "ch.13.gate": 2751050202, - "ch.13.gate.on": 2220110073, - "ch.13.gate.mdl": 773720644, - "ch.13.gate.1": 1561679140, - "ch.13.gate.2": 2998954946, - "ch.13.gate.3": 1214323648, - "ch.13.gate.4": 2053911501, - "ch.13.gate.5": 3490838747, - "ch.13.gate.6": 3669167988, - "ch.13.gate.7": 811476833, - "ch.13.gate.8": 3311329616, - "ch.13.gate.9": 4161054749, - "ch.13.gatesc": 619190728, - "ch.13.gatesc.type": 2971915573, - "ch.13.gatesc.f": 1030479059, - "ch.13.gatesc.q": 511452726, - "ch.13.gatesc.src": 811886635, - "ch.13.gatesc.tap": 3783457684, - "ch.13.gatesc.$solo": 3938402814, - "ch.13.eq": 3714902496, - "ch.13.eq.on": 726559582, - "ch.13.eq.mdl": 1845235100, - "ch.13.eq.mix": 184109734, - "ch.13.eq.$solo": 231823172, - "ch.13.eq.$solobd": 2359952823, - "ch.13.eq.1": 793327228, - "ch.13.eq.2": 1632310695, - "ch.13.eq.3": 2806848434, - "ch.13.eq.4": 1767465547, - "ch.13.eq.5": 2438697030, - "ch.13.eq.6": 3950601692, - "ch.13.eq.7": 872146183, - "ch.13.eq.8": 2784225453, - "ch.13.eq.9": 502673835, - "ch.13.eq.10": 2170269538, - "ch.13.eq.11": 2715662015, - "ch.13.eq.12": 3556611909, - "ch.13.eq.13": 4227843566, - "ch.13.eq.14": 2450263020, - "ch.13.eq.15": 68031250, - "ch.13.eq.16": 1577355432, - "ch.13.eq.17": 2290509477, - "ch.13.eq.18": 3467023054, - "ch.13.eq.19": 2426985289, - "ch.13.eq.20": 2628436643, - "ch.13.dyn": 2872724867, - "ch.13.dyn.on": 3931922847, - "ch.13.dyn.mdl": 4160151287, - "ch.13.dyn.mix": 3775290928, - "ch.13.dyn.gain": 99202258, - "ch.13.dyn.1": 2042489885, - "ch.13.dyn.2": 2808016896, - "ch.13.dyn.3": 2430443438, - "ch.13.dyn.4": 3856563092, - "ch.13.dyn.5": 1082429991, - "ch.13.dyn.6": 2658843837, - "ch.13.dyn.7": 4117086368, - "ch.13.dyn.8": 3674632257, - "ch.13.dyn.9": 2502249524, - "ch.13.dynxo": 941404364, - "ch.13.dynxo.depth": 3534020996, - "ch.13.dynxo.type": 474740992, - "ch.13.dynxo.f": 1377966693, - "ch.13.dynxo.$solo": 2695579008, - "ch.13.dynsc": 1502654889, - "ch.13.dynsc.type": 1388874756, - "ch.13.dynsc.f": 320538033, - "ch.13.dynsc.q": 4267855962, - "ch.13.dynsc.src": 3847491908, - "ch.13.dynsc.tap": 2522710695, - "ch.13.dynsc.$solo": 1501168859, - "ch.13.preins": 1539452405, - "ch.13.preins.on": 1171748643, - "ch.13.preins.ins": 1210274719, - "ch.13.preins.$stat": 639108015, - "ch.13.main": 2341300649, - "ch.13.main.1": 3332410326, - "ch.13.main.1.on": 3232438775, - "ch.13.main.1.lvl": 2921525463, - "ch.13.main.1.pre": 198802589, - "ch.13.main.2": 1214235788, - "ch.13.main.2.on": 1046810148, - "ch.13.main.2.lvl": 2957829964, - "ch.13.main.2.pre": 2056356742, - "ch.13.main.3": 584385383, - "ch.13.main.3.on": 1429990297, - "ch.13.main.3.lvl": 424941377, - "ch.13.main.3.pre": 923473467, - "ch.13.main.4": 1498676501, - "ch.13.main.4.on": 3619911881, - "ch.13.main.4.lvl": 1393250833, - "ch.13.main.4.pre": 4136627755, - "ch.13.send": 3356286144, - "ch.13.send.1": 2206156428, - "ch.13.send.1.on": 4020580496, - "ch.13.send.1.lvl": 4279065664, - "ch.13.send.1.pon": 578096442, - "ch.13.send.1.ind": 43119809, - "ch.13.send.1.mode": 3693087074, - "ch.13.send.1.plink": 3050298837, - "ch.13.send.1.pan": 2614146009, - "ch.13.send.2": 3577224569, - "ch.13.send.2.on": 2072004152, - "ch.13.send.2.lvl": 119020152, - "ch.13.send.2.pon": 3904522706, - "ch.13.send.2.ind": 2426189817, - "ch.13.send.2.mode": 3252652567, - "ch.13.send.2.plink": 2492753068, - "ch.13.send.2.pan": 3478438433, - "ch.13.send.3": 2871469815, - "ch.13.send.3.on": 729170279, - "ch.13.send.3.lvl": 3945688359, - "ch.13.send.3.pon": 245464045, - "ch.13.send.3.ind": 380186046, - "ch.13.send.3.mode": 4106347527, - "ch.13.send.3.plink": 2842843178, - "ch.13.send.3.pan": 2282079462, - "ch.13.send.4": 3592743405, - "ch.13.send.4.on": 726189127, - "ch.13.send.4.lvl": 1799396103, - "ch.13.send.4.pon": 1217513741, - "ch.13.send.4.ind": 398801374, - "ch.13.send.4.mode": 2987749219, - "ch.13.send.4.plink": 2218141683, - "ch.13.send.4.pan": 3811328710, - "ch.13.send.5": 4292754598, - "ch.13.send.5.on": 3478459828, - "ch.13.send.5.lvl": 1530719356, - "ch.13.send.5.pon": 3158505462, - "ch.13.send.5.ind": 3166155429, - "ch.13.send.5.mode": 2595607739, - "ch.13.send.5.plink": 2176455670, - "ch.13.send.5.pan": 606639293, - "ch.13.send.6": 567546412, - "ch.13.send.6.on": 4274048377, - "ch.13.send.6.lvl": 2210985633, - "ch.13.send.6.pon": 1639502523, - "ch.13.send.6.ind": 307124192, - "ch.13.send.6.mode": 1357633002, - "ch.13.send.6.plink": 79303964, - "ch.13.send.6.pan": 1192513272, - "ch.13.send.7": 1205267993, - "ch.13.send.7.on": 3999001273, - "ch.13.send.7.lvl": 677626209, - "ch.13.send.7.pon": 2333999867, - "ch.13.send.7.ind": 3655925664, - "ch.13.send.7.mode": 320067430, - "ch.13.send.7.plink": 3939614673, - "ch.13.send.7.pan": 2759354808, - "ch.13.send.8": 2731537024, - "ch.13.send.8.on": 1529322398, - "ch.13.send.8.lvl": 3482306374, - "ch.13.send.8.pon": 3992101356, - "ch.13.send.8.ind": 1175095759, - "ch.13.send.8.mode": 321273042, - "ch.13.send.8.plink": 2457199584, - "ch.13.send.8.pan": 4082638727, - "ch.13.send.9": 663599757, - "ch.13.send.9.on": 3190042246, - "ch.13.send.9.lvl": 3968619870, - "ch.13.send.9.pon": 2331340452, - "ch.13.send.9.ind": 2836511623, - "ch.13.send.9.mode": 930675186, - "ch.13.send.9.plink": 3292196805, - "ch.13.send.9.pan": 273657295, - "ch.13.send.10": 2535081422, - "ch.13.send.10.on": 1554316138, - "ch.13.send.10.lvl": 2976658688, - "ch.13.send.10.pon": 3625069551, - "ch.13.send.10.ind": 2518707344, - "ch.13.send.10.mode": 454529675, - "ch.13.send.10.plink": 220696918, - "ch.13.send.10.pan": 3967025185, - "ch.13.send.11": 1832157891, - "ch.13.send.11.on": 3841255919, - "ch.13.send.11.lvl": 3149645738, - "ch.13.send.11.pon": 2237733701, - "ch.13.send.11.ind": 3251740518, - "ch.13.send.11.mode": 616885053, - "ch.13.send.11.plink": 4237595528, - "ch.13.send.11.pan": 2919824247, - "ch.13.send.12": 2871949649, - "ch.13.send.12.on": 470096721, - "ch.13.send.12.lvl": 2862494348, - "ch.13.send.12.pon": 2043961291, - "ch.13.send.12.ind": 3026154460, - "ch.13.send.12.mode": 105507167, - "ch.13.send.12.plink": 731523242, - "ch.13.send.12.pan": 373959405, - "ch.13.send.13": 3364402799, - "ch.13.send.13.on": 2715093457, - "ch.13.send.13.lvl": 4020887830, - "ch.13.send.13.pon": 3569644641, - "ch.13.send.13.ind": 2574225874, - "ch.13.send.13.mode": 851023089, - "ch.13.send.13.plink": 269069772, - "ch.13.send.13.pan": 4206078435, - "ch.13.send.14": 2703421344, - "ch.13.send.14.on": 2296707158, - "ch.13.send.14.lvl": 3226516280, - "ch.13.send.14.pon": 2509995271, - "ch.13.send.14.ind": 3339345928, - "ch.13.send.14.mode": 541864355, - "ch.13.send.14.plink": 444346878, - "ch.13.send.14.pan": 4054018457, - "ch.13.send.15": 511518645, - "ch.13.send.15.on": 1630872728, - "ch.13.send.15.lvl": 2728322818, - "ch.13.send.15.pon": 2316217533, - "ch.13.send.15.ind": 3165395230, - "ch.13.send.15.mode": 33119573, - "ch.13.send.15.plink": 572642320, - "ch.13.send.15.pan": 2671295855, - "ch.13.send.16": 3967205646, - "ch.13.send.16.on": 1380258589, - "ch.13.send.16.lvl": 180247972, - "ch.13.send.16.pon": 2163736291, - "ch.13.send.16.ind": 2940464500, - "ch.13.send.16.mode": 175781047, - "ch.13.send.16.plink": 718193458, - "ch.13.send.16.pan": 4155889925, - "ch.13.send.MX1": 2349234628, - "ch.13.send.MX1.on": 592553812, - "ch.13.send.MX1.lvl": 3456014425, - "ch.13.send.MX1.pon": 3964964479, - "ch.13.send.MX1.ind": 224539252, - "ch.13.send.MX1.mode": 530159075, - "ch.13.send.MX1.plink": 378455402, - "ch.13.send.MX1.pan": 679008881, - "ch.13.send.MX2": 1507439921, - "ch.13.send.MX2.on": 1680796500, - "ch.13.send.MX2.lvl": 1235165807, - "ch.13.send.MX2.pon": 54881376, - "ch.13.send.MX2.ind": 3185768463, - "ch.13.send.MX2.mode": 2655932902, - "ch.13.send.MX2.plink": 3976782701, - "ch.13.send.MX2.pan": 30885958, - "ch.13.send.MX3": 828036762, - "ch.13.send.MX3.on": 2709911310, - "ch.13.send.MX3.lvl": 2225635223, - "ch.13.send.MX3.pon": 327867009, - "ch.13.send.MX3.ind": 634029118, - "ch.13.send.MX3.mode": 1158657253, - "ch.13.send.MX3.plink": 3919865004, - "ch.13.send.MX3.pan": 10813071, - "ch.13.send.MX4": 244187557, - "ch.13.send.MX4.on": 2057669377, - "ch.13.send.MX4.lvl": 273224613, - "ch.13.send.MX4.pon": 1812377226, - "ch.13.send.MX4.ind": 2099526745, - "ch.13.send.MX4.mode": 1138604785, - "ch.13.send.MX4.plink": 2177343655, - "ch.13.send.MX4.pan": 2568522396, - "ch.13.send.MX5": 1007624814, - "ch.13.send.MX5.on": 3392787648, - "ch.13.send.MX5.lvl": 1639318765, - "ch.13.send.MX5.pon": 2475864683, - "ch.13.send.MX5.ind": 340371533, - "ch.13.send.MX5.mode": 3647424978, - "ch.13.send.MX5.plink": 2102377318, - "ch.13.send.MX5.pan": 1905206917, - "ch.13.send.MX6": 333602907, - "ch.13.send.MX6.on": 1973438715, - "ch.13.send.MX6.lvl": 3910928627, - "ch.13.send.MX6.pon": 1736910444, - "ch.13.send.MX6.ind": 677844355, - "ch.13.send.MX6.mode": 2835854779, - "ch.13.send.MX6.plink": 1036490617, - "ch.13.send.MX6.pan": 1296741018, - "ch.13.send.MX7": 3781394692, - "ch.13.send.MX7.on": 4271019130, - "ch.13.send.MX7.lvl": 3464743945, - "ch.13.send.MX7.pon": 2889610422, - "ch.13.send.MX7.ind": 3567309239, - "ch.13.send.MX7.mode": 1776590356, - "ch.13.send.MX7.plink": 3259411123, - "ch.13.send.MX7.pan": 3623370960, - "ch.13.send.MX8": 2929093610, - "ch.13.send.MX8.on": 3891837110, - "ch.13.send.MX8.lvl": 90484745, - "ch.13.send.MX8.pon": 2598204086, - "ch.13.send.MX8.ind": 2866953628, - "ch.13.send.MX8.mode": 2445892064, - "ch.13.send.MX8.plink": 2970697907, - "ch.13.send.MX8.pan": 3377911504, - "ch.13.tapwid": 1128719406, - "ch.13.postins": 369909539, - "ch.13.postins.on": 1703955084, - "ch.13.postins.mode": 2480838968, - "ch.13.postins.ins": 474086123, - "ch.13.postins.w": 996836843, - "ch.13.postins.$stat": 1939181681, - "ch.13.tags": 1433180746, - "ch.13.$fdr": 4132472325, - "ch.13.$mute": 1016406127, - "ch.13.$muteovr": 2198203528, - "ch.14": 2630996467, - "ch.14.in": 1386694716, - "ch.14.in.set": 2521494707, - "ch.14.in.set.$mode": 2100667124, - "ch.14.in.set.srcauto": 2929033757, - "ch.14.in.set.altsrc": 1727044714, - "ch.14.in.set.inv": 4060141205, - "ch.14.in.set.trim": 3960258872, - "ch.14.in.set.bal": 3399574572, - "ch.14.in.set.$g": 555539476, - "ch.14.in.set.$vph": 3144030357, - "ch.14.in.set.dlymode": 3264451934, - "ch.14.in.set.dly": 3316883361, - "ch.14.in.set.dlyon": 1006661832, - "ch.14.in.conn": 2013056384, - "ch.14.in.conn.grp": 3775213276, - "ch.14.in.conn.in": 1974413141, - "ch.14.in.conn.altgrp": 2553029952, - "ch.14.in.conn.altin": 1864178610, - "ch.14.flt": 3166858246, - "ch.14.flt.lc": 1011522023, - "ch.14.flt.lcf": 3954958839, - "ch.14.flt.hc": 1447510665, - "ch.14.flt.hcf": 924052530, - "ch.14.flt.tf": 3136489816, - "ch.14.flt.mdl": 1914009404, - "ch.14.flt.1": 1903940896, - "ch.14.flt.2": 3097097853, - "ch.14.clink": 2865567144, - "ch.14.col": 345637444, - "ch.14.name": 3338201931, - "ch.14.icon": 1202296577, - "ch.14.led": 3974291473, - "ch.14.$col": 2092234140, - "ch.14.$name": 1082129122, - "ch.14.$icon": 3457462565, - "ch.14.mute": 705281882, - "ch.14.fdr": 1941306045, - "ch.14.pan": 3223980333, - "ch.14.wid": 758628470, - "ch.14.$solo": 2625629421, - "ch.14.$sololed": 36729587, - "ch.14.solosafe": 2296003573, - "ch.14.mon": 3584534530, - "ch.14.proc": 2326475278, - "ch.14.ptap": 2223805265, - "ch.14.$presolo": 1235231139, - "ch.14.peq": 264710226, - "ch.14.peq.on": 2934927235, - "ch.14.peq.1g": 2781934064, - "ch.14.peq.1f": 3497733594, - "ch.14.peq.1q": 825812064, - "ch.14.peq.2g": 389603316, - "ch.14.peq.2f": 1100489537, - "ch.14.peq.2q": 242801124, - "ch.14.peq.3g": 2010371496, - "ch.14.peq.3f": 2726495477, - "ch.14.peq.3q": 51952536, - "ch.14.gate": 2619765652, - "ch.14.gate.on": 516571175, - "ch.14.gate.mdl": 114476821, - "ch.14.gate.1": 1357035338, - "ch.14.gate.2": 2826157580, - "ch.14.gate.3": 1073244622, - "ch.14.gate.4": 2205512123, - "ch.14.gate.5": 3673819885, - "ch.14.gate.6": 3464565146, - "ch.14.gate.7": 638551431, - "ch.14.gate.8": 3180777310, - "ch.14.gate.9": 18568715, - "ch.14.gatesc": 456484870, - "ch.14.gatesc.type": 2303909355, - "ch.14.gatesc.f": 2073702900, - "ch.14.gatesc.q": 1145956497, - "ch.14.gatesc.src": 848143972, - "ch.14.gatesc.tap": 4150022971, - "ch.14.gatesc.$solo": 3794824310, - "ch.14.eq": 364696427, - "ch.14.eq.on": 657919468, - "ch.14.eq.mdl": 2290438190, - "ch.14.eq.mix": 4243586500, - "ch.14.eq.$solo": 2778237726, - "ch.14.eq.$solobd": 4274959485, - "ch.14.eq.1": 1396451742, - "ch.14.eq.2": 1365385861, - "ch.14.eq.3": 2403544880, - "ch.14.eq.4": 1835265753, - "ch.14.eq.5": 1877267316, - "ch.14.eq.6": 100858110, - "ch.14.eq.7": 1139298789, - "ch.14.eq.8": 2181654047, - "ch.14.eq.9": 613031481, - "ch.14.eq.10": 1608821984, - "ch.14.eq.11": 3318397341, - "ch.14.eq.12": 3289625783, - "ch.14.eq.13": 378837276, - "ch.14.eq.14": 2675267934, - "ch.14.eq.15": 3801834992, - "ch.14.eq.16": 2022763386, - "ch.14.eq.17": 2054284311, - "ch.14.eq.18": 3021656060, - "ch.14.eq.19": 2537261243, - "ch.14.eq.20": 2854319489, - "ch.14.dyn": 3419501793, - "ch.14.dyn.on": 931498701, - "ch.14.dyn.mdl": 4145163312, - "ch.14.dyn.mix": 3090878510, - "ch.14.dyn.gain": 1662944244, - "ch.14.dyn.1": 2904937727, - "ch.14.dyn.2": 2058148930, - "ch.14.dyn.3": 2442109340, - "ch.14.dyn.4": 2434191574, - "ch.14.dyn.5": 916140053, - "ch.14.dyn.6": 2291246495, - "ch.14.dyn.7": 2093918818, - "ch.14.dyn.8": 2622714403, - "ch.14.dyn.9": 2448989942, - "ch.14.dynxo": 4015239294, - "ch.14.dynxo.depth": 3393999015, - "ch.14.dynxo.type": 4039877682, - "ch.14.dynxo.f": 3182865095, - "ch.14.dynxo.$solo": 3432417882, - "ch.14.dynsc": 3447233243, - "ch.14.dynsc.type": 314511801, - "ch.14.dynsc.f": 4028905564, - "ch.14.dynsc.q": 3848863535, - "ch.14.dynsc.src": 3507129561, - "ch.14.dynsc.tap": 2628025138, - "ch.14.dynsc.$solo": 1236731774, - "ch.14.preins": 1335002511, - "ch.14.preins.on": 2265132929, - "ch.14.preins.ins": 120818637, - "ch.14.preins.$stat": 1916447587, - "ch.14.main": 2931401071, - "ch.14.main.1": 3268685608, - "ch.14.main.1.on": 115267481, - "ch.14.main.1.lvl": 2410066753, - "ch.14.main.1.pre": 3316628027, - "ch.14.main.2": 3392049266, - "ch.14.main.2.on": 224697538, - "ch.14.main.2.lvl": 4114380930, - "ch.14.main.2.pre": 1329067176, - "ch.14.main.3": 352739089, - "ch.14.main.3.on": 2499857947, - "ch.14.main.3.lvl": 1841885811, - "ch.14.main.3.pre": 2077379993, - "ch.14.main.4": 3783284707, - "ch.14.main.4.on": 1510597963, - "ch.14.main.4.lvl": 679591555, - "ch.14.main.4.pre": 909995337, - "ch.14.send": 1539955358, - "ch.14.send.1": 2650435794, - "ch.14.send.1.on": 701006592, - "ch.14.send.1.lvl": 16820048, - "ch.14.send.1.pon": 1557085482, - "ch.14.send.1.ind": 393954673, - "ch.14.send.1.mode": 1906975630, - "ch.14.send.1.plink": 2375900900, - "ch.14.send.1.pan": 3300196169, - "ch.14.send.2": 3804092607, - "ch.14.send.2.on": 2161730440, - "ch.14.send.2.lvl": 29441832, - "ch.14.send.2.pon": 2646518242, - "ch.14.send.2.ind": 2521170313, - "ch.14.send.2.mode": 310203277, - "ch.14.send.2.plink": 4258195953, - "ch.14.send.2.pan": 630777777, - "ch.14.send.3": 1244958817, - "ch.14.send.3.on": 1297804509, - "ch.14.send.3.lvl": 892520605, - "ch.14.send.3.pon": 278855863, - "ch.14.send.3.ind": 1672348244, - "ch.14.send.3.mode": 4138279673, - "ch.14.send.3.plink": 167933952, - "ch.14.send.3.pan": 2558750812, - "ch.14.send.4": 2713193547, - "ch.14.send.4.on": 1894301032, - "ch.14.send.4.lvl": 4257277576, - "ch.14.send.4.pon": 3725525634, - "ch.14.send.4.ind": 2269489065, - "ch.14.send.4.mode": 518092984, - "ch.14.send.4.plink": 2536665660, - "ch.14.send.4.pan": 3655941905, - "ch.14.send.5": 3824712056, - "ch.14.send.5.on": 1694549056, - "ch.14.send.5.lvl": 1167630352, - "ch.14.send.5.pon": 574212458, - "ch.14.send.5.ind": 1377657137, - "ch.14.send.5.mode": 3335646410, - "ch.14.send.5.plink": 2341831612, - "ch.14.send.5.pan": 148195337, - "ch.14.send.6": 1444324338, - "ch.14.send.6.on": 429151281, - "ch.14.send.6.lvl": 4245433065, - "ch.14.send.6.pon": 1556289795, - "ch.14.send.6.ind": 59206088, - "ch.14.send.6.mode": 67942208, - "ch.14.send.6.plink": 2054208737, - "ch.14.send.6.pan": 1961415408, - "ch.14.send.7": 2913208671, - "ch.14.send.7.on": 4011148503, - "ch.14.send.7.lvl": 2142071095, - "ch.14.send.7.pon": 1545763613, - "ch.14.send.7.ind": 70397742, - "ch.14.send.7.mode": 3570108905, - "ch.14.send.7.plink": 1776836859, - "ch.14.send.7.pan": 1455210902, - "ch.14.send.8": 2502214558, - "ch.14.send.8.on": 500039207, - "ch.14.send.8.lvl": 1358307943, - "ch.14.send.8.pon": 814334381, - "ch.14.send.8.ind": 796573694, - "ch.14.send.8.mode": 3201922259, - "ch.14.send.8.plink": 3113896572, - "ch.14.send.8.pan": 3366287910, - "ch.14.send.9": 971521259, - "ch.14.send.9.on": 2401533066, - "ch.14.send.9.lvl": 459056602, - "ch.14.send.9.pon": 4235371424, - "ch.14.send.9.ind": 2095187707, - "ch.14.send.9.mode": 1796652367, - "ch.14.send.9.plink": 1610427495, - "ch.14.send.9.pan": 3830250995, - "ch.14.send.10": 2565997630, - "ch.14.send.10.on": 2194161402, - "ch.14.send.10.lvl": 2199007034, - "ch.14.send.10.pon": 1101816962, - "ch.14.send.10.ind": 581870315, - "ch.14.send.10.mode": 2413962290, - "ch.14.send.10.plink": 1153285375, - "ch.14.send.10.pan": 3257518674, - "ch.14.send.11": 1108422739, - "ch.14.send.11.on": 3407358079, - "ch.14.send.11.lvl": 2067908244, - "ch.14.send.11.pon": 851137416, - "ch.14.send.11.ind": 60796377, - "ch.14.send.11.mode": 678346036, - "ch.14.send.11.plink": 592101041, - "ch.14.send.11.pan": 1949487872, - "ch.14.send.12": 1849534657, - "ch.14.send.12.on": 1151879201, - "ch.14.send.12.lvl": 1749289334, - "ch.14.send.12.pon": 458130078, - "ch.14.send.12.ind": 4077759543, - "ch.14.send.12.mode": 249544678, - "ch.14.send.12.plink": 1261679571, - "ch.14.send.12.pan": 3219132462, - "ch.14.send.13": 3055353087, - "ch.14.send.13.on": 2365086113, - "ch.14.send.13.lvl": 2431629088, - "ch.14.send.13.pon": 962498692, - "ch.14.send.13.ind": 889043045, - "ch.14.send.13.mode": 1513066984, - "ch.14.send.13.plink": 2965624117, - "ch.14.send.13.pan": 3119096604, - "ch.14.send.14": 1602857872, - "ch.14.send.14.on": 1988641574, - "ch.14.send.14.lvl": 2291568642, - "ch.14.send.14.pon": 1453431082, - "ch.14.send.14.ind": 4269049843, - "ch.14.send.14.mode": 729196250, - "ch.14.send.14.plink": 1125275735, - "ch.14.send.14.pan": 2725879034, - "ch.14.send.15": 459856453, - "ch.14.send.15.on": 1322804584, - "ch.14.send.15.lvl": 1699005244, - "ch.14.send.15.pon": 791989328, - "ch.14.send.15.ind": 3994173921, - "ch.14.send.15.mode": 335764956, - "ch.14.send.15.plink": 1176202345, - "ch.14.send.15.pan": 1879226792, - "ch.14.send.16": 3281326334, - "ch.14.send.16.on": 946360045, - "ch.14.send.16.lvl": 3141809694, - "ch.14.send.16.pon": 691934886, - "ch.14.send.16.ind": 805957407, - "ch.14.send.16.mode": 174340238, - "ch.14.send.16.plink": 933775243, - "ch.14.send.16.pan": 2116016374, - "ch.14.send.MX1": 3046046605, - "ch.14.send.MX1.on": 120300599, - "ch.14.send.MX1.lvl": 426352959, - "ch.14.send.MX1.pon": 3575841090, - "ch.14.send.MX1.ind": 4062657475, - "ch.14.send.MX1.mode": 886186641, - "ch.14.send.MX1.plink": 2873116927, - "ch.14.send.MX1.pan": 3215615316, - "ch.14.send.MX2": 4186755840, - "ch.14.send.MX2.on": 1817731130, - "ch.14.send.MX2.lvl": 926092602, - "ch.14.send.MX2.pon": 760841026, - "ch.14.send.MX2.ind": 3148121509, - "ch.14.send.MX2.mode": 1748874897, - "ch.14.send.MX2.plink": 1131776767, - "ch.14.send.MX2.pan": 930346836, - "ch.14.send.MX3": 686442923, - "ch.14.send.MX3.on": 2696784692, - "ch.14.send.MX3.lvl": 2163752648, - "ch.14.send.MX3.pon": 1638217123, - "ch.14.send.MX3.ind": 3318544805, - "ch.14.send.MX3.mode": 1080080528, - "ch.14.send.MX3.plink": 937306110, - "ch.14.send.MX3.pan": 1384825309, - "ch.14.send.MX4": 1191087020, - "ch.14.send.MX4.on": 1237567284, - "ch.14.send.MX4.lvl": 696363720, - "ch.14.send.MX4.pon": 65585577, - "ch.14.send.MX4.ind": 817616426, - "ch.14.send.MX4.mode": 1806588574, - "ch.14.send.MX4.plink": 769281012, - "ch.14.send.MX4.pan": 278345175, - "ch.14.send.MX5": 39584471, - "ch.14.send.MX5.on": 3257910574, - "ch.14.send.MX5.lvl": 438030870, - "ch.14.send.MX5.pon": 811871510, - "ch.14.send.MX5.ind": 1335913007, - "ch.14.send.MX5.mode": 1964024453, - "ch.14.send.MX5.plink": 441089107, - "ch.14.send.MX5.pan": 874352944, - "ch.14.send.MX6": 844750058, - "ch.14.send.MX6.on": 3334242606, - "ch.14.send.MX6.lvl": 884350557, - "ch.14.send.MX6.pon": 2630334747, - "ch.14.send.MX6.ind": 1109383228, - "ch.14.send.MX6.mode": 2155099784, - "ch.14.send.MX6.plink": 3003576406, - "ch.14.send.MX6.pan": 2550793525, - "ch.14.send.MX7": 1659761741, - "ch.14.send.MX7.on": 2866228325, - "ch.14.send.MX7.lvl": 3247215571, - "ch.14.send.MX7.pon": 3468392488, - "ch.14.send.MX7.ind": 3226473602, - "ch.14.send.MX7.mode": 3436954511, - "ch.14.send.MX7.plink": 2764523029, - "ch.14.send.MX7.pan": 3044596750, - "ch.14.send.MX8": 2789996891, - "ch.14.send.MX8.on": 91252867, - "ch.14.send.MX8.lvl": 38141907, - "ch.14.send.MX8.pon": 4277271080, - "ch.14.send.MX8.ind": 2977103915, - "ch.14.send.MX8.mode": 3520833461, - "ch.14.send.MX8.plink": 352104469, - "ch.14.send.MX8.pan": 88229390, - "ch.14.tapwid": 1018479688, - "ch.14.postins": 1845583864, - "ch.14.postins.on": 3116540567, - "ch.14.postins.mode": 3756764563, - "ch.14.postins.ins": 2350667108, - "ch.14.postins.w": 3906963760, - "ch.14.postins.$stat": 716691727, - "ch.14.tags": 1407805052, - "ch.14.$fdr": 3662193879, - "ch.14.$mute": 4069572509, - "ch.14.$muteovr": 1399959816, - "ch.15": 2116078254, - "ch.15.in": 3942068807, - "ch.15.in.set": 2754624897, - "ch.15.in.set.$mode": 3807046051, - "ch.15.in.set.srcauto": 4278971639, - "ch.15.in.set.altsrc": 552881244, - "ch.15.in.set.inv": 3730311966, - "ch.15.in.set.trim": 2683602743, - "ch.15.in.set.bal": 3894548711, - "ch.15.in.set.$g": 3181117239, - "ch.15.in.set.$vph": 146883171, - "ch.15.in.set.dlymode": 3032535374, - "ch.15.in.set.dly": 53925618, - "ch.15.in.set.dlyon": 2122123736, - "ch.15.in.conn": 2448388639, - "ch.15.in.conn.grp": 1578535761, - "ch.15.in.conn.in": 1067730650, - "ch.15.in.conn.altgrp": 2382018114, - "ch.15.in.conn.altin": 4024808960, - "ch.15.flt": 2626727032, - "ch.15.flt.lc": 471366521, - "ch.15.flt.lcf": 3201437125, - "ch.15.flt.hc": 2322945527, - "ch.15.flt.hcf": 3963975596, - "ch.15.flt.tf": 3676278014, - "ch.15.flt.mdl": 123185698, - "ch.15.flt.1": 2454667966, - "ch.15.flt.2": 3217465867, - "ch.15.clink": 3070304698, - "ch.15.col": 4047167270, - "ch.15.name": 3529314617, - "ch.15.icon": 1291415967, - "ch.15.led": 413824743, - "ch.15.$col": 965502018, - "ch.15.$name": 2893658388, - "ch.15.$icon": 3567349319, - "ch.15.mute": 574232852, - "ch.15.fdr": 2469741115, - "ch.15.pan": 664069507, - "ch.15.wid": 1225338876, - "ch.15.$solo": 4014977879, - "ch.15.$sololed": 2247420733, - "ch.15.solosafe": 2009031714, - "ch.15.mon": 238333320, - "ch.15.proc": 3901747304, - "ch.15.ptap": 1674153559, - "ch.15.$presolo": 2745979509, - "ch.15.peq": 1002997260, - "ch.15.peq.on": 2669679069, - "ch.15.peq.1g": 2738961014, - "ch.15.peq.1f": 2143583116, - "ch.15.peq.1q": 520690918, - "ch.15.peq.2g": 956900226, - "ch.15.peq.2f": 162128111, - "ch.15.peq.2q": 1024905778, - "ch.15.peq.3g": 3589002094, - "ch.15.peq.3f": 2836167867, - "ch.15.peq.3q": 1215917598, - "ch.15.gate": 2987801462, - "ch.15.gate.on": 565164541, - "ch.15.gate.mdl": 2270524547, - "ch.15.gate.1": 1240636632, - "ch.15.gate.2": 2783172014, - "ch.15.gate.3": 2525515692, - "ch.15.gate.4": 3364194713, - "ch.15.gate.5": 569000719, - "ch.15.gate.6": 3432045480, - "ch.15.gate.7": 511677845, - "ch.15.gate.8": 411471804, - "ch.15.gate.9": 1261127785, - "ch.15.gatesc": 835016596, - "ch.15.gatesc.type": 3148231567, - "ch.15.gatesc.f": 2298569642, - "ch.15.gatesc.q": 543595079, - "ch.15.gatesc.src": 571012154, - "ch.15.gatesc.tap": 3714286189, - "ch.15.gatesc.$solo": 1606655463, - "ch.15.eq": 2714525673, - "ch.15.eq.on": 3574103418, - "ch.15.eq.mdl": 3669375136, - "ch.15.eq.mix": 1337924202, - "ch.15.eq.$solo": 1066119436, - "ch.15.eq.$solobd": 425679551, - "ch.15.eq.1": 2702029392, - "ch.15.eq.2": 2828055235, - "ch.15.eq.3": 3625036670, - "ch.15.eq.4": 529852047, - "ch.15.eq.5": 3340089146, - "ch.15.eq.6": 1563681200, - "ch.15.eq.7": 2360836643, - "ch.15.eq.8": 876117353, - "ch.15.eq.9": 2075899375, - "ch.15.eq.10": 387331398, - "ch.15.eq.11": 1855524339, - "ch.15.eq.12": 1984049465, - "ch.15.eq.13": 3452273066, - "ch.15.eq.14": 3980803240, - "ch.15.eq.15": 2496247126, - "ch.15.eq.16": 717217772, - "ch.15.eq.17": 3527475353, - "ch.15.eq.18": 32265098, - "ch.15.eq.19": 1231883253, - "ch.15.eq.20": 4075857359, - "ch.15.dyn": 3212600383, - "ch.15.dyn.on": 3613039339, - "ch.15.dyn.mdl": 3990509574, - "ch.15.dyn.mix": 3514946583, - "ch.15.dyn.gain": 2711508202, - "ch.15.dyn.1": 2373518689, - "ch.15.dyn.2": 3126327636, - "ch.15.dyn.3": 2109552858, - "ch.15.dyn.4": 4209792192, - "ch.15.dyn.5": 751197067, - "ch.15.dyn.6": 2327590401, - "ch.15.dyn.7": 153167732, - "ch.15.dyn.8": 3321915773, - "ch.15.dyn.9": 2821030624, - "ch.15.dynxo": 1291724664, - "ch.15.dynxo.depth": 553718250, - "ch.15.dynxo.type": 45640992, - "ch.15.dynxo.f": 3820327813, - "ch.15.dynxo.$solo": 1847017872, - "ch.15.dynsc": 1831226053, - "ch.15.dynsc.type": 2654534336, - "ch.15.dynsc.f": 3348537637, - "ch.15.dynsc.q": 1223812838, - "ch.15.dynsc.src": 2575267256, - "ch.15.dynsc.tap": 1278022707, - "ch.15.dynsc.$solo": 2072177803, - "ch.15.preins": 2441691457, - "ch.15.preins.on": 2886671174, - "ch.15.preins.ins": 1278738226, - "ch.15.preins.$stat": 518067432, - "ch.15.main": 2005520509, - "ch.15.main.1": 2997142154, - "ch.15.main.1.on": 488727927, - "ch.15.main.1.lvl": 1367970135, - "ch.15.main.1.pre": 1582624797, - "ch.15.main.2": 1549708064, - "ch.15.main.2.on": 342071972, - "ch.15.main.2.lvl": 36400844, - "ch.15.main.2.pre": 943001606, - "ch.15.main.3": 248913075, - "ch.15.main.3.on": 3143337753, - "ch.15.main.3.lvl": 1195617729, - "ch.15.main.3.pre": 2710536123, - "ch.15.main.4": 1162896353, - "ch.15.main.4.on": 1636494409, - "ch.15.main.4.lvl": 889372817, - "ch.15.main.4.pre": 448555947, - "ch.15.send": 3596772884, - "ch.15.send.1": 2466467160, - "ch.15.send.1.on": 1771354715, - "ch.15.send.1.lvl": 2234312243, - "ch.15.send.1.pon": 2795864825, - "ch.15.send.1.ind": 2125561554, - "ch.15.send.1.mode": 1653948601, - "ch.15.send.1.plink": 1600957286, - "ch.15.send.1.pan": 557923866, - "ch.15.send.2": 3316278821, - "ch.15.send.2.on": 591772626, - "ch.15.send.2.lvl": 4081946674, - "ch.15.send.2.pon": 1446302744, - "ch.15.send.2.ind": 248000083, - "ch.15.send.2.mode": 1584225101, - "ch.15.send.2.plink": 3653638348, - "ch.15.send.2.pan": 3482925211, - "ch.15.send.3": 2823249403, - "ch.15.send.3.on": 4090413587, - "ch.15.send.3.lvl": 247917435, - "ch.15.send.3.pon": 822672865, - "ch.15.send.3.ind": 139177306, - "ch.15.send.3.mode": 3858361496, - "ch.15.send.3.plink": 2057532990, - "ch.15.send.3.pan": 2544059154, - "ch.15.send.4": 3494490801, - "ch.15.send.4.on": 1125991214, - "ch.15.send.4.lvl": 1736776822, - "ch.15.send.4.pon": 100486396, - "ch.15.send.4.ind": 771733087, - "ch.15.send.4.mode": 1591493029, - "ch.15.send.4.plink": 1974969108, - "ch.15.send.4.pan": 2338440215, - "ch.15.send.5": 49346034, - "ch.15.send.5.on": 3168018341, - "ch.15.send.5.lvl": 3989588853, - "ch.15.send.5.pon": 3489857039, - "ch.15.send.5.ind": 2840036780, - "ch.15.send.5.mode": 4122246136, - "ch.15.send.5.plink": 1710962377, - "ch.15.send.5.pan": 1453892452, - "ch.15.send.6": 286202744, - "ch.15.send.6.on": 440429462, - "ch.15.send.6.lvl": 3898119374, - "ch.15.send.6.pon": 125383732, - "ch.15.send.6.ind": 752733591, - "ch.15.send.6.mode": 704558594, - "ch.15.send.6.plink": 3295479460, - "ch.15.send.6.pan": 1804922079, - "ch.15.send.7": 1135359685, - "ch.15.send.7.on": 360802322, - "ch.15.send.7.lvl": 2503558130, - "ch.15.send.7.pon": 2023261528, - "ch.15.send.7.ind": 11828499, - "ch.15.send.7.mode": 624259113, - "ch.15.send.7.plink": 454983265, - "ch.15.send.7.pan": 1576856667, - "ch.15.send.8": 2612210692, - "ch.15.send.8.on": 2769960749, - "ch.15.send.8.lvl": 1906469581, - "ch.15.send.8.pon": 2447375943, - "ch.15.send.8.ind": 2468152292, - "ch.15.send.8.mode": 1968659108, - "ch.15.send.8.plink": 318522846, - "ch.15.send.8.pan": 231064364, - "ch.15.send.9": 777356113, - "ch.15.send.9.on": 2774053737, - "ch.15.send.9.lvl": 3379616305, - "ch.15.send.9.pon": 1751181867, - "ch.15.send.9.ind": 3085713680, - "ch.15.send.9.mode": 3930448420, - "ch.15.send.9.plink": 2914528670, - "ch.15.send.9.pan": 8729000, - "ch.15.send.10": 489012221, - "ch.15.send.10.on": 3767829801, - "ch.15.send.10.lvl": 707805693, - "ch.15.send.10.pon": 3830119799, - "ch.15.send.10.ind": 1026277594, - "ch.15.send.10.mode": 2508226709, - "ch.15.send.10.plink": 1174177112, - "ch.15.send.10.pan": 209538677, - "ch.15.send.11": 4091869448, - "ch.15.send.11.on": 1749311396, - "ch.15.send.11.lvl": 838891171, - "ch.15.send.11.pon": 3640261641, - "ch.15.send.11.ind": 3044846324, - "ch.15.send.11.mode": 3509811171, - "ch.15.send.11.plink": 644859494, - "ch.15.send.11.pan": 3992217367, - "ch.15.send.12": 621408090, - "ch.15.send.12.on": 2704576802, - "ch.15.send.12.lvl": 319947201, - "ch.15.send.12.pon": 3446740651, - "ch.15.send.12.ind": 2902788254, - "ch.15.send.12.mode": 2992289697, - "ch.15.send.12.plink": 2466659140, - "ch.15.send.12.pan": 98527145, - "ch.15.send.13": 1334395004, - "ch.15.send.13.on": 644125602, - "ch.15.send.13.lvl": 970092279, - "ch.15.send.13.pon": 3898680077, - "ch.15.send.13.ind": 2719286264, - "ch.15.send.13.mode": 4287300111, - "ch.15.send.13.plink": 1517707394, - "ch.15.send.13.pan": 4241224443, - "ch.15.send.14": 605251019, - "ch.15.send.14.on": 257196605, - "ch.15.send.14.lvl": 287559621, - "ch.15.send.14.pon": 2618272863, - "ch.15.send.14.ind": 2921182082, - "ch.15.send.14.mode": 3561234269, - "ch.15.send.14.plink": 1016078992, - "ch.15.send.14.pan": 4047236413, - "ch.15.send.15": 2593955286, - "ch.15.send.15.on": 3875843771, - "ch.15.send.15.lvl": 460699691, - "ch.15.send.15.pon": 3597834993, - "ch.15.send.15.ind": 2753047804, - "ch.15.send.15.mode": 3031888331, - "ch.15.send.15.plink": 2596708766, - "ch.15.send.15.pan": 4247949567, - "ch.15.send.16": 1875594045, - "ch.15.send.16.on": 3405023542, - "ch.15.send.16.lvl": 545911177, - "ch.15.send.16.pon": 3403619123, - "ch.15.send.16.ind": 1269456742, - "ch.15.send.16.mode": 3068790377, - "ch.15.send.16.plink": 1081719932, - "ch.15.send.16.pan": 1747543697, - "ch.15.send.MX1": 3722884295, - "ch.15.send.MX1.on": 1479658965, - "ch.15.send.MX1.lvl": 1285904765, - "ch.15.send.MX1.pon": 4235243569, - "ch.15.send.MX1.ind": 1479216243, - "ch.15.send.MX1.mode": 3883563935, - "ch.15.send.MX1.plink": 3526467548, - "ch.15.send.MX1.pan": 3098446911, - "ch.15.send.MX2": 2414487994, - "ch.15.send.MX2.on": 2622140866, - "ch.15.send.MX2.lvl": 308473142, - "ch.15.send.MX2.pon": 1067962892, - "ch.15.send.MX2.ind": 2170053838, - "ch.15.send.MX2.mode": 3358472095, - "ch.15.send.MX2.plink": 1768391129, - "ch.15.send.MX2.pan": 1970806330, - "ch.15.send.MX3": 1022391185, - "ch.15.send.MX3.on": 1299672500, - "ch.15.send.MX3.lvl": 3465003019, - "ch.15.send.MX3.pon": 207532939, - "ch.15.send.MX3.ind": 4024217837, - "ch.15.send.MX3.mode": 2683319345, - "ch.15.send.MX3.plink": 3802398790, - "ch.15.send.MX3.pan": 3620607909, - "ch.15.send.MX4": 2625135174, - "ch.15.send.MX4.on": 771359156, - "ch.15.send.MX4.lvl": 1279611953, - "ch.15.send.MX4.pon": 3352979405, - "ch.15.send.MX4.ind": 3229851016, - "ch.15.send.MX4.mode": 3911341617, - "ch.15.send.MX4.plink": 3725892680, - "ch.15.send.MX4.pan": 3964863443, - "ch.15.send.MX5": 2927536893, - "ch.15.send.MX5.on": 2464749630, - "ch.15.send.MX5.lvl": 3088593818, - "ch.15.send.MX5.pon": 1866368600, - "ch.15.send.MX5.ind": 1600391559, - "ch.15.send.MX5.mode": 3540860811, - "ch.15.send.MX5.plink": 1493466437, - "ch.15.send.MX5.pan": 1967546942, - "ch.15.send.MX6": 1535255760, - "ch.15.send.MX6.on": 59690046, - "ch.15.send.MX6.lvl": 330454943, - "ch.15.send.MX6.pon": 3539614295, - "ch.15.send.MX6.ind": 67641010, - "ch.15.send.MX6.mode": 1684581248, - "ch.15.send.MX6.plink": 4239706434, - "ch.15.send.MX6.pan": 294301225, - "ch.15.send.MX7": 227003783, - "ch.15.send.MX7.on": 780470320, - "ch.15.send.MX7.lvl": 2479920128, - "ch.15.send.MX7.pon": 2812878258, - "ch.15.send.MX7.ind": 1853917905, - "ch.15.send.MX7.mode": 3466587837, - "ch.15.send.MX7.plink": 2107217391, - "ch.15.send.MX7.pan": 1826138500, - "ch.15.send.MX8": 3129997153, - "ch.15.send.MX8.on": 2359979056, - "ch.15.send.MX8.lvl": 1716398085, - "ch.15.send.MX8.pon": 1088397193, - "ch.15.send.MX8.ind": 537057579, - "ch.15.send.MX8.mode": 2098399930, - "ch.15.send.MX8.plink": 1456386068, - "ch.15.send.MX8.pan": 1134695351, - "ch.15.tapwid": 1185193666, - "ch.15.postins": 2708318477, - "ch.15.postins.on": 1348166178, - "ch.15.postins.mode": 2408127452, - "ch.15.postins.ins": 1764235938, - "ch.15.postins.w": 2787889093, - "ch.15.postins.$stat": 3970996025, - "ch.15.tags": 1129943270, - "ch.15.$fdr": 179961249, - "ch.15.$mute": 4022048067, - "ch.15.$muteovr": 3375363441, - "ch.16": 1355359077, - "ch.16.in": 654779842, - "ch.16.in.set": 2979854455, - "ch.16.in.set.$mode": 913378521, - "ch.16.in.set.srcauto": 1795313390, - "ch.16.in.set.altsrc": 2713956142, - "ch.16.in.set.inv": 873153351, - "ch.16.in.set.trim": 2703370229, - "ch.16.in.set.bal": 2454440830, - "ch.16.in.set.$g": 1757890454, - "ch.16.in.set.$vph": 1337820348, - "ch.16.in.set.dlymode": 2315528273, - "ch.16.in.set.dly": 229509651, - "ch.16.in.set.dlyon": 406430663, - "ch.16.in.conn": 972565626, - "ch.16.in.conn.grp": 2981070947, - "ch.16.in.conn.in": 944082047, - "ch.16.in.conn.altgrp": 1248627794, - "ch.16.in.conn.altin": 3181196496, - "ch.16.flt": 3474682762, - "ch.16.flt.lc": 1335054891, - "ch.16.flt.lcf": 2907774288, - "ch.16.flt.hc": 1797421557, - "ch.16.flt.hcf": 4291064878, - "ch.16.flt.tf": 2828316844, - "ch.16.flt.mdl": 79224830, - "ch.16.flt.1": 1533140332, - "ch.16.flt.2": 2749623833, - "ch.16.clink": 3201551484, - "ch.16.col": 4167848160, - "ch.16.name": 3660380855, - "ch.16.icon": 919147133, - "ch.16.led": 282863949, - "ch.16.$col": 1757063024, - "ch.16.$name": 2448315038, - "ch.16.$icon": 3783421081, - "ch.16.mute": 2888246518, - "ch.16.fdr": 63487145, - "ch.16.pan": 2221637673, - "ch.16.wid": 949553570, - "ch.16.$solo": 4273074225, - "ch.16.$sololed": 995702203, - "ch.16.solosafe": 121618920, - "ch.16.mon": 118221070, - "ch.16.proc": 1991962962, - "ch.16.ptap": 1899619341, - "ch.16.$presolo": 1046140187, - "ch.16.peq": 787963630, - "ch.16.peq.on": 2549332159, - "ch.16.peq.1g": 3037893444, - "ch.16.peq.1f": 2190959726, - "ch.16.peq.1q": 724872628, - "ch.16.peq.2g": 825535136, - "ch.16.peq.2f": 125567501, - "ch.16.peq.2q": 1145764688, - "ch.16.peq.3g": 3636071564, - "ch.16.peq.3f": 2957075417, - "ch.16.peq.3q": 1514560828, - "ch.16.gate": 2172718352, - "ch.16.gate.on": 1935409379, - "ch.16.gate.mdl": 1086500946, - "ch.16.gate.1": 1803897726, - "ch.16.gate.2": 2423693832, - "ch.16.gate.3": 1307935514, - "ch.16.gate.4": 2652560135, - "ch.16.gate.5": 3226793601, - "ch.16.gate.6": 3911429454, - "ch.16.gate.7": 401404219, - "ch.16.gate.8": 3407603242, - "ch.16.gate.9": 462810327, - "ch.16.gatesc": 20085762, - "ch.16.gatesc.type": 590020795, - "ch.16.gatesc.f": 253210164, - "ch.16.gatesc.q": 399538385, - "ch.16.gatesc.src": 3658487332, - "ch.16.gatesc.tap": 182373627, - "ch.16.gatesc.$solo": 804793445, - "ch.16.eq": 3617346388, - "ch.16.eq.on": 3612992664, - "ch.16.eq.mdl": 3630926146, - "ch.16.eq.mix": 1290847992, - "ch.16.eq.$solo": 3217616155, - "ch.16.eq.$solobd": 2566526584, - "ch.16.eq.1": 2740236386, - "ch.16.eq.2": 2706282801, - "ch.16.eq.3": 3747452396, - "ch.16.eq.4": 492627373, - "ch.16.eq.5": 3222014552, - "ch.16.eq.6": 1441652674, - "ch.16.eq.7": 2482530449, - "ch.16.eq.8": 838299467, - "ch.16.eq.9": 1957082381, - "ch.16.eq.10": 269235764, - "ch.16.eq.11": 1975923425, - "ch.16.eq.12": 1944918939, - "ch.16.eq.13": 3332128712, - "ch.16.eq.14": 4015755274, - "ch.16.eq.15": 2460323012, - "ch.16.eq.16": 682623566, - "ch.16.eq.17": 3396266747, - "ch.16.eq.18": 66459944, - "ch.16.eq.19": 1195728727, - "ch.16.eq.20": 4194253885, - "ch.16.dyn": 3154899213, - "ch.16.dyn.on": 3880435209, - "ch.16.dyn.mdl": 3520030300, - "ch.16.dyn.mix": 2056039469, - "ch.16.dyn.gain": 3213430156, - "ch.16.dyn.1": 2095616563, - "ch.16.dyn.2": 3404188710, - "ch.16.dyn.3": 2167195064, - "ch.16.dyn.4": 14407570, - "ch.16.dyn.5": 651573353, - "ch.16.dyn.6": 2563531475, - "ch.16.dyn.7": 210868806, - "ch.16.dyn.8": 3432027727, - "ch.16.dyn.9": 2721424818, - "ch.16.dynxo": 1055806618, - "ch.16.dynxo.depth": 4193585496, - "ch.16.dynxo.type": 1462618714, - "ch.16.dynxo.f": 2487240879, - "ch.16.dynxo.$solo": 323466186, - "ch.16.dynsc": 2098580967, - "ch.16.dynsc.type": 339073018, - "ch.16.dynsc.f": 3735934543, - "ch.16.dynsc.q": 3891431740, - "ch.16.dynsc.src": 596923058, - "ch.16.dynsc.tap": 3658860889, - "ch.16.dynsc.$solo": 4071856624, - "ch.16.preins": 1669571163, - "ch.16.preins.on": 4172452875, - "ch.16.preins.ins": 1315437175, - "ch.16.preins.$stat": 3137796867, - "ch.16.main": 2062486227, - "ch.16.main.1": 3570674972, - "ch.16.main.1.on": 96429401, - "ch.16.main.1.lvl": 2433169793, - "ch.16.main.1.pre": 3297461627, - "ch.16.main.2": 1434068422, - "ch.16.main.2.on": 1256248912, - "ch.16.main.2.lvl": 3419974272, - "ch.16.main.2.pre": 4279227866, - "ch.16.main.3": 681746989, - "ch.16.main.3.on": 2562732471, - "ch.16.main.3.lvl": 2110282519, - "ch.16.main.3.pre": 2995572701, - "ch.16.main.4": 1378376047, - "ch.16.main.4.on": 1358377410, - "ch.16.main.4.lvl": 831458690, - "ch.16.main.4.pre": 1019622312, - "ch.16.send": 3471139538, - "ch.16.send.1": 2340339758, - "ch.16.send.1.on": 3682596240, - "ch.16.send.1.lvl": 319299904, - "ch.16.send.1.pon": 1853343802, - "ch.16.send.1.ind": 4052531649, - "ch.16.send.1.mode": 100679090, - "ch.16.send.1.plink": 342852345, - "ch.16.send.1.pan": 2320726233, - "ch.16.send.2": 3441727899, - "ch.16.send.2.on": 1233846567, - "ch.16.send.2.lvl": 959632743, - "ch.16.send.2.pon": 374148781, - "ch.16.send.2.ind": 1572303614, - "ch.16.send.2.mode": 1467574336, - "ch.16.send.2.plink": 4059706791, - "ch.16.send.2.pan": 2632416550, - "ch.16.send.3": 2949292165, - "ch.16.send.3.on": 2548663230, - "ch.16.send.3.lvl": 2127669862, - "ch.16.send.3.pon": 3669014988, - "ch.16.send.3.ind": 2236379311, - "ch.16.send.3.mode": 3362924634, - "ch.16.send.3.plink": 1665265112, - "ch.16.send.3.pan": 4136960679, - "ch.16.send.4": 3704647695, - "ch.16.send.4.on": 1771276889, - "ch.16.send.4.lvl": 1092312705, - "ch.16.send.4.pon": 476349915, - "ch.16.send.4.ind": 1470103040, - "ch.16.send.4.mode": 2220858036, - "ch.16.send.4.plink": 685631155, - "ch.16.send.4.pan": 71239384, - "ch.16.send.5": 4134975668, - "ch.16.send.5.on": 484462709, - "ch.16.send.5.lvl": 231221029, - "ch.16.send.5.pon": 1773813087, - "ch.16.send.5.ind": 172158460, - "ch.16.send.5.mode": 296895536, - "ch.16.send.5.plink": 4141165681, - "ch.16.send.5.pan": 1906298548, - "ch.16.send.6": 411080782, - "ch.16.send.6.on": 3362500523, - "ch.16.send.6.lvl": 3125008611, - "ch.16.send.6.pon": 2508943369, - "ch.16.send.6.ind": 3737719650, - "ch.16.send.6.mode": 3295885443, - "ch.16.send.6.plink": 867108044, - "ch.16.send.6.pan": 493302122, - "ch.16.send.7": 1260808763, - "ch.16.send.7.on": 2613488999, - "ch.16.send.7.lvl": 2060355879, - "ch.16.send.7.pon": 3635462125, - "ch.16.send.7.ind": 2270413246, - "ch.16.send.7.mode": 3728853447, - "ch.16.send.7.plink": 2985439279, - "ch.16.send.7.pan": 1376465126, - "ch.16.send.8": 2821484194, - "ch.16.send.8.on": 3734135298, - "ch.16.send.8.lvl": 3086650178, - "ch.16.send.8.pon": 2609208776, - "ch.16.send.8.ind": 3379907843, - "ch.16.send.8.mode": 3790569779, - "ch.16.send.8.plink": 3743190590, - "ch.16.send.8.pan": 2498421515, - "ch.16.send.9": 651313327, - "ch.16.send.9.on": 198110745, - "ch.16.send.9.lvl": 3803649217, - "ch.16.send.9.pon": 1053306779, - "ch.16.send.9.ind": 557612096, - "ch.16.send.9.mode": 3757555664, - "ch.16.send.9.plink": 207990950, - "ch.16.send.9.pan": 3131206936, - "ch.16.send.10": 2870446798, - "ch.16.send.10.on": 1216329322, - "ch.16.send.10.lvl": 3062622132, - "ch.16.send.10.pon": 2175935652, - "ch.16.send.10.ind": 3632313101, - "ch.16.send.10.mode": 3426227126, - "ch.16.send.10.plink": 591906313, - "ch.16.send.10.pan": 169056676, - "ch.16.send.11": 2075770307, - "ch.16.send.11.on": 4050628335, - "ch.16.send.11.lvl": 2963011370, - "ch.16.send.11.pon": 1270956302, - "ch.16.send.11.ind": 2859565783, - "ch.16.send.11.mode": 3651469852, - "ch.16.send.11.plink": 376746727, - "ch.16.send.11.pan": 4259901966, - "ch.16.send.12": 1544107089, - "ch.16.send.12.on": 174052945, - "ch.16.send.12.lvl": 3539851584, - "ch.16.send.12.pon": 972315504, - "ch.16.send.12.ind": 2717891401, - "ch.16.send.12.mode": 3307854954, - "ch.16.send.12.plink": 1924775053, - "ch.16.send.12.pan": 3366613104, - "ch.16.send.13": 3702223215, - "ch.16.send.13.on": 3008351953, - "ch.16.send.13.lvl": 3939086630, - "ch.16.send.13.pon": 2456058074, - "ch.16.send.13.ind": 3771716883, - "ch.16.send.13.mode": 1842968560, - "ch.16.send.13.plink": 703187419, - "ch.16.send.13.pan": 114494938, - "ch.16.send.14": 2902471840, - "ch.16.send.14.on": 2621422934, - "ch.16.send.14.lvl": 3081789532, - "ch.16.send.14.pon": 1207659852, - "ch.16.send.14.ind": 2947196053, - "ch.16.send.14.mode": 3576440926, - "ch.16.send.14.plink": 878454113, - "ch.16.send.14.pan": 4215484492, - "ch.16.send.15": 765616821, - "ch.16.send.15.on": 1966071704, - "ch.16.send.15.lvl": 3615406066, - "ch.16.send.15.pon": 1076801494, - "ch.16.send.15.ind": 2815147583, - "ch.16.send.15.mode": 3067690660, - "ch.16.send.15.plink": 2017578079, - "ch.16.send.15.pan": 51954902, - "ch.16.send.16": 4260464142, - "ch.16.send.16.on": 1579145245, - "ch.16.send.16.lvl": 56516584, - "ch.16.send.16.pon": 714606104, - "ch.16.send.16.ind": 3827582993, - "ch.16.send.16.mode": 3147448626, - "ch.16.send.16.plink": 3836656613, - "ch.16.send.16.pan": 357959448, - "ch.16.send.MX1": 2739483546, - "ch.16.send.MX1.on": 1793528274, - "ch.16.send.MX1.lvl": 1217834484, - "ch.16.send.MX1.pon": 598627100, - "ch.16.send.MX1.ind": 2203795226, - "ch.16.send.MX1.mode": 3809172238, - "ch.16.send.MX1.plink": 1306593833, - "ch.16.send.MX1.pan": 1629921034, - "ch.16.send.MX2": 3874945767, - "ch.16.send.MX2.on": 386235813, - "ch.16.send.MX2.lvl": 1601030609, - "ch.16.send.MX2.pon": 4203123969, - "ch.16.send.MX2.ind": 1393343879, - "ch.16.send.MX2.mode": 1508830990, - "ch.16.send.MX2.plink": 614229036, - "ch.16.send.MX2.pan": 978209039, - "ch.16.send.MX3": 972034756, - "ch.16.send.MX3.on": 1450579120, - "ch.16.send.MX3.lvl": 1810704429, - "ch.16.send.MX3.pon": 1289722319, - "ch.16.send.MX3.ind": 782442888, - "ch.16.send.MX3.mode": 2173641364, - "ch.16.send.MX3.plink": 583977338, - "ch.16.send.MX3.pan": 933377473, - "ch.16.send.MX4": 2247672435, - "ch.16.send.MX4.on": 2483998894, - "ch.16.send.MX4.lvl": 2513736670, - "ch.16.send.MX4.pon": 1490912752, - "ch.16.send.MX4.ind": 1578304749, - "ch.16.send.MX4.mode": 2153082015, - "ch.16.send.MX4.plink": 1118162301, - "ch.16.send.MX4.pan": 732228054, - "ch.16.send.MX5": 3388070320, - "ch.16.send.MX5.on": 2214758753, - "ch.16.send.MX5.lvl": 3412271303, - "ch.16.send.MX5.pon": 1774158365, - "ch.16.send.MX5.ind": 2662459598, - "ch.16.send.MX5.mode": 2457742426, - "ch.16.send.MX5.plink": 1070543256, - "ch.16.send.MX5.pan": 722456035, - "ch.16.send.MX6": 480223517, - "ch.16.send.MX6.on": 2950976865, - "ch.16.send.MX6.lvl": 4132547744, - "ch.16.send.MX6.pon": 1628229078, - "ch.16.send.MX6.ind": 3040743643, - "ch.16.send.MX6.mode": 1889386589, - "ch.16.send.MX6.plink": 2331350419, - "ch.16.send.MX6.pan": 2742190576, - "ch.16.send.MX7": 1935194202, - "ch.16.send.MX7.on": 2829443959, - "ch.16.send.MX7.lvl": 1523643191, - "ch.16.send.MX7.pon": 1909875131, - "ch.16.send.MX7.ind": 1293702364, - "ch.16.send.MX7.mode": 3000044256, - "ch.16.send.MX7.plink": 2274924470, - "ch.16.send.MX7.pan": 2728852949, - "ch.16.send.MX8": 3164680244, - "ch.16.send.MX8.on": 578518906, - "ch.16.send.MX8.lvl": 2163781426, - "ch.16.send.MX8.pon": 2422121404, - "ch.16.send.MX8.ind": 2755449442, - "ch.16.send.MX8.mode": 3617890027, - "ch.16.send.MX8.plink": 1722030473, - "ch.16.send.MX8.pan": 2211327914, - "ch.16.tapwid": 913552396, - "ch.16.postins": 3670600462, - "ch.16.postins.on": 2294553025, - "ch.16.postins.mode": 2848048858, - "ch.16.postins.ins": 3623761288, - "ch.16.postins.w": 3085636022, - "ch.16.postins.$stat": 3900360481, - "ch.16.tags": 1680544232, - "ch.16.$fdr": 3997932419, - "ch.16.$mute": 1116506977, - "ch.16.$muteovr": 4185173775, - "ch.17": 2448193810, - "ch.17.in": 3168210765, - "ch.17.in.set": 3205109685, - "ch.17.in.set.$mode": 1809876952, - "ch.17.in.set.srcauto": 4180823545, - "ch.17.in.set.altsrc": 3473798465, - "ch.17.in.set.inv": 782531757, - "ch.17.in.set.trim": 1842746604, - "ch.17.in.set.bal": 2424476772, - "ch.17.in.set.$g": 230722972, - "ch.17.in.set.$vph": 385420417, - "ch.17.in.set.dlymode": 3164362514, - "ch.17.in.set.dly": 689391097, - "ch.17.in.set.dlyon": 2590233060, - "ch.17.in.conn": 1255222624, - "ch.17.in.conn.grp": 877233194, - "ch.17.in.conn.in": 209761141, - "ch.17.in.conn.altgrp": 869275118, - "ch.17.in.conn.altin": 3896579876, - "ch.17.flt": 3081815372, - "ch.17.flt.lc": 942230189, - "ch.17.flt.lcf": 2080220211, - "ch.17.flt.hc": 1184229059, - "ch.17.flt.hcf": 2423398832, - "ch.17.flt.tf": 3388956690, - "ch.17.flt.mdl": 472330916, - "ch.17.flt.1": 1979134826, - "ch.17.flt.2": 3017317031, - "ch.17.clink": 2702219678, - "ch.17.col": 87945554, - "ch.17.name": 3246081941, - "ch.17.icon": 1633237307, - "ch.17.led": 4073490803, - "ch.17.$col": 2307382518, - "ch.17.$name": 985629248, - "ch.17.$icon": 280050219, - "ch.17.mute": 133531792, - "ch.17.fdr": 1861844199, - "ch.17.pan": 2000586703, - "ch.17.wid": 818120616, - "ch.17.$solo": 2338231355, - "ch.17.$sololed": 3688200244, - "ch.17.solosafe": 1192152751, - "ch.17.mon": 3527050740, - "ch.17.proc": 2238164604, - "ch.17.ptap": 2009626259, - "ch.17.$presolo": 2956126764, - "ch.17.peq": 532915752, - "ch.17.peq.on": 3004887641, - "ch.17.peq.1g": 2537320250, - "ch.17.peq.1f": 3418271888, - "ch.17.peq.1q": 588080970, - "ch.17.peq.2g": 487415262, - "ch.17.peq.2f": 1169137803, - "ch.17.peq.2q": 152852270, - "ch.17.peq.3g": 1911576690, - "ch.17.peq.3f": 2635237183, - "ch.17.peq.3q": 4101324226, - "ch.17.gate": 2719110626, - "ch.17.gate.on": 394997751, - "ch.17.gate.mdl": 4276818517, - "ch.17.gate.1": 1508774556, - "ch.17.gate.2": 3051862842, - "ch.17.gate.3": 1183697384, - "ch.17.gate.4": 2022929365, - "ch.17.gate.5": 3522784691, - "ch.17.gate.6": 3701454444, - "ch.17.gate.7": 779182169, - "ch.17.gate.8": 3363267832, - "ch.17.gate.9": 4213005733, - "ch.17.gatesc": 566283552, - "ch.17.gatesc.type": 258376536, - "ch.17.gatesc.f": 3160725930, - "ch.17.gatesc.q": 4270007367, - "ch.17.gatesc.src": 2875025978, - "ch.17.gatesc.tap": 1905522797, - "ch.17.gatesc.$solo": 2307125083, - "ch.17.eq": 1940708575, - "ch.17.eq.on": 591568406, - "ch.17.eq.mdl": 2314528724, - "ch.17.eq.mix": 4259802526, - "ch.17.eq.$solo": 2015645677, - "ch.17.eq.$solobd": 3522361750, - "ch.17.eq.1": 1330081492, - "ch.17.eq.2": 1495654351, - "ch.17.eq.3": 2274598010, - "ch.17.eq.4": 1902618371, - "ch.17.eq.5": 1989501886, - "ch.17.eq.6": 209141300, - "ch.17.eq.7": 988090159, - "ch.17.eq.8": 2228015317, - "ch.17.eq.9": 704304739, - "ch.17.eq.10": 1721037994, - "ch.17.eq.11": 3165868359, - "ch.17.eq.12": 3334677005, - "ch.17.eq.13": 468770374, - "ch.17.eq.14": 2667899284, - "ch.17.eq.15": 3828524602, - "ch.17.eq.16": 2050785456, - "ch.17.eq.17": 2153402733, - "ch.17.eq.18": 2993296038, - "ch.17.eq.19": 2543327473, - "ch.17.eq.20": 2763383499, - "ch.17.dyn": 2861770443, - "ch.17.dyn.on": 4007102231, - "ch.17.dyn.mdl": 2926951951, - "ch.17.dyn.mix": 3112787479, - "ch.17.dyn.gain": 329430553, - "ch.17.dyn.1": 1970909829, - "ch.17.dyn.2": 2859977032, - "ch.17.dyn.3": 2459793942, - "ch.17.dyn.4": 3846914268, - "ch.17.dyn.5": 1028216687, - "ch.17.dyn.6": 2605900261, - "ch.17.dyn.7": 4129356584, - "ch.17.dyn.8": 3642665353, - "ch.17.dyn.9": 2426696380, - "ch.17.dynxo": 929098628, - "ch.17.dynxo.depth": 717269806, - "ch.17.dynxo.type": 2799630112, - "ch.17.dynxo.f": 2213485957, - "ch.17.dynxo.$solo": 1062688072, - "ch.17.dynsc": 1470396193, - "ch.17.dynsc.type": 3362229204, - "ch.17.dynsc.f": 3943171425, - "ch.17.dynsc.q": 2646822922, - "ch.17.dynsc.src": 757141748, - "ch.17.dynsc.tap": 3867574871, - "ch.17.dynsc.$solo": 2037371604, - "ch.17.preins": 1422983021, - "ch.17.preins.on": 3099096409, - "ch.17.preins.ins": 2559465781, - "ch.17.preins.$stat": 3319794275, - "ch.17.main": 2799410961, - "ch.17.main.1": 2731032846, - "ch.17.main.1.on": 1278466974, - "ch.17.main.1.lvl": 578553670, - "ch.17.main.1.pre": 771909132, - "ch.17.main.2": 3423154244, - "ch.17.main.2.on": 4050804854, - "ch.17.main.2.lvl": 3108648110, - "ch.17.main.2.pre": 2872980980, - "ch.17.main.3": 4262694239, - "ch.17.main.3.on": 3784668465, - "ch.17.main.3.lvl": 221072361, - "ch.17.main.3.pre": 677639459, - "ch.17.main.4": 3558138781, - "ch.17.main.4.on": 835634545, - "ch.17.main.4.lvl": 1693882793, - "ch.17.main.4.pre": 1257940195, - "ch.17.send": 3874693640, - "ch.17.send.1": 2094153652, - "ch.17.send.1.on": 1363150425, - "ch.17.send.1.lvl": 3647462017, - "ch.17.send.1.pon": 1041885659, - "ch.17.send.1.ind": 987972096, - "ch.17.send.1.mode": 2581570777, - "ch.17.send.1.plink": 3042853792, - "ch.17.send.1.pan": 2722071256, - "ch.17.send.2": 3016868833, - "ch.17.send.2.on": 4253746745, - "ch.17.send.2.lvl": 1896034785, - "ch.17.send.2.pon": 282015611, - "ch.17.send.2.ind": 259912480, - "ch.17.send.2.mode": 4077101307, - "ch.17.send.2.plink": 469890678, - "ch.17.send.2.pan": 2834532920, - "ch.17.send.3": 3017673791, - "ch.17.send.3.on": 2970175028, - "ch.17.send.3.lvl": 1032942076, - "ch.17.send.3.pon": 2649651062, - "ch.17.send.3.ind": 3340120869, - "ch.17.send.3.mode": 1258672319, - "ch.17.send.3.plink": 3557431927, - "ch.17.send.3.pan": 432589373, - "ch.17.send.4": 3101855829, - "ch.17.send.4.on": 2373684207, - "ch.17.send.4.lvl": 1968420159, - "ch.17.send.4.pon": 3497964613, - "ch.17.send.4.ind": 2748217238, - "ch.17.send.4.mode": 639163080, - "ch.17.send.4.plink": 2254659610, - "ch.17.send.4.pan": 3630370094, - "ch.17.send.5": 442799918, - "ch.17.send.5.on": 1373613823, - "ch.17.send.5.lvl": 816306863, - "ch.17.send.5.pon": 349662933, - "ch.17.send.5.ind": 1680675942, - "ch.17.send.5.mode": 1123967230, - "ch.17.send.5.plink": 3044882792, - "ch.17.send.5.pan": 2566074942, - "ch.17.send.6": 678325396, - "ch.17.send.6.on": 2641613370, - "ch.17.send.6.lvl": 2036071274, - "ch.17.send.6.pon": 3659910672, - "ch.17.send.6.ind": 2329369899, - "ch.17.send.6.mode": 866688327, - "ch.17.send.6.plink": 548628155, - "ch.17.send.6.pan": 1443582691, - "ch.17.send.7": 678949697, - "ch.17.send.7.on": 1531884085, - "ch.17.send.7.lvl": 3479624549, - "ch.17.send.7.pon": 3999985183, - "ch.17.send.7.ind": 1172454716, - "ch.17.send.7.mode": 2812976255, - "ch.17.send.7.plink": 1822262339, - "ch.17.send.7.pan": 4069470964, - "ch.17.send.8": 2910468360, - "ch.17.send.8.on": 1295164752, - "ch.17.send.8.lvl": 3715811712, - "ch.17.send.8.pon": 973576954, - "ch.17.send.8.ind": 973049601, - "ch.17.send.8.mode": 4162323893, - "ch.17.send.8.plink": 3046630063, - "ch.17.send.8.pan": 2695045401, - "ch.17.send.9": 561954741, - "ch.17.send.9.on": 557788624, - "ch.17.send.9.lvl": 157767424, - "ch.17.send.9.pon": 1847227002, - "ch.17.send.9.ind": 182630273, - "ch.17.send.9.mode": 359146201, - "ch.17.send.9.plink": 3773255072, - "ch.17.send.9.pan": 1916710553, - "ch.17.send.10": 3243716847, - "ch.17.send.10.on": 1681931115, - "ch.17.send.10.lvl": 2508709102, - "ch.17.send.10.pon": 1612597084, - "ch.17.send.10.ind": 3906613183, - "ch.17.send.10.mode": 4259509813, - "ch.17.send.10.plink": 434567605, - "ch.17.send.10.pan": 2679107131, - "ch.17.send.11": 1893282778, - "ch.17.send.11.on": 4216343782, - "ch.17.send.11.lvl": 2356631432, - "ch.17.send.11.pon": 2662887082, - "ch.17.send.11.ind": 530733077, - "ch.17.send.11.mode": 4097202095, - "ch.17.send.11.plink": 272275567, - "ch.17.send.11.pan": 3023665617, - "ch.17.send.12": 2427813256, - "ch.17.send.12.on": 576723888, - "ch.17.send.12.lvl": 2854834194, - "ch.17.send.12.pon": 2858180672, - "ch.17.send.12.ind": 671741587, - "ch.17.send.12.mode": 320349505, - "ch.17.send.12.plink": 174314289, - "ch.17.send.12.pan": 1239025471, - "ch.17.send.13": 2419556430, - "ch.17.send.13.on": 3111136560, - "ch.17.send.13.lvl": 1108441084, - "ch.17.send.13.pon": 1374426654, - "ch.17.send.13.ind": 897199305, - "ch.17.send.13.mode": 1701306363, - "ch.17.send.13.plink": 49524587, - "ch.17.send.13.pan": 2774960341, - "ch.17.send.14": 1063880425, - "ch.17.send.14.on": 1350581951, - "ch.17.send.14.lvl": 2591094342, - "ch.17.send.14.pon": 1210348724, - "ch.17.send.14.ind": 443604567, - "ch.17.send.14.mode": 4172182381, - "ch.17.send.14.plink": 551711325, - "ch.17.send.14.pan": 2968967571, - "ch.17.send.15": 1056280276, - "ch.17.send.15.on": 2005930521, - "ch.17.send.15.lvl": 2439200992, - "ch.17.send.15.pon": 2913405442, - "ch.17.send.15.ind": 613766285, - "ch.17.send.15.mode": 4009879815, - "ch.17.send.15.plink": 4046186679, - "ch.17.send.15.pan": 2936028425, - "ch.17.send.16": 4006098351, - "ch.17.send.16.on": 245375892, - "ch.17.send.16.lvl": 1260296522, - "ch.17.send.16.pon": 3108023224, - "ch.17.send.16.ind": 755481355, - "ch.17.send.16.mode": 244173497, - "ch.17.send.16.plink": 192891865, - "ch.17.send.16.pan": 1183470231, - "ch.17.send.MX1": 1522362775, - "ch.17.send.MX1.on": 1923336568, - "ch.17.send.MX1.lvl": 3780334025, - "ch.17.send.MX1.pon": 1206586028, - "ch.17.send.MX1.ind": 4053620215, - "ch.17.send.MX1.mode": 2127048680, - "ch.17.send.MX1.plink": 841220921, - "ch.17.send.MX1.pan": 1290069722, - "ch.17.send.MX2": 2830681322, - "ch.17.send.MX2.on": 1329083746, - "ch.17.send.MX2.lvl": 4029746654, - "ch.17.send.MX2.pon": 2789853356, - "ch.17.send.MX2.ind": 4241145196, - "ch.17.send.MX2.mode": 1043055592, - "ch.17.send.MX2.plink": 3495526713, - "ch.17.send.MX2.pan": 3733329114, - "ch.17.send.MX3": 598858945, - "ch.17.send.MX3.on": 1109981683, - "ch.17.send.MX3.lvl": 3618214900, - "ch.17.send.MX3.pon": 2468120410, - "ch.17.send.MX3.ind": 2230247805, - "ch.17.send.MX3.mode": 424812150, - "ch.17.send.MX3.plink": 2098320055, - "ch.17.send.MX3.pan": 1902132012, - "ch.17.send.MX4": 2620848246, - "ch.17.send.MX4.on": 1481356760, - "ch.17.send.MX4.lvl": 579293232, - "ch.17.send.MX4.pon": 1218450257, - "ch.17.send.MX4.ind": 265391698, - "ch.17.send.MX4.mode": 2702473546, - "ch.17.send.MX4.plink": 509757116, - "ch.17.send.MX4.pan": 1004318559, - "ch.17.send.MX5": 2989494221, - "ch.17.send.MX5.on": 1539018569, - "ch.17.send.MX5.lvl": 4272304238, - "ch.17.send.MX5.pon": 1039938767, - "ch.17.send.MX5.ind": 2058756643, - "ch.17.send.MX5.mode": 1866154745, - "ch.17.send.MX5.plink": 1410475130, - "ch.17.send.MX5.pan": 1188565185, - "ch.17.send.MX6": 3710610176, - "ch.17.send.MX6.on": 1268829001, - "ch.17.send.MX6.lvl": 1040481455, - "ch.17.send.MX6.pon": 1020289231, - "ch.17.send.MX6.ind": 1190507693, - "ch.17.send.MX6.mode": 2354742256, - "ch.17.send.MX6.plink": 1723000954, - "ch.17.send.MX6.pan": 2008319169, - "ch.17.send.MX7": 1395556951, - "ch.17.send.MX7.on": 2757939719, - "ch.17.send.MX7.lvl": 4011741244, - "ch.17.send.MX7.pon": 840119374, - "ch.17.send.MX7.ind": 4217260212, - "ch.17.send.MX7.mode": 2517484327, - "ch.17.send.MX7.plink": 467369931, - "ch.17.send.MX7.pan": 40802408, - "ch.17.send.MX8": 2787730993, - "ch.17.send.MX8.on": 4266155579, - "ch.17.send.MX8.lvl": 1488698401, - "ch.17.send.MX8.pon": 1914827285, - "ch.17.send.MX8.ind": 100973082, - "ch.17.send.MX8.mode": 862017371, - "ch.17.send.MX8.plink": 1549860176, - "ch.17.send.MX8.pan": 1913677307, - "ch.17.tapwid": 1117726310, - "ch.17.postins": 2050303653, - "ch.17.postins.on": 3411206042, - "ch.17.postins.mode": 2170154083, - "ch.17.postins.ins": 4134618774, - "ch.17.postins.w": 494357885, - "ch.17.postins.$stat": 999506452, - "ch.17.tags": 1465108530, - "ch.17.$fdr": 4234157581, - "ch.17.$mute": 3497935047, - "ch.17.$muteovr": 3855444265, - "ch.18": 1268371913, - "ch.18.in": 3907470635, - "ch.18.in.set": 2637479003, - "ch.18.in.set.$mode": 1690744951, - "ch.18.in.set.srcauto": 1351602036, - "ch.18.in.set.altsrc": 160490084, - "ch.18.in.set.inv": 242863998, - "ch.18.in.set.trim": 2450564395, - "ch.18.in.set.bal": 3081791303, - "ch.18.in.set.$g": 2388517591, - "ch.18.in.set.$vph": 1384427350, - "ch.18.in.set.dlymode": 2759640927, - "ch.18.in.set.dly": 857512786, - "ch.18.in.set.dlyon": 2667637673, - "ch.18.in.conn": 1446236615, - "ch.18.in.conn.grp": 1038965906, - "ch.18.in.conn.in": 411443970, - "ch.18.in.conn.altgrp": 991768953, - "ch.18.in.conn.altin": 1278027683, - "ch.18.flt": 3212916782, - "ch.18.flt.lc": 1052298639, - "ch.18.flt.lcf": 2339562153, - "ch.18.flt.hc": 1409643409, - "ch.18.flt.hcf": 3653429978, - "ch.18.flt.tf": 3257875760, - "ch.18.flt.mdl": 543839274, - "ch.18.flt.1": 1858577992, - "ch.18.flt.2": 3137873797, - "ch.18.clink": 3095700448, - "ch.18.col": 4147253996, - "ch.18.name": 3764859875, - "ch.18.icon": 1247693993, - "ch.18.led": 3942039289, - "ch.18.$col": 1477953268, - "ch.18.$name": 1106230218, - "ch.18.$icon": 3342699421, - "ch.18.mute": 673355106, - "ch.18.fdr": 2412574149, - "ch.18.pan": 883765557, - "ch.18.wid": 1966310046, - "ch.18.$solo": 2594974965, - "ch.18.$sololed": 1425633851, - "ch.18.solosafe": 514795500, - "ch.18.mon": 3410842026, - "ch.18.proc": 2358567942, - "ch.18.ptap": 2234758441, - "ch.18.$presolo": 2333165713, - "ch.18.peq": 892380570, - "ch.18.peq.on": 2779639691, - "ch.18.peq.1g": 2848873592, - "ch.18.peq.1f": 2043779842, - "ch.18.peq.1q": 578511976, - "ch.18.peq.2g": 1014719500, - "ch.18.peq.2f": 230804313, - "ch.18.peq.2q": 915272892, - "ch.18.peq.3g": 3531510560, - "ch.18.peq.3f": 2726582925, - "ch.18.peq.3q": 1283597264, - "ch.18.gate": 2415868604, - "ch.18.gate.on": 3400358824, - "ch.18.gate.mdl": 2827207051, - "ch.18.gate.1": 1476057346, - "ch.18.gate.2": 2170216548, - "ch.18.gate.3": 2614797686, - "ch.18.gate.4": 3915820227, - "ch.18.gate.5": 355152933, - "ch.18.gate.6": 3668826994, - "ch.18.gate.7": 65233631, - "ch.18.gate.8": 509978598, - "ch.18.gate.9": 1810509619, - "ch.18.gatesc": 273522302, - "ch.18.gatesc.type": 1854814195, - "ch.18.gatesc.f": 2891921559, - "ch.18.gatesc.q": 2903043578, - "ch.18.gatesc.src": 4284915983, - "ch.18.gatesc.tap": 2952353656, - "ch.18.gatesc.$solo": 4189451248, - "ch.18.eq": 2617013085, - "ch.18.eq.on": 3948158788, - "ch.18.eq.mdl": 3295004934, - "ch.18.eq.mix": 1626773180, - "ch.18.eq.$solo": 3628585883, - "ch.18.eq.$solobd": 2037656056, - "ch.18.eq.1": 2404990966, - "ch.18.eq.2": 3042184877, - "ch.18.eq.3": 4083295576, - "ch.18.eq.4": 156784177, - "ch.18.eq.5": 3557180652, - "ch.18.eq.6": 1105751894, - "ch.18.eq.7": 2146688525, - "ch.18.eq.8": 1174138791, - "ch.18.eq.9": 1621894545, - "ch.18.eq.10": 604421000, - "ch.18.eq.11": 1640084005, - "ch.18.eq.12": 2280759519, - "ch.18.eq.13": 2996965236, - "ch.18.eq.14": 3679830118, - "ch.18.eq.15": 2795591448, - "ch.18.eq.16": 346784130, - "ch.18.eq.17": 3731451967, - "ch.18.eq.18": 402381268, - "ch.18.eq.19": 860458947, - "ch.18.eq.20": 3859090345, - "ch.18.dyn": 2152598793, - "ch.18.dyn.on": 594342405, - "ch.18.dyn.mdl": 2840397543, - "ch.18.dyn.mix": 3967428287, - "ch.18.dyn.gain": 255034913, - "ch.18.dyn.1": 2433525383, - "ch.18.dyn.2": 3744616586, - "ch.18.dyn.3": 3171606308, - "ch.18.dyn.4": 3303059742, - "ch.18.dyn.5": 319029693, - "ch.18.dyn.6": 3574454055, - "ch.18.dyn.7": 3496182058, - "ch.18.dyn.8": 3096186827, - "ch.18.dyn.9": 3059868094, - "ch.18.dynxo": 1389088822, - "ch.18.dynxo.depth": 2041358596, - "ch.18.dynxo.type": 550422950, - "ch.18.dynxo.f": 1572053763, - "ch.18.dynxo.$solo": 3504785111, - "ch.18.dynsc": 2439111187, - "ch.18.dynsc.type": 1816560238, - "ch.18.dynsc.f": 1059642411, - "ch.18.dynsc.q": 2514588640, - "ch.18.dynsc.src": 4156554670, - "ch.18.dynsc.tap": 1139089181, - "ch.18.dynsc.$solo": 4100190112, - "ch.18.preins": 1386714055, - "ch.18.preins.on": 1872769399, - "ch.18.preins.ins": 3980826531, - "ch.18.preins.$stat": 2427378985, - "ch.18.main": 2868007575, - "ch.18.main.1": 3301983392, - "ch.18.main.1.on": 1314118489, - "ch.18.main.1.lvl": 540782465, - "ch.18.main.1.pre": 713341819, - "ch.18.main.2": 3312922122, - "ch.18.main.2.on": 642882645, - "ch.18.main.2.lvl": 4032393349, - "ch.18.main.2.pre": 3844406239, - "ch.18.main.3": 413506025, - "ch.18.main.3.on": 2839924663, - "ch.18.main.3.lvl": 3644717335, - "ch.18.main.3.pre": 4101457373, - "ch.18.main.4": 3794592043, - "ch.18.main.4.on": 807199682, - "ch.18.main.4.lvl": 1717878658, - "ch.18.main.4.pre": 1240493480, - "ch.18.send": 1486938662, - "ch.18.send.1": 2617037050, - "ch.18.send.1.on": 632258368, - "ch.18.send.1.lvl": 1558686480, - "ch.18.send.1.pon": 954744426, - "ch.18.send.1.ind": 996951089, - "ch.18.send.1.mode": 3446810116, - "ch.18.send.1.plink": 720739730, - "ch.18.send.1.pan": 3234071305, - "ch.18.send.2": 3836142311, - "ch.18.send.2.on": 4042024759, - "ch.18.send.2.lvl": 631520151, - "ch.18.send.2.pon": 2217453757, - "ch.18.send.2.ind": 3693019854, - "ch.18.send.2.mode": 1907333818, - "ch.18.send.2.plink": 2681995711, - "ch.18.send.2.pan": 2643452918, - "ch.18.send.3": 1275780233, - "ch.18.send.3.on": 1667362934, - "ch.18.send.3.lvl": 2672411822, - "ch.18.send.3.pon": 3669844, - "ch.18.send.3.ind": 2026832823, - "ch.18.send.3.mode": 3597839879, - "ch.18.send.3.plink": 2889941992, - "ch.18.send.3.pan": 135425215, - "ch.18.send.4": 2662675571, - "ch.18.send.4.on": 1944314125, - "ch.18.send.4.lvl": 918292397, - "ch.18.send.4.pon": 3608403047, - "ch.18.send.4.ind": 1647748868, - "ch.18.send.4.mode": 1697352950, - "ch.18.send.4.plink": 1228946211, - "ch.18.send.4.pan": 3203948556, - "ch.18.send.5": 3876550400, - "ch.18.send.5.on": 234342102, - "ch.18.send.5.lvl": 482319758, - "ch.18.send.5.pon": 1086506612, - "ch.18.send.5.ind": 4164576087, - "ch.18.send.5.mode": 619103040, - "ch.18.send.5.plink": 759502818, - "ch.18.send.5.pan": 2766685599, - "ch.18.send.6": 1497470874, - "ch.18.send.6.on": 843798707, - "ch.18.send.6.lvl": 1349726747, - "ch.18.send.6.pon": 4111210305, - "ch.18.send.6.ind": 1140353722, - "ch.18.send.6.mode": 3807759752, - "ch.18.send.6.plink": 349152607, - "ch.18.send.6.pan": 2032654770, - "ch.18.send.7": 2963649415, - "ch.18.send.7.on": 3284682423, - "ch.18.send.7.lvl": 3874517015, - "ch.18.send.7.pon": 2257549629, - "ch.18.send.7.ind": 2909483598, - "ch.18.send.7.mode": 740266390, - "ch.18.send.7.plink": 3985396540, - "ch.18.send.7.pan": 179554422, - "ch.18.send.8": 2471472422, - "ch.18.send.8.on": 1973746318, - "ch.18.send.8.lvl": 2699896406, - "ch.18.send.8.pon": 3264398108, - "ch.18.send.8.ind": 1650966271, - "ch.18.send.8.mode": 458234169, - "ch.18.send.8.plink": 1460393984, - "ch.18.send.8.pan": 3711466999, - "ch.18.send.9": 917112083, - "ch.18.send.9.on": 918517746, - "ch.18.send.9.lvl": 3087507154, - "ch.18.send.9.pon": 427271544, - "ch.18.send.9.ind": 1266878003, - "ch.18.send.9.mode": 3435742053, - "ch.18.send.9.plink": 2116196773, - "ch.18.send.9.pan": 2484860731, - "ch.18.send.10": 1961033854, - "ch.18.send.10.on": 4272898106, - "ch.18.send.10.lvl": 622474916, - "ch.18.send.10.pon": 2756973140, - "ch.18.send.10.ind": 2221334831, - "ch.18.send.10.mode": 4053394872, - "ch.18.send.10.plink": 2771752808, - "ch.18.send.10.pan": 1450316456, - "ch.18.send.11": 3324654611, - "ch.18.send.11.on": 654255295, - "ch.18.send.11.lvl": 648683038, - "ch.18.send.11.pon": 2338529074, - "ch.18.send.11.ind": 1616359453, - "ch.18.send.11.mode": 2244375714, - "ch.18.send.11.plink": 2409808114, - "ch.18.send.11.pan": 294344638, - "ch.18.send.12": 2451876353, - "ch.18.send.12.on": 1083132897, - "ch.18.send.12.lvl": 130808688, - "ch.18.send.12.pon": 2039913952, - "ch.18.send.12.ind": 1432722091, - "ch.18.send.12.mode": 1736946540, - "ch.18.send.12.plink": 2832981596, - "ch.18.send.12.pan": 478674596, - "ch.18.send.13": 2452356031, - "ch.18.send.13.on": 1759467617, - "ch.18.send.13.lvl": 886538922, - "ch.18.send.13.pon": 2449885198, - "ch.18.send.13.ind": 2486523673, - "ch.18.send.13.mode": 3115822486, - "ch.18.send.13.plink": 357312422, - "ch.18.send.13.pan": 1521571146, - "ch.18.send.14": 3815811664, - "ch.18.send.14.on": 3530508006, - "ch.18.send.14.lvl": 557724556, - "ch.18.send.14.pon": 3050964220, - "ch.18.send.14.ind": 1545348983, - "ch.18.send.14.mode": 1791904320, - "ch.18.send.14.plink": 2507823808, - "ch.18.send.14.pan": 1327603568, - "ch.18.send.15": 4152482053, - "ch.18.send.15.on": 2864671016, - "ch.18.send.15.lvl": 122465446, - "ch.18.send.15.pon": 2358036954, - "ch.18.send.15.ind": 1322922021, - "ch.18.send.15.mode": 1954225994, - "ch.18.send.15.plink": 2731765418, - "ch.18.send.15.pan": 255507526, - "ch.18.send.16": 1199968190, - "ch.18.send.16.on": 340741549, - "ch.18.send.16.lvl": 1407988568, - "ch.18.send.16.pon": 2163611912, - "ch.18.send.16.ind": 2419212723, - "ch.18.send.16.mode": 1740393012, - "ch.18.send.16.plink": 2583715380, - "ch.18.send.16.pan": 460816716, - "ch.18.send.MX1": 1835924038, - "ch.18.send.MX1.on": 1716932498, - "ch.18.send.MX1.lvl": 3138241348, - "ch.18.send.MX1.pon": 1476766154, - "ch.18.send.MX1.ind": 3538219589, - "ch.18.send.MX1.mode": 613864946, - "ch.18.send.MX1.plink": 1111316839, - "ch.18.send.MX1.pan": 740967900, - "ch.18.send.MX2": 2680411219, - "ch.18.send.MX2.on": 1290154863, - "ch.18.send.MX2.lvl": 1433839467, - "ch.18.send.MX2.pon": 3463915457, - "ch.18.send.MX2.ind": 3717472035, - "ch.18.send.MX2.mode": 171151858, - "ch.18.send.MX2.plink": 2755139436, - "ch.18.send.MX2.pan": 2517152719, - "ch.18.send.MX3": 3446229720, - "ch.18.send.MX3.on": 1057948544, - "ch.18.send.MX3.lvl": 1636017627, - "ch.18.send.MX3.pon": 3287783871, - "ch.18.send.MX3.ind": 664120126, - "ch.18.send.MX3.mode": 615161384, - "ch.18.send.MX3.plink": 3656099370, - "ch.18.send.MX3.pan": 4045782449, - "ch.18.send.MX4": 2348780743, - "ch.18.send.MX4.on": 729171869, - "ch.18.send.MX4.lvl": 3371821605, - "ch.18.send.MX4.pon": 3814026687, - "ch.18.send.MX4.ind": 1345521561, - "ch.18.send.MX4.mode": 1257307173, - "ch.18.send.MX4.plink": 3440960042, - "ch.18.send.MX4.pan": 2972142001, - "ch.18.send.MX5": 3198485564, - "ch.18.send.MX5.on": 1843428555, - "ch.18.send.MX5.lvl": 4189298093, - "ch.18.send.MX5.pon": 3478642669, - "ch.18.send.MX5.ind": 771367828, - "ch.18.send.MX5.mode": 2507582974, - "ch.18.send.MX5.plink": 4186599464, - "ch.18.send.MX5.pan": 360469491, - "ch.18.send.MX6": 3959086665, - "ch.18.send.MX6.on": 2810933451, - "ch.18.send.MX6.lvl": 2506555888, - "ch.18.send.MX6.pon": 2065978344, - "ch.18.send.MX6.ind": 1659130087, - "ch.18.send.MX6.mode": 3778615803, - "ch.18.send.MX6.plink": 1357532245, - "ch.18.send.MX6.pan": 973070286, - "ch.18.send.MX7": 492893574, - "ch.18.send.MX7.on": 1282771529, - "ch.18.send.MX7.lvl": 3791171017, - "ch.18.send.MX7.pon": 1895745403, - "ch.18.send.MX7.ind": 3733327074, - "ch.18.send.MX7.mode": 1775837396, - "ch.18.send.MX7.plink": 2263078902, - "ch.18.send.MX7.pan": 2485316501, - "ch.18.send.MX8": 1253505032, - "ch.18.send.MX8.on": 642121334, - "ch.18.send.MX8.lvl": 1641103858, - "ch.18.send.MX8.pon": 3776333174, - "ch.18.send.MX8.ind": 3946650424, - "ch.18.send.MX8.mode": 4044872913, - "ch.18.send.MX8.plink": 3075259891, - "ch.18.send.MX8.pan": 2747015568, - "ch.18.tapwid": 1196270752, - "ch.18.postins": 631137139, - "ch.18.postins.on": 1944692316, - "ch.18.postins.mode": 3175124714, - "ch.18.postins.ins": 781192601, - "ch.18.postins.w": 588286523, - "ch.18.postins.$stat": 172486061, - "ch.18.tags": 1208426116, - "ch.18.$fdr": 58528639, - "ch.18.$mute": 4117561333, - "ch.18.$muteovr": 2962795891, - "ch.19": 4052746579, - "ch.19.in": 2167877270, - "ch.19.in.set": 2882385353, - "ch.19.in.set.$mode": 3343084466, - "ch.19.in.set.srcauto": 2749839043, - "ch.19.in.set.altsrc": 1135518267, - "ch.19.in.set.inv": 1765083557, - "ch.19.in.set.trim": 2529074934, - "ch.19.in.set.bal": 1391795164, - "ch.19.in.set.$g": 3900244356, - "ch.19.in.set.$vph": 1684041007, - "ch.19.in.set.dlymode": 2443284764, - "ch.19.in.set.dly": 3462647281, - "ch.19.in.set.dlyon": 1868458346, - "ch.19.in.conn": 3000397684, - "ch.19.in.conn.grp": 3110774535, - "ch.19.in.conn.in": 3029027105, - "ch.19.in.conn.altgrp": 717288665, - "ch.19.in.conn.altin": 1397771331, - "ch.19.flt": 3417288736, - "ch.19.flt.lc": 1277681505, - "ch.19.flt.lcf": 3763133390, - "ch.19.flt.hc": 1519844543, - "ch.19.flt.hcf": 751348016, - "ch.19.flt.tf": 3053503478, - "ch.19.flt.mdl": 2338364452, - "ch.19.flt.1": 1643518630, - "ch.19.flt.2": 2681843891, - "ch.19.clink": 3038001042, - "ch.19.col": 4288802766, - "ch.19.name": 3581247761, - "ch.19.icon": 1336772871, - "ch.19.led": 378253999, - "ch.19.$col": 953850074, - "ch.19.$name": 2359392444, - "ch.19.$icon": 3557484735, - "ch.19.mute": 2987343420, - "ch.19.fdr": 2338080739, - "ch.19.pan": 2336489163, - "ch.19.wid": 1090801380, - "ch.19.$solo": 4152014175, - "ch.19.$sololed": 3966368421, - "ch.19.solosafe": 3525340430, - "ch.19.mon": 358434864, - "ch.19.proc": 1902343488, - "ch.19.ptap": 1726441455, - "ch.19.$presolo": 602493834, - "ch.19.peq": 1012955924, - "ch.19.peq.on": 2659064293, - "ch.19.peq.1g": 2791191070, - "ch.19.peq.1f": 2070005140, - "ch.19.peq.1q": 447450894, - "ch.19.peq.2g": 883657082, - "ch.19.peq.2f": 194093255, - "ch.19.peq.2q": 1056840234, - "ch.19.peq.3g": 3578686918, - "ch.19.peq.3f": 2868151571, - "ch.19.peq.3q": 1225916022, - "ch.19.gate": 2271858462, - "ch.19.gate.on": 2083963694, - "ch.19.gate.mdl": 2650467930, - "ch.19.gate.1": 1703775152, - "ch.19.gate.2": 2481833094, - "ch.19.gate.3": 1397211956, - "ch.19.gate.4": 2533096737, - "ch.19.gate.5": 3348509799, - "ch.19.gate.6": 3812650240, - "ch.19.gate.7": 290498317, - "ch.19.gate.8": 3506084804, - "ch.19.gate.9": 341103729, - "ch.19.gatesc": 129681036, - "ch.19.gatesc.type": 2293430512, - "ch.19.gatesc.f": 2208722721, - "ch.19.gatesc.q": 3116480964, - "ch.19.gatesc.src": 1754911929, - "ch.19.gatesc.tap": 3066597446, - "ch.19.gatesc.$solo": 1771091275, - "ch.19.eq": 856448221, - "ch.19.eq.on": 3544430162, - "ch.19.eq.mdl": 3656777752, - "ch.19.eq.mix": 1306940706, - "ch.19.eq.$solo": 327856621, - "ch.19.eq.$solobd": 3971242902, - "ch.19.eq.1": 2672350888, - "ch.19.eq.2": 2837739531, - "ch.19.eq.3": 3616703494, - "ch.19.eq.4": 560512871, - "ch.19.eq.5": 3331750770, - "ch.19.eq.6": 1551410696, - "ch.19.eq.7": 2330175339, - "ch.19.eq.8": 885766257, - "ch.19.eq.9": 2046553799, - "ch.19.eq.10": 378952814, - "ch.19.eq.11": 1823599035, - "ch.19.eq.12": 1992427969, - "ch.19.eq.13": 3421652450, - "ch.19.eq.14": 4010148144, - "ch.19.eq.15": 2486275742, - "ch.19.eq.16": 708516116, - "ch.19.eq.17": 3495508257, - "ch.19.eq.18": 40598082, - "ch.19.eq.19": 1201221789, - "ch.19.eq.20": 4105489143, - "ch.19.dyn": 3059391847, - "ch.19.dyn.on": 3793772643, - "ch.19.dyn.mdl": 3204797157, - "ch.19.dyn.mix": 2793729864, - "ch.19.dyn.gain": 282546212, - "ch.19.dyn.1": 2197695465, - "ch.19.dyn.2": 3330290332, - "ch.19.dyn.3": 2243720002, - "ch.19.dyn.4": 93223432, - "ch.19.dyn.5": 554729651, - "ch.19.dyn.6": 2468019017, - "ch.19.dyn.7": 307692028, - "ch.19.dyn.8": 3520676517, - "ch.19.dyn.9": 2645903720, - "ch.19.dynxo": 1132003888, - "ch.19.dynxo.depth": 2447373507, - "ch.19.dynxo.type": 1029672344, - "ch.19.dynxo.f": 1568835389, - "ch.19.dynxo.$solo": 2051965249, - "ch.19.dynsc": 2035511389, - "ch.19.dynsc.type": 3621261784, - "ch.19.dynsc.f": 61575293, - "ch.19.dynsc.q": 2220017070, - "ch.19.dynsc.src": 494180080, - "ch.19.dynsc.tap": 3626896699, - "ch.19.dynsc.$solo": 133586199, - "ch.19.preins": 1758865593, - "ch.19.preins.on": 3268925913, - "ch.19.preins.ins": 3308434357, - "ch.19.preins.$stat": 3467645629, - "ch.19.main": 1963028453, - "ch.19.main.1": 3030502818, - "ch.19.main.1.on": 4193413431, - "ch.19.main.1.lvl": 1956285847, - "ch.19.main.1.pre": 1076228445, - "ch.19.main.2": 1679977720, - "ch.19.main.2.on": 489715591, - "ch.19.main.2.lvl": 4184361927, - "ch.19.main.2.pre": 3680640749, - "ch.19.main.3": 121262251, - "ch.19.main.3.on": 365724408, - "ch.19.main.3.lvl": 3971262904, - "ch.19.main.3.pre": 4144006386, - "ch.19.main.4": 1195030889, - "ch.19.main.4.on": 2633362168, - "ch.19.main.4.lvl": 2374877624, - "ch.19.main.4.pre": 3234295026, - "ch.19.send": 3543173980, - "ch.19.send.1": 2433558144, - "ch.19.send.1.on": 1806154646, - "ch.19.send.1.lvl": 722461902, - "ch.19.send.1.pon": 3463611444, - "ch.19.send.1.ind": 1451916695, - "ch.19.send.1.mode": 1140792290, - "ch.19.send.1.plink": 2188189776, - "ch.19.send.1.pan": 3352837343, - "ch.19.send.2": 3348573517, - "ch.19.send.2.on": 629979777, - "ch.19.send.2.lvl": 4045705561, - "ch.19.send.2.pon": 313381587, - "ch.19.send.2.ind": 313077656, - "ch.19.send.2.mode": 3170577239, - "ch.19.send.2.plink": 4170913432, - "ch.19.send.2.pan": 2370320832, - "ch.19.send.3": 2686133027, - "ch.19.send.3.on": 2841754892, - "ch.19.send.3.lvl": 1831462436, - "ch.19.send.3.pon": 2354447070, - "ch.19.send.3.ind": 2477041677, - "ch.19.send.3.mode": 1057404321, - "ch.19.send.3.plink": 4144817976, - "ch.19.send.3.pan": 75120181, - "ch.19.send.4": 3443882457, - "ch.19.send.4.on": 1164198195, - "ch.19.send.4.lvl": 1700533659, - "ch.19.send.4.pon": 41307841, - "ch.19.send.4.ind": 836809530, - "ch.19.send.4.mode": 2407946639, - "ch.19.send.4.plink": 169840640, - "ch.19.send.4.pan": 3910188338, - "ch.19.send.5": 100610170, - "ch.19.send.5.on": 828318720, - "ch.19.send.5.lvl": 4181149776, - "ch.19.send.5.pon": 345504810, - "ch.19.send.5.ind": 532448881, - "ch.19.send.5.mode": 1502211174, - "ch.19.send.5.plink": 2159923584, - "ch.19.send.5.pan": 2087952457, - "ch.19.send.6": 338777568, - "ch.19.send.6.on": 3100339613, - "ch.19.send.6.lvl": 3385037277, - "ch.19.send.6.pon": 1812869751, - "ch.19.send.6.ind": 3443445908, - "ch.19.send.6.mode": 148988051, - "ch.19.send.6.plink": 3704271198, - "ch.19.send.6.pan": 1387522460, - "ch.19.send.7": 1018518701, - "ch.19.send.7.on": 860896845, - "ch.19.send.7.lvl": 1329095277, - "ch.19.send.7.pon": 4031340967, - "ch.19.send.7.ind": 1220397508, - "ch.19.send.7.mode": 3067323392, - "ch.19.send.7.plink": 1110990198, - "ch.19.send.7.pan": 3626220236, - "ch.19.send.8": 2581549708, - "ch.19.send.8.on": 4146413684, - "ch.19.send.8.lvl": 193817020, - "ch.19.send.8.pon": 703922102, - "ch.19.send.8.ind": 168952549, - "ch.19.send.8.mode": 3582827346, - "ch.19.send.8.plink": 3013727845, - "ch.19.send.8.pan": 2404434429, - "ch.19.send.9": 890874169, - "ch.19.send.9.on": 858241580, - "ch.19.send.9.lvl": 1668275780, - "ch.19.send.9.pon": 1172926, - "ch.19.send.9.ind": 536167405, - "ch.19.send.9.mode": 3293771640, - "ch.19.send.9.plink": 1442377347, - "ch.19.send.9.pan": 2594977365, - "ch.19.send.10": 2467478840, - "ch.19.send.10.on": 145196644, - "ch.19.send.10.lvl": 3489276544, - "ch.19.send.10.pon": 3265290148, - "ch.19.send.10.ind": 2665832727, - "ch.19.send.10.mode": 4126923782, - "ch.19.send.10.plink": 645392851, - "ch.19.send.10.pan": 2864607908, - "ch.19.send.11": 3241277389, - "ch.19.send.11.on": 1626824937, - "ch.19.send.11.lvl": 3515496234, - "ch.19.send.11.pon": 3116721394, - "ch.19.send.11.ind": 388796869, - "ch.19.send.11.mode": 665364664, - "ch.19.send.11.plink": 136619525, - "ch.19.send.11.pan": 2368017914, - "ch.19.send.12": 4281397407, - "ch.19.send.12.on": 1208455143, - "ch.19.send.12.lvl": 3017306124, - "ch.19.send.12.pon": 2922772304, - "ch.19.send.12.ind": 205822019, - "ch.19.send.12.mode": 300283098, - "ch.19.send.12.plink": 1816858919, - "ch.19.send.12.pan": 2795763600, - "ch.19.send.13": 1955610401, - "ch.19.send.13.on": 2648150631, - "ch.19.send.13.lvl": 3772536982, - "ch.19.send.13.pon": 3164962798, - "ch.19.send.13.ind": 4275381345, - "ch.19.send.13.mode": 1742066252, - "ch.19.send.13.plink": 972746825, - "ch.19.send.13.pan": 2601962598, - "ch.19.send.14": 2771018886, - "ch.19.send.14.on": 3035070712, - "ch.19.send.14.lvl": 3404572856, - "ch.19.send.14.pon": 2109356764, - "ch.19.send.14.ind": 292443279, - "ch.19.send.14.mode": 884935998, - "ch.19.send.14.plink": 471520891, - "ch.19.send.14.pan": 2575765020, - "ch.19.send.15": 443915419, - "ch.19.send.15.on": 3711413622, - "ch.19.send.15.lvl": 3137050754, - "ch.19.send.15.pon": 3258419242, - "ch.19.send.15.ind": 123886461, - "ch.19.send.15.mode": 376163024, - "ch.19.send.15.plink": 2067908205, - "ch.19.send.15.pan": 2498610194, - "ch.19.send.16": 1081362936, - "ch.19.send.16.on": 4266100731, - "ch.19.send.16.lvl": 3242183460, - "ch.19.send.16.pon": 2896057672, - "ch.19.send.16.ind": 2851113467, - "ch.19.send.16.mode": 391188018, - "ch.19.send.16.plink": 552522639, - "ch.19.send.16.pan": 122982792, - "ch.19.send.MX1": 1205204416, - "ch.19.send.MX1.on": 2409145684, - "ch.19.send.MX1.lvl": 2420521134, - "ch.19.send.MX1.pon": 1055903717, - "ch.19.send.MX1.ind": 1519363126, - "ch.19.send.MX1.mode": 3440846289, - "ch.19.send.MX1.plink": 1759435232, - "ch.19.send.MX1.pan": 1982985163, - "ch.19.send.MX2": 2052143309, - "ch.19.send.MX2.on": 4159125841, - "ch.19.send.MX2.lvl": 4165827818, - "ch.19.send.MX2.pon": 3217575423, - "ch.19.send.MX2.ind": 2991071021, - "ch.19.send.MX2.mode": 1394512340, - "ch.19.send.MX2.plink": 2508636138, - "ch.19.send.MX2.pan": 2774149617, - "ch.19.send.MX3": 4073672862, - "ch.19.send.MX3.on": 891318828, - "ch.19.send.MX3.lvl": 2803705479, - "ch.19.send.MX3.pon": 1744687027, - "ch.19.send.MX3.ind": 4198431540, - "ch.19.send.MX3.mode": 4157829423, - "ch.19.send.MX3.plink": 2452652174, - "ch.19.send.MX3.pan": 2083941293, - "ch.19.send.MX4": 3063514457, - "ch.19.send.MX4.on": 756614679, - "ch.19.send.MX4.lvl": 3743726233, - "ch.19.send.MX4.pon": 3759883150, - "ch.19.send.MX4.ind": 1231767299, - "ch.19.send.MX4.mode": 2525833027, - "ch.19.send.MX4.plink": 3391556747, - "ch.19.send.MX4.pan": 3021535144, - "ch.19.send.MX5": 2568461290, - "ch.19.send.MX5.on": 3003924522, - "ch.19.send.MX5.lvl": 812565298, - "ch.19.send.MX5.pon": 641574843, - "ch.19.send.MX5.ind": 1208091370, - "ch.19.send.MX5.mode": 736757856, - "ch.19.send.MX5.plink": 1345435062, - "ch.19.send.MX5.pan": 1044368341, - "ch.19.send.MX6": 3247629271, - "ch.19.send.MX6.on": 1491207229, - "ch.19.send.MX6.lvl": 2589554462, - "ch.19.send.MX6.pon": 173702075, - "ch.19.send.MX6.ind": 1546232081, - "ch.19.send.MX6.mode": 3599070353, - "ch.19.send.MX6.plink": 4096258486, - "ch.19.send.MX6.pan": 170022869, - "ch.19.send.MX7": 1120336512, - "ch.19.send.MX7.on": 2973248968, - "ch.19.send.MX7.lvl": 2145992520, - "ch.19.send.MX7.pon": 1485348753, - "ch.19.send.MX7.ind": 2821459197, - "ch.19.send.MX7.mode": 2536859198, - "ch.19.send.MX7.plink": 1853509756, - "ch.19.send.MX7.pan": 2348235679, - "ch.19.send.MX8": 1967583854, - "ch.19.send.MX8.on": 4153254396, - "ch.19.send.MX8.lvl": 3086033736, - "ch.19.send.MX8.pon": 2439060881, - "ch.19.send.MX8.ind": 4255192430, - "ch.19.send.MX8.mode": 3743973970, - "ch.19.send.MX8.plink": 1730274940, - "ch.19.send.MX8.pan": 1931399583, - "ch.19.tapwid": 749219098, - "ch.19.postins": 24292513, - "ch.19.postins.on": 2958449614, - "ch.19.postins.mode": 4077195201, - "ch.19.postins.ins": 2135111330, - "ch.19.postins.w": 2251347449, - "ch.19.postins.$stat": 3270443836, - "ch.19.tags": 1813421806, - "ch.19.$fdr": 273499465, - "ch.19.$mute": 3797734363, - "ch.19.$muteovr": 3462593501, - "ch.20": 981822398, - "ch.20.in": 2191592230, - "ch.20.in.set": 4235966131, - "ch.20.in.set.$mode": 83403964, - "ch.20.in.set.srcauto": 3837186101, - "ch.20.in.set.altsrc": 1552976466, - "ch.20.in.set.inv": 725673003, - "ch.20.in.set.trim": 3696088800, - "ch.20.in.set.bal": 2481028106, - "ch.20.in.set.$g": 2858219114, - "ch.20.in.set.$vph": 4121747677, - "ch.20.in.set.dlymode": 708638662, - "ch.20.in.set.dly": 2356371487, - "ch.20.in.set.dlyon": 813748944, - "ch.20.in.conn": 4106033386, - "ch.20.in.conn.grp": 2120863476, - "ch.20.in.conn.in": 4134455279, - "ch.20.in.conn.altgrp": 1866632872, - "ch.20.in.conn.altin": 2395419178, - "ch.20.flt": 3625753733, - "ch.20.flt.lc": 1486107484, - "ch.20.flt.lcf": 1642252272, - "ch.20.flt.hc": 3322105370, - "ch.20.flt.hcf": 3119395354, - "ch.20.flt.tf": 1066653595, - "ch.20.flt.mdl": 1308239762, - "ch.20.flt.1": 1435175963, - "ch.20.flt.2": 2219098670, - "ch.20.clink": 3205076571, - "ch.20.col": 3050138223, - "ch.20.name": 307006776, - "ch.20.icon": 544935650, - "ch.20.led": 1004926942, - "ch.20.$col": 1191162495, - "ch.20.$name": 705442461, - "ch.20.$icon": 3743686963, - "ch.20.mute": 1617934207, - "ch.20.fdr": 3731017384, - "ch.20.pan": 3066073074, - "ch.20.wid": 512705491, - "ch.20.$solo": 1551632192, - "ch.20.$sololed": 1819783448, - "ch.20.solosafe": 1907117361, - "ch.20.mon": 3930406427, - "ch.20.proc": 1140309785, - "ch.20.ptap": 1607344078, - "ch.20.$presolo": 1794165176, - "ch.20.peq": 1764920867, - "ch.20.peq.on": 2109081402, - "ch.20.peq.1g": 1956076121, - "ch.20.peq.1f": 18453411, - "ch.20.peq.1q": 7500361, - "ch.20.peq.2g": 1718778405, - "ch.20.peq.2f": 3897865080, - "ch.20.peq.2q": 3215802901, - "ch.20.peq.3g": 2828352369, - "ch.20.peq.3f": 2075630788, - "ch.20.peq.3q": 702819169, - "ch.20.gate": 651124949, - "ch.20.gate.on": 3017846093, - "ch.20.gate.mdl": 2113761308, - "ch.20.gate.1": 1903360571, - "ch.20.gate.2": 445143749, - "ch.20.gate.3": 2187799767, - "ch.20.gate.4": 1390186186, - "ch.20.gate.5": 4227243460, - "ch.20.gate.6": 4090887819, - "ch.20.gate.7": 2632661118, - "ch.20.gate.8": 90845799, - "ch.20.gate.9": 3578020634, - "ch.20.gatesc": 2803905759, - "ch.20.gatesc.type": 4217809988, - "ch.20.gatesc.f": 746851198, - "ch.20.gatesc.q": 711317019, - "ch.20.gatesc.src": 1032558830, - "ch.20.gatesc.tap": 4149537969, - "ch.20.gatesc.$solo": 3091478865, - "ch.20.eq": 3569540420, - "ch.20.eq.on": 1670374727, - "ch.20.eq.mdl": 1236633501, - "ch.20.eq.mix": 1044039303, - "ch.20.eq.$solo": 1038249, - "ch.20.eq.$solobd": 1497268570, - "ch.20.eq.1": 260747573, - "ch.20.eq.2": 2583992750, - "ch.20.eq.3": 1184077715, - "ch.20.eq.4": 823322218, - "ch.20.eq.5": 3057781855, - "ch.20.eq.6": 3426214357, - "ch.20.eq.7": 2067950158, - "ch.20.eq.8": 1168993588, - "ch.20.eq.9": 3940333322, - "ch.20.eq.10": 641873251, - "ch.20.eq.11": 4244386326, - "ch.20.eq.12": 2276924444, - "ch.20.eq.13": 1558593975, - "ch.20.eq.14": 1579520117, - "ch.20.eq.15": 2750385459, - "ch.20.eq.16": 971375305, - "ch.20.eq.17": 3232033980, - "ch.20.eq.18": 1925191511, - "ch.20.eq.19": 1485791528, - "ch.20.eq.20": 1674132642, - "ch.20.dyn": 2693936226, - "ch.20.dyn.on": 1621674526, - "ch.20.dyn.mdl": 3220318842, - "ch.20.dyn.mix": 681363394, - "ch.20.dyn.gain": 2318974186, - "ch.20.dyn.1": 3553007060, - "ch.20.dyn.2": 2758646753, - "ch.20.dyn.3": 3167674935, - "ch.20.dyn.4": 1696993373, - "ch.20.dyn.5": 231206846, - "ch.20.dyn.6": 2949801268, - "ch.20.dyn.7": 1478454081, - "ch.20.dyn.8": 1892069792, - "ch.20.dyn.9": 3106398141, - "ch.20.dynxo": 319844565, - "ch.20.dynxo.depth": 2029346200, - "ch.20.dynxo.type": 3094412974, - "ch.20.dynxo.f": 2237554027, - "ch.20.dynxo.$solo": 2265706709, - "ch.20.dynsc": 4053522952, - "ch.20.dynsc.type": 1224270262, - "ch.20.dynsc.f": 703169267, - "ch.20.dynsc.q": 2670770968, - "ch.20.dynsc.src": 1481795190, - "ch.20.dynsc.tap": 2773827637, - "ch.20.dynsc.$solo": 2582981896, - "ch.20.preins": 2604954232, - "ch.20.preins.on": 3936403315, - "ch.20.preins.ins": 1618631631, - "ch.20.preins.$stat": 3235015282, - "ch.20.main": 2908589106, - "ch.20.main.1": 4231147101, - "ch.20.main.1.on": 1177990813, - "ch.20.main.1.lvl": 3499002589, - "ch.20.main.1.pre": 84063255, - "ch.20.main.2": 646661543, - "ch.20.main.2.on": 1861479910, - "ch.20.main.2.lvl": 2140935358, - "ch.20.main.2.pre": 1260591204, - "ch.20.main.3": 1487511628, - "ch.20.main.3.on": 929896370, - "ch.20.main.3.lvl": 1598353682, - "ch.20.main.3.pre": 1362726360, - "ch.20.main.4": 2060646606, - "ch.20.main.4.on": 1958462105, - "ch.20.main.4.lvl": 3052641857, - "ch.20.main.4.pre": 2548753211, - "ch.20.send": 2757233753, - "ch.20.send.1": 3929271941, - "ch.20.send.1.on": 3467225309, - "ch.20.send.1.lvl": 1209107613, - "ch.20.send.1.pon": 1802560695, - "ch.20.send.1.ind": 3112978004, - "ch.20.send.1.mode": 1277772546, - "ch.20.send.1.plink": 3632409648, - "ch.20.send.1.pan": 2228563036, - "ch.20.send.2": 2523884280, - "ch.20.send.2.on": 4226858106, - "ch.20.send.2.lvl": 447275818, - "ch.20.send.2.pon": 959021392, - "ch.20.send.2.ind": 3878519275, - "ch.20.send.2.mode": 3878700732, - "ch.20.send.2.plink": 3781921946, - "ch.20.send.2.pan": 2995075747, - "ch.20.send.3": 2163372590, - "ch.20.send.3.on": 717222117, - "ch.20.send.3.lvl": 4291303989, - "ch.20.send.3.pon": 1572327247, - "ch.20.send.3.ind": 374125676, - "ch.20.send.3.mode": 8143978, - "ch.20.send.3.plink": 487800193, - "ch.20.send.3.pan": 3272831524, - "ch.20.send.4": 1450024580, - "ch.20.send.4.on": 2896827514, - "ch.20.send.4.lvl": 3591498538, - "ch.20.send.4.pon": 2037373264, - "ch.20.send.4.ind": 3213699563, - "ch.20.send.4.mode": 204506306, - "ch.20.send.4.plink": 3798700528, - "ch.20.send.4.pan": 4275409571, - "ch.20.send.5": 757524287, - "ch.20.send.5.on": 4092130599, - "ch.20.send.5.lvl": 582031719, - "ch.20.send.5.pon": 2261658285, - "ch.20.send.5.ind": 3728113406, - "ch.20.send.5.mode": 570005819, - "ch.20.send.5.plink": 1132069691, - "ch.20.send.5.pan": 2666033446, - "ch.20.send.6": 185123237, - "ch.20.send.6.on": 2624931158, - "ch.20.send.6.lvl": 3525144846, - "ch.20.send.6.pon": 2942588916, - "ch.20.send.6.ind": 2962794967, - "ch.20.send.6.mode": 3208061871, - "ch.20.send.6.plink": 3805584258, - "ch.20.send.6.pan": 1242089759, - "ch.20.send.7": 3851303832, - "ch.20.send.7.on": 3469526982, - "ch.20.send.7.lvl": 1542757406, - "ch.20.send.7.pon": 3146631140, - "ch.20.send.7.ind": 3094962759, - "ch.20.send.7.mode": 1161893784, - "ch.20.send.7.plink": 240308751, - "ch.20.send.7.pan": 531186831, - "ch.20.send.8": 3406251313, - "ch.20.send.8.on": 4004330843, - "ch.20.send.8.lvl": 4294252851, - "ch.20.send.8.pon": 562909177, - "ch.20.send.8.ind": 57651666, - "ch.20.send.8.mode": 808776323, - "ch.20.send.8.plink": 1741487790, - "ch.20.send.8.pan": 2620506394, - "ch.20.send.9": 71462692, - "ch.20.send.9.on": 518382483, - "ch.20.send.9.lvl": 4155377659, - "ch.20.send.9.pon": 1540602977, - "ch.20.send.9.ind": 153700058, - "ch.20.send.9.mode": 2175400273, - "ch.20.send.9.plink": 1217623688, - "ch.20.send.9.pan": 3556335506, - "ch.20.send.10": 3759548299, - "ch.20.send.10.on": 1168720615, - "ch.20.send.10.lvl": 3549883559, - "ch.20.send.10.pon": 2692356740, - "ch.20.send.10.ind": 1485559536, - "ch.20.send.10.mode": 1647437030, - "ch.20.send.10.plink": 4238055606, - "ch.20.send.10.pan": 3924801412, - "ch.20.send.11": 2385441110, - "ch.20.send.11.on": 771318626, - "ch.20.send.11.lvl": 4209431306, - "ch.20.send.11.pon": 2613781522, - "ch.20.send.11.ind": 3832325574, - "ch.20.send.11.mode": 1432692888, - "ch.20.send.11.plink": 4274964840, - "ch.20.send.11.pan": 3655511514, - "ch.20.send.12": 1647565012, - "ch.20.send.12.on": 84490596, - "ch.20.send.12.lvl": 3602442771, - "ch.20.send.12.pon": 2734987632, - "ch.20.send.12.ind": 2432605756, - "ch.20.send.12.mode": 1865235962, - "ch.20.send.12.plink": 3371291274, - "ch.20.send.12.pan": 3731497584, - "ch.20.send.13": 294462690, - "ch.20.send.13.on": 3940102628, - "ch.20.send.13.lvl": 3482638669, - "ch.20.send.13.pon": 1450465550, - "ch.20.send.13.ind": 1221499506, - "ch.20.send.13.mode": 853364076, - "ch.20.send.13.plink": 3428966700, - "ch.20.send.13.pan": 3856495942, - "ch.20.send.14": 3257434173, - "ch.20.send.14.on": 3521726611, - "ch.20.send.14.lvl": 3564482591, - "ch.20.send.14.pon": 2271719932, - "ch.20.send.14.ind": 2574739624, - "ch.20.send.14.mode": 1386096222, - "ch.20.send.14.plink": 3740824926, - "ch.20.send.14.pan": 1338868988, - "ch.20.send.15": 1568098184, - "ch.20.send.15.on": 2855910469, - "ch.20.send.15.lvl": 3485965929, - "ch.20.send.15.pon": 2392125770, - "ch.20.send.15.ind": 2514575806, - "ch.20.send.15.mode": 1778210288, - "ch.20.send.15.plink": 3455828912, - "ch.20.send.15.pan": 3393228594, - "ch.20.send.16": 225606347, - "ch.20.send.16.on": 2437496000, - "ch.20.send.16.lvl": 3868157579, - "ch.20.send.16.pon": 2493012520, - "ch.20.send.16.ind": 1305524756, - "ch.20.send.16.mode": 1878519122, - "ch.20.send.16.plink": 3847937746, - "ch.20.send.16.pan": 3556374952, - "ch.20.send.MX1": 1652572767, - "ch.20.send.MX1.on": 1252459216, - "ch.20.send.MX1.lvl": 3603867509, - "ch.20.send.MX1.pon": 3609067726, - "ch.20.send.MX1.ind": 497043032, - "ch.20.send.MX1.mode": 811185488, - "ch.20.send.MX1.plink": 3239115083, - "ch.20.send.MX1.pan": 3714178280, - "ch.20.send.MX2": 346700914, - "ch.20.send.MX2.on": 1760128720, - "ch.20.send.MX2.lvl": 2182636262, - "ch.20.send.MX2.pon": 1576845044, - "ch.20.send.MX2.ind": 1366801412, - "ch.20.send.MX2.mode": 3993323856, - "ch.20.send.MX2.plink": 1942376257, - "ch.20.send.MX2.pan": 1451438818, - "ch.20.send.MX3": 2575584473, - "ch.20.send.MX3.on": 3857476229, - "ch.20.send.MX3.lvl": 3882913884, - "ch.20.send.MX3.pon": 2800984080, - "ch.20.send.MX3.ind": 2529026026, - "ch.20.send.MX3.mode": 576282314, - "ch.20.send.MX3.plink": 2100237149, - "ch.20.send.MX3.pan": 2379820022, - "ch.20.send.MX4": 1071941918, - "ch.20.send.MX4.on": 3799176837, - "ch.20.send.MX4.lvl": 3129736244, - "ch.20.send.MX4.pon": 25504789, - "ch.20.send.MX4.ind": 3422063523, - "ch.20.send.MX4.mode": 2082464973, - "ch.20.send.MX4.plink": 734607184, - "ch.20.send.MX4.pan": 323461115, - "ch.20.send.MX5": 163486133, - "ch.20.send.MX5.on": 2982186255, - "ch.20.send.MX5.lvl": 744691626, - "ch.20.send.MX5.pon": 3453171816, - "ch.20.send.MX5.ind": 3258634153, - "ch.20.send.MX5.mode": 3732266433, - "ch.20.send.MX5.plink": 3079613397, - "ch.20.send.MX5.pan": 3343979598, - "ch.20.send.MX6": 3739784808, - "ch.20.send.MX6.on": 2090453263, - "ch.20.send.MX6.lvl": 287794055, - "ch.20.send.MX6.pon": 3988218983, - "ch.20.send.MX6.ind": 2166830517, - "ch.20.send.MX6.mode": 1674035698, - "ch.20.send.MX6.plink": 63696850, - "ch.20.send.MX6.pan": 4135422073, - "ch.20.send.MX7": 1779214111, - "ch.20.send.MX7.on": 1943791676, - "ch.20.send.MX7.lvl": 2686167792, - "ch.20.send.MX7.pon": 3255578946, - "ch.20.send.MX7.ind": 3839347094, - "ch.20.send.MX7.mode": 2250929790, - "ch.20.send.MX7.plink": 2554493183, - "ch.20.send.MX7.pan": 2730857812, - "ch.20.send.MX8": 389498345, - "ch.20.send.MX8.on": 555951164, - "ch.20.send.MX8.lvl": 3818178293, - "ch.20.send.MX8.pon": 2532634457, - "ch.20.send.MX8.ind": 4138450480, - "ch.20.send.MX8.mode": 4173879905, - "ch.20.send.MX8.plink": 3235520228, - "ch.20.send.MX8.pan": 3459091271, - "ch.20.tapwid": 565322359, - "ch.20.postins": 2587799650, - "ch.20.postins.on": 3948763549, - "ch.20.postins.mode": 3552856176, - "ch.20.postins.ins": 3044403859, - "ch.20.postins.w": 3178006314, - "ch.20.postins.$stat": 1530869265, - "ch.20.tags": 218933315, - "ch.20.$fdr": 3387953314, - "ch.20.$mute": 2964823572, - "ch.20.$muteovr": 3786747412, - "ch.21": 2352978211, - "ch.21.in": 4199634696, - "ch.21.in.set": 3521041189, - "ch.21.in.set.$mode": 3050187363, - "ch.21.in.set.srcauto": 2434104216, - "ch.21.in.set.altsrc": 67309680, - "ch.21.in.set.inv": 2212413295, - "ch.21.in.set.trim": 2290703447, - "ch.21.in.set.bal": 994625414, - "ch.21.in.set.$g": 3097150414, - "ch.21.in.set.$vph": 1929809466, - "ch.21.in.set.dlymode": 2559780551, - "ch.21.in.set.dly": 870135355, - "ch.21.in.set.dlyon": 3131739121, - "ch.21.in.conn": 3795265486, - "ch.21.in.conn.grp": 4138006923, - "ch.21.in.conn.in": 3766925547, - "ch.21.in.conn.altgrp": 3874813002, - "ch.21.in.conn.altin": 2524226744, - "ch.21.flt": 28070787, - "ch.21.flt.lc": 2162455146, - "ch.21.flt.lcf": 958946070, - "ch.21.flt.hc": 2645798668, - "ch.21.flt.hcf": 2122358276, - "ch.21.flt.tf": 369374677, - "ch.21.flt.mdl": 851665848, - "ch.21.flt.1": 706396589, - "ch.21.flt.2": 1563763440, - "ch.21.clink": 2622894537, - "ch.21.col": 3506576589, - "ch.21.name": 2052997130, - "ch.21.icon": 357098996, - "ch.21.led": 2153103832, - "ch.21.$col": 461961001, - "ch.21.$name": 262958075, - "ch.21.$icon": 1003987473, - "ch.21.mute": 1824435797, - "ch.21.fdr": 653620802, - "ch.21.pan": 3925338060, - "ch.21.wid": 1661414741, - "ch.21.$solo": 3771007998, - "ch.21.$sololed": 3042331510, - "ch.21.solosafe": 2130385000, - "ch.21.mon": 3369611357, - "ch.21.proc": 2709449999, - "ch.21.ptap": 267024296, - "ch.21.$presolo": 3524420483, - "ch.21.peq": 2076346761, - "ch.21.peq.on": 1595838016, - "ch.21.peq.1g": 1664995827, - "ch.21.peq.1f": 3217179657, - "ch.21.peq.1q": 3741940067, - "ch.21.peq.2g": 2030664479, - "ch.21.peq.2f": 3383821394, - "ch.21.peq.2q": 4246727119, - "ch.21.peq.3g": 367999979, - "ch.21.peq.3f": 1763059006, - "ch.21.peq.3q": 2289150619, - "ch.21.gate": 1925338323, - "ch.21.gate.on": 4163204467, - "ch.21.gate.mdl": 1540731831, - "ch.21.gate.1": 2307298189, - "ch.21.gate.2": 1677023811, - "ch.21.gate.3": 1458621169, - "ch.21.gate.4": 116626148, - "ch.21.gate.5": 3824086698, - "ch.21.gate.6": 199734621, - "ch.21.gate.7": 3696814384, - "ch.21.gate.8": 3646025217, - "ch.21.gate.9": 2303538356, - "ch.21.gatesc": 4088644681, - "ch.21.gatesc.type": 3477421351, - "ch.21.gatesc.f": 574401188, - "ch.21.gatesc.q": 413983041, - "ch.21.gatesc.src": 120929588, - "ch.21.gatesc.tap": 1437764555, - "ch.21.gatesc.$solo": 975326644, - "ch.21.eq": 1303555894, - "ch.21.eq.on": 2532069609, - "ch.21.eq.mdl": 1428596523, - "ch.21.eq.mix": 557166785, - "ch.21.eq.$solo": 2725930562, - "ch.21.eq.$solobd": 11253689, - "ch.21.eq.1": 3404148883, - "ch.21.eq.2": 3406573440, - "ch.21.eq.3": 2376278581, - "ch.21.eq.4": 1304946628, - "ch.21.eq.5": 2912889481, - "ch.21.eq.6": 3618177011, - "ch.21.eq.7": 2587713248, - "ch.21.eq.8": 979652378, - "ch.21.eq.9": 3124303652, - "ch.21.eq.10": 496937453, - "ch.21.eq.11": 3095641232, - "ch.21.eq.12": 3092946378, - "ch.21.eq.13": 1747935257, - "ch.21.eq.14": 2065081947, - "ch.21.eq.15": 2599098621, - "ch.21.eq.16": 1156902503, - "ch.21.eq.17": 2749091114, - "ch.21.eq.18": 1739623673, - "ch.21.eq.19": 663213502, - "ch.21.eq.20": 812399748, - "ch.21.dyn": 144416500, - "ch.21.dyn.on": 2371837632, - "ch.21.dyn.mdl": 2811374653, - "ch.21.dyn.mix": 608329968, - "ch.21.dyn.gain": 664465868, - "ch.21.dyn.1": 1472140354, - "ch.21.dyn.2": 163560703, - "ch.21.dyn.3": 4085075177, - "ch.21.dyn.4": 3285075331, - "ch.21.dyn.5": 2647748152, - "ch.21.dyn.6": 1004225442, - "ch.21.dyn.7": 404089951, - "ch.21.dyn.8": 4162419766, - "ch.21.dyn.9": 846492899, - "ch.21.dynxo": 2511944651, - "ch.21.dynxo.depth": 1501340810, - "ch.21.dynxo.type": 2902168512, - "ch.21.dynxo.f": 2027164197, - "ch.21.dynxo.$solo": 4267908867, - "ch.21.dynsc": 4153691886, - "ch.21.dynsc.type": 34305056, - "ch.21.dynsc.f": 599980677, - "ch.21.dynsc.q": 2937826694, - "ch.21.dynsc.src": 4079611672, - "ch.21.dynsc.tap": 2826972563, - "ch.21.dynsc.$solo": 4080499482, - "ch.21.preins": 3717306614, - "ch.21.preins.on": 683092673, - "ch.21.preins.ins": 855917709, - "ch.21.preins.$stat": 500341059, - "ch.21.main": 3639539172, - "ch.21.main.1": 3470006307, - "ch.21.main.1.on": 4169269017, - "ch.21.main.1.lvl": 2315900353, - "ch.21.main.1.pre": 3830798267, - "ch.21.main.2": 1199192441, - "ch.21.main.2.on": 1291840272, - "ch.21.main.2.lvl": 3717710272, - "ch.21.main.2.pre": 282160410, - "ch.21.main.3": 1923266170, - "ch.21.main.3.on": 2770287991, - "ch.21.main.3.lvl": 2239174999, - "ch.21.main.3.pre": 3119736861, - "ch.21.main.4": 2955439208, - "ch.21.main.4.on": 1557571330, - "ch.21.main.4.lvl": 967757890, - "ch.21.main.4.pre": 463973992, - "ch.21.send": 270051491, - "ch.21.send.1": 3393964287, - "ch.21.send.1.on": 3065085166, - "ch.21.send.1.lvl": 938039478, - "ch.21.send.1.pon": 1407619260, - "ch.21.send.1.ind": 3429757599, - "ch.21.send.1.mode": 1219751780, - "ch.21.send.1.plink": 3760172082, - "ch.21.send.1.pan": 1874919511, - "ch.21.send.2": 2389478034, - "ch.21.send.2.on": 1076918138, - "ch.21.send.2.lvl": 781753898, - "ch.21.send.2.pon": 216483408, - "ch.21.send.2.ind": 1393769707, - "ch.21.send.2.mode": 1959803407, - "ch.21.send.2.plink": 2303408691, - "ch.21.send.2.pan": 2790061475, - "ch.21.send.3": 4001579124, - "ch.21.send.3.on": 1801997035, - "ch.21.send.3.lvl": 2202018211, - "ch.21.send.3.pon": 2660385353, - "ch.21.send.3.ind": 2176510242, - "ch.21.send.3.mode": 391855033, - "ch.21.send.3.plink": 344370368, - "ch.21.send.3.pan": 444058154, - "ch.21.send.4": 2651413566, - "ch.21.send.4.on": 3003777334, - "ch.21.send.4.lvl": 3482462190, - "ch.21.send.4.pon": 1877851156, - "ch.21.send.4.ind": 3373713143, - "ch.21.send.4.mode": 1089139711, - "ch.21.send.4.plink": 1518931383, - "ch.21.send.4.pan": 1472823295, - "ch.21.send.5": 933876421, - "ch.21.send.5.on": 117520530, - "ch.21.send.5.lvl": 2075746162, - "ch.21.send.5.pon": 437806296, - "ch.21.send.5.ind": 439666067, - "ch.21.send.5.mode": 1405440345, - "ch.21.send.5.plink": 627984497, - "ch.21.send.5.pan": 2675750875, - "ch.21.send.6": 3653759839, - "ch.21.send.6.on": 1532332131, - "ch.21.send.6.lvl": 3480052139, - "ch.21.send.6.pon": 3999434673, - "ch.21.send.6.ind": 1173486314, - "ch.21.send.6.mode": 2559073505, - "ch.21.send.6.plink": 1721615427, - "ch.21.send.6.pan": 4068280802, - "ch.21.send.7": 2314385906, - "ch.21.send.7.on": 2639558277, - "ch.21.send.7.lvl": 2370609109, - "ch.21.send.7.pon": 3934472623, - "ch.21.send.7.ind": 2311534796, - "ch.21.send.7.mode": 4133000328, - "ch.21.send.7.plink": 139427129, - "ch.21.send.7.pan": 4045993924, - "ch.21.send.8": 3916657899, - "ch.21.send.8.on": 2351229653, - "ch.21.send.8.lvl": 2656879621, - "ch.21.send.8.pon": 3211994495, - "ch.21.send.8.ind": 2044822684, - "ch.21.send.8.mode": 1699115567, - "ch.21.send.8.plink": 1359571079, - "ch.21.send.8.pan": 659385236, - "ch.21.send.9": 3852045214, - "ch.21.send.9.on": 550373340, - "ch.21.send.9.lvl": 1307958292, - "ch.21.send.9.pon": 3985246190, - "ch.21.send.9.ind": 846897757, - "ch.21.send.9.mode": 1038419443, - "ch.21.send.9.plink": 105834076, - "ch.21.send.9.pan": 2242217093, - "ch.21.send.10": 3487978336, - "ch.21.send.10.on": 766570220, - "ch.21.send.10.lvl": 1597828868, - "ch.21.send.10.pon": 2669768948, - "ch.21.send.10.ind": 1292000207, - "ch.21.send.10.mode": 3920554456, - "ch.21.send.10.plink": 1644201907, - "ch.21.send.10.pan": 2337503560, - "ch.21.send.11": 2703705397, - "ch.21.send.11.on": 369178513, - "ch.21.send.11.lvl": 1854745150, - "ch.21.send.11.pon": 1985090322, - "ch.21.send.11.ind": 533179069, - "ch.21.send.11.mode": 3455041218, - "ch.21.send.11.plink": 3900783509, - "ch.21.send.11.pan": 2238453342, - "ch.21.send.12": 1999088919, - "ch.21.send.12.on": 4019260847, - "ch.21.send.12.lvl": 1398495760, - "ch.21.send.12.pon": 1684975040, - "ch.21.send.12.ind": 892855627, - "ch.21.send.12.mode": 2800921804, - "ch.21.send.12.plink": 796529207, - "ch.21.send.12.pan": 1563473220, - "ch.21.send.13": 19462313, - "ch.21.send.13.on": 3621848623, - "ch.21.send.13.lvl": 2201180618, - "ch.21.send.13.pon": 2598267886, - "ch.21.send.13.ind": 336059513, - "ch.21.send.13.mode": 1101178614, - "ch.21.send.13.plink": 1441428041, - "ch.21.send.13.pan": 2607014890, - "ch.21.send.14": 3530468366, - "ch.21.send.14.on": 3245405344, - "ch.21.send.14.lvl": 1606867628, - "ch.21.send.14.pon": 2734769372, - "ch.21.send.14.ind": 620975319, - "ch.21.send.14.mode": 3236821664, - "ch.21.send.14.plink": 1164987115, - "ch.21.send.14.pan": 1951684112, - "ch.21.send.15": 1216584515, - "ch.21.send.15.on": 2579589134, - "ch.21.send.15.lvl": 1760092358, - "ch.21.send.15.pon": 1932183482, - "ch.21.send.15.ind": 981296517, - "ch.21.send.15.mode": 3378178218, - "ch.21.send.15.plink": 1233723021, - "ch.21.send.15.pan": 631054630, - "ch.21.send.16": 579096224, - "ch.21.send.16.on": 2035355827, - "ch.21.send.16.lvl": 2079143800, - "ch.21.send.16.pon": 1779532840, - "ch.21.send.16.ind": 424386323, - "ch.21.send.16.mode": 2811259796, - "ch.21.send.16.plink": 1521860015, - "ch.21.send.16.pan": 2727575340, - "ch.21.send.MX1": 3329469122, - "ch.21.send.MX1.on": 330949682, - "ch.21.send.MX1.lvl": 866482868, - "ch.21.send.MX1.pon": 3065078767, - "ch.21.send.MX1.ind": 4163784872, - "ch.21.send.MX1.mode": 976780509, - "ch.21.send.MX1.plink": 2359160666, - "ch.21.send.MX1.pan": 2121500641, - "ch.21.send.MX2": 2146972687, - "ch.21.send.MX2.on": 1848821828, - "ch.21.send.MX2.lvl": 1946468025, - "ch.21.send.MX2.pon": 1737074145, - "ch.21.send.MX2.ind": 1854489524, - "ch.21.send.MX2.mode": 1700280512, - "ch.21.send.MX2.plink": 2437257548, - "ch.21.send.MX2.pan": 2912629231, - "ch.21.send.MX3": 1478154844, - "ch.21.send.MX3.on": 724901682, - "ch.21.send.MX3.lvl": 2156129605, - "ch.21.send.MX3.pon": 1002894485, - "ch.21.send.MX3.ind": 368430990, - "ch.21.send.MX3.mode": 2289709579, - "ch.21.send.MX3.plink": 1711015120, - "ch.21.send.MX3.pan": 1214998651, - "ch.21.send.MX4": 3553491867, - "ch.21.send.MX4.on": 1072018181, - "ch.21.send.MX4.lvl": 343245059, - "ch.21.send.MX4.pon": 1784309904, - "ch.21.send.MX4.ind": 3945423834, - "ch.21.send.MX4.mode": 1647062045, - "ch.21.send.MX4.plink": 2154356957, - "ch.21.send.MX4.pan": 2581066870, - "ch.21.send.MX5": 1978704440, - "ch.21.send.MX5.on": 1285749896, - "ch.21.send.MX5.lvl": 1418739871, - "ch.21.send.MX5.pon": 1985910949, - "ch.21.send.MX5.ind": 2476900345, - "ch.21.send.MX5.mode": 1439228593, - "ch.21.send.MX5.plink": 1280320800, - "ch.21.send.MX5.pan": 1042332811, - "ch.21.send.MX6": 1299523813, - "ch.21.send.MX6.on": 2806837411, - "ch.21.send.MX6.lvl": 3641746560, - "ch.21.send.MX6.pon": 3573811870, - "ch.21.send.MX6.ind": 2825590901, - "ch.21.send.MX6.mode": 709250702, - "ch.21.send.MX6.plink": 4280222491, - "ch.21.send.MX6.pan": 265021112, - "ch.21.send.MX7": 462892930, - "ch.21.send.MX7.on": 4274979094, - "ch.21.send.MX7.lvl": 3692199455, - "ch.21.send.MX7.pon": 3799993476, - "ch.21.send.MX7.ind": 1539671119, - "ch.21.send.MX7.mode": 3523094946, - "ch.21.send.MX7.plink": 3435355409, - "ch.21.send.MX7.pan": 2980933810, - "ch.21.send.MX8": 3585521772, - "ch.21.send.MX8.on": 3755615480, - "ch.21.send.MX8.lvl": 1818346010, - "ch.21.send.MX8.pon": 3479277188, - "ch.21.send.MX8.ind": 2955386741, - "ch.21.send.MX8.mode": 3446117812, - "ch.21.send.MX8.plink": 2773278481, - "ch.21.send.MX8.pan": 3038462642, - "ch.21.tapwid": 1021586845, - "ch.21.postins": 2060609806, - "ch.21.postins.on": 684628929, - "ch.21.postins.mode": 612479711, - "ch.21.postins.ins": 2025757061, - "ch.21.postins.w": 3621797814, - "ch.21.postins.$stat": 62577455, - "ch.21.tags": 4256124793, - "ch.21.$fdr": 3539864536, - "ch.21.$mute": 1974299262, - "ch.21.$muteovr": 3451719163, - "ch.22": 3435347969, - "ch.22.in": 3275813005, - "ch.22.in.set": 227667679, - "ch.22.in.set.$mode": 1652821289, - "ch.22.in.set.srcauto": 1257265354, - "ch.22.in.set.altsrc": 238511101, - "ch.22.in.set.inv": 571214274, - "ch.22.in.set.trim": 2640965573, - "ch.22.in.set.bal": 3131261155, - "ch.22.in.set.$g": 1028655387, - "ch.22.in.set.$vph": 894192200, - "ch.22.in.set.dlymode": 3058914149, - "ch.22.in.set.dly": 529454446, - "ch.22.in.set.dlyon": 2159966355, - "ch.22.in.conn": 296456343, - "ch.22.in.conn.grp": 1902336908, - "ch.22.in.conn.in": 1666732114, - "ch.22.in.conn.altgrp": 3219078514, - "ch.22.in.conn.altin": 3356176304, - "ch.22.flt": 306074257, - "ch.22.flt.lc": 2440442616, - "ch.22.flt.lcf": 2699109900, - "ch.22.flt.hc": 2703579438, - "ch.22.flt.hcf": 4096651246, - "ch.22.flt.tf": 259445447, - "ch.22.flt.mdl": 738602086, - "ch.22.flt.1": 480754623, - "ch.22.flt.2": 1831341314, - "ch.22.clink": 2643196695, - "ch.22.col": 3249545763, - "ch.22.name": 1281209436, - "ch.22.icon": 4196001046, - "ch.22.led": 1661505906, - "ch.22.$col": 907594235, - "ch.22.$name": 323152785, - "ch.22.$icon": 819353983, - "ch.22.mute": 1756510291, - "ch.22.fdr": 910333708, - "ch.22.pan": 3390772774, - "ch.22.wid": 1555823991, - "ch.22.$solo": 591580188, - "ch.22.$sololed": 2759042986, - "ch.22.solosafe": 1923419346, - "ch.22.mon": 8091391, - "ch.22.proc": 775015269, - "ch.22.ptap": 494212594, - "ch.22.$presolo": 2342332775, - "ch.22.peq": 1664280727, - "ch.22.peq.on": 2209230750, - "ch.22.peq.1g": 2077105253, - "ch.22.peq.1f": 4224885551, - "ch.22.peq.1q": 75089013, - "ch.22.peq.2g": 1786363033, - "ch.22.peq.2f": 3955278668, - "ch.22.peq.2q": 3096458409, - "ch.22.peq.3g": 2759785293, - "ch.22.peq.3f": 1954929120, - "ch.22.peq.3q": 780225373, - "ch.22.gate": 1689627465, - "ch.22.gate.on": 809580857, - "ch.22.gate.mdl": 394402629, - "ch.22.gate.1": 2207868903, - "ch.22.gate.2": 1441026217, - "ch.22.gate.3": 1212232875, - "ch.22.gate.4": 373300574, - "ch.22.gate.5": 3902587952, - "ch.22.gate.6": 100420855, - "ch.22.gate.7": 3628386730, - "ch.22.gate.8": 3410235323, - "ch.22.gate.9": 2560673902, - "ch.22.gatesc": 3821287075, - "ch.22.gatesc.type": 2200861614, - "ch.22.gatesc.f": 2912182378, - "ch.22.gatesc.q": 2882874119, - "ch.22.gatesc.src": 3196908410, - "ch.22.gatesc.tap": 2028093869, - "ch.22.gatesc.$solo": 542903077, - "ch.22.eq": 400726219, - "ch.22.eq.on": 2293959883, - "ch.22.eq.mdl": 1954632073, - "ch.22.eq.mix": 410255155, - "ch.22.eq.$solo": 605886558, - "ch.22.eq.$solobd": 2112940477, - "ch.22.eq.1": 3837798529, - "ch.22.eq.2": 3198034194, - "ch.22.eq.3": 1913073095, - "ch.22.eq.4": 1541402022, - "ch.22.eq.5": 2349388395, - "ch.22.eq.6": 4060018657, - "ch.22.eq.7": 2775339122, - "ch.22.eq.8": 524642104, - "ch.22.eq.9": 3211664646, - "ch.22.eq.10": 4228427263, - "ch.22.eq.11": 3609639586, - "ch.22.eq.12": 2974790504, - "ch.22.eq.13": 2172164091, - "ch.22.eq.14": 2224117753, - "ch.22.eq.15": 2126472335, - "ch.22.eq.16": 1689577989, - "ch.22.eq.17": 2513298120, - "ch.22.eq.18": 1207357787, - "ch.22.eq.19": 840927068, - "ch.22.eq.20": 1060992022, - "ch.22.dyn": 2633940006, - "ch.22.dyn.on": 1491595682, - "ch.22.dyn.mdl": 2581375707, - "ch.22.dyn.mix": 863460737, - "ch.22.dyn.gain": 1838169753, - "ch.22.dyn.1": 3695844720, - "ch.22.dyn.2": 2636330029, - "ch.22.dyn.3": 3203525131, - "ch.22.dyn.4": 1818941617, - "ch.22.dyn.5": 172541786, - "ch.22.dyn.6": 2889764048, - "ch.22.dyn.7": 1537303437, - "ch.22.dyn.8": 2021267812, - "ch.22.dyn.9": 3068725265, - "ch.22.dynxo": 439376041, - "ch.22.dynxo.depth": 3013308840, - "ch.22.dynxo.type": 1441170155, - "ch.22.dynxo.f": 411622494, - "ch.22.dynxo.$solo": 4105325092, - "ch.22.dynsc": 4025803212, - "ch.22.dynsc.type": 443434325, - "ch.22.dynsc.f": 1360249744, - "ch.22.dynsc.q": 3350924251, - "ch.22.dynsc.src": 120373293, - "ch.22.dynsc.tap": 3565143742, - "ch.22.dynsc.$solo": 1591373595, - "ch.22.preins": 2967804060, - "ch.22.preins.on": 1492068079, - "ch.22.preins.ins": 52152971, - "ch.22.preins.$stat": 648529778, - "ch.22.main": 3278488142, - "ch.22.main.1": 247772297, - "ch.22.main.1.on": 1684129539, - "ch.22.main.1.lvl": 1179250123, - "ch.22.main.1.pre": 2022916017, - "ch.22.main.2": 339655635, - "ch.22.main.2.on": 514297240, - "ch.22.main.2.lvl": 203403736, - "ch.22.main.2.pre": 1104907538, - "ch.22.main.3": 1773545984, - "ch.22.main.3.on": 3285678701, - "ch.22.main.3.lvl": 1390367629, - "ch.22.main.3.pre": 2276005991, - "ch.22.main.4": 2351985602, - "ch.22.main.4.on": 1805547677, - "ch.22.main.4.lvl": 1058446557, - "ch.22.main.4.pre": 617729559, - "ch.22.send": 2183701477, - "ch.22.send.1": 3986400809, - "ch.22.send.1.on": 4215155932, - "ch.22.send.1.lvl": 457572628, - "ch.22.send.1.pon": 1044144878, - "ch.22.send.1.ind": 3872048989, - "ch.22.send.1.mode": 2076476026, - "ch.22.send.1.plink": 2163173836, - "ch.22.send.1.pan": 1469491589, - "ch.22.send.2": 3139216348, - "ch.22.send.2.on": 1504127852, - "ch.22.send.2.lvl": 1025464068, - "ch.22.send.2.pon": 481497598, - "ch.22.send.2.ind": 1134827437, - "ch.22.send.2.mode": 3841617735, - "ch.22.send.2.plink": 3952149869, - "ch.22.send.2.pan": 3033444117, - "ch.22.send.3": 1888704922, - "ch.22.send.3.on": 1904950945, - "ch.22.send.3.lvl": 2436044793, - "ch.22.send.3.pon": 2924228915, - "ch.22.send.3.ind": 2243459704, - "ch.22.send.3.mode": 1293352256, - "ch.22.send.3.plink": 2462511271, - "ch.22.send.3.pan": 350732384, - "ch.22.send.4": 1880708912, - "ch.22.send.4.on": 3119349516, - "ch.22.send.4.lvl": 3367327780, - "ch.22.send.4.pon": 1825337566, - "ch.22.send.4.ind": 3425745421, - "ch.22.send.4.mode": 608616955, - "ch.22.send.4.plink": 1246580726, - "ch.22.send.4.pan": 1358037045, - "ch.22.send.5": 362393603, - "ch.22.send.5.on": 1100320220, - "ch.22.send.5.lvl": 1763553812, - "ch.22.send.5.pon": 73503214, - "ch.22.send.5.ind": 798552157, - "ch.22.send.5.mode": 2493841844, - "ch.22.send.5.plink": 672064398, - "ch.22.send.5.pan": 2353400453, - "ch.22.send.6": 129489545, - "ch.22.send.6.on": 1109508781, - "ch.22.send.6.lvl": 3230263629, - "ch.22.send.6.pon": 3740785351, - "ch.22.send.6.ind": 1427056484, - "ch.22.send.6.mode": 336045903, - "ch.22.send.6.plink": 330080576, - "ch.22.send.6.pan": 3830596012, - "ch.22.send.7": 4249015100, - "ch.22.send.7.on": 1735087923, - "ch.22.send.7.lvl": 2603821979, - "ch.22.send.7.pon": 4199495873, - "ch.22.send.7.ind": 2042097978, - "ch.22.send.7.mode": 1933958507, - "ch.22.send.7.plink": 987751499, - "ch.22.send.7.pan": 4268413746, - "ch.22.send.8": 3166932477, - "ch.22.send.8.on": 3788672579, - "ch.22.send.8.lvl": 214610571, - "ch.22.send.8.pon": 789033425, - "ch.22.send.8.ind": 4132403722, - "ch.22.send.8.mode": 2296114008, - "ch.22.send.8.plink": 2690777342, - "ch.22.send.8.pan": 1235356354, - "ch.22.send.9": 306808464, - "ch.22.send.9.on": 665938414, - "ch.22.send.9.lvl": 1192859062, - "ch.22.send.9.pon": 3932697532, - "ch.22.send.9.ind": 982831007, - "ch.22.send.9.mode": 3373510783, - "ch.22.send.9.plink": 2755641027, - "ch.22.send.9.pan": 2211310935, - "ch.22.send.10": 55880290, - "ch.22.send.10.on": 406700222, - "ch.22.send.10.lvl": 2294982764, - "ch.22.send.10.pon": 3483281820, - "ch.22.send.10.ind": 3957785080, - "ch.22.send.10.mode": 1900485118, - "ch.22.send.10.plink": 1899319294, - "ch.22.send.10.pan": 2608862412, - "ch.22.send.11": 2969202327, - "ch.22.send.11.on": 1361962531, - "ch.22.send.11.lvl": 2289724786, - "ch.22.send.11.pon": 3378170710, - "ch.22.send.11.ind": 881792898, - "ch.22.send.11.mode": 1592292084, - "ch.22.send.11.plink": 2178293780, - "ch.22.send.11.pan": 2183628742, - "ch.22.send.12": 2395494069, - "ch.22.send.12.on": 3617437197, - "ch.22.send.12.lvl": 2808638824, - "ch.22.send.12.pon": 3571718408, - "ch.22.send.12.ind": 503777892, - "ch.22.send.12.mode": 2247749298, - "ch.22.send.12.plink": 1700611954, - "ch.22.send.12.pan": 2356537784, - "ch.22.send.13": 3840845579, - "ch.22.send.13.on": 235778957, - "ch.22.send.13.lvl": 2636653246, - "ch.22.send.13.pon": 2381564418, - "ch.22.send.13.ind": 3598140990, - "ch.22.send.13.mode": 1141528712, - "ch.22.send.13.plink": 1559050728, - "ch.22.send.13.pan": 2550704642, - "ch.22.send.14": 2495742396, - "ch.22.send.14.on": 2759705906, - "ch.22.send.14.lvl": 2724066244, - "ch.22.send.14.pon": 3087805620, - "ch.22.send.14.ind": 3954964176, - "ch.22.send.14.mode": 2184107798, - "ch.22.send.14.plink": 1831671942, - "ch.22.send.14.pan": 2971200548, - "ch.22.send.15": 2329790545, - "ch.22.send.15.on": 3446552476, - "ch.22.send.15.lvl": 2552257194, - "ch.22.send.15.pon": 3239420558, - "ch.22.send.15.ind": 628895354, - "ch.22.send.15.mode": 2042331372, - "ch.22.send.15.plink": 1579411580, - "ch.22.send.15.pan": 2067810814, - "ch.22.send.16": 817232674, - "ch.22.send.16.on": 1843248385, - "ch.22.send.16.lvl": 3154890944, - "ch.22.send.16.pon": 3265835808, - "ch.22.send.16.ind": 3723159580, - "ch.22.send.16.mode": 2009709546, - "ch.22.send.16.plink": 2108759514, - "ch.22.send.16.pan": 2223644624, - "ch.22.send.MX1": 2794961292, - "ch.22.send.MX1.on": 3103298763, - "ch.22.send.MX1.lvl": 2855118335, - "ch.22.send.MX1.pon": 3920076659, - "ch.22.send.MX1.ind": 3941915505, - "ch.22.send.MX1.mode": 470205001, - "ch.22.send.MX1.plink": 328968910, - "ch.22.send.MX1.pan": 718652269, - "ch.22.send.MX2": 1989788985, - "ch.22.send.MX2.on": 4234684624, - "ch.22.send.MX2.lvl": 761674208, - "ch.22.send.MX2.pon": 79225166, - "ch.22.send.MX2.ind": 535815696, - "ch.22.send.MX2.mode": 2420080201, - "ch.22.send.MX2.plink": 450243787, - "ch.22.send.MX2.pan": 269784424, - "ch.22.send.MX3": 1950403474, - "ch.22.send.MX3.on": 3545812409, - "ch.22.send.MX3.lvl": 383236489, - "ch.22.send.MX3.pon": 3648368361, - "ch.22.send.MX3.ind": 3808240111, - "ch.22.send.MX3.mode": 3330207367, - "ch.22.send.MX3.plink": 2947374772, - "ch.22.send.MX3.pan": 3143256855, - "ch.22.send.MX4": 3374845101, - "ch.22.send.MX4.on": 3571474854, - "ch.22.send.MX4.lvl": 2586705330, - "ch.22.send.MX4.pon": 3417580259, - "ch.22.send.MX4.ind": 2551889830, - "ch.22.send.MX4.mode": 3141045948, - "ch.22.send.MX4.plink": 4123978430, - "ch.22.send.MX4.pan": 3900430109, - "ch.22.send.MX5": 2177831766, - "ch.22.send.MX5.on": 2925441932, - "ch.22.send.MX5.lvl": 2114946004, - "ch.22.send.MX5.pon": 2540029114, - "ch.22.send.MX5.ind": 4091161541, - "ch.22.send.MX5.mode": 1926665909, - "ch.22.send.MX5.plink": 2172451159, - "ch.22.send.MX5.pan": 2641105036, - "ch.22.send.MX6": 785455619, - "ch.22.send.MX6.on": 1874405260, - "ch.22.send.MX6.lvl": 2929911769, - "ch.22.send.MX6.pon": 3819583665, - "ch.22.send.MX6.ind": 3031713300, - "ch.22.send.MX6.mode": 2413081266, - "ch.22.send.MX6.plink": 3115877724, - "ch.22.send.MX6.pan": 2703727807, - "ch.22.send.MX7": 641212620, - "ch.22.send.MX7.on": 1723310178, - "ch.22.send.MX7.lvl": 3266396694, - "ch.22.send.MX7.pon": 2950242608, - "ch.22.send.MX7.ind": 3023176211, - "ch.22.send.MX7.mode": 2008143955, - "ch.22.send.MX7.plink": 3323320381, - "ch.22.send.MX7.pan": 3562781974, - "ch.22.send.MX8": 4057974562, - "ch.22.send.MX8.on": 871634047, - "ch.22.send.MX8.lvl": 2183759387, - "ch.22.send.MX8.pon": 2232443663, - "ch.22.send.MX8.ind": 1227973737, - "ch.22.send.MX8.mode": 1456489512, - "ch.22.send.MX8.plink": 1862163002, - "ch.22.send.MX8.pan": 2148790017, - "ch.22.tapwid": 3570958547, - "ch.22.postins": 3417511396, - "ch.22.postins.on": 2046947707, - "ch.22.postins.mode": 3244386721, - "ch.22.postins.ins": 397718083, - "ch.22.postins.w": 3508858684, - "ch.22.postins.$stat": 4071031786, - "ch.22.tags": 3139848871, - "ch.22.$fdr": 2685213414, - "ch.22.$mute": 2828906272, - "ch.22.$muteovr": 2678959301, - "ch.23": 1832773055, - "ch.23.in": 762370573, - "ch.23.in.set": 453104145, - "ch.23.in.set.$mode": 3291736059, - "ch.23.in.set.srcauto": 153100192, - "ch.23.in.set.altsrc": 2130772861, - "ch.23.in.set.inv": 610124584, - "ch.23.in.set.trim": 122273652, - "ch.23.in.set.bal": 2593945065, - "ch.23.in.set.$g": 1497485057, - "ch.23.in.set.$vph": 1810887346, - "ch.23.in.set.dlymode": 319789902, - "ch.23.in.set.dly": 321947508, - "ch.23.in.set.dlyon": 561037272, - "ch.23.in.conn": 4164534685, - "ch.23.in.conn.grp": 2214404676, - "ch.23.in.conn.in": 1250817832, - "ch.23.in.conn.altgrp": 2966097418, - "ch.23.in.conn.altin": 1620772600, - "ch.23.flt": 3748483359, - "ch.23.flt.lc": 1614134998, - "ch.23.flt.lcf": 3011057460, - "ch.23.flt.hc": 3194383744, - "ch.23.flt.hcf": 2272801574, - "ch.23.flt.tf": 1110697729, - "ch.23.flt.mdl": 445671344, - "ch.23.flt.1": 1311161233, - "ch.23.flt.2": 2347049380, - "ch.23.clink": 2417531381, - "ch.23.col": 3164608177, - "ch.23.name": 678433470, - "ch.23.icon": 808265832, - "ch.23.led": 2222357212, - "ch.23.$col": 868990565, - "ch.23.$name": 569290655, - "ch.23.$icon": 761898989, - "ch.23.mute": 1520768713, - "ch.23.fdr": 3469692838, - "ch.23.pan": 3677488, - "ch.23.wid": 1361823577, - "ch.23.$solo": 848946122, - "ch.23.$sololed": 1015828172, - "ch.23.solosafe": 2487605276, - "ch.23.mon": 3574286721, - "ch.23.proc": 1255482699, - "ch.23.ptap": 1063562604, - "ch.23.$presolo": 1676804901, - "ch.23.peq": 1554189053, - "ch.23.peq.on": 1983614244, - "ch.23.peq.1g": 1578876959, - "ch.23.peq.1f": 60773749, - "ch.23.peq.1q": 3840800815, - "ch.23.peq.2g": 1592654067, - "ch.23.peq.2f": 231671206, - "ch.23.peq.2q": 3342575683, - "ch.23.peq.3g": 2870017447, - "ch.23.peq.3f": 1530000986, - "ch.23.peq.3q": 995399927, - "ch.23.gate": 1194908663, - "ch.23.gate.on": 3981557296, - "ch.23.gate.mdl": 1863589430, - "ch.23.gate.1": 1773435561, - "ch.23.gate.2": 907989479, - "ch.23.gate.3": 2065740757, - "ch.23.gate.4": 925043176, - "ch.23.gate.5": 56960774, - "ch.23.gate.6": 3882319449, - "ch.23.gate.7": 3182018668, - "ch.23.gate.8": 4172002885, - "ch.23.gate.9": 3031285144, - "ch.23.gatesc": 3347688429, - "ch.23.gatesc.type": 3015934155, - "ch.23.gatesc.f": 614151967, - "ch.23.gatesc.q": 1305379234, - "ch.23.gatesc.src": 2341379287, - "ch.23.gatesc.tap": 1356077168, - "ch.23.gatesc.$solo": 881633728, - "ch.23.eq": 2161300043, - "ch.23.eq.on": 1722503389, - "ch.23.eq.mdl": 1225853975, - "ch.23.eq.mix": 1013204749, - "ch.23.eq.$solo": 3852210736, - "ch.23.eq.$solobd": 1819425787, - "ch.23.eq.1": 313558463, - "ch.23.eq.2": 2427313700, - "ch.23.eq.3": 1341577257, - "ch.23.eq.4": 770675168, - "ch.23.eq.5": 2962787285, - "ch.23.eq.6": 3331241567, - "ch.23.eq.7": 2203889348, - "ch.23.eq.8": 1096132798, - "ch.23.eq.9": 3825099392, - "ch.23.eq.10": 546900473, - "ch.23.eq.11": 85353132, - "ch.23.eq.12": 2204064902, - "ch.23.eq.13": 1443386957, - "ch.23.eq.14": 1610682367, - "ch.23.eq.15": 2739865801, - "ch.23.eq.16": 960836403, - "ch.23.eq.17": 3116248358, - "ch.23.eq.18": 1936140013, - "ch.23.eq.19": 1454366866, - "ch.23.eq.20": 1789776184, - "ch.23.dyn": 2577105272, - "ch.23.dyn.on": 1759456660, - "ch.23.dyn.mdl": 931289169, - "ch.23.dyn.mix": 4101671735, - "ch.23.dyn.gain": 426575897, - "ch.23.dyn.1": 3418159150, - "ch.23.dyn.2": 2243378203, - "ch.23.dyn.3": 3260885917, - "ch.23.dyn.4": 1247244151, - "ch.23.dyn.5": 743546436, - "ch.23.dyn.6": 3126577358, - "ch.23.dyn.7": 924191931, - "ch.23.dyn.8": 2131754042, - "ch.23.dyn.9": 2968928279, - "ch.23.dynxo": 203013295, - "ch.23.dynxo.depth": 2647435948, - "ch.23.dynxo.type": 2010456128, - "ch.23.dynxo.f": 3053068709, - "ch.23.dynxo.$solo": 4113773490, - "ch.23.dynsc": 3622452610, - "ch.23.dynsc.type": 3862733428, - "ch.23.dynsc.f": 3297888513, - "ch.23.dynsc.q": 300580458, - "ch.23.dynsc.src": 2110266772, - "ch.23.dynsc.tap": 3353803767, - "ch.23.dynsc.$solo": 3693870628, - "ch.23.preins": 2406207642, - "ch.23.preins.on": 3320543258, - "ch.23.preins.ins": 1176474710, - "ch.23.preins.$stat": 1833933714, - "ch.23.main": 3367807872, - "ch.23.main.1": 148015455, - "ch.23.main.1.on": 2132084185, - "ch.23.main.1.lvl": 1873620737, - "ch.23.main.1.pre": 3403938811, - "ch.23.main.2": 271594133, - "ch.23.main.2.on": 2469612317, - "ch.23.main.2.lvl": 396063837, - "ch.23.main.2.pre": 1281346199, - "ch.23.main.3": 1527026958, - "ch.23.main.3.on": 1353963355, - "ch.23.main.3.lvl": 838578995, - "ch.23.main.3.pre": 2374160217, - "ch.23.main.4": 2608987916, - "ch.23.main.4.on": 418725643, - "ch.23.main.4.lvl": 2445109955, - "ch.23.main.4.pre": 935401353, - "ch.23.send": 2378788047, - "ch.23.send.1": 4221302403, - "ch.23.send.1.on": 3718640412, - "ch.23.send.1.lvl": 1292750548, - "ch.23.send.1.pon": 1886525998, - "ch.23.send.1.ind": 3364392989, - "ch.23.send.1.mode": 2077008162, - "ch.23.send.1.plink": 2391206288, - "ch.23.send.1.pan": 1976989509, - "ch.23.send.2": 2902330742, - "ch.23.send.2.on": 2978407520, - "ch.23.send.2.lvl": 1025444016, - "ch.23.send.2.pon": 2662390730, - "ch.23.send.2.ind": 3331969041, - "ch.23.send.2.mode": 3501085101, - "ch.23.send.2.plink": 3460405868, - "ch.23.send.2.pan": 425091241, - "ch.23.send.3": 1874089696, - "ch.23.send.3.on": 3647699885, - "ch.23.send.3.lvl": 2837664333, - "ch.23.send.3.pon": 2360242631, - "ch.23.send.3.ind": 3969824868, - "ch.23.send.3.mode": 426210759, - "ch.23.send.3.plink": 5030890, - "ch.23.send.3.pan": 1913911980, - "ch.23.send.4": 1740003818, - "ch.23.send.4.on": 2437232301, - "ch.23.send.4.lvl": 1899826509, - "ch.23.send.4.pon": 3465688775, - "ch.23.send.4.ind": 2780984164, - "ch.23.send.4.mode": 445092387, - "ch.23.send.4.plink": 3475801267, - "ch.23.send.4.pan": 892188076, - "ch.23.send.5": 462965929, - "ch.23.send.5.on": 1229836060, - "ch.23.send.5.lvl": 624294612, - "ch.23.send.5.pon": 105631278, - "ch.23.send.5.ind": 1589326877, - "ch.23.send.5.mode": 2404154304, - "ch.23.send.5.plink": 2567370550, - "ch.23.send.5.pan": 36066117, - "ch.23.send.6": 4188152355, - "ch.23.send.6.on": 1220670551, - "ch.23.send.6.lvl": 3452554679, - "ch.23.send.6.pon": 733354909, - "ch.23.send.6.ind": 876908206, - "ch.23.send.6.mode": 4227556669, - "ch.23.send.6.plink": 219703900, - "ch.23.send.6.pan": 2769974806, - "ch.23.send.7": 4232330774, - "ch.23.send.7.on": 274929299, - "ch.23.send.7.lvl": 2590698235, - "ch.23.send.7.pon": 2098526561, - "ch.23.send.7.ind": 4226134490, - "ch.23.send.7.mode": 1548357305, - "ch.23.send.7.plink": 1660148497, - "ch.23.send.7.pan": 1652200082, - "ch.23.send.8": 3024519831, - "ch.23.send.8.on": 87181715, - "ch.23.send.8.lvl": 3919212027, - "ch.23.send.8.pon": 1206220385, - "ch.23.send.8.ind": 404042970, - "ch.23.send.8.mode": 1785335279, - "ch.23.send.8.plink": 743667027, - "ch.23.send.8.pan": 1632224658, - "ch.23.send.9": 363367050, - "ch.23.send.9.on": 3223399890, - "ch.23.send.9.lvl": 2928235058, - "ch.23.send.9.pon": 2364928536, - "ch.23.send.9.ind": 3540947027, - "ch.23.send.9.mode": 2427292175, - "ch.23.send.9.plink": 3422980613, - "ch.23.send.9.pan": 642886299, - "ch.23.send.10": 3843349666, - "ch.23.send.10.on": 916818942, - "ch.23.send.10.lvl": 1553090624, - "ch.23.send.10.pon": 8826852, - "ch.23.send.10.ind": 1289689175, - "ch.23.send.10.mode": 1006601926, - "ch.23.send.10.plink": 2762818707, - "ch.23.send.10.pan": 2382908591, - "ch.23.send.11": 2469570647, - "ch.23.send.11.on": 519411811, - "ch.23.send.11.lvl": 2082624234, - "ch.23.send.11.pon": 2479011890, - "ch.23.send.11.ind": 1376194309, - "ch.23.send.11.mode": 981502584, - "ch.23.send.11.plink": 1693332165, - "ch.23.send.11.pan": 1899981581, - "ch.23.send.12": 1563430389, - "ch.23.send.12.on": 4127551437, - "ch.23.send.12.lvl": 1982880204, - "ch.23.send.12.pon": 2599155600, - "ch.23.send.12.ind": 3961462659, - "ch.23.send.12.mode": 1390567578, - "ch.23.send.12.plink": 2537896935, - "ch.23.send.12.pan": 2329773771, - "ch.23.send.13": 42889163, - "ch.23.send.13.on": 3688201293, - "ch.23.send.13.lvl": 2387619926, - "ch.23.send.13.pon": 2824582958, - "ch.23.send.13.ind": 1139749153, - "ch.23.send.13.mode": 4262580236, - "ch.23.send.13.plink": 2931117321, - "ch.23.send.13.pan": 2450589113, - "ch.23.send.14": 3006019196, - "ch.23.send.14.on": 3269825266, - "ch.23.send.14.lvl": 1657134456, - "ch.23.send.14.pon": 2508460060, - "ch.23.send.14.ind": 1034168143, - "ch.23.send.14.mode": 1028040958, - "ch.23.send.14.plink": 2836703547, - "ch.23.send.14.pan": 1333860871, - "ch.23.send.15": 1819671825, - "ch.23.send.15.on": 2604008796, - "ch.23.send.15.lvl": 2124953154, - "ch.23.send.15.pon": 2502791018, - "ch.23.send.15.ind": 3850680381, - "ch.23.send.15.mode": 1442026384, - "ch.23.send.15.plink": 2673629101, - "ch.23.send.15.pan": 2025332261, - "ch.23.send.16": 309576674, - "ch.23.send.16.on": 2353361345, - "ch.23.send.16.lvl": 2004073444, - "ch.23.send.16.pon": 2896218888, - "ch.23.send.16.ind": 1070747835, - "ch.23.send.16.mode": 1398904818, - "ch.23.send.16.plink": 2479426255, - "ch.23.send.16.pan": 2317509091, - "ch.23.send.MX1": 1577269286, - "ch.23.send.MX1.on": 2427102481, - "ch.23.send.MX1.lvl": 3218737410, - "ch.23.send.MX1.pon": 3310986559, - "ch.23.send.MX1.ind": 3240683961, - "ch.23.send.MX1.mode": 2193810339, - "ch.23.send.MX1.plink": 2942915754, - "ch.23.send.MX1.pan": 3201712433, - "ch.23.send.MX2": 400029299, - "ch.23.send.MX2.on": 3286372575, - "ch.23.send.MX2.lvl": 1068156207, - "ch.23.send.MX2.pon": 1752900415, - "ch.23.send.MX2.ind": 206578383, - "ch.23.send.MX2.mode": 460834726, - "ch.23.send.MX2.plink": 1051978410, - "ch.23.send.MX2.pan": 1270142769, - "ch.23.send.MX3": 2673813048, - "ch.23.send.MX3.on": 4141033038, - "ch.23.send.MX3.lvl": 721389271, - "ch.23.send.MX3.pon": 2655731521, - "ch.23.send.MX3.ind": 3907618558, - "ch.23.send.MX3.mode": 1671872805, - "ch.23.send.MX3.plink": 3021435884, - "ch.23.send.MX3.pan": 2530315087, - "ch.23.send.MX4": 1015656167, - "ch.23.send.MX4.on": 3543286337, - "ch.23.send.MX4.lvl": 1530766053, - "ch.23.send.MX4.pon": 3786509135, - "ch.23.send.MX4.ind": 1404496281, - "ch.23.send.MX4.mode": 3337439025, - "ch.23.send.MX4.plink": 3416053754, - "ch.23.send.MX4.pan": 3010150209, - "ch.23.send.MX5": 235986524, - "ch.23.send.MX5.on": 65334016, - "ch.23.send.MX5.lvl": 4166987693, - "ch.23.send.MX5.pon": 368825772, - "ch.23.send.MX5.ind": 3194891656, - "ch.23.send.MX5.mode": 2407693330, - "ch.23.send.MX5.plink": 1074171449, - "ch.23.send.MX5.pan": 1312322010, - "ch.23.send.MX6": 3857031593, - "ch.23.send.MX6.on": 2122803003, - "ch.23.send.MX6.lvl": 3010136974, - "ch.23.send.MX6.pon": 3453010348, - "ch.23.send.MX6.ind": 3717254878, - "ch.23.send.MX6.mode": 632643579, - "ch.23.send.MX6.plink": 2747175481, - "ch.23.send.MX6.pan": 3075745242, - "ch.23.send.MX7": 1667420390, - "ch.23.send.MX7.on": 2378798138, - "ch.23.send.MX7.lvl": 527762121, - "ch.23.send.MX7.pon": 4149399997, - "ch.23.send.MX7.ind": 1045062391, - "ch.23.send.MX7.mode": 1929714644, - "ch.23.send.MX7.plink": 554689016, - "ch.23.send.MX7.pan": 231667075, - "ch.23.send.MX8": 479655080, - "ch.23.send.MX8.on": 133271670, - "ch.23.send.MX8.lvl": 1209343684, - "ch.23.send.MX8.pon": 1282035574, - "ch.23.send.MX8.ind": 150545473, - "ch.23.send.MX8.mode": 1000079264, - "ch.23.send.MX8.plink": 913874931, - "ch.23.send.MX8.pan": 1214776208, - "ch.23.tapwid": 781428217, - "ch.23.postins": 1650912818, - "ch.23.postins.on": 2974357165, - "ch.23.postins.mode": 2911233903, - "ch.23.postins.ins": 1869875857, - "ch.23.postins.w": 3745039610, - "ch.23.postins.$stat": 3255407132, - "ch.23.tags": 13309917, - "ch.23.$fdr": 3508336156, - "ch.23.$mute": 1782187402, - "ch.23.$muteovr": 2314051841, - "ch.24": 3161965664, - "ch.24.in": 107039743, - "ch.24.in.set": 3571778507, - "ch.24.in.set.$mode": 2411177098, - "ch.24.in.set.srcauto": 3042880939, - "ch.24.in.set.altsrc": 2907800979, - "ch.24.in.set.inv": 3589537132, - "ch.24.in.set.trim": 4066849422, - "ch.24.in.set.bal": 4239821525, - "ch.24.in.set.$g": 2788689333, - "ch.24.in.set.$vph": 2011820199, - "ch.24.in.set.dlymode": 3653767124, - "ch.24.in.set.dly": 27425088, - "ch.24.in.set.dlyon": 3427552066, - "ch.24.in.conn": 937031181, - "ch.24.in.conn.grp": 3549378235, - "ch.24.in.conn.in": 898367192, - "ch.24.in.conn.altgrp": 3860409674, - "ch.24.in.conn.altin": 2881803192, - "ch.24.flt": 153733853, - "ch.24.flt.lc": 2288122548, - "ch.24.flt.lcf": 235640422, - "ch.24.flt.hc": 2855346514, - "ch.24.flt.hcf": 2368433012, - "ch.24.flt.tf": 244034179, - "ch.24.flt.mdl": 1676717256, - "ch.24.flt.1": 580072307, - "ch.24.flt.2": 1689425254, - "ch.24.clink": 2927384995, - "ch.24.col": 2877238343, - "ch.24.name": 557953920, - "ch.24.icon": 138452122, - "ch.24.led": 2028750966, - "ch.24.$col": 601836999, - "ch.24.$name": 4011533621, - "ch.24.$icon": 1972247963, - "ch.24.mute": 2118524791, - "ch.24.fdr": 1017043872, - "ch.24.pan": 3569902250, - "ch.24.wid": 622947147, - "ch.24.$solo": 3845559224, - "ch.24.$sololed": 3683552835, - "ch.24.solosafe": 2894552923, - "ch.24.mon": 3091349171, - "ch.24.proc": 2844058529, - "ch.24.ptap": 933531062, - "ch.24.$presolo": 1327148179, - "ch.24.peq": 1618026203, - "ch.24.peq.on": 1920595666, - "ch.24.peq.1g": 1515738705, - "ch.24.peq.1f": 123627867, - "ch.24.peq.1q": 3736046561, - "ch.24.peq.2g": 1487897901, - "ch.24.peq.2f": 127204288, - "ch.24.peq.2q": 3404775037, - "ch.24.peq.3g": 2975101305, - "ch.24.peq.3f": 1593466924, - "ch.24.peq.3q": 891257545, - "ch.24.gate": 707532525, - "ch.24.gate.on": 560049622, - "ch.24.gate.mdl": 1490317737, - "ch.24.gate.1": 1925698435, - "ch.24.gate.2": 378240205, - "ch.24.gate.3": 2259946383, - "ch.24.gate.4": 1412412610, - "ch.24.gate.5": 4199754796, - "ch.24.gate.6": 4034491763, - "ch.24.gate.7": 2652348102, - "ch.24.gate.8": 60662655, - "ch.24.gate.9": 3519093938, - "ch.24.gatesc": 2870808263, - "ch.24.gatesc.type": 412986873, - "ch.24.gatesc.f": 1725105125, - "ch.24.gatesc.q": 110546568, - "ch.24.gatesc.src": 1170645149, - "ch.24.gatesc.tap": 161735978, - "ch.24.gatesc.$solo": 359077919, - "ch.24.eq": 1216527296, - "ch.24.eq.on": 2661420463, - "ch.24.eq.mdl": 1630038245, - "ch.24.eq.mix": 776795119, - "ch.24.eq.$solo": 3178802679, - "ch.24.eq.$solobd": 2528205964, - "ch.24.eq.1": 3533501085, - "ch.24.eq.2": 3522654534, - "ch.24.eq.3": 2258724171, - "ch.24.eq.4": 1174774962, - "ch.24.eq.5": 2695882919, - "ch.24.eq.6": 3735405373, - "ch.24.eq.7": 2471469542, - "ch.24.eq.8": 849316844, - "ch.24.eq.9": 2907297106, - "ch.24.eq.10": 279932187, - "ch.24.eq.11": 3305766862, - "ch.24.eq.12": 3299467188, - "ch.24.eq.13": 1867784991, - "ch.24.eq.14": 1857577773, - "ch.24.eq.15": 2472695275, - "ch.24.eq.16": 1364734049, - "ch.24.eq.17": 2880573524, - "ch.24.eq.18": 1532119487, - "ch.24.eq.19": 536646592, - "ch.24.eq.20": 693534298, - "ch.24.dyn": 237971226, - "ch.24.dyn.on": 2467026950, - "ch.24.dyn.mdl": 4261900039, - "ch.24.dyn.mix": 256253978, - "ch.24.dyn.gain": 1144502659, - "ch.24.dyn.1": 1378585676, - "ch.24.dyn.2": 235489849, - "ch.24.dyn.3": 4010529711, - "ch.24.dyn.4": 3213474197, - "ch.24.dyn.5": 2741297750, - "ch.24.dyn.6": 1097776364, - "ch.24.dyn.7": 310540377, - "ch.24.dyn.8": 4066575448, - "ch.24.dyn.9": 918742965, - "ch.24.dynxo": 2437726877, - "ch.24.dynxo.depth": 99090989, - "ch.24.dynxo.type": 2725894738, - "ch.24.dynxo.f": 3288978407, - "ch.24.dynxo.$solo": 1862414193, - "ch.24.dynsc": 4225288176, - "ch.24.dynsc.type": 4125763118, - "ch.24.dynsc.f": 3437504491, - "ch.24.dynsc.q": 1279227424, - "ch.24.dynsc.src": 2873994094, - "ch.24.dynsc.tap": 4167296221, - "ch.24.dynsc.$solo": 3724288006, - "ch.24.preins": 3501994016, - "ch.24.preins.on": 293855944, - "ch.24.preins.ins": 2312341108, - "ch.24.preins.$stat": 2313964115, - "ch.24.main": 3917904362, - "ch.24.main.1": 3903364005, - "ch.24.main.1.on": 3400903090, - "ch.24.main.1.lvl": 3084747538, - "ch.24.main.1.pre": 367110104, - "ch.24.main.2": 979481359, - "ch.24.main.2.on": 1131608831, - "ch.24.main.2.lvl": 1731929775, - "ch.24.main.2.pre": 1564613365, - "ch.24.main.3": 2496869012, - "ch.24.main.3.on": 3006545241, - "ch.24.main.3.lvl": 2006737281, - "ch.24.main.3.pre": 1818238331, - "ch.24.main.4": 3075205990, - "ch.24.main.4.on": 3426543886, - "ch.24.main.4.lvl": 1247088598, - "ch.24.main.4.pre": 4027282172, - "ch.24.send": 2595626737, - "ch.24.send.1": 3747552317, - "ch.24.send.1.on": 453691908, - "ch.24.send.1.lvl": 3885146284, - "ch.24.send.1.pon": 133153670, - "ch.24.send.1.ind": 823606901, - "ch.24.send.1.mode": 2063826175, - "ch.24.send.1.plink": 3167504567, - "ch.24.send.1.pan": 1875527757, - "ch.24.send.2": 2706300304, - "ch.24.send.2.on": 3826359758, - "ch.24.send.2.lvl": 515491606, - "ch.24.send.2.pon": 2160632412, - "ch.24.send.2.ind": 4164192191, - "ch.24.send.2.mode": 1398275851, - "ch.24.send.2.plink": 3538138199, - "ch.24.send.2.pan": 2272140983, - "ch.24.send.3": 2337350854, - "ch.24.send.3.on": 3930125705, - "ch.24.send.3.lvl": 2893619537, - "ch.24.send.3.pon": 1297532939, - "ch.24.send.3.ind": 3623074288, - "ch.24.send.3.mode": 2784079057, - "ch.24.send.3.plink": 4101239129, - "ch.24.send.3.pan": 1228699848, - "ch.24.send.4": 1621462076, - "ch.24.send.4.on": 2701849783, - "ch.24.send.4.lvl": 3448950295, - "ch.24.send.4.pon": 1844378429, - "ch.24.send.4.ind": 3071815758, - "ch.24.send.4.mode": 2027918015, - "ch.24.send.4.plink": 1414289527, - "ch.24.send.4.pan": 164263542, - "ch.24.send.5": 585594071, - "ch.24.send.5.on": 206171055, - "ch.24.send.5.lvl": 511842175, - "ch.24.send.5.pon": 1062023685, - "ch.24.send.5.ind": 4194138582, - "ch.24.send.5.mode": 1026581534, - "ch.24.send.5.plink": 2825615508, - "ch.24.send.5.pan": 2805034862, - "ch.24.send.6": 347427933, - "ch.24.send.6.on": 938888525, - "ch.24.send.6.lvl": 1255043437, - "ch.24.send.6.pon": 3942863527, - "ch.24.send.6.ind": 1314107588, - "ch.24.send.6.mode": 2087916117, - "ch.24.send.6.plink": 3365429386, - "ch.24.send.6.pan": 3537750476, - "ch.24.send.7": 4004843056, - "ch.24.send.7.on": 1380829965, - "ch.24.send.7.lvl": 475373997, - "ch.24.send.7.pon": 3207381607, - "ch.24.send.7.ind": 1708157188, - "ch.24.send.7.mode": 3882583831, - "ch.24.send.7.plink": 3833609562, - "ch.24.send.7.pan": 3096594956, - "ch.24.send.8": 3557249769, - "ch.24.send.8.on": 4142286203, - "ch.24.send.8.lvl": 194910675, - "ch.24.send.8.pon": 708069977, - "ch.24.send.8.ind": 170047666, - "ch.24.send.8.mode": 2110847863, - "ch.24.send.8.plink": 1423472255, - "ch.24.send.8.pan": 2408497594, - "ch.24.send.9": 4216044764, - "ch.24.send.9.on": 4282864526, - "ch.24.send.9.lvl": 729755478, - "ch.24.send.9.pon": 1280522780, - "ch.24.send.9.ind": 3976458239, - "ch.24.send.9.mode": 4021276347, - "ch.24.send.9.plink": 2586581625, - "ch.24.send.9.pan": 1412355831, - "ch.24.send.10": 3482127194, - "ch.24.send.10.on": 772421110, - "ch.24.send.10.lvl": 3101145857, - "ch.24.send.10.pon": 32893553, - "ch.24.send.10.ind": 2204270398, - "ch.24.send.10.mode": 3436193739, - "ch.24.send.10.plink": 2267031507, - "ch.24.send.10.pan": 3166124369, - "ch.24.send.11": 2771253615, - "ch.24.send.11.on": 117075835, - "ch.24.send.11.lvl": 2949067159, - "ch.24.send.11.pon": 891162363, - "ch.24.send.11.ind": 4278726816, - "ch.24.send.11.mode": 2317179985, - "ch.24.send.11.plink": 2544720633, - "ch.24.send.11.pan": 3990663099, - "ch.24.send.12": 3263225853, - "ch.24.send.12.on": 4025106885, - "ch.24.send.12.lvl": 3027604877, - "ch.24.send.12.pon": 829103933, - "ch.24.send.12.ind": 1862264906, - "ch.24.send.12.mode": 1932581599, - "ch.24.send.12.plink": 1958919767, - "ch.24.send.12.pan": 3459025949, - "ch.24.send.13": 2636268995, - "ch.24.send.13.on": 3285865285, - "ch.24.send.13.lvl": 3210825299, - "ch.24.send.13.pon": 100316071, - "ch.24.send.13.ind": 3010469148, - "ch.24.send.13.mode": 1182852133, - "ch.24.send.13.plink": 2152887773, - "ch.24.send.13.pan": 3024097127, - "ch.24.send.14": 1920296212, - "ch.24.send.14.on": 1556757706, - "ch.24.send.14.lvl": 3065584297, - "ch.24.send.14.pon": 3322227289, - "ch.24.send.14.ind": 4162506406, - "ch.24.send.14.mode": 2384709299, - "ch.24.send.14.plink": 2255754475, - "ch.24.send.14.pan": 684720153, - "ch.24.send.15": 1294619433, - "ch.24.send.15.on": 2243604196, - "ch.24.send.15.lvl": 3672593503, - "ch.24.send.15.pon": 1146258851, - "ch.24.send.15.ind": 1793435176, - "ch.24.send.15.mode": 1970317625, - "ch.24.send.15.plink": 4207472273, - "ch.24.send.15.pan": 2910137987, - "ch.24.send.16": 578656922, - "ch.24.send.16.on": 430590057, - "ch.24.send.16.lvl": 3201471349, - "ch.24.send.16.pon": 753249541, - "ch.24.send.16.ind": 2857589458, - "ch.24.send.16.mode": 2498677127, - "ch.24.send.16.plink": 2115369935, - "ch.24.send.16.pan": 3354340037, - "ch.24.send.MX1": 2094347348, - "ch.24.send.MX1.on": 2958780118, - "ch.24.send.MX1.lvl": 4249148951, - "ch.24.send.MX1.pon": 167148907, - "ch.24.send.MX1.ind": 1071382692, - "ch.24.send.MX1.mode": 1372572065, - "ch.24.send.MX1.plink": 532186726, - "ch.24.send.MX1.pan": 713486725, - "ch.24.send.MX2": 1079462561, - "ch.24.send.MX2.on": 321190584, - "ch.24.send.MX2.lvl": 3479511581, - "ch.24.send.MX2.pon": 977271654, - "ch.24.send.MX2.ind": 1352450232, - "ch.24.send.MX2.mode": 3435410852, - "ch.24.send.MX2.plink": 268649571, - "ch.24.send.MX2.pan": 4198326144, - "ch.24.send.MX3": 1081692682, - "ch.24.send.MX3.on": 3460306142, - "ch.24.send.MX3.lvl": 4189227489, - "ch.24.send.MX3.pon": 2847461457, - "ch.24.send.MX3.ind": 861183159, - "ch.24.send.MX3.mode": 3092892271, - "ch.24.send.MX3.plink": 3551167420, - "ch.24.send.MX3.pan": 3144096863, - "ch.24.send.MX4": 4285498133, - "ch.24.send.MX4.on": 2356107473, - "ch.24.send.MX4.lvl": 461557231, - "ch.24.send.MX4.pon": 3172287532, - "ch.24.send.MX4.ind": 2716484958, - "ch.24.send.MX4.mode": 430418017, - "ch.24.send.MX4.plink": 2471366585, - "ch.24.send.MX4.pan": 2814027866, - "ch.24.send.MX5": 1267829374, - "ch.24.send.MX5.on": 2542008468, - "ch.24.send.MX5.lvl": 2259423163, - "ch.24.send.MX5.pon": 3046681241, - "ch.24.send.MX5.ind": 3976442237, - "ch.24.send.MX5.mode": 2230130093, - "ch.24.send.MX5.plink": 3411392932, - "ch.24.send.MX5.pan": 3739819655, - "ch.24.send.MX6": 4212368843, - "ch.24.send.MX6.on": 332012639, - "ch.24.send.MX6.lvl": 2821067681, - "ch.24.send.MX6.pon": 2230656642, - "ch.24.send.MX6.ind": 1591561585, - "ch.24.send.MX6.mode": 1895944618, - "ch.24.send.MX6.plink": 1863161279, - "ch.24.send.MX6.pan": 1597811348, - "ch.24.send.MX7": 4193627412, - "ch.24.send.MX7.on": 907573066, - "ch.24.send.MX7.lvl": 2114595379, - "ch.24.send.MX7.pon": 2592997319, - "ch.24.send.MX7.ind": 2778118475, - "ch.24.send.MX7.mode": 547010718, - "ch.24.send.MX7.plink": 2965419122, - "ch.24.send.MX7.pan": 3393604569, - "ch.24.send.MX8": 3189260410, - "ch.24.send.MX8.on": 1982786460, - "ch.24.send.MX8.lvl": 2040184334, - "ch.24.send.MX8.pon": 1423408584, - "ch.24.send.MX8.ind": 2485940492, - "ch.24.send.MX8.mode": 1531913360, - "ch.24.send.MX8.plink": 722170485, - "ch.24.send.MX8.pan": 268261806, - "ch.24.tapwid": 629485535, - "ch.24.postins": 255172407, - "ch.24.postins.on": 1652188584, - "ch.24.postins.mode": 2401833745, - "ch.24.postins.ins": 542470131, - "ch.24.postins.w": 883389951, - "ch.24.postins.$stat": 1492127625, - "ch.24.tags": 322418171, - "ch.24.$fdr": 3051936090, - "ch.24.$mute": 3056100988, - "ch.24.$muteovr": 2333484622, - "ch.25": 3169317973, - "ch.25.in": 1846600836, - "ch.25.in.set": 437652189, - "ch.25.in.set.$mode": 1961774905, - "ch.25.in.set.srcauto": 1508793594, - "ch.25.in.set.altsrc": 3463513709, - "ch.25.in.set.inv": 3146597362, - "ch.25.in.set.trim": 2535973973, - "ch.25.in.set.bal": 555873971, - "ch.25.in.set.$g": 2345750123, - "ch.25.in.set.$vph": 3694306008, - "ch.25.in.set.dlymode": 3409807922, - "ch.25.in.set.dly": 2786068510, - "ch.25.in.set.dlyon": 3649053316, - "ch.25.in.conn": 3039322087, - "ch.25.in.conn.grp": 1604935452, - "ch.25.in.conn.in": 1993839842, - "ch.25.in.conn.altgrp": 1179222608, - "ch.25.in.conn.altin": 1439225346, - "ch.25.flt": 4056279899, - "ch.25.flt.lc": 1895660610, - "ch.25.flt.lcf": 3707871489, - "ch.25.flt.hc": 3586179012, - "ch.25.flt.hcf": 2483911490, - "ch.25.flt.tf": 802588893, - "ch.25.flt.mdl": 1491521410, - "ch.25.flt.1": 1024228613, - "ch.25.flt.2": 1957645256, - "ch.25.clink": 2769838481, - "ch.25.col": 3458920293, - "ch.25.name": 1376730194, - "ch.25.icon": 441499052, - "ch.25.led": 219853936, - "ch.25.$col": 546970225, - "ch.25.$name": 445212499, - "ch.25.$icon": 1033945209, - "ch.25.mute": 1882620013, - "ch.25.fdr": 539769178, - "ch.25.pan": 4177493604, - "ch.25.wid": 1501691597, - "ch.25.$solo": 667298646, - "ch.25.$sololed": 463334053, - "ch.25.solosafe": 4115813317, - "ch.25.mon": 81776885, - "ch.25.proc": 901134423, - "ch.25.ptap": 856794000, - "ch.25.$presolo": 1110392089, - "ch.25.peq": 1977902625, - "ch.25.peq.on": 1694937592, - "ch.25.peq.1g": 1743165963, - "ch.25.peq.1f": 3127581601, - "ch.25.peq.1q": 3810606363, - "ch.25.peq.2g": 2099332103, - "ch.25.peq.2f": 3483582650, - "ch.25.peq.2q": 4166955543, - "ch.25.peq.3g": 300315603, - "ch.25.peq.3f": 1684561030, - "ch.25.peq.3q": 2368916963, - "ch.25.gate": 1981523339, - "ch.25.gate.on": 274887388, - "ch.25.gate.mdl": 2383983839, - "ch.25.gate.1": 2329403093, - "ch.25.gate.2": 1652293547, - "ch.25.gate.3": 1510221225, - "ch.25.gate.4": 159401884, - "ch.25.gate.5": 3775104242, - "ch.25.gate.6": 143197605, - "ch.25.gate.7": 3758592920, - "ch.25.gate.8": 3616361913, - "ch.25.gate.9": 2266013292, - "ch.25.gatesc": 4113378705, - "ch.25.gatesc.type": 1792857660, - "ch.25.gatesc.f": 1354739387, - "ch.25.gatesc.q": 438953310, - "ch.25.gatesc.src": 1473001939, - "ch.25.gatesc.tap": 489000268, - "ch.25.gatesc.$solo": 401216346, - "ch.25.eq": 3245520786, - "ch.25.eq.on": 2790463953, - "ch.25.eq.mdl": 1506071827, - "ch.25.eq.mix": 647790121, - "ch.25.eq.$solo": 1736404859, - "ch.25.eq.$solobd": 2376505560, - "ch.25.eq.1": 3662544379, - "ch.25.eq.2": 3484051256, - "ch.25.eq.3": 2298761037, - "ch.25.eq.4": 1046878924, - "ch.25.eq.5": 2657112785, - "ch.25.eq.6": 3695324507, - "ch.25.eq.7": 2510239384, - "ch.25.eq.8": 721625362, - "ch.25.eq.9": 2868570668, - "ch.25.eq.10": 241205477, - "ch.25.eq.11": 3351046728, - "ch.25.eq.12": 3170424002, - "ch.25.eq.13": 1827704161, - "ch.25.eq.14": 1985271891, - "ch.25.eq.15": 2343649685, - "ch.25.eq.16": 1237040159, - "ch.25.eq.17": 2836767778, - "ch.25.eq.18": 1659854657, - "ch.25.eq.19": 407480246, - "ch.25.eq.20": 732301884, - "ch.25.dyn": 3433957292, - "ch.25.dyn.on": 686356008, - "ch.25.dyn.mdl": 362763085, - "ch.25.dyn.mix": 3198872630, - "ch.25.dyn.gain": 539913304, - "ch.25.dyn.1": 3142222330, - "ch.25.dyn.2": 1841837207, - "ch.25.dyn.3": 2404136321, - "ch.25.dyn.4": 2272933947, - "ch.25.dyn.5": 972543696, - "ch.25.dyn.6": 2012107098, - "ch.25.dyn.7": 2079458295, - "ch.25.dyn.8": 2490369262, - "ch.25.dyn.9": 2526283675, - "ch.25.dynxo": 4186981395, - "ch.25.dynxo.depth": 3470297700, - "ch.25.dynxo.type": 822662726, - "ch.25.dynxo.f": 299554723, - "ch.25.dynxo.$solo": 2510502947, - "ch.25.dynsc": 3136636470, - "ch.25.dynsc.type": 1544289694, - "ch.25.dynsc.f": 2405572411, - "ch.25.dynsc.q": 2249906224, - "ch.25.dynsc.src": 1202223294, - "ch.25.dynsc.tap": 2482479661, - "ch.25.dynsc.$solo": 2720413080, - "ch.25.preins": 2757724510, - "ch.25.preins.on": 1595269028, - "ch.25.preins.ins": 3913614176, - "ch.25.preins.$stat": 2473850055, - "ch.25.main": 3126256028, - "ch.25.main.1": 347664267, - "ch.25.main.1.on": 2940243272, - "ch.25.main.1.lvl": 3882398056, - "ch.25.main.1.pre": 3446967618, - "ch.25.main.2": 366078145, - "ch.25.main.2.on": 180276729, - "ch.25.main.2.lvl": 2348216865, - "ch.25.main.2.pre": 770723355, - "ch.25.main.3": 1747115714, - "ch.25.main.3.on": 1685993991, - "ch.25.main.3.lvl": 2654344007, - "ch.25.main.3.pre": 2863814509, - "ch.25.main.4": 2451322112, - "ch.25.main.4.on": 347584972, - "ch.25.main.4.lvl": 2516575588, - "ch.25.main.4.pre": 3381173182, - "ch.25.send": 357074267, - "ch.25.send.1": 3479956631, - "ch.25.send.1.on": 3446833178, - "ch.25.send.1.lvl": 1230657226, - "ch.25.send.1.pon": 1780846000, - "ch.25.send.1.ind": 3134518347, - "ch.25.send.1.mode": 1808553799, - "ch.25.send.1.plink": 1139215547, - "ch.25.send.1.pan": 2248801859, - "ch.25.send.2": 2302789450, - "ch.25.send.2.on": 4291393203, - "ch.25.send.2.lvl": 1860280347, - "ch.25.send.2.pon": 317606209, - "ch.25.send.2.ind": 308689082, - "ch.25.send.2.mode": 381018191, - "ch.25.send.2.plink": 1703917568, - "ch.25.send.2.pan": 2869557170, - "ch.25.send.3": 3747446060, - "ch.25.send.3.on": 1201760772, - "ch.25.send.3.lvl": 1659453612, - "ch.25.send.3.pon": 77144966, - "ch.25.send.3.ind": 879615605, - "ch.25.send.3.mode": 386136166, - "ch.25.send.3.plink": 3771461952, - "ch.25.send.3.pan": 3946113101, - "ch.25.send.4": 2402522070, - "ch.25.send.4.on": 4020959229, - "ch.25.send.4.lvl": 321068733, - "ch.25.send.4.pon": 850183575, - "ch.25.send.4.ind": 27114548, - "ch.25.send.4.mode": 3904189962, - "ch.25.send.4.plink": 956185640, - "ch.25.send.4.pan": 919762556, - "ch.25.send.5": 1188664957, - "ch.25.send.5.on": 824338964, - "ch.25.send.5.lvl": 1366966492, - "ch.25.send.5.pon": 4099376022, - "ch.25.send.5.ind": 1157595205, - "ch.25.send.5.mode": 3279514926, - "ch.25.send.5.plink": 2599290168, - "ch.25.send.5.pan": 2041702685, - "ch.25.send.6": 3567762423, - "ch.25.send.6.on": 2123793719, - "ch.25.send.6.lvl": 2886621591, - "ch.25.send.6.pon": 3418458813, - "ch.25.send.6.ind": 1753807054, - "ch.25.send.6.mode": 3044000219, - "ch.25.send.6.plink": 3315345430, - "ch.25.send.6.pan": 3487957494, - "ch.25.send.7": 2059638442, - "ch.25.send.7.on": 4052566659, - "ch.25.send.7.lvl": 284499531, - "ch.25.send.7.pon": 881470225, - "ch.25.send.7.ind": 75137226, - "ch.25.send.7.mode": 2376332472, - "ch.25.send.7.plink": 3568925982, - "ch.25.send.7.pan": 971359874, - "ch.25.send.8": 3667479683, - "ch.25.send.8.on": 2842035836, - "ch.25.send.8.lvl": 3310215732, - "ch.25.send.8.pon": 1714554574, - "ch.25.send.8.ind": 3200810173, - "ch.25.send.8.mode": 2282797002, - "ch.25.send.8.plink": 2528850856, - "ch.25.send.8.pan": 1645644453, - "ch.25.send.9": 4106183478, - "ch.25.send.9.on": 24056136, - "ch.25.send.9.lvl": 355919208, - "ch.25.send.9.pon": 877199010, - "ch.25.send.9.ind": 3954289865, - "ch.25.send.9.mode": 3572828334, - "ch.25.send.9.plink": 3256279947, - "ch.25.send.9.pan": 2892926449, - "ch.25.send.10": 3779941684, - "ch.25.send.10.on": 1148316640, - "ch.25.send.10.lvl": 3272181173, - "ch.25.send.10.pon": 1035074009, - "ch.25.send.10.ind": 4007982389, - "ch.25.send.10.mode": 2286831059, - "ch.25.send.10.plink": 86506048, - "ch.25.send.10.pan": 4170455113, - "ch.25.send.11": 2405843785, - "ch.25.send.11.on": 750926181, - "ch.25.send.11.lvl": 3245962511, - "ch.25.send.11.pon": 492930263, - "ch.25.send.11.ind": 3280291147, - "ch.25.send.11.mode": 1704675285, - "ch.25.send.11.plink": 2226448298, - "ch.25.send.11.pan": 3856436463, - "ch.25.send.12": 1625860587, - "ch.25.send.12.on": 106040283, - "ch.25.send.12.lvl": 2988952593, - "ch.25.send.12.pon": 266875781, - "ch.25.send.12.ind": 3505618609, - "ch.25.send.12.mode": 1307778727, - "ch.25.send.12.plink": 3532484916, - "ch.25.send.12.pan": 3556149, - "ch.25.send.13": 314702805, - "ch.25.send.13.on": 3919710555, - "ch.25.send.13.lvl": 3612080651, - "ch.25.send.13.pon": 980941299, - "ch.25.send.13.ind": 3001252343, - "ch.25.send.13.mode": 3808636073, - "ch.25.send.13.plink": 4145906430, - "ch.25.send.13.pan": 4068726283, - "ch.25.send.14": 3235884858, - "ch.25.send.14.on": 3543265964, - "ch.25.send.14.lvl": 3322826653, - "ch.25.send.14.pon": 1099420321, - "ch.25.send.14.ind": 3367422269, - "ch.25.send.14.mode": 1649313179, - "ch.25.send.14.plink": 3827881496, - "ch.25.send.14.pan": 3507741745, - "ch.25.send.15": 1589812559, - "ch.25.send.15.on": 2877449474, - "ch.25.send.15.lvl": 3443294903, - "ch.25.send.15.pon": 203116703, - "ch.25.send.15.ind": 3602907699, - "ch.25.send.15.mode": 1236234685, - "ch.25.send.15.plink": 3980501698, - "ch.25.send.15.pan": 2234280695, - "ch.25.send.16": 205213812, - "ch.25.send.16.on": 2417103495, - "ch.25.send.16.lvl": 3626011033, - "ch.25.send.16.pon": 145488621, - "ch.25.send.16.ind": 3138361753, - "ch.25.send.16.mode": 1220791407, - "ch.25.send.16.plink": 4154621484, - "ch.25.send.16.pan": 63053309, - "ch.25.send.MX1": 3801918670, - "ch.25.send.MX1.on": 2994826220, - "ch.25.send.MX1.lvl": 316978781, - "ch.25.send.MX1.pon": 1462784232, - "ch.25.send.MX1.ind": 368809827, - "ch.25.send.MX1.mode": 3640668412, - "ch.25.send.MX1.plink": 1836190037, - "ch.25.send.MX1.pan": 1570696398, - "ch.25.send.MX2": 2459513403, - "ch.25.send.MX2.on": 17508374, - "ch.25.send.MX2.lvl": 3569709650, - "ch.25.send.MX2.pon": 3357658856, - "ch.25.send.MX2.ind": 1284033280, - "ch.25.send.MX2.mode": 98596089, - "ch.25.send.MX2.plink": 2985074517, - "ch.25.send.MX2.pan": 3439166158, - "ch.25.send.MX3": 445897104, - "ch.25.send.MX3.on": 2133178975, - "ch.25.send.MX3.lvl": 529956816, - "ch.25.send.MX3.pon": 3530461542, - "ch.25.send.MX3.ind": 917294865, - "ch.25.send.MX3.mode": 2830987274, - "ch.25.send.MX3.plink": 3162554979, - "ch.25.send.MX3.pan": 2982075776, - "ch.25.send.MX4": 3243572911, - "ch.25.send.MX4.on": 2616534623, - "ch.25.send.MX4.lvl": 1970727868, - "ch.25.send.MX4.pon": 149609901, - "ch.25.send.MX4.ind": 3414268710, - "ch.25.send.MX4.mode": 40891963, - "ch.25.send.MX4.plink": 3736610408, - "ch.25.send.MX4.pan": 4231172531, - "ch.25.send.MX5": 2303698276, - "ch.25.send.MX5.on": 3114113301, - "ch.25.send.MX5.lvl": 2227751146, - "ch.25.send.MX5.pon": 3698272851, - "ch.25.send.MX5.ind": 3005447991, - "ch.25.send.MX5.mode": 3037581797, - "ch.25.send.MX5.plink": 4063484398, - "ch.25.send.MX5.pan": 3635791437, - "ch.25.send.MX6": 1632382289, - "ch.25.send.MX6.on": 1220326658, - "ch.25.send.MX6.lvl": 1979864310, - "ch.25.send.MX6.pon": 1984656979, - "ch.25.send.MX6.ind": 2907539284, - "ch.25.send.MX6.mode": 1257117212, - "ch.25.send.MX6.plink": 1616330222, - "ch.25.send.MX6.pan": 1854462541, - "ch.25.send.MX7": 3893376014, - "ch.25.send.MX7.on": 1643525051, - "ch.25.send.MX7.lvl": 3105995184, - "ch.25.send.MX7.pon": 1094197250, - "ch.25.send.MX7.ind": 3144882976, - "ch.25.send.MX7.mode": 763520598, - "ch.25.send.MX7.plink": 1802971711, - "ch.25.send.MX7.pan": 1392133140, - "ch.25.send.MX8": 2550642912, - "ch.25.send.MX8.on": 923324340, - "ch.25.send.MX8.lvl": 2404545973, - "ch.25.send.MX8.pon": 1845558809, - "ch.25.send.MX8.ind": 1381002827, - "ch.25.send.MX8.mode": 733391271, - "ch.25.send.MX8.plink": 2218881060, - "ch.25.send.MX8.pan": 2519783943, - "ch.25.tapwid": 750082789, - "ch.25.postins": 1409906213, - "ch.25.postins.on": 2712376602, - "ch.25.postins.mode": 1061802592, - "ch.25.postins.ins": 3550529357, - "ch.25.postins.w": 4175121661, - "ch.25.postins.$stat": 2864951055, - "ch.25.tags": 65507601, - "ch.25.$fdr": 3148185200, - "ch.25.$mute": 2733388486, - "ch.25.$muteovr": 2013131811, - "ch.26": 224525054, - "ch.26.in": 922799641, - "ch.26.in.set": 661999223, - "ch.26.in.set.$mode": 3014643953, - "ch.26.in.set.srcauto": 902761782, - "ch.26.in.set.altsrc": 2013747942, - "ch.26.in.set.inv": 97188806, - "ch.26.in.set.trim": 1794334317, - "ch.26.in.set.bal": 3607898543, - "ch.26.in.set.$g": 2173103823, - "ch.26.in.set.$vph": 1791378644, - "ch.26.in.set.dlymode": 3430153673, - "ch.26.in.set.dly": 3689792826, - "ch.26.in.set.dlyon": 713655039, - "ch.26.in.conn": 842562791, - "ch.26.in.conn.grp": 2496241547, - "ch.26.in.conn.in": 1887779810, - "ch.26.in.conn.altgrp": 640270922, - "ch.26.in.conn.altin": 3957904056, - "ch.26.flt": 4058300489, - "ch.26.flt.lc": 1923958160, - "ch.26.flt.lcf": 4135739939, - "ch.26.flt.hc": 3555322822, - "ch.26.flt.hcf": 412008187, - "ch.26.flt.tf": 801858863, - "ch.26.flt.mdl": 2609221167, - "ch.26.flt.1": 950218327, - "ch.26.flt.2": 1996267450, - "ch.26.clink": 2544177791, - "ch.26.col": 2972513499, - "ch.26.name": 438278820, - "ch.26.icon": 4280359982, - "ch.26.led": 1746076202, - "ch.26.$col": 741685059, - "ch.26.$name": 23512841, - "ch.26.$icon": 640953287, - "ch.26.mute": 2485744907, - "ch.26.fdr": 1128053252, - "ch.26.pan": 3280529630, - "ch.26.wid": 1223697967, - "ch.26.$solo": 924315572, - "ch.26.$sololed": 3236073903, - "ch.26.solosafe": 4044089170, - "ch.26.mon": 3186136471, - "ch.26.proc": 1465497805, - "ch.26.ptap": 411173370, - "ch.26.$presolo": 955548735, - "ch.26.peq": 1942003023, - "ch.26.peq.on": 2266889014, - "ch.26.peq.1g": 1799251229, - "ch.26.peq.1f": 4156658375, - "ch.26.peq.1q": 4144721965, - "ch.26.peq.2g": 1896574177, - "ch.26.peq.2f": 4054957972, - "ch.26.peq.2q": 3038641393, - "ch.26.peq.3g": 2649655957, - "ch.26.peq.3f": 1897156936, - "ch.26.peq.3q": 544353957, - "ch.26.gate": 827512289, - "ch.26.gate.on": 3461490544, - "ch.26.gate.mdl": 3839415532, - "ch.26.gate.1": 2058830159, - "ch.26.gate.2": 625422321, - "ch.26.gate.3": 2368009539, - "ch.26.gate.4": 1229513718, - "ch.26.gate.5": 4045858968, - "ch.26.gate.6": 4250154847, - "ch.26.gate.7": 2814130674, - "ch.26.gate.8": 266990931, - "ch.26.gate.9": 3418874886, - "ch.26.gatesc": 2959208971, - "ch.26.gatesc.type": 2231616966, - "ch.26.gatesc.f": 1205048486, - "ch.26.gatesc.q": 1721125379, - "ch.26.gatesc.src": 1758209302, - "ch.26.gatesc.tap": 597259081, - "ch.26.gatesc.$solo": 1832846525, - "ch.26.eq": 2342691095, - "ch.26.eq.on": 2554320147, - "ch.26.eq.mdl": 1364300497, - "ch.26.eq.mix": 495635611, - "ch.26.eq.$solo": 696655920, - "ch.26.eq.$solobd": 3411014139, - "ch.26.eq.1": 3426421225, - "ch.26.eq.2": 3300415690, - "ch.26.eq.3": 2482396031, - "ch.26.eq.4": 1282673678, - "ch.26.eq.5": 2767326899, - "ch.26.eq.6": 3470014793, - "ch.26.eq.7": 2693933098, - "ch.26.eq.8": 957359568, - "ch.26.eq.9": 2978863982, - "ch.26.eq.10": 351438231, - "ch.26.eq.11": 3199199322, - "ch.26.eq.12": 3070613248, - "ch.26.eq.13": 1602476355, - "ch.26.eq.14": 2126613137, - "ch.26.eq.15": 2537524519, - "ch.26.eq.16": 1095350205, - "ch.26.eq.17": 2600969824, - "ch.26.eq.18": 1801298851, - "ch.26.eq.19": 601577972, - "ch.26.eq.20": 957961678, - "ch.26.dyn": 2872962782, - "ch.26.dyn.on": 1478016938, - "ch.26.dyn.mdl": 497659891, - "ch.26.dyn.mix": 3525329380, - "ch.26.dyn.gain": 174307202, - "ch.26.dyn.1": 3703199016, - "ch.26.dyn.2": 2602066213, - "ch.26.dyn.3": 2986089635, - "ch.26.dyn.4": 1554645193, - "ch.26.dyn.5": 369621490, - "ch.26.dyn.6": 2751341704, - "ch.26.dyn.7": 1298280581, - "ch.26.dyn.8": 1740631068, - "ch.26.dyn.9": 3244544041, - "ch.26.dynxo": 515910545, - "ch.26.dynxo.depth": 2342779174, - "ch.26.dynxo.type": 450329208, - "ch.26.dynxo.f": 4222343453, - "ch.26.dynxo.$solo": 1434601069, - "ch.26.dynsc": 3907325876, - "ch.26.dynsc.type": 1265846584, - "ch.26.dynsc.f": 2014233309, - "ch.26.dynsc.q": 2696285518, - "ch.26.dynsc.src": 1780991056, - "ch.26.dynsc.tap": 2742732187, - "ch.26.dynsc.$solo": 1014663163, - "ch.26.preins": 2280024804, - "ch.26.preins.on": 2616079055, - "ch.26.preins.ins": 2612582635, - "ch.26.preins.$stat": 943417564, - "ch.26.main": 3613847526, - "ch.26.main.1": 3536249297, - "ch.26.main.1.on": 4033429891, - "ch.26.main.1.lvl": 643898699, - "ch.26.main.1.pre": 161096753, - "ch.26.main.2": 1346761531, - "ch.26.main.2.on": 2607198995, - "ch.26.main.2.lvl": 254708859, - "ch.26.main.2.pre": 3040522881, - "ch.26.main.3": 2108619880, - "ch.26.main.3.on": 4141254354, - "ch.26.main.3.lvl": 867064626, - "ch.26.main.3.pre": 363341048, - "ch.26.main.4": 2687346298, - "ch.26.main.4.on": 3139394818, - "ch.26.main.4.lvl": 3682043458, - "ch.26.main.4.pre": 3488801896, - "ch.26.send": 2268522653, - "ch.26.send.1": 4069423553, - "ch.26.send.1.on": 2774478182, - "ch.26.send.1.lvl": 2237073726, - "ch.26.send.1.pon": 3799736260, - "ch.26.send.1.ind": 2446445479, - "ch.26.send.1.mode": 2444043653, - "ch.26.send.1.plink": 2753489925, - "ch.26.send.1.pan": 1226813871, - "ch.26.send.2": 3054862292, - "ch.26.send.2.on": 1227630641, - "ch.26.send.2.lvl": 1638158057, - "ch.26.send.2.pon": 103683331, - "ch.26.send.2.ind": 857675208, - "ch.26.send.2.mode": 2190284794, - "ch.26.send.2.plink": 1206964536, - "ch.26.send.2.pan": 3931350768, - "ch.26.send.3": 1973208626, - "ch.26.send.3.on": 525091292, - "ch.26.send.3.lvl": 1330910740, - "ch.26.send.3.pon": 841690606, - "ch.26.send.3.ind": 852458589, - "ch.26.send.3.mode": 1797559287, - "ch.26.send.3.plink": 4052691834, - "ch.26.send.3.pan": 3415260805, - "ch.26.send.4": 1964955208, - "ch.26.send.4.on": 3911877164, - "ch.26.send.4.lvl": 427972164, - "ch.26.send.4.pon": 2085580222, - "ch.26.send.4.ind": 4245142509, - "ch.26.send.4.mode": 1196608560, - "ch.26.send.4.plink": 687404548, - "ch.26.send.4.pan": 2175467093, - "ch.26.send.5": 279303099, - "ch.26.send.5.on": 2276887223, - "ch.26.send.5.lvl": 4208899095, - "ch.26.send.5.pon": 2594215229, - "ch.26.send.5.ind": 2573463118, - "ch.26.send.5.mode": 3063922921, - "ch.26.send.5.plink": 2299295957, - "ch.26.send.5.pan": 515574902, - "ch.26.send.6": 45069089, - "ch.26.send.6.on": 2204286834, - "ch.26.send.6.lvl": 2804607826, - "ch.26.send.6.pon": 3327581688, - "ch.26.send.6.ind": 1839605171, - "ch.26.send.6.mode": 905550318, - "ch.26.send.6.plink": 2052213451, - "ch.26.send.6.pan": 3397075899, - "ch.26.send.7": 37138228, - "ch.26.send.7.on": 384819165, - "ch.26.send.7.lvl": 4290251677, - "ch.26.send.7.pon": 1674165687, - "ch.26.send.7.ind": 20137300, - "ch.26.send.7.mode": 3251188827, - "ch.26.send.7.plink": 2380413718, - "ch.26.send.7.pan": 2079286108, - "ch.26.send.8": 3250451861, - "ch.26.send.8.on": 2635315560, - "ch.26.send.8.lvl": 230396552, - "ch.26.send.8.pon": 2949043842, - "ch.26.send.8.ind": 2302028713, - "ch.26.send.8.mode": 442583147, - "ch.26.send.8.plink": 2679300855, - "ch.26.send.8.pan": 912997137, - "ch.26.send.9": 222299560, - "ch.26.send.9.on": 1995335987, - "ch.26.send.9.lvl": 4153839003, - "ch.26.send.9.pon": 3656070849, - "ch.26.send.9.ind": 2333854522, - "ch.26.send.9.mode": 2055625636, - "ch.26.send.9.plink": 2032108082, - "ch.26.send.9.pan": 3565610290, - "ch.26.send.10": 492542024, - "ch.26.send.10.on": 140431764, - "ch.26.send.10.lvl": 3944489429, - "ch.26.send.10.pon": 720779489, - "ch.26.send.10.ind": 2274864962, - "ch.26.send.10.mode": 191985761, - "ch.26.send.10.plink": 241296206, - "ch.26.send.10.pan": 4162905777, - "ch.26.send.11": 3350817981, - "ch.26.send.11.on": 1332663321, - "ch.26.send.11.lvl": 3886833167, - "ch.26.send.11.pon": 1498638111, - "ch.26.send.11.ind": 2267453880, - "ch.26.send.11.mode": 584986475, - "ch.26.send.11.plink": 823013584, - "ch.26.send.11.pan": 3747307375, - "ch.26.send.12": 3924382639, - "ch.26.send.12.on": 3372135511, - "ch.26.send.12.lvl": 4143620249, - "ch.26.send.12.pon": 1724091909, - "ch.26.send.12.ind": 3284047942, - "ch.26.send.12.mode": 347055021, - "ch.26.send.12.plink": 4162411402, - "ch.26.send.12.pan": 4033749397, - "ch.26.send.13": 1002943505, - "ch.26.send.13.on": 311342807, - "ch.26.send.13.lvl": 503228403, - "ch.26.send.13.pon": 775129171, - "ch.26.send.13.ind": 2177805132, - "ch.26.send.13.mode": 362818007, - "ch.26.send.13.plink": 428435804, - "ch.26.send.13.pan": 4259386707, - "ch.26.send.14": 3824349398, - "ch.26.send.14.on": 4229877032, - "ch.26.send.14.lvl": 3809970109, - "ch.26.send.14.pon": 1336722889, - "ch.26.send.14.ind": 3538156458, - "ch.26.send.14.mode": 4284287817, - "ch.26.send.14.plink": 746416806, - "ch.26.send.14.pan": 290525017, - "ch.26.send.15": 2512175819, - "ch.26.send.15.on": 3543091942, - "ch.26.send.15.lvl": 170242263, - "ch.26.send.15.pon": 1772740519, - "ch.26.send.15.ind": 3118216192, - "ch.26.send.15.mode": 550097267, - "ch.26.send.15.plink": 157803592, - "ch.26.send.15.pan": 3901469047, - "ch.26.send.16": 1206714248, - "ch.26.send.16.on": 2998840683, - "ch.26.send.16.lvl": 384451361, - "ch.26.send.16.pon": 1829767149, - "ch.26.send.16.ind": 2053800622, - "ch.26.send.16.mode": 418326133, - "ch.26.send.16.plink": 383046946, - "ch.26.send.16.pan": 3958523517, - "ch.26.send.MX1": 2930801260, - "ch.26.send.MX1.on": 2753316115, - "ch.26.send.MX1.lvl": 113900187, - "ch.26.send.MX1.pon": 2782635046, - "ch.26.send.MX1.ind": 1317590663, - "ch.26.send.MX1.mode": 1021495002, - "ch.26.send.MX1.plink": 2074587043, - "ch.26.send.MX1.pan": 1856096320, - "ch.26.send.MX2": 4280988761, - "ch.26.send.MX2.on": 180617494, - "ch.26.send.MX2.lvl": 764045021, - "ch.26.send.MX2.pon": 1627186726, - "ch.26.send.MX2.ind": 390851324, - "ch.26.send.MX2.mode": 1608735453, - "ch.26.send.MX2.plink": 2331138467, - "ch.26.send.MX2.pan": 2743104064, - "ch.26.send.MX3": 738848242, - "ch.26.send.MX3.on": 1165838936, - "ch.26.send.MX3.lvl": 1114889388, - "ch.26.send.MX3.pon": 2536100263, - "ch.26.send.MX3.ind": 32612065, - "ch.26.send.MX3.mode": 739973495, - "ch.26.send.MX3.plink": 2168029842, - "ch.26.send.MX3.pan": 1839603129, - "ch.26.send.MX4": 1096738765, - "ch.26.send.MX4.on": 3226232408, - "ch.26.send.MX4.lvl": 2014464172, - "ch.26.send.MX4.pon": 4100988333, - "ch.26.send.MX4.ind": 3431936795, - "ch.26.send.MX4.mode": 2320798586, - "ch.26.send.MX4.plink": 179496552, - "ch.26.send.MX4.pan": 543150515, - "ch.26.send.MX5": 155066486, - "ch.26.send.MX5.on": 4039321247, - "ch.26.send.MX5.lvl": 2162899130, - "ch.26.send.MX5.pon": 230279090, - "ch.26.send.MX5.ind": 2977875739, - "ch.26.send.MX5.mode": 3635560873, - "ch.26.send.MX5.plink": 4155037679, - "ch.26.send.MX5.pan": 124251012, - "ch.26.send.MX6": 918051427, - "ch.26.send.MX6.on": 931472002, - "ch.26.send.MX6.lvl": 2810627249, - "ch.26.send.MX6.pon": 3338015666, - "ch.26.send.MX6.ind": 4103107296, - "ch.26.send.MX6.mode": 1643173292, - "ch.26.send.MX6.plink": 3710684143, - "ch.26.send.MX6.pan": 3990593412, - "ch.26.send.MX7": 1586336556, - "ch.26.send.MX7.on": 3592144964, - "ch.26.send.MX7.lvl": 2492263776, - "ch.26.send.MX7.pon": 4258077732, - "ch.26.send.MX7.ind": 1087747782, - "ch.26.send.MX7.mode": 809330051, - "ch.26.send.MX7.plink": 3554792305, - "ch.26.send.MX7.pan": 3060250706, - "ch.26.send.MX8": 2842438850, - "ch.26.send.MX8.on": 1623180303, - "ch.26.send.MX8.lvl": 721246591, - "ch.26.send.MX8.pon": 1334074921, - "ch.26.send.MX8.ind": 2345492415, - "ch.26.send.MX8.mode": 4122233225, - "ch.26.send.MX8.plink": 2034914676, - "ch.26.send.MX8.pan": 2510285399, - "ch.26.tapwid": 4242991163, - "ch.26.postins": 4118681637, - "ch.26.postins.on": 2820862746, - "ch.26.postins.mode": 3783891614, - "ch.26.postins.ins": 4158715089, - "ch.26.postins.w": 1379659517, - "ch.26.postins.$stat": 2458083219, - "ch.26.tags": 3809255007, - "ch.26.$fdr": 2629034750, - "ch.26.$mute": 2242421128, - "ch.26.$muteovr": 2661737915, - "ch.27": 2670084241, - "ch.27.in": 2704344990, - "ch.27.in.set": 69781961, - "ch.27.in.set.$mode": 3816099554, - "ch.27.in.set.srcauto": 2691298259, - "ch.27.in.set.altsrc": 1651845771, - "ch.27.in.set.inv": 3518287641, - "ch.27.in.set.trim": 847258022, - "ch.27.in.set.bal": 141917432, - "ch.27.in.set.$g": 4059611976, - "ch.27.in.set.$vph": 2235428895, - "ch.27.in.set.dlymode": 3291458892, - "ch.27.in.set.dly": 1877187277, - "ch.27.in.set.dlyon": 1042556538, - "ch.27.in.conn": 3746996688, - "ch.27.in.conn.grp": 3456337047, - "ch.27.in.conn.in": 2366319333, - "ch.27.in.conn.altgrp": 447117673, - "ch.27.in.conn.altin": 1667947283, - "ch.27.flt": 3664732503, - "ch.27.flt.lc": 1530349134, - "ch.27.flt.lcf": 884607508, - "ch.27.flt.hc": 3277228760, - "ch.27.flt.hcf": 1945433432, - "ch.27.flt.tf": 1027654665, - "ch.27.flt.mdl": 2293459678, - "ch.27.flt.1": 1395521289, - "ch.27.flt.2": 2263340796, - "ch.27.clink": 3220497757, - "ch.27.col": 2760747369, - "ch.27.name": 358431494, - "ch.27.icon": 400225792, - "ch.27.led": 964913716, - "ch.27.$col": 1144955341, - "ch.27.$name": 64725559, - "ch.27.$icon": 1441897013, - "ch.27.mute": 2022508897, - "ch.27.fdr": 2953535934, - "ch.27.pan": 3223051240, - "ch.27.wid": 523513521, - "ch.27.$solo": 3634889762, - "ch.27.$sololed": 3770343332, - "ch.27.solosafe": 3980430297, - "ch.27.mon": 4054576697, - "ch.27.proc": 1189114003, - "ch.27.ptap": 387496628, - "ch.27.$presolo": 805898597, - "ch.27.peq": 1391762837, - "ch.27.peq.on": 1810660060, - "ch.27.peq.1g": 1762316983, - "ch.27.peq.1f": 244376365, - "ch.27.peq.1q": 4013753799, - "ch.27.peq.2g": 1430063963, - "ch.27.peq.2f": 58554382, - "ch.27.peq.2q": 3494722219, - "ch.27.peq.3g": 3032607503, - "ch.27.peq.3f": 1682105250, - "ch.27.peq.3q": 1178797663, - "ch.27.gate": 1279274159, - "ch.27.gate.on": 1305656405, - "ch.27.gate.mdl": 2171280147, - "ch.27.gate.1": 1690068465, - "ch.27.gate.2": 991393615, - "ch.27.gate.3": 2149494413, - "ch.27.gate.4": 841334400, - "ch.27.gate.5": 141016430, - "ch.27.gate.6": 3798912673, - "ch.27.gate.7": 3097610932, - "ch.27.gate.8": 4255716861, - "ch.27.gate.9": 2947229488, - "ch.27.gatesc": 3432101173, - "ch.27.gatesc.type": 1437965331, - "ch.27.gatesc.f": 459158520, - "ch.27.gatesc.q": 998997333, - "ch.27.gatesc.src": 2355470600, - "ch.27.gatesc.tap": 1216811743, - "ch.27.gatesc.$solo": 392506102, - "ch.27.eq": 4103264860, - "ch.27.eq.on": 1639239973, - "ch.27.eq.mdl": 1309045631, - "ch.27.eq.mix": 1096145493, - "ch.27.eq.$solo": 2466582615, - "ch.27.eq.$solobd": 4057022188, - "ch.27.eq.1": 230268167, - "ch.27.eq.2": 2511580636, - "ch.27.eq.3": 1258466241, - "ch.27.eq.4": 855112264, - "ch.27.eq.5": 3047618621, - "ch.27.eq.6": 3414740391, - "ch.27.eq.7": 2119401084, - "ch.27.eq.8": 1180467542, - "ch.27.eq.9": 3909864168, - "ch.27.eq.10": 631710097, - "ch.27.eq.11": 2170436, - "ch.27.eq.12": 2287087678, - "ch.27.eq.13": 1526803861, - "ch.27.eq.14": 1526103191, - "ch.27.eq.15": 2822797665, - "ch.27.eq.16": 1045098219, - "ch.27.eq.17": 3200909534, - "ch.27.eq.18": 1851458357, - "ch.27.eq.19": 1537887562, - "ch.27.eq.20": 1705267408, - "ch.27.dyn": 2477335056, - "ch.27.dyn.on": 1670503836, - "ch.27.dyn.mdl": 1310938775, - "ch.27.dyn.mix": 1990429226, - "ch.27.dyn.gain": 2143289718, - "ch.27.dyn.1": 3517949894, - "ch.27.dyn.2": 2123280147, - "ch.27.dyn.3": 3380999221, - "ch.27.dyn.4": 1325726607, - "ch.27.dyn.5": 685703932, - "ch.27.dyn.6": 3068754022, - "ch.27.dyn.7": 1023967155, - "ch.27.dyn.8": 2179450066, - "ch.27.dyn.9": 2889796655, - "ch.27.dynxo": 281511319, - "ch.27.dynxo.depth": 1232913449, - "ch.27.dynxo.type": 1004154525, - "ch.27.dynxo.f": 435499064, - "ch.27.dynxo.$solo": 3701943858, - "ch.27.dynsc": 3512528266, - "ch.27.dynsc.type": 3401688611, - "ch.27.dynsc.f": 2332870614, - "ch.27.dynsc.q": 4133846933, - "ch.27.dynsc.src": 2906857795, - "ch.27.dynsc.tap": 3730963144, - "ch.27.dynsc.$solo": 3283435988, - "ch.27.preins": 2553528546, - "ch.27.preins.on": 3148513309, - "ch.27.preins.ins": 1006410153, - "ch.27.preins.$stat": 3313270564, - "ch.27.main": 3544652248, - "ch.27.main.1": 3605493735, - "ch.27.main.1.on": 235701295, - "ch.27.main.1.lvl": 478436095, - "ch.27.main.1.pre": 3258640037, - "ch.27.main.2": 1439260829, - "ch.27.main.2.on": 3220076030, - "ch.27.main.2.lvl": 3604367910, - "ch.27.main.2.pre": 2031810028, - "ch.27.main.3": 2039703382, - "ch.27.main.3.on": 2212152385, - "ch.27.main.3.lvl": 2465373593, - "ch.27.main.3.pre": 950657651, - "ch.27.main.4": 2778049860, - "ch.27.main.4.on": 3046252481, - "ch.27.main.4.lvl": 3777643545, - "ch.27.main.4.pre": 3562940403, - "ch.27.send": 2709725031, - "ch.27.send.1": 3882419259, - "ch.27.send.1.on": 3590776602, - "ch.27.send.1.lvl": 2559491530, - "ch.27.send.1.pon": 955328176, - "ch.27.send.1.ind": 3960701771, - "ch.27.send.1.mode": 2691457823, - "ch.27.send.1.plink": 2437373335, - "ch.27.send.1.pan": 885744963, - "ch.27.send.2": 2571392398, - "ch.27.send.2.on": 3640918195, - "ch.27.send.2.lvl": 2846632475, - "ch.27.send.2.pon": 2345910081, - "ch.27.send.2.ind": 3979395770, - "ch.27.send.2.mode": 2113287406, - "ch.27.send.2.plink": 2614101321, - "ch.27.send.2.pan": 1919910322, - "ch.27.send.3": 2199740312, - "ch.27.send.3.on": 894218348, - "ch.27.send.3.lvl": 1299504132, - "ch.27.send.3.pon": 4060974334, - "ch.27.send.3.ind": 1190753453, - "ch.27.send.3.mode": 1801126952, - "ch.27.send.3.plink": 2251352383, - "ch.27.send.3.pan": 3593024533, - "ch.27.send.4": 1402515682, - "ch.27.send.4.on": 3786035740, - "ch.27.send.4.lvl": 3370266068, - "ch.27.send.4.pon": 2767002414, - "ch.27.send.4.ind": 3479004957, - "ch.27.send.4.mode": 3228354050, - "ch.27.send.4.plink": 946292759, - "ch.27.send.4.pan": 752014917, - "ch.27.send.5": 804387393, - "ch.27.send.5.on": 363770821, - "ch.27.send.5.lvl": 2500254357, - "ch.27.send.5.pon": 852158959, - "ch.27.send.5.ind": 25313420, - "ch.27.send.5.mode": 2927630395, - "ch.27.send.5.plink": 1833392359, - "ch.27.send.5.pan": 3090100868, - "ch.27.send.6": 233297115, - "ch.27.send.6.on": 1212320015, - "ch.27.send.6.lvl": 3128601951, - "ch.27.send.6.pon": 3679754021, - "ch.27.send.6.ind": 1577053046, - "ch.27.send.6.mode": 392489115, - "ch.27.send.6.plink": 4249834260, - "ch.27.send.6.pan": 3811509582, - "ch.27.send.7": 3888326190, - "ch.27.send.7.on": 2873099939, - "ch.27.send.7.lvl": 1799871851, - "ch.27.send.7.pon": 2386036465, - "ch.27.send.7.ind": 2529993642, - "ch.27.send.7.mode": 2089817210, - "ch.27.send.7.plink": 1163233265, - "ch.27.send.7.pan": 127108514, - "ch.27.send.8": 3359387727, - "ch.27.send.8.on": 292257304, - "ch.27.send.8.lvl": 2571327320, - "ch.27.send.8.pon": 1955369458, - "ch.27.send.8.ind": 4291293465, - "ch.27.send.8.mode": 2306025571, - "ch.27.send.8.plink": 597212524, - "ch.27.send.8.pan": 1550253825, - "ch.27.send.9": 35094914, - "ch.27.send.9.on": 1686511537, - "ch.27.send.9.lvl": 2318289769, - "ch.27.send.9.pon": 2807102851, - "ch.27.send.9.ind": 2024375624, - "ch.27.send.9.mode": 968690334, - "ch.27.send.9.plink": 2787182228, - "ch.27.send.9.pan": 3254166384, - "ch.27.send.10": 9167924, - "ch.27.send.10.on": 1929807072, - "ch.27.send.10.lvl": 1550419489, - "ch.27.send.10.pon": 2777786961, - "ch.27.send.10.ind": 1971655677, - "ch.27.send.10.mode": 1705913643, - "ch.27.send.10.plink": 1250416051, - "ch.27.send.10.pan": 1827939121, - "ch.27.send.11": 1446097993, - "ch.27.send.11.on": 3421937765, - "ch.27.send.11.lvl": 999944311, - "ch.27.send.11.pon": 889293211, - "ch.27.send.11.ind": 1516586375, - "ch.27.send.11.mode": 1480259761, - "ch.27.send.11.plink": 4149540697, - "ch.27.send.11.pan": 1618815131, - "ch.27.send.12": 2440895211, - "ch.27.send.12.on": 3035004123, - "ch.27.send.12.lvl": 1623699949, - "ch.27.send.12.pon": 1187518941, - "ch.27.send.12.ind": 64179577, - "ch.27.send.12.mode": 2006136575, - "ch.27.send.12.plink": 1072551991, - "ch.27.send.12.pan": 1809231101, - "ch.27.send.13": 3793972437, - "ch.27.send.13.on": 148271195, - "ch.27.send.13.lvl": 1890304691, - "ch.27.send.13.pon": 2681742919, - "ch.27.send.13.ind": 1694709795, - "ch.27.send.13.mode": 2573442885, - "ch.27.send.13.plink": 1287511997, - "ch.27.send.13.pan": 761506119, - "ch.27.send.14": 930692666, - "ch.27.send.14.on": 566657452, - "ch.27.send.14.lvl": 1538164489, - "ch.27.send.14.pon": 740826361, - "ch.27.send.14.ind": 1914071494, - "ch.27.send.14.mode": 2095996115, - "ch.27.send.14.plink": 1137220939, - "ch.27.send.14.pan": 955509241, - "ch.27.send.15": 2284392015, - "ch.27.send.15.on": 1253506562, - "ch.27.send.15.lvl": 1365023551, - "ch.27.send.15.pon": 872099139, - "ch.27.send.15.ind": 119501135, - "ch.27.send.15.mode": 1934596441, - "ch.27.send.15.plink": 849454257, - "ch.27.send.15.pan": 1464609059, - "ch.27.send.16": 3548297076, - "ch.27.send.16.on": 1755740551, - "ch.27.send.16.lvl": 1904248021, - "ch.27.send.16.pon": 1024168549, - "ch.27.send.16.ind": 1789904385, - "ch.27.send.16.mode": 1982070183, - "ch.27.send.16.plink": 1380087279, - "ch.27.send.16.pan": 1763822949, - "ch.27.send.MX1": 2051571943, - "ch.27.send.MX1.on": 3458055993, - "ch.27.send.MX1.lvl": 4285097329, - "ch.27.send.MX1.pon": 3739031986, - "ch.27.send.MX1.ind": 1135042257, - "ch.27.send.MX1.mode": 1703824318, - "ch.27.send.MX1.plink": 147188207, - "ch.27.send.MX1.pan": 641912196, - "ch.27.send.MX2": 3231514010, - "ch.27.send.MX2.on": 4183728956, - "ch.27.send.MX2.lvl": 1773095298, - "ch.27.send.MX2.pon": 2241058744, - "ch.27.send.MX2.ind": 2027723698, - "ch.27.send.MX2.mode": 364492731, - "ch.27.send.MX2.plink": 2608556005, - "ch.27.send.MX2.pan": 2139880350, - "ch.27.send.MX3": 3231977009, - "ch.27.send.MX3.on": 247661625, - "ch.27.send.MX3.lvl": 3959159279, - "ch.27.send.MX3.pon": 3491432708, - "ch.27.send.MX3.ind": 2962831275, - "ch.27.send.MX3.mode": 3441719920, - "ch.27.send.MX3.plink": 2783466641, - "ch.27.send.MX3.pan": 3026349362, - "ch.27.send.MX4": 2898577958, - "ch.27.send.MX4.on": 3422394406, - "ch.27.send.MX4.lvl": 822165053, - "ch.27.send.MX4.pon": 419306802, - "ch.27.send.MX4.ind": 1701816940, - "ch.27.send.MX4.mode": 1104599932, - "ch.27.send.MX4.plink": 51400815, - "ch.27.send.MX4.pan": 3956193540, - "ch.27.send.MX5": 2731268829, - "ch.27.send.MX5.on": 2564118691, - "ch.27.send.MX5.lvl": 690759381, - "ch.27.send.MX5.pon": 3822733172, - "ch.27.send.MX5.ind": 2598356613, - "ch.27.send.MX5.mode": 3872475591, - "ch.27.send.MX5.plink": 231215809, - "ch.27.send.MX5.pan": 558496610, - "ch.27.send.MX6": 4078983024, - "ch.27.send.MX6.on": 4073897096, - "ch.27.send.MX6.lvl": 3857619643, - "ch.27.send.MX6.pon": 3862821748, - "ch.27.send.MX6.ind": 4154174966, - "ch.27.send.MX6.mode": 2608632054, - "ch.27.send.MX6.plink": 3161501377, - "ch.27.send.MX6.pan": 2918598498, - "ch.27.send.MX7": 4247218215, - "ch.27.send.MX7.on": 1304493653, - "ch.27.send.MX7.lvl": 2021933372, - "ch.27.send.MX7.pon": 3112509518, - "ch.27.send.MX7.ind": 1800169967, - "ch.27.send.MX7.mode": 2112062969, - "ch.27.send.MX7.plink": 3483210699, - "ch.27.send.MX7.pan": 3679235176, - "ch.27.send.MX8": 1121748161, - "ch.27.send.MX8.on": 3611189905, - "ch.27.send.MX8.lvl": 3926533409, - "ch.27.send.MX8.pon": 3191594517, - "ch.27.send.MX8.ind": 540462857, - "ch.27.send.MX8.mode": 3490660808, - "ch.27.send.MX8.plink": 3897758032, - "ch.27.send.MX8.pan": 4137056763, - "ch.27.tapwid": 865784641, - "ch.27.postins": 203561075, - "ch.27.postins.on": 3180237148, - "ch.27.postins.mode": 543200311, - "ch.27.postins.ins": 1181740204, - "ch.27.postins.w": 3866378043, - "ch.27.postins.$stat": 2930245236, - "ch.27.tags": 96033141, - "ch.27.$fdr": 3347013780, - "ch.27.$mute": 2845896146, - "ch.27.$muteovr": 932080382, - "ch.28": 4020248458, - "ch.28.in": 2049003904, - "ch.28.in.set": 3505619811, - "ch.28.in.set.$mode": 2911754962, - "ch.28.in.set.srcauto": 2562783015, - "ch.28.in.set.altsrc": 194352076, - "ch.28.in.set.inv": 1169358870, - "ch.28.in.set.trim": 272480310, - "ch.28.in.set.bal": 2367653983, - "ch.28.in.set.$g": 3060728639, - "ch.28.in.set.$vph": 375374515, - "ch.28.in.set.dlymode": 4038172296, - "ch.28.in.set.dly": 1912698570, - "ch.28.in.set.dlyon": 1654637342, - "ch.28.in.conn": 3761957507, - "ch.28.in.conn.grp": 2073054020, - "ch.28.in.conn.in": 3800888886, - "ch.28.in.conn.altgrp": 1033420554, - "ch.28.in.conn.altin": 1071230456, - "ch.28.flt": 67084917, - "ch.28.flt.lc": 2206671724, - "ch.28.flt.lcf": 1271176426, - "ch.28.flt.hc": 2600885770, - "ch.28.flt.hcf": 2414109242, - "ch.28.flt.tf": 498132715, - "ch.28.flt.mdl": 2347739172, - "ch.28.flt.1": 666767403, - "ch.28.flt.2": 1607979550, - "ch.28.clink": 1986452235, - "ch.28.col": 3048812799, - "ch.28.name": 1417766376, - "ch.28.icon": 367907730, - "ch.28.led": 2112778222, - "ch.28.$col": 416187695, - "ch.28.$name": 290191341, - "ch.28.$icon": 2055497187, - "ch.28.mute": 1786772527, - "ch.28.fdr": 593004888, - "ch.28.pan": 4049524034, - "ch.28.wid": 1629731811, - "ch.28.$solo": 3912873808, - "ch.28.$sololed": 2007866030, - "ch.28.solosafe": 2539542324, - "ch.28.mon": 3326025067, - "ch.28.proc": 2777935625, - "ch.28.ptap": 313222430, - "ch.28.$presolo": 3493774634, - "ch.28.peq": 2087146355, - "ch.28.peq.on": 1585693322, - "ch.28.peq.1g": 1717739273, - "ch.28.peq.1f": 3144112371, - "ch.28.peq.1q": 3668227993, - "ch.28.peq.2g": 1956951413, - "ch.28.peq.2f": 3414947880, - "ch.28.peq.2q": 4277864133, - "ch.28.peq.3g": 357171393, - "ch.28.peq.3f": 1794201460, - "ch.28.peq.3q": 2299946513, - "ch.28.gate": 1882399109, - "ch.28.gate.on": 3890131969, - "ch.28.gate.mdl": 3084351431, - "ch.28.gate.1": 2429510891, - "ch.28.gate.2": 1552186389, - "ch.28.gate.3": 1420274727, - "ch.28.gate.4": 237552506, - "ch.28.gate.5": 3695970420, - "ch.28.gate.6": 241991643, - "ch.28.gate.7": 3827570478, - "ch.28.gate.8": 3517239575, - "ch.28.gate.9": 2345146474, - "ch.28.gatesc": 4045711919, - "ch.28.gatesc.type": 2800667863, - "ch.28.gatesc.f": 79817790, - "ch.28.gatesc.q": 1839702747, - "ch.28.gatesc.src": 1807055918, - "ch.28.gatesc.tap": 816499441, - "ch.28.gatesc.$solo": 2193356695, - "ch.28.eq": 3426921390, - "ch.28.eq.on": 2494406807, - "ch.28.eq.mdl": 1465603821, - "ch.28.eq.mix": 605356343, - "ch.28.eq.$solo": 2076024240, - "ch.28.eq.$solobd": 2179757179, - "ch.28.eq.1": 3367141349, - "ch.28.eq.2": 3359039230, - "ch.28.eq.3": 2423116355, - "ch.28.eq.4": 1340643258, - "ch.28.eq.5": 2864700175, - "ch.28.eq.6": 3571298437, - "ch.28.eq.7": 2635247518, - "ch.28.eq.8": 1016045028, - "ch.28.eq.9": 3076810842, - "ch.28.eq.10": 448789011, - "ch.28.eq.11": 3141823846, - "ch.28.eq.12": 3130608844, - "ch.28.eq.13": 1701711975, - "ch.28.eq.14": 2028688677, - "ch.28.eq.15": 2636105859, - "ch.28.eq.16": 1192640025, - "ch.28.eq.17": 2711428460, - "ch.28.eq.18": 1703926791, - "ch.28.eq.19": 700917208, - "ch.28.eq.20": 860589042, - "ch.28.dyn": 3323492786, - "ch.28.dyn.on": 838763886, - "ch.28.dyn.mdl": 2527629591, - "ch.28.dyn.mix": 2645471504, - "ch.28.dyn.gain": 1072375286, - "ch.28.dyn.1": 3000949220, - "ch.28.dyn.2": 1983764433, - "ch.28.dyn.3": 2513872455, - "ch.28.dyn.4": 2508573773, - "ch.28.dyn.5": 820131086, - "ch.28.dyn.6": 2195237508, - "ch.28.dyn.7": 2189927921, - "ch.28.dyn.8": 2716104432, - "ch.28.dyn.9": 2373950061, - "ch.28.dynxo": 4087002341, - "ch.28.dynxo.depth": 4272109362, - "ch.28.dynxo.type": 435881863, - "ch.28.dynxo.f": 1357416754, - "ch.28.dynxo.$solo": 3448614504, - "ch.28.dynsc": 3372848472, - "ch.28.dynsc.type": 1877650345, - "ch.28.dynsc.f": 1317229164, - "ch.28.dynsc.q": 3275660223, - "ch.28.dynsc.src": 869019881, - "ch.28.dynsc.tap": 2044419906, - "ch.28.dynsc.$solo": 3848839777, - "ch.28.preins": 3564937352, - "ch.28.preins.on": 1474487728, - "ch.28.preins.ins": 806652236, - "ch.28.preins.$stat": 3861327831, - "ch.28.main": 3927590946, - "ch.28.main.1": 3841288781, - "ch.28.main.1.on": 1001170789, - "ch.28.main.1.lvl": 1527020469, - "ch.28.main.1.pre": 4286099311, - "ch.28.main.2": 993757943, - "ch.28.main.2.on": 3757439864, - "ch.28.main.2.lvl": 246294328, - "ch.28.main.2.pre": 723852146, - "ch.28.main.3": 2464244988, - "ch.28.main.3.on": 3258137007, - "ch.28.main.3.lvl": 3563808127, - "ch.28.main.3.pre": 1985944613, - "ch.28.main.4": 2993143486, - "ch.28.main.4.on": 2157569535, - "ch.28.main.4.lvl": 2852262319, - "ch.28.main.4.pre": 2663935989, - "ch.28.send": 2664429993, - "ch.28.send.1": 3773069781, - "ch.28.send.1.on": 3849037039, - "ch.28.send.1.lvl": 3311631935, - "ch.28.send.1.pon": 2725178181, - "ch.28.send.1.ind": 3521003670, - "ch.28.send.1.mode": 2264440242, - "ch.28.send.1.plink": 377713664, - "ch.28.send.1.pan": 2299733550, - "ch.28.send.2": 2679454120, - "ch.28.send.2.on": 1835975085, - "ch.28.send.2.lvl": 1024911437, - "ch.28.send.2.pon": 3664477127, - "ch.28.send.2.ind": 1503364708, - "ch.28.send.2.mode": 2821163508, - "ch.28.send.2.plink": 3255580450, - "ch.28.send.2.pan": 3238477996, - "ch.28.send.3": 2112483710, - "ch.28.send.3.on": 436324106, - "ch.28.send.3.lvl": 2425985882, - "ch.28.send.3.pon": 758491424, - "ch.28.send.3.ind": 119472507, - "ch.28.send.3.mode": 1109804330, - "ch.28.send.3.plink": 1024277724, - "ch.28.send.3.pan": 3016835955, - "ch.28.send.4": 1354763060, - "ch.28.send.4.on": 1886393027, - "ch.28.send.4.lvl": 4265077771, - "ch.28.send.4.pon": 3712605521, - "ch.28.send.4.ind": 2192778890, - "ch.28.send.4.mode": 3383516235, - "ch.28.send.4.plink": 2754711526, - "ch.28.send.4.pan": 3580859458, - "ch.28.send.5": 895558287, - "ch.28.send.5.on": 3911383647, - "ch.28.send.5.lvl": 2911575695, - "ch.28.send.5.pon": 1274291701, - "ch.28.send.5.ind": 3557852166, - "ch.28.send.5.mode": 1551003026, - "ch.28.send.5.plink": 2382442149, - "ch.28.send.5.pan": 1162769950, - "ch.28.send.6": 320553717, - "ch.28.send.6.on": 1828145772, - "ch.28.send.6.lvl": 2175759876, - "ch.28.send.6.pon": 2686604030, - "ch.28.send.6.ind": 2150280877, - "ch.28.send.6.mode": 479910684, - "ch.28.send.6.plink": 762383397, - "ch.28.send.6.pan": 428264981, - "ch.28.send.7": 3778808392, - "ch.28.send.7.on": 4020946360, - "ch.28.send.7.lvl": 2130878200, - "ch.28.send.7.pon": 1557121618, - "ch.28.send.7.ind": 59203449, - "ch.28.send.7.mode": 38742848, - "ch.28.send.7.plink": 3385114676, - "ch.28.send.7.pan": 1445676705, - "ch.28.send.8": 3289171073, - "ch.28.send.8.on": 510081910, - "ch.28.send.8.lvl": 1347358638, - "ch.28.send.8.pon": 825447508, - "ch.28.send.8.ind": 868855479, - "ch.28.send.8.mode": 1855116330, - "ch.28.send.8.plink": 2845895880, - "ch.28.send.8.pan": 3440883647, - "ch.28.send.9": 103996372, - "ch.28.send.9.on": 1655431773, - "ch.28.send.9.lvl": 2686716189, - "ch.28.send.9.pon": 4289575735, - "ch.28.send.9.ind": 1956595668, - "ch.28.send.9.mode": 1087970090, - "ch.28.send.9.plink": 133346824, - "ch.28.send.9.pan": 64184540, - "ch.28.send.10": 3713278793, - "ch.28.send.10.on": 3362474261, - "ch.28.send.10.lvl": 308910622, - "ch.28.send.10.pon": 2632216814, - "ch.28.send.10.ind": 449238872, - "ch.28.send.10.mode": 2676011126, - "ch.28.send.10.plink": 537860939, - "ch.28.send.10.pan": 748887742, - "ch.28.send.11": 128775476, - "ch.28.send.11.on": 2407227280, - "ch.28.send.11.lvl": 863643144, - "ch.28.send.11.pon": 3624050516, - "ch.28.send.11.ind": 2727698902, - "ch.28.send.11.mode": 2419324792, - "ch.28.send.11.plink": 784464045, - "ch.28.send.11.pan": 388994980, - "ch.28.send.12": 702668534, - "ch.28.send.12.on": 151731462, - "ch.28.send.12.lvl": 424380562, - "ch.28.send.12.pon": 3849279026, - "ch.28.send.12.ind": 1244098652, - "ch.28.send.12.mode": 2968419234, - "ch.28.send.12.plink": 440345479, - "ch.28.send.12.pan": 455993730, - "ch.28.send.13": 4223346880, - "ch.28.send.13.on": 3533384582, - "ch.28.send.13.lvl": 660611020, - "ch.28.send.13.pon": 2564792376, - "ch.28.send.13.ind": 179778682, - "ch.28.send.13.mode": 2040402340, - "ch.28.send.13.plink": 665772377, - "ch.28.send.13.pan": 680566072, - "ch.28.send.14": 602306959, - "ch.28.send.14.on": 1009467905, - "ch.28.send.14.lvl": 953589734, - "ch.28.send.14.pon": 3304930806, - "ch.28.send.14.ind": 1468957600, - "ch.28.send.14.mode": 3017642846, - "ch.28.send.14.plink": 465261219, - "ch.28.send.14.pan": 2415937350, - "ch.28.send.15": 1439255418, - "ch.28.send.15.on": 322682807, - "ch.28.send.15.lvl": 115882192, - "ch.28.send.15.pon": 3362375676, - "ch.28.send.15.ind": 1396812862, - "ch.28.send.15.mode": 2764892480, - "ch.28.send.15.plink": 121138245, - "ch.28.send.15.pan": 168659340, - "ch.28.send.16": 2280944649, - "ch.28.send.16.on": 1925920306, - "ch.28.send.16.lvl": 707312442, - "ch.28.send.16.pon": 3798016026, - "ch.28.send.16.ind": 248101540, - "ch.28.send.16.mode": 2902371914, - "ch.28.send.16.plink": 701975871, - "ch.28.send.16.pan": 558042730, - "ch.28.send.MX1": 4003087025, - "ch.28.send.MX1.on": 2322986955, - "ch.28.send.MX1.lvl": 452174591, - "ch.28.send.MX1.pon": 526847091, - "ch.28.send.MX1.ind": 1567108721, - "ch.28.send.MX1.mode": 4034449228, - "ch.28.send.MX1.plink": 161961934, - "ch.28.send.MX1.pan": 359317613, - "ch.28.send.MX2": 3197910084, - "ch.28.send.MX2.on": 688784336, - "ch.28.send.MX2.lvl": 1111887584, - "ch.28.send.MX2.pon": 473337422, - "ch.28.send.MX2.ind": 290493200, - "ch.28.send.MX2.mode": 2925880137, - "ch.28.send.MX2.plink": 845922763, - "ch.28.send.MX2.pan": 412822120, - "ch.28.send.MX3": 1816022119, - "ch.28.send.MX3.on": 2782966438, - "ch.28.send.MX3.lvl": 592811186, - "ch.28.send.MX3.pon": 3904473577, - "ch.28.send.MX3.ind": 3602515695, - "ch.28.send.MX3.mode": 3791197066, - "ch.28.send.MX3.plink": 3195369908, - "ch.28.send.MX3.pan": 3419104791, - "ch.28.send.MX4": 2167048376, - "ch.28.send.MX4.on": 2765012646, - "ch.28.send.MX4.lvl": 2057568434, - "ch.28.send.MX4.pon": 3236173283, - "ch.28.send.MX4.ind": 2349214374, - "ch.28.send.MX4.mode": 3150351292, - "ch.28.send.MX4.plink": 3936263614, - "ch.28.send.MX4.pan": 3550493213, - "ch.28.send.MX5": 3385629211, - "ch.28.send.MX5.on": 1901776503, - "ch.28.send.MX5.lvl": 1821475028, - "ch.28.send.MX5.pon": 2374619578, - "ch.28.send.MX5.ind": 72707781, - "ch.28.send.MX5.mode": 2666154421, - "ch.28.send.MX5.plink": 2009407063, - "ch.28.send.MX5.pan": 2269349260, - "ch.28.send.MX6": 1993250350, - "ch.28.send.MX6.on": 1013525132, - "ch.28.send.MX6.lvl": 3526806745, - "ch.28.send.MX6.pon": 2918473137, - "ch.28.send.MX6.ind": 1095465748, - "ch.28.send.MX6.mode": 2724892082, - "ch.28.send.MX6.plink": 3291386460, - "ch.28.send.MX6.pan": 3067673023, - "ch.28.send.MX7": 507160433, - "ch.28.send.MX7.on": 876837749, - "ch.28.send.MX7.lvl": 1613292827, - "ch.28.send.MX7.pon": 2177815600, - "ch.28.send.MX7.ind": 582139630, - "ch.28.send.MX7.mode": 2257042771, - "ch.28.send.MX7.plink": 1474284349, - "ch.28.send.MX7.pan": 1650483222, - "ch.28.send.MX8": 3923592727, - "ch.28.send.MX8.on": 1628329855, - "ch.28.send.MX8.lvl": 2726011163, - "ch.28.send.MX8.pon": 1450595888, - "ch.28.send.MX8.ind": 952522601, - "ch.28.send.MX8.mode": 933212453, - "ch.28.send.MX8.plink": 2159545661, - "ch.28.send.MX8.pan": 2377708054, - "ch.28.tapwid": 965559079, - "ch.28.postins": 2834082812, - "ch.28.postins.on": 1453023027, - "ch.28.postins.mode": 2606651572, - "ch.28.postins.ins": 4102663051, - "ch.28.postins.w": 2914943668, - "ch.28.postins.$stat": 2372540291, - "ch.28.tags": 4281351411, - "ch.28.$fdr": 3226323794, - "ch.28.$mute": 2441227972, - "ch.28.$muteovr": 1773611410, - "ch.29": 1905652992, - "ch.29.in": 3788565253, - "ch.29.in.set": 275186133, - "ch.29.in.set.$mode": 245699277, - "ch.29.in.set.srcauto": 952685705, - "ch.29.in.set.altsrc": 2858900654, - "ch.29.in.set.inv": 346572732, - "ch.29.in.set.trim": 1203329500, - "ch.29.in.set.bal": 3146182789, - "ch.29.in.set.$g": 3840690917, - "ch.29.in.set.$vph": 4191909940, - "ch.29.in.set.dlymode": 1742071849, - "ch.29.in.set.dly": 1122700944, - "ch.29.in.set.dlyon": 4117373279, - "ch.29.in.conn": 4232403785, - "ch.29.in.conn.grp": 1997398319, - "ch.29.in.conn.in": 4193556812, - "ch.29.in.conn.altgrp": 2499596979, - "ch.29.in.conn.altin": 1749102073, - "ch.29.flt": 4187126003, - "ch.29.flt.lc": 2047520506, - "ch.29.flt.lcf": 3714227615, - "ch.29.flt.hc": 3769332348, - "ch.29.flt.hcf": 2569963235, - "ch.29.flt.tf": 671742757, - "ch.29.flt.mdl": 4118373093, - "ch.29.flt.1": 819531709, - "ch.29.flt.2": 2119745120, - "ch.29.clink": 2868292857, - "ch.29.col": 3232322589, - "ch.29.name": 1318257530, - "ch.29.icon": 121541796, - "ch.29.led": 1588428072, - "ch.29.$col": 4234937817, - "ch.29.$name": 368681995, - "ch.29.$icon": 781691073, - "ch.29.mute": 1718793477, - "ch.29.fdr": 870663922, - "ch.29.pan": 3323619100, - "ch.29.wid": 1514981221, - "ch.29.$solo": 546038542, - "ch.29.$sololed": 3057444523, - "ch.29.solosafe": 2838320574, - "ch.29.mon": 4274979757, - "ch.29.proc": 1558398719, - "ch.29.ptap": 790783736, - "ch.29.$presolo": 3087416465, - "ch.29.peq": 1675073753, - "ch.29.peq.on": 2199093136, - "ch.29.peq.1g": 2045955235, - "ch.29.peq.1f": 4235678553, - "ch.29.peq.1q": 85226675, - "ch.29.peq.2g": 1796500591, - "ch.29.peq.2f": 3986428674, - "ch.29.peq.2q": 3127567487, - "ch.29.peq.3g": 2748992315, - "ch.29.peq.3f": 1986079214, - "ch.29.peq.3q": 791059275, - "ch.29.gate": 728414083, - "ch.29.gate.on": 2746431806, - "ch.29.gate.mdl": 1404014356, - "ch.29.gate.1": 1820740669, - "ch.29.gate.2": 525299091, - "ch.29.gate.3": 2280659009, - "ch.29.gate.4": 1307654548, - "ch.29.gate.5": 9893722, - "ch.29.gate.6": 4013430957, - "ch.29.gate.7": 2547590624, - "ch.29.gate.8": 165272241, - "ch.29.gate.9": 3498028036, - "ch.29.gatesc": 2891520921, - "ch.29.gatesc.type": 2702861599, - "ch.29.gatesc.f": 3732588589, - "ch.29.gatesc.q": 2146374000, - "ch.29.gatesc.src": 3515309445, - "ch.29.gatesc.tap": 2195760866, - "ch.29.gatesc.$solo": 4097992050, - "ch.29.eq": 892507438, - "ch.29.eq.on": 2426214969, - "ch.29.eq.mdl": 1827363963, - "ch.29.eq.mix": 285536625, - "ch.29.eq.$solo": 2766692970, - "ch.29.eq.$solobd": 2870589697, - "ch.29.eq.1": 3970053443, - "ch.29.eq.2": 3175552720, - "ch.29.eq.3": 1935565541, - "ch.29.eq.4": 1408819988, - "ch.29.eq.5": 2303713081, - "ch.29.eq.6": 4016964771, - "ch.29.eq.7": 2818721328, - "ch.29.eq.8": 413112778, - "ch.29.eq.9": 3186889332, - "ch.29.eq.10": 4182751389, - "ch.29.eq.11": 3660875232, - "ch.29.eq.12": 2863261818, - "ch.29.eq.13": 2147378377, - "ch.29.eq.14": 2338022667, - "ch.29.eq.15": 1991258701, - "ch.29.eq.16": 1554364343, - "ch.29.eq.17": 2475497434, - "ch.29.eq.18": 1342151593, - "ch.29.eq.19": 727094382, - "ch.29.eq.20": 1086024148, - "ch.29.dyn": 2595596356, - "ch.29.dyn.on": 1526007312, - "ch.29.dyn.mdl": 3179279094, - "ch.29.dyn.mix": 34873846, - "ch.29.dyn.gain": 2989290870, - "ch.29.dyn.1": 3646370194, - "ch.29.dyn.2": 2681227183, - "ch.29.dyn.3": 3242524217, - "ch.29.dyn.4": 1768801331, - "ch.29.dyn.5": 132897672, - "ch.29.dyn.6": 2851430642, - "ch.29.dyn.7": 1576957711, - "ch.29.dyn.8": 1987521926, - "ch.29.dyn.9": 3029070739, - "ch.29.dynxo": 394489115, - "ch.29.dynxo.depth": 4224803812, - "ch.29.dynxo.type": 4111319297, - "ch.29.dynxo.f": 903191140, - "ch.29.dynxo.$solo": 3948423334, - "ch.29.dynsc": 3976328766, - "ch.29.dynsc.type": 1721566787, - "ch.29.dynsc.f": 1195705590, - "ch.29.dynsc.q": 1015663221, - "ch.29.dynsc.src": 2063303011, - "ch.29.dynsc.tap": 1118734312, - "ch.29.dynsc.$solo": 127995785, - "ch.29.preins": 2184182534, - "ch.29.preins.on": 1450766274, - "ch.29.preins.ins": 3055425006, - "ch.29.preins.$stat": 2130855156, - "ch.29.main": 3240144852, - "ch.29.main.1": 286085651, - "ch.29.main.1.on": 920619926, - "ch.29.main.1.lvl": 1273476302, - "ch.29.main.1.pre": 414419732, - "ch.29.main.2": 296714441, - "ch.29.main.2.on": 1673120594, - "ch.29.main.2.lvl": 2331112626, - "ch.29.main.2.pre": 2766883704, - "ch.29.main.3": 1819098410, - "ch.29.main.3.on": 1872575674, - "ch.29.main.3.lvl": 988090602, - "ch.29.main.3.pre": 779180592, - "ch.29.main.4": 2389652568, - "ch.29.main.4.on": 871675770, - "ch.29.main.4.lvl": 4140621354, - "ch.29.main.4.pre": 3905261424, - "ch.29.send": 383760371, - "ch.29.send.1": 3526670927, - "ch.29.send.1.on": 1571520989, - "ch.29.send.1.lvl": 1292066205, - "ch.29.send.1.pon": 718048183, - "ch.29.send.1.ind": 1233647444, - "ch.29.send.1.mode": 1443437883, - "ch.29.send.1.plink": 757224436, - "ch.29.send.1.pan": 2955347292, - "ch.29.send.2": 2254802754, - "ch.29.send.2.on": 2731438719, - "ch.29.send.2.lvl": 3420887343, - "ch.29.send.2.pon": 1877560149, - "ch.29.send.2.ind": 3043047398, - "ch.29.send.2.mode": 854495983, - "ch.29.send.2.plink": 1177376787, - "ch.29.send.2.pan": 135196862, - "ch.29.send.3": 3858384324, - "ch.29.send.3.on": 249710592, - "ch.29.send.3.lvl": 3755613264, - "ch.29.send.3.pon": 1106790442, - "ch.29.send.3.ind": 592765553, - "ch.29.send.3.mode": 1443505717, - "ch.29.send.3.plink": 1581077269, - "ch.29.send.3.pan": 3164456009, - "ch.29.send.4": 2429577966, - "ch.29.send.4.on": 1541929689, - "ch.29.send.4.lvl": 983573505, - "ch.29.send.4.pon": 422561115, - "ch.29.send.4.ind": 1193590400, - "ch.29.send.4.mode": 4239364823, - "ch.29.send.4.plink": 4214081644, - "ch.29.send.4.pan": 311131224, - "ch.29.send.5": 1162920981, - "ch.29.send.5.on": 2653121609, - "ch.29.send.5.lvl": 3500884113, - "ch.29.send.5.pon": 2966848459, - "ch.29.send.5.ind": 3022421552, - "ch.29.send.5.mode": 1672086657, - "ch.29.send.5.plink": 2071706729, - "ch.29.send.5.pan": 1287317512, - "ch.29.send.6": 3540709039, - "ch.29.send.6.on": 1854898774, - "ch.29.send.6.lvl": 2818006542, - "ch.29.send.6.pon": 193497844, - "ch.29.send.6.ind": 1501296343, - "ch.29.send.6.mode": 3583461144, - "ch.29.send.6.plink": 2859790398, - "ch.29.send.6.pan": 618858015, - "ch.29.send.7": 2190196386, - "ch.29.send.7.on": 9596774, - "ch.29.send.7.lvl": 704289598, - "ch.29.send.7.pon": 1300581828, - "ch.29.send.7.ind": 3950327207, - "ch.29.send.7.mode": 3018641523, - "ch.29.send.7.plink": 3428784510, - "ch.29.send.7.pan": 1391129519, - "ch.29.send.8": 3713825339, - "ch.29.send.8.on": 3855027012, - "ch.29.send.8.lvl": 3301891948, - "ch.29.send.8.pon": 2729510086, - "ch.29.send.8.ind": 3511909685, - "ch.29.send.8.mode": 3553345031, - "ch.29.send.8.plink": 2019840623, - "ch.29.send.8.pan": 2282456845, - "ch.29.send.9": 3974273614, - "ch.29.send.9.on": 2309753967, - "ch.29.send.9.lvl": 2030297279, - "ch.29.send.9.pon": 3603694533, - "ch.29.send.9.ind": 2642978838, - "ch.29.send.9.mode": 4289255355, - "ch.29.send.9.plink": 3174259828, - "ch.29.send.9.pan": 3693578414, - "ch.29.send.10": 3038004363, - "ch.29.send.10.on": 4037737959, - "ch.29.send.10.lvl": 2931240619, - "ch.29.send.10.pon": 3919190582, - "ch.29.send.10.ind": 166454093, - "ch.29.send.10.mode": 584171284, - "ch.29.send.10.plink": 2243654319, - "ch.29.send.10.pan": 3591358831, - "ch.29.send.11": 3717021782, - "ch.29.send.11.on": 1771776098, - "ch.29.send.11.lvl": 2705794321, - "ch.29.send.11.pon": 2880114184, - "ch.29.send.11.ind": 3809237271, - "ch.29.send.11.mode": 54856978, - "ch.29.send.11.plink": 204415685, - "ch.29.send.11.pan": 1791174833, - "ch.29.send.12": 2721425364, - "ch.29.send.12.on": 806029412, - "ch.29.send.12.lvl": 2878912519, - "ch.29.send.12.pon": 2728716034, - "ch.29.send.12.ind": 4129184441, - "ch.29.send.12.mode": 235779592, - "ch.29.send.12.plink": 2341599891, - "ch.29.send.12.pan": 3838480491, - "ch.29.send.13": 2184120290, - "ch.29.send.13.on": 2876967652, - "ch.29.send.13.lvl": 3115627309, - "ch.29.send.13.pon": 3642017540, - "ch.29.send.13.ind": 3719193875, - "ch.29.send.13.mode": 1677547526, - "ch.29.send.13.plink": 323081385, - "ch.29.send.13.pan": 3648855981, - "ch.29.send.14": 2910625085, - "ch.29.send.14.on": 3253402003, - "ch.29.send.14.lvl": 2966800899, - "ch.29.send.14.pon": 3712463214, - "ch.29.send.14.ind": 3726044549, - "ch.29.send.14.mode": 134106732, - "ch.29.send.14.plink": 2732063511, - "ch.29.send.14.pan": 2951565991, - "ch.29.send.15": 762680968, - "ch.29.send.15.on": 3940251461, - "ch.29.send.15.lvl": 2343028969, - "ch.29.send.15.pon": 3182718784, - "ch.29.send.15.ind": 4001422639, - "ch.29.send.15.mode": 3898416202, - "ch.29.send.15.plink": 1796961645, - "ch.29.send.15.pan": 3290463721, - "ch.29.send.16": 1646154699, - "ch.29.send.16.on": 4232774080, - "ch.29.send.16.lvl": 2997816991, - "ch.29.send.16.pon": 2990029946, - "ch.29.send.16.ind": 3593538065, - "ch.29.send.16.mode": 3935846208, - "ch.29.send.16.plink": 2461697851, - "ch.29.send.16.pan": 3768197091, - "ch.29.send.MX1": 3874884795, - "ch.29.send.MX1.on": 2024942434, - "ch.29.send.MX1.lvl": 2872696179, - "ch.29.send.MX1.pon": 2303408209, - "ch.29.send.MX1.ind": 255159306, - "ch.29.send.MX1.mode": 2176783973, - "ch.29.send.MX1.plink": 1935092668, - "ch.29.send.MX1.pan": 2341016671, - "ch.29.send.MX2": 2739585614, - "ch.29.send.MX2.on": 1003108213, - "ch.29.send.MX2.lvl": 2222496129, - "ch.29.send.MX2.pon": 1886607962, - "ch.29.send.MX2.ind": 2156064985, - "ch.29.send.MX2.mode": 3140180584, - "ch.29.send.MX2.plink": 2259674551, - "ch.29.send.MX2.pan": 1952546348, - "ch.29.send.MX3": 1944869501, - "ch.29.send.MX3.on": 504412848, - "ch.29.send.MX3.lvl": 3952040429, - "ch.29.send.MX3.pon": 2306697167, - "ch.29.send.MX3.ind": 4167873736, - "ch.29.send.MX3.mode": 1413912675, - "ch.29.send.MX3.plink": 1933956986, - "ch.29.send.MX3.pan": 1527051201, - "ch.29.send.MX4": 3044833954, - "ch.29.send.MX4.on": 2912057003, - "ch.29.send.MX4.lvl": 1805764083, - "ch.29.send.MX4.pon": 3841979376, - "ch.29.send.MX4.ind": 3275759503, - "ch.29.send.MX4.mode": 1450762831, - "ch.29.send.MX4.plink": 250542973, - "ch.29.send.MX4.pan": 4286736342, - "ch.29.send.MX5": 2585662481, - "ch.29.send.MX5.on": 2577313470, - "ch.29.send.MX5.lvl": 1549247127, - "ch.29.send.MX5.pon": 642124886, - "ch.29.send.MX5.ind": 2920223678, - "ch.29.send.MX5.mode": 4095519345, - "ch.29.send.MX5.plink": 4236837139, - "ch.29.send.MX5.pan": 243918960, - "ch.29.send.MX6": 1785908260, - "ch.29.send.MX6.on": 1924741809, - "ch.29.send.MX6.lvl": 4017962661, - "ch.29.send.MX6.pon": 3190855766, - "ch.29.send.MX6.ind": 2945541597, - "ch.29.send.MX6.mode": 1504767552, - "ch.29.send.MX6.plink": 3899794707, - "ch.29.send.MX6.pan": 4137598064, - "ch.29.send.MX7": 970261883, - "ch.29.send.MX7.on": 3111331164, - "ch.29.send.MX7.lvl": 2885093607, - "ch.29.send.MX7.pon": 4069693772, - "ch.29.send.MX7.ind": 2205743601, - "ch.29.send.MX7.mode": 1933659506, - "ch.29.send.MX7.plink": 3702526105, - "ch.29.send.MX7.pan": 3248104826, - "ch.29.send.MX8": 4129603629, - "ch.29.send.MX8.on": 1653473576, - "ch.29.send.MX8.lvl": 3568661735, - "ch.29.send.MX8.pon": 2780437324, - "ch.29.send.MX8.ind": 1326732706, - "ch.29.send.MX8.mode": 3186463070, - "ch.29.send.MX8.plink": 2079609497, - "ch.29.send.MX8.pan": 1584576378, - "ch.29.tapwid": 902064845, - "ch.29.postins": 3279971698, - "ch.29.postins.on": 2014093805, - "ch.29.postins.mode": 4023266523, - "ch.29.postins.ins": 2847668157, - "ch.29.postins.w": 3371318970, - "ch.29.postins.$stat": 1080112868, - "ch.29.tags": 4177076393, - "ch.29.$fdr": 2812167816, - "ch.29.$mute": 2876398382, - "ch.29.$muteovr": 2304701260, - "ch.30": 1396256534, - "ch.30.in": 1038616286, - "ch.30.in.set": 2767218814, - "ch.30.in.set.$mode": 2818430446, - "ch.30.in.set.srcauto": 3809545131, - "ch.30.in.set.altsrc": 753229678, - "ch.30.in.set.inv": 235989910, - "ch.30.in.set.trim": 4172113461, - "ch.30.in.set.bal": 3427154143, - "ch.30.in.set.$g": 2395791295, - "ch.30.in.set.$vph": 4230992295, - "ch.30.in.set.dlymode": 3506570014, - "ch.30.in.set.dly": 3551688522, - "ch.30.in.set.dlyon": 3280963592, - "ch.30.in.conn": 1817898491, - "ch.30.in.conn.grp": 1823529847, - "ch.30.in.conn.in": 1778845358, - "ch.30.in.conn.altgrp": 1017760905, - "ch.30.in.conn.altin": 3401500659, - "ch.30.flt": 2487842695, - "ch.30.flt.lc": 332486686, - "ch.30.flt.lcf": 1940666120, - "ch.30.flt.hc": 853832712, - "ch.30.flt.hcf": 941853270, - "ch.30.flt.tf": 2203233753, - "ch.30.flt.mdl": 3348185624, - "ch.30.flt.1": 2581586137, - "ch.30.flt.2": 3357665324, - "ch.30.clink": 2660662726, - "ch.30.col": 1249561386, - "ch.30.name": 1917527285, - "ch.30.icon": 834411953, - "ch.30.led": 1887874021, - "ch.30.$col": 3048629389, - "ch.30.$name": 2821509899, - "ch.30.$icon": 1706771376, - "ch.30.mute": 1443284508, - "ch.30.fdr": 644059246, - "ch.30.pan": 389949031, - "ch.30.wid": 3145600004, - "ch.30.$solo": 3715820927, - "ch.30.$sololed": 3257278710, - "ch.30.solosafe": 374699438, - "ch.30.mon": 2021903878, - "ch.30.proc": 3601757338, - "ch.30.ptap": 408230792, - "ch.30.$presolo": 4116943130, - "ch.30.peq": 1215436606, - "ch.30.peq.on": 2985591055, - "ch.30.peq.1g": 2580990708, - "ch.30.peq.1f": 3352349886, - "ch.30.peq.1q": 3509818884, - "ch.30.peq.2g": 1261671152, - "ch.30.peq.2f": 569219517, - "ch.30.peq.2q": 2334024448, - "ch.30.peq.3g": 3207472348, - "ch.30.peq.3f": 2535992201, - "ch.30.peq.3q": 4280481004, - "ch.30.gate": 1486371378, - "ch.30.gate.on": 1173161706, - "ch.30.gate.mdl": 2243505384, - "ch.30.gate.1": 2746511084, - "ch.30.gate.2": 1277132842, - "ch.30.gate.3": 1690740760, - "ch.30.gate.4": 555595813, - "ch.30.gate.5": 3384789187, - "ch.30.gate.6": 639031836, - "ch.30.gate.7": 3467231785, - "ch.30.gate.8": 3875604488, - "ch.30.gate.9": 2745375061, - "ch.30.gatesc": 3649677840, - "ch.30.gatesc.type": 80445606, - "ch.30.gatesc.f": 617552607, - "ch.30.gatesc.q": 1301893474, - "ch.30.gatesc.src": 2346421527, - "ch.30.gatesc.tap": 1352022448, - "ch.30.gatesc.$solo": 3162811288, - "ch.30.eq": 3690706092, - "ch.30.eq.on": 72279876, - "ch.30.eq.mdl": 4181496070, - "ch.30.eq.mix": 2226376380, - "ch.30.eq.$solo": 1632084772, - "ch.30.eq.$solobd": 980677783, - "ch.30.eq.1": 945010678, - "ch.30.eq.2": 810915501, - "ch.30.eq.3": 3897335128, - "ch.30.eq.4": 2689195569, - "ch.30.eq.5": 4255190252, - "ch.30.eq.6": 2076108630, - "ch.30.eq.7": 867264013, - "ch.30.eq.8": 2343462823, - "ch.30.eq.9": 1225108881, - "ch.30.eq.10": 2913022856, - "ch.30.eq.11": 1709390373, - "ch.30.eq.12": 1572346079, - "ch.30.eq.13": 185550708, - "ch.30.eq.14": 3628894310, - "ch.30.eq.15": 721325848, - "ch.30.eq.16": 2834631042, - "ch.30.eq.17": 121366591, - "ch.30.eq.18": 3283161556, - "ch.30.eq.19": 1986549699, - "ch.30.eq.20": 3450487721, - "ch.30.dyn": 2518742615, - "ch.30.dyn.on": 34191699, - "ch.30.dyn.mdl": 1517743896, - "ch.30.dyn.mix": 2396717845, - "ch.30.dyn.gain": 1877818355, - "ch.30.dyn.1": 3806823321, - "ch.30.dyn.2": 2789661420, - "ch.30.dyn.3": 1707985650, - "ch.30.dyn.4": 1702679128, - "ch.30.dyn.5": 14100899, - "ch.30.dyn.6": 3001111609, - "ch.30.dyn.7": 2995824908, - "ch.30.dyn.8": 1911528341, - "ch.30.dyn.9": 3178668152, - "ch.30.dynxo": 596597216, - "ch.30.dynxo.depth": 3160811069, - "ch.30.dynxo.type": 875395458, - "ch.30.dynxo.f": 4271938359, - "ch.30.dynxo.$solo": 1358736845, - "ch.30.dynsc": 2568276301, - "ch.30.dynsc.type": 976092590, - "ch.30.dynsc.f": 1900127339, - "ch.30.dynsc.q": 1744624032, - "ch.30.dynsc.src": 655000302, - "ch.30.dynsc.tap": 1956127069, - "ch.30.dynsc.$solo": 3903574732, - "ch.30.preins": 2741356387, - "ch.30.preins.on": 2142878879, - "ch.30.preins.ins": 2106401499, - "ch.30.preins.$stat": 35514334, - "ch.30.main": 3888013647, - "ch.30.main.1": 3891352328, - "ch.30.main.1.on": 3077752517, - "ch.30.main.1.lvl": 3409616277, - "ch.30.main.1.pre": 2571358543, - "ch.30.main.2": 949099090, - "ch.30.main.2.on": 968367009, - "ch.30.main.2.lvl": 3373286649, - "ch.30.main.2.pre": 629946835, - "ch.30.main.3": 2508901169, - "ch.30.main.3.on": 1483546054, - "ch.30.main.3.lvl": 2520072734, - "ch.30.main.3.pre": 2755526084, - "ch.30.main.4": 3042693827, - "ch.30.main.4.on": 3338521156, - "ch.30.main.4.lvl": 1001778796, - "ch.30.main.4.pre": 137449894, - "ch.30.send": 50009164, - "ch.30.send.1": 1201737584, - "ch.30.send.1.on": 3536161431, - "ch.30.send.1.lvl": 2614976887, - "ch.30.send.1.pon": 1072980701, - "ch.30.send.1.ind": 3847790446, - "ch.30.send.1.mode": 1594062098, - "ch.30.send.1.plink": 1320177159, - "ch.30.send.1.pan": 941230550, - "ch.30.send.2": 2567722077, - "ch.30.send.2.on": 3623264406, - "ch.30.send.2.lvl": 2865678798, - "ch.30.send.2.pon": 2332270388, - "ch.30.send.2.ind": 3998442135, - "ch.30.send.2.mode": 3923711573, - "ch.30.send.2.plink": 797779087, - "ch.30.send.2.pan": 1927160287, - "ch.30.send.3": 2565168147, - "ch.30.send.3.on": 857726959, - "ch.30.send.3.lvl": 1336412479, - "ch.30.send.3.pon": 4023902277, - "ch.30.send.3.ind": 1227006870, - "ch.30.send.3.mode": 3801670753, - "ch.30.send.3.plink": 3319995785, - "ch.30.send.3.pan": 3619447086, - "ch.30.send.4": 3910181097, - "ch.30.send.4.on": 3617991313, - "ch.30.send.4.lvl": 3202221001, - "ch.30.send.4.pon": 2599707939, - "ch.30.send.4.ind": 3311584360, - "ch.30.send.4.mode": 2099306463, - "ch.30.send.4.plink": 2295674327, - "ch.30.send.4.pan": 919514064, - "ch.30.send.5": 975833130, - "ch.30.send.5.on": 779950786, - "ch.30.send.5.lvl": 3221571202, - "ch.30.send.5.pon": 460980872, - "ch.30.send.5.ind": 1149937731, - "ch.30.send.5.mode": 107430482, - "ch.30.send.5.plink": 1707387092, - "ch.30.send.5.pan": 2538970699, - "ch.30.send.6": 208657808, - "ch.30.send.6.on": 1141991610, - "ch.30.send.6.lvl": 3199831274, - "ch.30.send.6.pon": 3771217808, - "ch.30.send.6.ind": 1479855019, - "ch.30.send.6.mode": 1526250251, - "ch.30.send.6.plink": 2571333719, - "ch.30.send.6.pan": 3882738787, - "ch.30.send.7": 1548428541, - "ch.30.send.7.on": 2855434926, - "ch.30.send.7.lvl": 1818906358, - "ch.30.send.7.pon": 2372367740, - "ch.30.send.7.ind": 2549059039, - "ch.30.send.7.mode": 3268146388, - "ch.30.send.7.plink": 2053613890, - "ch.30.send.7.pan": 155317911, - "ch.30.send.8": 3698600508, - "ch.30.send.8.on": 63662773, - "ch.30.send.8.lvl": 2463317733, - "ch.30.send.8.pon": 1890526623, - "ch.30.send.8.ind": 4015513020, - "ch.30.send.8.mode": 1480212167, - "ch.30.send.8.plink": 611155759, - "ch.30.send.8.pan": 1779099252, - "ch.30.send.9": 3985600905, - "ch.30.send.9.on": 176303302, - "ch.30.send.9.lvl": 539623710, - "ch.30.send.9.pon": 1029202660, - "ch.30.send.9.ind": 4138649415, - "ch.30.send.9.mode": 4213231451, - "ch.30.send.9.plink": 15936345, - "ch.30.send.9.pan": 2750589327, - "ch.30.send.10": 63741953, - "ch.30.send.10.on": 2042994797, - "ch.30.send.10.lvl": 2577836178, - "ch.30.send.10.pon": 2076413307, - "ch.30.send.10.ind": 803877416, - "ch.30.send.10.mode": 2839153089, - "ch.30.send.10.plink": 724678798, - "ch.30.send.10.pan": 1548615598, - "ch.30.send.11": 1521735884, - "ch.30.send.11.on": 3514164200, - "ch.30.send.11.lvl": 2216103288, - "ch.30.send.11.pon": 2301194576, - "ch.30.send.11.ind": 3886179194, - "ch.30.send.11.mode": 583866079, - "ch.30.send.11.plink": 1527061284, - "ch.30.send.11.pan": 1778977523, - "ch.30.send.12": 2386239102, - "ch.30.send.12.on": 3085287518, - "ch.30.send.12.lvl": 2230619846, - "ch.30.send.12.pon": 2180403554, - "ch.30.send.12.ind": 1578379548, - "ch.30.send.12.mode": 687936493, - "ch.30.send.12.plink": 3849306586, - "ch.30.send.12.pan": 1883292581, - "ch.30.send.13": 3865186648, - "ch.30.send.13.on": 261469150, - "ch.30.send.13.lvl": 2313740460, - "ch.30.send.13.pon": 2189837185, - "ch.30.send.13.ind": 1447304366, - "ch.30.send.13.mode": 4023483883, - "ch.30.send.13.plink": 1342173296, - "ch.30.send.13.pan": 1494727948, - "ch.30.send.14": 1027865095, - "ch.30.send.14.on": 637902169, - "ch.30.send.14.lvl": 2567546826, - "ch.30.send.14.pon": 1141521107, - "ch.30.send.14.ind": 1071205376, - "ch.30.send.14.mode": 1032727865, - "ch.30.send.14.plink": 780566870, - "ch.30.send.14.pan": 2502411033, - "ch.30.send.15": 2171286194, - "ch.30.send.15.on": 1303738879, - "ch.30.send.15.lvl": 2310766608, - "ch.30.send.15.pon": 2086079624, - "ch.30.send.15.ind": 1634112338, - "ch.30.send.15.mode": 618778679, - "ch.30.send.15.plink": 3941690700, - "ch.30.send.15.pan": 1625425451, - "ch.30.send.16": 3639786305, - "ch.30.send.16.on": 1680194938, - "ch.30.send.16.lvl": 2163189822, - "ch.30.send.16.pon": 1859759706, - "ch.30.send.16.ind": 1544454388, - "ch.30.send.16.mode": 829677893, - "ch.30.send.16.plink": 1099207138, - "ch.30.send.16.pan": 2004349213, - "ch.30.send.MX1": 2140412620, - "ch.30.send.MX1.on": 4257238251, - "ch.30.send.MX1.lvl": 1840614655, - "ch.30.send.MX1.pon": 3834607541, - "ch.30.send.MX1.ind": 3861722515, - "ch.30.send.MX1.mode": 1279167905, - "ch.30.send.MX1.plink": 248742320, - "ch.30.send.MX1.pan": 4058011, - "ch.30.send.MX2": 3152503801, - "ch.30.send.MX2.on": 2216681697, - "ch.30.send.MX2.lvl": 1528721677, - "ch.30.send.MX2.pon": 1233188334, - "ch.30.send.MX2.ind": 3124217717, - "ch.30.send.MX2.mode": 863455652, - "ch.30.send.MX2.plink": 525232171, - "ch.30.send.MX2.pan": 1000112648, - "ch.30.send.MX3": 3163368018, - "ch.30.send.MX3.on": 1091654004, - "ch.30.send.MX3.lvl": 2724188796, - "ch.30.send.MX3.pon": 1581113091, - "ch.30.send.MX3.ind": 3351618409, - "ch.30.send.MX3.mode": 1468471231, - "ch.30.send.MX3.plink": 1948609182, - "ch.30.send.MX3.pan": 1457652541, - "ch.30.send.MX4": 2631641965, - "ch.30.send.MX4.on": 1235785023, - "ch.30.send.MX4.lvl": 245786295, - "ch.30.send.MX4.pon": 142324484, - "ch.30.send.MX4.ind": 1021527083, - "ch.30.send.MX4.mode": 1765854606, - "ch.30.send.MX4.plink": 4064716433, - "ch.30.send.MX4.pan": 201559858, - "ch.30.send.MX5": 2978050582, - "ch.30.send.MX5.on": 2795957298, - "ch.30.send.MX5.lvl": 2995212523, - "ch.30.send.MX5.pon": 1417521954, - "ch.30.send.MX5.ind": 1368547418, - "ch.30.send.MX5.mode": 2346623800, - "ch.30.send.MX5.plink": 1044691231, - "ch.30.send.MX5.pan": 805576500, - "ch.30.send.MX6": 30718147, - "ch.30.send.MX6.on": 2909868037, - "ch.30.send.MX6.lvl": 522892596, - "ch.30.send.MX6.pon": 2831294242, - "ch.30.send.MX6.ind": 1382820513, - "ch.30.send.MX6.mode": 2756493057, - "ch.30.send.MX6.plink": 2122355999, - "ch.30.send.MX6.pan": 2344594228, - "ch.30.send.MX7": 40927116, - "ch.30.send.MX7.on": 3506428568, - "ch.30.send.MX7.lvl": 3975732771, - "ch.30.send.MX7.pon": 3030449751, - "ch.30.send.MX7.ind": 971609813, - "ch.30.send.MX7.mode": 472476723, - "ch.30.send.MX7.plink": 3398284610, - "ch.30.send.MX7.pan": 2950908457, - "ch.30.send.MX8": 1053386850, - "ch.30.send.MX8.on": 2846621343, - "ch.30.send.MX8.lvl": 2258747966, - "ch.30.send.MX8.pon": 3241704536, - "ch.30.send.MX8.ind": 2918808326, - "ch.30.send.MX8.mode": 3276285954, - "ch.30.send.MX8.plink": 3950408517, - "ch.30.send.MX8.pan": 3539753022, - "ch.30.tapwid": 4050850552, - "ch.30.postins": 2137519363, - "ch.30.postins.on": 740666988, - "ch.30.postins.mode": 3337278521, - "ch.30.postins.ins": 3103685492, - "ch.30.postins.w": 2181701195, - "ch.30.postins.$stat": 3366559309, - "ch.30.tags": 400624940, - "ch.30.$fdr": 977751348, - "ch.30.$mute": 3609767721, - "ch.30.$muteovr": 1657928299, - "ch.31": 620165499, - "ch.31.in": 362268240, - "ch.31.in.set": 1285659021, - "ch.31.in.set.$mode": 472548019, - "ch.31.in.set.srcauto": 4207158324, - "ch.31.in.set.altsrc": 2091020719, - "ch.31.in.set.inv": 4292833860, - "ch.31.in.set.trim": 492853639, - "ch.31.in.set.bal": 3332385165, - "ch.31.in.set.$g": 2216915101, - "ch.31.in.set.$vph": 882443766, - "ch.31.in.set.dlymode": 3147098075, - "ch.31.in.set.dly": 1102966328, - "ch.31.in.set.dlyon": 1101734733, - "ch.31.in.conn": 971407561, - "ch.31.in.conn.grp": 895338176, - "ch.31.in.conn.in": 1010130892, - "ch.31.in.conn.altgrp": 3895230923, - "ch.31.in.conn.altin": 531726145, - "ch.31.flt": 2377736861, - "ch.31.flt.lc": 243352820, - "ch.31.flt.lcf": 1973675210, - "ch.31.flt.hc": 607423506, - "ch.31.flt.hcf": 859028660, - "ch.31.flt.tf": 2481111747, - "ch.31.flt.mdl": 3375954578, - "ch.31.flt.1": 2639263795, - "ch.31.flt.2": 3929135142, - "ch.31.clink": 2551666372, - "ch.31.col": 983630920, - "ch.31.name": 1283285959, - "ch.31.icon": 1432352843, - "ch.31.led": 2165753111, - "ch.31.$col": 3107186567, - "ch.31.$name": 3793988665, - "ch.31.$icon": 411873430, - "ch.31.mute": 2025321906, - "ch.31.fdr": 3643948656, - "ch.31.pan": 953621441, - "ch.31.wid": 3424000910, - "ch.31.$solo": 3188825317, - "ch.31.$sololed": 3101929397, - "ch.31.solosafe": 2815189838, - "ch.31.mon": 2646009064, - "ch.31.proc": 3460412504, - "ch.31.ptap": 3161552122, - "ch.31.$presolo": 1987144593, - "ch.31.peq": 2903854580, - "ch.31.peq.on": 3311257349, - "ch.31.peq.1g": 243046974, - "ch.31.peq.1f": 1417237364, - "ch.31.peq.1q": 2513089070, - "ch.31.peq.2g": 2949298778, - "ch.31.peq.2f": 1565127591, - "ch.31.peq.2q": 377291338, - "ch.31.peq.3g": 1518861222, - "ch.31.peq.3f": 176643315, - "ch.31.peq.3q": 3955518358, - "ch.31.gate": 883637184, - "ch.31.gate.on": 169461722, - "ch.31.gate.mdl": 102510184, - "ch.31.gate.1": 2091358254, - "ch.31.gate.2": 548159832, - "ch.31.gate.3": 2419057770, - "ch.31.gate.4": 1241550263, - "ch.31.gate.5": 4039373617, - "ch.31.gate.6": 4193557662, - "ch.31.gate.7": 2823543275, - "ch.31.gate.8": 236773082, - "ch.31.gate.9": 3349174311, - "ch.31.gatesc": 3036473170, - "ch.31.gatesc.type": 375392995, - "ch.31.gatesc.f": 785774313, - "ch.31.gatesc.q": 2391977036, - "ch.31.gatesc.src": 1004700193, - "ch.31.gatesc.tap": 193795486, - "ch.31.gatesc.$solo": 3858471383, - "ch.31.eq": 2993416942, - "ch.31.eq.on": 3420808702, - "ch.31.eq.mdl": 3486715836, - "ch.31.eq.mix": 2879211014, - "ch.31.eq.$solo": 2289407103, - "ch.31.eq.$solobd": 2320394964, - "ch.31.eq.1": 1340769820, - "ch.31.eq.2": 4285450055, - "ch.31.eq.3": 3375764626, - "ch.31.eq.4": 2293272299, - "ch.31.eq.5": 859278374, - "ch.31.eq.6": 1297462972, - "ch.31.eq.7": 345675751, - "ch.31.eq.8": 3289901005, - "ch.31.eq.9": 2124177291, - "ch.31.eq.10": 3812101314, - "ch.31.eq.11": 2189179423, - "ch.31.eq.12": 841062629, - "ch.31.eq.13": 3701872334, - "ch.31.eq.14": 2976059532, - "ch.31.eq.15": 1709694386, - "ch.31.eq.16": 2145257544, - "ch.31.eq.17": 690317701, - "ch.31.eq.18": 3972524526, - "ch.31.eq.19": 2974736681, - "ch.31.eq.20": 4229151299, - "ch.31.dyn": 773722761, - "ch.31.dyn.on": 3577257093, - "ch.31.dyn.mdl": 1557995158, - "ch.31.dyn.mix": 2762634076, - "ch.31.dyn.gain": 180572214, - "ch.31.dyn.1": 1591193863, - "ch.31.dyn.2": 418949898, - "ch.31.dyn.3": 792978596, - "ch.31.dyn.4": 3737433758, - "ch.31.dyn.5": 2565363517, - "ch.31.dyn.6": 652116391, - "ch.31.dyn.7": 3397352362, - "ch.31.dyn.8": 3936531787, - "ch.31.dyn.9": 1145800510, - "ch.31.dynxo": 2701161910, - "ch.31.dynxo.depth": 3365538786, - "ch.31.dynxo.type": 2176732041, - "ch.31.dynxo.f": 3240348236, - "ch.31.dynxo.$solo": 1093447165, - "ch.31.dynsc": 1798106259, - "ch.31.dynsc.type": 3845551883, - "ch.31.dynsc.f": 2962804862, - "ch.31.dynsc.q": 301047565, - "ch.31.dynsc.src": 3494900203, - "ch.31.dynsc.tap": 89461664, - "ch.31.dynsc.$solo": 4062053422, - "ch.31.preins": 2966356817, - "ch.31.preins.on": 358155998, - "ch.31.preins.ins": 855763642, - "ch.31.preins.$stat": 1385018687, - "ch.31.main": 2850176897, - "ch.31.main.1": 4258110846, - "ch.31.main.1.on": 2877429502, - "ch.31.main.1.lvl": 3608800038, - "ch.31.main.1.pre": 4065367276, - "ch.31.main.2": 749943828, - "ch.31.main.2.on": 2938360909, - "ch.31.main.2.lvl": 2074867821, - "ch.31.main.2.pre": 1844474439, - "ch.31.main.3": 1386840463, - "ch.31.main.3.on": 612577650, - "ch.31.main.3.lvl": 1244335442, - "ch.31.main.3.pre": 1706177560, - "ch.31.main.4": 2088732941, - "ch.31.main.4.on": 1597269680, - "ch.31.main.4.lvl": 2407283424, - "ch.31.main.4.pre": 2868970554, - "ch.31.send": 3998860198, - "ch.31.send.1": 1547843450, - "ch.31.send.1.on": 1438603923, - "ch.31.send.1.lvl": 3570872059, - "ch.31.send.1.pon": 955782497, - "ch.31.send.1.ind": 1079799258, - "ch.31.send.1.mode": 1724508466, - "ch.31.send.1.plink": 2524186356, - "ch.31.send.1.pan": 2635323026, - "ch.31.send.2": 2892702311, - "ch.31.send.2.on": 2828813498, - "ch.31.send.2.lvl": 1844734186, - "ch.31.send.2.pon": 2346417040, - "ch.31.send.2.ind": 2490314667, - "ch.31.send.2.mode": 3027796308, - "ch.31.send.2.plink": 2311268045, - "ch.31.send.2.pan": 88064099, - "ch.31.send.3": 2219060233, - "ch.31.send.3.on": 85070739, - "ch.31.send.3.lvl": 2442803195, - "ch.31.send.3.pon": 1911041121, - "ch.31.send.3.ind": 4078884570, - "ch.31.send.3.mode": 1068107425, - "ch.31.send.3.plink": 3130245598, - "ch.31.send.3.pan": 1841467282, - "ch.31.send.4": 4235317491, - "ch.31.send.4.on": 95680181, - "ch.31.send.4.lvl": 2095827685, - "ch.31.send.4.pon": 417601951, - "ch.31.send.4.ind": 459706812, - "ch.31.send.4.mode": 1069167108, - "ch.31.send.4.plink": 1861052829, - "ch.31.send.4.pan": 2697491060, - "ch.31.send.5": 650849664, - "ch.31.send.5.on": 2785496606, - "ch.31.send.5.lvl": 1890546886, - "ch.31.send.5.pon": 2463256428, - "ch.31.send.5.ind": 2452282447, - "ch.31.send.5.mode": 2213935950, - "ch.31.send.5.plink": 2022024804, - "ch.31.send.5.pan": 225955079, - "ch.31.send.6": 4178644250, - "ch.31.send.6.on": 3518731409, - "ch.31.send.6.lvl": 2634247625, - "ch.31.send.6.pon": 1048345379, - "ch.31.send.6.ind": 3867684456, - "ch.31.send.6.mode": 140555698, - "ch.31.send.6.plink": 3004501637, - "ch.31.send.6.pan": 957879760, - "ch.31.send.7": 1894380295, - "ch.31.send.7.on": 460857066, - "ch.31.send.7.lvl": 2403334202, - "ch.31.send.7.pon": 775901504, - "ch.31.send.7.ind": 96164507, - "ch.31.send.7.mode": 2168079600, - "ch.31.send.7.plink": 2126593138, - "ch.31.send.7.pan": 2992873555, - "ch.31.send.8": 3373463462, - "ch.31.send.8.on": 2117410449, - "ch.31.send.8.lvl": 2891773897, - "ch.31.send.8.pon": 287502627, - "ch.31.send.8.ind": 1742180456, - "ch.31.send.8.mode": 2241930839, - "ch.31.send.8.plink": 2220174810, - "ch.31.send.8.pan": 357081040, - "ch.31.send.9": 15770003, - "ch.31.send.9.on": 3633283301, - "ch.31.send.9.lvl": 3191319093, - "ch.31.send.9.pon": 2605162319, - "ch.31.send.9.ind": 3300058220, - "ch.31.send.9.mode": 3665584155, - "ch.31.send.9.plink": 1662236167, - "ch.31.send.9.pan": 904659492, - "ch.31.send.10": 3167935781, - "ch.31.send.10.on": 1589602257, - "ch.31.send.10.lvl": 1509140018, - "ch.31.send.10.pon": 2327840094, - "ch.31.send.10.ind": 3448271621, - "ch.31.send.10.mode": 4266081846, - "ch.31.send.10.plink": 2790864238, - "ch.31.send.10.pan": 227421326, - "ch.31.send.11": 1807353712, - "ch.31.send.11.on": 4134510892, - "ch.31.send.11.lvl": 975378904, - "ch.31.send.11.pon": 2472983280, - "ch.31.send.11.ind": 1261444183, - "ch.31.send.11.mode": 3703999500, - "ch.31.send.11.plink": 2044258308, - "ch.31.send.11.pan": 1439119288, - "ch.31.send.12": 2503266770, - "ch.31.send.12.on": 484405226, - "ch.31.send.12.lvl": 1393890086, - "ch.31.send.12.pon": 2414483458, - "ch.31.send.12.ind": 1824504313, - "ch.31.send.12.mode": 3297240834, - "ch.31.send.12.plink": 2537655994, - "ch.31.send.12.pan": 3461105074, - "ch.31.send.13": 2338051044, - "ch.31.send.13.on": 3029303658, - "ch.31.send.13.lvl": 633974796, - "ch.31.send.13.pon": 2423896612, - "ch.31.send.13.ind": 1630530251, - "ch.31.send.13.mode": 2379712792, - "ch.31.send.13.plink": 1704034640, - "ch.31.send.13.pan": 114896876, - "ch.31.send.14": 977285939, - "ch.31.send.14.on": 1258253029, - "ch.31.send.14.lvl": 854644522, - "ch.31.send.14.pon": 3322065270, - "ch.31.send.14.ind": 2509445693, - "ch.31.send.14.mode": 3109204014, - "ch.31.send.14.plink": 2734992950, - "ch.31.send.14.pan": 3681100262, - "ch.31.send.15": 1148281502, - "ch.31.send.15.on": 1924087411, - "ch.31.send.15.lvl": 1712257008, - "ch.31.send.15.pon": 2719566888, - "ch.31.send.15.ind": 1727205711, - "ch.31.send.15.mode": 3366325540, - "ch.31.send.15.plink": 2760748268, - "ch.31.send.15.pan": 1688336848, - "ch.31.send.16": 3925248485, - "ch.31.send.16.on": 320829390, - "ch.31.send.16.lvl": 553833118, - "ch.31.send.16.pon": 2326159290, - "ch.31.send.16.ind": 1491402513, - "ch.31.send.16.mode": 3207955066, - "ch.31.send.16.plink": 1696670082, - "ch.31.send.16.pan": 3371472042, - "ch.31.send.MX1": 3760035752, - "ch.31.send.MX1.on": 3873178016, - "ch.31.send.MX1.lvl": 1931298894, - "ch.31.send.MX1.pon": 1100388036, - "ch.31.send.MX1.ind": 3704778286, - "ch.31.send.MX1.mode": 4011098596, - "ch.31.send.MX1.plink": 1808518353, - "ch.31.send.MX1.pan": 1396388594, - "ch.31.send.MX2": 603166517, - "ch.31.send.MX2.on": 228879805, - "ch.31.send.MX2.lvl": 2089616605, - "ch.31.send.MX2.pon": 2898728131, - "ch.31.send.MX2.ind": 104138677, - "ch.31.send.MX2.mode": 763348452, - "ch.31.send.MX2.plink": 2198309598, - "ch.31.send.MX2.pan": 1745527037, - "ch.31.send.MX3": 2658764150, - "ch.31.send.MX3.on": 2994199922, - "ch.31.send.MX3.lvl": 645678881, - "ch.31.send.MX3.pon": 2705406837, - "ch.31.send.MX3.ind": 209849264, - "ch.31.send.MX3.mode": 119441550, - "ch.31.send.MX3.plink": 3073230832, - "ch.31.send.MX3.pan": 3275992923, - "ch.31.send.MX4": 560943041, - "ch.31.send.MX4.on": 2503493967, - "ch.31.send.MX4.lvl": 801989443, - "ch.31.send.MX4.pon": 494176117, - "ch.31.send.MX4.ind": 392847455, - "ch.31.send.MX4.mode": 1646028427, - "ch.31.send.MX4.plink": 121273328, - "ch.31.send.MX4.pan": 386949979, - "ch.31.send.MX5": 754269938, - "ch.31.send.MX5.on": 972382897, - "ch.31.send.MX5.lvl": 745243551, - "ch.31.send.MX5.pon": 306734887, - "ch.31.send.MX5.ind": 1508570202, - "ch.31.send.MX5.mode": 981783992, - "ch.31.send.MX5.plink": 1012571410, - "ch.31.send.MX5.pan": 579142457, - "ch.31.send.MX6": 1472938271, - "ch.31.send.MX6.on": 1583546033, - "ch.31.send.MX6.lvl": 2876247970, - "ch.31.send.MX6.pon": 1384493858, - "ch.31.send.MX6.ind": 3613844145, - "ch.31.send.MX6.mode": 2047220149, - "ch.31.send.MX6.plink": 675873055, - "ch.31.send.MX6.pan": 311891764, - "ch.31.send.MX7": 3633393768, - "ch.31.send.MX7.on": 2300108851, - "ch.31.send.MX7.lvl": 3688021375, - "ch.31.send.MX7.pon": 983425577, - "ch.31.send.MX7.ind": 2710402700, - "ch.31.send.MX7.mode": 3593588866, - "ch.31.send.MX7.plink": 1686466932, - "ch.31.send.MX7.pan": 2055341655, - "ch.31.send.MX8": 549885222, - "ch.31.send.MX8.on": 438578200, - "ch.31.send.MX8.lvl": 1020406112, - "ch.31.send.MX8.pon": 2271199268, - "ch.31.send.MX8.ind": 2871798838, - "ch.31.send.MX8.mode": 389768351, - "ch.31.send.MX8.plink": 1906478961, - "ch.31.send.MX8.pan": 1557099602, - "ch.31.tapwid": 3674531190, - "ch.31.postins": 2068154827, - "ch.31.postins.on": 743865428, - "ch.31.postins.mode": 2686819861, - "ch.31.postins.ins": 626098739, - "ch.31.postins.w": 3597885555, - "ch.31.postins.$stat": 1745022196, - "ch.31.tags": 3036153666, - "ch.31.$fdr": 930439338, - "ch.31.$mute": 220873123, - "ch.31.$muteovr": 1704170091, - "ch.32": 4093104297, - "ch.32.in": 4228394197, - "ch.32.in.set": 2369056666, - "ch.32.in.set.$mode": 1283891366, - "ch.32.in.set.srcauto": 2832198831, - "ch.32.in.set.altsrc": 1943034058, - "ch.32.in.set.inv": 1100118398, - "ch.32.in.set.trim": 63996802, - "ch.32.in.set.bal": 2607272263, - "ch.32.in.set.$g": 1557559511, - "ch.32.in.set.$vph": 3611614699, - "ch.32.in.set.dlymode": 1144835912, - "ch.32.in.set.dly": 263506, - "ch.32.in.set.dlyon": 1388382814, - "ch.32.in.conn": 901341827, - "ch.32.in.conn.grp": 2760898975, - "ch.32.in.conn.in": 873102902, - "ch.32.in.conn.altgrp": 3566792425, - "ch.32.in.conn.altin": 1188663699, - "ch.32.flt": 2246790835, - "ch.32.flt.lc": 112400698, - "ch.32.flt.lcf": 3694832036, - "ch.32.flt.hc": 403075900, - "ch.32.flt.hcf": 2046226522, - "ch.32.flt.tf": 2612390245, - "ch.32.flt.mdl": 1841410348, - "ch.32.flt.1": 2759647357, - "ch.32.flt.2": 3808755488, - "ch.32.clink": 3031355666, - "ch.32.col": 1324298110, - "ch.32.name": 1959869721, - "ch.32.icon": 974694149, - "ch.32.led": 3854538217, - "ch.32.$col": 3227781689, - "ch.32.$name": 3169966479, - "ch.32.$icon": 322947772, - "ch.32.mute": 1422597952, - "ch.32.fdr": 1755254690, - "ch.32.pan": 532439467, - "ch.32.wid": 3478984120, - "ch.32.$solo": 3477340747, - "ch.32.$sololed": 1067145230, - "ch.32.solosafe": 3393332673, - "ch.32.mon": 1721525754, - "ch.32.proc": 1121243286, - "ch.32.ptap": 759723452, - "ch.32.$presolo": 3538747554, - "ch.32.peq": 1021664530, - "ch.32.peq.on": 2844637251, - "ch.32.peq.1g": 2775356720, - "ch.32.peq.1f": 3504956058, - "ch.32.peq.1q": 3650792736, - "ch.32.peq.2g": 1067100980, - "ch.32.peq.2f": 385483393, - "ch.32.peq.2q": 2475490596, - "ch.32.peq.3g": 3401058920, - "ch.32.peq.3f": 2677498293, - "ch.32.peq.3q": 137649240, - "ch.32.gate": 1895711158, - "ch.32.gate.on": 1044878444, - "ch.32.gate.mdl": 469604402, - "ch.32.gate.1": 2421851416, - "ch.32.gate.2": 1560009710, - "ch.32.gate.3": 1428179948, - "ch.32.gate.4": 250455001, - "ch.32.gate.5": 3687983311, - "ch.32.gate.6": 229171048, - "ch.32.gate.7": 3835148117, - "ch.32.gate.8": 3530469756, - "ch.32.gate.9": 2358458409, - "ch.32.gatesc": 4037888468, - "ch.32.gatesc.type": 1109051896, - "ch.32.gatesc.f": 2406059147, - "ch.32.gatesc.q": 813613550, - "ch.32.gatesc.src": 510729347, - "ch.32.gatesc.tap": 3816532796, - "ch.32.gatesc.$solo": 1193817790, - "ch.32.eq": 2669412707, - "ch.32.eq.on": 4093403624, - "ch.32.eq.mdl": 4115269266, - "ch.32.eq.mix": 430658472, - "ch.32.eq.$solo": 2081902022, - "ch.32.eq.$solobd": 2196284517, - "ch.32.eq.1": 1878490386, - "ch.32.eq.2": 3231501441, - "ch.32.eq.3": 268296860, - "ch.32.eq.4": 1353226493, - "ch.32.eq.5": 2695464712, - "ch.32.eq.6": 1925688434, - "ch.32.eq.7": 3299711969, - "ch.32.eq.8": 356823547, - "ch.32.eq.9": 1430612061, - "ch.32.eq.10": 4037671140, - "ch.32.eq.11": 1116696625, - "ch.32.eq.12": 2471386699, - "ch.32.eq.13": 3813624952, - "ch.32.eq.14": 582615738, - "ch.32.eq.15": 1935677972, - "ch.32.eq.16": 1163280286, - "ch.32.eq.17": 2536975787, - "ch.32.eq.18": 3881180120, - "ch.32.eq.19": 670487047, - "ch.32.eq.20": 3713845645, - "ch.32.dyn": 2498744251, - "ch.32.dyn.on": 10956807, - "ch.32.dyn.mdl": 3517419457, - "ch.32.dyn.mix": 140477090, - "ch.32.dyn.gain": 2469969264, - "ch.32.dyn.1": 3825818165, - "ch.32.dyn.2": 2768904600, - "ch.32.dyn.3": 1731404230, - "ch.32.dyn.4": 1681123628, - "ch.32.dyn.5": 37335135, - "ch.32.dyn.6": 3023014613, - "ch.32.dyn.7": 3014677048, - "ch.32.dyn.8": 1890669177, - "ch.32.dyn.9": 3201964492, - "ch.32.dynxo": 577868596, - "ch.32.dynxo.depth": 1820867572, - "ch.32.dynxo.type": 2957834803, - "ch.32.dynxo.f": 2201295814, - "ch.32.dynxo.$solo": 21180455, - "ch.32.dynsc": 2547785745, - "ch.32.dynsc.type": 1060994573, - "ch.32.dynsc.f": 474358984, - "ch.32.dynsc.q": 1760385187, - "ch.32.dynsc.src": 618595141, - "ch.32.dynsc.tap": 1892196742, - "ch.32.dynsc.$solo": 1489578668, - "ch.32.preins": 3611434295, - "ch.32.preins.on": 1001293043, - "ch.32.preins.ins": 1711074127, - "ch.32.preins.$stat": 3187807962, - "ch.32.main": 3473461467, - "ch.32.main.1": 3624256180, - "ch.32.main.1.on": 2099275771, - "ch.32.main.1.lvl": 4052238675, - "ch.32.main.1.pre": 3192667513, - "ch.32.main.2": 1384623134, - "ch.32.main.2.on": 1964888427, - "ch.32.main.2.lvl": 2711989539, - "ch.32.main.2.pre": 2481771497, - "ch.32.main.3": 2094340997, - "ch.32.main.3.on": 1523148377, - "ch.32.main.3.lvl": 670120577, - "ch.32.main.3.pre": 1173750907, - "ch.32.main.4": 2795988055, - "ch.32.main.4.on": 33177079, - "ch.32.main.4.lvl": 349332695, - "ch.32.main.4.pre": 3066611869, - "ch.32.send": 2085223160, - "ch.32.send.1": 955414692, - "ch.32.send.1.on": 617995237, - "ch.32.send.1.lvl": 96339253, - "ch.32.send.1.pon": 1640219727, - "ch.32.send.1.ind": 305751916, - "ch.32.send.1.mode": 1880896811, - "ch.32.send.1.plink": 1819491142, - "ch.32.send.1.pan": 3383319844, - "ch.32.send.2": 2142976753, - "ch.32.send.2.on": 2918507944, - "ch.32.send.2.lvl": 2091695176, - "ch.32.send.2.pon": 2602895298, - "ch.32.send.2.ind": 2569544297, - "ch.32.send.2.mode": 1286161404, - "ch.32.send.2.plink": 1200258501, - "ch.32.send.2.pan": 9004241, - "ch.32.send.3": 36959535, - "ch.32.send.3.on": 3701407709, - "ch.32.send.3.lvl": 1306995613, - "ch.32.send.3.pon": 1872240055, - "ch.32.send.3.ind": 3379324244, - "ch.32.send.3.mode": 3989389382, - "ch.32.send.3.plink": 4058139232, - "ch.32.send.3.pan": 1983021916, - "ch.32.send.4": 711067493, - "ch.32.send.4.on": 935145727, - "ch.32.send.4.lvl": 3067436207, - "ch.32.send.4.pon": 452750549, - "ch.32.send.4.ind": 1246805606, - "ch.32.send.4.mode": 3678302024, - "ch.32.send.4.plink": 2747103545, - "ch.32.send.4.pan": 2468394046, - "ch.32.send.5": 1222319838, - "ch.32.send.5.on": 2626014676, - "ch.32.send.5.lvl": 1715316508, - "ch.32.send.5.pon": 2308022870, - "ch.32.send.5.ind": 2948784517, - "ch.32.send.5.mode": 391237366, - "ch.32.send.5.plink": 3382048705, - "ch.32.send.5.pan": 4008529757, - "ch.32.send.6": 186729540, - "ch.32.send.6.on": 2918311271, - "ch.32.send.6.lvl": 3234468135, - "ch.32.send.6.pon": 1627895789, - "ch.32.send.6.ind": 3292875198, - "ch.32.send.6.mode": 1262588467, - "ch.32.send.6.plink": 3337770575, - "ch.32.send.6.pan": 1559062758, - "ch.32.send.7": 1033505681, - "ch.32.send.7.on": 818986716, - "ch.32.send.7.lvl": 3187204884, - "ch.32.send.7.pon": 495509742, - "ch.32.send.7.ind": 1114917213, - "ch.32.send.7.mode": 3875832819, - "ch.32.send.7.plink": 2989451343, - "ch.32.send.7.pan": 2511158149, - "ch.32.send.8": 3049439416, - "ch.32.send.8.on": 1540925923, - "ch.32.send.8.lvl": 2462109227, - "ch.32.send.8.pon": 4005664305, - "ch.32.send.8.ind": 1900385386, - "ch.32.send.8.mode": 2922892717, - "ch.32.send.8.plink": 4161663697, - "ch.32.send.8.pan": 178071138, - "ch.32.send.9": 339793925, - "ch.32.send.9.on": 2694401427, - "ch.32.send.9.lvl": 3793842683, - "ch.32.send.9.pon": 3177206369, - "ch.32.send.9.ind": 3063722202, - "ch.32.send.9.mode": 1558860628, - "ch.32.send.9.plink": 1876131310, - "ch.32.send.9.pan": 1162135954, - "ch.32.send.10": 2646672963, - "ch.32.send.10.on": 2278975007, - "ch.32.send.10.lvl": 684741177, - "ch.32.send.10.pon": 3965003923, - "ch.32.send.10.ind": 1584054182, - "ch.32.send.10.mode": 3453676772, - "ch.32.send.10.plink": 3839800068, - "ch.32.send.10.pan": 2177022698, - "ch.32.send.11": 1191382606, - "ch.32.send.11.on": 3492160154, - "ch.32.send.11.lvl": 1235217747, - "ch.32.send.11.pon": 10893017, - "ch.32.send.11.ind": 848939668, - "ch.32.send.11.mode": 508419865, - "ch.32.send.11.plink": 3394363502, - "ch.32.send.11.pan": 1246474200, - "ch.32.send.12": 1767876604, - "ch.32.send.12.on": 1236682268, - "ch.32.send.12.lvl": 1490940165, - "ch.32.send.12.pon": 174045567, - "ch.32.send.12.ind": 892045554, - "ch.32.send.12.mode": 218141707, - "ch.32.send.12.plink": 3097160072, - "ch.32.send.12.pan": 1774006758, - "ch.32.send.13": 3143718362, - "ch.32.send.13.on": 2449887900, - "ch.32.send.13.lvl": 364492287, - "ch.32.send.13.pon": 902805605, - "ch.32.send.13.ind": 981179232, - "ch.32.send.13.mode": 863009293, - "ch.32.send.13.plink": 3570071954, - "ch.32.send.13.pan": 1937016020, - "ch.32.send.14": 1683205237, - "ch.32.send.14.on": 2073454859, - "ch.32.send.14.lvl": 1156102145, - "ch.32.send.14.pon": 1956697467, - "ch.32.send.14.ind": 762473486, - "ch.32.send.14.mode": 4185357055, - "ch.32.send.14.plink": 3872078460, - "ch.32.send.14.pan": 4276386226, - "ch.32.send.15": 374060128, - "ch.32.send.15.on": 1407577229, - "ch.32.send.15.lvl": 1056612347, - "ch.32.send.15.pon": 63811425, - "ch.32.send.15.ind": 790521084, - "ch.32.send.15.mode": 304775393, - "ch.32.send.15.plink": 2652129926, - "ch.32.send.15.pan": 1357750688, - "ch.32.send.16": 3365800707, - "ch.32.send.16.on": 863389960, - "ch.32.send.16.lvl": 244732845, - "ch.32.send.16.pon": 121452615, - "ch.32.send.16.ind": 921031514, - "ch.32.send.16.mode": 3177518752, - "ch.32.send.16.plink": 3481756448, - "ch.32.send.16.pan": 1814492878, - "ch.32.send.MX1": 3053167614, - "ch.32.send.MX1.on": 898073695, - "ch.32.send.MX1.lvl": 650067987, - "ch.32.send.MX1.pon": 432988428, - "ch.32.send.MX1.ind": 2021760239, - "ch.32.send.MX1.mode": 309985288, - "ch.32.send.MX1.plink": 801138905, - "ch.32.send.MX1.pan": 458294586, - "ch.32.send.MX2": 4233046795, - "ch.32.send.MX2.on": 1499807810, - "ch.32.send.MX2.lvl": 3103239201, - "ch.32.send.MX2.pon": 3776455487, - "ch.32.send.MX2.ind": 2732009076, - "ch.32.send.MX2.mode": 674403333, - "ch.32.send.MX2.plink": 3406490282, - "ch.32.send.MX2.pan": 3020412721, - "ch.32.send.MX3": 619673888, - "ch.32.send.MX3.on": 1269564880, - "ch.32.send.MX3.lvl": 233087309, - "ch.32.send.MX3.pon": 1447596655, - "ch.32.send.MX3.ind": 3503479405, - "ch.32.send.MX3.mode": 864802822, - "ch.32.send.MX3.plink": 2153433818, - "ch.32.send.MX3.pan": 2391072353, - "ch.32.send.MX4": 1215913599, - "ch.32.send.MX4.on": 2847089104, - "ch.32.send.MX4.lvl": 672992558, - "ch.32.send.MX4.pon": 1747246703, - "ch.32.send.MX4.ind": 1538519978, - "ch.32.send.MX4.mode": 1052637714, - "ch.32.send.MX4.plink": 1047146202, - "ch.32.send.MX4.pan": 1286115937, - "ch.32.send.MX5": 119123412, - "ch.32.send.MX5.on": 2655250449, - "ch.32.send.MX5.lvl": 3636623991, - "ch.32.send.MX5.pon": 1564544118, - "ch.32.send.MX5.ind": 558467011, - "ch.32.send.MX5.mode": 2540144209, - "ch.32.send.MX5.plink": 1932369139, - "ch.32.send.MX5.pan": 1464021136, - "ch.32.send.MX6": 795684833, - "ch.32.send.MX6.on": 2779407390, - "ch.32.send.MX6.lvl": 4171761285, - "ch.32.send.MX6.pon": 2466601078, - "ch.32.send.MX6.ind": 1193783224, - "ch.32.send.MX6.mode": 1930172960, - "ch.32.send.MX6.plink": 1760121075, - "ch.32.send.MX6.pan": 2172576912, - "ch.32.send.MX7": 1624776510, - "ch.32.send.MX7.on": 1881705703, - "ch.32.send.MX7.lvl": 1096528519, - "ch.32.send.MX7.pon": 1826477740, - "ch.32.send.MX7.ind": 2435117996, - "ch.32.send.MX7.mode": 4217118831, - "ch.32.send.MX7.plink": 2527389497, - "ch.32.send.MX7.pan": 2812541658, - "ch.32.send.MX8": 2804654416, - "ch.32.send.MX8.on": 3884091683, - "ch.32.send.MX8.lvl": 3746832007, - "ch.32.send.MX8.pon": 3892254892, - "ch.32.send.MX8.ind": 2646481607, - "ch.32.send.MX8.mode": 3714647163, - "ch.32.send.MX8.plink": 3186594105, - "ch.32.send.MX8.pan": 3431113946, - "ch.32.tapwid": 4065408580, - "ch.32.postins": 1692424206, - "ch.32.postins.on": 384019649, - "ch.32.postins.mode": 3185678330, - "ch.32.postins.ins": 3940453160, - "ch.32.postins.w": 3888000694, - "ch.32.postins.$stat": 2816134691, - "ch.32.tags": 3965906032, - "ch.32.$fdr": 1691879864, - "ch.32.$mute": 142226469, - "ch.32.$muteovr": 2739556457, - "ch.33": 1911893271, - "ch.33.in": 3568843093, - "ch.33.in.set": 2143609084, - "ch.33.in.set.$mode": 582409144, - "ch.33.in.set.srcauto": 645216633, - "ch.33.in.set.altsrc": 134322396, - "ch.33.in.set.inv": 962721056, - "ch.33.in.set.trim": 2397487831, - "ch.33.in.set.bal": 2532666433, - "ch.33.in.set.$g": 1501431305, - "ch.33.in.set.$vph": 68098273, - "ch.33.in.set.dlymode": 1398843164, - "ch.33.in.set.dly": 4267912780, - "ch.33.in.set.dlyon": 166931306, - "ch.33.in.conn": 757572061, - "ch.33.in.conn.grp": 1948593157, - "ch.33.in.conn.in": 1054228200, - "ch.33.in.conn.altgrp": 3192076848, - "ch.33.in.conn.altin": 3720534562, - "ch.33.flt": 390907401, - "ch.33.flt.lc": 2530492368, - "ch.33.flt.lcf": 1679434728, - "ch.33.flt.hc": 4226088070, - "ch.33.flt.hcf": 3973500406, - "ch.33.flt.tf": 1783939951, - "ch.33.flt.mdl": 4014829240, - "ch.33.flt.1": 383659799, - "ch.33.flt.2": 1663283322, - "ch.33.clink": 1666936816, - "ch.33.col": 1010766396, - "ch.33.name": 2898459275, - "ch.33.icon": 1246483263, - "ch.33.led": 1972227867, - "ch.33.$col": 2729770387, - "ch.33.$name": 3594353245, - "ch.33.$icon": 2059832930, - "ch.33.mute": 882782006, - "ch.33.fdr": 933265220, - "ch.33.pan": 652558501, - "ch.33.wid": 4025288290, - "ch.33.$solo": 3219578097, - "ch.33.$sololed": 1073831423, - "ch.33.solosafe": 2224087231, - "ch.33.mon": 2597095964, - "ch.33.proc": 3489545588, - "ch.33.ptap": 324527246, - "ch.33.$presolo": 3530476764, - "ch.33.peq": 2809541896, - "ch.33.peq.on": 3069862137, - "ch.33.peq.1g": 316336986, - "ch.33.peq.1f": 1658202736, - "ch.33.peq.1q": 2586758122, - "ch.33.peq.2g": 2687423806, - "ch.33.peq.2f": 1323839979, - "ch.33.peq.2q": 639140686, - "ch.33.peq.3g": 1781146194, - "ch.33.peq.3f": 438487839, - "ch.33.peq.3q": 4029135970, - "ch.33.gate": 1623159364, - "ch.33.gate.on": 3956815812, - "ch.33.gate.mdl": 3549754343, - "ch.33.gate.1": 2694566906, - "ch.33.gate.2": 1329073500, - "ch.33.gate.3": 1826233118, - "ch.33.gate.4": 523654251, - "ch.33.gate.5": 3415766941, - "ch.33.gate.6": 501879018, - "ch.33.gate.7": 3436600887, - "ch.33.gate.8": 3928512526, - "ch.33.gate.9": 2630521179, - "ch.33.gatesc": 3765510998, - "ch.33.gatesc.type": 1254077526, - "ch.33.gatesc.f": 3646440124, - "ch.33.gatesc.q": 2567965721, - "ch.33.gatesc.src": 3596604140, - "ch.33.gatesc.tap": 2785698163, - "ch.33.gatesc.$solo": 2348515400, - "ch.33.eq": 2240527843, - "ch.33.eq.on": 4291580866, - "ch.33.eq.mdl": 4252633608, - "ch.33.eq.mix": 2323334066, - "ch.33.eq.$solo": 2035623348, - "ch.33.eq.$solobd": 2055130887, - "ch.33.eq.1": 868713400, - "ch.33.eq.2": 902618235, - "ch.33.eq.3": 3805140246, - "ch.33.eq.4": 2765657303, - "ch.33.eq.5": 31034754, - "ch.33.eq.6": 2146939672, - "ch.33.eq.7": 796765147, - "ch.33.eq.8": 2440342529, - "ch.33.eq.9": 1316316215, - "ch.33.eq.10": 2983855870, - "ch.33.eq.11": 1633640363, - "ch.33.eq.12": 1669225169, - "ch.33.eq.13": 276779762, - "ch.33.eq.14": 3532264256, - "ch.33.eq.15": 797969422, - "ch.33.eq.16": 2911252868, - "ch.33.eq.17": 218573361, - "ch.33.eq.18": 3206949330, - "ch.33.eq.19": 2082923181, - "ch.33.eq.20": 3358379879, - "ch.33.dyn": 2660825581, - "ch.33.dyn.on": 4206756841, - "ch.33.dyn.mdl": 3007000971, - "ch.33.dyn.mix": 2853748364, - "ch.33.dyn.gain": 743768741, - "ch.33.dyn.1": 3915149139, - "ch.33.dyn.2": 2659082758, - "ch.33.dyn.3": 1589553112, - "ch.33.dyn.4": 1497426546, - "ch.33.dyn.5": 157469001, - "ch.33.dyn.6": 2807602867, - "ch.33.dyn.7": 2852426086, - "ch.33.dyn.8": 1697044271, - "ch.33.dyn.9": 3301382610, - "ch.33.dynxo": 729454266, - "ch.33.dynxo.depth": 1448422299, - "ch.33.dynxo.type": 2535604116, - "ch.33.dynxo.f": 1464604961, - "ch.33.dynxo.$solo": 3213324553, - "ch.33.dynsc": 2343678919, - "ch.33.dynsc.type": 1872865120, - "ch.33.dynsc.f": 1312923845, - "ch.33.dynsc.q": 3280367430, - "ch.33.dynsc.src": 875045464, - "ch.33.dynsc.tap": 2038555603, - "ch.33.dynsc.$solo": 3292463626, - "ch.33.preins": 2853890565, - "ch.33.preins.on": 1809416396, - "ch.33.preins.ins": 3413990680, - "ch.33.preins.$stat": 1134213917, - "ch.33.main": 3384543933, - "ch.33.main.1": 99855562, - "ch.33.main.1.on": 4114162693, - "ch.33.main.1.lvl": 561072213, - "ch.33.main.1.pre": 325919759, - "ch.33.main.2": 110740320, - "ch.33.main.2.on": 4248527356, - "ch.33.main.2.lvl": 1901299892, - "ch.33.main.2.pre": 1057809518, - "ch.33.main.3": 1669538419, - "ch.33.main.3.on": 2829292555, - "ch.33.main.3.lvl": 1845194691, - "ch.33.main.3.pre": 1652014729, - "ch.33.main.4": 2539224097, - "ch.33.main.4.on": 3338870020, - "ch.33.main.4.lvl": 3817554860, - "ch.33.main.4.pre": 2245263078, - "ch.33.send": 1995884978, - "ch.33.send.1": 866566158, - "ch.33.send.1.on": 3683882519, - "ch.33.send.1.lvl": 320586231, - "ch.33.send.1.pon": 1852016477, - "ch.33.send.1.ind": 4053869294, - "ch.33.send.1.mode": 3706952948, - "ch.33.send.1.plink": 836772595, - "ch.33.send.1.pan": 2319391318, - "ch.33.send.2": 2232478139, - "ch.33.send.2.on": 2876691473, - "ch.33.send.2.lvl": 3944675401, - "ch.33.send.2.pon": 3361794979, - "ch.33.send.2.ind": 2544080360, - "ch.33.send.2.mode": 3331391153, - "ch.33.send.2.plink": 1648703469, - "ch.33.send.2.pan": 1660637264, - "ch.33.send.3": 4242595685, - "ch.33.send.3.on": 2763896431, - "ch.33.send.3.lvl": 3721759423, - "ch.33.send.3.pon": 3254573509, - "ch.33.send.3.ind": 3075494422, - "ch.33.send.3.mode": 3353921064, - "ch.33.send.3.plink": 1467154265, - "ch.33.send.3.pan": 1176580782, - "ch.33.send.4": 621485359, - "ch.33.send.4.on": 2610884630, - "ch.33.send.4.lvl": 1726420046, - "ch.33.send.4.pon": 2291675060, - "ch.33.send.4.ind": 2959899159, - "ch.33.send.4.mode": 3759082982, - "ch.33.send.4.plink": 213694656, - "ch.33.send.4.pan": 4013059167, - "ch.33.send.5": 1311074772, - "ch.33.send.5.on": 996937543, - "ch.33.send.5.lvl": 1533273607, - "ch.33.send.5.pon": 4167949837, - "ch.33.send.5.ind": 668935390, - "ch.33.send.5.mode": 1370873202, - "ch.33.send.5.plink": 1108740544, - "ch.33.send.5.pan": 4078144966, - "ch.33.send.6": 275485806, - "ch.33.send.6.on": 4023888698, - "ch.33.send.6.lvl": 313513066, - "ch.33.send.6.pon": 857699600, - "ch.33.send.6.ind": 104140331, - "ch.33.send.6.mode": 1116230985, - "ch.33.send.6.plink": 3167952309, - "ch.33.send.6.pan": 989539299, - "ch.33.send.7": 944748827, - "ch.33.send.7.on": 2100984878, - "ch.33.send.7.lvl": 2911020406, - "ch.33.send.7.pon": 3388777468, - "ch.33.send.7.ind": 1778911071, - "ch.33.send.7.mode": 725360546, - "ch.33.send.7.plink": 534235349, - "ch.33.send.7.pan": 3499556119, - "ch.33.send.8": 2960765890, - "ch.33.send.8.on": 1134454576, - "ch.33.send.8.lvl": 1729532000, - "ch.33.send.8.pon": 112810266, - "ch.33.send.8.ind": 764498465, - "ch.33.send.8.mode": 1477214621, - "ch.33.send.8.plink": 1094411181, - "ch.33.send.8.pan": 2329864185, - "ch.33.send.9": 429124751, - "ch.33.send.9.on": 3445821505, - "ch.33.send.9.lvl": 1229666713, - "ch.33.send.9.pon": 1781796755, - "ch.33.send.9.ind": 3134223064, - "ch.33.send.9.mode": 1746057034, - "ch.33.send.9.plink": 1870834989, - "ch.33.send.9.pan": 2249101824, - "ch.33.send.10": 2871738241, - "ch.33.send.10.on": 1217669357, - "ch.33.send.10.lvl": 1551288202, - "ch.33.send.10.pon": 661898341, - "ch.33.send.10.ind": 714740538, - "ch.33.send.10.mode": 3957994381, - "ch.33.send.10.plink": 2376197656, - "ch.33.send.10.pan": 1428011435, - "ch.33.send.11": 2074432844, - "ch.33.send.11.on": 4051950440, - "ch.33.send.11.lvl": 1514592032, - "ch.33.send.11.pon": 744054991, - "ch.33.send.11.ind": 1473405356, - "ch.33.send.11.mode": 245195291, - "ch.33.send.11.plink": 4111799078, - "ch.33.send.11.pan": 2119733776, - "ch.33.send.12": 1545431806, - "ch.33.send.12.on": 175377630, - "ch.33.send.12.lvl": 1413773702, - "ch.33.send.12.pon": 1179007841, - "ch.33.send.12.ind": 1516526454, - "ch.33.send.12.mode": 3606150241, - "ch.33.send.12.plink": 2485099724, - "ch.33.send.12.pan": 1232130167, - "ch.33.send.13": 3700890840, - "ch.33.send.13.on": 3009679198, - "ch.33.send.13.lvl": 1209602364, - "ch.33.send.13.pon": 3350616267, - "ch.33.send.13.ind": 1710519544, - "ch.33.send.13.mode": 1373706191, - "ch.33.send.13.plink": 2228201898, - "ch.33.send.13.pan": 1290220265, - "ch.33.send.14": 2903763335, - "ch.33.send.14.on": 2622760409, - "ch.33.send.14.lvl": 1132019794, - "ch.33.send.14.pon": 314166541, - "ch.33.send.14.ind": 1359594626, - "ch.33.send.14.mode": 295585877, - "ch.33.send.14.plink": 2201372016, - "ch.33.send.14.pan": 2228703347, - "ch.33.send.15": 764279346, - "ch.33.send.15.on": 1967370879, - "ch.33.send.15.lvl": 1389057992, - "ch.33.send.15.pon": 874958743, - "ch.33.send.15.ind": 1362534004, - "ch.33.send.15.mode": 206675619, - "ch.33.send.15.plink": 2451664030, - "ch.33.send.15.pan": 2081580216, - "ch.33.send.16": 4261791425, - "ch.33.send.16.on": 1580467450, - "ch.33.send.16.lvl": 786415662, - "ch.33.send.16.pon": 4220118537, - "ch.33.send.16.ind": 1639901214, - "ch.33.send.16.mode": 50585865, - "ch.33.send.16.plink": 1859427364, - "ch.33.send.16.pan": 1363699487, - "ch.33.send.MX1": 719154271, - "ch.33.send.MX1.on": 3706137363, - "ch.33.send.MX1.lvl": 3759047506, - "ch.33.send.MX1.pon": 1725816230, - "ch.33.send.MX1.ind": 1264609891, - "ch.33.send.MX1.mode": 3180968676, - "ch.33.send.MX1.plink": 2429605411, - "ch.33.send.MX1.pan": 2107730368, - "ch.33.send.MX2": 1516462706, - "ch.33.send.MX2.on": 3618195222, - "ch.33.send.MX2.lvl": 3495444246, - "ch.33.send.MX2.pon": 3090964395, - "ch.33.send.MX2.ind": 3166148574, - "ch.33.send.MX2.mode": 2126839535, - "ch.33.send.MX2.plink": 3792039974, - "ch.33.send.MX2.pan": 3426931653, - "ch.33.send.MX3": 2994977497, - "ch.33.send.MX3.on": 170679185, - "ch.33.send.MX3.lvl": 112243388, - "ch.33.send.MX3.pon": 2880685164, - "ch.33.send.MX3.ind": 3162356753, - "ch.33.send.MX3.mode": 3365506386, - "ch.33.send.MX3.plink": 3589223801, - "ch.33.send.MX3.pan": 3910770842, - "ch.33.send.MX4": 4184152862, - "ch.33.send.MX4.on": 3375548308, - "ch.33.send.MX4.lvl": 3486260944, - "ch.33.send.MX4.pon": 3250933905, - "ch.33.send.MX4.ind": 121139715, - "ch.33.send.MX4.mode": 3806310206, - "ch.33.send.MX4.plink": 2886293884, - "ch.33.send.MX4.pan": 3272045727, - "ch.33.send.MX5": 1367700405, - "ch.33.send.MX5.on": 4261431327, - "ch.33.send.MX5.lvl": 3223537142, - "ch.33.send.MX5.pon": 43235138, - "ch.33.send.MX5.ind": 3891967543, - "ch.33.send.MX5.mode": 2947921051, - "ch.33.send.MX5.plink": 407873279, - "ch.33.send.MX5.pan": 43074388, - "ch.33.send.MX6": 2836098152, - "ch.33.send.MX6.on": 249156610, - "ch.33.send.MX6.lvl": 979845610, - "ch.33.send.MX6.pon": 3791078216, - "ch.33.send.MX6.ind": 3949411346, - "ch.33.send.MX6.mode": 436684903, - "ch.33.send.MX6.plink": 3423324917, - "ch.33.send.MX6.pan": 2990389038, - "ch.33.send.MX7": 4293682463, - "ch.33.send.MX7.on": 1427864221, - "ch.33.send.MX7.lvl": 1205561460, - "ch.33.send.MX7.pon": 382463757, - "ch.33.send.MX7.ind": 1234665478, - "ch.33.send.MX7.mode": 1709875905, - "ch.33.send.MX7.plink": 1090674952, - "ch.33.send.MX7.pan": 1309002515, - "ch.33.send.MX8": 806182889, - "ch.33.send.MX8.on": 912479961, - "ch.33.send.MX8.lvl": 886383732, - "ch.33.send.MX8.pon": 1110774029, - "ch.33.send.MX8.ind": 283878731, - "ch.33.send.MX8.mode": 1258829485, - "ch.33.send.MX8.plink": 404374280, - "ch.33.send.MX8.pan": 585981203, - "ch.33.tapwid": 3828525666, - "ch.33.postins": 1744435312, - "ch.33.postins.on": 331024879, - "ch.33.postins.mode": 4038644142, - "ch.33.postins.ins": 180178091, - "ch.33.postins.w": 3941323208, - "ch.33.postins.$stat": 3738602689, - "ch.33.tags": 633478278, - "ch.33.$fdr": 952630478, - "ch.33.$mute": 4222166975, - "ch.33.$muteovr": 1652817915, - "ch.34": 1135663032, - "ch.34.in": 2871512983, - "ch.34.in.set": 1194223107, - "ch.34.in.set.$mode": 4130950456, - "ch.34.in.set.srcauto": 3762654845, - "ch.34.in.set.altsrc": 41495882, - "ch.34.in.set.inv": 3437672377, - "ch.34.in.set.trim": 1843665953, - "ch.34.in.set.bal": 101967256, - "ch.34.in.set.$g": 1221241512, - "ch.34.in.set.$vph": 3229231349, - "ch.34.in.set.dlymode": 2625911668, - "ch.34.in.set.dly": 2326081773, - "ch.34.in.set.dlyon": 3192919138, - "ch.34.in.conn": 2428450992, - "ch.34.in.conn.grp": 3510049727, - "ch.34.in.conn.in": 2389747717, - "ch.34.in.conn.altgrp": 3765084313, - "ch.34.in.conn.altin": 2977865859, - "ch.34.flt": 2295010671, - "ch.34.flt.lc": 160600710, - "ch.34.flt.lcf": 3843499664, - "ch.34.flt.hc": 691136976, - "ch.34.flt.hcf": 433748692, - "ch.34.flt.tf": 2397729457, - "ch.34.flt.mdl": 2890020402, - "ch.34.flt.1": 2723981121, - "ch.34.flt.2": 3846387188, - "ch.34.clink": 2139811902, - "ch.34.col": 1666324754, - "ch.34.name": 1738580301, - "ch.34.icon": 580889529, - "ch.34.led": 2253096557, - "ch.34.$col": 2955427973, - "ch.34.$name": 85742067, - "ch.34.$icon": 548443272, - "ch.34.mute": 1071593412, - "ch.34.fdr": 3781313686, - "ch.34.pan": 1213545647, - "ch.34.wid": 96648844, - "ch.34.$solo": 2952101351, - "ch.34.$sololed": 1543694137, - "ch.34.solosafe": 2567348716, - "ch.34.mon": 1608875854, - "ch.34.proc": 3368957362, - "ch.34.ptap": 1028759296, - "ch.34.$presolo": 1705021787, - "ch.34.peq": 2700990150, - "ch.34.peq.on": 3183165079, - "ch.34.peq.1g": 429466044, - "ch.34.peq.1f": 1556532294, - "ch.34.peq.1q": 2641242540, - "ch.34.peq.2g": 2741908168, - "ch.34.peq.2f": 1389132821, - "ch.34.peq.2q": 532887928, - "ch.34.peq.3g": 1720435732, - "ch.34.peq.3f": 330929505, - "ch.34.peq.3q": 4098683588, - "ch.34.gate": 1544753914, - "ch.34.gate.on": 16253915, - "ch.34.gate.mdl": 2954505777, - "ch.34.gate.1": 2773406788, - "ch.34.gate.2": 1250196706, - "ch.34.gate.3": 1737295904, - "ch.34.gate.4": 602058989, - "ch.34.gate.5": 3336973243, - "ch.34.gate.6": 580678740, - "ch.34.gate.7": 3525614849, - "ch.34.gate.8": 3850020912, - "ch.34.gate.9": 2709397757, - "ch.34.gatesc": 3676573416, - "ch.34.gatesc.type": 945228311, - "ch.34.gatesc.f": 3333954046, - "ch.34.gatesc.q": 2796572827, - "ch.34.gatesc.src": 2779811438, - "ch.34.gatesc.tap": 1773615921, - "ch.34.gatesc.$solo": 1630827571, - "ch.34.eq": 1832637560, - "ch.34.eq.on": 3353541948, - "ch.34.eq.mdl": 3848098686, - "ch.34.eq.mix": 2558788724, - "ch.34.eq.$solo": 3955672049, - "ch.34.eq.$solobd": 1828526658, - "ch.34.eq.1": 1944575054, - "ch.34.eq.2": 4102718421, - "ch.34.eq.3": 2888594912, - "ch.34.eq.4": 2362358825, - "ch.34.eq.5": 298898980, - "ch.34.eq.6": 1742384046, - "ch.34.eq.7": 528266037, - "ch.34.eq.8": 2687673039, - "ch.34.eq.9": 2234837897, - "ch.34.eq.10": 3251656080, - "ch.34.eq.11": 2708662509, - "ch.34.eq.12": 573108583, - "ch.34.eq.13": 4146793420, - "ch.34.eq.14": 3285013006, - "ch.34.eq.15": 1064256832, - "ch.34.eq.16": 2507741898, - "ch.34.eq.17": 454762695, - "ch.34.eq.18": 3610327212, - "ch.34.eq.19": 3000205675, - "ch.34.eq.20": 158699729, - "ch.34.dyn": 2215374111, - "ch.34.dyn.on": 483049675, - "ch.34.dyn.mdl": 2110126285, - "ch.34.dyn.mix": 3255689275, - "ch.34.dyn.gain": 3632929731, - "ch.34.dyn.1": 3354031745, - "ch.34.dyn.2": 2549121844, - "ch.34.dyn.3": 2035073786, - "ch.34.dyn.4": 1230143392, - "ch.34.dyn.5": 425074795, - "ch.34.dyn.6": 3410732513, - "ch.34.dyn.7": 2626794132, - "ch.34.dyn.8": 2090463837, - "ch.34.dyn.9": 2897456896, - "ch.34.dynxo": 126726552, - "ch.34.dynxo.depth": 3739802437, - "ch.34.dynxo.type": 3433888314, - "ch.34.dynxo.f": 163664783, - "ch.34.dynxo.$solo": 89882714, - "ch.34.dynsc": 2243932325, - "ch.34.dynsc.type": 2722429382, - "ch.34.dynsc.f": 1630183459, - "ch.34.dynsc.q": 1944446792, - "ch.34.dynsc.src": 1438872742, - "ch.34.dynsc.tap": 233378661, - "ch.34.dynsc.$solo": 4208121184, - "ch.34.preins": 3058362363, - "ch.34.preins.on": 1947125870, - "ch.34.preins.ins": 3387698858, - "ch.34.preins.$stat": 393737480, - "ch.34.main": 1046077655, - "ch.34.main.1": 860488416, - "ch.34.main.1.on": 887838350, - "ch.34.main.1.lvl": 3114500694, - "ch.34.main.1.pre": 370999420, - "ch.34.main.2": 2244670026, - "ch.34.main.2.on": 2057925630, - "ch.34.main.2.lvl": 2952894502, - "ch.34.main.2.pre": 2491208684, - "ch.34.main.3": 3583101865, - "ch.34.main.3.on": 4172170689, - "ch.34.main.3.lvl": 1976965657, - "ch.34.main.3.pre": 1138697715, - "ch.34.main.4": 1977820523, - "ch.34.main.4.on": 2859770383, - "ch.34.main.4.lvl": 1812756063, - "ch.34.main.4.pre": 1598605829, - "ch.34.send": 96807668, - "ch.34.send.1": 1249392440, - "ch.34.send.1.on": 2515045616, - "ch.34.send.1.lvl": 347105440, - "ch.34.send.1.pon": 4174471386, - "ch.34.send.1.ind": 2150998625, - "ch.34.send.1.mode": 1120174203, - "ch.34.send.1.plink": 3995299451, - "ch.34.send.1.pan": 3706523705, - "ch.34.send.2": 2520763461, - "ch.34.send.2.on": 955358296, - "ch.34.send.2.lvl": 3049898776, - "ch.34.send.2.pon": 3590889778, - "ch.34.send.2.ind": 1329881561, - "ch.34.send.2.mode": 3407576531, - "ch.34.send.2.plink": 758168879, - "ch.34.send.2.pan": 4058847937, - "ch.34.send.3": 2528121563, - "ch.34.send.3.on": 2130893837, - "ch.34.send.3.lvl": 62587565, - "ch.34.send.3.pon": 3793019239, - "ch.34.send.3.ind": 2453643780, - "ch.34.send.3.mode": 1129030723, - "ch.34.send.3.plink": 631260492, - "ch.34.send.3.pan": 3345963788, - "ch.34.send.4": 3957104081, - "ch.34.send.4.on": 1273571636, - "ch.34.send.4.lvl": 920716540, - "ch.34.send.4.pon": 418473078, - "ch.34.send.4.ind": 1616627237, - "ch.34.send.4.mode": 3701835650, - "ch.34.send.4.plink": 2825525040, - "ch.34.send.4.pan": 2677386557, - "ch.34.send.5": 928420114, - "ch.34.send.5.on": 239081737, - "ch.34.send.5.lvl": 4102569937, - "ch.34.send.5.pon": 1358365835, - "ch.34.send.5.ind": 587441520, - "ch.34.send.5.mode": 1738656405, - "ch.34.send.5.plink": 61067381, - "ch.34.send.5.pan": 1469880136, - "ch.34.send.6": 161243544, - "ch.34.send.6.on": 3767297628, - "ch.34.send.6.lvl": 3056897940, - "ch.34.send.6.pon": 2471311726, - "ch.34.send.6.ind": 3434727645, - "ch.34.send.6.mode": 1010091232, - "ch.34.send.6.plink": 979325191, - "ch.34.send.6.pan": 2380851205, - "ch.34.send.7": 1511914405, - "ch.34.send.7.on": 2528474828, - "ch.34.send.7.lvl": 333271652, - "ch.34.send.7.pon": 3013899934, - "ch.34.send.7.ind": 2153286733, - "ch.34.send.7.mode": 2648623271, - "ch.34.send.7.plink": 2557823242, - "ch.34.send.7.pan": 935918197, - "ch.34.send.8": 3746055972, - "ch.34.send.8.on": 1340500494, - "ch.34.send.8.lvl": 514736342, - "ch.34.send.8.pon": 47457180, - "ch.34.send.8.ind": 1646845567, - "ch.34.send.8.mode": 3070211505, - "ch.34.send.8.plink": 3233528360, - "ch.34.send.8.pan": 4210681975, - "ch.34.send.9": 4022652209, - "ch.34.send.9.on": 430779299, - "ch.34.send.9.lvl": 1425343083, - "ch.34.send.9.pon": 915235313, - "ch.34.send.9.ind": 779077802, - "ch.34.send.9.mode": 1601174179, - "ch.34.send.9.plink": 578144654, - "ch.34.send.9.pan": 3509693090, - "ch.34.send.10": 2091492206, - "ch.34.send.10.on": 518561546, - "ch.34.send.10.lvl": 3106414077, - "ch.34.send.10.pon": 1492016405, - "ch.34.send.10.ind": 183810794, - "ch.34.send.10.mode": 734270983, - "ch.34.send.10.plink": 269225335, - "ch.34.send.10.pan": 1833960517, - "ch.34.send.11": 2878395683, - "ch.34.send.11.on": 915990415, - "ch.34.send.11.lvl": 2692211187, - "ch.34.send.11.pon": 1681232559, - "ch.34.send.11.ind": 3383575620, - "ch.34.send.11.mode": 2280707101, - "ch.34.send.11.plink": 913870829, - "ch.34.send.11.pan": 2339696535, - "ch.34.send.12": 3579714801, - "ch.34.send.12.on": 1560853937, - "ch.34.send.12.lvl": 2908363537, - "ch.34.send.12.pon": 1382563849, - "ch.34.send.12.ind": 1127969246, - "ch.34.send.12.mode": 2296225555, - "ch.34.send.12.plink": 3396187891, - "ch.34.send.12.pan": 2669538745, - "ch.34.send.13": 1267009743, - "ch.34.send.13.on": 1958262321, - "ch.34.send.13.lvl": 2435165111, - "ch.34.send.13.pon": 1423454723, - "ch.34.send.13.ind": 839602824, - "ch.34.send.13.mode": 1200460009, - "ch.34.send.13.plink": 731773289, - "ch.34.send.13.pan": 2101825227, - "ch.34.send.14": 2048326656, - "ch.34.send.14.on": 2334696630, - "ch.34.send.14.lvl": 3117698837, - "ch.34.send.14.pon": 822585613, - "ch.34.send.14.ind": 523674114, - "ch.34.send.14.mode": 2737846335, - "ch.34.send.14.plink": 464008735, - "ch.34.send.14.pan": 3057080765, - "ch.34.send.15": 71838549, - "ch.34.send.15.on": 3000531000, - "ch.34.send.15.lvl": 2598526955, - "ch.34.send.15.pon": 1631245319, - "ch.34.send.15.ind": 4164954492, - "ch.34.send.15.mode": 2208105781, - "ch.34.send.15.plink": 3145577717, - "ch.34.send.15.pan": 2078060943, - "ch.34.send.16": 706723502, - "ch.34.send.16.on": 3544760509, - "ch.34.send.16.lvl": 2986502729, - "ch.34.send.16.pon": 1478743969, - "ch.34.send.16.ind": 924342006, - "ch.34.send.16.mode": 2303584843, - "ch.34.send.16.plink": 816486875, - "ch.34.send.16.pan": 2487868625, - "ch.34.send.MX1": 888873249, - "ch.34.send.MX1.on": 1783374144, - "ch.34.send.MX1.lvl": 2341345130, - "ch.34.send.MX1.pon": 1114975204, - "ch.34.send.MX1.ind": 1204701423, - "ch.34.send.MX1.mode": 2573404704, - "ch.34.send.MX1.plink": 747467697, - "ch.34.send.MX1.pan": 566005778, - "ch.34.send.MX2": 4051066324, - "ch.34.send.MX2.on": 221744458, - "ch.34.send.MX2.lvl": 2108720061, - "ch.34.send.MX2.pon": 4045203939, - "ch.34.send.MX2.ind": 3701914004, - "ch.34.send.MX2.mode": 1635733053, - "ch.34.send.MX2.plink": 122821054, - "ch.34.send.MX2.pan": 320177693, - "ch.34.send.MX3": 3337891319, - "ch.34.send.MX3.on": 3536241899, - "ch.34.send.MX3.lvl": 2130427852, - "ch.34.send.MX3.pon": 3156440962, - "ch.34.send.MX3.ind": 747646309, - "ch.34.send.MX3.mode": 3378459550, - "ch.34.send.MX3.plink": 2447328959, - "ch.34.send.MX3.pan": 2019613588, - "ch.34.send.MX4": 1651812936, - "ch.34.send.MX4.on": 673480944, - "ch.34.send.MX4.lvl": 3976866824, - "ch.34.send.MX4.pon": 4003857305, - "ch.34.send.MX4.ind": 3785355823, - "ch.34.send.MX4.mode": 2245847474, - "ch.34.send.MX4.plink": 411613860, - "ch.34.send.MX4.pan": 635326343, - "ch.34.send.MX5": 3874650891, - "ch.34.send.MX5.on": 1194417649, - "ch.34.send.MX5.lvl": 352011670, - "ch.34.send.MX5.pon": 4150525271, - "ch.34.send.MX5.ind": 2931525179, - "ch.34.send.MX5.mode": 716463124, - "ch.34.send.MX5.plink": 564087874, - "ch.34.send.MX5.pan": 214524201, - "ch.34.send.MX6": 3161307070, - "ch.34.send.MX6.on": 2261740030, - "ch.34.send.MX6.lvl": 2311905746, - "ch.34.send.MX6.pon": 2188806487, - "ch.34.send.MX6.ind": 3950345408, - "ch.34.send.MX6.mode": 122744837, - "ch.34.send.MX6.plink": 2553856066, - "ch.34.send.MX6.pan": 2986792233, - "ch.34.send.MX7": 2364246113, - "ch.34.send.MX7.on": 1905113327, - "ch.34.send.MX7.lvl": 2625842388, - "ch.34.send.MX7.pon": 1294797869, - "ch.34.send.MX7.ind": 3607937196, - "ch.34.send.MX7.mode": 3119598351, - "ch.34.send.MX7.plink": 588644840, - "ch.34.send.MX7.pan": 391309363, - "ch.34.send.MX8": 1147954311, - "ch.34.send.MX8.on": 3275244803, - "ch.34.send.MX8.lvl": 3320158420, - "ch.34.send.MX8.pon": 2722417197, - "ch.34.send.MX8.ind": 2355928839, - "ch.34.send.MX8.mode": 1686757155, - "ch.34.send.MX8.plink": 2355003368, - "ch.34.send.MX8.pan": 1921717811, - "ch.34.tapwid": 3750002096, - "ch.34.postins": 2483342705, - "ch.34.postins.on": 3817354782, - "ch.34.postins.mode": 2465692395, - "ch.34.postins.ins": 1608629166, - "ch.34.postins.w": 292988617, - "ch.34.postins.$stat": 1576062132, - "ch.34.tags": 554632084, - "ch.34.$fdr": 716410364, - "ch.34.$mute": 3535222945, - "ch.34.$muteovr": 1881995476, - "ch.35": 3584991149, - "ch.35.in": 2463642860, - "ch.35.in.set": 2286775416, - "ch.35.in.set.$mode": 3814579849, - "ch.35.in.set.srcauto": 866981438, - "ch.35.in.set.altsrc": 3120065982, - "ch.35.in.set.inv": 4035951829, - "ch.35.in.set.trim": 1251258706, - "ch.35.in.set.bal": 3921842028, - "ch.35.in.set.$g": 1816901076, - "ch.35.in.set.$vph": 3730741100, - "ch.35.in.set.dlymode": 4254830094, - "ch.35.in.set.dly": 4046537569, - "ch.35.in.set.dlyon": 1543001368, - "ch.35.in.conn": 1292275684, - "ch.35.in.conn.grp": 1268574048, - "ch.35.in.conn.in": 2327395537, - "ch.35.in.conn.altgrp": 542052121, - "ch.35.in.conn.altin": 4042923523, - "ch.35.flt": 2163376005, - "ch.35.flt.lc": 29034076, - "ch.35.flt.lcf": 3703761801, - "ch.35.flt.hc": 486157082, - "ch.35.flt.hcf": 823045505, - "ch.35.flt.tf": 2529010843, - "ch.35.flt.mdl": 3252286513, - "ch.35.flt.1": 2844323611, - "ch.35.flt.2": 3725385518, - "ch.35.clink": 2747761948, - "ch.35.col": 727556144, - "ch.35.name": 2145155935, - "ch.35.icon": 1687140947, - "ch.35.led": 3967400127, - "ch.35.$col": 3620820863, - "ch.35.$name": 3085599009, - "ch.35.$icon": 146271086, - "ch.35.mute": 1873753722, - "ch.35.fdr": 3859747992, - "ch.35.pan": 896437737, - "ch.35.wid": 3631280214, - "ch.35.$solo": 3429201613, - "ch.35.$sololed": 1430558159, - "ch.35.solosafe": 2770165602, - "ch.35.mon": 1666104048, - "ch.35.proc": 1038968272, - "ch.35.ptap": 3315501746, - "ch.35.$presolo": 1134707497, - "ch.35.peq": 3146843836, - "ch.35.peq.on": 3408400845, - "ch.35.peq.1g": 654785478, - "ch.35.peq.1f": 1320401980, - "ch.35.peq.1q": 2919237334, - "ch.35.peq.2g": 3019899442, - "ch.35.peq.2f": 985311487, - "ch.35.peq.2q": 307319682, - "ch.35.peq.3g": 1442690078, - "ch.35.peq.3f": 776452811, - "ch.35.peq.3q": 3695183214, - "ch.35.gate": 941816200, - "ch.35.gate.on": 1791545477, - "ch.35.gate.mdl": 3129553891, - "ch.35.gate.1": 2034146598, - "ch.35.gate.2": 647279696, - "ch.35.gate.3": 2487013714, - "ch.35.gate.4": 1184032639, - "ch.35.gate.5": 4097197193, - "ch.35.gate.6": 4136393686, - "ch.35.gate.7": 2754928099, - "ch.35.gate.8": 294295746, - "ch.35.gate.9": 3291340847, - "ch.35.gatesc": 3105082986, - "ch.35.gatesc.type": 4162302101, - "ch.35.gatesc.f": 510062376, - "ch.35.gatesc.q": 520201669, - "ch.35.gatesc.src": 224364888, - "ch.35.gatesc.tap": 1376128495, - "ch.35.gatesc.$solo": 2036780213, - "ch.35.eq": 1219224570, - "ch.35.eq.on": 3515993526, - "ch.35.eq.mdl": 3391891700, - "ch.35.eq.mix": 2805281790, - "ch.35.eq.$solo": 361273126, - "ch.35.eq.$solobd": 2394384581, - "ch.35.eq.1": 1435939444, - "ch.35.eq.2": 4212896111, - "ch.35.eq.3": 3449660762, - "ch.35.eq.4": 2199741603, - "ch.35.eq.5": 765438110, - "ch.35.eq.6": 1202291476, - "ch.35.eq.7": 439214607, - "ch.35.eq.8": 3217279989, - "ch.35.eq.9": 2051249475, - "ch.35.eq.10": 3718196490, - "ch.35.eq.11": 2284076967, - "ch.35.eq.12": 767172525, - "ch.35.eq.13": 3627672358, - "ch.35.eq.14": 3049005876, - "ch.35.eq.15": 1614845402, - "ch.35.eq.16": 2051698768, - "ch.35.eq.17": 617369677, - "ch.35.eq.18": 4066380230, - "ch.35.eq.19": 2900513745, - "ch.35.eq.20": 6733419, - "ch.35.dyn": 1628258065, - "ch.35.dyn.on": 902393853, - "ch.35.dyn.mdl": 49534189, - "ch.35.dyn.mix": 5846555, - "ch.35.dyn.gain": 3644617123, - "ch.35.dyn.1": 4276855855, - "ch.35.dyn.2": 2968629778, - "ch.35.dyn.3": 2622188492, - "ch.35.dyn.4": 475091366, - "ch.35.dyn.5": 4132915781, - "ch.35.dyn.6": 3830240463, - "ch.35.dyn.7": 1871896626, - "ch.35.dyn.8": 1335401555, - "ch.35.dyn.9": 3652353990, - "ch.35.dynxo": 1049549486, - "ch.35.dynxo.depth": 339539575, - "ch.35.dynxo.type": 1636406938, - "ch.35.dynxo.f": 2363782383, - "ch.35.dynxo.$solo": 2108663656, - "ch.35.dynsc": 2663276555, - "ch.35.dynsc.type": 83707942, - "ch.35.dynsc.f": 3855763075, - "ch.35.dynsc.q": 858459880, - "ch.35.dynsc.src": 2626211078, - "ch.35.dynsc.tap": 3911599045, - "ch.35.dynsc.$solo": 2184643260, - "ch.35.preins": 3696236073, - "ch.35.preins.on": 2168343209, - "ch.35.preins.ins": 521741413, - "ch.35.preins.$stat": 1636938140, - "ch.35.main": 3595129033, - "ch.35.main.1": 3514417910, - "ch.35.main.1.on": 4244054992, - "ch.35.main.1.lvl": 1907293440, - "ch.35.main.1.pre": 1042645850, - "ch.35.main.2": 1327139244, - "ch.35.main.2.on": 2138116076, - "ch.35.main.2.lvl": 1863902852, - "ch.35.main.2.pre": 3399321566, - "ch.35.main.3": 2130861127, - "ch.35.main.3.on": 317728219, - "ch.35.main.3.lvl": 4022860979, - "ch.35.main.3.pre": 4190062041, - "ch.35.main.4": 2664612405, - "ch.35.main.4.on": 1557111065, - "ch.35.main.4.lvl": 2446837697, - "ch.35.main.4.pre": 2660989371, - "ch.35.send": 322368718, - "ch.35.send.1": 1432684034, - "ch.35.send.1.on": 1465275999, - "ch.35.send.1.lvl": 392047247, - "ch.35.send.1.pon": 3122731509, - "ch.35.send.1.ind": 1792632838, - "ch.35.send.1.mode": 1139987164, - "ch.35.send.1.plink": 3129011270, - "ch.35.send.1.pan": 3011957278, - "ch.35.send.2": 2337469327, - "ch.35.send.2.on": 2076398985, - "ch.35.send.2.lvl": 2934669649, - "ch.35.send.2.pon": 244606987, - "ch.35.send.2.ind": 1701845488, - "ch.35.send.2.mode": 2045874326, - "ch.35.send.2.plink": 276043809, - "ch.35.send.2.pan": 313448648, - "ch.35.send.3": 2459761297, - "ch.35.send.3.on": 909187452, - "ch.35.send.3.lvl": 1956201780, - "ch.35.send.3.pon": 1391010766, - "ch.35.send.3.ind": 554950589, - "ch.35.send.3.mode": 2536541391, - "ch.35.send.3.plink": 3197832435, - "ch.35.send.3.pan": 3628965285, - "ch.35.send.4": 3846873627, - "ch.35.send.4.on": 2564483150, - "ch.35.send.4.lvl": 2112011414, - "ch.35.send.4.pon": 3684509660, - "ch.35.send.4.ind": 2221376063, - "ch.35.send.4.mode": 556282678, - "ch.35.send.4.plink": 301198401, - "ch.35.send.4.pan": 4109853751, - "ch.35.send.5": 1080581800, - "ch.35.send.5.on": 1418627386, - "ch.35.send.5.lvl": 771121770, - "ch.35.send.5.pon": 294348560, - "ch.35.send.5.ind": 1736154155, - "ch.35.send.5.mode": 4249369048, - "ch.35.send.5.plink": 2375236862, - "ch.35.send.5.pan": 4142336483, - "ch.35.send.6": 4272832034, - "ch.35.send.6.on": 3494024434, - "ch.35.send.6.lvl": 1514826706, - "ch.35.send.6.pon": 3174398072, - "ch.35.send.6.ind": 3150263091, - "ch.35.send.6.mode": 3953759917, - "ch.35.send.6.plink": 4072821484, - "ch.35.send.6.pan": 580588603, - "ch.35.send.7": 1443636271, - "ch.35.send.7.on": 167719990, - "ch.35.send.7.lvl": 2357660398, - "ch.35.send.7.pon": 1828206868, - "ch.35.send.7.ind": 4161554935, - "ch.35.send.7.mode": 1208672386, - "ch.35.send.7.plink": 107537636, - "ch.35.send.7.pan": 1758638847, - "ch.35.send.8": 3636078798, - "ch.35.send.8.on": 1119627208, - "ch.35.send.8.lvl": 3555983592, - "ch.35.send.8.pon": 802940962, - "ch.35.send.8.ind": 813210441, - "ch.35.send.8.mode": 92599777, - "ch.35.send.8.plink": 2829502622, - "ch.35.send.8.pan": 2880940401, - "ch.35.send.9": 4049064635, - "ch.35.send.9.on": 1192685513, - "ch.35.send.9.lvl": 3145648401, - "ch.35.send.9.pon": 3657506891, - "ch.35.send.9.ind": 1510181296, - "ch.35.send.9.mode": 2593794341, - "ch.35.send.9.plink": 1814827161, - "ch.35.send.9.pan": 3747311752, - "ch.35.send.10": 2137249657, - "ch.35.send.10.on": 4099304485, - "ch.35.send.10.lvl": 2041576418, - "ch.35.send.10.pon": 4002863818, - "ch.35.send.10.ind": 3014452401, - "ch.35.send.10.mode": 1709356912, - "ch.35.send.10.plink": 310183536, - "ch.35.send.10.pan": 788049270, - "ch.35.send.11": 3571649796, - "ch.35.send.11.on": 1296472992, - "ch.35.send.11.lvl": 1382006984, - "ch.35.send.11.pon": 4185700524, - "ch.35.send.11.ind": 668669531, - "ch.35.send.11.mode": 917920334, - "ch.35.send.11.plink": 3440404075, - "ch.35.send.11.pan": 1936828968, - "ch.35.send.12": 316659238, - "ch.35.send.12.on": 867595670, - "ch.35.send.12.lvl": 2198985518, - "ch.35.send.12.pon": 3897133734, - "ch.35.send.12.ind": 1271758029, - "ch.35.send.12.mode": 480011780, - "ch.35.send.12.plink": 37293617, - "ch.35.send.12.pan": 807107618, - "ch.35.send.13": 1625217424, - "ch.35.send.13.on": 2317778198, - "ch.35.send.13.lvl": 977678900, - "ch.35.send.13.pon": 4074345880, - "ch.35.send.13.ind": 1140680839, - "ch.35.send.13.mode": 3941347330, - "ch.35.send.13.plink": 3121131647, - "ch.35.send.13.pan": 858667220, - "ch.35.send.14": 3101372159, - "ch.35.send.14.on": 2694211217, - "ch.35.send.14.lvl": 2071223130, - "ch.35.send.14.pon": 723708898, - "ch.35.send.14.ind": 1872795689, - "ch.35.send.14.mode": 968326760, - "ch.35.send.14.plink": 203501336, - "ch.35.send.14.pan": 4257118894, - "ch.35.send.15": 113665802, - "ch.35.send.15.on": 3381019335, - "ch.35.send.15.lvl": 2087069728, - "ch.35.send.15.pon": 4226792964, - "ch.35.send.15.ind": 1183309811, - "ch.35.send.15.mode": 553019494, - "ch.35.send.15.plink": 4251595507, - "ch.35.send.15.pan": 1991727168, - "ch.35.send.16": 1422099513, - "ch.35.send.16.on": 3925242434, - "ch.35.send.16.lvl": 1220957318, - "ch.35.send.16.pon": 4169597406, - "ch.35.send.16.ind": 1054340709, - "ch.35.send.16.mode": 475564412, - "ch.35.send.16.plink": 3353953433, - "ch.35.send.16.pan": 4154277466, - "ch.35.send.MX1": 66884775, - "ch.35.send.MX1.on": 1203112125, - "ch.35.send.MX1.lvl": 352434529, - "ch.35.send.MX1.pon": 2689909618, - "ch.35.send.MX1.ind": 1076825351, - "ch.35.send.MX1.mode": 1249288776, - "ch.35.send.MX1.plink": 2324532271, - "ch.35.send.MX1.pan": 1954182980, - "ch.35.send.MX2": 908761562, - "ch.35.send.MX2.on": 1898335402, - "ch.35.send.MX2.lvl": 2673280851, - "ch.35.send.MX2.pon": 1267433796, - "ch.35.send.MX2.ind": 661936538, - "ch.35.send.MX2.mode": 3527544435, - "ch.35.send.MX2.plink": 1640182353, - "ch.35.send.MX2.pan": 1229180274, - "ch.35.send.MX3": 917014641, - "ch.35.send.MX3.on": 1401640376, - "ch.35.send.MX3.lvl": 143893998, - "ch.35.send.MX3.pon": 9614120, - "ch.35.send.MX3.ind": 3956340101, - "ch.35.send.MX3.mode": 3954976454, - "ch.35.send.MX3.plink": 3601858837, - "ch.35.send.MX3.pan": 3818526478, - "ch.35.send.MX4": 583028070, - "ch.35.send.MX4.on": 4101368248, - "ch.35.send.MX4.lvl": 1391016390, - "ch.35.send.MX4.pon": 2125883175, - "ch.35.send.MX4.ind": 908545168, - "ch.35.send.MX4.mode": 1106140250, - "ch.35.send.MX4.plink": 2826476818, - "ch.35.send.MX4.pan": 3049718585, - "ch.35.send.MX5": 759053341, - "ch.35.send.MX5.on": 3603800035, - "ch.35.send.MX5.lvl": 2341722821, - "ch.35.send.MX5.pon": 2869075280, - "ch.35.send.MX5.ind": 961022075, - "ch.35.send.MX5.mode": 3744003103, - "ch.35.send.MX5.plink": 2504025629, - "ch.35.send.MX5.pan": 2301776182, - "ch.35.send.MX6": 2104245936, - "ch.35.send.MX6.on": 3178955750, - "ch.35.send.MX6.lvl": 2389069490, - "ch.35.send.MX6.pon": 2800111952, - "ch.35.send.MX6.ind": 4209255006, - "ch.35.send.MX6.mode": 1573171208, - "ch.35.send.MX6.plink": 3502834205, - "ch.35.send.MX6.pan": 3181288758, - "ch.35.send.MX7": 2258644327, - "ch.35.send.MX7.on": 674801793, - "ch.35.send.MX7.lvl": 2143065265, - "ch.35.send.MX7.pon": 3883756158, - "ch.35.send.MX7.ind": 1085574698, - "ch.35.send.MX7.mode": 4121680853, - "ch.35.send.MX7.plink": 3175472955, - "ch.35.send.MX7.pan": 3439654552, - "ch.35.send.MX8": 3110965889, - "ch.35.send.MX8.on": 3102084165, - "ch.35.send.MX8.lvl": 433182897, - "ch.35.send.MX8.pon": 3937675390, - "ch.35.send.MX8.ind": 170861823, - "ch.35.send.MX8.mode": 863434697, - "ch.35.send.MX8.plink": 343618875, - "ch.35.send.MX8.pan": 4191046808, - "ch.35.tapwid": 3897869806, - "ch.35.postins": 792885108, - "ch.35.postins.on": 3664613963, - "ch.35.postins.mode": 1993016811, - "ch.35.postins.ins": 3138023672, - "ch.35.postins.w": 160714316, - "ch.35.postins.$stat": 2359894272, - "ch.35.tags": 2791227402, - "ch.35.$fdr": 1282552082, - "ch.35.$mute": 336403739, - "ch.35.$muteovr": 2920975231, - "ch.36": 2830049878, - "ch.36.in": 2118664545, - "ch.36.in.set": 2061508770, - "ch.36.in.set.$mode": 3815745161, - "ch.36.in.set.srcauto": 275166282, - "ch.36.in.set.altsrc": 3995669399, - "ch.36.in.set.inv": 3783997484, - "ch.36.in.set.trim": 1973370245, - "ch.36.in.set.bal": 4011272853, - "ch.36.in.set.$g": 2980528885, - "ch.36.in.set.$vph": 2329016232, - "ch.36.in.set.dlymode": 2367695905, - "ch.36.in.set.dly": 4129844352, - "ch.36.in.set.dlyon": 313766071, - "ch.36.in.conn": 2234568441, - "ch.36.in.conn.grp": 3140996942, - "ch.36.in.conn.in": 1189150140, - "ch.36.in.conn.altgrp": 1148383546, - "ch.36.in.conn.altin": 1290992424, - "ch.36.flt": 2672016251, - "ch.36.flt.lc": 537668642, - "ch.36.flt.lcf": 1863696223, - "ch.36.flt.hc": 984155364, - "ch.36.flt.hcf": 2644116771, - "ch.36.flt.tf": 2020376061, - "ch.36.flt.mdl": 486186535, - "ch.36.flt.1": 2346340581, - "ch.36.flt.2": 3552284904, - "ch.36.clink": 1699252106, - "ch.36.col": 1256964614, - "ch.36.name": 2852941425, - "ch.36.icon": 1535142189, - "ch.36.led": 3889295441, - "ch.36.$col": 2886890513, - "ch.36.$name": 3509987543, - "ch.36.$icon": 2112555796, - "ch.36.mute": 1271031048, - "ch.36.fdr": 1656482346, - "ch.36.pan": 1688956371, - "ch.36.wid": 4093585440, - "ch.36.$solo": 1809267891, - "ch.36.$sololed": 1461750962, - "ch.36.solosafe": 2065111589, - "ch.36.mon": 1745606178, - "ch.36.proc": 422984782, - "ch.36.ptap": 808355476, - "ch.36.$presolo": 1188965859, - "ch.36.peq": 845274586, - "ch.36.peq.on": 2690562507, - "ch.36.peq.1g": 2222953016, - "ch.36.peq.1f": 3744146242, - "ch.36.peq.1q": 3217736872, - "ch.36.peq.2g": 969591756, - "ch.36.peq.2f": 854079769, - "ch.36.peq.2q": 2614983292, - "ch.36.peq.3g": 3575982944, - "ch.36.peq.3f": 2144543949, - "ch.36.peq.3q": 296928784, - "ch.36.gate": 1966878174, - "ch.36.gate.on": 2524877345, - "ch.36.gate.mdl": 133338316, - "ch.36.gate.1": 2346183280, - "ch.36.gate.2": 1635640134, - "ch.36.gate.3": 1503896052, - "ch.36.gate.4": 153721825, - "ch.36.gate.5": 3780089255, - "ch.36.gate.6": 158699072, - "ch.36.gate.7": 3743123533, - "ch.36.gate.8": 3600891140, - "ch.36.gate.9": 2261202353, - "ch.36.gatesc": 4129989964, - "ch.36.gatesc.type": 2682307627, - "ch.36.gatesc.f": 1168018971, - "ch.36.gatesc.q": 2773074814, - "ch.36.gatesc.src": 2727484339, - "ch.36.gatesc.tap": 4065373996, - "ch.36.gatesc.$solo": 1656635088, - "ch.36.eq": 811331711, - "ch.36.eq.on": 3646846752, - "ch.36.eq.mdl": 3554197098, - "ch.36.eq.mix": 2936247456, - "ch.36.eq.$solo": 3409075524, - "ch.36.eq.$solobd": 3304688567, - "ch.36.eq.1": 1566807914, - "ch.36.eq.2": 101300361, - "ch.36.eq.3": 3266299332, - "ch.36.eq.4": 2068545589, - "ch.36.eq.5": 592526720, - "ch.36.eq.6": 1364944906, - "ch.36.eq.7": 234940713, - "ch.36.eq.8": 3065050723, - "ch.36.eq.9": 1857466581, - "ch.36.eq.10": 3545308076, - "ch.36.eq.11": 2415339769, - "ch.36.eq.12": 950487603, - "ch.36.eq.13": 3769436144, - "ch.36.eq.14": 2907226530, - "ch.36.eq.15": 1441713948, - "ch.36.eq.16": 2214091142, - "ch.36.eq.17": 748583635, - "ch.36.eq.18": 3903731856, - "ch.36.eq.19": 2706633295, - "ch.36.eq.20": 4160359285, - "ch.36.dyn": 2357001795, - "ch.36.dyn.on": 194642143, - "ch.36.dyn.mdl": 3581836239, - "ch.36.dyn.mix": 164524893, - "ch.36.dyn.gain": 1936828985, - "ch.36.dyn.1": 3631975261, - "ch.36.dyn.2": 2292273984, - "ch.36.dyn.3": 1872450286, - "ch.36.dyn.4": 1193351892, - "ch.36.dyn.5": 524738919, - "ch.36.dyn.6": 3174915069, - "ch.36.dyn.7": 2485330272, - "ch.36.dyn.8": 2085168001, - "ch.36.dyn.9": 3017992436, - "ch.36.dynxo": 425681292, - "ch.36.dynxo.depth": 2349737057, - "ch.36.dynxo.type": 3784606536, - "ch.36.dynxo.f": 2715410957, - "ch.36.dynxo.$solo": 3222814085, - "ch.36.dynsc": 2060341481, - "ch.36.dynsc.type": 864057228, - "ch.36.dynsc.f": 4284684537, - "ch.36.dynsc.q": 2292868370, - "ch.36.dynsc.src": 1103887500, - "ch.36.dynsc.tap": 2078643775, - "ch.36.dynsc.$solo": 1873735222, - "ch.36.preins": 101289295, - "ch.36.preins.on": 562758198, - "ch.36.preins.ins": 733702274, - "ch.36.preins.$stat": 2395389560, - "ch.36.main": 3191476451, - "ch.36.main.1": 325578540, - "ch.36.main.1.on": 1323362975, - "ch.36.main.1.lvl": 3349747279, - "ch.36.main.1.pre": 1840082069, - "ch.36.main.2": 430886518, - "ch.36.main.2.on": 3659968594, - "ch.36.main.2.lvl": 343857586, - "ch.36.main.2.pre": 552969848, - "ch.36.main.3": 1684926333, - "ch.36.main.3.on": 2395101114, - "ch.36.main.3.lvl": 131738602, - "ch.36.main.3.pre": 2911829808, - "ch.36.main.4": 2428802431, - "ch.36.main.4.on": 1350654659, - "ch.36.main.4.lvl": 840533003, - "ch.36.main.4.pre": 2370812657, - "ch.36.send": 2096630784, - "ch.36.send.1": 944088908, - "ch.36.send.1.on": 3150765075, - "ch.36.send.1.lvl": 3672442235, - "ch.36.send.1.pon": 2129445857, - "ch.36.send.1.ind": 2791991130, - "ch.36.send.1.mode": 3476687567, - "ch.36.send.1.plink": 2346967680, - "ch.36.send.1.pan": 386424082, - "ch.36.send.2": 2153032889, - "ch.36.send.2.on": 1431834921, - "ch.36.send.2.lvl": 1094728305, - "ch.36.send.2.pon": 574762731, - "ch.36.send.2.ind": 1120195664, - "ch.36.send.2.mode": 4221408349, - "ch.36.send.2.plink": 2155864993, - "ch.36.send.2.pan": 3189543400, - "ch.36.send.3": 6136759, - "ch.36.send.3.on": 3116237092, - "ch.36.send.3.lvl": 3706071628, - "ch.36.send.3.pon": 2090409702, - "ch.36.send.3.ind": 2741068885, - "ch.36.send.3.mode": 3382684460, - "ch.36.send.3.plink": 310919445, - "ch.36.send.3.pan": 347963885, - "ch.36.send.4": 721942829, - "ch.36.send.4.on": 1428173147, - "ch.36.send.4.lvl": 3580386611, - "ch.36.send.4.pon": 4061752313, - "ch.36.send.4.ind": 1106099666, - "ch.36.send.4.mode": 3132444374, - "ch.36.send.4.plink": 1129103824, - "ch.36.send.4.pan": 4172526874, - "ch.36.send.5": 1254535142, - "ch.36.send.5.on": 386714755, - "ch.36.send.5.lvl": 4286883915, - "ch.36.send.5.pon": 1682612497, - "ch.36.send.5.ind": 16769738, - "ch.36.send.5.mode": 2061761710, - "ch.36.send.5.plink": 1710848843, - "ch.36.send.5.pan": 2087735426, - "ch.36.send.6": 217634156, - "ch.36.send.6.on": 2826496096, - "ch.36.send.6.lvl": 3658550448, - "ch.36.send.6.pon": 3149969354, - "ch.36.send.6.ind": 3180743697, - "ch.36.send.6.mode": 724464333, - "ch.36.send.6.plink": 3921759985, - "ch.36.send.6.pan": 1113351337, - "ch.36.send.7": 1022221657, - "ch.36.send.7.on": 2207497834, - "ch.36.send.7.lvl": 4281066170, - "ch.36.send.7.pon": 2695225792, - "ch.36.send.7.ind": 2561755675, - "ch.36.send.7.mode": 1189778169, - "ch.36.send.7.plink": 3530659750, - "ch.36.send.7.pan": 658520787, - "ch.36.send.8": 3080507840, - "ch.36.send.8.on": 643803292, - "ch.36.send.8.lvl": 1549258580, - "ch.36.send.8.pon": 964334766, - "ch.36.send.8.ind": 986879389, - "ch.36.send.8.mode": 297575397, - "ch.36.send.8.plink": 2541165989, - "ch.36.send.8.pan": 3223332805, - "ch.36.send.9": 307702221, - "ch.36.send.9.on": 593250793, - "ch.36.send.9.lvl": 4082398641, - "ch.36.send.9.pon": 276648875, - "ch.36.send.9.ind": 265924496, - "ch.36.send.9.mode": 1024860741, - "ch.36.send.9.plink": 2420643034, - "ch.36.send.9.pan": 2333592872, - "ch.36.send.10": 1123157669, - "ch.36.send.10.on": 1489856081, - "ch.36.send.10.lvl": 3372421455, - "ch.36.send.10.pon": 2419093954, - "ch.36.send.10.ind": 3195591425, - "ch.36.send.10.mode": 771187272, - "ch.36.send.10.plink": 1175033259, - "ch.36.send.10.pan": 564026704, - "ch.36.send.11": 1907101168, - "ch.36.send.11.on": 276636332, - "ch.36.send.11.lvl": 3860014357, - "ch.36.send.11.pon": 1624708004, - "ch.36.send.11.ind": 2459946771, - "ch.36.send.11.mode": 4246121286, - "ch.36.send.11.plink": 707287105, - "ch.36.send.11.pan": 3889647458, - "ch.36.send.12": 1331079250, - "ch.36.send.12.on": 2532132458, - "ch.36.send.12.lvl": 4179984995, - "ch.36.send.12.pon": 1786368246, - "ch.36.send.12.ind": 2505036165, - "ch.36.send.12.mode": 3975658324, - "ch.36.send.12.plink": 397516535, - "ch.36.send.12.pan": 163324292, - "ch.36.send.13": 626021732, - "ch.36.send.13.on": 1318933226, - "ch.36.send.13.lvl": 3032067145, - "ch.36.send.13.pon": 2515128744, - "ch.36.send.13.ind": 2594160407, - "ch.36.send.13.mode": 325570642, - "ch.36.send.13.plink": 891371885, - "ch.36.send.13.pan": 325665494, - "ch.36.send.14": 1415228595, - "ch.36.send.14.on": 1695377765, - "ch.36.send.14.lvl": 3844143975, - "ch.36.send.14.pon": 3564287226, - "ch.36.send.14.ind": 2365779641, - "ch.36.send.14.mode": 3651325792, - "ch.36.send.14.plink": 1119167091, - "ch.36.send.14.pan": 2665034888, - "ch.36.send.15": 3394548766, - "ch.36.send.15.on": 2361191667, - "ch.36.send.15.lvl": 3722355725, - "ch.36.send.15.pon": 1672059676, - "ch.36.send.15.ind": 2407740875, - "ch.36.send.15.mode": 4065724798, - "ch.36.send.15.plink": 4265476265, - "ch.36.send.15.pan": 4044452250, - "ch.36.send.16": 4026469221, - "ch.36.send.16.on": 2905426254, - "ch.36.send.16.lvl": 2930991067, - "ch.36.send.16.pon": 1729501934, - "ch.36.send.16.ind": 2538934077, - "ch.36.send.16.mode": 499456652, - "ch.36.send.16.plink": 779167071, - "ch.36.send.16.pan": 209999804, - "ch.36.send.MX1": 4173243285, - "ch.36.send.MX1.on": 488557463, - "ch.36.send.MX1.lvl": 1180989222, - "ch.36.send.MX1.pon": 4188634146, - "ch.36.send.MX1.ind": 3635066527, - "ch.36.send.MX1.mode": 4065020984, - "ch.36.send.MX1.plink": 3487887903, - "ch.36.send.MX1.pan": 3139655732, - "ch.36.send.MX2": 717368136, - "ch.36.send.MX2.on": 959516567, - "ch.36.send.MX2.lvl": 3637099354, - "ch.36.send.MX2.pon": 17341991, - "ch.36.send.MX2.ind": 1123618562, - "ch.36.send.MX2.mode": 1268189219, - "ch.36.send.MX2.plink": 723168274, - "ch.36.send.MX2.pan": 331661881, - "ch.36.send.MX3": 2741139843, - "ch.36.send.MX3.on": 1807768509, - "ch.36.send.MX3.lvl": 3997100120, - "ch.36.send.MX3.pon": 911729176, - "ch.36.send.MX3.ind": 821274837, - "ch.36.send.MX3.mode": 333960502, - "ch.36.send.MX3.plink": 541774213, - "ch.36.send.MX3.pan": 784821758, - "ch.36.send.MX4": 101080788, - "ch.36.send.MX4.on": 2308652960, - "ch.36.send.MX4.lvl": 3364236316, - "ch.36.send.MX4.pon": 1215403549, - "ch.36.send.MX4.ind": 4220694296, - "ch.36.send.MX4.mode": 522297090, - "ch.36.send.MX4.plink": 1580277144, - "ch.36.send.MX4.pan": 1823324643, - "ch.36.send.MX5": 1218882943, - "ch.36.send.MX5.on": 3198456299, - "ch.36.send.MX5.lvl": 887664834, - "ch.36.send.MX5.pon": 2114410438, - "ch.36.send.MX5.ind": 2175081228, - "ch.36.send.MX5.mode": 3070983255, - "ch.36.send.MX5.plink": 1413980675, - "ch.36.send.MX5.pan": 919276512, - "ch.36.send.MX6": 1890201618, - "ch.36.send.MX6.on": 2245359086, - "ch.36.send.MX6.lvl": 1489597574, - "ch.36.send.MX6.pon": 1947405259, - "ch.36.send.MX6.ind": 1727579918, - "ch.36.send.MX6.mode": 3541666008, - "ch.36.send.MX6.plink": 2312125958, - "ch.36.send.MX6.pan": 2702137317, - "ch.36.send.MX7": 4081786581, - "ch.36.send.MX7.on": 2411715697, - "ch.36.send.MX7.lvl": 3779687352, - "ch.36.send.MX7.pon": 2366655777, - "ch.36.send.MX7.ind": 2965996322, - "ch.36.send.MX7.mode": 2605257581, - "ch.36.send.MX7.plink": 1996363276, - "ch.36.send.MX7.pan": 2283012399, - "ch.36.send.MX8": 636395795, - "ch.36.send.MX8.on": 119246941, - "ch.36.send.MX8.lvl": 3211745208, - "ch.36.send.MX8.pon": 3352874785, - "ch.36.send.MX8.ind": 2073693047, - "ch.36.send.MX8.mode": 2100441113, - "ch.36.send.MX8.plink": 3725950988, - "ch.36.send.MX8.pan": 3965414191, - "ch.36.tapwid": 3620072636, - "ch.36.postins": 1663915317, - "ch.36.postins.on": 240825514, - "ch.36.postins.mode": 582218604, - "ch.36.postins.ins": 200753555, - "ch.36.postins.w": 3850316813, - "ch.36.postins.$stat": 2227531662, - "ch.36.tags": 3268911768, - "ch.36.$fdr": 1067509728, - "ch.36.$mute": 11256765, - "ch.36.$muteovr": 2176664667, - "ch.37": 980213049, - "ch.37.in": 1710753766, - "ch.37.in.set": 2759020388, - "ch.37.in.set.$mode": 3738937442, - "ch.37.in.set.srcauto": 1257432279, - "ch.37.in.set.altsrc": 2494792351, - "ch.37.in.set.inv": 3308727078, - "ch.37.in.set.trim": 468662022, - "ch.37.in.set.bal": 396359951, - "ch.37.in.set.$g": 1089675119, - "ch.37.in.set.$vph": 3834256451, - "ch.37.in.set.dlymode": 2300584344, - "ch.37.in.set.dly": 2625943322, - "ch.37.in.set.dlyon": 2875042062, - "ch.37.in.conn": 1736355187, - "ch.37.in.conn.grp": 3306810316, - "ch.37.in.conn.in": 3106752294, - "ch.37.in.conn.altgrp": 2499739120, - "ch.37.in.conn.altin": 1930648162, - "ch.37.flt": 2478985745, - "ch.37.flt.lc": 339374968, - "ch.37.flt.lcf": 4191253177, - "ch.37.flt.hc": 845000110, - "ch.37.flt.hcf": 3210627773, - "ch.37.flt.tf": 2212116295, - "ch.37.flt.mdl": 3853943227, - "ch.37.flt.1": 2570108991, - "ch.37.flt.2": 3364561282, - "ch.37.clink": 2696390248, - "ch.37.col": 1524286244, - "ch.37.name": 1589513539, - "ch.37.icon": 437011367, - "ch.37.led": 1902240131, - "ch.37.$col": 3005699883, - "ch.37.$name": 4028959429, - "ch.37.$icon": 1446788026, - "ch.37.mute": 1853067102, - "ch.37.fdr": 1347063436, - "ch.37.pan": 404660717, - "ch.37.wid": 3117729930, - "ch.37.$solo": 2598040345, - "ch.37.$sololed": 3604639525, - "ch.37.solosafe": 1910357684, - "ch.37.mon": 1976363428, - "ch.37.proc": 3653856364, - "ch.37.ptap": 976221190, - "ch.37.$presolo": 2259403183, - "ch.37.peq": 2937423760, - "ch.37.peq.on": 3282931841, - "ch.37.peq.1g": 109820770, - "ch.37.peq.1f": 1530515992, - "ch.37.peq.1q": 2457607026, - "ch.37.peq.2g": 2893815190, - "ch.37.peq.2f": 1446283843, - "ch.37.peq.2q": 432808870, - "ch.37.peq.3g": 1652087370, - "ch.37.peq.3f": 230816503, - "ch.37.peq.3q": 3821270106, - "ch.37.gate": 2320971020, - "ch.37.gate.on": 2756657284, - "ch.37.gate.mdl": 3865187259, - "ch.37.gate.1": 228291410, - "ch.37.gate.2": 3730864660, - "ch.37.gate.3": 3202329382, - "ch.37.gate.4": 2399449875, - "ch.37.gate.5": 1602145909, - "ch.37.gate.6": 2421019938, - "ch.37.gate.7": 1623378223, - "ch.37.gate.8": 1089605174, - "ch.37.gate.9": 292295907, - "ch.37.gatesc": 189309998, - "ch.37.gatesc.type": 2979666927, - "ch.37.gatesc.f": 2248222647, - "ch.37.gatesc.q": 3840340570, - "ch.37.gatesc.src": 3807681711, - "ch.37.gatesc.tap": 2984986904, - "ch.37.gatesc.$solo": 1003611935, - "ch.37.eq": 466335476, - "ch.37.eq.on": 91582266, - "ch.37.eq.mdl": 4199528672, - "ch.37.eq.mix": 2248976042, - "ch.37.eq.$solo": 1514399055, - "ch.37.eq.$solobd": 4218926724, - "ch.37.eq.1": 963678224, - "ch.37.eq.2": 787660419, - "ch.37.eq.3": 3921286462, - "ch.37.eq.4": 2671838799, - "ch.37.eq.5": 4274533626, - "ch.37.eq.6": 2094161776, - "ch.37.eq.7": 890498531, - "ch.37.eq.8": 2325430185, - "ch.37.eq.9": 1243755951, - "ch.37.eq.10": 2932345734, - "ch.37.eq.11": 1728733747, - "ch.37.eq.12": 1553043705, - "ch.37.eq.13": 202948458, - "ch.37.eq.14": 3604983912, - "ch.37.eq.15": 744621846, - "ch.37.eq.16": 2859176364, - "ch.37.eq.17": 145932377, - "ch.37.eq.18": 3258575306, - "ch.37.eq.19": 2009128885, - "ch.37.eq.20": 3431144335, - "ch.37.dyn": 2688162325, - "ch.37.dyn.on": 4159759425, - "ch.37.dyn.mdl": 2760783129, - "ch.37.dyn.mix": 527155055, - "ch.37.dyn.gain": 595460053, - "ch.37.dyn.1": 3972971035, - "ch.37.dyn.2": 2622857774, - "ch.37.dyn.3": 1541860736, - "ch.37.dyn.4": 1533935002, - "ch.37.dyn.5": 183504625, - "ch.37.dyn.6": 2834991483, - "ch.37.dyn.7": 2826400782, - "ch.37.dyn.8": 1744747735, - "ch.37.dyn.9": 3348090746, - "ch.37.dynxo": 766017170, - "ch.37.dynxo.depth": 1165955268, - "ch.37.dynxo.type": 2383230961, - "ch.37.dynxo.f": 1691686452, - "ch.37.dynxo.$solo": 3688467718, - "ch.37.dynsc": 2401498175, - "ch.37.dynsc.type": 1778165247, - "ch.37.dynsc.f": 735224906, - "ch.37.dynsc.q": 2536205089, - "ch.37.dynsc.src": 1262035127, - "ch.37.dynsc.tap": 2154227540, - "ch.37.dynsc.$solo": 3815560678, - "ch.37.preins": 2691873661, - "ch.37.preins.on": 2655157557, - "ch.37.preins.ins": 4263010545, - "ch.37.preins.$stat": 3855949765, - "ch.37.main": 3274956837, - "ch.37.main.1": 242085346, - "ch.37.main.1.on": 2378835834, - "ch.37.main.1.lvl": 146951722, - "ch.37.main.1.pre": 2885558128, - "ch.37.main.2": 347098936, - "ch.37.main.2.on": 1256746317, - "ch.37.main.2.lvl": 598774125, - "ch.37.main.2.pre": 834268487, - "ch.37.main.3": 1768726635, - "ch.37.main.3.on": 1465162458, - "ch.37.main.3.lvl": 1059877898, - "ch.37.main.3.pre": 1898494032, - "ch.37.main.4": 2344523433, - "ch.37.main.4.on": 294524200, - "ch.37.main.4.lvl": 4042670280, - "ch.37.main.4.pre": 1304358306, - "ch.37.send": 39844218, - "ch.37.send.1": 1211922742, - "ch.37.send.1.on": 3845049880, - "ch.37.send.1.lvl": 3312887640, - "ch.37.send.1.pon": 2718474738, - "ch.37.send.1.ind": 3522289945, - "ch.37.send.1.mode": 3144891606, - "ch.37.send.1.plink": 2845365187, - "ch.37.send.1.pan": 2293124865, - "ch.37.send.2": 2556940483, - "ch.37.send.2.on": 1170071615, - "ch.37.send.2.lvl": 3170240879, - "ch.37.send.2.pon": 3638157333, - "ch.37.send.2.ind": 1534108454, - "ch.37.send.2.mode": 2724653569, - "ch.37.send.2.plink": 2239058281, - "ch.37.send.2.pan": 3770573054, - "ch.37.send.3": 2555021741, - "ch.37.send.3.on": 2138087470, - "ch.37.send.3.lvl": 1863895414, - "ch.37.send.3.pon": 3429474300, - "ch.37.send.3.ind": 2476565343, - "ch.37.send.3.mode": 700198964, - "ch.37.send.3.plink": 1834476386, - "ch.37.send.3.pan": 3875807511, - "ch.37.send.4": 3900057399, - "ch.37.send.4.on": 3421399605, - "ch.37.send.4.lvl": 1253458789, - "ch.37.send.4.pon": 2932450847, - "ch.37.send.4.ind": 3056665916, - "ch.37.send.4.mode": 2963957822, - "ch.37.send.4.plink": 3650968635, - "ch.37.send.4.pan": 653126388, - "ch.37.send.5": 986611868, - "ch.37.send.5.on": 65985182, - "ch.37.send.5.lvl": 3939960390, - "ch.37.send.5.pon": 1185596140, - "ch.37.send.5.ind": 425486543, - "ch.37.send.5.mode": 256241340, - "ch.37.send.5.plink": 3453332056, - "ch.37.send.5.pan": 1652973191, - "ch.37.send.6": 218148886, - "ch.37.send.6.on": 3785533723, - "ch.37.send.6.lvl": 3375025523, - "ch.37.send.6.pon": 2756998841, - "ch.37.send.6.ind": 3483765522, - "ch.37.send.6.mode": 1382884785, - "ch.37.send.6.plink": 1356130233, - "ch.37.send.6.pan": 742008154, - "ch.37.send.7": 1558577187, - "ch.37.send.7.on": 3011623535, - "ch.37.send.7.lvl": 990482111, - "ch.37.send.7.pon": 2524296645, - "ch.37.send.7.ind": 3380923926, - "ch.37.send.7.mode": 3127427250, - "ch.37.send.7.plink": 3002279911, - "ch.37.send.7.pan": 307902126, - "ch.37.send.8": 3708728970, - "ch.37.send.8.on": 631352086, - "ch.37.send.8.lvl": 84508494, - "ch.37.send.8.pon": 1752589492, - "ch.37.send.8.ind": 277749015, - "ch.37.send.8.mode": 2947475007, - "ch.37.send.8.plink": 2082246805, - "ch.37.send.8.pan": 1842489183, - "ch.37.send.9": 3974780567, - "ch.37.send.9.on": 431123562, - "ch.37.send.9.lvl": 3910811834, - "ch.37.send.9.pon": 1281729472, - "ch.37.send.9.ind": 747964443, - "ch.37.send.9.mode": 866807231, - "ch.37.send.9.plink": 1496394755, - "ch.37.send.9.pan": 2982799571, - "ch.37.send.10": 3714606278, - "ch.37.send.10.on": 3358515234, - "ch.37.send.10.lvl": 547403816, - "ch.37.send.10.pon": 2714030218, - "ch.37.send.10.ind": 3297998737, - "ch.37.send.10.mode": 1949078847, - "ch.37.send.10.plink": 3650550655, - "ch.37.send.10.pan": 331021981, - "ch.37.send.11": 122328091, - "ch.37.send.11.on": 2413766823, - "ch.37.send.11.lvl": 133252686, - "ch.37.send.11.pon": 3936386940, - "ch.37.send.11.ind": 3282469539, - "ch.37.send.11.mode": 643405701, - "ch.37.send.11.plink": 1589876869, - "ch.37.send.11.pan": 849213247, - "ch.37.send.12": 698637849, - "ch.37.send.12.on": 147782697, - "ch.37.send.12.lvl": 306112556, - "ch.37.send.12.pon": 3679680030, - "ch.37.send.12.ind": 2595541029, - "ch.37.send.12.mode": 959765355, - "ch.37.send.12.plink": 2516009323, - "ch.37.send.12.pan": 3849685457, - "ch.37.send.13": 4232464295, - "ch.37.send.13.on": 3539924137, - "ch.37.send.13.lvl": 3557474242, - "ch.37.send.13.pon": 2646851648, - "ch.37.send.13.ind": 2307167239, - "ch.37.send.13.mode": 958689777, - "ch.37.send.13.plink": 1399259441, - "ch.37.send.13.pan": 635600099, - "ch.37.send.14": 593148664, - "ch.37.send.14.on": 1005511470, - "ch.37.send.14.lvl": 687847728, - "ch.37.send.14.pon": 446487954, - "ch.37.send.14.ind": 2050843641, - "ch.37.send.14.mode": 1267036935, - "ch.37.send.14.plink": 3807326935, - "ch.37.send.14.pan": 4233242405, - "ch.37.send.15": 1443293773, - "ch.37.send.15.on": 329168640, - "ch.37.send.15.lvl": 63805398, - "ch.37.send.15.pon": 3771705348, - "ch.37.send.15.ind": 2932395275, - "ch.37.send.15.mode": 738625901, - "ch.37.send.15.plink": 2216873021, - "ch.37.send.15.pan": 629532935, - "ch.37.send.16": 2287402374, - "ch.37.send.16.on": 1921974149, - "ch.37.send.16.lvl": 3650706164, - "ch.37.send.16.pon": 3746381798, - "ch.37.send.16.ind": 2373524109, - "ch.37.send.16.mode": 838012467, - "ch.37.send.16.plink": 1499688323, - "ch.37.send.16.pan": 3685658297, - "ch.37.send.MX1": 227040062, - "ch.37.send.MX1.on": 3046087329, - "ch.37.send.MX1.lvl": 369567833, - "ch.37.send.MX1.pon": 1815507696, - "ch.37.send.MX1.ind": 813277751, - "ch.37.send.MX1.mode": 2201101950, - "ch.37.send.MX1.plink": 1450703485, - "ch.37.send.MX1.pan": 1207494358, - "ch.37.send.MX2": 3381535691, - "ch.37.send.MX2.on": 207443630, - "ch.37.send.MX2.lvl": 2721006658, - "ch.37.send.MX2.pon": 2969548016, - "ch.37.send.MX2.ind": 3831425034, - "ch.37.send.MX2.mode": 443202171, - "ch.37.send.MX2.plink": 3343033469, - "ch.37.send.MX2.pan": 3811545302, - "ch.37.send.MX3": 1317988832, - "ch.37.send.MX3.on": 690195368, - "ch.37.send.MX3.lvl": 170682704, - "ch.37.send.MX3.pon": 3327160335, - "ch.37.send.MX3.ind": 2681883689, - "ch.37.send.MX3.mode": 4283677293, - "ch.37.send.MX3.plink": 3692199738, - "ch.37.send.MX3.pan": 3201098753, - "ch.37.send.MX4": 2329537343, - "ch.37.send.MX4.on": 1371248552, - "ch.37.send.MX4.lvl": 664085840, - "ch.37.send.MX4.pon": 548191233, - "ch.37.send.MX4.ind": 3040591684, - "ch.37.send.MX4.mode": 1896199274, - "ch.37.send.MX4.plink": 1252143916, - "ch.37.send.MX4.pan": 1685100559, - "ch.37.send.MX5": 3202003604, - "ch.37.send.MX5.on": 239826661, - "ch.37.send.MX5.lvl": 2327485621, - "ch.37.send.MX5.pon": 3963176084, - "ch.37.send.MX5.ind": 3376481091, - "ch.37.send.MX5.mode": 1391439663, - "ch.37.send.MX5.plink": 3598056353, - "ch.37.send.MX5.pan": 3355152514, - "ch.37.send.MX6": 2480961697, - "ch.37.send.MX6.on": 3844248338, - "ch.37.send.MX6.lvl": 384837747, - "ch.37.send.MX6.pon": 1618841748, - "ch.37.send.MX6.ind": 2325715830, - "ch.37.send.MX6.mode": 3695440676, - "ch.37.send.MX6.plink": 1991335841, - "ch.37.send.MX6.pan": 2209825922, - "ch.37.send.MX7": 355155966, - "ch.37.send.MX7.on": 2301649351, - "ch.37.send.MX7.lvl": 2766373372, - "ch.37.send.MX7.pon": 721789198, - "ch.37.send.MX7.ind": 3793563541, - "ch.37.send.MX7.mode": 2484374017, - "ch.37.send.MX7.plink": 18657035, - "ch.37.send.MX7.pan": 3922466088, - "ch.37.send.MX8": 3425478800, - "ch.37.send.MX8.on": 33226265, - "ch.37.send.MX8.lvl": 2391555553, - "ch.37.send.MX8.pon": 2812773077, - "ch.37.send.MX8.ind": 365293999, - "ch.37.send.MX8.mode": 463523358, - "ch.37.send.MX8.plink": 3521630352, - "ch.37.send.MX8.pan": 3173705403, - "ch.37.tapwid": 3839485242, - "ch.37.postins": 259970379, - "ch.37.postins.on": 3226088916, - "ch.37.postins.mode": 1742039454, - "ch.37.postins.ins": 1954622164, - "ch.37.postins.w": 2455567347, - "ch.37.postins.$stat": 825411455, - "ch.37.tags": 602161934, - "ch.37.$fdr": 436761942, - "ch.37.$mute": 3618646039, - "ch.37.$muteovr": 3081452219, - "ch.38": 4100486114, - "ch.38.in": 1097318712, - "ch.38.in.set": 1252556203, - "ch.38.in.set.$mode": 3514790026, - "ch.38.in.set.srcauto": 70758411, - "ch.38.in.set.altsrc": 2748785494, - "ch.38.in.set.inv": 107984393, - "ch.38.in.set.trim": 1341541934, - "ch.38.in.set.bal": 3224561736, - "ch.38.in.set.$g": 2508958936, - "ch.38.in.set.$vph": 2619576615, - "ch.38.in.set.dlymode": 1978277389, - "ch.38.in.set.dly": 3679332989, - "ch.38.in.set.dlyon": 743826075, - "ch.38.in.conn": 1772501292, - "ch.38.in.conn.grp": 746584597, - "ch.38.in.conn.in": 1733797785, - "ch.38.in.conn.altgrp": 2149690893, - "ch.38.in.conn.altin": 2434639567, - "ch.38.flt": 1802651255, - "ch.38.flt.lc": 3937034542, - "ch.38.flt.lcf": 86885155, - "ch.38.flt.hc": 1542306552, - "ch.38.flt.hcf": 3051440635, - "ch.38.flt.tf": 2888450473, - "ch.38.flt.mdl": 3600220709, - "ch.38.flt.1": 3235960937, - "ch.38.flt.2": 3998943004, - "ch.38.clink": 2030304886, - "ch.38.col": 817512890, - "ch.38.name": 1809966885, - "ch.38.icon": 1648320993, - "ch.38.led": 2074975541, - "ch.38.$col": 3063377149, - "ch.38.$name": 3887362779, - "ch.38.$icon": 498048736, - "ch.38.mute": 1984337548, - "ch.38.fdr": 3813367582, - "ch.38.pan": 908084151, - "ch.38.wid": 3353665684, - "ch.38.$solo": 3146566927, - "ch.38.$sololed": 3717983747, - "ch.38.solosafe": 996646853, - "ch.38.mon": 1509940438, - "ch.38.proc": 3301476298, - "ch.38.ptap": 3200535768, - "ch.38.$presolo": 426885511, - "ch.38.peq": 3046433806, - "ch.38.peq.on": 3506188575, - "ch.38.peq.1g": 773594148, - "ch.38.peq.1f": 1232116110, - "ch.38.peq.1q": 2989210644, - "ch.38.peq.2g": 3089876032, - "ch.38.peq.2f": 1047708077, - "ch.38.peq.2q": 182334512, - "ch.38.peq.3g": 1378939308, - "ch.38.peq.3f": 652729081, - "ch.38.peq.3q": 3772992924, - "ch.38.gate": 1718237858, - "ch.38.gate.on": 3966966414, - "ch.38.gate.mdl": 1589850874, - "ch.38.gate.1": 2257493084, - "ch.38.gate.2": 1391281402, - "ch.38.gate.3": 1246290600, - "ch.38.gate.4": 402361493, - "ch.38.gate.5": 3868651507, - "ch.38.gate.6": 71276716, - "ch.38.gate.7": 3662730905, - "ch.38.gate.8": 3355041848, - "ch.38.gate.9": 2505398501, - "ch.38.gatesc": 3871075040, - "ch.38.gatesc.type": 2966373548, - "ch.38.gatesc.f": 222102465, - "ch.38.gatesc.q": 892030244, - "ch.38.gatesc.src": 607490393, - "ch.38.gatesc.tap": 1748772070, - "ch.38.gatesc.$solo": 2242696292, - "ch.38.eq": 4084983542, - "ch.38.eq.on": 3547631252, - "ch.38.eq.mdl": 3360569430, - "ch.38.eq.mix": 2752388460, - "ch.38.eq.$solo": 1853216271, - "ch.38.eq.$solobd": 3349292868, - "ch.38.eq.1": 1466916518, - "ch.38.eq.2": 4243845117, - "ch.38.eq.3": 3418024968, - "ch.38.eq.4": 2168436609, - "ch.38.eq.5": 818328476, - "ch.38.eq.6": 1255181830, - "ch.38.eq.7": 387301213, - "ch.38.eq.8": 3164389463, - "ch.38.eq.9": 2082572001, - "ch.38.eq.10": 3771130936, - "ch.38.eq.11": 2232115573, - "ch.38.eq.12": 714240399, - "ch.38.eq.13": 3658935844, - "ch.38.eq.14": 3101571350, - "ch.38.eq.15": 1583527528, - "ch.38.eq.16": 2020421842, - "ch.38.eq.17": 649347311, - "ch.38.eq.18": 4097360516, - "ch.38.eq.19": 2847934579, - "ch.38.eq.20": 4270101241, - "ch.38.dyn": 1896560935, - "ch.38.dyn.on": 824145059, - "ch.38.dyn.mdl": 783100351, - "ch.38.dyn.mix": 1749879181, - "ch.38.dyn.gain": 136268199, - "ch.38.dyn.1": 50315305, - "ch.38.dyn.2": 3592885980, - "ch.38.dyn.3": 2333445250, - "ch.38.dyn.4": 899453768, - "ch.38.dyn.5": 3686885875, - "ch.38.dyn.6": 3721105289, - "ch.38.dyn.7": 2275993788, - "ch.38.dyn.8": 1120754661, - "ch.38.dyn.9": 3898500392, - "ch.38.dynxo": 1138335216, - "ch.38.dynxo.depth": 1020015680, - "ch.38.dynxo.type": 2884109715, - "ch.38.dynxo.f": 3617218342, - "ch.38.dynxo.$solo": 2978415502, - "ch.38.dynsc": 3276965021, - "ch.38.dynsc.type": 3664775841, - "ch.38.dynsc.f": 2742256644, - "ch.38.dynsc.q": 750440807, - "ch.38.dynsc.src": 2645331841, - "ch.38.dynsc.tap": 3489005898, - "ch.38.dynsc.$solo": 734258050, - "ch.38.preins": 3127891507, - "ch.38.preins.on": 1229703930, - "ch.38.preins.ins": 3340707638, - "ch.38.preins.$stat": 937643158, - "ch.38.main": 2808552127, - "ch.38.main.1": 6039672, - "ch.38.main.1.on": 39870756, - "ch.38.main.1.lvl": 2486733388, - "ch.38.main.1.pre": 3325157510, - "ch.38.main.2": 708974370, - "ch.38.main.2.on": 1105334483, - "ch.38.main.2.lvl": 3232382139, - "ch.38.main.2.pre": 515256513, - "ch.38.main.3": 1427809889, - "ch.38.main.3.on": 2602235436, - "ch.38.main.3.lvl": 2071120452, - "ch.38.main.3.pre": 2951509406, - "ch.38.main.4": 2129682227, - "ch.38.main.4.on": 1424729381, - "ch.38.main.4.lvl": 766737397, - "ch.38.main.4.pre": 1002423727, - "ch.38.send": 123642524, - "ch.38.send.1": 1295886144, - "ch.38.send.1.on": 3150942520, - "ch.38.send.1.lvl": 3672597880, - "ch.38.send.1.pon": 2129288914, - "ch.38.send.1.ind": 2791482105, - "ch.38.send.1.mode": 2709465807, - "ch.38.send.1.plink": 2415182515, - "ch.38.send.1.pan": 386927905, - "ch.38.send.2": 2472977037, - "ch.38.send.2.on": 421829279, - "ch.38.send.2.lvl": 4253861455, - "ch.38.send.2.pon": 1542824757, - "ch.38.send.2.ind": 68247238, - "ch.38.send.2.mode": 2807723922, - "ch.38.send.2.plink": 3413703845, - "ch.38.send.2.pan": 1968184798, - "ch.38.send.3": 2638830307, - "ch.38.send.3.on": 2984895310, - "ch.38.send.3.lvl": 3500279702, - "ch.38.send.3.pon": 1865276636, - "ch.38.send.3.ind": 3306988863, - "ch.38.send.3.mode": 617087386, - "ch.38.send.3.plink": 156497759, - "ch.38.send.3.pan": 1418878775, - "ch.38.send.4": 3984021017, - "ch.38.send.4.on": 4183567701, - "ch.38.send.4.lvl": 157548933, - "ch.38.send.4.pon": 740188927, - "ch.38.send.4.ind": 216581916, - "ch.38.send.4.mode": 991312390, - "ch.38.send.4.plink": 1083783089, - "ch.38.send.4.pan": 2440603924, - "ch.38.send.5": 902803130, - "ch.38.send.5.on": 1989614078, - "ch.38.send.5.lvl": 2684304934, - "ch.38.send.5.pon": 3279947276, - "ch.38.send.5.ind": 1636082799, - "ch.38.send.5.mode": 1815744533, - "ch.38.send.5.plink": 2725893929, - "ch.38.send.5.pan": 3705378407, - "ch.38.send.6": 134338848, - "ch.38.send.6.on": 19097083, - "ch.38.send.6.lvl": 2171309907, - "ch.38.send.6.pon": 504773081, - "ch.38.send.6.ind": 367446322, - "ch.38.send.6.mode": 2623595350, - "ch.38.send.6.plink": 3660102211, - "ch.38.send.6.pan": 2763777850, - "ch.38.send.7": 1642385901, - "ch.38.send.7.on": 642274703, - "ch.38.send.7.lvl": 1547710175, - "ch.38.send.7.pon": 965843621, - "ch.38.send.7.ind": 986025974, - "ch.38.send.7.mode": 2616493059, - "ch.38.send.7.plink": 1344224723, - "ch.38.send.7.pan": 3224098510, - "ch.38.send.8": 3792538828, - "ch.38.send.8.on": 2705146806, - "ch.38.send.8.lvl": 3447005038, - "ch.38.send.8.pon": 1851607444, - "ch.38.send.8.ind": 3069829495, - "ch.38.send.8.mode": 3057316593, - "ch.38.send.8.plink": 2040068238, - "ch.38.send.8.pan": 171493247, - "ch.38.send.9": 3890972025, - "ch.38.send.9.on": 3867158218, - "ch.38.send.9.lvl": 135789978, - "ch.38.send.9.pon": 700081888, - "ch.38.send.9.ind": 4221354939, - "ch.38.send.9.mode": 3097382327, - "ch.38.send.9.plink": 3373602700, - "ch.38.send.9.pan": 1146398131, - "ch.38.send.10": 1122674342, - "ch.38.send.10.on": 1490001154, - "ch.38.send.10.lvl": 3698635087, - "ch.38.send.10.pon": 3091812831, - "ch.38.send.10.ind": 4004510468, - "ch.38.send.10.mode": 184597883, - "ch.38.send.10.plink": 1878193568, - "ch.38.send.10.pan": 2392767819, - "ch.38.send.11": 1906954811, - "ch.38.send.11.on": 276818567, - "ch.38.send.11.lvl": 3672425749, - "ch.38.send.11.pon": 3421270945, - "ch.38.send.11.ind": 2854907670, - "ch.38.send.11.mode": 1615711089, - "ch.38.send.11.plink": 2470410334, - "ch.38.send.11.pan": 2916233077, - "ch.38.send.12": 1331239673, - "ch.38.send.12.on": 2532293193, - "ch.38.send.12.lvl": 3457376867, - "ch.38.send.12.pon": 3196023027, - "ch.38.send.12.ind": 546877832, - "ch.38.send.12.mode": 1866505031, - "ch.38.send.12.plink": 738410300, - "ch.38.send.12.pan": 2999009615, - "ch.38.send.13": 626526919, - "ch.38.send.13.on": 1319090121, - "ch.38.send.13.lvl": 3372141641, - "ch.38.send.13.pon": 2995745189, - "ch.38.send.13.ind": 269000474, - "ch.38.send.13.mode": 676376669, - "ch.38.send.13.plink": 2358436202, - "ch.38.send.13.pan": 2506007209, - "ch.38.send.14": 1415708184, - "ch.38.send.14.on": 1695523150, - "ch.38.send.14.lvl": 3794508647, - "ch.38.send.14.pon": 2440090871, - "ch.38.send.14.ind": 17911484, - "ch.38.send.14.mode": 2231447443, - "ch.38.send.14.plink": 2042856008, - "ch.38.send.14.pan": 3513685155, - "ch.38.send.15": 3394055213, - "ch.38.send.15.on": 2361357280, - "ch.38.send.15.lvl": 3139011597, - "ch.38.send.15.pon": 3154377497, - "ch.38.send.15.ind": 3623146958, - "ch.38.send.15.mode": 1818372457, - "ch.38.send.15.plink": 447144102, - "ch.38.send.15.pan": 2594263405, - "ch.38.send.16": 4026318694, - "ch.38.send.16.on": 2905588069, - "ch.38.send.16.lvl": 3452272603, - "ch.38.send.16.pon": 3055598315, - "ch.38.send.16.ind": 395636512, - "ch.38.send.16.mode": 1802435263, - "ch.38.send.16.plink": 2382873988, - "ch.38.send.16.pan": 3039459175, - "ch.38.send.MX1": 3903724830, - "ch.38.send.MX1.on": 1007918931, - "ch.38.send.MX1.lvl": 2902658347, - "ch.38.send.MX1.pon": 619341292, - "ch.38.send.MX1.ind": 601756469, - "ch.38.send.MX1.mode": 165554338, - "ch.38.send.MX1.plink": 1325659129, - "ch.38.send.MX1.pan": 1061476890, - "ch.38.send.MX2": 911827435, - "ch.38.send.MX2.on": 3878216504, - "ch.38.send.MX2.lvl": 456368453, - "ch.38.send.MX2.pon": 162809830, - "ch.38.send.MX2.ind": 2048568876, - "ch.38.send.MX2.mode": 67036325, - "ch.38.send.MX2.plink": 3754890723, - "ch.38.send.MX2.pan": 4202408960, - "ch.38.send.MX3": 3048679744, - "ch.38.send.MX3.on": 4105679911, - "ch.38.send.MX3.lvl": 3782761140, - "ch.38.send.MX3.pon": 2494842422, - "ch.38.send.MX3.ind": 138316343, - "ch.38.send.MX3.mode": 379553444, - "ch.38.send.MX3.plink": 2867754803, - "ch.38.send.MX3.pan": 2685964880, - "ch.38.send.MX4": 171028063, - "ch.38.send.MX4.on": 366450730, - "ch.38.send.MX4.lvl": 3478691436, - "ch.38.send.MX4.pon": 3333995133, - "ch.38.send.MX4.ind": 4260362582, - "ch.38.send.MX4.mode": 2823964888, - "ch.38.send.MX4.plink": 2966815544, - "ch.38.send.MX4.pan": 3457424963, - "ch.38.send.MX5": 1066366388, - "ch.38.send.MX5.on": 1937742889, - "ch.38.send.MX5.lvl": 32918583, - "ch.38.send.MX5.pon": 440216490, - "ch.38.send.MX5.ind": 2433029441, - "ch.38.send.MX5.mode": 1261133593, - "ch.38.send.MX5.plink": 72475015, - "ch.38.send.MX5.pan": 3935815612, - "ch.38.send.MX6": 1866120449, - "ch.38.send.MX6.on": 1850642476, - "ch.38.send.MX6.lvl": 3689172961, - "ch.38.send.MX6.pon": 1777967018, - "ch.38.send.MX6.ind": 258714984, - "ch.38.send.MX6.mode": 3838863978, - "ch.38.send.MX6.plink": 1068854663, - "ch.38.send.MX6.pan": 1250644924, - "ch.38.send.MX7": 3855516766, - "ch.38.send.MX7.on": 2484353419, - "ch.38.send.MX7.lvl": 2878331367, - "ch.38.send.MX7.pon": 1936308556, - "ch.38.send.MX7.ind": 2039572852, - "ch.38.send.MX7.mode": 3622859203, - "ch.38.send.MX7.plink": 2304307353, - "ch.38.send.MX7.pan": 1897399674, - "ch.38.send.MX8": 863988016, - "ch.38.send.MX8.on": 3777408335, - "ch.38.send.MX8.lvl": 1211133415, - "ch.38.send.MX8.pon": 2625305420, - "ch.38.send.MX8.ind": 3358718813, - "ch.38.send.MX8.mode": 30707031, - "ch.38.send.MX8.plink": 2996007577, - "ch.38.send.MX8.pan": 3361134458, - "ch.38.tapwid": 3672882088, - "ch.38.postins": 3298155259, - "ch.38.postins.on": 1932734468, - "ch.38.postins.mode": 1823690023, - "ch.38.postins.ins": 2124111037, - "ch.38.postins.w": 2722345379, - "ch.38.postins.$stat": 2944439862, - "ch.38.tags": 3026660828, - "ch.38.$fdr": 1175919588, - "ch.38.$mute": 3624253721, - "ch.38.$muteovr": 1649670882, - "ch.39": 1246406744, - "ch.39.in": 689448893, - "ch.39.in.set": 2419840160, - "ch.39.in.set.$mode": 281784441, - "ch.39.in.set.srcauto": 3585338010, - "ch.39.in.set.altsrc": 1352760551, - "ch.39.in.set.inv": 1712109443, - "ch.39.in.set.trim": 767740341, - "ch.39.in.set.bal": 1452638306, - "ch.39.in.set.$g": 2502474418, - "ch.39.in.set.$vph": 871627032, - "ch.39.in.set.dlymode": 4251816401, - "ch.39.in.set.dly": 1370111607, - "ch.39.in.set.dlyon": 2681207111, - "ch.39.in.conn": 3077382438, - "ch.39.in.conn.grp": 4286982646, - "ch.39.in.conn.in": 153141123, - "ch.39.in.conn.altgrp": 2904429552, - "ch.39.in.conn.altin": 1848492130, - "ch.39.flt": 2578693581, - "ch.39.flt.lc": 418088900, - "ch.39.flt.lcf": 2366500891, - "ch.39.flt.hc": 766264386, - "ch.39.flt.hcf": 1442953219, - "ch.39.flt.tf": 2280160147, - "ch.39.flt.mdl": 3157721229, - "ch.39.flt.1": 2502043395, - "ch.39.flt.2": 3432626262, - "ch.39.clink": 2905865972, - "ch.39.col": 1368029400, - "ch.39.name": 2013275639, - "ch.39.icon": 820998779, - "ch.39.led": 3997068071, - "ch.39.$col": 3686854327, - "ch.39.$name": 3161104585, - "ch.39.$icon": 281978310, - "ch.39.mute": 1381647906, - "ch.39.fdr": 1924677280, - "ch.39.pan": 461997841, - "ch.39.wid": 3489902430, - "ch.39.$solo": 3328873397, - "ch.39.$sololed": 2676071315, - "ch.39.solosafe": 1151216739, - "ch.39.mon": 1903161784, - "ch.39.proc": 322564488, - "ch.39.ptap": 3288808522, - "ch.39.$presolo": 1742681602, - "ch.39.peq": 1080345540, - "ch.39.peq.on": 2787922389, - "ch.39.peq.1g": 2655784814, - "ch.39.peq.1f": 3634396740, - "ch.39.peq.1q": 3623607550, - "ch.39.peq.2g": 1039917098, - "ch.39.peq.2f": 245549271, - "ch.39.peq.2q": 2511218554, - "ch.39.peq.3g": 3512784502, - "ch.39.peq.3f": 2713184035, - "ch.39.peq.3q": 18040262, - "ch.39.gate": 1411607984, - "ch.39.gate.on": 1322237087, - "ch.39.gate.mdl": 2897112899, - "ch.39.gate.1": 2485627934, - "ch.39.gate.2": 1205256872, - "ch.39.gate.3": 1615815930, - "ch.39.gate.4": 651328423, - "ch.39.gate.5": 3624949217, - "ch.39.gate.6": 378064046, - "ch.39.gate.7": 3224883035, - "ch.39.gate.8": 3803219338, - "ch.39.gate.9": 2838383671, - "ch.39.gatesc": 3553778850, - "ch.39.gatesc.type": 2934607126, - "ch.39.gatesc.f": 592698976, - "ch.39.gatesc.q": 60069149, - "ch.39.gatesc.src": 3326888304, - "ch.39.gatesc.tap": 4137877463, - "ch.39.gatesc.$solo": 2635594205, - "ch.39.eq": 3656121718, - "ch.39.eq.on": 3615795342, - "ch.39.eq.mdl": 3586019276, - "ch.39.eq.mix": 2988313974, - "ch.39.eq.$solo": 1953730101, - "ch.39.eq.$solobd": 3544999070, - "ch.39.eq.1": 1535080780, - "ch.39.eq.2": 237230039, - "ch.39.eq.3": 3129663106, - "ch.39.eq.4": 2100273019, - "ch.39.eq.5": 708234774, - "ch.39.eq.6": 1480632492, - "ch.39.eq.7": 119908151, - "ch.39.eq.8": 3117196925, - "ch.39.eq.9": 1993436891, - "ch.39.eq.10": 3661034034, - "ch.39.eq.11": 2300279023, - "ch.39.eq.12": 1002592789, - "ch.39.eq.13": 3905358014, - "ch.39.eq.14": 2855160252, - "ch.39.eq.15": 1473433666, - "ch.39.eq.16": 2245872344, - "ch.39.eq.17": 885270901, - "ch.39.eq.18": 3871920286, - "ch.39.eq.19": 2758809881, - "ch.39.eq.20": 4023682259, - "ch.39.dyn": 2457097561, - "ch.39.dyn.on": 53893717, - "ch.39.dyn.mdl": 941273066, - "ch.39.dyn.mix": 531383980, - "ch.39.dyn.gain": 3339023485, - "ch.39.dyn.1": 3784830679, - "ch.39.dyn.2": 2811815994, - "ch.39.dyn.3": 1772332916, - "ch.39.dyn.4": 1638168782, - "ch.39.dyn.5": 4289370637, - "ch.39.dyn.6": 2981412727, - "ch.39.dyn.7": 3057629402, - "ch.39.dyn.8": 1849718811, - "ch.39.dyn.9": 3159050606, - "ch.39.dynxo": 534952070, - "ch.39.dynxo.depth": 3124762814, - "ch.39.dynxo.type": 1566586873, - "ch.39.dynxo.f": 2423118236, - "ch.39.dynxo.$solo": 2547978552, - "ch.39.dynsc": 2506795619, - "ch.39.dynsc.type": 282607687, - "ch.39.dynsc.f": 3658179058, - "ch.39.dynsc.q": 995105817, - "ch.39.dynsc.src": 2800862591, - "ch.39.dynsc.tap": 3736297164, - "ch.39.dynsc.$solo": 2634400052, - "ch.39.preins": 201410081, - "ch.39.preins.on": 2940389499, - "ch.39.preins.ins": 1293132359, - "ch.39.preins.$stat": 1885156955, - "ch.39.main": 3307317297, - "ch.39.main.1": 166480430, - "ch.39.main.1.on": 3351225994, - "ch.39.main.1.lvl": 2798112730, - "ch.39.main.1.pre": 3012467840, - "ch.39.main.2": 205947748, - "ch.39.main.2.on": 87943315, - "ch.39.main.2.lvl": 3914730747, - "ch.39.main.2.pre": 1191861761, - "ch.39.main.3": 1592673343, - "ch.39.main.3.on": 2382969130, - "ch.39.main.3.lvl": 1620119546, - "ch.39.main.3.pre": 1792553376, - "ch.39.main.4": 2627222461, - "ch.39.main.4.on": 2394595900, - "ch.39.main.4.lvl": 467846772, - "ch.39.main.4.pre": 1374058542, - "ch.39.send": 4014922358, - "ch.39.send.1": 1542277450, - "ch.39.send.1.on": 654923594, - "ch.39.send.1.lvl": 1201746714, - "ch.39.send.1.pon": 3828225632, - "ch.39.send.1.ind": 1009151035, - "ch.39.send.1.mode": 2725169388, - "ch.39.send.1.plink": 3555009128, - "ch.39.send.1.pan": 3737770803, - "ch.39.send.2": 2897615511, - "ch.39.send.2.on": 3123856461, - "ch.39.send.2.lvl": 1218078829, - "ch.39.send.2.pon": 2800057255, - "ch.39.send.2.ind": 3440717764, - "ch.39.send.2.mode": 1955822159, - "ch.39.send.2.plink": 1241016947, - "ch.39.send.2.pan": 206160076, - "ch.39.send.3": 2235114713, - "ch.39.send.3.on": 3930330168, - "ch.39.send.3.lvl": 2893822072, - "ch.39.send.3.pon": 1297492946, - "ch.39.send.3.ind": 3623933433, - "ch.39.send.3.mode": 2124352731, - "ch.39.send.3.plink": 4199846228, - "ch.39.send.3.pan": 1227919393, - "ch.39.send.4": 4251380771, - "ch.39.send.4.on": 3976329055, - "ch.39.send.4.lvl": 696896399, - "ch.39.send.4.pon": 2314606837, - "ch.39.send.4.ind": 3674509574, - "ch.39.send.4.mode": 4283599669, - "ch.39.send.4.plink": 782303428, - "ch.39.send.4.pan": 2782556958, - "ch.39.send.5": 635453264, - "ch.39.send.5.on": 2430160911, - "ch.39.send.5.lvl": 435254367, - "ch.39.send.5.pon": 4259336229, - "ch.39.send.5.ind": 2070731382, - "ch.39.send.5.mode": 3305430676, - "ch.39.send.5.plink": 3106868142, - "ch.39.send.5.pan": 3792030798, - "ch.39.send.6": 4161933290, - "ch.39.send.6.on": 856003569, - "ch.39.send.6.lvl": 3145559337, - "ch.39.send.6.pon": 542276547, - "ch.39.send.6.ind": 1157771016, - "ch.39.send.6.mode": 1210360107, - "ch.39.send.6.plink": 4042869195, - "ch.39.send.6.pan": 2557351216, - "ch.39.send.7": 1888807735, - "ch.39.send.7.on": 745414305, - "ch.39.send.7.lvl": 1781921785, - "ch.39.send.7.pon": 1229541683, - "ch.39.send.7.ind": 380721784, - "ch.39.send.7.mode": 1092006094, - "ch.39.send.7.plink": 1053227627, - "ch.39.send.7.pan": 3782058080, - "ch.39.send.8": 3367892342, - "ch.39.send.8.on": 2626100680, - "ch.39.send.8.lvl": 236910312, - "ch.39.send.8.pon": 2947609122, - "ch.39.send.8.ind": 2308542793, - "ch.39.send.8.mode": 3242543181, - "ch.39.send.8.plink": 3345408588, - "ch.39.send.8.pan": 911646577, - "ch.39.send.9": 20692163, - "ch.39.send.9.on": 4282220984, - "ch.39.send.9.lvl": 729131768, - "ch.39.send.9.pon": 1280941650, - "ch.39.send.9.ind": 3975209849, - "ch.39.send.9.mode": 2580483761, - "ch.39.send.9.plink": 574937721, - "ch.39.send.9.pan": 1413350049, - "ch.39.send.10": 1605425252, - "ch.39.send.10.on": 503932976, - "ch.39.send.10.lvl": 2619851312, - "ch.39.send.10.pon": 3477323466, - "ch.39.send.10.ind": 2405628409, - "ch.39.send.10.mode": 1084247059, - "ch.39.send.10.plink": 3879101011, - "ch.39.send.10.pan": 1434589187, - "ch.39.send.11": 2976910361, - "ch.39.send.11.on": 632921269, - "ch.39.send.11.lvl": 1907864598, - "ch.39.send.11.pon": 3760440764, - "ch.39.send.11.ind": 126059787, - "ch.39.send.11.mode": 449621625, - "ch.39.send.11.plink": 3059941241, - "ch.39.send.11.pan": 2458815389, - "ch.39.send.12": 3885158939, - "ch.39.send.12.on": 1588163563, - "ch.39.send.12.lvl": 2462457652, - "ch.39.send.12.pon": 3466218334, - "ch.39.send.12.ind": 2123444877, - "ch.39.send.12.mode": 4236341855, - "ch.39.send.12.plink": 3554642543, - "ch.39.send.12.pan": 126132967, - "ch.39.send.13": 2450641829, - "ch.39.send.13.on": 1759084651, - "ch.39.send.13.lvl": 1774835370, - "ch.39.send.13.pon": 3507095936, - "ch.39.send.13.ind": 492927727, - "ch.39.send.13.mode": 3434183589, - "ch.39.send.13.plink": 2857363381, - "ch.39.send.13.pan": 1170304577, - "ch.39.send.14": 3785241194, - "ch.39.send.14.on": 3519639292, - "ch.39.send.14.lvl": 2555138392, - "ch.39.send.14.pon": 81146578, - "ch.39.send.14.ind": 1394133697, - "ch.39.send.14.mode": 4290808315, - "ch.39.send.14.plink": 3933641099, - "ch.39.send.14.pan": 473020587, - "ch.39.send.15": 3625148703, - "ch.39.send.15.on": 2843296082, - "ch.39.send.15.lvl": 2769956542, - "ch.39.send.15.pon": 3783857732, - "ch.39.send.15.ind": 668840659, - "ch.39.send.15.mode": 159478593, - "ch.39.send.15.plink": 3855817361, - "ch.39.send.15.pan": 2755549797, - "ch.39.send.16": 843089828, - "ch.39.send.16.on": 141129175, - "ch.39.send.16.lvl": 1222537692, - "ch.39.send.16.pon": 3589907622, - "ch.39.send.16.ind": 422979669, - "ch.39.send.16.mode": 4239793383, - "ch.39.send.16.plink": 2734971783, - "ch.39.send.16.pan": 108267727, - "ch.39.send.MX1": 1267701524, - "ch.39.send.MX1.on": 647180014, - "ch.39.send.MX1.lvl": 3023878036, - "ch.39.send.MX1.pon": 2158913039, - "ch.39.send.MX1.ind": 463755506, - "ch.39.send.MX1.mode": 2920812449, - "ch.39.send.MX1.plink": 2864749882, - "ch.39.send.MX1.pan": 2474574337, - "ch.39.send.MX2": 2610272225, - "ch.39.send.MX2.on": 3454845665, - "ch.39.send.MX2.lvl": 996998023, - "ch.39.send.MX2.pon": 1811407925, - "ch.39.send.MX2.ind": 3344224591, - "ch.39.send.MX2.mode": 4006357950, - "ch.39.send.MX2.plink": 1108040496, - "ch.39.send.MX2.pan": 674590747, - "ch.39.send.MX3": 4036724554, - "ch.39.send.MX3.on": 1896337286, - "ch.39.send.MX3.lvl": 1739237354, - "ch.39.send.MX3.pon": 3782238529, - "ch.39.send.MX3.ind": 1275878756, - "ch.39.send.MX3.mode": 3402750811, - "ch.39.send.MX3.plink": 4155633132, - "ch.39.send.MX3.pan": 56546639, - "ch.39.send.MX4": 3436007509, - "ch.39.send.MX4.on": 1453831043, - "ch.39.send.MX4.lvl": 4002102190, - "ch.39.send.MX4.pon": 3735868751, - "ch.39.send.MX4.ind": 3609313801, - "ch.39.send.MX4.mode": 2703221031, - "ch.39.send.MX4.plink": 3365259770, - "ch.39.send.MX4.pan": 3587334465, - "ch.39.send.MX5": 2094219198, - "ch.39.send.MX5.on": 4189825960, - "ch.39.send.MX5.lvl": 1823770096, - "ch.39.send.MX5.pon": 3506514777, - "ch.39.send.MX5.ind": 2563472926, - "ch.39.send.MX5.mode": 4268070418, - "ch.39.send.MX5.plink": 4212011748, - "ch.39.send.MX5.pan": 3822145351, - "ch.39.send.MX6": 3520676619, - "ch.39.send.MX6.on": 512892837, - "ch.39.send.MX6.lvl": 1797122484, - "ch.39.send.MX6.pon": 305987417, - "ch.39.send.MX6.ind": 2544211515, - "ch.39.send.MX6.mode": 3104440801, - "ch.39.send.MX6.plink": 3892670180, - "ch.39.send.MX6.pan": 3527727943, - "ch.39.send.MX7": 589247060, - "ch.39.send.MX7.on": 1095810055, - "ch.39.send.MX7.lvl": 2638345505, - "ch.39.send.MX7.pon": 103161459, - "ch.39.send.MX7.ind": 3764302416, - "ch.39.send.MX7.mode": 2527249988, - "ch.39.send.MX7.plink": 470340046, - "ch.39.send.MX7.pan": 777960045, - "ch.39.send.MX8": 1847890746, - "ch.39.send.MX8.on": 1517740102, - "ch.39.send.MX8.lvl": 4217538858, - "ch.39.send.MX8.pon": 1232051278, - "ch.39.send.MX8.ind": 3966002410, - "ch.39.send.MX8.mode": 1402417755, - "ch.39.send.MX8.plink": 861104075, - "ch.39.send.MX8.pan": 454381672, - "ch.39.tapwid": 3785700390, - "ch.39.postins": 2973996981, - "ch.39.postins.on": 1581542698, - "ch.39.postins.mode": 1443076259, - "ch.39.postins.ins": 1661401973, - "ch.39.postins.w": 3023400589, - "ch.39.postins.$stat": 2924846460, - "ch.39.tags": 3102584306, - "ch.39.$fdr": 1653022298, - "ch.39.$mute": 152414803, - "ch.39.$muteovr": 2739768984, - "ch.40": 3934967399, - "ch.40.in": 2710981543, - "ch.40.in.set": 885811725, - "ch.40.in.set.$mode": 3259999906, - "ch.40.in.set.srcauto": 549157898, - "ch.40.in.set.altsrc": 2564476957, - "ch.40.in.set.inv": 2406429061, - "ch.40.in.set.trim": 420157201, - "ch.40.in.set.bal": 1301274300, - "ch.40.in.set.$g": 273889700, - "ch.40.in.set.$vph": 3698613480, - "ch.40.in.set.dlymode": 3342684833, - "ch.40.in.set.dly": 1378745681, - "ch.40.in.set.dlyon": 969062199, - "ch.40.in.conn": 3543550460, - "ch.40.in.conn.grp": 825102606, - "ch.40.in.conn.in": 3504702121, - "ch.40.in.conn.altgrp": 3207329533, - "ch.40.in.conn.altin": 1211844991, - "ch.40.flt": 4111895336, - "ch.40.flt.lc": 1972304585, - "ch.40.flt.lcf": 770441007, - "ch.40.flt.hc": 150877863, - "ch.40.flt.hcf": 2659436033, - "ch.40.flt.tf": 2358881550, - "ch.40.flt.mdl": 885363063, - "ch.40.flt.1": 3095722510, - "ch.40.flt.2": 1900079803, - "ch.40.clink": 2599865414, - "ch.40.col": 3232304951, - "ch.40.name": 3364672093, - "ch.40.icon": 3873816591, - "ch.40.led": 1412859243, - "ch.40.$col": 2872581453, - "ch.40.$name": 1872148037, - "ch.40.$icon": 4144406070, - "ch.40.mute": 3949458724, - "ch.40.fdr": 1364432462, - "ch.40.pan": 62926567, - "ch.40.wid": 982901324, - "ch.40.$solo": 662549927, - "ch.40.$sololed": 4236957673, - "ch.40.solosafe": 4059165908, - "ch.40.mon": 2993859224, - "ch.40.proc": 2802074116, - "ch.40.ptap": 428259848, - "ch.40.$presolo": 337018535, - "ch.40.peq": 3528596668, - "ch.40.peq.on": 3767958477, - "ch.40.peq.1g": 3921077702, - "ch.40.peq.1f": 960107068, - "ch.40.peq.1q": 2962419926, - "ch.40.peq.2g": 3398626354, - "ch.40.peq.2f": 2016689919, - "ch.40.peq.2q": 4220288386, - "ch.40.peq.3g": 1064700446, - "ch.40.peq.3f": 4019638475, - "ch.40.peq.3q": 117682030, - "ch.40.gate": 4054845690, - "ch.40.gate.on": 2637718105, - "ch.40.gate.mdl": 3428455720, - "ch.40.gate.1": 2794703428, - "ch.40.gate.2": 48722658, - "ch.40.gate.3": 3846705696, - "ch.40.gate.4": 691780333, - "ch.40.gate.5": 2241274299, - "ch.40.gate.6": 687172180, - "ch.40.gate.7": 2068555521, - "ch.40.gate.8": 1749660208, - "ch.40.gate.9": 2879728381, - "ch.40.gatesc": 1891703016, - "ch.40.gatesc.type": 474085743, - "ch.40.gatesc.f": 3724000330, - "ch.40.gatesc.q": 2112876967, - "ch.40.gatesc.src": 3505409242, - "ch.40.gatesc.tap": 2163661581, - "ch.40.gatesc.$solo": 2623538492, - "ch.40.eq": 1347251573, - "ch.40.eq.on": 1032123178, - "ch.40.eq.mdl": 1539258960, - "ch.40.eq.mix": 3088914618, - "ch.40.eq.$solo": 3468018165, - "ch.40.eq.$solobd": 3582563166, - "ch.40.eq.1": 3783246688, - "ch.40.eq.2": 337874035, - "ch.40.eq.3": 1418283470, - "ch.40.eq.4": 1999754303, - "ch.40.eq.5": 1144502666, - "ch.40.eq.6": 3728839680, - "ch.40.eq.7": 556055827, - "ch.40.eq.8": 3016391289, - "ch.40.eq.9": 282264799, - "ch.40.eq.10": 3560392598, - "ch.40.eq.11": 4011533539, - "ch.40.eq.12": 566283849, - "ch.40.eq.13": 1321808890, - "ch.40.eq.14": 1143946680, - "ch.40.eq.15": 1372748550, - "ch.40.eq.16": 1809601948, - "ch.40.eq.17": 985792233, - "ch.40.eq.18": 2160747674, - "ch.40.eq.19": 2658168389, - "ch.40.eq.20": 2312343423, - "ch.40.dyn": 3090358287, - "ch.40.dyn.on": 3762806715, - "ch.40.dyn.mdl": 2545447894, - "ch.40.dyn.mix": 2476987798, - "ch.40.dyn.gain": 3051352150, - "ch.40.dyn.1": 1411879985, - "ch.40.dyn.2": 491601284, - "ch.40.dyn.3": 66047146, - "ch.40.dyn.4": 2261108208, - "ch.40.dyn.5": 1256779611, - "ch.40.dyn.6": 2364720337, - "ch.40.dyn.7": 410938276, - "ch.40.dyn.8": 4222025037, - "ch.40.dyn.9": 1871115280, - "ch.40.dynxo": 2494610248, - "ch.40.dynxo.depth": 1636651238, - "ch.40.dynxo.type": 542806810, - "ch.40.dynxo.f": 1250397295, - "ch.40.dynxo.$solo": 3128918754, - "ch.40.dynsc": 1249693589, - "ch.40.dynsc.type": 2447074682, - "ch.40.dynsc.f": 1420312271, - "ch.40.dynsc.q": 3209655996, - "ch.40.dynsc.src": 599910962, - "ch.40.dynsc.tap": 1475001305, - "ch.40.dynsc.$solo": 4116925837, - "ch.40.preins": 322368885, - "ch.40.preins.on": 4236724861, - "ch.40.preins.ins": 1423126665, - "ch.40.preins.$stat": 2683329629, - "ch.40.main": 1176468969, - "ch.40.main.1": 16931862, - "ch.40.main.1.on": 321036699, - "ch.40.main.1.lvl": 4020947699, - "ch.40.main.1.pre": 4193362201, - "ch.40.main.2": 2135188172, - "ch.40.main.2.on": 3774678515, - "ch.40.main.2.lvl": 3048529115, - "ch.40.main.2.pre": 2586420705, - "ch.40.main.3": 2933424935, - "ch.40.main.3.on": 3311682324, - "ch.40.main.3.lvl": 2838260188, - "ch.40.main.3.pre": 120767414, - "ch.40.main.4": 1851402837, - "ch.40.main.4.on": 1136352100, - "ch.40.main.4.lvl": 3541250572, - "ch.40.main.4.pre": 126352198, - "ch.40.send": 621637220, - "ch.40.send.1": 1793061672, - "ch.40.send.1.on": 1532917908, - "ch.40.send.1.lvl": 3475395676, - "ch.40.send.1.pon": 3998971158, - "ch.40.send.1.ind": 1168881349, - "ch.40.send.1.mode": 4144626926, - "ch.40.send.1.plink": 2793284728, - "ch.40.send.1.pan": 4067884189, - "ch.40.send.2": 901383765, - "ch.40.send.2.on": 926628328, - "ch.40.send.2.lvl": 3079888392, - "ch.40.send.2.pon": 440296962, - "ch.40.send.2.ind": 1259258921, - "ch.40.send.2.mode": 1748045552, - "ch.40.send.2.plink": 1719851250, - "ch.40.send.2.pan": 2476914321, - "ch.40.send.3": 4121448139, - "ch.40.send.3.on": 1249440210, - "ch.40.send.3.lvl": 607176242, - "ch.40.send.3.pon": 127868440, - "ch.40.send.3.ind": 1572179027, - "ch.40.send.3.mode": 3643620790, - "ch.40.send.3.plink": 2877699734, - "ch.40.send.3.pan": 16346779, - "ch.40.send.4": 3408028129, - "ch.40.send.4.on": 541801831, - "ch.40.send.4.lvl": 4131592487, - "ch.40.send.4.pon": 1401901037, - "ch.40.send.4.ind": 213758398, - "ch.40.send.4.mode": 4030823235, - "ch.40.send.4.plink": 670169326, - "ch.40.send.4.pan": 3459498214, - "ch.40.send.5": 2558282370, - "ch.40.send.5.on": 3357966384, - "ch.40.send.5.lvl": 2794367328, - "ch.40.send.5.pon": 2230403098, - "ch.40.send.5.ind": 3674817313, - "ch.40.send.5.mode": 778850098, - "ch.40.send.5.plink": 1230750976, - "ch.40.send.5.pan": 2119631097, - "ch.40.send.6": 3932038408, - "ch.40.send.6.on": 3400714468, - "ch.40.send.6.lvl": 1274717324, - "ch.40.send.6.pon": 2911356070, - "ch.40.send.6.ind": 3078579861, - "ch.40.send.6.mode": 137873125, - "ch.40.send.6.plink": 3434085695, - "ch.40.send.6.pan": 673401901, - "ch.40.send.7": 3124245941, - "ch.40.send.7.on": 2499775192, - "ch.40.send.7.lvl": 363312792, - "ch.40.send.7.pon": 4158304946, - "ch.40.send.7.ind": 2166519897, - "ch.40.send.7.mode": 2758508385, - "ch.40.send.7.plink": 130052088, - "ch.40.send.7.pan": 3732868673, - "ch.40.send.8": 4289888404, - "ch.40.send.8.on": 2213828013, - "ch.40.send.8.lvl": 1792814157, - "ch.40.send.8.pon": 3332782023, - "ch.40.send.8.ind": 2572612196, - "ch.40.send.8.mode": 2460458711, - "ch.40.send.8.plink": 2039257515, - "ch.40.send.8.pan": 3800814764, - "ch.40.send.9": 3482095937, - "ch.40.send.9.on": 1309622150, - "ch.40.send.9.lvl": 883365470, - "ch.40.send.9.pon": 288050596, - "ch.40.send.9.ind": 1663153287, - "ch.40.send.9.mode": 1943585447, - "ch.40.send.9.plink": 2883246171, - "ch.40.send.9.pan": 2546974415, - "ch.40.send.10": 1731442474, - "ch.40.send.10.on": 3026104998, - "ch.40.send.10.lvl": 1569820976, - "ch.40.send.10.pon": 37970792, - "ch.40.send.10.ind": 1045719308, - "ch.40.send.10.mode": 3827188882, - "ch.40.send.10.plink": 3785528778, - "ch.40.send.10.pan": 1412524024, - "ch.40.send.11": 286966175, - "ch.40.send.11.on": 2618217259, - "ch.40.send.11.lvl": 1826725734, - "ch.40.send.11.pon": 564397378, - "ch.40.send.11.ind": 1712470110, - "ch.40.send.11.mode": 1330329960, - "ch.40.send.11.plink": 3842999264, - "ch.40.send.11.pan": 2815082762, - "ch.40.send.12": 3756525773, - "ch.40.send.12.on": 1920903541, - "ch.40.send.12.lvl": 1622124164, - "ch.40.send.12.pon": 685852860, - "ch.40.send.12.ind": 1990840560, - "ch.40.send.12.mode": 1078135966, - "ch.40.send.12.plink": 2613612358, - "ch.40.send.12.pan": 952030476, - "ch.40.send.13": 2249127155, - "ch.40.send.13.on": 1596891637, - "ch.40.send.13.lvl": 1568374378, - "ch.40.send.13.pon": 181470614, - "ch.40.send.13.ind": 2121916258, - "ch.40.send.13.mode": 4046658708, - "ch.40.send.13.plink": 3656948636, - "ch.40.send.13.pan": 1341240414, - "ch.40.send.14": 799084452, - "ch.40.send.14.on": 1168029818, - "ch.40.send.14.lvl": 1578840104, - "ch.40.send.14.pon": 4254031488, - "ch.40.send.14.ind": 1809897028, - "ch.40.send.14.mode": 1279915434, - "ch.40.send.14.plink": 3981309490, - "ch.40.send.14.pan": 1734465584, - "ch.40.send.15": 3921549209, - "ch.40.send.15.on": 491686868, - "ch.40.send.15.lvl": 2150164606, - "ch.40.send.15.pon": 348929690, - "ch.40.send.15.ind": 2074054230, - "ch.40.send.15.mode": 1693902720, - "ch.40.send.15.plink": 2699495624, - "ch.40.send.15.pan": 2759511842, - "ch.40.send.16": 2492836458, - "ch.40.send.16.on": 146713689, - "ch.40.send.16.lvl": 1278504860, - "ch.40.send.16.pon": 448755540, - "ch.40.send.16.ind": 2205000168, - "ch.40.send.16.mode": 1105521366, - "ch.40.send.16.plink": 3407068078, - "ch.40.send.16.pan": 769987396, - "ch.40.send.MX1": 3861429741, - "ch.40.send.MX1.on": 2517601789, - "ch.40.send.MX1.lvl": 2557812469, - "ch.40.send.MX1.pon": 771124739, - "ch.40.send.MX1.ind": 2459646221, - "ch.40.send.MX1.mode": 3014534994, - "ch.40.send.MX1.plink": 401334686, - "ch.40.send.MX1.pan": 119949885, - "ch.40.send.MX2": 2516328608, - "ch.40.send.MX2.on": 1626622432, - "ch.40.send.MX2.lvl": 3797342934, - "ch.40.send.MX2.pon": 128789508, - "ch.40.send.MX2.ind": 1228942806, - "ch.40.send.MX2.mode": 1222753071, - "ch.40.send.MX2.plink": 497104785, - "ch.40.send.MX2.pan": 762290226, - "ch.40.send.MX3": 411200139, - "ch.40.send.MX3.on": 468802821, - "ch.40.send.MX3.lvl": 437526779, - "ch.40.send.MX3.pon": 1382625456, - "ch.40.send.MX3.ind": 724627919, - "ch.40.send.MX3.mode": 1551651444, - "ch.40.send.MX3.plink": 679092925, - "ch.40.send.MX3.pan": 308722838, - "ch.40.send.MX4": 3278269772, - "ch.40.send.MX4.on": 3746548018, - "ch.40.send.MX4.lvl": 128290057, - "ch.40.send.MX4.pon": 1751432430, - "ch.40.send.MX4.ind": 1621064192, - "ch.40.send.MX4.mode": 419059776, - "ch.40.send.MX4.plink": 2457749291, - "ch.40.send.MX4.pan": 2087399688, - "ch.40.send.MX5": 2330769015, - "ch.40.send.MX5.on": 1518566463, - "ch.40.send.MX5.lvl": 2604148442, - "ch.40.send.MX5.pon": 1326992104, - "ch.40.send.MX5.ind": 2580831801, - "ch.40.send.MX5.mode": 2749165667, - "ch.40.send.MX5.plink": 618054485, - "ch.40.send.MX5.pan": 359278286, - "ch.40.send.MX6": 1572871114, - "ch.40.send.MX6.on": 3521697908, - "ch.40.send.MX6.lvl": 3495588583, - "ch.40.send.MX6.pon": 2706626279, - "ch.40.send.MX6.ind": 2738593362, - "ch.40.send.MX6.mode": 2980066418, - "ch.40.send.MX6.plink": 3071993682, - "ch.40.send.MX6.pan": 3274570489, - "ch.40.send.MX7": 3867526445, - "ch.40.send.MX7.on": 2922042697, - "ch.40.send.MX7.lvl": 1142462624, - "ch.40.send.MX7.pon": 1791999634, - "ch.40.send.MX7.ind": 3509858886, - "ch.40.send.MX7.mode": 2490894021, - "ch.40.send.MX7.plink": 1085508367, - "ch.40.send.MX7.pan": 699736676, - "ch.40.send.MX8": 2596143227, - "ch.40.send.MX8.on": 2342302037, - "ch.40.send.MX8.lvl": 553276581, - "ch.40.send.MX8.pon": 3733314665, - "ch.40.send.MX8.ind": 1741639061, - "ch.40.send.MX8.mode": 3397339860, - "ch.40.send.MX8.plink": 141070644, - "ch.40.send.MX8.pan": 637434007, - "ch.40.tapwid": 241285202, - "ch.40.postins": 3545490334, - "ch.40.postins.on": 2153891089, - "ch.40.postins.mode": 1049316853, - "ch.40.postins.ins": 793527231, - "ch.40.postins.w": 776342726, - "ch.40.postins.$stat": 1056764470, - "ch.40.tags": 4231775862, - "ch.40.$fdr": 225292092, - "ch.40.$mute": 51781779, - "ch.40.$muteovr": 786792984, - "aux": 2409826189, - "aux.1": 3599854022, - "aux.1.in": 1009816469, - "aux.1.in.set": 1202505641, - "aux.1.in.set.$mode": 236675858, - "aux.1.in.set.srcauto": 122396582, - "aux.1.in.set.altsrc": 3402858654, - "aux.1.in.set.inv": 1353775081, - "aux.1.in.set.trim": 3590483542, - "aux.1.in.set.bal": 2188485928, - "aux.1.in.set.$g": 1808591608, - "aux.1.in.set.$vph": 670540175, - "aux.1.in.set.dlymode": 3031827157, - "aux.1.in.set.dly": 3876548957, - "aux.1.in.set.dlyon": 2806635299, - "aux.1.in.conn": 649265280, - "aux.1.in.conn.grp": 635769570, - "aux.1.in.conn.in": 621207637, - "aux.1.in.conn.altgrp": 2001477001, - "aux.1.in.conn.altin": 268242675, - "aux.1.clink": 3690893329, - "aux.1.col": 3612829254, - "aux.1.name": 3248711191, - "aux.1.icon": 339013542, - "aux.1.led": 910599417, - "aux.1.$col": 1518279799, - "aux.1.$name": 2375653785, - "aux.1.$icon": 3399987602, - "aux.1.mute": 182242462, - "aux.1.fdr": 2925367718, - "aux.1.pan": 4076619317, - "aux.1.wid": 1749431326, - "aux.1.$solo": 1495006069, - "aux.1.$sololed": 535397421, - "aux.1.solosafe": 2733122502, - "aux.1.mon": 3537630806, - "aux.1.eq": 3822920355, - "aux.1.eq.on": 1762944048, - "aux.1.eq.mdl": 2197955066, - "aux.1.eq.mix": 2389914512, - "aux.1.eq.$solo": 2959069001, - "aux.1.eq.$solobd": 2978423034, - "aux.1.eq.1": 3171895578, - "aux.1.eq.2": 848632217, - "aux.1.eq.3": 2248524340, - "aux.1.eq.4": 2609958213, - "aux.1.eq.5": 375496176, - "aux.1.eq.6": 8353914, - "aux.1.eq.7": 1366681849, - "aux.1.eq.8": 2263651987, - "aux.1.eq.9": 3787300005, - "aux.1.eq.10": 2791427740, - "aux.1.eq.11": 3483858761, - "aux.1.eq.12": 1156990947, - "aux.1.eq.13": 1875318880, - "aux.1.eq.14": 1855071058, - "aux.1.eq.15": 684182572, - "aux.1.eq.16": 2461943446, - "aux.1.eq.17": 201267011, - "aux.1.eq.18": 1508764864, - "aux.1.eq.19": 1948185279, - "aux.1.eq.20": 1759820933, - "aux.1.dyn": 3269027309, - "aux.1.dyn.on": 857839593, - "aux.1.dyn.thr": 87522205, - "aux.1.dyn.depth": 1278471982, - "aux.1.dyn.fast": 3630013155, - "aux.1.dyn.peak": 2751026768, - "aux.1.dyn.ingain": 1311928238, - "aux.1.dyn.cpeak": 3278328595, - "aux.1.dyn.cmode": 3883919213, - "aux.1.preins": 1405744679, - "aux.1.preins.on": 491008574, - "aux.1.preins.ins": 4078082202, - "aux.1.preins.$stat": 249686043, - "aux.1.main": 1047981175, - "aux.1.main.1": 857149056, - "aux.1.main.1.on": 312956497, - "aux.1.main.1.lvl": 3692003849, - "aux.1.main.1.pre": 4174970947, - "aux.1.main.2": 2241412586, - "aux.1.main.2.on": 4022694876, - "aux.1.main.2.lvl": 3132987412, - "aux.1.main.2.pre": 2918765518, - "aux.1.main.3": 3586359305, - "aux.1.main.3.on": 3818014179, - "aux.1.main.3.lvl": 186260011, - "aux.1.main.3.pre": 627254801, - "aux.1.main.4": 1975875083, - "aux.1.main.4.on": 1297129955, - "aux.1.main.4.lvl": 1566078507, - "aux.1.main.4.pre": 35965457, - "aux.1.send": 1489346734, - "aux.1.send.1": 3332358370, - "aux.1.send.1.on": 1001036284, - "aux.1.send.1.lvl": 3001184436, - "aux.1.send.1.pon": 3471668046, - "aux.1.send.1.ind": 1365053501, - "aux.1.send.1.mode": 3523279170, - "aux.1.send.1.plink": 3580575575, - "aux.1.send.1.pan": 3939703077, - "aux.1.send.2": 33833647, - "aux.1.send.2.on": 3440312251, - "aux.1.send.2.lvl": 2708941715, - "aux.1.send.2.pon": 2148015513, - "aux.1.send.2.ind": 3757860210, - "aux.1.send.2.mode": 3988334312, - "aux.1.send.2.plink": 4061194286, - "aux.1.send.2.pan": 2036499322, - "aux.1.send.3": 447449201, - "aux.1.send.3.on": 3731148402, - "aux.1.send.3.lvl": 272431698, - "aux.1.send.3.pon": 731172600, - "aux.1.send.3.ind": 4105712819, - "aux.1.send.3.mode": 1863928902, - "aux.1.send.3.plink": 3115491027, - "aux.1.send.3.pan": 1199133371, - "aux.1.send.4": 2461013051, - "aux.1.send.4.on": 2147932557, - "aux.1.send.4.lvl": 42927405, - "aux.1.send.4.pon": 3807437799, - "aux.1.send.4.ind": 2517868420, - "aux.1.send.4.mode": 3208356703, - "aux.1.send.4.plink": 2794473431, - "aux.1.send.4.pan": 3402325388, - "aux.1.send.5": 3499563720, - "aux.1.send.5.on": 435872417, - "aux.1.send.5.lvl": 3904027641, - "aux.1.send.5.pon": 119516467, - "aux.1.send.5.ind": 758601336, - "aux.1.send.5.mode": 194418278, - "aux.1.send.5.plink": 3125224998, - "aux.1.send.5.pan": 1820025952, - "aux.1.send.6": 2392910658, - "aux.1.send.6.on": 2890823415, - "aux.1.send.6.lvl": 3932593623, - "aux.1.send.6.pon": 3379119741, - "aux.1.send.6.ind": 2531343630, - "aux.1.send.6.mode": 887603295, - "aux.1.send.6.plink": 1191480035, - "aux.1.send.6.pan": 1636759094, - "aux.1.send.7": 121991695, - "aux.1.send.7.on": 1255342835, - "aux.1.send.7.lvl": 1608198619, - "aux.1.send.7.pon": 4255390337, - "aux.1.send.7.ind": 912287610, - "aux.1.send.7.mode": 1809737804, - "aux.1.send.7.plink": 1927778715, - "aux.1.send.7.pan": 3808330098, - "aux.1.send.8": 525122798, - "aux.1.send.8.on": 1596437006, - "aux.1.send.8.lvl": 1264572630, - "aux.1.send.8.pon": 745499548, - "aux.1.send.8.ind": 1290081919, - "aux.1.send.8.mode": 1174387535, - "aux.1.send.8.plink": 3015423591, - "aux.1.send.8.pan": 3024826487, - "aux.1.send.9": 2863743899, - "aux.1.send.9.on": 2915745933, - "aux.1.send.9.lvl": 3237145645, - "aux.1.send.9.pon": 1619852519, - "aux.1.send.9.ind": 3212291716, - "aux.1.send.9.mode": 1700483768, - "aux.1.send.9.plink": 3656422511, - "aux.1.send.9.pan": 1487357068, - "aux.1.send.10": 1256730818, - "aux.1.send.10.on": 2829717790, - "aux.1.send.10.lvl": 3430841323, - "aux.1.send.10.pon": 3057805535, - "aux.1.send.10.ind": 3046338337, - "aux.1.send.10.mode": 1383815142, - "aux.1.send.10.plink": 1780591059, - "aux.1.send.10.pan": 3872695686, - "aux.1.send.11": 472868919, - "aux.1.send.11.on": 2432324739, - "aux.1.send.11.lvl": 3698232085, - "aux.1.send.11.pon": 2661754053, - "aux.1.send.11.ind": 569589191, - "aux.1.send.11.mode": 3440133608, - "aux.1.send.11.plink": 4173481781, - "aux.1.send.11.pan": 2152443508, - "aux.1.send.12": 4231237397, - "aux.1.send.12.on": 1787441069, - "aux.1.send.12.lvl": 3126650295, - "aux.1.send.12.pon": 2540715995, - "aux.1.send.12.ind": 3832207437, - "aux.1.send.12.mode": 1539711194, - "aux.1.send.12.plink": 926523479, - "aux.1.send.12.pan": 3921796178, - "aux.1.send.13": 2084249771, - "aux.1.send.13.on": 1390027565, - "aux.1.send.13.lvl": 3751570705, - "aux.1.send.13.pon": 1811942593, - "aux.1.send.13.ind": 3701141827, - "aux.1.send.13.mode": 3600167900, - "aux.1.send.13.plink": 1728667113, - "aux.1.send.13.pan": 3801413376, - "aux.1.send.14": 1300203868, - "aux.1.send.14.on": 1013583058, - "aux.1.send.14.lvl": 3411660275, - "aux.1.send.14.pon": 1476415847, - "aux.1.send.14.ind": 705675401, - "aux.1.send.14.mode": 3206220942, - "aux.1.send.14.plink": 1804646667, - "aux.1.send.14.pan": 3072640046, - "aux.1.send.15": 3446850353, - "aux.1.send.15.on": 347769468, - "aux.1.send.15.lvl": 3176911805, - "aux.1.send.15.pon": 2462663533, - "aux.1.send.15.ind": 3918035567, - "aux.1.send.15.mode": 3483892400, - "aux.1.send.15.plink": 1007161453, - "aux.1.send.15.pan": 2028734748, - "aux.1.send.16": 2641832962, - "aux.1.send.16.on": 4266274273, - "aux.1.send.16.lvl": 4282886815, - "aux.1.send.16.pon": 1968992867, - "aux.1.send.16.ind": 3786836949, - "aux.1.send.16.mode": 1663393122, - "aux.1.send.16.plink": 2144645007, - "aux.1.send.16.pan": 4045798138, - "aux.1.send.MX1": 3413182809, - "aux.1.send.MX1.on": 1362954066, - "aux.1.send.MX1.lvl": 3028211604, - "aux.1.send.MX1.pon": 359039503, - "aux.1.send.MX1.ind": 780332749, - "aux.1.send.MX1.mode": 40999357, - "aux.1.send.MX1.plink": 3952922938, - "aux.1.send.MX1.pan": 4274775553, - "aux.1.send.MX2": 2062992748, - "aux.1.send.MX2.on": 579005231, - "aux.1.send.MX2.lvl": 4102888345, - "aux.1.send.MX2.pon": 4032693249, - "aux.1.send.MX2.ind": 2243302937, - "aux.1.send.MX2.mode": 383669693, - "aux.1.send.MX2.plink": 103103276, - "aux.1.send.MX2.pan": 4096020495, - "aux.1.send.MX3": 1394361823, - "aux.1.send.MX3.on": 493336338, - "aux.1.send.MX3.lvl": 3403449957, - "aux.1.send.MX3.pon": 2572196085, - "aux.1.send.MX3.ind": 53547539, - "aux.1.send.MX3.mode": 257167083, - "aux.1.send.MX3.plink": 2201903216, - "aux.1.send.MX3.pan": 2614381787, - "aux.1.send.MX4": 3637285312, - "aux.1.send.MX4.on": 14240530, - "aux.1.send.MX4.lvl": 3877444131, - "aux.1.send.MX4.pon": 3182775536, - "aux.1.send.MX4.ind": 3536668735, - "aux.1.send.MX4.mode": 2920132832, - "aux.1.send.MX4.plink": 3883531389, - "aux.1.send.MX4.pan": 3603929302, - "aux.1.send.MX5": 1894912803, - "aux.1.send.MX5.on": 2454965160, - "aux.1.send.MX5.lvl": 1342871999, - "aux.1.send.MX5.pon": 216054526, - "aux.1.send.MX5.ind": 2915722324, - "aux.1.send.MX5.mode": 1117849684, - "aux.1.send.MX5.plink": 3803054779, - "aux.1.send.MX5.pan": 3627818776, - "aux.1.send.MX6": 1215811382, - "aux.1.send.MX6.on": 2415001512, - "aux.1.send.MX6.lvl": 3464609184, - "aux.1.send.MX6.pon": 1036742398, - "aux.1.send.MX6.ind": 75765264, - "aux.1.send.MX6.mode": 3189994542, - "aux.1.send.MX6.plink": 1737989819, - "aux.1.send.MX6.pan": 2001865496, - "aux.1.send.MX7": 546566297, - "aux.1.send.MX7.on": 1683529526, - "aux.1.send.MX7.lvl": 2212652287, - "aux.1.send.MX7.pon": 2190994083, - "aux.1.send.MX7.ind": 510382575, - "aux.1.send.MX7.mode": 3476866719, - "aux.1.send.MX7.plink": 1821029630, - "aux.1.send.MX7.pan": 2189905629, - "aux.1.send.MX8": 3501849871, - "aux.1.send.MX8.on": 4268032819, - "aux.1.send.MX8.lvl": 3408963834, - "aux.1.send.MX8.pon": 2704632996, - "aux.1.send.MX8.ind": 3441525077, - "aux.1.send.MX8.mode": 192623252, - "aux.1.send.MX8.plink": 3412915953, - "aux.1.send.MX8.pan": 3818512594, - "aux.1.tags": 3740903468, - "aux.1.$fdr": 3723438220, - "aux.1.$mute": 2991626229, - "aux.1.$muteovr": 1905821831, - "aux.2": 2601616244, - "aux.2.in": 2738953488, - "aux.2.in.set": 4128901855, - "aux.2.in.set.$mode": 2004541241, - "aux.2.in.set.srcauto": 1914735866, - "aux.2.in.set.altsrc": 710817389, - "aux.2.in.set.inv": 999058039, - "aux.2.in.set.trim": 3938473045, - "aux.2.in.set.bal": 2703423502, - "aux.2.in.set.$g": 198209510, - "aux.2.in.set.$vph": 693859032, - "aux.2.in.set.dlymode": 2583566901, - "aux.2.in.set.dly": 638509955, - "aux.2.in.set.dlyon": 2677248643, - "aux.2.in.conn": 422272726, - "aux.2.in.conn.grp": 2905081660, - "aux.2.in.conn.in": 1457024499, - "aux.2.in.conn.altgrp": 3472085602, - "aux.2.in.conn.altin": 2938095072, - "aux.2.clink": 4292074619, - "aux.2.col": 3167300704, - "aux.2.name": 364327757, - "aux.2.icon": 4055076380, - "aux.2.led": 1551201847, - "aux.2.$col": 1250855981, - "aux.2.$name": 1930156003, - "aux.2.$icon": 3384032308, - "aux.2.mute": 618030648, - "aux.2.fdr": 3182982924, - "aux.2.pan": 3717024211, - "aux.2.wid": 949813060, - "aux.2.$solo": 74036159, - "aux.2.$sololed": 1937629116, - "aux.2.solosafe": 3413411846, - "aux.2.mon": 3152898332, - "aux.2.eq": 1340935214, - "aux.2.eq.on": 1358778318, - "aux.2.eq.mdl": 2559289484, - "aux.2.eq.mix": 2070196790, - "aux.2.eq.$solo": 3321583782, - "aux.2.eq.$solobd": 2681472837, - "aux.2.eq.1": 3439472524, - "aux.2.eq.2": 665267735, - "aux.2.eq.3": 1761484994, - "aux.2.eq.4": 3013142203, - "aux.2.eq.5": 149956950, - "aux.2.eq.6": 453902060, - "aux.2.eq.7": 1549950327, - "aux.2.eq.8": 1996443709, - "aux.2.eq.9": 4233369115, - "aux.2.eq.10": 2565843698, - "aux.2.eq.11": 3667180975, - "aux.2.eq.12": 889822293, - "aux.2.eq.13": 2321440510, - "aux.2.eq.14": 2163975420, - "aux.2.eq.15": 374347650, - "aux.2.eq.16": 2823154968, - "aux.2.eq.17": 4260154293, - "aux.2.eq.18": 1147113054, - "aux.2.eq.19": 2310460505, - "aux.2.eq.20": 1985690387, - "aux.2.dyn": 2687156139, - "aux.2.dyn.on": 1628454775, - "aux.2.dyn.thr": 1531860495, - "aux.2.dyn.depth": 2978106844, - "aux.2.dyn.fast": 2147502457, - "aux.2.dyn.peak": 2454723198, - "aux.2.dyn.ingain": 906373493, - "aux.2.dyn.cpeak": 2395728133, - "aux.2.dyn.cmode": 2526471656, - "aux.2.preins": 1263965201, - "aux.2.preins.on": 270593417, - "aux.2.preins.ins": 2420754885, - "aux.2.preins.$stat": 429243472, - "aux.2.main": 3062097453, - "aux.2.main.1": 4046177338, - "aux.2.main.1.on": 3188166562, - "aux.2.main.1.lvl": 814704866, - "aux.2.main.1.pre": 4208662280, - "aux.2.main.2": 454137200, - "aux.2.main.2.on": 814051153, - "aux.2.main.2.lvl": 1377671945, - "aux.2.main.2.pre": 1834411843, - "aux.2.main.3": 1347115619, - "aux.2.main.3.on": 1905898286, - "aux.2.main.3.lvl": 2431749238, - "aux.2.main.3.pre": 1567470236, - "aux.2.main.4": 2211537297, - "aux.2.main.4.on": 3230732345, - "aux.2.main.4.lvl": 3594075105, - "aux.2.main.4.pre": 2042753755, - "aux.2.send": 1935016004, - "aux.2.send.1": 3043975816, - "aux.2.send.1.on": 19049050, - "aux.2.send.1.lvl": 361418378, - "aux.2.send.1.pon": 871863792, - "aux.2.send.1.ind": 3960443915, - "aux.2.send.1.mode": 4067706991, - "aux.2.send.1.plink": 939500453, - "aux.2.send.1.pan": 2907907587, - "aux.2.send.2": 3946051317, - "aux.2.send.2.on": 3715606909, - "aux.2.send.2.lvl": 1294959933, - "aux.2.send.2.pon": 1889723415, - "aux.2.send.2.ind": 3366602164, - "aux.2.send.2.mode": 207962412, - "aux.2.send.2.plink": 2557364629, - "aux.2.send.2.pan": 1980181756, - "aux.2.send.3": 851131947, - "aux.2.send.3.on": 2956752264, - "aux.2.send.3.lvl": 2051318056, - "aux.2.send.3.pon": 2637866978, - "aux.2.send.3.ind": 2613707657, - "aux.2.send.3.mode": 2696757978, - "aux.2.send.3.plink": 1594785516, - "aux.2.send.3.pan": 43317681, - "aux.2.send.4": 2235552385, - "aux.2.send.4.on": 1193743416, - "aux.2.send.4.lvl": 3146725496, - "aux.2.send.4.pon": 3656592338, - "aux.2.send.4.ind": 1510594041, - "aux.2.send.4.mode": 1587513682, - "aux.2.send.4.plink": 2589241440, - "aux.2.send.4.pan": 3747057697, - "aux.2.send.5": 3766967074, - "aux.2.send.5.on": 4066542763, - "aux.2.send.5.lvl": 271212003, - "aux.2.send.5.pon": 794135305, - "aux.2.send.5.ind": 77930594, - "aux.2.send.5.mode": 3939694977, - "aux.2.send.5.plink": 4065263576, - "aux.2.send.5.pan": 2474313322, - "aux.2.send.6": 2660316584, - "aux.2.send.6.on": 4109287649, - "aux.2.send.6.lvl": 3046565817, - "aux.2.send.6.pon": 1475050611, - "aux.2.send.6.ind": 3776677688, - "aux.2.send.6.mode": 2837363556, - "aux.2.send.6.plink": 3261008882, - "aux.2.send.6.pan": 1049051168, - "aux.2.send.7": 4128622485, - "aux.2.send.7.on": 2152968241, - "aux.2.send.7.lvl": 4001072873, - "aux.2.send.7.pon": 2466700547, - "aux.2.send.7.ind": 2448838088, - "aux.2.send.7.mode": 2240606307, - "aux.2.send.7.plink": 2465286175, - "aux.2.send.7.pan": 724250352, - "aux.2.send.8": 949817652, - "aux.2.send.8.on": 1580194748, - "aux.2.send.8.lvl": 611845364, - "aux.2.send.8.pon": 3238642702, - "aux.2.send.8.ind": 1928554365, - "aux.2.send.8.mode": 2952327347, - "aux.2.send.8.plink": 2889011838, - "aux.2.send.8.pan": 2813287781, - "aux.2.send.9": 2439095073, - "aux.2.send.9.on": 962796511, - "aux.2.send.9.lvl": 1563116815, - "aux.2.send.9.pon": 4233569397, - "aux.2.send.9.ind": 598072710, - "aux.2.send.9.mode": 3626163118, - "aux.2.send.9.plink": 4268822667, - "aux.2.send.9.pan": 2491128990, - "aux.2.send.10": 2912408436, - "aux.2.send.10.on": 1847760928, - "aux.2.send.10.lvl": 3476154413, - "aux.2.send.10.pon": 2669289215, - "aux.2.send.10.ind": 1904003296, - "aux.2.send.10.mode": 1298521494, - "aux.2.send.10.plink": 50321830, - "aux.2.send.10.pan": 511442516, - "aux.2.send.11": 1454825737, - "aux.2.send.11.on": 4134686629, - "aux.2.send.11.lvl": 3554799575, - "aux.2.send.11.pon": 2148109429, - "aux.2.send.11.ind": 90002422, - "aux.2.send.11.mode": 1932734728, - "aux.2.send.11.plink": 4035763864, - "aux.2.send.11.pan": 3606370410, - "aux.2.send.12": 2578176555, - "aux.2.send.12.on": 763525531, - "aux.2.send.12.lvl": 4052728505, - "aux.2.send.12.pon": 2614120699, - "aux.2.send.12.ind": 2387300396, - "aux.2.send.12.mode": 2421917002, - "aux.2.send.12.plink": 1890971962, - "aux.2.send.12.pan": 3235789280, - "aux.2.send.13": 3742051733, - "aux.2.send.13.on": 3092414747, - "aux.2.send.13.lvl": 3686011142, - "aux.2.send.13.pon": 2405443185, - "aux.2.send.13.ind": 4017842946, - "aux.2.send.13.mode": 3517658620, - "aux.2.send.13.plink": 4219842044, - "aux.2.send.13.pan": 3362513142, - "aux.2.send.14": 2326100730, - "aux.2.send.14.on": 2674037356, - "aux.2.send.14.lvl": 3673571653, - "aux.2.send.14.pon": 1721756439, - "aux.2.send.14.ind": 4246649208, - "aux.2.send.14.mode": 1982221742, - "aux.2.send.14.plink": 445664750, - "aux.2.send.14.pan": 2885393260, - "aux.2.send.15": 804948751, - "aux.2.send.15.on": 2008202946, - "aux.2.send.15.lvl": 3940849583, - "aux.2.send.15.pon": 2356338317, - "aux.2.send.15.ind": 2301096846, - "aux.2.send.15.mode": 2491911968, - "aux.2.send.15.plink": 1809392736, - "aux.2.send.15.pan": 3494147970, - "aux.2.send.16": 3673765940, - "aux.2.send.16.on": 1673688647, - "aux.2.send.16.lvl": 3930612404, - "aux.2.send.16.pon": 2718163219, - "aux.2.send.16.ind": 3929514756, - "aux.2.send.16.mode": 2413558402, - "aux.2.send.16.plink": 159015810, - "aux.2.send.16.pan": 3457799992, - "aux.2.send.MX1": 3606919347, - "aux.2.send.MX1.on": 8602141, - "aux.2.send.MX1.lvl": 57332869, - "aux.2.send.MX1.pon": 2076718014, - "aux.2.send.MX1.ind": 4218589549, - "aux.2.send.MX1.mode": 2632850400, - "aux.2.send.MX1.plink": 1376134651, - "aux.2.send.MX1.pan": 1762398168, - "aux.2.send.MX2": 2636682726, - "aux.2.send.MX2.on": 3245155899, - "aux.2.send.MX2.lvl": 501049398, - "aux.2.send.MX2.pon": 2652394916, - "aux.2.send.MX2.ind": 2767316057, - "aux.2.send.MX2.mode": 12224509, - "aux.2.send.MX2.plink": 3024816113, - "aux.2.send.MX2.pan": 2528944594, - "aux.2.send.MX3": 1158024293, - "aux.2.send.MX3.on": 64061781, - "aux.2.send.MX3.lvl": 2317370636, - "aux.2.send.MX3.pon": 159266496, - "aux.2.send.MX3.ind": 2098016319, - "aux.2.send.MX3.mode": 2906898106, - "aux.2.send.MX3.plink": 3747907341, - "aux.2.send.MX3.pan": 4221803174, - "aux.2.send.MX4": 2825046362, - "aux.2.send.MX4.on": 652174658, - "aux.2.send.MX4.lvl": 2422003940, - "aux.2.send.MX4.pon": 3544378053, - "aux.2.send.MX4.ind": 2275748371, - "aux.2.send.MX4.mode": 3549038752, - "aux.2.send.MX4.plink": 3170902784, - "aux.2.send.MX4.pan": 2973730475, - "aux.2.send.MX5": 2789228585, - "aux.2.send.MX5.on": 3378105311, - "aux.2.send.MX5.lvl": 3502681594, - "aux.2.send.MX5.pon": 2310471864, - "aux.2.send.MX5.ind": 115250708, - "aux.2.send.MX5.mode": 564250420, - "aux.2.send.MX5.plink": 1937242341, - "aux.2.send.MX5.pan": 2328419486, - "aux.2.send.MX6": 1315674844, - "aux.2.send.MX6.on": 2117349343, - "aux.2.send.MX6.lvl": 1876566487, - "aux.2.send.MX6.pon": 864138423, - "aux.2.send.MX6.ind": 1025539013, - "aux.2.send.MX6.mode": 1548497727, - "aux.2.send.MX6.plink": 1229014242, - "aux.2.send.MX6.pan": 821962889, - "aux.2.send.MX7": 25801075, - "aux.2.send.MX7.on": 1639349353, - "aux.2.send.MX7.lvl": 3157659392, - "aux.2.send.MX7.pon": 702653106, - "aux.2.send.MX7.ind": 120076198, - "aux.2.send.MX7.mode": 1680106507, - "aux.2.send.MX7.plink": 4291631855, - "aux.2.send.MX7.pan": 177942148, - "aux.2.send.MX8": 3350869621, - "aux.2.send.MX8.on": 477291863, - "aux.2.send.MX8.lvl": 124297984, - "aux.2.send.MX8.pon": 1275012233, - "aux.2.send.MX8.ind": 3098627269, - "aux.2.send.MX8.mode": 1711177777, - "aux.2.send.MX8.plink": 910374164, - "aux.2.send.MX8.pan": 1210947767, - "aux.2.tags": 847752950, - "aux.2.$fdr": 167628502, - "aux.2.$mute": 3049315259, - "aux.2.$muteovr": 1201063354, - "aux.3": 3398640210, - "aux.3.in": 89196176, - "aux.3.in.set": 80323333, - "aux.3.in.set.$mode": 1418707241, - "aux.3.in.set.srcauto": 4034626302, - "aux.3.in.set.altsrc": 1922758470, - "aux.3.in.set.inv": 4056567685, - "aux.3.in.set.trim": 2202723344, - "aux.3.in.set.bal": 3778346172, - "aux.3.in.set.$g": 1655587748, - "aux.3.in.set.$vph": 884217356, - "aux.3.in.set.dlymode": 880624925, - "aux.3.in.set.dly": 1170807633, - "aux.3.in.set.dlyon": 788709515, - "aux.3.in.conn": 701702676, - "aux.3.in.conn.grp": 2118580757, - "aux.3.in.conn.in": 404925057, - "aux.3.in.conn.altgrp": 706545899, - "aux.3.in.conn.altin": 1395396641, - "aux.3.clink": 4045863245, - "aux.3.col": 3975767537, - "aux.3.name": 263778971, - "aux.3.icon": 3787509994, - "aux.3.led": 1483194013, - "aux.3.$col": 1172328259, - "aux.3.$name": 1504955645, - "aux.3.$icon": 532796862, - "aux.3.mute": 2932005698, - "aux.3.fdr": 4172777274, - "aux.3.pan": 3492015737, - "aux.3.wid": 755812210, - "aux.3.$solo": 351314689, - "aux.3.$sololed": 2115971513, - "aux.3.solosafe": 1836366384, - "aux.3.mon": 3095205002, - "aux.3.eq": 3070031278, - "aux.3.eq.on": 1022191652, - "aux.3.eq.mdl": 1889209574, - "aux.3.eq.mix": 223691740, - "aux.3.eq.$solo": 2245235976, - "aux.3.eq.$solobd": 2348793459, - "aux.3.eq.1": 1089635286, - "aux.3.eq.2": 1761002637, - "aux.3.eq.3": 2678985336, - "aux.3.eq.4": 1470664977, - "aux.3.eq.5": 2231340812, - "aux.3.eq.6": 4078810230, - "aux.3.eq.7": 743609645, - "aux.3.eq.8": 2488265351, - "aux.3.eq.9": 295985585, - "aux.3.eq.10": 1962937000, - "aux.3.eq.11": 2927900485, - "aux.3.eq.12": 3596195519, - "aux.3.eq.13": 61740180, - "aux.3.eq.14": 2410353478, - "aux.3.eq.15": 4066369528, - "aux.3.eq.16": 1616250210, - "aux.3.eq.17": 2413651807, - "aux.3.eq.18": 3427790004, - "aux.3.eq.19": 2131157987, - "aux.3.eq.20": 2500573065, - "aux.3.dyn": 2294517073, - "aux.3.dyn.on": 1893933501, - "aux.3.dyn.thr": 3891529381, - "aux.3.dyn.depth": 1438148926, - "aux.3.dyn.fast": 847385788, - "aux.3.dyn.peak": 83775623, - "aux.3.dyn.ingain": 303563381, - "aux.3.dyn.cpeak": 1476373066, - "aux.3.dyn.cmode": 2440858570, - "aux.3.preins": 501214347, - "aux.3.preins.on": 1298174708, - "aux.3.preins.ins": 2945838288, - "aux.3.preins.$stat": 2488104743, - "aux.3.main": 3192950691, - "aux.3.main.1": 322792940, - "aux.3.main.1.on": 1036577400, - "aux.3.main.1.lvl": 1489049144, - "aux.3.main.1.pre": 4227165298, - "aux.3.main.2": 427773238, - "aux.3.main.2.on": 3920539856, - "aux.3.main.2.lvl": 83286528, - "aux.3.main.2.pre": 3497895514, - "aux.3.main.3": 1688039613, - "aux.3.main.3.on": 1239045948, - "aux.3.main.3.lvl": 1623337844, - "aux.3.main.3.pre": 50790190, - "aux.3.main.4": 2426345791, - "aux.3.main.4.on": 422140604, - "aux.3.main.4.lvl": 3916530676, - "aux.3.main.4.pre": 83344046, - "aux.3.send": 1914715514, - "aux.3.send.1": 3066805558, - "aux.3.send.1.on": 4289652766, - "aux.3.send.1.lvl": 720834246, - "aux.3.send.1.pon": 1284035948, - "aux.3.send.1.ind": 3966883407, - "aux.3.send.1.mode": 3392524134, - "aux.3.send.1.plink": 2948995699, - "aux.3.send.1.pan": 1395549959, - "aux.3.send.2": 3924573379, - "aux.3.send.2.on": 255715978, - "aux.3.send.2.lvl": 2608186330, - "aux.3.send.2.pon": 2086282656, - "aux.3.send.2.ind": 4243621115, - "aux.3.send.2.mode": 2228645041, - "aux.3.send.2.plink": 2847767673, - "aux.3.send.2.pan": 1681812467, - "aux.3.send.3": 867583405, - "aux.3.send.3.on": 2398107181, - "aux.3.send.3.lvl": 1603822029, - "aux.3.send.3.pon": 3253299015, - "aux.3.send.3.ind": 2736636644, - "aux.3.send.3.mode": 2297927332, - "aux.3.send.3.plink": 98337586, - "aux.3.send.3.pan": 1015265836, - "aux.3.send.4": 2217831223, - "aux.3.send.4.on": 3161346973, - "aux.3.send.4.lvl": 3661002717, - "aux.3.send.4.pon": 2034855031, - "aux.3.send.4.ind": 2796623508, - "aux.3.send.4.mode": 3617672910, - "aux.3.send.4.plink": 2961867883, - "aux.3.send.4.pan": 1903021980, - "aux.3.send.5": 3746501788, - "aux.3.send.5.on": 544172558, - "aux.3.send.5.lvl": 3797369046, - "aux.3.send.5.pon": 53158812, - "aux.3.send.5.ind": 903601791, - "aux.3.send.5.mode": 3607082828, - "aux.3.send.5.plink": 2696678408, - "aux.3.send.5.pan": 1795614839, - "aux.3.send.6": 2638541846, - "aux.3.send.6.on": 1008927539, - "aux.3.send.6.lvl": 1856710555, - "aux.3.send.6.pon": 1322564801, - "aux.3.send.6.ind": 707118394, - "aux.3.send.6.mode": 3771067969, - "aux.3.send.6.plink": 1029686825, - "aux.3.send.6.pan": 3602546482, - "aux.3.send.7": 4146424867, - "aux.3.send.7.on": 1023537383, - "aux.3.send.7.lvl": 1502201767, - "aux.3.send.7.pon": 4193655917, - "aux.3.send.7.ind": 721718590, - "aux.3.send.7.mode": 4247900469, - "aux.3.send.7.plink": 178391748, - "aux.3.send.7.pan": 4124733286, - "aux.3.send.8": 933458570, - "aux.3.send.8.on": 2334202007, - "aux.3.send.8.lvl": 2676572023, - "aux.3.send.8.pon": 3187016925, - "aux.3.send.8.ind": 1980671342, - "aux.3.send.8.mode": 2277752495, - "aux.3.send.8.plink": 3782228453, - "aux.3.send.8.pan": 592549846, - "aux.3.send.9": 2461964951, - "aux.3.send.9.on": 171071880, - "aux.3.send.9.lvl": 4170876200, - "aux.3.send.9.pon": 1457873890, - "aux.3.send.9.ind": 487923593, - "aux.3.send.9.mode": 1329408079, - "aux.3.send.9.plink": 3062787187, - "aux.3.send.9.pan": 1548344753, - "aux.3.send.10": 317231760, - "aux.3.send.10.on": 313448252, - "aux.3.send.10.lvl": 4124804885, - "aux.3.send.10.pon": 3870517050, - "aux.3.send.10.ind": 2889893249, - "aux.3.send.10.mode": 1409341615, - "aux.3.send.10.plink": 2320403823, - "aux.3.send.10.pan": 3906039021, - "aux.3.send.11": 3251282437, - "aux.3.send.11.on": 1247710881, - "aux.3.send.11.lvl": 4203425755, - "aux.3.send.11.pon": 2300828108, - "aux.3.send.11.ind": 2655377811, - "aux.3.send.11.mode": 434214197, - "aux.3.send.11.plink": 2096076981, - "aux.3.send.11.pan": 3718138255, - "aux.3.send.12": 2133072199, - "aux.3.send.12.on": 3545151999, - "aux.3.send.12.lvl": 3627625724, - "aux.3.send.12.pon": 2598413678, - "aux.3.send.12.ind": 3300773141, - "aux.3.send.12.mode": 801157371, - "aux.3.send.12.plink": 1505493915, - "aux.3.send.12.pan": 708789825, - "aux.3.send.13": 3787878009, - "aux.3.send.13.on": 142524799, - "aux.3.send.13.lvl": 40984338, - "aux.3.send.13.pon": 3631251440, - "aux.3.send.13.ind": 2246978391, - "aux.3.send.13.mode": 970008641, - "aux.3.send.13.plink": 2223765249, - "aux.3.send.13.pan": 3960598163, - "aux.3.send.14": 2379955006, - "aux.3.send.14.on": 2708394736, - "aux.3.send.14.lvl": 59028989, - "aux.3.send.14.pon": 227490562, - "aux.3.send.14.ind": 2500670409, - "aux.3.send.14.mode": 509612951, - "aux.3.send.14.plink": 1111385767, - "aux.3.send.14.pan": 362946517, - "aux.3.send.15": 2424786195, - "aux.3.send.15.on": 3374252126, - "aux.3.send.15.lvl": 3548835142, - "aux.3.send.15.pon": 2472073140, - "aux.3.send.15.ind": 3176862491, - "aux.3.send.15.mode": 1017955357, - "aux.3.send.15.plink": 3646623789, - "aux.3.send.15.pan": 3631163287, - "aux.3.send.16": 1037466064, - "aux.3.send.16.on": 1561245635, - "aux.3.send.16.lvl": 359338596, - "aux.3.send.16.pon": 2665416310, - "aux.3.send.16.ind": 2122949501, - "aux.3.send.16.mode": 938632099, - "aux.3.send.16.plink": 2519195955, - "aux.3.send.16.pan": 909464585, - "aux.3.send.MX1": 3355998606, - "aux.3.send.MX1.on": 1987666001, - "aux.3.send.MX1.lvl": 2807888297, - "aux.3.send.MX1.pon": 1672013024, - "aux.3.send.MX1.ind": 1139001479, - "aux.3.send.MX1.mode": 3028810318, - "aux.3.send.MX1.plink": 966422253, - "aux.3.send.MX1.pan": 1356269766, - "aux.3.send.MX2": 2215531899, - "aux.3.send.MX2.on": 1223902302, - "aux.3.send.MX2.lvl": 1779252690, - "aux.3.send.MX2.pon": 3829016288, - "aux.3.send.MX2.ind": 3472962586, - "aux.3.send.MX2.mode": 130594379, - "aux.3.send.MX2.plink": 3126139117, - "aux.3.send.MX2.pan": 2694165190, - "aux.3.send.MX3": 1410256080, - "aux.3.send.MX3.on": 3968704056, - "aux.3.send.MX3.lvl": 1909351872, - "aux.3.send.MX3.pon": 2577822783, - "aux.3.send.MX3.ind": 323252281, - "aux.3.send.MX3.mode": 3036001408, - "aux.3.send.MX3.plink": 1869118378, - "aux.3.send.MX3.pan": 2071390257, - "aux.3.send.MX4": 3579447535, - "aux.3.send.MX4.on": 781005368, - "aux.3.send.MX4.lvl": 2831088064, - "aux.3.send.MX4.pon": 191031345, - "aux.3.send.MX4.ind": 1033497460, - "aux.3.send.MX4.mode": 992456346, - "aux.3.send.MX4.plink": 897603548, - "aux.3.send.MX4.pan": 694842431, - "aux.3.send.MX5": 2035974052, - "aux.3.send.MX5.on": 833976949, - "aux.3.send.MX5.lvl": 1771093509, - "aux.3.send.MX5.pon": 4290189412, - "aux.3.send.MX5.ind": 1017841523, - "aux.3.send.MX5.mode": 2303026655, - "aux.3.send.MX5.plink": 3922437425, - "aux.3.send.MX5.pan": 75316370, - "aux.3.send.MX6": 1231051665, - "aux.3.send.MX6.on": 1975807586, - "aux.3.send.MX6.lvl": 2803507651, - "aux.3.send.MX6.pon": 1272155236, - "aux.3.send.MX6.ind": 1958058438, - "aux.3.send.MX6.mode": 4065710548, - "aux.3.send.MX6.plink": 1636794673, - "aux.3.send.MX6.pan": 1230071954, - "aux.3.send.MX7": 447443534, - "aux.3.send.MX7.on": 1510900108, - "aux.3.send.MX7.lvl": 1958346060, - "aux.3.send.MX7.pon": 1078971710, - "aux.3.send.MX7.ind": 3480946149, - "aux.3.send.MX7.mode": 2137696529, - "aux.3.send.MX7.plink": 373218427, - "aux.3.send.MX7.pan": 617738584, - "aux.3.send.MX8": 3601626528, - "aux.3.send.MX8.on": 336635273, - "aux.3.send.MX8.lvl": 1853505905, - "aux.3.send.MX8.pon": 2962820805, - "aux.3.send.MX8.ind": 6824511, - "aux.3.send.MX8.mode": 3732870382, - "aux.3.send.MX8.plink": 3330891520, - "aux.3.send.MX8.pan": 3028861611, - "aux.3.tags": 3942027152, - "aux.3.$fdr": 319688368, - "aux.3.$mute": 2666476369, - "aux.3.$muteovr": 1366247267, - "aux.4": 4111983869, - "aux.4.in": 3697319762, - "aux.4.in.set": 1157823371, - "aux.4.in.set.$mode": 1287370235, - "aux.4.in.set.srcauto": 2081990412, - "aux.4.in.set.altsrc": 568899732, - "aux.4.in.set.inv": 4112234088, - "aux.4.in.set.trim": 3450970479, - "aux.4.in.set.bal": 3554599977, - "aux.4.in.set.$g": 694135745, - "aux.4.in.set.$vph": 535296702, - "aux.4.in.set.dlymode": 4212633539, - "aux.4.in.set.dly": 3430560308, - "aux.4.in.set.dlyon": 2636663509, - "aux.4.in.conn": 2407676325, - "aux.4.in.conn.grp": 2969049328, - "aux.4.in.conn.in": 2436081456, - "aux.4.in.conn.altgrp": 19551977, - "aux.4.in.conn.altin": 283486611, - "aux.4.clink": 3400543223, - "aux.4.col": 3544697044, - "aux.4.name": 4145730097, - "aux.4.icon": 3755256783, - "aux.4.led": 981559067, - "aux.4.$col": 946657401, - "aux.4.$name": 2254591303, - "aux.4.$icon": 53868032, - "aux.4.mute": 240389148, - "aux.4.fdr": 2805380448, - "aux.4.pan": 3098829271, - "aux.4.wid": 1820880856, - "aux.4.$solo": 1426014059, - "aux.4.$sololed": 1517765243, - "aux.4.solosafe": 1169198855, - "aux.4.mon": 3506885136, - "aux.4.eq": 504160061, - "aux.4.eq.on": 619172146, - "aux.4.eq.mdl": 2334266872, - "aux.4.eq.mix": 4282008642, - "aux.4.eq.$solo": 2589380385, - "aux.4.eq.$solobd": 2021685394, - "aux.4.eq.1": 1357704328, - "aux.4.eq.2": 1494244331, - "aux.4.eq.3": 2275832614, - "aux.4.eq.4": 1875159111, - "aux.4.eq.5": 2006620050, - "aux.4.eq.6": 228900136, - "aux.4.eq.7": 1010273419, - "aux.4.eq.8": 2221384017, - "aux.4.eq.9": 742381799, - "aux.4.eq.10": 1738172814, - "aux.4.eq.11": 3195928795, - "aux.4.eq.12": 3328044449, - "aux.4.eq.13": 506879234, - "aux.4.eq.14": 2635207184, - "aux.4.eq.15": 3840256382, - "aux.4.eq.16": 2062495476, - "aux.4.eq.17": 2178227777, - "aux.4.eq.18": 2981595938, - "aux.4.eq.19": 2576171709, - "aux.4.eq.20": 2725296343, - "aux.4.dyn": 3536904399, - "aux.4.dyn.on": 798347003, - "aux.4.dyn.thr": 1187950975, - "aux.4.dyn.depth": 1694708852, - "aux.4.dyn.fast": 2445847650, - "aux.4.dyn.peak": 3740539008, - "aux.4.dyn.ingain": 2507518647, - "aux.4.dyn.cpeak": 3259126371, - "aux.4.dyn.cmode": 2775132408, - "aux.4.preins": 1617931749, - "aux.4.preins.on": 1976390970, - "aux.4.preins.ins": 3625531638, - "aux.4.preins.$stat": 3741034960, - "aux.4.main": 1168401977, - "aux.4.main.1": 747205734, - "aux.4.main.1.on": 3420230694, - "aux.4.main.1.lvl": 3736385662, - "aux.4.main.1.pre": 2158735908, - "aux.4.main.2": 2184235964, - "aux.4.main.2.on": 2562404317, - "aux.4.main.2.lvl": 3588447133, - "aux.4.main.2.pre": 3823571415, - "aux.4.main.3": 3622574647, - "aux.4.main.3.on": 4191061194, - "aux.4.main.3.lvl": 2295749530, - "aux.4.main.3.pre": 3852265280, - "aux.4.main.4": 1844646565, - "aux.4.main.4.on": 2668977413, - "aux.4.main.4.lvl": 1669149013, - "aux.4.main.4.pre": 2151807759, - "aux.4.send": 1626281744, - "aux.4.send.1": 3449631964, - "aux.4.send.1.on": 1950834908, - "aux.4.send.1.lvl": 914306324, - "aux.4.send.1.pon": 3612552942, - "aux.4.send.1.ind": 1644417885, - "aux.4.send.1.mode": 3695504667, - "aux.4.send.1.plink": 2658065305, - "aux.4.send.1.pan": 3207519621, - "aux.4.send.2": 4212858665, - "aux.4.send.2.on": 2631807852, - "aux.4.send.2.lvl": 1705381636, - "aux.4.send.2.pon": 2312919550, - "aux.4.send.2.ind": 2938818477, - "aux.4.send.2.mode": 2012925726, - "aux.4.send.2.plink": 1183905864, - "aux.4.send.2.pan": 3992368917, - "aux.4.send.3": 495245639, - "aux.4.send.3.on": 554701515, - "aux.4.send.3.lvl": 1638414083, - "aux.4.send.3.pon": 1042746601, - "aux.4.send.3.ind": 908293442, - "aux.4.send.3.mode": 182384455, - "aux.4.send.3.plink": 1403702843, - "aux.4.send.3.pan": 3301674890, - "aux.4.send.4": 2600649629, - "aux.4.send.4.on": 1573822299, - "aux.4.send.4.lvl": 2432092979, - "aux.4.send.4.pon": 4035681785, - "aux.4.send.4.ind": 1870357458, - "aux.4.send.4.mode": 3983854776, - "aux.4.send.4.plink": 789377660, - "aux.4.send.4.pan": 145105690, - "aux.4.send.5": 3363846902, - "aux.4.send.5.on": 2381782443, - "aux.4.send.5.lvl": 481228515, - "aux.4.send.5.pon": 4213240329, - "aux.4.send.5.ind": 2032767330, - "aux.4.send.5.mode": 3241369623, - "aux.4.send.5.plink": 3345910234, - "aux.4.send.5.pan": 3766919018, - "aux.4.send.6": 2255904892, - "aux.4.send.6.on": 2674078325, - "aux.4.send.6.lvl": 2000378149, - "aux.4.send.6.pon": 3533114207, - "aux.4.send.6.ind": 2378168316, - "aux.4.send.6.mode": 2599587110, - "aux.4.send.6.plink": 1846904896, - "aux.4.send.6.pan": 1316139188, - "aux.4.send.7": 150228937, - "aux.4.send.7.on": 3407463909, - "aux.4.send.7.lvl": 2744250165, - "aux.4.send.7.pon": 2285886031, - "aux.4.send.7.ind": 3709282668, - "aux.4.send.7.mode": 341601338, - "aux.4.send.7.plink": 380872573, - "aux.4.send.7.pan": 2153400100, - "aux.4.send.8": 645006544, - "aux.4.send.8.on": 910773877, - "aux.4.send.8.lvl": 3095491877, - "aux.4.send.8.pon": 424693599, - "aux.4.send.8.ind": 1274862588, - "aux.4.send.8.mode": 3295817566, - "aux.4.send.8.plink": 3096820180, - "aux.4.send.8.pan": 2503330996, - "aux.4.send.9": 2834297917, - "aux.4.send.9.on": 1544192490, - "aux.4.send.9.lvl": 3465718586, - "aux.4.send.9.pon": 4008689216, - "aux.4.send.9.ind": 1243049371, - "aux.4.send.9.mode": 2312810975, - "aux.4.send.9.plink": 3273751127, - "aux.4.send.9.pan": 4140434259, - "aux.4.send.10": 2658694754, - "aux.4.send.10.on": 4249275582, - "aux.4.send.10.lvl": 105538026, - "aux.4.send.10.pon": 2854135090, - "aux.4.send.10.ind": 2087134673, - "aux.4.send.10.mode": 1153936039, - "aux.4.send.10.plink": 1236641042, - "aux.4.send.10.pan": 1627398335, - "aux.4.send.11": 3432161943, - "aux.4.send.11.on": 1435965987, - "aux.4.send.11.lvl": 100300196, - "aux.4.send.11.pon": 2581276440, - "aux.4.send.11.ind": 1276030903, - "aux.4.send.11.mode": 594044585, - "aux.4.send.11.plink": 1767273636, - "aux.4.send.11.pan": 1537694573, - "aux.4.send.12": 4089203381, - "aux.4.send.12.on": 1059514893, - "aux.4.send.12.lvl": 4159211142, - "aux.4.send.12.pon": 2355373038, - "aux.4.send.12.ind": 1317461728, - "aux.4.send.12.mode": 1501179771, - "aux.4.send.12.plink": 1977437126, - "aux.4.send.12.pan": 620081115, - "aux.4.send.13": 1805048587, - "aux.4.send.13.on": 2457266061, - "aux.4.send.13.lvl": 447223408, - "aux.4.send.13.pon": 2759077940, - "aux.4.send.13.ind": 1039621270, - "aux.4.send.13.mode": 1586101373, - "aux.4.send.13.plink": 980237576, - "aux.4.send.13.pan": 394833033, - "aux.4.send.14": 2583743932, - "aux.4.send.14.on": 2886127922, - "aux.4.send.14.lvl": 199081138, - "aux.4.send.14.pon": 3213618650, - "aux.4.send.14.ind": 1396444953, - "aux.4.send.14.mode": 514771759, - "aux.4.send.14.plink": 2276248106, - "aux.4.send.14.pan": 1402509159, - "aux.4.send.15": 636419153, - "aux.4.send.15.on": 3562488732, - "aux.4.send.15.lvl": 278907756, - "aux.4.send.15.pon": 2274708928, - "aux.4.send.15.ind": 1442616738, - "aux.4.send.15.mode": 1463513457, - "aux.4.send.15.plink": 2359556764, - "aux.4.send.15.pan": 1254095925, - "aux.4.send.16": 1226370850, - "aux.4.send.16.on": 4075221249, - "aux.4.send.16.lvl": 462128526, - "aux.4.send.16.pon": 3559428150, - "aux.4.send.16.ind": 1164634888, - "aux.4.send.16.mode": 1430869539, - "aux.4.send.16.plink": 1026613182, - "aux.4.send.16.pan": 654975043, - "aux.4.send.MX1": 3145777744, - "aux.4.send.MX1.on": 2149760496, - "aux.4.send.MX1.lvl": 2416737489, - "aux.4.send.MX1.pon": 1321871234, - "aux.4.send.MX1.ind": 774461175, - "aux.4.send.MX1.mode": 3364712739, - "aux.4.send.MX1.plink": 616117951, - "aux.4.send.MX1.pan": 901270420, - "aux.4.send.MX2": 28052541, - "aux.4.send.MX2.on": 155034106, - "aux.4.send.MX2.lvl": 2361639043, - "aux.4.send.MX2.pon": 2879522196, - "aux.4.send.MX2.ind": 4275202634, - "aux.4.send.MX2.mode": 4122271011, - "aux.4.send.MX2.plink": 3579860129, - "aux.4.send.MX2.pan": 3906976130, - "aux.4.send.MX3": 2133099534, - "aux.4.send.MX3.on": 1320861029, - "aux.4.send.MX3.lvl": 849797795, - "aux.4.send.MX3.pon": 1916544760, - "aux.4.send.MX3.ind": 2255005301, - "aux.4.send.MX3.mode": 3960325657, - "aux.4.send.MX3.plink": 1548147877, - "aux.4.send.MX3.pan": 1912128222, - "aux.4.send.MX4": 1044665289, - "aux.4.send.MX4.on": 1539527016, - "aux.4.send.MX4.lvl": 3947808477, - "aux.4.send.MX4.pon": 4103183090, - "aux.4.send.MX4.ind": 3721502240, - "aux.4.send.MX4.mode": 1791427434, - "aux.4.send.MX4.plink": 178088111, - "aux.4.send.MX4.pan": 4020457156, - "aux.4.send.MX5": 213699322, - "aux.4.send.MX5.on": 1228316627, - "aux.4.send.MX5.lvl": 1424275253, - "aux.4.send.MX5.pon": 478892160, - "aux.4.send.MX5.ind": 2939927051, - "aux.4.send.MX5.mode": 1823457199, - "aux.4.send.MX5.plink": 106387789, - "aux.4.send.MX5.pan": 412185702, - "aux.4.send.MX6": 971510343, - "aux.4.send.MX6.on": 2862334934, - "aux.4.send.MX6.lvl": 3686996711, - "aux.4.send.MX6.pon": 1579205765, - "aux.4.send.MX6.ind": 830471566, - "aux.4.send.MX6.mode": 39791576, - "aux.4.send.MX6.plink": 871249216, - "aux.4.send.MX6.pan": 654090347, - "aux.4.send.MX7": 3139512720, - "aux.4.send.MX7.on": 2375929556, - "aux.4.send.MX7.lvl": 2974778090, - "aux.4.send.MX7.pon": 1233803022, - "aux.4.send.MX7.ind": 4154616249, - "aux.4.send.MX7.mode": 2555055877, - "aux.4.send.MX7.plink": 866389259, - "aux.4.send.MX7.pan": 1252324136, - "aux.4.send.MX8": 4243373822, - "aux.4.send.MX8.on": 3914547861, - "aux.4.send.MX8.lvl": 1183237857, - "aux.4.send.MX8.pon": 2024985907, - "aux.4.send.MX8.ind": 1207617583, - "aux.4.send.MX8.mode": 3265186617, - "aux.4.send.MX8.plink": 2728119054, - "aux.4.send.MX8.pan": 3161219373, - "aux.4.tags": 3957961722, - "aux.4.$fdr": 4201221274, - "aux.4.$mute": 2514571223, - "aux.4.$muteovr": 563299142, - "aux.5": 614077672, - "aux.5.in": 1131489185, - "aux.5.in.set": 4031258321, - "aux.5.in.set.$mode": 3745381988, - "aux.5.in.set.srcauto": 776807565, - "aux.5.in.set.altsrc": 1075345722, - "aux.5.in.set.inv": 4094045141, - "aux.5.in.set.trim": 2620716037, - "aux.5.in.set.bal": 3567531116, - "aux.5.in.set.$g": 3544854228, - "aux.5.in.set.$vph": 71207557, - "aux.5.in.set.dlymode": 16481317, - "aux.5.in.set.dly": 3985154657, - "aux.5.in.set.dlyon": 928536531, - "aux.5.in.conn": 2137101612, - "aux.5.in.conn.grp": 2936009293, - "aux.5.in.conn.in": 766911385, - "aux.5.in.conn.altgrp": 3164742425, - "aux.5.in.conn.altin": 1251815939, - "aux.5.clink": 4256188585, - "aux.5.col": 3582189390, - "aux.5.name": 3602009967, - "aux.5.icon": 4091832334, - "aux.5.led": 1622815297, - "aux.5.$col": 1390324015, - "aux.5.$name": 1830044609, - "aux.5.$icon": 3443715178, - "aux.5.mute": 675563846, - "aux.5.fdr": 2957667054, - "aux.5.pan": 4114437533, - "aux.5.wid": 1102528870, - "aux.5.$solo": 26183645, - "aux.5.$sololed": 3021631613, - "aux.5.solosafe": 1913727697, - "aux.5.mon": 3407697342, - "aux.5.eq": 4028438207, - "aux.5.eq.on": 1637281544, - "aux.5.eq.mdl": 2658178610, - "aux.5.eq.mix": 2179710088, - "aux.5.eq.$solo": 2991248035, - "aux.5.eq.$solobd": 3558615360, - "aux.5.eq.1": 3717971762, - "aux.5.eq.2": 723620001, - "aux.5.eq.3": 1704414716, - "aux.5.eq.4": 2735953949, - "aux.5.eq.5": 4209579368, - "aux.5.eq.6": 552792018, - "aux.5.eq.7": 1491689793, - "aux.5.eq.8": 1719213723, - "aux.5.eq.9": 3998165181, - "aux.5.eq.10": 2330543044, - "aux.5.eq.11": 3945726225, - "aux.5.eq.12": 946786923, - "aux.5.eq.13": 2420412376, - "aux.5.eq.14": 2063636954, - "aux.5.eq.15": 137778996, - "aux.5.eq.16": 2923483582, - "aux.5.eq.17": 75932427, - "aux.5.eq.18": 1046896760, - "aux.5.eq.19": 2073848423, - "aux.5.eq.20": 1885483949, - "aux.5.dyn": 2755778613, - "aux.5.dyn.on": 1600464737, - "aux.5.dyn.thr": 672697973, - "aux.5.dyn.depth": 437030638, - "aux.5.dyn.fast": 4071789036, - "aux.5.dyn.peak": 3687503962, - "aux.5.dyn.ingain": 3732891269, - "aux.5.dyn.cpeak": 695608553, - "aux.5.dyn.cmode": 4003930778, - "aux.5.preins": 1364295775, - "aux.5.preins.on": 594883529, - "aux.5.preins.ins": 598054789, - "aux.5.preins.$stat": 2966263371, - "aux.5.main": 2868160607, - "aux.5.main.1": 4271491608, - "aux.5.main.1.on": 4158444796, - "aux.5.main.1.lvl": 1994697652, - "aux.5.main.1.pre": 1135465838, - "aux.5.main.2": 773925570, - "aux.5.main.2.on": 3825079111, - "aux.5.main.2.lvl": 2998286855, - "aux.5.main.2.pre": 2805084973, - "aux.5.main.3": 1362871489, - "aux.5.main.3.on": 3191796664, - "aux.5.main.3.lvl": 813092088, - "aux.5.main.3.pre": 4201673522, - "aux.5.main.4": 2101567187, - "aux.5.main.4.on": 1955047219, - "aux.5.main.4.lvl": 2386525083, - "aux.5.main.4.pre": 1522255009, - "aux.5.send": 1358794358, - "aux.5.send.1": 3203398986, - "aux.5.send.1.on": 1468624170, - "aux.5.send.1.lvl": 3542193146, - "aux.5.send.1.pon": 4105064576, - "aux.5.send.1.ind": 1151753051, - "aux.5.send.1.mode": 3156389500, - "aux.5.send.1.plink": 1658414040, - "aux.5.send.1.pan": 4215925779, - "aux.5.send.2": 164083351, - "aux.5.send.2.on": 2243036771, - "aux.5.send.2.lvl": 2769956779, - "aux.5.send.2.pon": 3362068913, - "aux.5.send.2.ind": 1888839914, - "aux.5.send.2.mode": 675824191, - "aux.5.send.2.plink": 2338172035, - "aux.5.send.2.pan": 3452536802, - "aux.5.send.3": 563589337, - "aux.5.send.3.on": 2177084737, - "aux.5.send.3.lvl": 2835076761, - "aux.5.send.3.pon": 3302355603, - "aux.5.send.3.ind": 1870739416, - "aux.5.send.3.mode": 1165163147, - "aux.5.send.3.plink": 3508726756, - "aux.5.send.3.pan": 3434098432, - "aux.5.send.4": 2668912675, - "aux.5.send.4.on": 3749831121, - "aux.5.send.4.lvl": 3070888073, - "aux.5.send.4.pon": 2457197411, - "aux.5.send.4.ind": 3448022568, - "aux.5.send.4.mode": 612951301, - "aux.5.send.4.plink": 103624820, - "aux.5.send.4.pan": 2388287632, - "aux.5.send.5": 3295585104, - "aux.5.send.5.on": 425319354, - "aux.5.send.5.lvl": 4252086250, - "aux.5.send.5.pon": 1549841552, - "aux.5.send.5.ind": 65818283, - "aux.5.send.5.mode": 1243109284, - "aux.5.send.5.plink": 1302535454, - "aux.5.send.5.pan": 1954961251, - "aux.5.send.6": 2523186154, - "aux.5.send.6.on": 495287423, - "aux.5.send.6.lvl": 1358799663, - "aux.5.send.6.pon": 819085653, - "aux.5.send.6.ind": 797065702, - "aux.5.send.6.mode": 2402186491, - "aux.5.send.6.plink": 3379382907, - "aux.5.send.6.pan": 3371039422, - "aux.5.send.7": 239503159, - "aux.5.send.7.on": 133039955, - "aux.5.send.7.lvl": 3870699067, - "aux.5.send.7.pon": 1254692385, - "aux.5.send.7.ind": 439446810, - "aux.5.send.7.mode": 2797735102, - "aux.5.send.7.plink": 255560379, - "aux.5.send.7.pan": 1659733458, - "aux.5.send.8": 734036342, - "aux.5.send.8.on": 3288764707, - "aux.5.send.8.lvl": 2862529771, - "aux.5.send.8.pon": 2268105841, - "aux.5.send.8.ind": 3642367530, - "aux.5.send.8.mode": 2678077053, - "aux.5.send.8.plink": 4016439836, - "aux.5.send.8.pan": 567678242, - "aux.5.send.9": 2744987843, - "aux.5.send.9.on": 1908259868, - "aux.5.send.9.lvl": 955639764, - "aux.5.send.9.pon": 3571056942, - "aux.5.send.9.ind": 1601218845, - "aux.5.send.9.mode": 3282887809, - "aux.5.send.9.plink": 2024200681, - "aux.5.send.9.pan": 3166584901, - "aux.5.send.10": 1798379396, - "aux.5.send.10.on": 3129561680, - "aux.5.send.10.lvl": 1433653280, - "aux.5.send.10.pon": 3398414394, - "aux.5.send.10.ind": 917971817, - "aux.5.send.10.mode": 658244547, - "aux.5.send.10.plink": 3632940163, - "aux.5.send.10.pan": 1580097619, - "aux.5.send.11": 435166457, - "aux.5.send.11.on": 2721649621, - "aux.5.send.11.lvl": 1197719270, - "aux.5.send.11.pon": 3346517196, - "aux.5.send.11.ind": 2127493819, - "aux.5.send.11.mode": 2798187049, - "aux.5.send.11.plink": 2966898089, - "aux.5.send.11.pan": 260760237, - "aux.5.send.12": 3608319035, - "aux.5.send.12.on": 2066298059, - "aux.5.send.12.lvl": 1737616900, - "aux.5.send.12.pon": 3539892846, - "aux.5.send.12.ind": 171772989, - "aux.5.send.12.mode": 3330631663, - "aux.5.send.12.plink": 2565066335, - "aux.5.send.12.pan": 2491980119, - "aux.5.send.13": 2308041093, - "aux.5.send.13.on": 1616463435, - "aux.5.send.13.lvl": 2507554362, - "aux.5.send.13.pon": 3457043184, - "aux.5.send.13.ind": 355279679, - "aux.5.send.13.mode": 47537525, - "aux.5.send.13.plink": 3597918149, - "aux.5.send.13.pan": 2644865969, - "aux.5.send.14": 907984970, - "aux.5.send.14.on": 1229543388, - "aux.5.send.14.lvl": 1182824200, - "aux.5.send.14.pon": 32641026, - "aux.5.send.14.ind": 716479249, - "aux.5.send.14.mode": 3023353483, - "aux.5.send.14.plink": 1414692315, - "aux.5.send.14.pan": 657824539, - "aux.5.send.15": 3901999167, - "aux.5.send.15.on": 553220978, - "aux.5.send.15.lvl": 1617833070, - "aux.5.send.15.pon": 3246719668, - "aux.5.send.15.ind": 1388424227, - "aux.5.send.15.mode": 3380981041, - "aux.5.send.15.plink": 2690603329, - "aux.5.send.15.pan": 172100789, - "aux.5.send.16": 2512387780, - "aux.5.send.16.on": 82394359, - "aux.5.send.16.lvl": 2660381900, - "aux.5.send.16.pon": 3398808438, - "aux.5.send.16.ind": 230285957, - "aux.5.send.16.mode": 3239713495, - "aux.5.send.16.plink": 3724539895, - "aux.5.send.16.pan": 2715275039, - "aux.5.send.MX1": 1611659354, - "aux.5.send.MX1.on": 2816418142, - "aux.5.send.MX1.lvl": 4161702052, - "aux.5.send.MX1.pon": 1929782271, - "aux.5.send.MX1.ind": 342057346, - "aux.5.send.MX1.mode": 3830669681, - "aux.5.send.MX1.plink": 2296960490, - "aux.5.send.MX1.pan": 2709438449, - "aux.5.send.MX2": 471193127, - "aux.5.send.MX2.on": 395152721, - "aux.5.send.MX2.lvl": 410404055, - "aux.5.send.MX2.pon": 2506007013, - "aux.5.send.MX2.ind": 2693045023, - "aux.5.send.MX2.mode": 3354871118, - "aux.5.send.MX2.plink": 1797549024, - "aux.5.send.MX2.pan": 1327912395, - "aux.5.send.MX3": 2619035140, - "aux.5.send.MX3.on": 8299862, - "aux.5.send.MX3.lvl": 2653204186, - "aux.5.send.MX3.pon": 5750065, - "aux.5.send.MX3.ind": 1687879476, - "aux.5.send.MX3.mode": 3821486976, - "aux.5.send.MX3.plink": 378989788, - "aux.5.send.MX3.pan": 869927231, - "aux.5.send.MX4": 1028491699, - "aux.5.send.MX4.on": 3926311251, - "aux.5.send.MX4.lvl": 2015107742, - "aux.5.send.MX4.pon": 2622818623, - "aux.5.send.MX4.ind": 260796537, - "aux.5.send.MX4.mode": 2400045463, - "aux.5.send.MX4.plink": 2255311018, - "aux.5.send.MX4.pan": 2010955057, - "aux.5.send.MX5": 290652400, - "aux.5.send.MX5.on": 553280376, - "aux.5.send.MX5.lvl": 942320901, - "aux.5.send.MX5.pon": 2428983145, - "aux.5.send.MX5.ind": 1832498254, - "aux.5.send.MX5.mode": 1484127938, - "aux.5.send.MX5.plink": 3129412660, - "aux.5.send.MX5.pan": 3562533783, - "aux.5.send.MX6": 3780697181, - "aux.5.send.MX6.on": 1718345589, - "aux.5.send.MX6.lvl": 1485408452, - "aux.5.send.MX6.pon": 968180585, - "aux.5.send.MX6.ind": 591810763, - "aux.5.send.MX6.mode": 589685457, - "aux.5.send.MX6.plink": 267259956, - "aux.5.send.MX6.pan": 4212828055, - "aux.5.send.MX7": 1654584218, - "aux.5.send.MX7.on": 161351287, - "aux.5.send.MX7.lvl": 2693366385, - "aux.5.send.MX7.pon": 835605027, - "aux.5.send.MX7.ind": 1176823008, - "aux.5.send.MX7.mode": 731420692, - "aux.5.send.MX7.plink": 1205887358, - "aux.5.send.MX7.pan": 1381922397, - "aux.5.send.MX8": 514127092, - "aux.5.send.MX8.on": 1694696118, - "aux.5.send.MX8.lvl": 591437434, - "aux.5.send.MX8.pon": 2222379070, - "aux.5.send.MX8.ind": 1370793786, - "aux.5.send.MX8.mode": 795638763, - "aux.5.send.MX8.plink": 1852579707, - "aux.5.send.MX8.pan": 2158396504, - "aux.5.tags": 3701088372, - "aux.5.$fdr": 110678708, - "aux.5.$mute": 2403934125, - "aux.5.$muteovr": 69173351, - "aux.6": 1494865803, - "aux.6.in": 796987692, - "aux.6.in.set": 4172624839, - "aux.6.in.set.$mode": 1576849866, - "aux.6.in.set.srcauto": 2558122091, - "aux.6.in.set.altsrc": 3410942675, - "aux.6.in.set.inv": 3086051022, - "aux.6.in.set.trim": 1258974913, - "aux.6.in.set.bal": 113113399, - "aux.6.in.set.$g": 2620748807, - "aux.6.in.set.$vph": 147795175, - "aux.6.in.set.dlymode": 466801519, - "aux.6.in.set.dly": 530570658, - "aux.6.in.set.dlyon": 3846109337, - "aux.6.in.conn": 1710908791, - "aux.6.in.conn.grp": 236440195, - "aux.6.in.conn.in": 1739024242, - "aux.6.in.conn.altgrp": 2134099456, - "aux.6.in.conn.altin": 484364018, - "aux.6.clink": 3777958163, - "aux.6.col": 3346377480, - "aux.6.name": 214088421, - "aux.6.icon": 4181436004, - "aux.6.led": 1637997183, - "aux.6.$col": 1238343365, - "aux.6.$name": 1386470219, - "aux.6.$icon": 1607469548, - "aux.6.mute": 2990379264, - "aux.6.fdr": 3381701428, - "aux.6.pan": 3453426267, - "aux.6.wid": 824805836, - "aux.6.$solo": 282934823, - "aux.6.$sololed": 2096818026, - "aux.6.solosafe": 2747350195, - "aux.6.mon": 3392608836, - "aux.6.eq": 1462566970, - "aux.6.eq.on": 1401541862, - "aux.6.eq.mdl": 2516851108, - "aux.6.eq.mix": 2027763406, - "aux.6.eq.$solo": 84038517, - "aux.6.eq.$solobd": 2127626718, - "aux.6.eq.1": 3482230788, - "aux.6.eq.2": 540256671, - "aux.6.eq.3": 1887806890, - "aux.6.eq.4": 2972022227, - "aux.6.eq.5": 24615406, - "aux.6.eq.6": 327249764, - "aux.6.eq.7": 1674959103, - "aux.6.eq.8": 1955323653, - "aux.6.eq.9": 4108035379, - "aux.6.eq.10": 2440504794, - "aux.6.eq.11": 3793502999, - "aux.6.eq.12": 847391549, - "aux.6.eq.13": 2194788214, - "aux.6.eq.14": 2205425604, - "aux.6.eq.15": 331914506, - "aux.6.eq.16": 2782032512, - "aux.6.eq.17": 4134820509, - "aux.6.eq.18": 1188563158, - "aux.6.eq.19": 2267696929, - "aux.6.eq.20": 2110696603, - "aux.6.dyn": 2320647923, - "aux.6.dyn.on": 1846851471, - "aux.6.dyn.thr": 3126019535, - "aux.6.dyn.depth": 1733274148, - "aux.6.dyn.fast": 881677010, - "aux.6.dyn.peak": 1706102352, - "aux.6.dyn.ingain": 4273159879, - "aux.6.dyn.cpeak": 1460333331, - "aux.6.dyn.cmode": 3109932104, - "aux.6.preins": 2835008457, - "aux.6.preins.on": 1486488032, - "aux.6.preins.ins": 3763133340, - "aux.6.preins.$stat": 4123847927, - "aux.6.main": 3272297237, - "aux.6.main.1": 213380306, - "aux.6.main.1.on": 1296574541, - "aux.6.main.1.lvl": 3380628589, - "aux.6.main.1.pre": 1803296327, - "aux.6.main.2": 328787336, - "aux.6.main.2.on": 3003279900, - "aux.6.main.2.lvl": 3819607508, - "aux.6.main.2.pre": 3342068878, - "aux.6.main.3": 1807999515, - "aux.6.main.3.on": 3503986979, - "aux.6.main.3.lvl": 1172468971, - "aux.6.main.3.pre": 3937319377, - "aux.6.main.4": 2336528793, - "aux.6.main.4.on": 1233917299, - "aux.6.main.4.lvl": 959725915, - "aux.6.main.4.pre": 2495409505, - "aux.6.send": 1343737260, - "aux.6.send.1": 3144963280, - "aux.6.send.1.on": 3628706709, - "aux.6.send.1.lvl": 2860635973, - "aux.6.send.1.pon": 2337313343, - "aux.6.send.1.ind": 3992754140, - "aux.6.send.1.mode": 1354659486, - "aux.6.send.1.plink": 3677472020, - "aux.6.send.1.pan": 1932930772, - "aux.6.send.2": 221228797, - "aux.6.send.2.on": 1987201314, - "aux.6.send.2.lvl": 2687135074, - "aux.6.send.2.pon": 3282523816, - "aux.6.send.2.ind": 1638902499, - "aux.6.send.2.mode": 3732639756, - "aux.6.send.2.plink": 1157125898, - "aux.6.send.2.pan": 3707880747, - "aux.6.send.3": 590525811, - "aux.6.send.3.on": 2760076413, - "aux.6.send.3.lvl": 2249955389, - "aux.6.send.3.pon": 3887313175, - "aux.6.send.3.ind": 2442590388, - "aux.6.send.3.mode": 1367709050, - "aux.6.send.3.plink": 4207837567, - "aux.6.send.3.pan": 3998740476, - "aux.6.send.4": 2653813641, - "aux.6.send.4.on": 2529304898, - "aux.6.send.4.lvl": 334120962, - "aux.6.send.4.pon": 3013090312, - "aux.6.send.4.ind": 2154751683, - "aux.6.send.4.mode": 1022855347, - "aux.6.send.4.plink": 3193211164, - "aux.6.send.4.pan": 934453195, - "aux.6.send.5": 3353784010, - "aux.6.send.5.on": 377068239, - "aux.6.send.5.lvl": 3240351, - "aux.6.send.5.pon": 1671328485, - "aux.6.send.5.ind": 28708790, - "aux.6.send.5.mode": 2971431990, - "aux.6.send.5.plink": 1956051734, - "aux.6.send.5.pan": 2096765326, - "aux.6.send.6": 2580055088, - "aux.6.send.6.on": 3322790014, - "aux.6.send.6.lvl": 2828396966, - "aux.6.send.6.pon": 2297200524, - "aux.6.send.6.ind": 3692069615, - "aux.6.send.6.mode": 92935455, - "aux.6.send.6.plink": 1636443026, - "aux.6.send.6.pan": 617759207, - "aux.6.send.7": 265150045, - "aux.6.send.7.on": 2218149822, - "aux.6.send.7.lvl": 4270747238, - "aux.6.send.7.pon": 2705544652, - "aux.6.send.7.ind": 2551426223, - "aux.6.send.7.mode": 1660032045, - "aux.6.send.7.plink": 3334613778, - "aux.6.send.7.pan": 647874215, - "aux.6.send.8": 717677788, - "aux.6.send.8.on": 4064727171, - "aux.6.send.8.lvl": 612301899, - "aux.6.send.8.pon": 2236796177, - "aux.6.send.8.ind": 3758382794, - "aux.6.send.8.mode": 392436187, - "aux.6.send.8.plink": 3346629721, - "aux.6.send.8.pan": 2704168066, - "aux.6.send.9": 2676108009, - "aux.6.send.9.on": 1139155339, - "aux.6.send.9.lvl": 3533588547, - "aux.6.send.9.pon": 825498537, - "aux.6.send.9.ind": 790816386, - "aux.6.send.9.mode": 3155613655, - "aux.6.send.9.plink": 1041426335, - "aux.6.send.9.pan": 2861473994, - "aux.6.send.10": 3262174387, - "aux.6.send.10.on": 2974389359, - "aux.6.send.10.lvl": 4204662378, - "aux.6.send.10.pon": 4251894194, - "aux.6.send.10.ind": 1346968916, - "aux.6.send.10.mode": 653558050, - "aux.6.send.10.plink": 1636094063, - "aux.6.send.10.pan": 1154532386, - "aux.6.send.11": 412082142, - "aux.6.send.11.on": 2040090858, - "aux.6.send.11.lvl": 4084099108, - "aux.6.send.11.pon": 4043855768, - "aux.6.send.11.ind": 2544863546, - "aux.6.send.11.mode": 1466423076, - "aux.6.send.11.plink": 3686258209, - "aux.6.send.11.pan": 4129677584, - "aux.6.send.12": 1069471340, - "aux.6.send.12.on": 4079581228, - "aux.6.send.12.lvl": 23841542, - "aux.6.send.12.pon": 4165044846, - "aux.6.send.12.ind": 3242301024, - "aux.6.send.12.mode": 1877358582, - "aux.6.send.12.plink": 3262999363, - "aux.6.send.12.pan": 3722676574, - "aux.6.send.13": 3751683946, - "aux.6.send.13.on": 3061417132, - "aux.6.send.13.lvl": 193454320, - "aux.6.send.13.pon": 4155615924, - "aux.6.send.13.ind": 3373356566, - "aux.6.send.13.mode": 2836807928, - "aux.6.send.13.plink": 1789738629, - "aux.6.send.13.pan": 3843701772, - "aux.6.send.14": 906526373, - "aux.6.send.14.on": 537500507, - "aux.6.send.14.lvl": 3991857970, - "aux.6.send.14.pon": 3267294298, - "aux.6.send.14.ind": 3765194396, - "aux.6.send.14.mode": 1516852650, - "aux.6.send.14.plink": 2048486823, - "aux.6.send.14.pan": 277484266, - "aux.6.send.15": 1239909552, - "aux.6.send.15.on": 4166630813, - "aux.6.send.15.lvl": 163602412, - "aux.6.send.15.pon": 4058773056, - "aux.6.send.15.ind": 1788071714, - "aux.6.send.15.mode": 1931255756, - "aux.6.send.15.plink": 3397303321, - "aux.6.send.15.pan": 4259296184, - "aux.6.send.16": 2501262323, - "aux.6.send.16.on": 1726577176, - "aux.6.send.16.lvl": 144466958, - "aux.6.send.16.pon": 4116408758, - "aux.6.send.16.ind": 3302742664, - "aux.6.send.16.mode": 1884749502, - "aux.6.send.16.plink": 1693540155, - "aux.6.send.16.pan": 3709391302, - "aux.6.send.MX1": 4206377687, - "aux.6.send.MX1.on": 3739990008, - "aux.6.send.MX1.lvl": 580609510, - "aux.6.send.MX1.pon": 1553122475, - "aux.6.send.MX1.ind": 1492478576, - "aux.6.send.MX1.mode": 3955277413, - "aux.6.send.MX1.plink": 1920701734, - "aux.6.send.MX1.pan": 2290907333, - "aux.6.send.MX2": 3026424746, - "aux.6.send.MX2.on": 2492515347, - "aux.6.send.MX2.lvl": 1034473950, - "aux.6.send.MX2.pon": 3035752107, - "aux.6.send.MX2.ind": 3306313489, - "aux.6.send.MX2.mode": 2978218600, - "aux.6.send.MX2.plink": 2326886182, - "aux.6.send.MX2.pan": 2150501061, - "aux.6.send.MX3": 1673595777, - "aux.6.send.MX3.on": 3347123069, - "aux.6.send.MX3.lvl": 3929133043, - "aux.6.send.MX3.pon": 3924083512, - "aux.6.send.MX3.ind": 1570163442, - "aux.6.send.MX3.mode": 203049711, - "aux.6.send.MX3.plink": 2766437, - "aux.6.send.MX3.pan": 451452702, - "aux.6.send.MX4": 2015874102, - "aux.6.send.MX4.on": 317966205, - "aux.6.send.MX4.lvl": 3221175249, - "aux.6.send.MX4.pon": 3146272502, - "aux.6.send.MX4.ind": 2826528923, - "aux.6.send.MX4.mode": 2996595989, - "aux.6.send.MX4.plink": 3852098163, - "aux.6.send.MX4.pan": 3376706320, - "aux.6.send.MX5": 3515171725, - "aux.6.send.MX5.on": 4133687404, - "aux.6.send.MX5.lvl": 2971530482, - "aux.6.send.MX5.pon": 2805241583, - "aux.6.send.MX5.ind": 3865947292, - "aux.6.send.MX5.mode": 3234005159, - "aux.6.send.MX5.plink": 3506070106, - "aux.6.send.MX5.pan": 3981462241, - "aux.6.send.MX6": 2167447232, - "aux.6.send.MX6.on": 1599664471, - "aux.6.send.MX6.lvl": 3429666986, - "aux.6.send.MX6.pon": 344466192, - "aux.6.send.MX6.ind": 1515065005, - "aux.6.send.MX6.mode": 934429863, - "aux.6.send.MX6.plink": 3938113117, - "aux.6.send.MX6.pan": 3484204790, - "aux.6.send.MX7": 667203095, - "aux.6.send.MX7.on": 2232078158, - "aux.6.send.MX7.lvl": 1522938541, - "aux.6.send.MX7.pon": 1190858289, - "aux.6.send.MX7.ind": 2803278515, - "aux.6.send.MX7.mode": 2233860742, - "aux.6.send.MX7.plink": 1561548252, - "aux.6.send.MX7.pan": 1842790975, - "aux.6.send.MX8": 3782555505, - "aux.6.send.MX8.on": 1040231236, - "aux.6.send.MX8.lvl": 3910397608, - "aux.6.send.MX8.pon": 1223266362, - "aux.6.send.MX8.ind": 2460797976, - "aux.6.send.MX8.mode": 161019532, - "aux.6.send.MX8.plink": 1591263191, - "aux.6.send.MX8.pan": 1268263948, - "aux.6.tags": 3989351262, - "aux.6.$fdr": 367679038, - "aux.6.$mute": 2994193971, - "aux.6.$muteovr": 738321452, - "aux.7": 328977796, - "aux.7.in": 2526083771, - "aux.7.in.set": 123390509, - "aux.7.in.set.$mode": 1010038836, - "aux.7.in.set.srcauto": 2436840641, - "aux.7.in.set.altsrc": 328254132, - "aux.7.in.set.inv": 327372799, - "aux.7.in.set.trim": 1659046232, - "aux.7.in.set.bal": 3382967734, - "aux.7.in.set.$g": 876561086, - "aux.7.in.set.$vph": 2505104281, - "aux.7.in.set.dlymode": 367617248, - "aux.7.in.set.dly": 2923567371, - "aux.7.in.set.dlyon": 2418556278, - "aux.7.in.conn": 1781158730, - "aux.7.in.conn.grp": 2829962396, - "aux.7.in.conn.in": 1742310799, - "aux.7.in.conn.altgrp": 1949749903, - "aux.7.in.conn.altin": 2299189725, - "aux.7.clink": 3532427109, - "aux.7.col": 3907279714, - "aux.7.name": 93869715, - "aux.7.icon": 3868647769, - "aux.7.led": 1360151237, - "aux.7.$col": 1014644955, - "aux.7.$name": 2157097829, - "aux.7.$icon": 144804406, - "aux.7.mute": 351210122, - "aux.7.fdr": 3094564898, - "aux.7.pan": 3353574881, - "aux.7.wid": 1976381146, - "aux.7.$solo": 1326506345, - "aux.7.$sololed": 2096129773, - "aux.7.solosafe": 1347272416, - "aux.7.mon": 2359828946, - "aux.7.eq": 3275549129, - "aux.7.eq.on": 727496828, - "aux.7.eq.mdl": 1843557950, - "aux.7.eq.mix": 185786164, - "aux.7.eq.$solo": 2999883554, - "aux.7.eq.$solobd": 2433009049, - "aux.7.eq.1": 794926222, - "aux.7.eq.2": 1631372821, - "aux.7.eq.3": 2808442400, - "aux.7.eq.4": 1765865833, - "aux.7.eq.5": 2439639396, - "aux.7.eq.6": 3948923886, - "aux.7.eq.7": 873174389, - "aux.7.eq.8": 2783199887, - "aux.7.eq.9": 504350921, - "aux.7.eq.10": 2171216464, - "aux.7.eq.11": 2714061741, - "aux.7.eq.12": 3555586983, - "aux.7.eq.13": 4229524492, - "aux.7.eq.14": 2448586574, - "aux.7.eq.15": 69050496, - "aux.7.eq.16": 1578375946, - "aux.7.eq.17": 2288829191, - "aux.7.eq.18": 3466084460, - "aux.7.eq.19": 2428585643, - "aux.7.eq.20": 2627496209, - "aux.7.dyn": 2305496729, - "aux.7.dyn.on": 1821350165, - "aux.7.dyn.thr": 514393694, - "aux.7.dyn.depth": 174942407, - "aux.7.dyn.fast": 4226458453, - "aux.7.dyn.peak": 3655029225, - "aux.7.dyn.ingain": 4016374484, - "aux.7.dyn.cpeak": 455780824, - "aux.7.dyn.cmode": 3359869139, - "aux.7.preins": 1582393891, - "aux.7.preins.on": 3150035305, - "aux.7.preins.ins": 999626149, - "aux.7.preins.$stat": 433710347, - "aux.7.main": 880755371, - "aux.7.main.1": 1025810564, - "aux.7.main.1.on": 1474944807, - "aux.7.main.1.lvl": 1053950823, - "aux.7.main.1.pre": 1897299085, - "aux.7.main.2": 2410299214, - "aux.7.main.2.on": 1355544466, - "aux.7.main.2.lvl": 3655605874, - "aux.7.main.2.pre": 261771320, - "aux.7.main.3": 3753016917, - "aux.7.main.3.on": 675006893, - "aux.7.main.3.lvl": 43229261, - "aux.7.main.3.pre": 3876037159, - "aux.7.main.4": 1807255335, - "aux.7.main.4.on": 3353614632, - "aux.7.main.4.lvl": 2796287176, - "aux.7.main.4.pre": 78854562, - "aux.7.send": 1789928738, - "aux.7.send.1": 2940016254, - "aux.7.send.1.on": 1629611000, - "aux.7.send.1.lvl": 561646264, - "aux.7.send.1.pon": 3293960594, - "aux.7.send.1.ind": 1962856505, - "aux.7.send.1.mode": 1010265902, - "aux.7.send.1.plink": 1870418744, - "aux.7.send.1.pan": 2846974561, - "aux.7.send.2": 4049355595, - "aux.7.send.2.on": 3444109252, - "aux.7.send.2.lvl": 2707474668, - "aux.7.send.2.pon": 2154766406, - "aux.7.send.2.ind": 3756362165, - "aux.7.send.2.mode": 3667642148, - "aux.7.send.2.plink": 2889107600, - "aux.7.send.2.pan": 2022273165, - "aux.7.send.3": 994413269, - "aux.7.send.3.on": 2685090675, - "aux.7.send.3.lvl": 3468912475, - "aux.7.send.3.pon": 1829659137, - "aux.7.send.3.ind": 3007236090, - "aux.7.send.3.mode": 2460882470, - "aux.7.send.3.plink": 1765266924, - "aux.7.send.3.pan": 108183282, - "aux.7.send.4": 2428465599, - "aux.7.send.4.on": 175725256, - "aux.7.send.4.lvl": 539067368, - "aux.7.send.4.pon": 1029596450, - "aux.7.send.4.ind": 4138081865, - "aux.7.send.4.mode": 816123729, - "aux.7.send.4.plink": 1460071245, - "aux.7.send.4.pan": 2750995569, - "aux.7.send.5": 3537833732, - "aux.7.send.5.on": 318398868, - "aux.7.send.5.lvl": 3686939996, - "aux.7.send.5.pon": 4290784278, - "aux.7.send.5.ind": 624744389, - "aux.7.send.5.mode": 1525247648, - "aux.7.send.5.plink": 1226724866, - "aux.7.send.5.pan": 2011555229, - "aux.7.send.6": 2764107422, - "aux.7.send.6.on": 2930630467, - "aux.7.send.6.lvl": 3893756811, - "aux.7.send.6.pon": 3412713681, - "aux.7.send.6.ind": 2577058570, - "aux.7.send.6.mode": 784088863, - "aux.7.send.6.plink": 3439458352, - "aux.7.send.6.pan": 1690655682, - "aux.7.send.7": 4271248363, - "aux.7.send.7.on": 3213161697, - "aux.7.send.7.lvl": 1123863481, - "aux.7.send.7.pon": 2731743347, - "aux.7.send.7.ind": 3514929976, - "aux.7.send.7.mode": 1604254779, - "aux.7.send.7.plink": 769584571, - "aux.7.send.7.pan": 116225056, - "aux.7.send.8": 1142249714, - "aux.7.send.8.on": 817122161, - "aux.7.send.8.lvl": 1374429097, - "aux.7.send.8.pon": 3991086147, - "aux.7.send.8.ind": 1181179528, - "aux.7.send.8.mode": 143992228, - "aux.7.send.8.plink": 4155033725, - "aux.7.send.8.pan": 3586705328, - "aux.7.send.9": 2335130207, - "aux.7.send.9.on": 3971306850, - "aux.7.send.9.lvl": 34439458, - "aux.7.send.9.pon": 532834280, - "aux.7.send.9.ind": 9574819, - "aux.7.send.9.mode": 3108195517, - "aux.7.send.9.plink": 1357945927, - "aux.7.send.9.pan": 2568804587, - "aux.7.send.10": 2306187622, - "aux.7.send.10.on": 3928082370, - "aux.7.send.10.lvl": 342692094, - "aux.7.send.10.pon": 3187749458, - "aux.7.send.10.ind": 2373421809, - "aux.7.send.10.mode": 3154713943, - "aux.7.send.10.plink": 565910501, - "aux.7.send.10.pan": 1339468930, - "aux.7.send.11": 3742869371, - "aux.7.send.11.on": 1125227847, - "aux.7.send.11.lvl": 379377092, - "aux.7.send.11.pon": 1906599988, - "aux.7.send.11.ind": 2062695579, - "aux.7.send.11.mode": 72745768, - "aux.7.send.11.plink": 1615331971, - "aux.7.send.11.pan": 93982884, - "aux.7.send.12": 144121273, - "aux.7.send.12.on": 696369033, - "aux.7.send.12.lvl": 4035654906, - "aux.7.send.12.pon": 2100808206, - "aux.7.send.12.ind": 2707481357, - "aux.7.send.12.mode": 444124902, - "aux.7.send.12.plink": 821740457, - "aux.7.send.12.pan": 1425617342, - "aux.7.send.13": 1454989319, - "aux.7.send.13.on": 2146549001, - "aux.7.send.13.lvl": 783720128, - "aux.7.send.13.pon": 3133646816, - "aux.7.send.13.ind": 1548806727, - "aux.7.send.13.mode": 2403895777, - "aux.7.send.13.plink": 1854589463, - "aux.7.send.13.pan": 236330720, - "aux.7.send.14": 2933803864, - "aux.7.send.14.on": 2522992270, - "aux.7.send.14.lvl": 396588054, - "aux.7.send.14.pon": 3778581066, - "aux.7.send.14.ind": 2420732393, - "aux.7.send.14.mode": 4291389258, - "aux.7.send.14.plink": 1790647437, - "aux.7.send.14.pan": 933644282, - "aux.7.send.15": 286544237, - "aux.7.send.15.on": 3209818400, - "aux.7.send.15.lvl": 4157693756, - "aux.7.send.15.pon": 1791724396, - "aux.7.send.15.ind": 1462575539, - "aux.7.send.15.mode": 359268928, - "aux.7.send.15.plink": 934189291, - "aux.7.send.15.pan": 4276714972, - "aux.7.send.16": 1586721958, - "aux.7.send.16.on": 3754018469, - "aux.7.send.16.lvl": 633138770, - "aux.7.send.16.pon": 2154365606, - "aux.7.send.16.ind": 1691176997, - "aux.7.send.16.mode": 490132574, - "aux.7.send.16.plink": 1695504049, - "aux.7.send.16.pan": 1240653782, - "aux.7.send.MX1": 2063823454, - "aux.7.send.MX1.on": 2665175732, - "aux.7.send.MX1.lvl": 2987050482, - "aux.7.send.MX1.pon": 590526917, - "aux.7.send.MX1.ind": 689307367, - "aux.7.send.MX1.mode": 194373995, - "aux.7.send.MX1.plink": 1291602432, - "aux.7.send.MX1.pan": 1095577003, - "aux.7.send.MX2": 3238616235, - "aux.7.send.MX2.on": 358694590, - "aux.7.send.MX2.lvl": 506178039, - "aux.7.send.MX2.pon": 4143724511, - "aux.7.send.MX2.ind": 3630366138, - "aux.7.send.MX2.mode": 2968933742, - "aux.7.send.MX2.plink": 549914634, - "aux.7.send.MX2.pan": 226728913, - "aux.7.send.MX3": 3238636544, - "aux.7.send.MX3.on": 1424991192, - "aux.7.send.MX3.lvl": 3313539519, - "aux.7.send.MX3.pon": 2281482591, - "aux.7.send.MX3.ind": 1954994644, - "aux.7.send.MX3.mode": 438820157, - "aux.7.send.MX3.plink": 2649142410, - "aux.7.send.MX3.pan": 2367737169, - "aux.7.send.MX4": 2891917599, - "aux.7.send.MX4.on": 111097843, - "aux.7.send.MX4.lvl": 3444628901, - "aux.7.send.MX4.pon": 201358682, - "aux.7.send.MX4.ind": 1236796052, - "aux.7.send.MX4.mode": 2564438839, - "aux.7.send.MX4.plink": 3788370103, - "aux.7.send.MX4.pan": 4179384620, - "aux.7.send.MX5": 2724165748, - "aux.7.send.MX5.on": 1447540802, - "aux.7.send.MX5.lvl": 2200864357, - "aux.7.send.MX5.pon": 869590787, - "aux.7.send.MX5.ind": 2789023379, - "aux.7.send.MX5.mode": 3987990975, - "aux.7.send.MX5.plink": 1570337438, - "aux.7.send.MX5.pan": 1353669437, - "aux.7.send.MX6": 4066731969, - "aux.7.send.MX6.on": 1216765013, - "aux.7.send.MX6.lvl": 2364291646, - "aux.7.send.MX6.pon": 464608004, - "aux.7.send.MX6.ind": 228806187, - "aux.7.send.MX6.mode": 2546468276, - "aux.7.send.MX6.plink": 96292497, - "aux.7.send.MX6.pan": 4169328434, - "aux.7.send.MX7": 4255536926, - "aux.7.send.MX7.on": 2648467436, - "aux.7.send.MX7.lvl": 3461849489, - "aux.7.send.MX7.pon": 1959903262, - "aux.7.send.MX7.ind": 97061445, - "aux.7.send.MX7.mode": 2833785524, - "aux.7.send.MX7.plink": 2333143963, - "aux.7.send.MX7.pan": 1879051320, - "aux.7.send.MX8": 1135046256, - "aux.7.send.MX8.on": 4158577686, - "aux.7.send.MX8.lvl": 1449690513, - "aux.7.send.MX8.pon": 2059615774, - "aux.7.send.MX8.ind": 3673829215, - "aux.7.send.MX8.mode": 348970638, - "aux.7.send.MX8.plink": 1351332251, - "aux.7.send.MX8.pan": 1784617528, - "aux.7.tags": 4025417688, - "aux.7.$fdr": 4220418360, - "aux.7.$mute": 2624821705, - "aux.7.$muteovr": 3285056556, - "aux.8": 1126202407, - "aux.8.in": 1755352701, - "aux.8.in.set": 1337175155, - "aux.8.in.set.$mode": 854647177, - "aux.8.in.set.srcauto": 2724589886, - "aux.8.in.set.altsrc": 3321015483, - "aux.8.in.set.inv": 948482798, - "aux.8.in.set.trim": 3309219877, - "aux.8.in.set.bal": 2714364503, - "aux.8.in.set.$g": 2755964903, - "aux.8.in.set.$vph": 31122028, - "aux.8.in.set.dlymode": 1420237569, - "aux.8.in.set.dly": 2301307970, - "aux.8.in.set.dlyon": 187348503, - "aux.8.in.conn": 3961866191, - "aux.8.in.conn.grp": 2257617701, - "aux.8.in.conn.in": 3665210634, - "aux.8.in.conn.altgrp": 1527263267, - "aux.8.in.conn.altin": 2732075241, - "aux.8.clink": 4057504322, - "aux.8.col": 3672150780, - "aux.8.name": 3470281193, - "aux.8.icon": 245638184, - "aux.8.led": 856530531, - "aux.8.$col": 1418355985, - "aux.8.$name": 2382567599, - "aux.8.$icon": 254184888, - "aux.8.mute": 115068772, - "aux.8.fdr": 3056775304, - "aux.8.pan": 4015312703, - "aux.8.wid": 1698484000, - "aux.8.$solo": 1582484403, - "aux.8.$sololed": 2759873124, - "aux.8.solosafe": 499246007, - "aux.8.mon": 2343879032, - "aux.8.eq": 2588744779, - "aux.8.eq.on": 1525374698, - "aux.8.eq.mdl": 2723219600, - "aux.8.eq.mix": 2242139898, - "aux.8.eq.$solo": 3752711432, - "aux.8.eq.$solobd": 1625390707, - "aux.8.eq.1": 3606085408, - "aux.8.eq.2": 829279795, - "aux.8.eq.3": 1597433230, - "aux.8.eq.4": 2846856703, - "aux.8.eq.5": 4275602762, - "aux.8.eq.6": 617525184, - "aux.8.eq.7": 1385995987, - "aux.8.eq.8": 1830137529, - "aux.8.eq.9": 4064175775, - "aux.8.eq.10": 2396584918, - "aux.8.eq.11": 3830870819, - "aux.8.eq.12": 1059020809, - "aux.8.eq.13": 2487766970, - "aux.8.eq.14": 1992359800, - "aux.8.eq.15": 210704070, - "aux.8.eq.16": 2995077468, - "aux.8.eq.17": 134099113, - "aux.8.eq.18": 975640794, - "aux.8.eq.19": 2146422789, - "aux.8.eq.20": 1819134783, - "aux.8.dyn": 2856084503, - "aux.8.dyn.on": 1459506067, - "aux.8.dyn.thr": 1070320304, - "aux.8.dyn.depth": 4173316165, - "aux.8.dyn.fast": 2061092259, - "aux.8.dyn.peak": 928883527, - "aux.8.dyn.ingain": 1367515950, - "aux.8.dyn.cpeak": 3062456394, - "aux.8.dyn.cmode": 1916561849, - "aux.8.preins": 1567267965, - "aux.8.preins.on": 2330098522, - "aux.8.preins.ins": 356013334, - "aux.8.preins.$stat": 55027969, - "aux.8.main": 2894840897, - "aux.8.main.1": 4214634046, - "aux.8.main.1.on": 3578401661, - "aux.8.main.1.lvl": 1431433021, - "aux.8.main.1.pre": 2316866423, - "aux.8.main.2": 622337748, - "aux.8.main.2.on": 2089537580, - "aux.8.main.2.lvl": 105116740, - "aux.8.main.2.pre": 1656256414, - "aux.8.main.3": 1514449103, - "aux.8.main.3.on": 1388000979, - "aux.8.main.3.lvl": 1140003515, - "aux.8.main.3.pre": 1978281665, - "aux.8.main.4": 2043040461, - "aux.8.main.4.on": 2533123171, - "aux.8.main.4.lvl": 1806974379, - "aux.8.main.4.pre": 2015953553, - "aux.8.send": 1637819000, - "aux.8.send.1": 3438186788, - "aux.8.send.1.on": 237396074, - "aux.8.send.1.lvl": 4100863162, - "aux.8.send.1.pon": 1360277440, - "aux.8.send.1.ind": 585683995, - "aux.8.send.1.mode": 3156896393, - "aux.8.send.1.plink": 3199283312, - "aux.8.send.1.pan": 1471798483, - "aux.8.send.2": 4222296689, - "aux.8.send.2.on": 2829398802, - "aux.8.send.2.lvl": 1845300978, - "aux.8.send.2.pon": 2346015320, - "aux.8.send.2.ind": 2490880019, - "aux.8.send.2.mode": 1406501214, - "aux.8.send.2.plink": 1719543387, - "aux.8.send.2.pan": 87668571, - "aux.8.send.3": 464788655, - "aux.8.send.3.on": 4216262445, - "aux.8.send.3.lvl": 2268543693, - "aux.8.send.3.pon": 1749552711, - "aux.8.send.3.ind": 280785892, - "aux.8.send.3.mode": 3881261312, - "aux.8.send.3.plink": 4043084918, - "aux.8.send.3.pan": 1344443180, - "aux.8.send.4": 2612065253, - "aux.8.send.4.on": 3146620717, - "aux.8.send.4.lvl": 4010134221, - "aux.8.send.4.pon": 3469516359, - "aux.8.send.4.ind": 2776654820, - "aux.8.send.4.mode": 1230473406, - "aux.8.send.4.plink": 3472670779, - "aux.8.send.4.pan": 1391534892, - "aux.8.send.5": 3396351838, - "aux.8.send.5.on": 2513837301, - "aux.8.send.5.lvl": 351140005, - "aux.8.send.5.pon": 4175556831, - "aux.8.send.5.ind": 2154992252, - "aux.8.send.5.mode": 616734836, - "aux.8.send.5.plink": 3827650291, - "aux.8.send.5.pan": 3707609140, - "aux.8.send.6": 2287097796, - "aux.8.send.6.on": 438449705, - "aux.8.send.6.lvl": 3902431089, - "aux.8.send.6.pon": 1295518187, - "aux.8.send.6.ind": 739572048, - "aux.8.send.6.mode": 2122174125, - "aux.8.send.6.plink": 270519517, - "aux.8.send.6.pan": 2975708904, - "aux.8.send.7": 138736401, - "aux.8.send.7.on": 998295059, - "aux.8.send.7.lvl": 1867050875, - "aux.8.send.7.pon": 1312348641, - "aux.8.send.7.ind": 633612634, - "aux.8.send.7.mode": 3497654477, - "aux.8.send.7.plink": 908308605, - "aux.8.send.7.pan": 3529328402, - "aux.8.send.8": 675540280, - "aux.8.send.8.on": 3450360339, - "aux.8.send.8.lvl": 1223719803, - "aux.8.send.8.pon": 1787907553, - "aux.8.send.8.ind": 3128286554, - "aux.8.send.8.mode": 670693411, - "aux.8.send.8.plink": 3500371251, - "aux.8.send.8.pan": 2234307346, - "aux.8.send.9": 2801845381, - "aux.8.send.9.on": 2657713883, - "aux.8.send.9.lvl": 3495011763, - "aux.8.send.9.pon": 2972761721, - "aux.8.send.9.ind": 3016518482, - "aux.8.send.9.mode": 3924116522, - "aux.8.send.9.plink": 1111260360, - "aux.8.send.9.pan": 1293221274, - "aux.8.send.10": 3698423492, - "aux.8.send.10.on": 388353424, - "aux.8.send.10.lvl": 658214415, - "aux.8.send.10.pon": 4262993213, - "aux.8.send.10.ind": 1546568244, - "aux.8.send.10.mode": 624191173, - "aux.8.send.10.plink": 2780960386, - "aux.8.send.10.pan": 2167791648, - "aux.8.send.11": 2924716473, - "aux.8.send.11.on": 248912661, - "aux.8.send.11.lvl": 632005925, - "aux.8.send.11.pon": 4185884551, - "aux.8.send.11.ind": 742872902, - "aux.8.send.11.mode": 42013779, - "aux.8.send.11.plink": 3373207592, - "aux.8.send.11.pan": 2080546498, - "aux.8.send.12": 2058308475, - "aux.8.send.12.on": 3620071819, - "aux.8.send.12.lvl": 374973427, - "aux.8.send.12.pon": 3959838833, - "aux.8.send.12.ind": 783633096, - "aux.8.send.12.mode": 978129905, - "aux.8.send.12.plink": 3601567502, - "aux.8.send.12.pan": 1150335860, - "aux.8.send.13": 2874268229, - "aux.8.send.13.on": 3522553611, - "aux.8.send.13.lvl": 977132265, - "aux.8.send.13.pon": 110496987, - "aux.8.send.13.ind": 505781866, - "aux.8.send.13.mode": 3189582892, - "aux.8.send.13.plink": 2604382804, - "aux.8.send.13.pan": 925732998, - "aux.8.send.14": 2053360906, - "aux.8.send.14.on": 1793446044, - "aux.8.send.14.lvl": 742915287, - "aux.8.send.14.pon": 493481925, - "aux.8.send.14.ind": 868012124, - "aux.8.send.14.mode": 4289493869, - "aux.8.send.14.plink": 3961177594, - "aux.8.send.14.pan": 1975379171, - "aux.8.send.15": 1593572607, - "aux.8.send.15.on": 2459321394, - "aux.8.send.15.lvl": 758537165, - "aux.8.send.15.pon": 3892143151, - "aux.8.send.15.ind": 852068206, - "aux.8.send.15.mode": 918385659, - "aux.8.send.15.plink": 3973549568, - "aux.8.send.15.pan": 1782194538, - "aux.8.send.16": 793636740, - "aux.8.send.16.on": 730198455, - "aux.8.send.16.lvl": 1004165787, - "aux.8.send.16.pon": 881715097, - "aux.8.send.16.ind": 658633488, - "aux.8.send.16.mode": 902958745, - "aux.8.send.16.plink": 2620940006, - "aux.8.send.16.pan": 1221591580, - "aux.8.send.MX1": 2523644404, - "aux.8.send.MX1.on": 1647794949, - "aux.8.send.MX1.lvl": 796454061, - "aux.8.send.MX1.pon": 789741814, - "aux.8.send.MX1.ind": 2378701285, - "aux.8.send.MX1.mode": 624154282, - "aux.8.send.MX1.plink": 1157401715, - "aux.8.send.MX1.pan": 1443558672, - "aux.8.send.MX2": 3367963905, - "aux.8.send.MX2.on": 1772668680, - "aux.8.send.MX2.lvl": 2830174387, - "aux.8.send.MX2.pon": 3420177121, - "aux.8.send.MX2.ind": 2626746270, - "aux.8.send.MX2.mode": 360716967, - "aux.8.send.MX2.plink": 3049731660, - "aux.8.send.MX2.pan": 3376520943, - "aux.8.send.MX3": 1170178858, - "aux.8.send.MX3.on": 1853614333, - "aux.8.send.MX3.lvl": 295085235, - "aux.8.send.MX3.pon": 1384441533, - "aux.8.send.MX3.ind": 3860880311, - "aux.8.send.MX3.mode": 1262353020, - "aux.8.send.MX3.plink": 2090759928, - "aux.8.send.MX3.pan": 2454391427, - "aux.8.send.MX4": 1672041589, - "aux.8.send.MX4.on": 3157480682, - "aux.8.send.MX4.lvl": 2334089436, - "aux.8.send.MX4.pon": 1393111741, - "aux.8.send.MX4.ind": 2103822936, - "aux.8.send.MX4.mode": 1242264648, - "aux.8.send.MX4.plink": 689580792, - "aux.8.send.MX4.pan": 298237571, - "aux.8.send.MX5": 3853110238, - "aux.8.send.MX5.on": 1627391847, - "aux.8.send.MX5.lvl": 873473561, - "aux.8.send.MX5.pon": 998553744, - "aux.8.send.MX5.ind": 244297329, - "aux.8.send.MX5.mode": 2351004763, - "aux.8.send.MX5.plink": 1701441757, - "aux.8.send.MX5.pan": 2029847670, - "aux.8.send.MX6": 318575083, - "aux.8.send.MX6.on": 141468604, - "aux.8.send.MX6.lvl": 3143762479, - "aux.8.send.MX6.pon": 3184067728, - "aux.8.send.MX6.ind": 3521204746, - "aux.8.send.MX6.mode": 1657126954, - "aux.8.send.MX6.plink": 3552138461, - "aux.8.send.MX6.pan": 3333994614, - "aux.8.send.MX7": 2521311540, - "aux.8.send.MX7.on": 2951010705, - "aux.8.send.MX7.lvl": 1368244637, - "aux.8.send.MX7.pon": 1763322954, - "aux.8.send.MX7.ind": 2540869182, - "aux.8.send.MX7.mode": 948881101, - "aux.8.send.MX7.plink": 2463424743, - "aux.8.send.MX7.pan": 2875902044, - "aux.8.send.MX8": 3271278426, - "aux.8.send.MX8.on": 2265130365, - "aux.8.send.MX8.lvl": 2786471325, - "aux.8.send.MX8.pon": 3622006346, - "aux.8.send.MX8.ind": 2825944797, - "aux.8.send.MX8.mode": 3525008889, - "aux.8.send.MX8.plink": 3248437991, - "aux.8.send.MX8.pan": 3701527132, - "aux.8.tags": 3748428866, - "aux.8.$fdr": 2296192898, - "aux.8.$mute": 2598071119, - "aux.8.$muteovr": 2591702445, - "bus": 4100724830, - "bus.1": 1916619784, - "bus.1.in": 2289701851, - "bus.1.in.set": 3620655092, - "bus.1.in.set.inv": 2508021285, - "bus.1.in.set.trim": 3595507803, - "bus.1.in.set.bal": 1197091676, - "bus.1.col": 4079899695, - "bus.1.name": 3097677509, - "bus.1.icon": 1545887482, - "bus.1.led": 1050301208, - "bus.1.$col": 1440108265, - "bus.1.$name": 2305534948, - "bus.1.$icon": 4154038839, - "bus.1.busmono": 2203871496, - "bus.1.mute": 3245253335, - "bus.1.fdr": 2170231227, - "bus.1.pan": 2513510334, - "bus.1.wid": 2778413736, - "bus.1.$solo": 548951358, - "bus.1.$sololed": 2288968190, - "bus.1.mon": 3941663213, - "bus.1.busmode": 280606924, - "bus.1.eq": 1871288445, - "bus.1.eq.on": 677370754, - "bus.1.eq.mdl": 3571070024, - "bus.1.eq.mix": 3087148530, - "bus.1.eq.$solo": 3207373668, - "bus.1.eq.$solobd": 2555792599, - "bus.1.eq.1": 73710456, - "bus.1.eq.2": 1594401339, - "bus.1.eq.3": 2444121302, - "bus.1.eq.4": 2085411479, - "bus.1.eq.5": 743617858, - "bus.1.eq.6": 1381796568, - "bus.1.eq.7": 2231357851, - "bus.1.eq.8": 1068467265, - "bus.1.eq.9": 532154871, - "bus.1.eq.10": 1548891966, - "bus.1.eq.11": 3069577707, - "bus.1.eq.12": 296079505, - "bus.1.eq.13": 1638804146, - "bus.1.eq.14": 2756325632, - "bus.1.eq.15": 3740099534, - "bus.1.eq.16": 2230794564, - "bus.1.eq.17": 899481585, - "bus.1.eq.18": 1739545106, - "bus.1.eq.19": 1381326957, - "bus.1.eq.20": 2667097895, - "bus.1.eq.21": 4008998368, - "bus.1.eq.22": 1235044509, - "bus.1.eq.23": 2488053340, - "bus.1.eq.24": 3840977161, - "bus.1.eq.25": 1056337866, - "bus.1.eq.26": 1905566311, - "bus.1.eq.27": 1547348006, - "bus.1.dyn": 2534667935, - "bus.1.dyn.on": 4292282187, - "bus.1.dyn.mdl": 1289117334, - "bus.1.dyn.mix": 3439186912, - "bus.1.dyn.gain": 559537657, - "bus.1.dyn.1": 3036110081, - "bus.1.dyn.2": 4210645428, - "bus.1.dyn.3": 3863159930, - "bus.1.dyn.4": 3863300384, - "bus.1.dyn.5": 743027179, - "bus.1.dyn.6": 2924751969, - "bus.1.dyn.7": 3114281236, - "bus.1.dyn.8": 2577396701, - "bus.1.dyn.9": 2410420352, - "bus.1.dynxo": 1954689816, - "bus.1.dynxo.depth": 2616443878, - "bus.1.dynxo.type": 1209824853, - "bus.1.dynxo.f": 498179216, - "bus.1.dynxo.$solo": 4089087440, - "bus.1.dynsc": 1758074661, - "bus.1.dynsc.type": 1354060267, - "bus.1.dynsc.f": 1914327902, - "bus.1.dynsc.q": 2775943725, - "bus.1.dynsc.src": 1691604683, - "bus.1.dynsc.tap": 2665009280, - "bus.1.dynsc.$solo": 609380670, - "bus.1.preins": 317056358, - "bus.1.preins.on": 2457643439, - "bus.1.preins.ins": 1791610827, - "bus.1.preins.$stat": 2370818566, - "bus.1.main": 2860913013, - "bus.1.main.1": 2761682738, - "bus.1.main.1.on": 3471597372, - "bus.1.main.1.lvl": 1203012468, - "bus.1.main.1.pre": 3988776750, - "bus.1.main.2": 2080034280, - "bus.1.main.2.on": 1506181952, - "bus.1.main.2.lvl": 2495504144, - "bus.1.main.2.pre": 2683839434, - "bus.1.main.3": 1396305851, - "bus.1.main.3.on": 255242872, - "bus.1.main.3.lvl": 2271120952, - "bus.1.main.3.pre": 761967730, - "bus.1.main.4": 1933088249, - "bus.1.main.4.on": 3503283832, - "bus.1.main.4.lvl": 2982656568, - "bus.1.main.4.pre": 218204274, - "bus.1.send": 3651579493, - "bus.1.send.1": 1872137129, - "bus.1.send.1.on": 11393921, - "bus.1.send.1.lvl": 3990205017, - "bus.1.send.1.pre": 1272937523, - "bus.1.send.2": 555798108, - "bus.1.send.2.on": 2587282855, - "bus.1.send.2.lvl": 3566139111, - "bus.1.send.2.pre": 3775100173, - "bus.1.send.3": 1267799066, - "bus.1.send.3.on": 3759885569, - "bus.1.send.3.lvl": 2728601817, - "bus.1.send.3.pre": 3169797555, - "bus.1.send.4": 3418029232, - "bus.1.send.4.on": 2002640168, - "bus.1.send.4.lvl": 3007690952, - "bus.1.send.4.pre": 2509157794, - "bus.1.send.5": 2809496963, - "bus.1.send.5.on": 2802171669, - "bus.1.send.5.lvl": 3350062533, - "bus.1.send.5.pre": 3812182303, - "bus.1.send.6": 3585828105, - "bus.1.send.6.on": 2192721384, - "bus.1.send.6.lvl": 2482641416, - "bus.1.send.6.pre": 931341794, - "bus.1.send.7": 1614781884, - "bus.1.send.7.on": 1811608856, - "bus.1.send.7.lvl": 2527252056, - "bus.1.send.7.pre": 2988940434, - "bus.1.send.8": 6939517, - "bus.1.send.8.on": 289554746, - "bus.1.send.8.lvl": 2237295210, - "bus.1.send.8.pre": 722387120, - "bus.1.send.9": 3382955024, - "bus.1.send.9.on": 3106004567, - "bus.1.send.9.lvl": 900315063, - "bus.1.send.9.pre": 4294095997, - "bus.1.send.10": 3588512039, - "bus.1.send.10.on": 665718627, - "bus.1.send.10.lvl": 3477107006, - "bus.1.send.10.pre": 3702924876, - "bus.1.send.11": 2825527250, - "bus.1.send.11.on": 515781886, - "bus.1.send.11.lvl": 3513823416, - "bus.1.send.11.pre": 3560433078, - "bus.1.send.12": 2167973232, - "bus.1.send.12.on": 3855484744, - "bus.1.send.12.lvl": 3277999234, - "bus.1.send.12.pre": 2105956536, - "bus.1.send.13": 3099482182, - "bus.1.send.13.on": 3789423816, - "bus.1.send.13.lvl": 2141078764, - "bus.1.send.13.pre": 3627719746, - "bus.1.send.14": 2331095777, - "bus.1.send.14.on": 2028869239, - "bus.1.send.14.lvl": 3194490006, - "bus.1.send.14.pre": 3402298436, - "bus.1.send.15": 1315797420, - "bus.1.send.15.on": 2684217537, - "bus.1.send.15.lvl": 3733325296, - "bus.1.send.15.pre": 2047907694, - "bus.1.send.16": 726027367, - "bus.1.send.16.on": 839781980, - "bus.1.send.16.lvl": 1988216026, - "bus.1.send.16.pre": 3234149168, - "bus.1.send.MX1": 388473517, - "bus.1.send.MX1.on": 50857629, - "bus.1.send.MX1.lvl": 3018668981, - "bus.1.send.MX1.pre": 1783481372, - "bus.1.send.MX2": 1185536992, - "bus.1.send.MX2.on": 4250694282, - "bus.1.send.MX2.lvl": 748615502, - "bus.1.send.MX2.pre": 1954759169, - "bus.1.send.MX3": 3325085131, - "bus.1.send.MX3.on": 2757335223, - "bus.1.send.MX3.lvl": 1301001283, - "bus.1.send.MX3.pre": 883122022, - "bus.1.send.MX4": 3854045068, - "bus.1.send.MX4.on": 3437757644, - "bus.1.send.MX4.lvl": 636317764, - "bus.1.send.MX4.pre": 2722616184, - "bus.1.send.MX5": 1698625719, - "bus.1.send.MX5.on": 1000037862, - "bus.1.send.MX5.lvl": 2214598466, - "bus.1.send.MX5.pre": 1632955981, - "bus.1.send.MX6": 2495689226, - "bus.1.send.MX6.on": 1483782630, - "bus.1.send.MX6.lvl": 1571951431, - "bus.1.send.MX6.pre": 1710842434, - "bus.1.send.MX7": 340269933, - "bus.1.send.MX7.on": 1732439800, - "bus.1.send.MX7.lvl": 3283136600, - "bus.1.send.MX7.pre": 1629100759, - "bus.1.send.MX8": 1137681723, - "bus.1.send.MX8.on": 4028922613, - "bus.1.send.MX8.lvl": 2086804573, - "bus.1.send.MX8.pre": 122615972, - "bus.1.postins": 1264919689, - "bus.1.postins.on": 2619900950, - "bus.1.postins.ins": 3928637442, - "bus.1.postins.$stat": 3286225640, - "bus.1.dly": 2101791599, - "bus.1.dly.on": 278604716, - "bus.1.dly.mode": 1836343864, - "bus.1.dly.dly": 3383347745, - "bus.1.tags": 503514681, - "bus.1.$fdr": 1960456345, - "bus.1.$mute": 3100188752, - "bus.1.$muteovr": 483874391, - "bus.2": 918913866, - "bus.2.in": 1055511878, - "bus.2.in.set": 2203019550, - "bus.2.in.set.inv": 763691637, - "bus.2.in.set.trim": 1865997064, - "bus.2.in.set.bal": 2902084364, - "bus.2.col": 3968609029, - "bus.2.name": 2533846239, - "bus.2.icon": 1865658212, - "bus.2.led": 155854562, - "bus.2.$col": 1067885499, - "bus.2.$name": 3181214858, - "bus.2.$icon": 4033253981, - "bus.2.busmono": 2509515970, - "bus.2.mute": 2589677541, - "bus.2.fdr": 2363115701, - "bus.2.pan": 2458009184, - "bus.2.wid": 2882682746, - "bus.2.$solo": 3968226060, - "bus.2.$sololed": 1234529443, - "bus.2.mon": 1210175807, - "bus.2.busmode": 45093330, - "bus.2.eq": 3963202040, - "bus.2.eq.on": 861097116, - "bus.2.eq.mdl": 3052208862, - "bus.2.eq.mix": 3270792468, - "bus.2.eq.$solo": 2774690379, - "bus.2.eq.$solobd": 2660800648, - "bus.2.eq.1": 3881315246, - "bus.2.eq.2": 1767519029, - "bus.2.eq.3": 2942051968, - "bus.2.eq.4": 1902013321, - "bus.2.eq.5": 1231062724, - "bus.2.eq.6": 862608462, - "bus.2.eq.7": 2079130581, - "bus.2.eq.8": 1577251375, - "bus.2.eq.9": 369441833, - "bus.2.eq.10": 2036377136, - "bus.2.eq.11": 2581764493, - "bus.2.eq.12": 469278919, - "bus.2.eq.13": 1140505708, - "bus.2.eq.14": 2583495022, - "bus.2.eq.15": 4227789984, - "bus.2.eq.16": 1711893034, - "bus.2.eq.17": 1082880359, - "bus.2.eq.18": 2258733068, - "bus.2.eq.19": 1218695691, - "bus.2.eq.20": 2493898801, - "bus.2.eq.21": 212330382, - "bus.2.eq.22": 1051319003, - "bus.2.eq.23": 2671779778, - "bus.2.eq.24": 3343006495, - "bus.2.eq.25": 1229208996, - "bus.2.eq.26": 2403741937, - "bus.2.eq.27": 1363703288, - "bus.2.dyn": 1511562745, - "bus.2.dyn.on": 2839437429, - "bus.2.dyn.mdl": 2125410331, - "bus.2.dyn.mix": 1705005788, - "bus.2.dyn.gain": 1329168341, - "bus.2.dyn.1": 182201399, - "bus.2.dyn.2": 1157509722, - "bus.2.dyn.3": 2201908180, - "bus.2.dyn.4": 2327869934, - "bus.2.dyn.5": 3974267181, - "bus.2.dyn.6": 4208524183, - "bus.2.dyn.7": 4135911866, - "bus.2.dyn.8": 1051149115, - "bus.2.dyn.9": 4031203662, - "bus.2.dynxo": 3439002214, - "bus.2.dynxo.depth": 484680014, - "bus.2.dynxo.type": 4200355844, - "bus.2.dynxo.f": 470940081, - "bus.2.dynxo.$solo": 66705531, - "bus.2.dynsc": 389116035, - "bus.2.dynsc.type": 402397872, - "bus.2.dynsc.f": 1132937461, - "bus.2.dynsc.q": 1143731830, - "bus.2.dynsc.src": 1570608520, - "bus.2.dynsc.tap": 2550629379, - "bus.2.dynsc.$solo": 2271577348, - "bus.2.preins": 1013495324, - "bus.2.preins.on": 3848199866, - "bus.2.preins.ins": 3138091126, - "bus.2.preins.$stat": 4096509672, - "bus.2.main": 39173327, - "bus.2.main.1": 3983415944, - "bus.2.main.1.on": 3122842970, - "bus.2.main.1.lvl": 1217044874, - "bus.2.main.1.pre": 2773732048, - "bus.2.main.2": 3206988754, - "bus.2.main.2.on": 3718802919, - "bus.2.main.2.lvl": 287347879, - "bus.2.main.2.pre": 517729741, - "bus.2.main.3": 2618164145, - "bus.2.main.3.on": 3049071222, - "bus.2.main.3.lvl": 954549934, - "bus.2.main.3.pre": 2532177908, - "bus.2.main.4": 805768003, - "bus.2.main.4.on": 273512187, - "bus.2.main.4.lvl": 3731202131, - "bus.2.main.4.pre": 4230061689, - "bus.2.send": 53896071, - "bus.2.send.1": 1164377819, - "bus.2.send.1.on": 4169313375, - "bus.2.send.1.lvl": 842694799, - "bus.2.send.1.pre": 381070293, - "bus.2.send.2": 4216390894, - "bus.2.send.2.on": 3592950665, - "bus.2.send.2.lvl": 2556424017, - "bus.2.send.2.pre": 2992018283, - "bus.2.send.3": 580995896, - "bus.2.send.3.on": 2825407351, - "bus.2.send.3.lvl": 3325065047, - "bus.2.send.3.pre": 2486826525, - "bus.2.send.4": 4115353922, - "bus.2.send.4.on": 1980666446, - "bus.2.send.4.lvl": 2359715478, - "bus.2.send.4.pre": 1474435516, - "bus.2.send.5": 3496302753, - "bus.2.send.5.on": 819151679, - "bus.2.send.5.lvl": 1371217007, - "bus.2.send.5.pre": 470033077, - "bus.2.send.6": 2930454075, - "bus.2.send.6.on": 2789655282, - "bus.2.send.6.lvl": 1884219858, - "bus.2.send.6.pre": 1696220056, - "bus.2.send.7": 2249143374, - "bus.2.send.7.on": 871100982, - "bus.2.send.7.lvl": 4140046574, - "bus.2.send.7.pre": 3904525364, - "bus.2.send.8": 683244207, - "bus.2.send.8.on": 3322868168, - "bus.2.send.8.lvl": 3833010920, - "bus.2.send.8.pre": 2302545858, - "bus.2.send.9": 2706604194, - "bus.2.send.9.on": 3822214601, - "bus.2.send.9.lvl": 179996433, - "bus.2.send.9.pre": 621143339, - "bus.2.send.10": 3392635257, - "bus.2.send.10.on": 1535296037, - "bus.2.send.10.lvl": 485461391, - "bus.2.send.10.pre": 777448898, - "bus.2.send.11": 2018866948, - "bus.2.send.11.on": 64161184, - "bus.2.send.11.lvl": 4229930009, - "bus.2.send.11.pre": 909707148, - "bus.2.send.12": 939098150, - "bus.2.send.12.on": 451075990, - "bus.2.send.12.lvl": 13732603, - "bus.2.send.12.pre": 3867610326, - "bus.2.send.13": 3881250704, - "bus.2.send.13.on": 3232944918, - "bus.2.send.13.lvl": 3422935189, - "bus.2.send.13.pre": 642965040, - "bus.2.send.14": 2554648831, - "bus.2.send.14.on": 2814557329, - "bus.2.send.14.lvl": 347364071, - "bus.2.send.14.pre": 774030810, - "bus.2.send.15": 1202508042, - "bus.2.send.15.on": 2148702407, - "bus.2.send.15.lvl": 111550833, - "bus.2.send.15.pre": 115914628, - "bus.2.send.16": 4149942841, - "bus.2.send.16.on": 1730337858, - "bus.2.send.16.lvl": 3204888659, - "bus.2.send.16.pre": 4006872238, - "bus.2.send.MX1": 2715061927, - "bus.2.send.MX1.on": 1475751188, - "bus.2.send.MX1.lvl": 708935570, - "bus.2.send.MX1.pre": 1137123156, - "bus.2.send.MX2": 1917927386, - "bus.2.send.MX2.on": 2867249346, - "bus.2.send.MX2.lvl": 3767997289, - "bus.2.send.MX2.pre": 2675769671, - "bus.2.send.MX3": 439340657, - "bus.2.send.MX3.on": 1506475863, - "bus.2.send.MX3.lvl": 1976819717, - "bus.2.send.MX3.pre": 3853615982, - "bus.2.send.MX4": 3543730022, - "bus.2.send.MX4.on": 2184547945, - "bus.2.send.MX4.lvl": 3895010335, - "bus.2.send.MX4.pre": 4143566745, - "bus.2.send.MX5": 2065143325, - "bus.2.send.MX5.on": 822965718, - "bus.2.send.MX5.lvl": 307518595, - "bus.2.send.MX5.pre": 3105813782, - "bus.2.send.MX6": 596919472, - "bus.2.send.MX6.on": 62577107, - "bus.2.send.MX6.lvl": 2158395589, - "bus.2.send.MX6.pre": 3123134747, - "bus.2.send.MX7": 3434312551, - "bus.2.send.MX7.on": 108583728, - "bus.2.send.MX7.lvl": 4051444747, - "bus.2.send.MX7.pre": 3159117608, - "bus.2.send.MX8": 2626702465, - "bus.2.send.MX8.on": 2468757294, - "bus.2.send.MX8.lvl": 1947338763, - "bus.2.send.MX8.pre": 1728155949, - "bus.2.postins": 3471827169, - "bus.2.postins.on": 515951118, - "bus.2.postins.ins": 1013683588, - "bus.2.postins.$stat": 1439103657, - "bus.2.dly": 1614645709, - "bus.2.dly.on": 472155326, - "bus.2.dly.mode": 3395881211, - "bus.2.dly.dly": 3368325175, - "bus.2.tags": 4120385895, - "bus.2.$fdr": 3746778439, - "bus.2.$mute": 3724075266, - "bus.2.$muteovr": 715135705, - "bus.3": 4008412284, - "bus.3.in": 1369043142, - "bus.3.in.set": 1841247216, - "bus.3.in.set.inv": 4160388563, - "bus.3.in.set.trim": 200586955, - "bus.3.in.set.bal": 3336041746, - "bus.3.col": 92002707, - "bus.3.name": 3190381385, - "bus.3.icon": 1220561502, - "bus.3.led": 905047308, - "bus.3.$col": 2815638389, - "bus.3.$name": 3008503384, - "bus.3.$icon": 3386884179, - "bus.3.busmono": 2993902395, - "bus.3.mute": 3548915691, - "bus.3.fdr": 2473399007, - "bus.3.pan": 2756624274, - "bus.3.wid": 3108130396, - "bus.3.$solo": 3806559434, - "bus.3.$sololed": 3878436882, - "bus.3.mon": 963787601, - "bus.3.busmode": 3834067971, - "bus.3.eq": 44701048, - "bus.3.eq.on": 1082318710, - "bus.3.eq.mdl": 3166518580, - "bus.3.eq.mix": 1629755454, - "bus.3.eq.$solo": 2885690517, - "bus.3.eq.$solobd": 2781795070, - "bus.3.eq.1": 1015551028, - "bus.3.eq.2": 220876079, - "bus.3.eq.3": 3280766746, - "bus.3.eq.4": 70156387, - "bus.3.eq.5": 3643849310, - "bus.3.eq.6": 1060824276, - "bus.3.eq.7": 4162616783, - "bus.3.eq.8": 3369253429, - "bus.3.eq.9": 232042755, - "bus.3.eq.10": 2838534986, - "bus.3.eq.11": 2316489703, - "bus.3.eq.12": 1523125101, - "bus.3.eq.13": 801850598, - "bus.3.eq.14": 3677175540, - "bus.3.eq.15": 651130778, - "bus.3.eq.16": 215548432, - "bus.3.eq.17": 3820698637, - "bus.3.eq.18": 2681305094, - "bus.3.eq.19": 3681775505, - "bus.3.eq.20": 2429919275, - "bus.3.eq.21": 1708644884, - "bus.3.eq.22": 913969857, - "bus.3.eq.23": 2272267624, - "bus.3.eq.24": 1561478661, - "bus.3.eq.25": 756318910, - "bus.3.eq.26": 3816209259, - "bus.3.eq.27": 605599218, - "bus.3.dyn": 1768928259, - "bus.3.dyn.on": 2519137055, - "bus.3.dyn.mdl": 3571910860, - "bus.3.dyn.mix": 1456901202, - "bus.3.dyn.gain": 2128195584, - "bus.3.dyn.1": 512304541, - "bus.3.dyn.2": 1519004032, - "bus.3.dyn.3": 1924324910, - "bus.3.dyn.4": 2595480084, - "bus.3.dyn.5": 3602501799, - "bus.3.dyn.6": 3836696125, - "bus.3.dyn.7": 254827040, - "bus.3.dyn.8": 657526465, - "bus.3.dyn.9": 56234676, - "bus.3.dynxo": 3706801996, - "bus.3.dynxo.depth": 2792503478, - "bus.3.dynxo.type": 2958832131, - "bus.3.dynxo.f": 2104635574, - "bus.3.dynxo.$solo": 339280322, - "bus.3.dynsc": 677112617, - "bus.3.dynsc.type": 861460605, - "bus.3.dynsc.f": 2799384, - "bus.3.dynsc.q": 2295463667, - "bus.3.dynsc.src": 1111776661, - "bus.3.dynsc.tap": 2070754262, - "bus.3.dynsc.$solo": 2554040029, - "bus.3.preins": 1392860186, - "bus.3.preins.on": 857428571, - "bus.3.preins.ins": 3712972967, - "bus.3.preins.$stat": 2194726960, - "bus.3.main": 4212688033, - "bus.3.main.1": 4134925982, - "bus.3.main.1.on": 2645430389, - "bus.3.main.1.lvl": 219539237, - "bus.3.main.1.pre": 2984024703, - "bus.3.main.2": 3432316212, - "bus.3.main.2.on": 934305825, - "bus.3.main.2.lvl": 1928868985, - "bus.3.main.2.pre": 1450980947, - "bus.3.main.3": 2707417199, - "bus.3.main.3.on": 1247231428, - "bus.3.main.3.lvl": 3425658604, - "bus.3.main.3.pre": 1847969062, - "bus.3.main.4": 601829677, - "bus.3.main.4.on": 840969268, - "bus.3.main.4.lvl": 4167587836, - "bus.3.main.4.pre": 3958167254, - "bus.3.send": 4228507953, - "bus.3.send.1": 1043489277, - "bus.3.send.1.on": 542260573, - "bus.3.send.1.lvl": 4132070429, - "bus.3.send.1.pre": 3648970071, - "bus.3.send.2": 41633744, - "bus.3.send.2.on": 1881759728, - "bus.3.send.2.lvl": 2124516256, - "bus.3.send.2.pre": 1281024506, - "bus.3.send.3": 712245638, - "bus.3.send.3.on": 4102590709, - "bus.3.send.3.lvl": 2050014373, - "bus.3.send.3.pre": 3585585407, - "bus.3.send.4": 35781500, - "bus.3.send.4.on": 373481415, - "bus.3.send.4.lvl": 2488994695, - "bus.3.send.4.pre": 974086573, - "bus.3.send.5": 3281717271, - "bus.3.send.5.on": 2393012252, - "bus.3.send.5.lvl": 1613386708, - "bus.3.send.5.pre": 2054216334, - "bus.3.send.6": 3051434653, - "bus.3.send.6.on": 4079913487, - "bus.3.send.6.lvl": 3080105567, - "bus.3.send.6.pre": 2891616773, - "bus.3.send.7": 2379880560, - "bus.3.send.7.on": 946190580, - "bus.3.send.7.lvl": 3393051964, - "bus.3.send.7.pre": 607555350, - "bus.3.send.8": 897765929, - "bus.3.send.8.on": 1723709899, - "bus.3.send.8.lvl": 2613435907, - "bus.3.send.8.pre": 2827968969, - "bus.3.send.9": 2575354908, - "bus.3.send.9.on": 2568962123, - "bus.3.send.9.lvl": 3584518531, - "bus.3.send.9.pre": 3756725833, - "bus.3.send.10": 2386864139, - "bus.3.send.10.on": 2371011175, - "bus.3.send.10.lvl": 2944852472, - "bus.3.send.10.pre": 1669305040, - "bus.3.send.11": 952462550, - "bus.3.send.11.on": 3563226082, - "bus.3.send.11.lvl": 3380013842, - "bus.3.send.11.pre": 2199541418, - "bus.3.send.12": 2026456148, - "bus.3.send.12.on": 1307747556, - "bus.3.send.12.lvl": 3249075452, - "bus.3.send.12.pre": 191394140, - "bus.3.send.13": 3234445666, - "bus.3.send.13.on": 2541925988, - "bus.3.send.13.lvl": 3013915862, - "bus.3.send.13.pre": 1809387238, - "bus.3.send.14": 1758286013, - "bus.3.send.14.on": 2165491731, - "bus.3.send.14.lvl": 3305485440, - "bus.3.send.14.pre": 1646897880, - "bus.3.send.15": 283252744, - "bus.3.send.15.on": 1478642629, - "bus.3.send.15.lvl": 3132587962, - "bus.3.send.15.pre": 3941715346, - "bus.3.send.16": 3102060363, - "bus.3.send.16.on": 1102228800, - "bus.3.send.16.lvl": 3550435204, - "bus.3.send.16.pre": 761453028, - "bus.3.send.MX1": 3985458998, - "bus.3.send.MX1.on": 2030873633, - "bus.3.send.MX1.lvl": 4126676000, - "bus.3.send.MX1.pre": 959246219, - "bus.3.send.MX2": 1038059363, - "bus.3.send.MX2.on": 2650826795, - "bus.3.send.MX2.lvl": 2856353864, - "bus.3.send.MX2.pre": 3816255896, - "bus.3.send.MX3": 2390824424, - "bus.3.send.MX3.on": 543496753, - "bus.3.send.MX3.lvl": 6892842, - "bus.3.send.MX3.pre": 2950091937, - "bus.3.send.MX4": 786939863, - "bus.3.send.MX4.on": 1465681457, - "bus.3.send.MX4.lvl": 571447666, - "bus.3.send.MX4.pre": 3952380086, - "bus.3.send.MX5": 529092268, - "bus.3.send.MX5.on": 2579944143, - "bus.3.send.MX5.lvl": 2453485612, - "bus.3.send.MX5.pre": 889922897, - "bus.3.send.MX6": 1876660569, - "bus.3.send.MX6.on": 1018273522, - "bus.3.send.MX6.lvl": 760026228, - "bus.3.send.MX6.pre": 2365249836, - "bus.3.send.MX7": 3229466614, - "bus.3.send.MX7.on": 857706965, - "bus.3.send.MX7.lvl": 2246242174, - "bus.3.send.MX7.pre": 3543678671, - "bus.3.send.MX8": 282068216, - "bus.3.send.MX8.on": 1272942047, - "bus.3.send.MX8.lvl": 2662009765, - "bus.3.send.MX8.pre": 1805738186, - "bus.3.postins": 4240275055, - "bus.3.postins.on": 2932551616, - "bus.3.postins.ins": 1280485925, - "bus.3.postins.$stat": 1499164457, - "bus.3.dly": 2341563812, - "bus.3.dly.on": 3487435999, - "bus.3.dly.mode": 191891418, - "bus.3.dly.dly": 635013178, - "bus.3.tags": 381914541, - "bus.3.$fdr": 1449326285, - "bus.3.$mute": 242498492, - "bus.3.$muteovr": 4048418476, - "bus.4": 1087317291, - "bus.4.in": 2013928692, - "bus.4.in.set": 3611820570, - "bus.4.in.set.inv": 4133658101, - "bus.4.in.set.trim": 4272481716, - "bus.4.in.set.bal": 3700943756, - "bus.4.col": 59063689, - "bus.4.name": 2251784323, - "bus.4.icon": 2161421608, - "bus.4.led": 1130745782, - "bus.4.$col": 2339013703, - "bus.4.$name": 2225398078, - "bus.4.$icon": 4257989241, - "bus.4.busmono": 1857988243, - "bus.4.mute": 3577683577, - "bus.4.fdr": 2084639097, - "bus.4.pan": 1843311028, - "bus.4.wid": 1215101006, - "bus.4.$solo": 335465144, - "bus.4.$sololed": 3488553336, - "bus.4.mon": 3913202307, - "bus.4.busmode": 3956374161, - "bus.4.eq": 3126470371, - "bus.4.eq.on": 1265388256, - "bus.4.eq.mdl": 2690249898, - "bus.4.eq.mix": 1813736160, - "bus.4.eq.$solo": 2603213576, - "bus.4.eq.$solobd": 2035354739, - "bus.4.eq.1": 526871338, - "bus.4.eq.2": 351068745, - "bus.4.eq.3": 3819829636, - "bus.4.eq.4": 4181240309, - "bus.4.eq.5": 4172902720, - "bus.4.eq.6": 584555466, - "bus.4.eq.7": 4011700969, - "bus.4.eq.8": 3834954403, - "bus.4.eq.9": 68516501, - "bus.4.eq.10": 3367626732, - "bus.4.eq.11": 1828675385, - "bus.4.eq.12": 1654551539, - "bus.4.eq.13": 304036784, - "bus.4.eq.14": 3504991074, - "bus.4.eq.15": 1181745884, - "bus.4.eq.16": 4033228102, - "bus.4.eq.17": 4003939475, - "bus.4.eq.18": 3158705360, - "bus.4.eq.19": 3519462415, - "bus.4.eq.20": 2257379125, - "bus.4.eq.21": 2249696898, - "bus.4.eq.22": 731389407, - "bus.4.eq.23": 2412736078, - "bus.4.eq.24": 1062528411, - "bus.4.eq.25": 886419256, - "bus.4.eq.26": 60868213, - "bus.4.eq.27": 421623524, - "bus.4.dyn": 2800906525, - "bus.4.dyn.on": 4214787737, - "bus.4.dyn.mdl": 3670375507, - "bus.4.dyn.mix": 3792079875, - "bus.4.dyn.gain": 81993469, - "bus.4.dyn.1": 3105415875, - "bus.4.dyn.2": 4162309142, - "bus.4.dyn.3": 3573324616, - "bus.4.dyn.4": 3618362498, - "bus.4.dyn.5": 967327225, - "bus.4.dyn.6": 2813506403, - "bus.4.dyn.7": 2848038070, - "bus.4.dyn.8": 2361289695, - "bus.4.dyn.9": 2655364386, - "bus.4.dynxo": 2042670250, - "bus.4.dynxo.depth": 3923724592, - "bus.4.dynxo.type": 1458026532, - "bus.4.dynxo.f": 2482657745, - "bus.4.dynxo.$solo": 1211495247, - "bus.4.dynsc": 1698930295, - "bus.4.dynsc.type": 895481488, - "bus.4.dynsc.f": 141513941, - "bus.4.dynsc.q": 130554518, - "bus.4.dynsc.src": 4003885416, - "bus.4.dynsc.tap": 3036911587, - "bus.4.dynsc.$solo": 2712242744, - "bus.4.preins": 412435920, - "bus.4.preins.on": 787050401, - "bus.4.preins.ins": 3474000237, - "bus.4.preins.$stat": 4015433281, - "bus.4.main": 2647438043, - "bus.4.main.1": 2313240756, - "bus.4.main.1.on": 2883597967, - "bus.4.main.1.lvl": 3267911647, - "bus.4.main.1.pre": 2366377093, - "bus.4.main.2": 2187033118, - "bus.4.main.2.on": 2245914596, - "bus.4.main.2.lvl": 2766543756, - "bus.4.main.2.pre": 1236029894, - "bus.4.main.3": 932793733, - "bus.4.main.3.on": 2852731036, - "bus.4.main.3.lvl": 3299958612, - "bus.4.main.3.pre": 2419450638, - "bus.4.main.4": 1799571031, - "bus.4.main.4.on": 1866078579, - "bus.4.main.4.lvl": 2140271963, - "bus.4.main.4.pre": 1275672929, - "bus.4.send": 4007737427, - "bus.4.send.1": 1513306927, - "bus.4.send.1.on": 2925475549, - "bus.4.send.1.lvl": 2082935453, - "bus.4.send.1.pre": 1915629271, - "bus.4.send.2": 241596514, - "bus.4.send.2.on": 2757371775, - "bus.4.send.2.lvl": 2251443759, - "bus.4.send.2.pre": 1747853173, - "bus.4.send.3": 234566308, - "bus.4.send.3.on": 3004557568, - "bus.4.send.3.lvl": 2004749648, - "bus.4.send.3.pre": 1816289034, - "bus.4.send.4": 147769870, - "bus.4.send.4.on": 3620971998, - "bus.4.send.4.lvl": 383504134, - "bus.4.send.4.pre": 597859276, - "bus.4.send.5": 3176128821, - "bus.4.send.5.on": 1345294158, - "bus.4.send.5.lvl": 3329733526, - "bus.4.send.5.pre": 1778093244, - "bus.4.send.6": 2601124303, - "bus.4.send.6.on": 878403414, - "bus.4.send.6.lvl": 3126037262, - "bus.4.send.6.pre": 361346900, - "bus.4.send.7": 2592950530, - "bus.4.send.7.on": 657882726, - "bus.4.send.7.lvl": 1199483454, - "bus.4.send.7.pre": 319411940, - "bus.4.send.8": 358482779, - "bus.4.send.8.on": 3042086468, - "bus.4.send.8.lvl": 963293804, - "bus.4.send.8.pre": 2535886246, - "bus.4.send.9": 3034684078, - "bus.4.send.9.on": 705685871, - "bus.4.send.9.lvl": 1484262847, - "bus.4.send.9.pre": 1967026533, - "bus.4.send.10": 1681389963, - "bus.4.send.10.on": 3244247271, - "bus.4.send.10.lvl": 265737552, - "bus.4.send.10.pre": 1781513362, - "bus.4.send.11": 236514134, - "bus.4.send.11.on": 2567929186, - "bus.4.send.11.lvl": 648495430, - "bus.4.send.11.pre": 2741678032, - "bus.4.send.12": 854192852, - "bus.4.send.12.on": 2139050852, - "bus.4.send.12.lvl": 108608100, - "bus.4.send.12.pre": 2065209022, - "bus.4.send.13": 856339170, - "bus.4.send.13.on": 1546608612, - "bus.4.send.13.lvl": 475305034, - "bus.4.send.13.pre": 2571724412, - "bus.4.send.14": 3701494333, - "bus.4.send.14.on": 4070526611, - "bus.4.send.14.lvl": 196465800, - "bus.4.send.14.pre": 2126066090, - "bus.4.send.15": 3703652744, - "bus.4.send.15.on": 441393733, - "bus.4.send.15.lvl": 369581022, - "bus.4.send.15.pre": 1520545000, - "bus.4.send.16": 2442307787, - "bus.4.send.16.on": 2881443520, - "bus.4.send.16.lvl": 399484156, - "bus.4.send.16.pre": 464714262, - "bus.4.send.MX1": 2025462715, - "bus.4.send.MX1.on": 55740728, - "bus.4.send.MX1.lvl": 630863654, - "bus.4.send.MX1.pre": 1860024243, - "bus.4.send.MX2": 1181135694, - "bus.4.send.MX2.on": 3223985491, - "bus.4.send.MX2.lvl": 2870508291, - "bus.4.send.MX2.pre": 1007548814, - "bus.4.send.MX3": 1170237821, - "bus.4.send.MX3.on": 2767237693, - "bus.4.send.MX3.lvl": 1961832628, - "bus.4.send.MX3.pre": 170650320, - "bus.4.send.MX4": 4196952994, - "bus.4.send.MX4.on": 4126275133, - "bus.4.send.MX4.lvl": 88175724, - "bus.4.send.MX4.pre": 2884449987, - "bus.4.send.MX5": 1333928721, - "bus.4.send.MX5.on": 712956439, - "bus.4.send.MX5.lvl": 4126656009, - "bus.4.send.MX5.pre": 2124583282, - "bus.4.send.MX6": 4281253156, - "bus.4.send.MX6.on": 4208541207, - "bus.4.send.MX6.lvl": 2027764202, - "bus.4.send.MX6.pre": 1284234621, - "bus.4.send.MX7": 4123595899, - "bus.4.send.MX7.on": 785589121, - "bus.4.send.MX7.lvl": 894895085, - "bus.4.send.MX7.pre": 491893524, - "bus.4.send.MX8": 3278952749, - "bus.4.send.MX8.on": 3517831044, - "bus.4.send.MX8.lvl": 1578473448, - "bus.4.send.MX8.pre": 2725115143, - "bus.4.postins": 2879136350, - "bus.4.postins.on": 1512932305, - "bus.4.postins.ins": 3888406045, - "bus.4.postins.$stat": 782564566, - "bus.4.dly": 1854007738, - "bus.4.dly.on": 3933048705, - "bus.4.dly.mode": 2029244000, - "bus.4.dly.dly": 145377872, - "bus.4.tags": 187491515, - "bus.4.$fdr": 1769432539, - "bus.4.$mute": 3546012302, - "bus.4.$muteovr": 2642585661, - "bus.5": 2564880166, - "bus.5.in": 2411322767, - "bus.5.in.set": 2121486300, - "bus.5.in.set.inv": 3312317798, - "bus.5.in.set.trim": 263665233, - "bus.5.in.set.bal": 390163791, - "bus.5.col": 393826967, - "bus.5.name": 1452663325, - "bus.5.icon": 1474625346, - "bus.5.led": 225796192, - "bus.5.$col": 1460622209, - "bus.5.$name": 3101103404, - "bus.5.$icon": 4116207375, - "bus.5.busmono": 3202183653, - "bus.5.mute": 3194955231, - "bus.5.fdr": 2635363971, - "bus.5.pan": 2553000198, - "bus.5.wid": 2994497520, - "bus.5.$solo": 3901677958, - "bus.5.$sololed": 3502225770, - "bus.5.mon": 1112278581, - "bus.5.busmode": 3676234079, - "bus.5.eq": 1003064401, - "bus.5.eq.on": 553335610, - "bus.5.eq.mdl": 3360523488, - "bus.5.eq.mix": 2878593706, - "bus.5.eq.$solo": 3250824904, - "bus.5.eq.$solobd": 1073173811, - "bus.5.eq.1": 4244003856, - "bus.5.eq.2": 1467085443, - "bus.5.eq.3": 2570783038, - "bus.5.eq.4": 2210413135, - "bus.5.eq.5": 954794234, - "bus.5.eq.6": 1254828912, - "bus.5.eq.7": 2358649315, - "bus.5.eq.8": 1192833961, - "bus.5.eq.9": 742681007, - "bus.5.eq.10": 1760089990, - "bus.5.eq.11": 2858708531, - "bus.5.eq.12": 84903161, - "bus.5.eq.13": 1513802602, - "bus.5.eq.14": 2965208168, - "bus.5.eq.15": 3867742998, - "bus.5.eq.16": 2022874540, - "bus.5.eq.17": 772519001, - "bus.5.eq.18": 1947792842, - "bus.5.eq.19": 1507961781, - "bus.5.eq.20": 2791133071, - "bus.5.eq.21": 4220524104, - "bus.5.eq.22": 1443605733, - "bus.5.eq.23": 2279497204, - "bus.5.eq.24": 3713660065, - "bus.5.eq.25": 931315730, - "bus.5.eq.26": 2030589647, - "bus.5.eq.27": 1674643422, - "bus.5.dyn": 3460790759, - "bus.5.dyn.on": 3532620771, - "bus.5.dyn.mdl": 53815065, - "bus.5.dyn.mix": 3121965162, - "bus.5.dyn.gain": 2621919668, - "bus.5.dyn.1": 2444095337, - "bus.5.dyn.2": 3459047964, - "bus.5.dyn.3": 2934450114, - "bus.5.dyn.4": 4279724680, - "bus.5.dyn.5": 1670465843, - "bus.5.dyn.6": 2173116105, - "bus.5.dyn.7": 3528855932, - "bus.5.dyn.8": 3000325925, - "bus.5.dyn.9": 1995479528, - "bus.5.dynxo": 1361647280, - "bus.5.dynxo.depth": 2164641149, - "bus.5.dynxo.type": 2804912770, - "bus.5.dynxo.f": 3344075831, - "bus.5.dynxo.$solo": 2589735731, - "bus.5.dynsc": 995832797, - "bus.5.dynsc.type": 1604853314, - "bus.5.dynsc.f": 2654674935, - "bus.5.dynsc.q": 864185876, - "bus.5.dynsc.src": 2216993658, - "bus.5.dynsc.tap": 1232989361, - "bus.5.dynsc.$solo": 2566141929, - "bus.5.preins": 1095097054, - "bus.5.preins.on": 2181417395, - "bus.5.preins.ins": 2310335887, - "bus.5.preins.$stat": 3096078701, - "bus.5.main": 4141652669, - "bus.5.main.1": 4205919434, - "bus.5.main.1.on": 4013527693, - "bus.5.main.1.lvl": 3144773165, - "bus.5.main.1.pre": 2909606663, - "bus.5.main.2": 3523973984, - "bus.5.main.2.on": 4013679030, - "bus.5.main.2.lvl": 324255086, - "bus.5.main.2.pre": 822920116, - "bus.5.main.3": 2636730995, - "bus.5.main.3.on": 3064193826, - "bus.5.main.3.lvl": 3422291810, - "bus.5.main.3.pre": 2557950088, - "bus.5.main.4": 693324833, - "bus.5.main.4.on": 1761784521, - "bus.5.main.4.lvl": 2240470033, - "bus.5.main.4.pre": 1339314219, - "bus.5.send": 3529843149, - "bus.5.send.1": 1750079473, - "bus.5.send.1.on": 2182404649, - "bus.5.send.1.lvl": 9220977, - "bus.5.send.1.pre": 1581676427, - "bus.5.send.2": 677855652, - "bus.5.send.2.on": 3967144511, - "bus.5.send.2.lvl": 35519343, - "bus.5.send.2.pre": 3449974709, - "bus.5.send.3": 1392150370, - "bus.5.send.3.on": 2277134752, - "bus.5.send.3.lvl": 1725050224, - "bus.5.send.3.pre": 3297661994, - "bus.5.send.4": 3628889368, - "bus.5.send.4.on": 3971803182, - "bus.5.send.4.lvl": 3187982710, - "bus.5.send.4.pre": 2710420892, - "bus.5.send.5": 2603880939, - "bus.5.send.5.on": 4265926525, - "bus.5.send.5.lvl": 2218593085, - "bus.5.send.5.pre": 3749197687, - "bus.5.send.6": 3707890769, - "bus.5.send.6.on": 217664283, - "bus.5.send.6.lvl": 2312183667, - "bus.5.send.6.pre": 734666905, - "bus.5.send.7": 1739133188, - "bus.5.send.7.on": 3728340626, - "bus.5.send.7.lvl": 2759970162, - "bus.5.send.7.pre": 3221659960, - "bus.5.send.8": 218127301, - "bus.5.send.8.on": 1386301723, - "bus.5.send.8.lvl": 806972787, - "bus.5.send.8.pre": 1036893849, - "bus.5.send.9": 3261219960, - "bus.5.send.9.on": 232839167, - "bus.5.send.9.lvl": 3770201007, - "bus.5.send.9.pre": 3937516021, - "bus.5.send.10": 1753045183, - "bus.5.send.10.on": 185930843, - "bus.5.send.10.lvl": 3779698128, - "bus.5.send.10.pre": 4261097925, - "bus.5.send.11": 3221430282, - "bus.5.send.11.on": 572863702, - "bus.5.send.11.lvl": 4057575418, - "bus.5.send.11.pre": 4066174255, - "bus.5.send.12": 3918244440, - "bus.5.send.12.on": 1228212320, - "bus.5.send.12.lvl": 4293614276, - "bus.5.send.12.pre": 516622897, - "bus.5.send.13": 923882366, - "bus.5.send.13.on": 1615134944, - "bus.5.send.13.lvl": 2641580846, - "bus.5.send.13.pre": 4124962267, - "bus.5.send.14": 2392108729, - "bus.5.send.14.on": 2002065263, - "bus.5.send.14.lvl": 3746748616, - "bus.5.send.14.pre": 4014862557, - "bus.5.send.15": 4028265988, - "bus.5.send.15.on": 2657413833, - "bus.5.send.15.lvl": 86298962, - "bus.5.send.15.pre": 377334375, - "bus.5.send.16": 1034111359, - "bus.5.send.16.on": 3212118852, - "bus.5.send.16.lvl": 2415961148, - "bus.5.send.16.pre": 3880808745, - "bus.5.send.MX1": 1405019778, - "bus.5.send.MX1.on": 911358485, - "bus.5.send.MX1.lvl": 2302507913, - "bus.5.send.MX1.pre": 214182663, - "bus.5.send.MX2": 560523343, - "bus.5.send.MX2.on": 999970306, - "bus.5.send.MX2.lvl": 3815585659, - "bus.5.send.MX2.pre": 26455321, - "bus.5.send.MX3": 2842142876, - "bus.5.send.MX3.on": 2325580864, - "bus.5.send.MX3.lvl": 3894151766, - "bus.5.send.MX3.pre": 3340931213, - "bus.5.send.MX4": 1182871515, - "bus.5.send.MX4.on": 608041024, - "bus.5.send.MX4.lvl": 1306338830, - "bus.5.send.MX4.pre": 3904324738, - "bus.5.send.MX5": 75493496, - "bus.5.send.MX5.on": 1660646395, - "bus.5.send.MX5.lvl": 855110237, - "bus.5.send.MX5.pre": 769787909, - "bus.5.send.MX6": 3693735205, - "bus.5.send.MX6.on": 16052222, - "bus.5.send.MX6.lvl": 766017039, - "bus.5.send.MX6.pre": 3948420101, - "bus.5.send.MX7": 1491029442, - "bus.5.send.MX7.on": 2569473017, - "bus.5.send.MX7.lvl": 61505241, - "bus.5.send.MX7.pre": 3022323635, - "bus.5.send.MX8": 657365548, - "bus.5.send.MX8.on": 2709653437, - "bus.5.send.MX8.lvl": 2701761236, - "bus.5.send.MX8.pre": 3142484403, - "bus.5.postins": 1969629308, - "bus.5.postins.on": 677608883, - "bus.5.postins.ins": 211412127, - "bus.5.postins.$stat": 637161332, - "bus.5.dly": 2063265463, - "bus.5.dly.on": 4281811956, - "bus.5.dly.mode": 495018940, - "bus.5.dly.dly": 3368078456, - "bus.5.tags": 329020705, - "bus.5.$fdr": 1797700449, - "bus.5.$mute": 3082301448, - "bus.5.$muteovr": 2996196852, - "bus.6": 4117286877, - "bus.6.in": 187300106, - "bus.6.in.set": 1738531334, - "bus.6.in.set.inv": 3664364551, - "bus.6.in.set.trim": 1905910324, - "bus.6.in.set.bal": 4170559806, - "bus.6.col": 4008422765, - "bus.6.name": 2003167543, - "bus.6.icon": 2048675948, - "bus.6.led": 94866218, - "bus.6.$col": 2896407123, - "bus.6.$name": 3596183762, - "bus.6.$icon": 287637749, - "bus.6.busmono": 1418823522, - "bus.6.mute": 2539371117, - "bus.6.fdr": 2305271037, - "bus.6.pan": 2448331240, - "bus.6.wid": 3177444130, - "bus.6.$solo": 3760019124, - "bus.6.$sololed": 1732408297, - "bus.6.mon": 1158599271, - "bus.6.busmode": 82378354, - "bus.6.eq": 4084836316, - "bus.6.eq.on": 1009045140, - "bus.6.eq.mdl": 2945874006, - "bus.6.eq.mix": 3167083884, - "bus.6.eq.$solo": 2524277929, - "bus.6.eq.$solobd": 4020344410, - "bus.6.eq.1": 4029259430, - "bus.6.eq.2": 1703129085, - "bus.6.eq.3": 3006442504, - "bus.6.eq.4": 1753741185, - "bus.6.eq.5": 1211560860, - "bus.6.eq.6": 840486406, - "bus.6.eq.7": 2143518557, - "bus.6.eq.8": 1428979799, - "bus.6.eq.9": 349947617, - "bus.6.eq.10": 2016879672, - "bus.6.eq.11": 2643534197, - "bus.6.eq.12": 321008015, - "bus.6.eq.13": 1121005092, - "bus.6.eq.14": 2686875926, - "bus.6.eq.15": 4124079720, - "bus.6.eq.16": 1608184018, - "bus.6.eq.17": 1060765935, - "bus.6.eq.18": 2362114692, - "bus.6.eq.19": 1115310195, - "bus.6.eq.20": 2513720057, - "bus.6.eq.21": 360276726, - "bus.6.eq.22": 987258947, - "bus.6.eq.23": 2693900954, - "bus.6.eq.24": 3488327639, - "bus.6.eq.25": 1167768812, - "bus.6.eq.26": 2465184313, - "bus.6.eq.27": 1218380912, - "bus.6.dyn": 1431787329, - "bus.6.dyn.on": 2856277805, - "bus.6.dyn.mdl": 772682063, - "bus.6.dyn.mix": 829903832, - "bus.6.dyn.gain": 2017100318, - "bus.6.dyn.1": 178113695, - "bus.6.dyn.2": 1182598306, - "bus.6.dyn.3": 2258109756, - "bus.6.dyn.4": 2261204278, - "bus.6.dyn.5": 3936450165, - "bus.6.dyn.6": 4170644479, - "bus.6.dyn.7": 4215682050, - "bus.6.dyn.8": 992294019, - "bus.6.dyn.9": 4013976726, - "bus.6.dynxo": 3369661470, - "bus.6.dynxo.depth": 2090073160, - "bus.6.dynxo.type": 338646959, - "bus.6.dynxo.f": 3920820506, - "bus.6.dynxo.$solo": 2745620314, - "bus.6.dynsc": 340461371, - "bus.6.dynsc.type": 1429937644, - "bus.6.dynsc.f": 2158509913, - "bus.6.dynsc.q": 32307378, - "bus.6.dynsc.src": 2690554092, - "bus.6.dynsc.tap": 1431339679, - "bus.6.dynsc.$solo": 2928833070, - "bus.6.preins": 740475668, - "bus.6.preins.on": 1568920711, - "bus.6.preins.ins": 3676728915, - "bus.6.preins.$stat": 386420819, - "bus.6.main": 3958783767, - "bus.6.main.1": 3686374688, - "bus.6.main.1.on": 732161832, - "bus.6.main.1.lvl": 1458291400, - "bus.6.main.1.pre": 1920253858, - "bus.6.main.2": 3665247370, - "bus.6.main.2.on": 794928885, - "bus.6.main.2.lvl": 4215898789, - "bus.6.main.2.pre": 3985964799, - "bus.6.main.3": 2159903081, - "bus.6.main.3.on": 2750812360, - "bus.6.main.3.lvl": 3398318568, - "bus.6.main.3.pre": 3855020226, - "bus.6.main.4": 510363819, - "bus.6.main.4.on": 3737948538, - "bus.6.main.4.lvl": 263501866, - "bus.6.main.4.pre": 704678256, - "bus.6.send": 35256047, - "bus.6.send.1": 1185547043, - "bus.6.send.1.on": 895592946, - "bus.6.send.1.lvl": 3106504914, - "bus.6.send.1.pre": 389393560, - "bus.6.send.2": 4193255638, - "bus.6.send.2.on": 1942688901, - "bus.6.send.2.lvl": 4211273173, - "bus.6.send.2.pre": 1425642127, - "bus.6.send.3": 603981440, - "bus.6.send.3.on": 2007453563, - "bus.6.send.3.lvl": 4144985043, - "bus.6.send.3.pre": 1406727929, - "bus.6.send.4": 4094011978, - "bus.6.send.4.on": 3014234491, - "bus.6.send.4.lvl": 3808519635, - "bus.6.send.4.pre": 3615299833, - "bus.6.send.5": 3477822729, - "bus.6.send.5.on": 1941061646, - "bus.6.send.5.lvl": 2398754518, - "bus.6.send.5.pre": 1518540796, - "bus.6.send.6": 2908040579, - "bus.6.send.6.on": 1711654217, - "bus.6.send.6.lvl": 816703889, - "bus.6.send.6.pre": 607732395, - "bus.6.send.7": 2270244918, - "bus.6.send.7.on": 4052677385, - "bus.6.send.7.lvl": 3105298897, - "bus.6.send.7.pre": 2875020523, - "bus.6.send.8": 660028151, - "bus.6.send.8.on": 771092233, - "bus.6.send.8.lvl": 4239267281, - "bus.6.send.8.pre": 4045740267, - "bus.6.send.9": 2728188330, - "bus.6.send.9.on": 560814972, - "bus.6.send.9.lvl": 1628800820, - "bus.6.send.9.pre": 1822483950, - "bus.6.send.10": 2704310460, - "bus.6.send.10.on": 1382138120, - "bus.6.send.10.lvl": 913369335, - "bus.6.send.10.pre": 1259092687, - "bus.6.send.11": 1930852369, - "bus.6.send.11.on": 3927049357, - "bus.6.send.11.lvl": 509654525, - "bus.6.send.11.pre": 1380604877, - "bus.6.send.12": 3052175107, - "bus.6.send.12.on": 276946851, - "bus.6.send.12.lvl": 610443083, - "bus.6.send.12.pre": 127665499, - "bus.6.send.13": 2215784637, - "bus.6.send.13.on": 2905723683, - "bus.6.send.13.lvl": 3871800401, - "bus.6.send.13.pre": 1185504409, - "bus.6.send.14": 1437063522, - "bus.6.send.14.on": 1134673076, - "bus.6.send.14.lvl": 896474863, - "bus.6.send.14.pre": 1295629767, - "bus.6.send.15": 599380823, - "bus.6.send.15.on": 1800510106, - "bus.6.send.15.lvl": 660440565, - "bus.6.send.15.pre": 715248517, - "bus.6.send.16": 4136639484, - "bus.6.send.16.on": 113368607, - "bus.6.send.16.lvl": 3713363779, - "bus.6.send.16.pre": 2330933491, - "bus.6.send.MX1": 2597293944, - "bus.6.send.MX1.on": 741725823, - "bus.6.send.MX1.lvl": 3408095735, - "bus.6.send.MX1.pre": 3811854183, - "bus.6.send.MX2": 3779870565, - "bus.6.send.MX2.on": 2318025333, - "bus.6.send.MX2.lvl": 17466866, - "bus.6.send.MX2.pre": 2142792039, - "bus.6.send.MX3": 3777679078, - "bus.6.send.MX3.on": 2052149196, - "bus.6.send.MX3.lvl": 3581812128, - "bus.6.send.MX3.pre": 2224715726, - "bus.6.send.MX4": 2352875249, - "bus.6.send.MX4.on": 1642728396, - "bus.6.send.MX4.lvl": 143120800, - "bus.6.send.MX4.pre": 395742196, - "bus.6.send.MX5": 3256653186, - "bus.6.send.MX5.on": 1366244467, - "bus.6.send.MX5.lvl": 3989953086, - "bus.6.send.MX5.pre": 411179387, - "bus.6.send.MX6": 312034703, - "bus.6.send.MX6.on": 3812939894, - "bus.6.send.MX6.lvl": 1603954277, - "bus.6.send.MX6.pre": 3655388534, - "bus.6.send.MX7": 497972280, - "bus.6.send.MX7.on": 651633325, - "bus.6.send.MX7.lvl": 284728683, - "bus.6.send.MX7.pre": 2521361101, - "bus.6.send.MX8": 1670073270, - "bus.6.send.MX8.on": 2999631563, - "bus.6.send.MX8.lvl": 1394608491, - "bus.6.send.MX8.pre": 109472968, - "bus.6.postins": 978888874, - "bus.6.postins.on": 3913547781, - "bus.6.postins.ins": 212115800, - "bus.6.postins.$stat": 476328272, - "bus.6.dly": 2246562773, - "bus.6.dly.on": 181019430, - "bus.6.dly.mode": 2503871074, - "bus.6.dly.dly": 3704327886, - "bus.6.tags": 850790895, - "bus.6.$fdr": 3705974095, - "bus.6.$mute": 324226266, - "bus.6.$muteovr": 2840297056, - "bus.7": 927933914, - "bus.7.in": 584694389, - "bus.7.in.set": 2402867832, - "bus.7.in.set.inv": 3377445539, - "bus.7.in.set.trim": 1274438954, - "bus.7.in.set.bal": 4286747266, - "bus.7.col": 440335579, - "bus.7.name": 2469642049, - "bus.7.icon": 2260105446, - "bus.7.led": 823619892, - "bus.7.$col": 2523954765, - "bus.7.$name": 1851035648, - "bus.7.$icon": 819737579, - "bus.7.busmono": 1490014111, - "bus.7.mute": 3686813235, - "bus.7.fdr": 1950156071, - "bus.7.pan": 2600816410, - "bus.7.wid": 1287661220, - "bus.7.$solo": 605126162, - "bus.7.$sololed": 3692389332, - "bus.7.mon": 1425224377, - "bus.7.busmode": 2138851263, - "bus.7.eq": 250218903, - "bus.7.eq.on": 797935406, - "bus.7.eq.mdl": 3120685036, - "bus.7.eq.mix": 1591376598, - "bus.7.eq.$solo": 1899437462, - "bus.7.eq.$solobd": 3933204309, - "bus.7.eq.1": 730511084, - "bus.7.eq.2": 90744183, - "bus.7.eq.3": 3410405730, - "bus.7.eq.4": 354704923, - "bus.7.eq.5": 3852624374, - "bus.7.eq.6": 931432332, - "bus.7.eq.7": 4292990487, - "bus.7.eq.8": 3653228445, - "bus.7.eq.9": 440241851, - "bus.7.eq.10": 3047306130, - "bus.7.eq.11": 2113943119, - "bus.7.eq.12": 1471554485, - "bus.7.eq.13": 674506654, - "bus.7.eq.14": 3725712476, - "bus.7.eq.15": 938467042, - "bus.7.eq.16": 167339128, - "bus.7.eq.17": 3696710741, - "bus.7.eq.18": 2729268670, - "bus.7.eq.19": 3968535801, - "bus.7.eq.20": 2557018739, - "bus.7.eq.21": 1759965820, - "bus.7.eq.22": 1120204073, - "bus.7.eq.23": 2065869568, - "bus.7.eq.24": 1258335677, - "bus.7.eq.25": 629054214, - "bus.7.eq.26": 3948715443, - "bus.7.eq.27": 893014954, - "bus.7.dyn": 1561345355, - "bus.7.dyn.on": 2565501079, - "bus.7.dyn.mdl": 2217083611, - "bus.7.dyn.mix": 3822691734, - "bus.7.dyn.gain": 965924471, - "bus.7.dyn.1": 474782725, - "bus.7.dyn.2": 1563079368, - "bus.7.dyn.3": 2129291414, - "bus.7.dyn.4": 2892519260, - "bus.7.dyn.5": 3393603055, - "bus.7.dyn.6": 3964652389, - "bus.7.dyn.7": 463725736, - "bus.7.dyn.8": 948017161, - "bus.7.dyn.9": 4141975868, - "bus.7.dynxo": 3660438020, - "bus.7.dynxo.depth": 177517008, - "bus.7.dynxo.type": 107952870, - "bus.7.dynxo.f": 671036483, - "bus.7.dynxo.$solo": 3014608754, - "bus.7.dynsc": 804741281, - "bus.7.dynsc.type": 1811406170, - "bus.7.dynsc.f": 1054325679, - "bus.7.dynsc.q": 2519925724, - "bus.7.dynsc.src": 4161886226, - "bus.7.dynsc.tap": 1133915833, - "bus.7.dynsc.$solo": 3118952262, - "bus.7.preins": 1437590610, - "bus.7.preins.on": 1375229394, - "bus.7.preins.ins": 2854386078, - "bus.7.preins.$stat": 2690925686, - "bus.7.main": 2793934089, - "bus.7.main.1": 2881158966, - "bus.7.main.1.on": 2028921128, - "bus.7.main.1.lvl": 2981563592, - "bus.7.main.1.pre": 2545770914, - "bus.7.main.2": 2170277868, - "bus.7.main.2.on": 3137941956, - "bus.7.main.2.lvl": 864115436, - "bus.7.main.2.pre": 20255014, - "bus.7.main.3": 1287725063, - "bus.7.main.3.on": 3885510723, - "bus.7.main.3.lvl": 2938111115, - "bus.7.main.3.pre": 2707891825, - "bus.7.main.4": 2031192181, - "bus.7.main.4.on": 510092433, - "bus.7.main.4.lvl": 1346321865, - "bus.7.main.4.pre": 1781793283, - "bus.7.send": 3853004409, - "bus.7.send.1": 1337799461, - "bus.7.send.1.on": 1936027560, - "bus.7.send.1.lvl": 925713992, - "bus.7.send.1.pre": 758245410, - "bus.7.send.2": 417121880, - "bus.7.send.2.on": 523530196, - "bus.7.send.2.lvl": 1334614300, - "bus.7.send.2.pre": 1543890422, - "bus.7.send.3": 420679374, - "bus.7.send.3.on": 2457579665, - "bus.7.send.3.lvl": 1546901961, - "bus.7.send.3.pre": 2024449539, - "bus.7.send.4": 328704484, - "bus.7.send.4.on": 2018372097, - "bus.7.send.4.lvl": 2655393241, - "bus.7.send.4.pre": 2440719539, - "bus.7.send.5": 2990115487, - "bus.7.send.5.on": 539837912, - "bus.7.send.5.lvl": 1318416792, - "bus.7.send.5.pre": 1801179090, - "bus.7.send.6": 2755880197, - "bus.7.send.6.on": 2193194899, - "bus.7.send.6.lvl": 2483135483, - "bus.7.send.6.pre": 931497729, - "bus.7.send.7": 2757948856, - "bus.7.send.7.on": 2096668607, - "bus.7.send.7.lvl": 2912994287, - "bus.7.send.7.pre": 2435426101, - "bus.7.send.8": 518340753, - "bus.7.send.8.on": 737202479, - "bus.7.send.8.lvl": 1121515519, - "bus.7.send.8.pre": 220350885, - "bus.7.send.9": 2869547332, - "bus.7.send.9.on": 101851478, - "bus.7.send.9.lvl": 2091535630, - "bus.7.send.9.pre": 1205739860, - "bus.7.send.10": 2670839062, - "bus.7.send.10.on": 4234509202, - "bus.7.send.10.lvl": 2428164663, - "bus.7.send.10.pre": 2687201935, - "bus.7.send.11": 3373446091, - "bus.7.send.11.on": 1410713879, - "bus.7.send.11.lvl": 1961554493, - "bus.7.send.11.pre": 2294438285, - "bus.7.send.12": 4159715689, - "bus.7.send.12.on": 981834585, - "bus.7.send.12.lvl": 2144928651, - "bus.7.send.12.pre": 18109211, - "bus.7.send.13": 1846602839, - "bus.7.send.13.on": 2536872153, - "bus.7.send.13.lvl": 2164561297, - "bus.7.send.13.pre": 2613649497, - "bus.7.send.14": 2544115464, - "bus.7.send.14.on": 2913305182, - "bus.7.send.14.lvl": 2482060591, - "bus.7.send.14.pre": 2807640455, - "bus.7.send.15": 565906877, - "bus.7.send.15.on": 3579139312, - "bus.7.send.15.lvl": 1931431733, - "bus.7.send.15.pre": 629297989, - "bus.7.send.16": 1284431958, - "bus.7.send.16.on": 4039484021, - "bus.7.send.16.lvl": 2181761155, - "bus.7.send.16.pre": 3308711987, - "bus.7.send.MX1": 1579966770, - "bus.7.send.MX1.on": 3716674301, - "bus.7.send.MX1.lvl": 2356623856, - "bus.7.send.MX1.pre": 1223310203, - "bus.7.send.MX2": 2382261663, - "bus.7.send.MX2.on": 2248443616, - "bus.7.send.MX2.lvl": 339660251, - "bus.7.send.MX2.pre": 3510222177, - "bus.7.send.MX3": 3766497068, - "bus.7.send.MX3.on": 3373469701, - "bus.7.send.MX3.lvl": 2060049915, - "bus.7.send.MX3.pre": 3649353816, - "bus.7.send.MX4": 3412633131, - "bus.7.send.MX4.on": 1368126514, - "bus.7.send.MX4.lvl": 3396563460, - "bus.7.send.MX4.pre": 362890328, - "bus.7.send.MX5": 2196399976, - "bus.7.send.MX5.on": 1150356799, - "bus.7.send.MX5.lvl": 2093105617, - "bus.7.send.MX5.pre": 2665217861, - "bus.7.send.MX6": 3585898677, - "bus.7.send.MX6.on": 749949300, - "bus.7.send.MX6.lvl": 570336743, - "bus.7.send.MX6.pre": 3180497733, - "bus.7.send.MX7": 780720626, - "bus.7.send.MX7.on": 3142115913, - "bus.7.send.MX7.lvl": 4029935013, - "bus.7.send.MX7.pre": 1113785551, - "bus.7.send.MX8": 1656427420, - "bus.7.send.MX8.on": 1669092949, - "bus.7.send.MX8.lvl": 2226901413, - "bus.7.send.MX8.pre": 2173994703, - "bus.7.postins": 525753804, - "bus.7.postins.on": 3428468803, - "bus.7.postins.ins": 3657912127, - "bus.7.postins.$stat": 2022465925, - "bus.7.dly": 1957705708, - "bus.7.dly.on": 3866066343, - "bus.7.dly.mode": 4231598384, - "bus.7.dly.dly": 1566346818, - "bus.7.tags": 403373685, - "bus.7.$fdr": 1429791189, - "bus.7.$mute": 3628452692, - "bus.7.$muteovr": 2456609418, - "bus.8": 1735534145, - "bus.8.in": 1145706659, - "bus.8.in.set": 3567868514, - "bus.8.in.set.inv": 2035522889, - "bus.8.in.set.trim": 3732837162, - "bus.8.in.set.bal": 1333717640, - "bus.8.col": 4059245009, - "bus.8.name": 2457628219, - "bus.8.icon": 1971533072, - "bus.8.led": 1072267038, - "bus.8.$col": 1543563519, - "bus.8.$name": 2244249222, - "bus.8.$icon": 173349649, - "bus.8.busmono": 1701318793, - "bus.8.mute": 3303900001, - "bus.8.fdr": 2081395681, - "bus.8.pan": 2745851164, - "bus.8.wid": 2855291350, - "bus.8.$solo": 464737088, - "bus.8.$sololed": 2616731707, - "bus.8.mon": 3838439403, - "bus.8.busmode": 2000321237, - "bus.8.eq": 916037253, - "bus.8.eq.on": 749123576, - "bus.8.eq.mdl": 3547135138, - "bus.8.eq.mix": 3070448536, - "bus.8.eq.$solo": 1877271088, - "bus.8.eq.$solobd": 3457551355, - "bus.8.eq.1": 144823234, - "bus.8.eq.2": 1610445969, - "bus.8.eq.3": 2426110604, - "bus.8.eq.4": 2012987661, - "bus.8.eq.5": 804880120, - "bus.8.eq.6": 1441768546, - "bus.8.eq.7": 2215290161, - "bus.8.eq.8": 995408555, - "bus.8.eq.9": 592769453, - "bus.8.eq.10": 1610177236, - "bus.8.eq.11": 3054823297, - "bus.8.eq.12": 224331515, - "bus.8.eq.13": 1700742248, - "bus.8.eq.14": 2784822122, - "bus.8.eq.15": 3713568804, - "bus.8.eq.16": 2202932654, - "bus.8.eq.17": 963393435, - "bus.8.eq.18": 1767406728, - "bus.8.eq.19": 1354118135, - "bus.8.eq.20": 2605827997, - "bus.8.eq.21": 4082080138, - "bus.8.eq.22": 1253058087, - "bus.8.eq.23": 2428102118, - "bus.8.eq.24": 3893719699, - "bus.8.eq.25": 1075003936, - "bus.8.eq.26": 1890832093, - "bus.8.eq.27": 1477545628, - "bus.8.dyn": 3390381669, - "bus.8.dyn.on": 3461472401, - "bus.8.dyn.mdl": 3613692444, - "bus.8.dyn.mix": 3676182754, - "bus.8.dyn.gain": 1934625043, - "bus.8.dyn.1": 2519831851, - "bus.8.dyn.2": 3408871198, - "bus.8.dyn.3": 2984626320, - "bus.8.dyn.4": 82035338, - "bus.8.dyn.5": 1558113089, - "bus.8.dyn.6": 2060764619, - "bus.8.dyn.7": 3599265726, - "bus.8.dyn.8": 3112761639, - "bus.8.dyn.9": 1904014122, - "bus.8.dynxo": 1453767074, - "bus.8.dynxo.depth": 2574502565, - "bus.8.dynxo.type": 1563871829, - "bus.8.dynxo.f": 2291615888, - "bus.8.dynxo.$solo": 1933215022, - "bus.8.dynsc": 945737871, - "bus.8.dynsc.type": 1336863423, - "bus.8.dynsc.f": 456421642, - "bus.8.dynsc.q": 4235798113, - "bus.8.dynsc.src": 3857409399, - "bus.8.dynsc.tap": 2679419924, - "bus.8.dynsc.$solo": 1566894506, - "bus.8.preins": 288543176, - "bus.8.preins.on": 1717201853, - "bus.8.preins.ins": 3867938633, - "bus.8.preins.$stat": 2510821146, - "bus.8.main": 2630563907, - "bus.8.main.1": 2361575052, - "bus.8.main.1.on": 1604663363, - "bus.8.main.1.lvl": 2400017547, - "bus.8.main.1.pre": 2614169201, - "bus.8.main.2": 2353657302, - "bus.8.main.2.on": 485161134, - "bus.8.main.2.lvl": 2380471542, - "bus.8.main.2.pre": 823741980, - "bus.8.main.3": 789760029, - "bus.8.main.3.on": 1453208529, - "bus.8.main.3.lvl": 2552650377, - "bus.8.main.3.pre": 2724910019, - "bus.8.main.4": 1869201887, - "bus.8.main.4.on": 4234484762, - "bus.8.main.4.lvl": 1918694090, - "bus.8.main.4.pre": 1033124880, - "bus.8.send": 3967800763, - "bus.8.send.1": 1474671991, - "bus.8.send.1.on": 3297129679, - "bus.8.send.1.lvl": 3860728735, - "bus.8.send.1.pre": 3646240581, - "bus.8.send.2": 281539690, - "bus.8.send.2.on": 1540696771, - "bus.8.send.2.lvl": 3467465739, - "bus.8.send.2.pre": 1890134769, - "bus.8.send.3": 115994124, - "bus.8.send.3.on": 240443946, - "bus.8.send.3.lvl": 2287798522, - "bus.8.send.3.pre": 757163168, - "bus.8.send.4": 107750134, - "bus.8.send.4.on": 150381178, - "bus.8.send.4.lvl": 2377042218, - "bus.8.send.4.pre": 3257246832, - "bus.8.send.5": 3209583517, - "bus.8.send.5.on": 2463010318, - "bus.8.send.5.lvl": 1878439126, - "bus.8.send.5.pre": 2113572348, - "bus.8.send.6": 2641136407, - "bus.8.send.6.on": 1082286938, - "bus.8.send.6.lvl": 776636298, - "bus.8.send.6.pre": 2354100432, - "bus.8.send.7": 2475607306, - "bus.8.send.7.on": 3736173062, - "bus.8.send.7.lvl": 268019166, - "bus.8.send.7.pre": 461692036, - "bus.8.send.8": 319863203, - "bus.8.send.8.on": 3715205713, - "bus.8.send.8.lvl": 3441014281, - "bus.8.send.8.pre": 10849347, - "bus.8.send.9": 3153261462, - "bus.8.send.9.on": 2077420357, - "bus.8.send.9.lvl": 2935691029, - "bus.8.send.9.pre": 2499898319, - "bus.8.send.10": 1309734377, - "bus.8.send.10.on": 1300646581, - "bus.8.send.10.lvl": 729124401, - "bus.8.send.10.pre": 908934854, - "bus.8.send.11": 2096230036, - "bus.8.send.11.on": 87456304, - "bus.8.send.11.lvl": 1164288839, - "bus.8.send.11.pre": 1041184436, - "bus.8.send.12": 1140651158, - "bus.8.send.12.on": 2384877158, - "bus.8.send.12.lvl": 928514149, - "bus.8.send.12.pre": 459103186, - "bus.8.send.13": 480099104, - "bus.8.send.13.on": 1129733606, - "bus.8.send.13.lvl": 759966283, - "bus.8.send.13.pre": 1048362736, - "bus.8.send.14": 1224953839, - "bus.8.send.14.on": 1548109665, - "bus.8.send.14.lvl": 800748761, - "bus.8.send.14.pre": 1179437934, - "bus.8.send.15": 3584968858, - "bus.8.send.15.on": 2213946327, - "bus.8.send.15.lvl": 879500879, - "bus.8.send.15.pre": 4149130652, - "bus.8.send.16": 4172260649, - "bus.8.send.16.on": 2716226386, - "bus.8.send.16.lvl": 919382893, - "bus.8.send.16.pre": 799949306, - "bus.8.send.MX1": 2363564059, - "bus.8.send.MX1.on": 1693872184, - "bus.8.send.MX1.lvl": 1155919478, - "bus.8.send.MX1.pre": 287424270, - "bus.8.send.MX2": 3207966446, - "bus.8.send.MX2.on": 2659583029, - "bus.8.send.MX2.lvl": 1020056222, - "bus.8.send.MX2.pre": 2498903310, - "bus.8.send.MX3": 255291485, - "bus.8.send.MX3.on": 1226108407, - "bus.8.send.MX3.lvl": 3544936617, - "bus.8.send.MX3.pre": 2714753459, - "bus.8.send.MX4": 2586928962, - "bus.8.send.MX4.on": 3409850871, - "bus.8.send.MX4.lvl": 385221835, - "bus.8.send.MX4.pre": 1314506117, - "bus.8.send.MX5": 3023251633, - "bus.8.send.MX5.on": 3152217740, - "bus.8.send.MX5.lvl": 1142143250, - "bus.8.send.MX5.pre": 1515618818, - "bus.8.send.MX6": 76003844, - "bus.8.send.MX6.on": 3581262473, - "bus.8.send.MX6.lvl": 3938508090, - "bus.8.send.MX6.pre": 4108832258, - "bus.8.send.MX7": 1607736155, - "bus.8.send.MX7.on": 3261564814, - "bus.8.send.MX7.lvl": 871541863, - "bus.8.send.MX7.pre": 13992852, - "bus.8.send.MX8": 2441335373, - "bus.8.send.MX8.on": 3922324368, - "bus.8.send.MX8.lvl": 3137945704, - "bus.8.send.MX8.pre": 2320630169, - "bus.8.postins": 3667487457, - "bus.8.postins.on": 2364817422, - "bus.8.postins.ins": 2292932298, - "bus.8.postins.$stat": 629610319, - "bus.8.dly": 2166333473, - "bus.8.dly.on": 256006722, - "bus.8.dly.mode": 1919918454, - "bus.8.dly.dly": 1045434768, - "bus.8.tags": 545154819, - "bus.8.$fdr": 1710388803, - "bus.8.$mute": 3413109286, - "bus.8.$muteovr": 3678512883, - "bus.9": 1301304779, - "bus.9.in": 1543100974, - "bus.9.in.set": 2065051684, - "bus.9.in.set.inv": 2537486162, - "bus.9.in.set.trim": 3991132467, - "bus.9.in.set.bal": 627599891, - "bus.9.col": 136533759, - "bus.9.name": 2504669109, - "bus.9.icon": 1934803242, - "bus.9.led": 193522728, - "bus.9.$col": 1381486105, - "bus.9.$name": 3224802228, - "bus.9.$icon": 4095838119, - "bus.9.busmono": 2214227248, - "bus.9.mute": 2648341255, - "bus.9.fdr": 2254650347, - "bus.9.pan": 2702121550, - "bus.9.wid": 2844253496, - "bus.9.$solo": 3863049934, - "bus.9.$sololed": 2118435336, - "bus.9.mon": 1079666877, - "bus.9.busmode": 3397111690, - "bus.9.eq": 1292480517, - "bus.9.eq.on": 1100411154, - "bus.9.eq.mdl": 3153938264, - "bus.9.eq.mix": 3337818210, - "bus.9.eq.$solo": 2376270858, - "bus.9.eq.$solobd": 342678177, - "bus.9.eq.1": 4119973992, - "bus.9.eq.2": 1846382539, - "bus.9.eq.3": 2861253062, - "bus.9.eq.4": 1661716519, - "bus.9.eq.5": 998885938, - "bus.9.eq.6": 964665288, - "bus.9.eq.7": 1979367211, - "bus.9.eq.8": 1315204785, - "bus.9.eq.9": 115668871, - "bus.9.eq.10": 1804159406, - "bus.9.eq.11": 2818907387, - "bus.9.eq.12": 544128385, - "bus.9.eq.13": 1223638946, - "bus.9.eq.14": 2506966512, - "bus.9.eq.15": 3991435614, - "bus.9.eq.16": 1809731284, - "bus.9.eq.17": 1146875105, - "bus.9.eq.18": 2160618626, - "bus.9.eq.19": 960918877, - "bus.9.eq.20": 2411830455, - "bus.9.eq.21": 138382032, - "bus.9.eq.22": 817913389, - "bus.9.eq.23": 2905195340, - "bus.9.eq.24": 3584399001, - "bus.9.eq.25": 1310949946, - "bus.9.eq.26": 2325984631, - "bus.9.eq.27": 1126283926, - "bus.9.dyn": 1403128175, - "bus.9.dyn.on": 2743399707, - "bus.9.dyn.mdl": 181694098, - "bus.9.dyn.mix": 1153438224, - "bus.9.dyn.gain": 1453078902, - "bus.9.dyn.1": 295922385, - "bus.9.dyn.2": 1048405732, - "bus.9.dyn.3": 2308421450, - "bus.9.dyn.4": 2400312144, - "bus.9.dyn.5": 3907765435, - "bus.9.dyn.6": 4141980209, - "bus.9.dyn.7": 4244346436, - "bus.9.dyn.8": 1104537261, - "bus.9.dyn.9": 3964668592, - "bus.9.dynxo": 3503531496, - "bus.9.dynxo.depth": 4236455183, - "bus.9.dynxo.type": 4190021255, - "bus.9.dynxo.f": 3106129970, - "bus.9.dynxo.$solo": 598597278, - "bus.9.dynsc": 290497781, - "bus.9.dynsc.type": 441900596, - "bus.9.dynsc.f": 3817635777, - "bus.9.dynsc.q": 3973298090, - "bus.9.dynsc.src": 3715455316, - "bus.9.dynsc.tap": 2419540663, - "bus.9.dynsc.$solo": 1451486212, - "bus.9.preins": 3812056694, - "bus.9.preins.on": 4096197757, - "bus.9.preins.ins": 468986505, - "bus.9.preins.$stat": 489705817, - "bus.9.main": 4103767653, - "bus.9.main.1": 4254372898, - "bus.9.main.1.on": 1342346945, - "bus.9.main.1.lvl": 847932185, - "bus.9.main.1.pre": 2362840307, - "bus.9.main.2": 3480595320, - "bus.9.main.2.on": 3024150549, - "bus.9.main.2.lvl": 3797464773, - "bus.9.main.2.pre": 3625039903, - "bus.9.main.3": 2682731051, - "bus.9.main.3.on": 767353295, - "bus.9.main.3.lvl": 4240771231, - "bus.9.main.3.pre": 4052761157, - "bus.9.main.4": 741864169, - "bus.9.main.4.on": 1525003421, - "bus.9.main.4.lvl": 3483228381, - "bus.9.main.4.pre": 1947685399, - "bus.9.send": 3490694453, - "bus.9.send.1": 1689634169, - "bus.9.send.1.on": 2122307405, - "bus.9.send.1.lvl": 4028083053, - "bus.9.send.1.pre": 3142680391, - "bus.9.send.2": 737668748, - "bus.9.send.2.on": 1319424325, - "bus.9.send.2.lvl": 3356294421, - "bus.9.send.2.pre": 1825665487, - "bus.9.send.3": 1442440426, - "bus.9.send.3.on": 304436736, - "bus.9.send.3.lvl": 2220698192, - "bus.9.send.3.pre": 643388938, - "bus.9.send.4": 3590068192, - "bus.9.send.4.on": 34334208, - "bus.9.send.4.lvl": 2156116560, - "bus.9.send.4.pre": 3728524810, - "bus.9.send.5": 2638114643, - "bus.9.send.5.on": 2664948536, - "bus.9.send.5.lvl": 2012219256, - "bus.9.send.5.pre": 1571502258, - "bus.9.send.6": 3747385305, - "bus.9.send.6.on": 1126451716, - "bus.9.send.6.lvl": 731652268, - "bus.9.send.6.pre": 2304057830, - "bus.9.send.7": 1767816684, - "bus.9.send.7.on": 533265092, - "bus.9.send.7.lvl": 180409324, - "bus.9.send.7.pre": 1039505446, - "bus.9.send.8": 157333837, - "bus.9.send.8.on": 3708569311, - "bus.9.send.8.lvl": 3450105871, - "bus.9.send.8.pre": 14203989, - "bus.9.send.9": 3231901504, - "bus.9.send.9.on": 1943001271, - "bus.9.send.9.lvl": 2733093399, - "bus.9.send.9.pre": 2292234461, - "bus.9.send.10": 135419387, - "bus.9.send.10.on": 1803556471, - "bus.9.send.10.lvl": 41743562, - "bus.9.send.10.pre": 1992695302, - "bus.9.send.11": 1593320166, - "bus.9.send.11.on": 3543151090, - "bus.9.send.11.lvl": 162354432, - "bus.9.send.11.pre": 2439013364, - "bus.9.send.12": 972467268, - "bus.9.send.12.on": 2887780980, - "bus.9.send.12.lvl": 115264622, - "bus.9.send.12.pre": 1005501202, - "bus.9.send.13": 983325554, - "bus.9.send.13.on": 290455028, - "bus.9.send.13.lvl": 2937775108, - "bus.9.send.13.pre": 2605935664, - "bus.9.send.14": 2399120429, - "bus.9.send.14.on": 2051018595, - "bus.9.send.14.lvl": 45868434, - "bus.9.send.14.pre": 1109633710, - "bus.9.send.15": 2410642968, - "bus.9.send.15.on": 1374678357, - "bus.9.send.15.lvl": 544038152, - "bus.9.send.15.pre": 937946332, - "bus.9.send.16": 3669509819, - "bus.9.send.16.on": 3219130576, - "bus.9.send.16.lvl": 3029672790, - "bus.9.send.16.pre": 2192346554, - "bus.9.send.MX1": 2379868597, - "bus.9.send.MX1.on": 492482803, - "bus.9.send.MX1.lvl": 672696343, - "bus.9.send.MX1.pre": 3001712544, - "bus.9.send.MX2": 3182159144, - "bus.9.send.MX2.on": 2590328054, - "bus.9.send.MX2.lvl": 4293270560, - "bus.9.send.MX2.pre": 1657273811, - "bus.9.send.MX3": 282240675, - "bus.9.send.MX3.on": 2814161495, - "bus.9.send.MX3.lvl": 3332583385, - "bus.9.send.MX3.pre": 1676678803, - "bus.9.send.MX4": 2601922996, - "bus.9.send.MX4.on": 2226057580, - "bus.9.send.MX4.lvl": 3931292655, - "bus.9.send.MX4.pre": 2273772185, - "bus.9.send.MX5": 3007115871, - "bus.9.send.MX5.on": 2217789210, - "bus.9.send.MX5.lvl": 2410475508, - "bus.9.send.MX5.pre": 200425783, - "bus.9.send.MX6": 101642290, - "bus.9.send.MX6.on": 458881818, - "bus.9.send.MX6.lvl": 254088193, - "bus.9.send.MX6.pre": 306875652, - "bus.9.send.MX7": 1580617973, - "bus.9.send.MX7.on": 2963032219, - "bus.9.send.MX7.lvl": 2689428310, - "bus.9.send.MX7.pre": 231261981, - "bus.9.send.MX8": 2467142643, - "bus.9.send.MX8.on": 1106226279, - "bus.9.send.MX8.lvl": 2136670043, - "bus.9.send.MX8.pre": 3563078941, - "bus.9.postins": 1824713943, - "bus.9.postins.on": 3137780040, - "bus.9.postins.ins": 132773372, - "bus.9.postins.$stat": 646739402, - "bus.9.dly": 1679211839, - "bus.9.dly.on": 365650716, - "bus.9.dly.mode": 2847294738, - "bus.9.dly.dly": 3315869568, - "bus.9.tags": 736593321, - "bus.9.$fdr": 3598867401, - "bus.9.$mute": 3596618112, - "bus.9.$muteovr": 3331417053, - "bus.10": 2474437453, - "bus.10.in": 1114918492, - "bus.10.in.set": 1371347229, - "bus.10.in.set.inv": 3557125512, - "bus.10.in.set.trim": 1837408259, - "bus.10.in.set.bal": 344211093, - "bus.10.col": 2707980798, - "bus.10.name": 2463940057, - "bus.10.icon": 2572902383, - "bus.10.led": 2984026954, - "bus.10.$col": 1217076746, - "bus.10.$name": 1463836601, - "bus.10.$icon": 1958158555, - "bus.10.busmono": 609746222, - "bus.10.mute": 3279800273, - "bus.10.fdr": 1611320035, - "bus.10.pan": 3542369561, - "bus.10.wid": 2704227820, - "bus.10.$solo": 4069093455, - "bus.10.$sololed": 3446454641, - "bus.10.mon": 1207589001, - "bus.10.busmode": 1364430593, - "bus.10.eq": 1947670467, - "bus.10.eq.on": 2262039962, - "bus.10.eq.mdl": 1490273904, - "bus.10.eq.mix": 1396019294, - "bus.10.eq.$solo": 1910481797, - "bus.10.eq.$solobd": 2951329522, - "bus.10.eq.1": 1436989529, - "bus.10.eq.2": 2074831116, - "bus.10.eq.3": 4138034915, - "bus.10.eq.4": 857700246, - "bus.10.eq.5": 1495495432, - "bus.10.eq.6": 3290282634, - "bus.10.eq.7": 4262969241, - "bus.10.eq.8": 2029244467, - "bus.10.eq.9": 3001929254, - "bus.10.eq.10": 2453775744, - "bus.10.eq.11": 3174807437, - "bus.10.eq.12": 899136670, - "bus.10.eq.13": 1603404825, - "bus.10.eq.14": 2325086394, - "bus.10.eq.15": 344985639, - "bus.10.eq.16": 3533339470, - "bus.10.eq.17": 4254371131, - "bus.10.eq.18": 1668297273, - "bus.10.eq.19": 2682965719, - "bus.10.eq.20": 1155849660, - "bus.10.eq.21": 2867405983, - "bus.10.eq.22": 3923981304, - "bus.10.eq.23": 1608986789, - "bus.10.eq.24": 2288075475, - "bus.10.eq.25": 3344646028, - "bus.10.eq.26": 761237266, - "bus.10.eq.27": 1482263496, - "bus.10.dyn": 2142494203, - "bus.10.dyn.on": 2626731943, - "bus.10.dyn.mdl": 3637040127, - "bus.10.dyn.mix": 2170276577, - "bus.10.dyn.gain": 1571595815, - "bus.10.dyn.1": 2355711854, - "bus.10.dyn.2": 1581895725, - "bus.10.dyn.3": 454215872, - "bus.10.dyn.4": 1528005505, - "bus.10.dyn.5": 712594484, - "bus.10.dyn.6": 2423226062, - "bus.10.dyn.7": 1292935024, - "bus.10.dyn.8": 519149623, - "bus.10.dyn.9": 1595560673, - "bus.10.dynxo": 3444677148, - "bus.10.dynxo.depth": 1800017472, - "bus.10.dynxo.type": 1499509625, - "bus.10.dynxo.f": 785159024, - "bus.10.dynxo.$solo": 327012184, - "bus.10.dynsc": 2520517162, - "bus.10.dynsc.type": 308112188, - "bus.10.dynsc.f": 3367963153, - "bus.10.dynsc.q": 2846474100, - "bus.10.dynsc.src": 2813816713, - "bus.10.dynsc.tap": 1823353686, - "bus.10.dynsc.$solo": 1782241042, - "bus.10.preins": 1138643603, - "bus.10.preins.on": 2410263420, - "bus.10.preins.ins": 3251897889, - "bus.10.preins.$stat": 13864053, - "bus.10.main": 1134009366, - "bus.10.main.1": 1955009202, - "bus.10.main.1.on": 3902872094, - "bus.10.main.1.lvl": 1524405635, - "bus.10.main.1.pre": 2628519023, - "bus.10.main.2": 3037194640, - "bus.10.main.2.on": 305220136, - "bus.10.main.2.lvl": 1005468477, - "bus.10.main.2.pre": 1830413537, - "bus.10.main.3": 2229618214, - "bus.10.main.3.on": 2881566888, - "bus.10.main.3.lvl": 1179279447, - "bus.10.main.3.pre": 2978919563, - "bus.10.main.4": 1421917889, - "bus.10.main.4.on": 1162946391, - "bus.10.main.4.lvl": 1406928177, - "bus.10.main.4.pre": 2554273405, - "bus.10.send": 1931424939, - "bus.10.send.1": 2693961560, - "bus.10.send.1.on": 26672500, - "bus.10.send.1.lvl": 4010675492, - "bus.10.send.1.pre": 2385229807, - "bus.10.send.2": 3351002378, - "bus.10.send.2.on": 3945193202, - "bus.10.send.2.lvl": 371207686, - "bus.10.send.2.pre": 2128186977, - "bus.10.send.3": 2543241932, - "bus.10.send.3.on": 3195456882, - "bus.10.send.3.lvl": 585147888, - "bus.10.send.3.pre": 491188547, - "bus.10.send.4": 1845549947, - "bus.10.send.4.on": 1476846541, - "bus.10.send.4.lvl": 4088528434, - "bus.10.send.4.pre": 2310489429, - "bus.10.send.5": 1374612518, - "bus.10.send.5.on": 2153209931, - "bus.10.send.5.lvl": 50590956, - "bus.10.send.5.pre": 2720290519, - "bus.10.send.6": 488166637, - "bus.10.send.6.on": 518444742, - "bus.10.send.6.lvl": 706213646, - "bus.10.send.6.pre": 1806791657, - "bus.10.send.7": 1664294810, - "bus.10.send.7.on": 3073830209, - "bus.10.send.7.lvl": 4176824664, - "bus.10.send.7.pre": 543130987, - "bus.10.send.8": 526200897, - "bus.10.send.8.on": 3687279071, - "bus.10.send.8.lvl": 4161102074, - "bus.10.send.8.pre": 2361981789, - "bus.10.send.9": 3309243099, - "bus.10.send.9.on": 1947687007, - "bus.10.send.9.lvl": 81203508, - "bus.10.send.9.pre": 2604252255, - "bus.10.send.10": 2136317965, - "bus.10.send.10.on": 1681642444, - "bus.10.send.10.lvl": 2501691714, - "bus.10.send.10.pre": 3621812311, - "bus.10.send.11": 998213811, - "bus.10.send.11.on": 885931425, - "bus.10.send.11.lvl": 2957020309, - "bus.10.send.11.pre": 1511099799, - "bus.10.send.12": 3327760764, - "bus.10.send.12.on": 2429051310, - "bus.10.send.12.lvl": 1732475463, - "bus.10.send.12.pre": 2052168041, - "bus.10.send.13": 2881727017, - "bus.10.send.13.on": 1662806989, - "bus.10.send.13.lvl": 2428982547, - "bus.10.send.13.pre": 1539627761, - "bus.10.send.14": 815658192, - "bus.10.send.14.on": 1059979248, - "bus.10.send.14.lvl": 2819332365, - "bus.10.send.14.pre": 1017684171, - "bus.10.send.15": 14419357, - "bus.10.send.15.on": 4154537711, - "bus.10.send.15.lvl": 3703245052, - "bus.10.send.15.pre": 2776782365, - "bus.10.send.16": 1052661779, - "bus.10.send.16.on": 3215510290, - "bus.10.send.16.lvl": 4105391315, - "bus.10.send.16.pre": 763716120, - "bus.10.send.MX1": 4189554206, - "bus.10.send.MX1.on": 3964361194, - "bus.10.send.MX1.lvl": 130566811, - "bus.10.send.MX1.pre": 3787546320, - "bus.10.send.MX2": 1053634764, - "bus.10.send.MX2.on": 3427518581, - "bus.10.send.MX2.lvl": 3620329572, - "bus.10.send.MX2.pre": 3625120775, - "bus.10.send.MX3": 251126130, - "bus.10.send.MX3.on": 3079396711, - "bus.10.send.MX3.lvl": 1191751542, - "bus.10.send.MX3.pre": 1129452421, - "bus.10.send.MX4": 1963047944, - "bus.10.send.MX4.on": 556042329, - "bus.10.send.MX4.lvl": 3701896616, - "bus.10.send.MX4.pre": 2901216403, - "bus.10.send.MX5": 756787635, - "bus.10.send.MX5.on": 786232360, - "bus.10.send.MX5.lvl": 1851786169, - "bus.10.send.MX5.pre": 2736168770, - "bus.10.send.MX6": 38124158, - "bus.10.send.MX6.on": 605887528, - "bus.10.send.MX6.lvl": 1486810041, - "bus.10.send.MX6.pre": 2387990338, - "bus.10.send.MX7": 2183136551, - "bus.10.send.MX7.on": 2099957058, - "bus.10.send.MX7.lvl": 2829889747, - "bus.10.send.MX7.pre": 1760610152, - "bus.10.send.MX8": 1651906002, - "bus.10.send.MX8.on": 1253770467, - "bus.10.send.MX8.lvl": 708716818, - "bus.10.send.MX8.pre": 1598197705, - "bus.10.postins": 2081320094, - "bus.10.postins.on": 1438561438, - "bus.10.postins.ins": 2989033841, - "bus.10.postins.$stat": 3325284086, - "bus.10.dly": 782459100, - "bus.10.dly.on": 318959369, - "bus.10.dly.mode": 1992187257, - "bus.10.dly.dly": 4288926561, - "bus.10.tags": 1644107905, - "bus.10.$fdr": 3525476073, - "bus.10.$mute": 267353784, - "bus.10.$muteovr": 3422219917, - "bus.11": 3271705603, - "bus.11.in": 1801828947, - "bus.11.in.set": 642762339, - "bus.11.in.set.inv": 182942431, - "bus.11.in.set.trim": 1818134164, - "bus.11.in.set.bal": 2154033103, - "bus.11.col": 2656814045, - "bus.11.name": 3362220067, - "bus.11.icon": 1419572216, - "bus.11.led": 3771245745, - "bus.11.$col": 822735400, - "bus.11.$name": 1236573019, - "bus.11.$icon": 1527076153, - "bus.11.busmono": 3404911428, - "bus.11.mute": 2370022016, - "bus.11.fdr": 1268706149, - "bus.11.pan": 343021006, - "bus.11.wid": 3495412720, - "bus.11.$solo": 623943341, - "bus.11.$sololed": 3051873298, - "bus.11.mon": 96146264, - "bus.11.busmode": 2527806443, - "bus.11.eq": 3651731730, - "bus.11.eq.on": 960468035, - "bus.11.eq.mdl": 2309880734, - "bus.11.eq.mix": 4071190052, - "bus.11.eq.$solo": 4203523487, - "bus.11.eq.$solobd": 398478020, - "bus.11.eq.1": 2014875368, - "bus.11.eq.2": 3375824773, - "bus.11.eq.3": 1762971698, - "bus.11.eq.4": 2788335855, - "bus.11.eq.5": 4138748345, - "bus.11.eq.6": 3868086267, - "bus.11.eq.7": 1269574184, - "bus.11.eq.8": 3959552706, - "bus.11.eq.9": 668967807, - "bus.11.eq.10": 3084008521, - "bus.11.eq.11": 128978172, - "bus.11.eq.12": 2829444911, - "bus.11.eq.13": 3575901520, - "bus.11.eq.14": 620860963, - "bus.11.eq.15": 975136470, - "bus.11.eq.16": 2284447199, - "bus.11.eq.17": 3624384114, - "bus.11.eq.18": 3361545392, - "bus.11.eq.19": 763061638, - "bus.11.eq.20": 2404987981, - "bus.11.eq.21": 534198798, - "bus.11.eq.22": 2230651553, - "bus.11.eq.23": 2228411220, - "bus.11.eq.24": 3589319722, - "bus.11.eq.25": 309220573, - "bus.11.eq.26": 2722915483, - "bus.11.eq.27": 4083823921, - "bus.11.dyn": 1273454112, - "bus.11.dyn.on": 2819313350, - "bus.11.dyn.mdl": 108824530, - "bus.11.dyn.mix": 1319740692, - "bus.11.dyn.gain": 607443458, - "bus.11.dyn.1": 3240474469, - "bus.11.dyn.2": 2540130710, - "bus.11.dyn.3": 1354047043, - "bus.11.dyn.4": 3733395666, - "bus.11.dyn.5": 3075199391, - "bus.11.dyn.6": 490858501, - "bus.11.dyn.7": 3598590515, - "bus.11.dyn.8": 2730356460, - "bus.11.dyn.9": 3668830578, - "bus.11.dynxo": 7593127, - "bus.11.dynxo.depth": 845281588, - "bus.11.dynxo.type": 3275767574, - "bus.11.dynxo.f": 324456124, - "bus.11.dynxo.$solo": 2742791133, - "bus.11.dynsc": 226002841, - "bus.11.dynsc.type": 642900047, - "bus.11.dynsc.f": 2600111001, - "bus.11.dynsc.q": 3530479164, - "bus.11.dynsc.src": 3490117873, - "bus.11.dynsc.tap": 2673895982, - "bus.11.dynsc.$solo": 344827042, - "bus.11.preins": 3463206266, - "bus.11.preins.on": 2065780309, - "bus.11.preins.ins": 1558889937, - "bus.11.preins.$stat": 911112301, - "bus.11.main": 84689231, - "bus.11.main.1": 3898528967, - "bus.11.main.1.on": 1942677523, - "bus.11.main.1.lvl": 3785120259, - "bus.11.main.1.pre": 653279625, - "bus.11.main.2": 134487429, - "bus.11.main.2.on": 2866461949, - "bus.11.main.2.lvl": 3916088501, - "bus.11.main.2.pre": 4272031443, - "bus.11.main.3": 1466107963, - "bus.11.main.3.on": 816493949, - "bus.11.main.3.lvl": 3947496088, - "bus.11.main.3.pre": 226670605, - "bus.11.main.4": 139262860, - "bus.11.main.4.on": 398107618, - "bus.11.main.4.lvl": 8369425, - "bus.11.main.4.pre": 4138901463, - "bus.11.send": 910739620, - "bus.11.send.1": 1678790687, - "bus.11.send.1.on": 3642219691, - "bus.11.send.1.lvl": 3335612500, - "bus.11.send.1.pre": 1350643364, - "bus.11.send.2": 1144956749, - "bus.11.send.2.on": 2728921077, - "bus.11.send.2.lvl": 3078610230, - "bus.11.send.2.pre": 2299731646, - "bus.11.send.3": 4095477875, - "bus.11.send.3.on": 452459381, - "bus.11.send.3.lvl": 3198896608, - "bus.11.send.3.pre": 1830415736, - "bus.11.send.4": 1166672164, - "bus.11.send.4.on": 881321210, - "bus.11.send.4.lvl": 3360364738, - "bus.11.send.4.pre": 1290406066, - "bus.11.send.5": 2506619673, - "bus.11.send.5.on": 1557623380, - "bus.11.send.5.lvl": 3459842300, - "bus.11.send.5.pre": 2217838764, - "bus.11.send.6": 3851809770, - "bus.11.send.6.on": 1986528729, - "bus.11.send.6.lvl": 3055865310, - "bus.11.send.6.pre": 3145216486, - "bus.11.send.7": 649308637, - "bus.11.send.7.on": 783806302, - "bus.11.send.7.lvl": 3781571208, - "bus.11.send.7.pre": 1208635904, - "bus.11.send.8": 1994498654, - "bus.11.send.8.on": 3091692136, - "bus.11.send.8.lvl": 3398852458, - "bus.11.send.8.pre": 1317555546, - "bus.11.send.9": 1220792772, - "bus.11.send.9.on": 1888972264, - "bus.11.send.9.lvl": 3477378948, - "bus.11.send.9.pre": 3096910708, - "bus.11.send.10": 2194491186, - "bus.11.send.10.on": 684197532, - "bus.11.send.10.lvl": 1237891895, - "bus.11.send.10.pre": 4268208738, - "bus.11.send.11": 3539681284, - "bus.11.send.11.on": 1826722590, - "bus.11.send.11.lvl": 284181157, - "bus.11.send.11.pre": 796867508, - "bus.11.send.12": 3269015419, - "bus.11.send.12.on": 1469325086, - "bus.11.send.12.lvl": 3516817047, - "bus.11.send.12.pre": 1490431929, - "bus.11.send.13": 340209710, - "bus.11.send.13.on": 3024308512, - "bus.11.send.13.lvl": 4002240803, - "bus.11.send.13.pre": 1646482230, - "bus.11.send.14": 3022317039, - "bus.11.send.14.on": 2498913597, - "bus.11.send.14.lvl": 1518474589, - "bus.11.send.14.pre": 2449206587, - "bus.11.send.15": 72539778, - "bus.11.send.15.on": 2362401186, - "bus.11.send.15.lvl": 3050772177, - "bus.11.send.15.pre": 2756015048, - "bus.11.send.16": 1983147556, - "bus.11.send.16.on": 392895935, - "bus.11.send.16.lvl": 293700227, - "bus.11.send.16.pre": 2327996365, - "bus.11.send.MX1": 373243905, - "bus.11.send.MX1.on": 1982244186, - "bus.11.send.MX1.lvl": 2259269419, - "bus.11.send.MX1.pre": 6310752, - "bus.11.send.MX2": 1447403507, - "bus.11.send.MX2.on": 2651144101, - "bus.11.send.MX2.lvl": 159848756, - "bus.11.send.MX2.pre": 143504599, - "bus.11.send.MX3": 2792552645, - "bus.11.send.MX3.on": 296316466, - "bus.11.send.MX3.lvl": 2452397731, - "bus.11.send.MX3.pre": 494109432, - "bus.11.send.MX4": 410852943, - "bus.11.send.MX4.on": 3140502665, - "bus.11.send.MX4.lvl": 984509240, - "bus.11.send.MX4.pre": 2942817379, - "bus.11.send.MX5": 1771773836, - "bus.11.send.MX5.on": 2885738264, - "bus.11.send.MX5.lvl": 2004725513, - "bus.11.send.MX5.pre": 930551250, - "bus.11.send.MX6": 3116963873, - "bus.11.send.MX6.on": 1449347992, - "bus.11.send.MX6.lvl": 1172399497, - "bus.11.send.MX6.pre": 3420115282, - "bus.11.send.MX7": 1504103984, - "bus.11.send.MX7.on": 3417711128, - "bus.11.send.MX7.lvl": 2956213257, - "bus.11.send.MX7.pre": 3615478482, - "bus.11.send.MX8": 2867644133, - "bus.11.send.MX8.on": 3943096884, - "bus.11.send.MX8.lvl": 797164933, - "bus.11.send.MX8.pre": 3750736246, - "bus.11.postins": 2097897431, - "bus.11.postins.on": 3710335400, - "bus.11.postins.ins": 1008887517, - "bus.11.postins.$stat": 1502963346, - "bus.11.dly": 4108695119, - "bus.11.dly.on": 2868980676, - "bus.11.dly.mode": 1773458181, - "bus.11.dly.dly": 2216333686, - "bus.11.tags": 2015153255, - "bus.11.$fdr": 2675085515, - "bus.11.$mute": 1080406826, - "bus.11.$muteovr": 360699448, - "bus.12": 3223688060, - "bus.12.in": 3235539146, - "bus.12.in.set": 3138797728, - "bus.12.in.set.inv": 4189236886, - "bus.12.in.set.trim": 3476722673, - "bus.12.in.set.bal": 353997830, - "bus.12.col": 2879578012, - "bus.12.name": 2698169916, - "bus.12.icon": 2683524737, - "bus.12.led": 2423271570, - "bus.12.$col": 664821269, - "bus.12.$name": 239798110, - "bus.12.$icon": 4187406652, - "bus.12.busmono": 3762774738, - "bus.12.mute": 3866922615, - "bus.12.fdr": 3691872176, - "bus.12.pan": 1400089027, - "bus.12.wid": 1153040665, - "bus.12.$solo": 832199312, - "bus.12.$sololed": 4215804123, - "bus.12.mon": 1634017095, - "bus.12.busmode": 1005352133, - "bus.12.eq": 4171310341, - "bus.12.eq.on": 2378526796, - "bus.12.eq.mdl": 522844232, - "bus.12.eq.mix": 2216845746, - "bus.12.eq.$solo": 3927641275, - "bus.12.eq.$solobd": 1911325054, - "bus.12.eq.1": 1471249119, - "bus.12.eq.2": 5116802, - "bus.12.eq.3": 1576193077, - "bus.12.eq.4": 697959672, - "bus.12.eq.5": 3516186022, - "bus.12.eq.6": 3745231860, - "bus.12.eq.7": 2279634463, - "bus.12.eq.8": 3674582725, - "bus.12.eq.9": 2880071560, - "bus.12.eq.10": 465029190, - "bus.12.eq.11": 3210510579, - "bus.12.eq.12": 488751896, - "bus.12.eq.13": 4247140711, - "bus.12.eq.14": 2697163308, - "bus.12.eq.15": 2573740761, - "bus.12.eq.16": 1264433608, - "bus.12.eq.17": 4177850997, - "bus.12.eq.18": 19400903, - "bus.12.eq.19": 2765005193, - "bus.12.eq.20": 1081301066, - "bus.12.eq.21": 2825932273, - "bus.12.eq.22": 1276446398, - "bus.12.eq.23": 1152532331, - "bus.12.eq.24": 4065785901, - "bus.12.eq.25": 3177066714, - "bus.12.eq.26": 637055108, - "bus.12.eq.27": 3550472526, - "bus.12.dyn": 81269777, - "bus.12.dyn.on": 1040479587, - "bus.12.dyn.mdl": 2628573176, - "bus.12.dyn.mix": 3134844654, - "bus.12.dyn.gain": 1610260502, - "bus.12.dyn.1": 142898548, - "bus.12.dyn.2": 3727435655, - "bus.12.dyn.3": 2851147834, - "bus.12.dyn.4": 972577531, - "bus.12.dyn.5": 261778350, - "bus.12.dyn.6": 26232340, - "bus.12.dyn.7": 3526187050, - "bus.12.dyn.8": 2647933149, - "bus.12.dyn.9": 4076440475, - "bus.12.dynxo": 1211261622, - "bus.12.dynxo.depth": 1599662177, - "bus.12.dynxo.type": 300351825, - "bus.12.dynxo.f": 571212244, - "bus.12.dynxo.$solo": 884225104, - "bus.12.dynsc": 3327766896, - "bus.12.dynsc.type": 2353187156, - "bus.12.dynsc.f": 503519213, - "bus.12.dynsc.q": 1038442800, - "bus.12.dynsc.src": 2400157125, - "bus.12.dynsc.tap": 1256339746, - "bus.12.dynsc.$solo": 523914425, - "bus.12.preins": 300567989, - "bus.12.preins.on": 1671280426, - "bus.12.preins.ins": 3016144516, - "bus.12.preins.$stat": 1653965725, - "bus.12.main": 3049596248, - "bus.12.main.1": 3352498180, - "bus.12.main.1.on": 1062537376, - "bus.12.main.1.lvl": 3460283273, - "bus.12.main.1.pre": 3495497783, - "bus.12.main.2": 2692466982, - "bus.12.main.2.on": 3328518294, - "bus.12.main.2.lvl": 3161551403, - "bus.12.main.2.pre": 1739031993, - "bus.12.main.3": 3621051536, - "bus.12.main.3.on": 20265494, - "bus.12.main.3.lvl": 3865461192, - "bus.12.main.3.pre": 3375556603, - "bus.12.main.4": 2881670143, - "bus.12.main.4.on": 2554667921, - "bus.12.main.4.lvl": 3704895735, - "bus.12.main.4.pre": 1640144733, - "bus.12.send": 4020807361, - "bus.12.send.1": 2652553597, - "bus.12.send.1.on": 4262374233, - "bus.12.send.1.lvl": 3555989424, - "bus.12.send.1.pre": 2581964961, - "bus.12.send.2": 3144956655, - "bus.12.send.2.on": 2006898967, - "bus.12.send.2.lvl": 46301079, - "bus.12.send.2.pre": 2807548603, - "bus.12.send.3": 1702261969, - "bus.12.send.3.on": 1009698711, - "bus.12.send.3.lvl": 130431348, - "bus.12.send.3.pre": 2968840253, - "bus.12.send.4": 3123391894, - "bus.12.send.4.on": 2780739048, - "bus.12.send.4.lvl": 3646929102, - "bus.12.send.4.pre": 3110414103, - "bus.12.send.5": 3291965323, - "bus.12.send.5.on": 2093933478, - "bus.12.send.5.lvl": 4201516405, - "bus.12.send.5.pre": 2678484681, - "bus.12.send.6": 428245064, - "bus.12.send.6.on": 3781087787, - "bus.12.send.6.lvl": 682734146, - "bus.12.send.6.pre": 3758312867, - "bus.12.send.7": 2970819327, - "bus.12.send.7.on": 2867773628, - "bus.12.send.7.lvl": 3360378204, - "bus.12.send.7.pre": 3065361061, - "bus.12.send.8": 3804705724, - "bus.12.send.8.on": 528412282, - "bus.12.send.8.lvl": 3512430774, - "bus.12.send.8.pre": 2535107263, - "bus.12.send.9": 2026987062, - "bus.12.send.9.on": 3868122362, - "bus.12.send.9.lvl": 4129912925, - "bus.12.send.9.pre": 3713260369, - "bus.12.send.10": 3168498512, - "bus.12.send.10.on": 2139267264, - "bus.12.send.10.lvl": 878990747, - "bus.12.send.10.pre": 3562679054, - "bus.12.send.11": 4012706838, - "bus.12.send.11.on": 1716986874, - "bus.12.send.11.lvl": 3435885564, - "bus.12.send.11.pre": 3792811392, - "bus.12.send.12": 2486289945, - "bus.12.send.12.on": 2703843319, - "bus.12.send.12.lvl": 1665318916, - "bus.12.send.12.pre": 2016889216, - "bus.12.send.13": 3991797452, - "bus.12.send.13.on": 95147145, - "bus.12.send.13.lvl": 3223465071, - "bus.12.send.13.pre": 2943513189, - "bus.12.send.14": 3807213965, - "bus.12.send.14.on": 1081819273, - "bus.12.send.14.lvl": 3938752649, - "bus.12.send.14.pre": 157085823, - "bus.12.send.15": 1028239904, - "bus.12.send.15.on": 860249686, - "bus.12.send.15.lvl": 3162122080, - "bus.12.send.15.pre": 383285964, - "bus.12.send.16": 1263787190, - "bus.12.send.16.on": 4053801555, - "bus.12.send.16.lvl": 586453896, - "bus.12.send.16.pre": 390024908, - "bus.12.send.MX1": 738833379, - "bus.12.send.MX1.on": 3751557393, - "bus.12.send.MX1.lvl": 3290392160, - "bus.12.send.MX1.pre": 3943924267, - "bus.12.send.MX2": 3244502673, - "bus.12.send.MX2.on": 4886790, - "bus.12.send.MX2.lvl": 4107039895, - "bus.12.send.MX2.pre": 4107307892, - "bus.12.send.MX3": 454387543, - "bus.12.send.MX3.on": 3836032606, - "bus.12.send.MX3.lvl": 422069839, - "bus.12.send.MX3.pre": 3496762668, - "bus.12.send.MX4": 18846189, - "bus.12.send.MX4.on": 718075588, - "bus.12.send.MX4.lvl": 1263210741, - "bus.12.send.MX4.pre": 2668035238, - "bus.12.send.MX5": 816032750, - "bus.12.send.MX5.on": 4110151422, - "bus.12.send.MX5.lvl": 2306391791, - "bus.12.send.MX5.pre": 12887500, - "bus.12.send.MX6": 2248139907, - "bus.12.send.MX6.on": 773725043, - "bus.12.send.MX6.lvl": 4003217730, - "bus.12.send.MX6.pre": 3281507769, - "bus.12.send.MX7": 2147483458, - "bus.12.send.MX7.on": 1001107365, - "bus.12.send.MX7.lvl": 1814677812, - "bus.12.send.MX7.pre": 2788353239, - "bus.12.send.MX8": 3569063927, - "bus.12.send.MX8.on": 2142897624, - "bus.12.send.MX8.lvl": 2604062793, - "bus.12.send.MX8.pre": 1945103506, - "bus.12.postins": 2022490432, - "bus.12.postins.on": 1617790072, - "bus.12.postins.ins": 983346701, - "bus.12.postins.$stat": 910732241, - "bus.12.dly": 2911139878, - "bus.12.dly.on": 2866453104, - "bus.12.dly.mode": 3651947405, - "bus.12.dly.dly": 912508829, - "bus.12.tags": 398077311, - "bus.12.$fdr": 2735275214, - "bus.12.$mute": 349435687, - "bus.12.$muteovr": 98630, - "bus.13": 386642985, - "bus.13.in": 2680055033, - "bus.13.in.set": 3246087232, - "bus.13.in.set.inv": 1028593915, - "bus.13.in.set.trim": 1220979833, - "bus.13.in.set.bal": 146108395, - "bus.13.col": 3438788898, - "bus.13.name": 1921520789, - "bus.13.icon": 3131406914, - "bus.13.led": 2948298107, - "bus.13.$col": 195879710, - "bus.13.$name": 3573695149, - "bus.13.$icon": 3078715855, - "bus.13.busmono": 2565053879, - "bus.13.mute": 3227703262, - "bus.13.fdr": 2336502831, - "bus.13.pan": 282725435, - "bus.13.wid": 1517319438, - "bus.13.$solo": 1636187995, - "bus.13.$sololed": 2433056492, - "bus.13.mon": 1004955774, - "bus.13.busmode": 3318427536, - "bus.13.eq": 1425520844, - "bus.13.eq.on": 3854654621, - "bus.13.eq.mdl": 2896915197, - "bus.13.eq.mix": 3453299717, - "bus.13.eq.$solo": 1636917198, - "bus.13.eq.$solobd": 2127139305, - "bus.13.eq.1": 1978144582, - "bus.13.eq.2": 459929075, - "bus.13.eq.3": 362559996, - "bus.13.eq.4": 3558742185, - "bus.13.eq.5": 2045815295, - "bus.13.eq.6": 3832697229, - "bus.13.eq.7": 2644808326, - "bus.13.eq.8": 2560561484, - "bus.13.eq.9": 1377895737, - "bus.13.eq.10": 835609751, - "bus.13.eq.11": 3696288906, - "bus.13.eq.12": 3601540481, - "bus.13.eq.13": 8178966, - "bus.13.eq.14": 2868862909, - "bus.13.eq.15": 3023125776, - "bus.13.eq.16": 841426481, - "bus.13.eq.17": 3702085156, - "bus.13.eq.18": 1118018358, - "bus.13.eq.19": 13995456, - "bus.13.eq.20": 3847713971, - "bus.13.eq.21": 1261026184, - "bus.13.eq.22": 162261263, - "bus.13.eq.23": 4275952546, - "bus.13.eq.24": 2841643996, - "bus.13.eq.25": 1748147843, - "bus.13.eq.26": 3451143189, - "bus.13.eq.27": 2011616991, - "bus.13.dyn": 1480487846, - "bus.13.dyn.on": 2910593517, - "bus.13.dyn.mdl": 711203417, - "bus.13.dyn.mix": 434573911, - "bus.13.dyn.gain": 3107418549, - "bus.13.dyn.1": 3028159787, - "bus.13.dyn.2": 1572797392, - "bus.13.dyn.3": 308155037, - "bus.13.dyn.4": 2178862404, - "bus.13.dyn.5": 765770737, - "bus.13.dyn.6": 1536875659, - "bus.13.dyn.7": 186985933, - "bus.13.dyn.8": 3194373242, - "bus.13.dyn.9": 3372547876, - "bus.13.dynxo": 4095527001, - "bus.13.dynxo.depth": 5912314, - "bus.13.dynxo.type": 2407634042, - "bus.13.dynxo.f": 1068674885, - "bus.13.dynxo.$solo": 4152033283, - "bus.13.dynsc": 2530267623, - "bus.13.dynsc.type": 1041641139, - "bus.13.dynsc.f": 3126798720, - "bus.13.dynsc.q": 4052410109, - "bus.13.dynsc.src": 3008532368, - "bus.13.dynsc.tap": 1855458039, - "bus.13.dynsc.$solo": 2118400248, - "bus.13.preins": 1969194000, - "bus.13.preins.on": 3393003407, - "bus.13.preins.ins": 328289503, - "bus.13.preins.$stat": 595758733, - "bus.13.main": 3499682857, - "bus.13.main.1": 2259272381, - "bus.13.main.1.on": 3867126297, - "bus.13.main.1.lvl": 3639358464, - "bus.13.main.1.pre": 2058202014, - "bus.13.main.2": 1392064943, - "bus.13.main.2.on": 1038935, - "bus.13.main.2.lvl": 3812234474, - "bus.13.main.2.pre": 2199881264, - "bus.13.main.3": 3539695121, - "bus.13.main.3.on": 2845821143, - "bus.13.main.3.lvl": 3896404740, - "bus.13.main.3.pre": 2408399834, - "bus.13.main.4": 2729455318, - "bus.13.main.4.on": 2469377832, - "bus.13.main.4.lvl": 3117913342, - "bus.13.main.4.pre": 2654814092, - "bus.13.send": 3864542706, - "bus.13.send.1": 536789492, - "bus.13.send.1.on": 2536058576, - "bus.13.send.1.lvl": 3867274268, - "bus.13.send.1.pre": 173227790, - "bus.13.send.2": 4177787190, - "bus.13.send.2.on": 1838766534, - "bus.13.send.2.lvl": 70517562, - "bus.13.send.2.pre": 786520052, - "bus.13.send.3": 2164067968, - "bus.13.send.3.on": 1514758470, - "bus.13.send.3.lvl": 3999813639, - "bus.13.send.3.pre": 1197503962, - "bus.13.send.4": 1387830095, - "bus.13.send.4.on": 1085895361, - "bus.13.send.4.lvl": 4020120206, - "bus.13.send.4.pre": 238056160, - "bus.13.send.5": 3332861242, - "bus.13.send.5.on": 409575543, - "bus.13.send.5.lvl": 4287623828, - "bus.13.send.5.pre": 912947270, - "bus.13.send.6": 2745326025, - "bus.13.send.6.on": 4191770610, - "bus.13.send.6.lvl": 24152505, - "bus.13.send.6.pre": 2435428780, - "bus.13.send.7": 895856582, - "bus.13.send.7.on": 3783878989, - "bus.13.send.7.lvl": 3408573951, - "bus.13.send.7.pre": 364403122, - "bus.13.send.8": 4183863381, - "bus.13.send.8.on": 3170473059, - "bus.13.send.8.lvl": 3847931206, - "bus.13.send.8.pre": 349860472, - "bus.13.send.9": 995544047, - "bus.13.send.9.on": 2762578915, - "bus.13.send.9.lvl": 49862220, - "bus.13.send.9.pre": 501322782, - "bus.13.send.10": 21193041, - "bus.13.send.10.on": 1178749568, - "bus.13.send.10.lvl": 520376057, - "bus.13.send.10.pre": 3189038564, - "bus.13.send.11": 3309030911, - "bus.13.send.11.on": 3605287107, - "bus.13.send.11.lvl": 530118822, - "bus.13.send.11.pre": 4281931940, - "bus.13.send.12": 1379343720, - "bus.13.send.12.on": 3738813635, - "bus.13.send.12.lvl": 3001101549, - "bus.13.send.12.pre": 2418681042, - "bus.13.send.13": 351939093, - "bus.13.send.13.on": 4248648348, - "bus.13.send.13.lvl": 3364741677, - "bus.13.send.13.pre": 895685450, - "bus.13.send.14": 2817875956, - "bus.13.send.14.on": 356482716, - "bus.13.send.14.lvl": 4177884711, - "bus.13.send.14.pre": 2770081141, - "bus.13.send.15": 2145661089, - "bus.13.send.15.on": 698938450, - "bus.13.send.15.lvl": 1067345503, - "bus.13.send.15.pre": 2342055971, - "bus.13.send.16": 3252329503, - "bus.13.send.16.on": 228669522, - "bus.13.send.16.lvl": 171309658, - "bus.13.send.16.pre": 127663139, - "bus.13.send.MX1": 2262418962, - "bus.13.send.MX1.on": 2021743228, - "bus.13.send.MX1.lvl": 4244843757, - "bus.13.send.MX1.pre": 3971454558, - "bus.13.send.MX2": 432735760, - "bus.13.send.MX2.on": 2051735204, - "bus.13.send.MX2.lvl": 2865639253, - "bus.13.send.MX2.pre": 1691521926, - "bus.13.send.MX3": 4056158910, - "bus.13.send.MX3.on": 1560584324, - "bus.13.send.MX3.lvl": 2709948213, - "bus.13.send.MX3.pre": 1221259366, - "bus.13.send.MX4": 3820632116, - "bus.13.send.MX4.on": 4086017874, - "bus.13.send.MX4.lvl": 4278747587, - "bus.13.send.MX4.pre": 2283039512, - "bus.13.send.MX5": 2876583303, - "bus.13.send.MX5.on": 3437056767, - "bus.13.send.MX5.lvl": 2975564494, - "bus.13.send.MX5.pre": 3629606685, - "bus.13.send.MX6": 2121793074, - "bus.13.send.MX6.on": 193917681, - "bus.13.send.MX6.lvl": 4027310784, - "bus.13.send.MX6.pre": 2533869323, - "bus.13.send.MX7": 376689683, - "bus.13.send.MX7.on": 2871667423, - "bus.13.send.MX7.lvl": 2074541230, - "bus.13.send.MX7.pre": 916481533, - "bus.13.send.MX8": 3726786782, - "bus.13.send.MX8.on": 4267391879, - "bus.13.send.MX8.lvl": 517557654, - "bus.13.send.MX8.pre": 4074944165, - "bus.13.postins": 2712401853, - "bus.13.postins.on": 1162159404, - "bus.13.postins.ins": 3619332301, - "bus.13.postins.$stat": 3242047277, - "bus.13.dly": 781101713, - "bus.13.dly.on": 4104649947, - "bus.13.dly.mode": 2316501454, - "bus.13.dly.dly": 2743007831, - "bus.13.tags": 8931186, - "bus.13.$fdr": 1930707909, - "bus.13.$mute": 471931844, - "bus.13.$muteovr": 4106184400, - "bus.14": 3123964384, - "bus.14.in": 319097416, - "bus.14.in.set": 2822440019, - "bus.14.in.set.inv": 3383052311, - "bus.14.in.set.trim": 840203057, - "bus.14.in.set.bal": 4159561575, - "bus.14.col": 1884556583, - "bus.14.name": 3257950430, - "bus.14.icon": 3323872243, - "bus.14.led": 1975136599, - "bus.14.$col": 855584529, - "bus.14.$name": 4054486698, - "bus.14.$icon": 3743663544, - "bus.14.busmono": 2422195715, - "bus.14.mute": 744713106, - "bus.14.fdr": 2796942519, - "bus.14.pan": 2048072237, - "bus.14.wid": 2463301988, - "bus.14.$solo": 1025624900, - "bus.14.$sololed": 881300264, - "bus.14.mon": 293590202, - "bus.14.busmode": 3712275836, - "bus.14.eq": 857164991, - "bus.14.eq.on": 3411789990, - "bus.14.eq.mdl": 2417508535, - "bus.14.eq.mix": 2942447092, - "bus.14.eq.$solo": 3105536628, - "bus.14.eq.$solobd": 1736125660, - "bus.14.eq.1": 1367835445, - "bus.14.eq.2": 729451000, - "bus.14.eq.3": 4219250143, - "bus.14.eq.4": 3288575106, - "bus.14.eq.5": 2651536924, - "bus.14.eq.6": 3725714846, - "bus.14.eq.7": 2752773749, - "bus.14.eq.8": 2117051695, - "bus.14.eq.9": 1144428818, - "bus.14.eq.10": 267243692, - "bus.14.eq.11": 3924850841, - "bus.14.eq.12": 3163263346, - "bus.14.eq.13": 4069669133, - "bus.14.eq.14": 3432631238, - "bus.14.eq.15": 2459685171, - "bus.14.eq.16": 613530146, - "bus.14.eq.17": 4103651887, - "bus.14.eq.18": 1051985709, - "bus.14.eq.19": 121305571, - "bus.14.eq.20": 4248635536, - "bus.14.eq.21": 1195659179, - "bus.14.eq.22": 223040772, - "bus.14.eq.23": 3879628721, - "bus.14.eq.24": 3116398535, - "bus.14.eq.25": 2143816288, - "bus.14.eq.26": 3385765950, - "bus.14.eq.27": 2580966100, - "bus.14.dyn": 1198008295, - "bus.14.dyn.on": 1529040626, - "bus.14.dyn.mdl": 3881448617, - "bus.14.dyn.mix": 1842984807, - "bus.14.dyn.gain": 6202145, - "bus.14.dyn.1": 1176263050, - "bus.14.dyn.2": 1855369073, - "bus.14.dyn.3": 2707326660, - "bus.14.dyn.4": 327713053, - "bus.14.dyn.5": 1006962768, - "bus.14.dyn.6": 1241196778, - "bus.14.dyn.7": 2093277524, - "bus.14.dyn.8": 2939992251, - "bus.14.dyn.9": 1466348285, - "bus.14.dynxo": 94190536, - "bus.14.dynxo.depth": 2430099267, - "bus.14.dynxo.type": 3696729837, - "bus.14.dynxo.f": 1252782165, - "bus.14.dynxo.$solo": 4082162662, - "bus.14.dynsc": 2244418958, - "bus.14.dynsc.type": 2736156924, - "bus.14.dynsc.f": 449151018, - "bus.14.dynsc.q": 3156429511, - "bus.14.dynsc.src": 230220730, - "bus.14.dynsc.tap": 1059561197, - "bus.14.dynsc.$solo": 1966312223, - "bus.14.preins": 2749314873, - "bus.14.preins.on": 4125782022, - "bus.14.preins.ins": 1411686536, - "bus.14.preins.$stat": 1376640963, - "bus.14.main": 3519643709, - "bus.14.main.1": 4062337711, - "bus.14.main.1.on": 2047299131, - "bus.14.main.1.lvl": 855607053, - "bus.14.main.1.pre": 1209492257, - "bus.14.main.2": 258769853, - "bus.14.main.2.on": 2744591109, - "bus.14.main.2.lvl": 902668055, - "bus.14.main.2.pre": 533269819, - "bus.14.main.3": 292823555, - "bus.14.main.3.on": 942092165, - "bus.14.main.3.lvl": 1201209585, - "bus.14.main.3.pre": 324787389, - "bus.14.main.4": 3190325588, - "bus.14.main.4.on": 3518438922, - "bus.14.main.4.lvl": 972105803, - "bus.14.main.4.pre": 1284219799, - "bus.14.send": 1182234621, - "bus.14.send.1": 3345228178, - "bus.14.send.1.on": 1690636094, - "bus.14.send.1.lvl": 3394795347, - "bus.14.send.1.pre": 1573894773, - "bus.14.send.2": 4166949296, - "bus.14.send.2.on": 1303722248, - "bus.14.send.2.lvl": 3913980105, - "bus.14.send.2.pre": 2250105203, - "bus.14.send.3": 2063986182, - "bus.14.send.3.on": 2711961736, - "bus.14.send.3.lvl": 348536831, - "bus.14.send.3.pre": 1268958121, - "bus.14.send.4": 2829761185, - "bus.14.send.4.on": 3130348087, - "bus.14.send.4.lvl": 3536850037, - "bus.14.send.4.pre": 1651691591, - "bus.14.send.5": 390581100, - "bus.14.send.5.on": 3817176705, - "bus.14.send.5.lvl": 3824006747, - "bus.14.send.5.pre": 2333649213, - "bus.14.send.6": 1145829415, - "bus.14.send.6.on": 4151653916, - "bus.14.send.6.lvl": 573158001, - "bus.14.send.6.pre": 3837614683, - "bus.14.send.7": 2984873408, - "bus.14.send.7.on": 275072907, - "bus.14.send.7.lvl": 4007905095, - "bus.14.send.7.pre": 1850415793, - "bus.14.send.8": 4170043035, - "bus.14.send.8.on": 878016149, - "bus.14.send.8.lvl": 3352551677, - "bus.14.send.8.pre": 1749860271, - "bus.14.send.9": 1655433729, - "bus.14.send.9.on": 1296399893, - "bus.14.send.9.lvl": 3871704995, - "bus.14.send.9.pre": 3318060581, - "bus.14.send.10": 2787114807, - "bus.14.send.10.on": 725597987, - "bus.14.send.10.lvl": 4078888266, - "bus.14.send.10.pre": 1902397814, - "bus.14.send.11": 3961957385, - "bus.14.send.11.on": 3114674454, - "bus.14.send.11.lvl": 3289791633, - "bus.14.send.11.pre": 755123793, - "bus.14.send.12": 2848669478, - "bus.14.send.12.on": 147082476, - "bus.14.send.12.lvl": 1067315328, - "bus.14.send.12.pre": 3982078545, - "bus.14.send.13": 3362294739, - "bus.14.send.13.on": 566556135, - "bus.14.send.13.lvl": 1130745686, - "bus.14.send.13.pre": 2443196527, - "bus.14.send.14": 4128047514, - "bus.14.send.14.on": 3777137130, - "bus.14.send.14.lvl": 3423212362, - "bus.14.send.14.pre": 173088405, - "bus.14.send.15": 671748679, - "bus.14.send.15.on": 3440988589, - "bus.14.send.15.lvl": 4065929128, - "bus.14.send.15.pre": 1873181504, - "bus.14.send.16": 4196957673, - "bus.14.send.16.on": 2332071376, - "bus.14.send.16.lvl": 2007087979, - "bus.14.send.16.pre": 1478821696, - "bus.14.send.MX1": 712320724, - "bus.14.send.MX1.on": 174504133, - "bus.14.send.MX1.lvl": 2397282004, - "bus.14.send.MX1.pre": 2150578167, - "bus.14.send.MX2": 2543298166, - "bus.14.send.MX2.on": 4289687293, - "bus.14.send.MX2.lvl": 2150467820, - "bus.14.send.MX2.pre": 166274191, - "bus.14.send.MX3": 3393123144, - "bus.14.send.MX3.on": 2304770139, - "bus.14.send.MX3.lvl": 501010506, - "bus.14.send.MX3.pre": 2476260385, - "bus.14.send.MX4": 3291814066, - "bus.14.send.MX4.on": 3870840822, - "bus.14.send.MX4.lvl": 3074045031, - "bus.14.send.MX4.pre": 4209940676, - "bus.14.send.MX5": 98127113, - "bus.14.send.MX5.on": 4043903029, - "bus.14.send.MX5.lvl": 898384036, - "bus.14.send.MX5.pre": 3704662471, - "bus.14.send.MX6": 852909492, - "bus.14.send.MX6.on": 876188848, - "bus.14.send.MX6.lvl": 1069248801, - "bus.14.send.MX6.pre": 1241482570, - "bus.14.send.MX7": 3850072957, - "bus.14.send.MX7.on": 2112245374, - "bus.14.send.MX7.lvl": 4268241519, - "bus.14.send.MX7.pre": 2304691788, - "bus.14.send.MX8": 4282392616, - "bus.14.send.MX8.on": 3251018457, - "bus.14.send.MX8.lvl": 843693608, - "bus.14.send.MX8.pre": 3074447891, - "bus.14.postins": 3131539636, - "bus.14.postins.on": 2893952200, - "bus.14.postins.ins": 2570534589, - "bus.14.postins.$stat": 1856889384, - "bus.14.dly": 2635538136, - "bus.14.dly.on": 863857279, - "bus.14.dly.mode": 313326348, - "bus.14.dly.dly": 4205051834, - "bus.14.tags": 2611741106, - "bus.14.$fdr": 2543308738, - "bus.14.$mute": 4203450331, - "bus.14.$muteovr": 3712314297, - "bus.15": 296073885, - "bus.15.in": 1956300367, - "bus.15.in.set": 583189591, - "bus.15.in.set.inv": 740954024, - "bus.15.in.set.trim": 2651669668, - "bus.15.in.set.bal": 82748600, - "bus.15.col": 1734904416, - "bus.15.name": 118941663, - "bus.15.icon": 3412953100, - "bus.15.led": 839693224, - "bus.15.$col": 3144775801, - "bus.15.$name": 707147762, - "bus.15.$icon": 1722283088, - "bus.15.busmono": 2604864264, - "bus.15.mute": 4266009275, - "bus.15.fdr": 1451804834, - "bus.15.pan": 245820119, - "bus.15.wid": 681833828, - "bus.15.$solo": 114500860, - "bus.15.$sololed": 3259406638, - "bus.15.mon": 2571271571, - "bus.15.busmode": 3493561263, - "bus.15.eq": 1747859326, - "bus.15.eq.on": 2123521615, - "bus.15.eq.mdl": 885842768, - "bus.15.eq.mix": 3946030076, - "bus.15.eq.$solo": 1508936315, - "bus.15.eq.$solobd": 4009022950, - "bus.15.eq.1": 1237214116, - "bus.15.eq.2": 1855005937, - "bus.15.eq.3": 3999643214, - "bus.15.eq.4": 994908059, - "bus.15.eq.5": 1629606749, - "bus.15.eq.6": 3511208591, - "bus.15.eq.7": 4124925668, - "bus.15.eq.8": 1808318526, - "bus.15.eq.9": 3119348107, - "bus.15.eq.10": 2315564597, - "bus.15.eq.11": 2955515784, - "bus.15.eq.12": 785689571, - "bus.15.eq.13": 1823023892, - "bus.15.eq.14": 2463128687, - "bus.15.eq.15": 124076066, - "bus.15.eq.16": 3646606131, - "bus.15.eq.17": 159505542, - "bus.15.eq.18": 1869280820, - "bus.15.eq.19": 2483130226, - "bus.15.eq.20": 1378248881, - "bus.15.eq.21": 3086835850, - "bus.15.eq.22": 3705795677, - "bus.15.eq.23": 1386567056, - "bus.15.eq.24": 2173298414, - "bus.15.eq.25": 3479248929, - "bus.15.eq.26": 897948279, - "bus.15.eq.27": 1679621069, - "bus.15.dyn": 4110795270, - "bus.15.dyn.on": 3713531585, - "bus.15.dyn.mdl": 1574966736, - "bus.15.dyn.mix": 4230150342, - "bus.15.dyn.gain": 1052450126, - "bus.15.dyn.1": 408335243, - "bus.15.dyn.2": 3321353584, - "bus.15.dyn.3": 2317705789, - "bus.15.dyn.4": 4188413156, - "bus.15.dyn.5": 2848550289, - "bus.15.dyn.6": 601064491, - "bus.15.dyn.7": 3892184621, - "bus.15.dyn.8": 2510394074, - "bus.15.dyn.9": 86789508, - "bus.15.dynxo": 1474404537, - "bus.15.dynxo.depth": 3208893801, - "bus.15.dynxo.type": 2450645817, - "bus.15.dynxo.f": 684093686, - "bus.15.dynxo.$solo": 2703035495, - "bus.15.dynsc": 783025031, - "bus.15.dynsc.type": 519250724, - "bus.15.dynsc.f": 3448420043, - "bus.15.dynsc.q": 2766045230, - "bus.15.dynsc.src": 2726186563, - "bus.15.dynsc.tap": 1911265276, - "bus.15.dynsc.$solo": 886083480, - "bus.15.preins": 1852508126, - "bus.15.preins.on": 559850321, - "bus.15.preins.ins": 636782399, - "bus.15.preins.$stat": 4074033835, - "bus.15.main": 501053196, - "bus.15.main.1": 588737813, - "bus.15.main.1.on": 3205561265, - "bus.15.main.1.lvl": 3597234835, - "bus.15.main.1.pre": 1835729732, - "bus.15.main.2": 1586198071, - "bus.15.main.2.on": 3902854543, - "bus.15.main.2.lvl": 3340207053, - "bus.15.main.2.pre": 1253897054, - "bus.15.main.3": 3597220233, - "bus.15.main.3.on": 4247837967, - "bus.15.main.3.lvl": 2119154983, - "bus.15.main.3.pre": 1778928192, - "bus.15.main.4": 54972142, - "bus.15.main.4.on": 381732480, - "bus.15.main.4.lvl": 3210394913, - "bus.15.main.4.pre": 1909959994, - "bus.15.send": 2172169200, - "bus.15.send.1": 517735510, - "bus.15.send.1.on": 2823548002, - "bus.15.send.1.lvl": 3603385478, - "bus.15.send.1.pre": 1628087410, - "bus.15.send.2": 3773217748, - "bus.15.send.2.on": 1899764836, - "bus.15.send.2.lvl": 4195934780, - "bus.15.send.2.pre": 3904408744, - "bus.15.send.3": 1132973026, - "bus.15.send.3.on": 1781276388, - "bus.15.send.3.lvl": 3946129746, - "bus.15.send.3.pre": 11099558, - "bus.15.send.4": 3962427709, - "bus.15.send.4.on": 52180371, - "bus.15.send.4.lvl": 3864373448, - "bus.15.send.4.pre": 1767450140, - "bus.15.send.5": 4005866120, - "bus.15.send.5.on": 739009349, - "bus.15.send.5.lvl": 4163324718, - "bus.15.send.5.pre": 4030839066, - "bus.15.send.6": 2697271243, - "bus.15.send.6.on": 3137082816, - "bus.15.send.6.lvl": 4163872964, - "bus.15.send.6.pre": 1951592240, - "bus.15.send.7": 158364100, - "bus.15.send.7.on": 4092341327, - "bus.15.send.7.lvl": 4274133050, - "bus.15.send.7.pre": 1862342158, - "bus.15.send.8": 3155555159, - "bus.15.send.8.on": 2094815089, - "bus.15.send.8.lvl": 3692154320, - "bus.15.send.8.pre": 1794861668, - "bus.15.send.9": 2050230749, - "bus.15.send.9.on": 3050068465, - "bus.15.send.9.lvl": 4010808950, - "bus.15.send.9.pre": 2023509698, - "bus.15.send.10": 1033772627, - "bus.15.send.10.on": 2401209462, - "bus.15.send.10.lvl": 944605370, - "bus.15.send.10.pre": 1060504198, - "bus.15.send.11": 4020145069, - "bus.15.send.11.on": 3214370246, - "bus.15.send.11.lvl": 686145852, - "bus.15.send.11.pre": 1075736822, - "bus.15.send.12": 306469482, - "bus.15.send.12.on": 4121756121, - "bus.15.send.12.lvl": 1318624592, - "bus.15.send.12.pre": 518849788, - "bus.15.send.13": 3304023991, - "bus.15.send.13.on": 3057161946, - "bus.15.send.13.lvl": 1096887275, - "bus.15.send.13.pre": 3214660012, - "bus.15.send.14": 227549686, - "bus.15.send.14.on": 869970647, - "bus.15.send.14.lvl": 4276787217, - "bus.15.send.14.pre": 430123994, - "bus.15.send.15": 3213292355, - "bus.15.send.15.on": 3799636192, - "bus.15.send.15.lvl": 3286218520, - "bus.15.send.15.pre": 1186610352, - "bus.15.send.16": 2644859341, - "bus.15.send.16.on": 947930365, - "bus.15.send.16.lvl": 2505495260, - "bus.15.send.16.pre": 2176250032, - "bus.15.send.MX1": 3002534160, - "bus.15.send.MX1.on": 2178164656, - "bus.15.send.MX1.lvl": 1901465121, - "bus.15.send.MX1.pre": 1985802826, - "bus.15.send.MX2": 454411026, - "bus.15.send.MX2.on": 1923991976, - "bus.15.send.MX2.lvl": 858841913, - "bus.15.send.MX2.pre": 2121779650, - "bus.15.send.MX3": 3451310188, - "bus.15.send.MX3.on": 1475423595, - "bus.15.send.MX3.lvl": 661849850, - "bus.15.send.MX3.pre": 1646915025, - "bus.15.send.MX4": 4222417622, - "bus.15.send.MX4.on": 4175090475, - "bus.15.send.MX4.lvl": 2035792186, - "bus.15.send.MX4.pre": 240197009, - "bus.15.send.MX5": 2924636901, - "bus.15.send.MX5.on": 75134302, - "bus.15.send.MX5.lvl": 4177039183, - "bus.15.send.MX5.pre": 4004619820, - "bus.15.send.MX6": 1448950832, - "bus.15.send.MX6.on": 1615882111, - "bus.15.send.MX6.lvl": 1003305294, - "bus.15.send.MX6.pre": 3586544285, - "bus.15.send.MX7": 687773217, - "bus.15.send.MX7.on": 3049054094, - "bus.15.send.MX7.lvl": 1899613471, - "bus.15.send.MX7.pre": 1078309884, - "bus.15.send.MX8": 3686597516, - "bus.15.send.MX8.on": 4141636498, - "bus.15.send.MX8.lvl": 576353667, - "bus.15.send.MX8.pre": 3970326872, - "bus.15.postins": 4129642575, - "bus.15.postins.on": 3878673671, - "bus.15.postins.ins": 2017404804, - "bus.15.postins.$stat": 3751678190, - "bus.15.dly": 3318184497, - "bus.15.dly.on": 1100211176, - "bus.15.dly.mode": 4163301626, - "bus.15.dly.dly": 3047865315, - "bus.15.tags": 3442996680, - "bus.15.$fdr": 500832634, - "bus.15.$mute": 3255637619, - "bus.15.$muteovr": 2089190665, - "bus.16": 1875120675, - "bus.16.in": 3890084150, - "bus.16.in.set": 3225522617, - "bus.16.in.set.inv": 1288522000, - "bus.16.in.set.trim": 659293522, - "bus.16.in.set.bal": 2514467232, - "bus.16.col": 858031195, - "bus.16.name": 1506628378, - "bus.16.icon": 3607804933, - "bus.16.led": 3595136921, - "bus.16.$col": 80757855, - "bus.16.$name": 2619016196, - "bus.16.$icon": 1481916534, - "bus.16.busmono": 1369115626, - "bus.16.mute": 3892964488, - "bus.16.fdr": 3360627425, - "bus.16.pan": 2806316754, - "bus.16.wid": 1038817266, - "bus.16.$solo": 282112234, - "bus.16.$sololed": 2782159982, - "bus.16.mon": 1954972624, - "bus.16.busmode": 3568737757, - "bus.16.eq": 149388129, - "bus.16.eq.on": 1773214264, - "bus.16.eq.mdl": 3374085854, - "bus.16.eq.mix": 3970767106, - "bus.16.eq.$solo": 1902832423, - "bus.16.eq.$solobd": 3168874357, - "bus.16.eq.1": 3923234731, - "bus.16.eq.2": 925350142, - "bus.16.eq.3": 970224193, - "bus.16.eq.4": 2016304020, - "bus.16.eq.5": 3319818074, - "bus.16.eq.6": 1480199832, - "bus.16.eq.7": 3118910187, - "bus.16.eq.8": 3162985521, - "bus.16.eq.9": 4125015428, - "bus.16.eq.10": 633217586, - "bus.16.eq.11": 2015046559, - "bus.16.eq.12": 2059102188, - "bus.16.eq.13": 1147309867, - "bus.16.eq.14": 2529630296, - "bus.16.eq.15": 2826142757, - "bus.16.eq.16": 376004412, - "bus.16.eq.17": 1757649033, - "bus.16.eq.18": 4133577291, - "bus.16.eq.19": 1561021301, - "bus.16.eq.20": 1634184398, - "bus.16.eq.21": 4011586701, - "bus.16.eq.22": 1433645146, - "bus.16.eq.23": 1393793447, - "bus.16.eq.24": 2775601873, - "bus.16.eq.25": 3826965566, - "bus.16.eq.26": 1903953504, - "bus.16.eq.27": 3290861514, - "bus.16.dyn": 2603177565, - "bus.16.dyn.on": 753878365, - "bus.16.dyn.mdl": 3012736323, - "bus.16.dyn.mix": 2718898541, - "bus.16.dyn.gain": 2064998593, - "bus.16.dyn.1": 4050329552, - "bus.16.dyn.2": 1126787371, - "bus.16.dyn.3": 2517345918, - "bus.16.dyn.4": 3557404855, - "bus.16.dyn.5": 633678346, - "bus.16.dyn.6": 2546921584, - "bus.16.dyn.7": 3854735822, - "bus.16.dyn.8": 931321601, - "bus.16.dyn.9": 3663913303, - "bus.16.dynxo": 2982994978, - "bus.16.dynxo.depth": 1313702678, - "bus.16.dynxo.type": 3651422932, - "bus.16.dynxo.f": 772010919, - "bus.16.dynxo.$solo": 2848708639, - "bus.16.dynsc": 2979557140, - "bus.16.dynsc.type": 36139661, - "bus.16.dynsc.f": 1504818133, - "bus.16.dynsc.q": 1672931960, - "bus.16.dynsc.src": 280577005, - "bus.16.dynsc.tap": 3602109114, - "bus.16.dynsc.$solo": 1105280329, - "bus.16.preins": 3386422397, - "bus.16.preins.on": 399987474, - "bus.16.preins.ins": 1817830433, - "bus.16.preins.$stat": 319706715, - "bus.16.main": 2686702855, - "bus.16.main.1": 4291946216, - "bus.16.main.1.on": 1649892804, - "bus.16.main.1.lvl": 2924255214, - "bus.16.main.1.pre": 2362539356, - "bus.16.main.2": 701554298, - "bus.16.main.2.on": 2305261314, - "bus.16.main.2.lvl": 3380494984, - "bus.16.main.2.pre": 3575640806, - "bus.16.main.3": 4147126108, - "bus.16.main.3.on": 544701570, - "bus.16.main.3.lvl": 3328076562, - "bus.16.main.3.pre": 2517193704, - "bus.16.main.4": 3465185963, - "bus.16.main.4.on": 3079114269, - "bus.16.main.4.lvl": 2973241596, - "bus.16.main.4.pre": 2270759346, - "bus.16.send": 1945674955, - "bus.16.send.1": 1960743633, - "bus.16.send.1.on": 3612017101, - "bus.16.send.1.lvl": 1873313541, - "bus.16.send.1.pre": 258110841, - "bus.16.send.2": 883964995, - "bus.16.send.2.on": 2656754275, - "bus.16.send.2.lvl": 2498435951, - "bus.16.send.2.pre": 32793219, - "bus.16.send.3": 3962751869, - "bus.16.send.3.on": 359321059, - "bus.16.send.3.lvl": 2702115193, - "bus.16.send.3.pre": 2706485765, - "bus.16.send.4": 1130683426, - "bus.16.send.4.on": 746250100, - "bus.16.send.4.lvl": 2427932611, - "bus.16.send.4.pre": 136431919, - "bus.16.send.5": 2600136215, - "bus.16.send.5.on": 1401642330, - "bus.16.send.5.lvl": 2254781053, - "bus.16.send.5.pre": 636078641, - "bus.16.send.6": 4073510588, - "bus.16.send.6.on": 1788532959, - "bus.16.send.6.lvl": 2795341511, - "bus.16.send.6.pre": 3970363867, - "bus.16.send.7": 978263123, - "bus.16.send.7.on": 564849232, - "bus.16.send.7.lvl": 1626568913, - "bus.16.send.7.pre": 2717454557, - "bus.16.send.8": 1770073416, - "bus.16.send.8.on": 2830854086, - "bus.16.send.8.lvl": 1998824763, - "bus.16.send.8.pre": 148343399, - "bus.16.send.9": 1334512834, - "bus.16.send.9.on": 1607162694, - "bus.16.send.9.lvl": 2454829013, - "bus.16.send.9.pre": 477157225, - "bus.16.send.10": 2518786556, - "bus.16.send.10.on": 3808851221, - "bus.16.send.10.lvl": 329678766, - "bus.16.send.10.pre": 1495006843, - "bus.16.send.11": 3321072266, - "bus.16.send.11.on": 2983219973, - "bus.16.send.11.lvl": 789531044, - "bus.16.send.11.pre": 3582885195, - "bus.16.send.12": 3178601613, - "bus.16.send.12.on": 274063119, - "bus.16.send.12.lvl": 3768948172, - "bus.16.send.12.pre": 4192366936, - "bus.16.send.13": 346533152, - "bus.16.send.13.on": 3928992369, - "bus.16.send.13.lvl": 329620642, - "bus.16.send.13.pre": 3753250477, - "bus.16.send.14": 3156865817, - "bus.16.send.14.on": 3198686836, - "bus.16.send.14.lvl": 692148426, - "bus.16.send.14.pre": 3169790114, - "bus.16.send.15": 336593868, - "bus.16.send.15.on": 1969430123, - "bus.16.send.15.lvl": 1272974264, - "bus.16.send.15.pre": 637773065, - "bus.16.send.16": 1914329898, - "bus.16.send.16.on": 1073994350, - "bus.16.send.16.lvl": 1906165696, - "bus.16.send.16.pre": 2963347716, - "bus.16.send.MX1": 46368143, - "bus.16.send.MX1.on": 1788306057, - "bus.16.send.MX1.lvl": 2333439288, - "bus.16.send.MX1.pre": 1595838051, - "bus.16.send.MX2": 1252603197, - "bus.16.send.MX2.on": 1258747555, - "bus.16.send.MX2.lvl": 1535371090, - "bus.16.send.MX2.pre": 1456274313, - "bus.16.send.MX3": 2715542987, - "bus.16.send.MX3.on": 919089323, - "bus.16.send.MX3.lvl": 3326498490, - "bus.16.send.MX3.pre": 3243229201, - "bus.16.send.MX4": 669367105, - "bus.16.send.MX4.on": 2558628139, - "bus.16.send.MX4.lvl": 1493476154, - "bus.16.send.MX4.pre": 771458961, - "bus.16.send.MX5": 1466411642, - "bus.16.send.MX5.on": 3149342093, - "bus.16.send.MX5.lvl": 3963161500, - "bus.16.send.MX5.pre": 636482751, - "bus.16.send.MX6": 2939796271, - "bus.16.send.MX6.on": 2747433676, - "bus.16.send.MX6.lvl": 3628446429, - "bus.16.send.MX6.pre": 260871950, - "bus.16.send.MX7": 1455161526, - "bus.16.send.MX7.on": 4236239704, - "bus.16.send.MX7.lvl": 671282633, - "bus.16.send.MX7.pre": 3875999506, - "bus.16.send.MX8": 2919371115, - "bus.16.send.MX8.on": 3375733968, - "bus.16.send.MX8.lvl": 2830600897, - "bus.16.send.MX8.pre": 3741054570, - "bus.16.postins": 430165378, - "bus.16.postins.on": 3232155351, - "bus.16.postins.ins": 3869454068, - "bus.16.postins.$stat": 1894726270, - "bus.16.dly": 3386576482, - "bus.16.dly.on": 1180270943, - "bus.16.dly.mode": 507700668, - "bus.16.dly.dly": 3133953058, - "bus.16.tags": 3122604870, - "bus.16.$fdr": 333948292, - "bus.16.$mute": 4078701165, - "bus.16.$muteovr": 3405129299, - "main": 80978856, - "main.1": 766415667, - "main.1.in": 4166484456, - "main.1.in.set": 2505505609, - "main.1.in.set.inv": 3421468216, - "main.1.in.set.trim": 330707657, - "main.1.in.set.bal": 1877307240, - "main.1.col": 2544799184, - "main.1.name": 914727850, - "main.1.icon": 3213772627, - "main.1.led": 1255898076, - "main.1.$col": 4146357811, - "main.1.$name": 2111415944, - "main.1.$icon": 1242098298, - "main.1.busmono": 3392127073, - "main.1.mute": 1784698283, - "main.1.fdr": 3676266600, - "main.1.pan": 896873917, - "main.1.wid": 3851926551, - "main.1.$solo": 3797854726, - "main.1.$sololed": 3909111619, - "main.1.mon": 3521701763, - "main.1.eq": 716794559, - "main.1.eq.on": 3157371558, - "main.1.eq.mdl": 1113070963, - "main.1.eq.mix": 4196542450, - "main.1.eq.$solo": 500870753, - "main.1.eq.$solobd": 4185822196, - "main.1.eq.1": 2353640757, - "main.1.eq.2": 822635512, - "main.1.eq.3": 738358239, - "main.1.eq.4": 4257335938, - "main.1.eq.5": 2747342876, - "main.1.eq.6": 247469982, - "main.1.eq.7": 3011124341, - "main.1.eq.8": 2924573487, - "main.1.eq.9": 2085669650, - "main.1.eq.10": 1201930924, - "main.1.eq.11": 4070464153, - "main.1.eq.12": 3962920818, - "main.1.eq.13": 708073229, - "main.1.eq.14": 3576933830, - "main.1.eq.15": 3387818803, - "main.1.eq.16": 469207074, - "main.1.eq.17": 3338047535, - "main.1.eq.18": 751707437, - "main.1.eq.19": 3599555555, - "main.1.eq.20": 260520592, - "main.1.eq.21": 1971728811, - "main.1.eq.22": 524629764, - "main.1.eq.23": 356814257, - "main.1.eq.24": 3204355527, - "main.1.eq.25": 2449337440, - "main.1.eq.26": 4160545342, - "main.1.eq.27": 2713467092, - "main.1.dyn": 3612995083, - "main.1.dyn.on": 3176592651, - "main.1.dyn.mdl": 1906736272, - "main.1.dyn.mix": 3520464006, - "main.1.dyn.gain": 2920431476, - "main.1.dyn.1": 890455934, - "main.1.dyn.2": 200922525, - "main.1.dyn.3": 3445790928, - "main.1.dyn.4": 398037745, - "main.1.dyn.5": 3961406020, - "main.1.dyn.6": 3725883102, - "main.1.dyn.7": 2758518624, - "main.1.dyn.8": 2068867783, - "main.1.dyn.9": 549151953, - "main.1.dynxo": 1973838348, - "main.1.dynxo.depth": 3004095167, - "main.1.dynxo.type": 152110470, - "main.1.dynxo.f": 2715172462, - "main.1.dynxo.$solo": 2854110333, - "main.1.dynsc": 3907385242, - "main.1.dynsc.type": 2618654479, - "main.1.dynsc.f": 3304635734, - "main.1.dynsc.q": 3832514227, - "main.1.dynsc.src": 3859109798, - "main.1.dynsc.tap": 2707414041, - "main.1.dynsc.$solo": 3673245794, - "main.1.preins": 1562441428, - "main.1.preins.on": 275517867, - "main.1.preins.ins": 3963016585, - "main.1.preins.$stat": 4261240384, - "main.1.send": 2873732394, - "main.1.send.MX1": 1452476806, - "main.1.send.MX1.on": 2320879679, - "main.1.send.MX1.lvl": 433241486, - "main.1.send.MX1.pre": 2513183837, - "main.1.send.MX2": 3245992580, - "main.1.send.MX2.on": 3214329873, - "main.1.send.MX2.lvl": 3675576160, - "main.1.send.MX2.pre": 874378027, - "main.1.send.MX3": 3880462666, - "main.1.send.MX3.on": 215559393, - "main.1.send.MX3.lvl": 2354446224, - "main.1.send.MX3.pre": 2191483867, - "main.1.send.MX4": 2505376704, - "main.1.send.MX4.on": 4068973817, - "main.1.send.MX4.lvl": 654934728, - "main.1.send.MX4.pre": 3892321331, - "main.1.send.MX5": 3522708475, - "main.1.send.MX5.on": 4036097875, - "main.1.send.MX5.lvl": 2887059106, - "main.1.send.MX5.pre": 101424537, - "main.1.send.MX6": 4241044134, - "main.1.send.MX6.on": 1049783210, - "main.1.send.MX6.lvl": 1578384347, - "main.1.send.MX6.pre": 1410017168, - "main.1.send.MX7": 49069503, - "main.1.send.MX7.on": 451261986, - "main.1.send.MX7.lvl": 3597113779, - "main.1.send.MX7.pre": 2964063560, - "main.1.send.MX8": 1104239722, - "main.1.send.MX8.on": 988787606, - "main.1.send.MX8.lvl": 1802689031, - "main.1.send.MX8.pre": 2797026916, - "main.1.postins": 3428934721, - "main.1.postins.on": 4174994924, - "main.1.postins.ins": 3381598268, - "main.1.postins.$stat": 2842371648, - "main.1.dly": 2163749100, - "main.1.dly.on": 2131302930, - "main.1.dly.mode": 2020887339, - "main.1.dly.dly": 503935152, - "main.1.tags": 3223275717, - "main.1.$fdr": 2453472608, - "main.1.$mute": 625526921, - "main.1.$muteovr": 616838897, - "main.2": 590400424, - "main.2.in": 1204454307, - "main.2.in.set": 1343849920, - "main.2.in.set.inv": 3275674906, - "main.2.in.set.trim": 148289365, - "main.2.in.set.bal": 1717926481, - "main.2.col": 504431071, - "main.2.name": 432800151, - "main.2.icon": 1995927976, - "main.2.led": 2575831023, - "main.2.$col": 3936279360, - "main.2.$name": 2068454003, - "main.2.$icon": 1032183297, - "main.2.busmono": 1929272453, - "main.2.mute": 211612078, - "main.2.fdr": 2073996401, - "main.2.pan": 3199222178, - "main.2.wid": 3056906860, - "main.2.$solo": 3758087541, - "main.2.$sololed": 1850773727, - "main.2.mon": 2231720846, - "main.2.eq": 3481982718, - "main.2.eq.on": 3806871247, - "main.2.eq.mdl": 4103920488, - "main.2.eq.mix": 3638814697, - "main.2.eq.$solo": 2638241171, - "main.2.eq.$solobd": 3574819252, - "main.2.eq.1": 1845184804, - "main.2.eq.2": 3188119665, - "main.2.eq.3": 1929971662, - "main.2.eq.4": 2894804763, - "main.2.eq.5": 4237790173, - "main.2.eq.6": 3784934159, - "main.2.eq.7": 1167831140, - "main.2.eq.8": 4037533630, - "main.2.eq.9": 749352715, - "main.2.eq.10": 2977273525, - "main.2.eq.11": 4235707912, - "main.2.eq.12": 3020157795, - "main.2.eq.13": 2147871380, - "main.2.eq.14": 3406971375, - "main.2.eq.15": 789868194, - "main.2.eq.16": 2367550643, - "main.2.eq.17": 3793757190, - "main.2.eq.18": 3257710772, - "main.2.eq.19": 598634482, - "main.2.eq.20": 3937445425, - "main.2.eq.21": 717004298, - "main.2.eq.22": 2310982365, - "main.2.eq.23": 3653958160, - "main.2.eq.24": 827140462, - "main.2.eq.25": 1750040737, - "main.2.eq.26": 2824566263, - "main.2.eq.27": 4250772813, - "main.2.dyn": 1937988062, - "main.2.dyn.on": 1301884137, - "main.2.dyn.mdl": 33365088, - "main.2.dyn.mix": 1351621014, - "main.2.dyn.gain": 4121453974, - "main.2.dyn.1": 2562800531, - "main.2.dyn.2": 1870389608, - "main.2.dyn.3": 700011701, - "main.2.dyn.4": 1734582060, - "main.2.dyn.5": 1042294393, - "main.2.dyn.6": 1142295283, - "main.2.dyn.7": 4268364613, - "main.2.dyn.8": 3407971986, - "main.2.dyn.9": 2999046412, - "main.2.dynxo": 3648527825, - "main.2.dynxo.depth": 3671114844, - "main.2.dynxo.type": 1621234885, - "main.2.dynxo.f": 988265241, - "main.2.dynxo.$solo": 551386925, - "main.2.dynsc": 2230053759, - "main.2.dynsc.type": 1856243047, - "main.2.dynsc.f": 205529299, - "main.2.dynsc.q": 908716598, - "main.2.dynsc.src": 591889451, - "main.2.dynsc.tap": 1763245972, - "main.2.dynsc.$solo": 658478172, - "main.2.preins": 3183150605, - "main.2.preins.on": 201958690, - "main.2.preins.ins": 1569200284, - "main.2.preins.$stat": 4010843815, - "main.2.send": 1185143478, - "main.2.send.MX1": 3480750557, - "main.2.send.MX1.on": 3880014560, - "main.2.send.MX1.lvl": 381846257, - "main.2.send.MX1.pre": 3535693594, - "main.2.send.MX2": 1016391983, - "main.2.send.MX2.on": 3580079960, - "main.2.send.MX2.lvl": 3303047625, - "main.2.send.MX2.pre": 1255959314, - "main.2.send.MX3": 1698311785, - "main.2.send.MX3.on": 3558538806, - "main.2.send.MX3.lvl": 1402539559, - "main.2.send.MX3.pre": 3198481668, - "main.2.send.MX4": 1597002707, - "main.2.send.MX4.on": 2173891094, - "main.2.send.MX4.lvl": 4246081159, - "main.2.send.MX4.pre": 2366253028, - "main.2.send.MX5": 2866014696, - "main.2.send.MX5.on": 1894927950, - "main.2.send.MX5.lvl": 745815647, - "main.2.send.MX5.pre": 2234032828, - "main.2.send.MX6": 3621380925, - "main.2.send.MX6.on": 1661057647, - "main.2.send.MX6.lvl": 1115999518, - "main.2.send.MX6.pre": 1832465965, - "main.2.send.MX7": 1082267764, - "main.2.send.MX7.on": 1695839299, - "main.2.send.MX7.lvl": 1083676786, - "main.2.send.MX7.pre": 3504242473, - "main.2.send.MX8": 1681653193, - "main.2.send.MX8.on": 351040098, - "main.2.send.MX8.lvl": 3765330547, - "main.2.send.MX8.pre": 2837792392, - "main.2.postins": 4108679640, - "main.2.postins.on": 2142151303, - "main.2.postins.ins": 1720810444, - "main.2.postins.$stat": 1828535216, - "main.2.dly": 494025929, - "main.2.dly.on": 1086798960, - "main.2.dly.mode": 2687660411, - "main.2.dly.dly": 2892622611, - "main.2.tags": 4214618076, - "main.2.$fdr": 2494970259, - "main.2.$mute": 585831410, - "main.2.$muteovr": 968267949, - "main.3": 4117235109, - "main.3.in": 2455377810, - "main.3.in.set": 327225903, - "main.3.in.set.inv": 1546040733, - "main.3.in.set.trim": 2544505067, - "main.3.in.set.bal": 1169896624, - "main.3.col": 649861049, - "main.3.name": 1270762032, - "main.3.icon": 3408715193, - "main.3.led": 1811278210, - "main.3.$col": 965173853, - "main.3.$name": 2822505158, - "main.3.$icon": 3816670804, - "main.3.busmono": 584312699, - "main.3.mute": 2266705589, - "main.3.fdr": 4030930302, - "main.3.pan": 1224628102, - "main.3.wid": 2762481249, - "main.3.$solo": 2208912840, - "main.3.$sololed": 3818835005, - "main.3.mon": 2057539349, - "main.3.eq": 3397339221, - "main.3.eq.on": 3157740956, - "main.3.eq.mdl": 722976764, - "main.3.eq.mix": 1773417016, - "main.3.eq.$solo": 2076769151, - "main.3.eq.$solobd": 4066129604, - "main.3.eq.1": 739182479, - "main.3.eq.2": 3695216338, - "main.3.eq.3": 2350205157, - "main.3.eq.4": 1304176712, - "main.3.eq.5": 4253456982, - "main.3.eq.6": 3182289060, - "main.3.eq.7": 1501733583, - "main.3.eq.8": 157516309, - "main.3.eq.9": 3448239160, - "main.3.eq.10": 3987338646, - "main.3.eq.11": 2647544739, - "main.3.eq.12": 1261409736, - "main.3.eq.13": 520379415, - "main.3.eq.14": 3475066748, - "main.3.eq.15": 1794485641, - "main.3.eq.16": 1828730648, - "main.3.eq.17": 489121061, - "main.3.eq.18": 3708128119, - "main.3.eq.19": 1985814233, - "main.3.eq.20": 344032506, - "main.3.eq.21": 3561933633, - "main.3.eq.22": 1886615918, - "main.3.eq.23": 542403771, - "main.3.eq.24": 3455654621, - "main.3.eq.25": 2446331434, - "main.3.eq.26": 1374343988, - "main.3.eq.27": 29476510, - "main.3.dyn": 2126932358, - "main.3.dyn.on": 2812819497, - "main.3.dyn.mdl": 315632056, - "main.3.dyn.mix": 743640238, - "main.3.dyn.gain": 2227929686, - "main.3.dyn.1": 244719627, - "main.3.dyn.2": 1010336240, - "main.3.dyn.3": 1944369853, - "main.3.dyn.4": 3689328740, - "main.3.dyn.5": 159957265, - "main.3.dyn.6": 3079860395, - "main.3.dyn.7": 4097749677, - "main.3.dyn.8": 400616282, - "main.3.dyn.9": 3840729348, - "main.3.dynxo": 3458271289, - "main.3.dynxo.depth": 2519781835, - "main.3.dynxo.type": 21134591, - "main.3.dynxo.f": 3883315998, - "main.3.dynxo.$solo": 1814071561, - "main.3.dynsc": 3094043655, - "main.3.dynsc.type": 320975166, - "main.3.dynsc.f": 3273330595, - "main.3.dynsc.q": 1674495238, - "main.3.dynsc.src": 1712237083, - "main.3.dynsc.tap": 2530995780, - "main.3.dynsc.$solo": 459107782, - "main.3.preins": 4134353129, - "main.3.preins.on": 1163644534, - "main.3.preins.ins": 3797318338, - "main.3.preins.$stat": 3133410457, - "main.3.send": 2501068467, - "main.3.send.MX1": 3539340573, - "main.3.send.MX1.on": 2632729520, - "main.3.send.MX1.lvl": 3781847585, - "main.3.send.MX1.pre": 146165322, - "main.3.send.MX2": 991341679, - "main.3.send.MX2.on": 2379994536, - "main.3.send.MX2.lvl": 223915833, - "main.3.send.MX2.pre": 40125890, - "main.3.send.MX3": 1840803241, - "main.3.send.MX3.on": 505608555, - "main.3.send.MX3.lvl": 4271969018, - "main.3.send.MX3.pre": 329054673, - "main.3.send.MX4": 464425747, - "main.3.send.MX4.on": 200994598, - "main.3.send.MX4.lvl": 4034794807, - "main.3.send.MX4.pre": 2525112724, - "main.3.send.MX5": 1313919656, - "main.3.send.MX5.on": 4201283934, - "main.3.send.MX5.lvl": 518806351, - "main.3.send.MX5.pre": 2419094060, - "main.3.send.MX6": 1985799165, - "main.3.send.MX6.on": 3429481343, - "main.3.send.MX6.lvl": 1290587470, - "main.3.send.MX6.pre": 1647392413, - "main.3.send.MX7": 2298403124, - "main.3.send.MX7.on": 563905422, - "main.3.send.MX7.lvl": 1361031455, - "main.3.send.MX7.pre": 2513868796, - "main.3.send.MX8": 3149871753, - "main.3.send.MX8.on": 602171282, - "main.3.send.MX8.lvl": 4284891523, - "main.3.send.MX8.pre": 263007576, - "main.3.postins": 1055019730, - "main.3.postins.on": 245973405, - "main.3.postins.ins": 1460740624, - "main.3.postins.$stat": 3198230205, - "main.3.dly": 3481719473, - "main.3.dly.on": 3569622960, - "main.3.dly.mode": 909570482, - "main.3.dly.dly": 1375386891, - "main.3.tags": 3210115519, - "main.3.$fdr": 2700083526, - "main.3.$mute": 1055063135, - "main.3.$muteovr": 1557295400, - "main.4": 2867790956, - "main.4.in": 352293973, - "main.4.in.set": 283032813, - "main.4.in.set.inv": 3995039534, - "main.4.in.set.trim": 3950433231, - "main.4.in.set.bal": 2093087099, - "main.4.col": 157506478, - "main.4.name": 1715396144, - "main.4.icon": 640440790, - "main.4.led": 3434356144, - "main.4.$col": 2937189968, - "main.4.$name": 1169987267, - "main.4.$icon": 2180864593, - "main.4.busmono": 20745587, - "main.4.mute": 220961497, - "main.4.fdr": 660619080, - "main.4.pan": 2681113992, - "main.4.wid": 3434662331, - "main.4.$solo": 4202207685, - "main.4.$sololed": 3021373039, - "main.4.mon": 4265812737, - "main.4.eq": 570680468, - "main.4.eq.on": 79638629, - "main.4.eq.mdl": 2434562353, - "main.4.eq.mix": 3027113800, - "main.4.eq.$solo": 3073261647, - "main.4.eq.$solobd": 1668148113, - "main.4.eq.1": 1133738878, - "main.4.eq.2": 3921580587, - "main.4.eq.3": 881978900, - "main.4.eq.4": 87229633, - "main.4.eq.5": 2869945879, - "main.4.eq.6": 3325115733, - "main.4.eq.7": 1812240062, - "main.4.eq.8": 3068071268, - "main.4.eq.9": 2231538001, - "main.4.eq.10": 2959487, - "main.4.eq.11": 2874155090, - "main.4.eq.12": 4088068537, - "main.4.eq.13": 830394622, - "main.4.eq.14": 3702076293, - "main.4.eq.15": 2189215992, - "main.4.eq.16": 1686569577, - "main.4.eq.17": 262654556, - "main.4.eq.18": 629473054, - "main.4.eq.19": 3453354408, - "main.4.eq.20": 3338248347, - "main.4.eq.21": 2094290848, - "main.4.eq.22": 670539047, - "main.4.eq.23": 3453143002, - "main.4.eq.24": 1987448740, - "main.4.eq.25": 1229353579, - "main.4.eq.26": 4285810765, - "main.4.eq.27": 2856637175, - "main.4.dyn": 1124849056, - "main.4.dyn.on": 2757464601, - "main.4.dyn.mdl": 2070715981, - "main.4.dyn.mix": 3705214563, - "main.4.dyn.gain": 1749342133, - "main.4.dyn.1": 1228452837, - "main.4.dyn.2": 2599939606, - "main.4.dyn.3": 3996985027, - "main.4.dyn.4": 2079071314, - "main.4.dyn.5": 3450230047, - "main.4.dyn.6": 1067222149, - "main.4.dyn.7": 2380340915, - "main.4.dyn.8": 3751827308, - "main.4.dyn.9": 843402482, - "main.4.dynxo": 167670823, - "main.4.dynxo.depth": 910341462, - "main.4.dynxo.type": 3180582164, - "main.4.dynxo.f": 2483472585, - "main.4.dynxo.$solo": 3224346207, - "main.4.dynsc": 157675545, - "main.4.dynsc.type": 627537537, - "main.4.dynsc.f": 3330967814, - "main.4.dynsc.q": 3848197027, - "main.4.dynsc.src": 3885431670, - "main.4.dynsc.tap": 2723178409, - "main.4.dynsc.$solo": 413357360, - "main.4.preins": 1402810310, - "main.4.preins.on": 4294932057, - "main.4.preins.ins": 722441181, - "main.4.preins.$stat": 1329963759, - "main.4.send": 3395360902, - "main.4.send.MX1": 217478597, - "main.4.send.MX1.on": 1013661119, - "main.4.send.MX1.lvl": 1558801166, - "main.4.send.MX1.pre": 2989840093, - "main.4.send.MX2": 3394131559, - "main.4.send.MX2.on": 507717032, - "main.4.send.MX2.lvl": 3737124665, - "main.4.send.MX2.pre": 2826671554, - "main.4.send.MX3": 1915534593, - "main.4.send.MX3.on": 3100932137, - "main.4.send.MX3.lvl": 961718488, - "main.4.send.MX3.pre": 1313751555, - "main.4.send.MX4": 2687932299, - "main.4.send.MX4.on": 1338383250, - "main.4.send.MX4.lvl": 3410572675, - "main.4.send.MX4.pre": 3830292824, - "main.4.send.MX5": 1502730288, - "main.4.send.MX5.on": 1860920703, - "main.4.send.MX5.lvl": 2406304590, - "main.4.send.MX5.pre": 1521595549, - "main.4.send.MX6": 118464229, - "main.4.send.MX6.on": 170320373, - "main.4.send.MX6.lvl": 3937008612, - "main.4.send.MX6.pre": 4288549511, - "main.4.send.MX7": 2129668492, - "main.4.send.MX7.on": 2123074330, - "main.4.send.MX7.lvl": 1930339435, - "main.4.send.MX7.pre": 1946521632, - "main.4.send.MX8": 900067361, - "main.4.send.MX8.on": 2088320699, - "main.4.send.MX8.lvl": 4160428202, - "main.4.send.MX8.pre": 2453779585, - "main.4.postins": 66145635, - "main.4.postins.on": 2410310533, - "main.4.postins.ins": 3870397410, - "main.4.postins.$stat": 551917960, - "main.4.dly": 1912094415, - "main.4.dly.on": 1110533659, - "main.4.dly.mode": 834983083, - "main.4.dly.dly": 2792021350, - "main.4.tags": 2594877267, - "main.4.$fdr": 707433795, - "main.4.$mute": 3713906754, - "main.4.$muteovr": 307305979, - "mtx": 4163525362, - "mtx.1": 1610514307, - "mtx.1.in": 4274265640, - "mtx.1.in.set": 361943311, - "mtx.1.in.set.inv": 42861762, - "mtx.1.in.set.trim": 3767135077, - "mtx.1.in.set.bal": 3119591907, - "mtx.1.dir": 3158634408, - "mtx.1.dir.on": 2764452597, - "mtx.1.dir.lvl": 1185068661, - "mtx.1.dir.inv": 2427142115, - "mtx.1.dir.in": 357901502, - "mtx.1.col": 4232472789, - "mtx.1.name": 3826400679, - "mtx.1.icon": 3200051255, - "mtx.1.led": 3928077507, - "mtx.1.$col": 1203559330, - "mtx.1.$name": 1130414855, - "mtx.1.$icon": 851136484, - "mtx.1.busmono": 3191859049, - "mtx.1.mute": 21169430, - "mtx.1.fdr": 1352253062, - "mtx.1.pan": 1725174445, - "mtx.1.wid": 2880129430, - "mtx.1.$solo": 3048789261, - "mtx.1.$sololed": 1599903379, - "mtx.1.mon": 317974396, - "mtx.1.busmode": 2811589467, - "mtx.1.eq": 1384746518, - "mtx.1.eq.on": 576737634, - "mtx.1.eq.mdl": 3383925544, - "mtx.1.eq.mix": 2896804370, - "mtx.1.eq.$solo": 574137908, - "mtx.1.eq.$solobd": 2164413575, - "mtx.1.eq.1": 4267385432, - "mtx.1.eq.2": 1448618779, - "mtx.1.eq.3": 2589403382, - "mtx.1.eq.4": 2186539639, - "mtx.1.eq.5": 978524258, - "mtx.1.eq.6": 1278538488, - "mtx.1.eq.7": 2377210811, - "mtx.1.eq.8": 1169185825, - "mtx.1.eq.9": 766321431, - "mtx.1.eq.10": 1783802206, - "mtx.1.eq.11": 2882520587, - "mtx.1.eq.12": 61255025, - "mtx.1.eq.13": 1537430226, - "mtx.1.eq.14": 2946669792, - "mtx.1.eq.15": 3885963694, - "mtx.1.eq.16": 2041115684, - "mtx.1.eq.17": 791141905, - "mtx.1.eq.18": 1929151986, - "mtx.1.eq.19": 1526451597, - "mtx.1.eq.20": 2767728135, - "mtx.1.eq.21": 4244072448, - "mtx.1.eq.22": 1425310909, - "mtx.1.eq.23": 2255695740, - "mtx.1.eq.24": 3731891241, - "mtx.1.eq.25": 913268906, - "mtx.1.eq.26": 2053889351, - "mtx.1.eq.27": 1651189766, - "mtx.1.dyn": 3236381317, - "mtx.1.dyn.on": 3637754673, - "mtx.1.dyn.mdl": 189307088, - "mtx.1.dyn.mix": 696363826, - "mtx.1.dyn.gain": 3386119390, - "mtx.1.dyn.1": 2356334859, - "mtx.1.dyn.2": 3150679486, - "mtx.1.dyn.3": 2085165168, - "mtx.1.dyn.4": 4232172842, - "mtx.1.dyn.5": 731719137, - "mtx.1.dyn.6": 2309464171, - "mtx.1.dyn.7": 130702622, - "mtx.1.dyn.8": 3341150151, - "mtx.1.dyn.9": 2801837194, - "mtx.1.dynxo": 1308993282, - "mtx.1.dynxo.depth": 324137299, - "mtx.1.dynxo.type": 4087524485, - "mtx.1.dynxo.f": 3207287520, - "mtx.1.dynxo.$solo": 3853280800, - "mtx.1.dynsc": 1855982383, - "mtx.1.dynsc.type": 423803174, - "mtx.1.dynsc.f": 3835748227, - "mtx.1.dynsc.q": 3991250920, - "mtx.1.dynsc.src": 3696702470, - "mtx.1.dynsc.tap": 2437468869, - "mtx.1.dynsc.$solo": 3801558157, - "mtx.1.preins": 2185592013, - "mtx.1.preins.on": 1195151315, - "mtx.1.preins.ins": 3379197487, - "mtx.1.preins.$stat": 858119502, - "mtx.1.postins": 3952600, - "mtx.1.postins.on": 2911721079, - "mtx.1.postins.ins": 4145552073, - "mtx.1.postins.$stat": 858498274, - "mtx.1.dly": 895539725, - "mtx.1.dly.on": 3280919038, - "mtx.1.dly.mode": 1515237195, - "mtx.1.dly.dly": 2791091528, - "mtx.1.tags": 48441122, - "mtx.1.$fdr": 54700500, - "mtx.1.$mute": 2094099547, - "mtx.1.$muteovr": 991088720, - "mtx.2": 2689628065, - "mtx.2.in": 2555643821, - "mtx.2.in.set": 608568805, - "mtx.2.in.set.inv": 3074833232, - "mtx.2.in.set.trim": 1172087056, - "mtx.2.in.set.bal": 420538641, - "mtx.2.dir": 2866163358, - "mtx.2.dir.on": 2641714739, - "mtx.2.dir.lvl": 3459480378, - "mtx.2.dir.inv": 1968440805, - "mtx.2.dir.in": 484853168, - "mtx.2.col": 204755519, - "mtx.2.name": 3025815981, - "mtx.2.icon": 2953693621, - "mtx.2.led": 1471965017, - "mtx.2.$col": 1754037456, - "mtx.2.$name": 2254906801, - "mtx.2.$icon": 4017780190, - "mtx.2.busmono": 901770779, - "mtx.2.mute": 451276312, - "mtx.2.fdr": 1294359892, - "mtx.2.pan": 3548345051, - "mtx.2.wid": 2077227620, - "mtx.2.$solo": 3094773215, - "mtx.2.$sololed": 1402591190, - "mtx.2.mon": 236936210, - "mtx.2.busmode": 3319745257, - "mtx.2.eq": 3940120491, - "mtx.2.eq.on": 3459213456, - "mtx.2.eq.mdl": 3789366874, - "mtx.2.eq.mix": 1050163504, - "mtx.2.eq.$solo": 2373737437, - "mtx.2.eq.$solobd": 339969382, - "mtx.2.eq.1": 1916030330, - "mtx.2.eq.2": 2545554425, - "mtx.2.eq.3": 3505047508, - "mtx.2.eq.4": 3865823141, - "mtx.2.eq.5": 3057427344, - "mtx.2.eq.6": 1683652122, - "mtx.2.eq.7": 2643518617, - "mtx.2.eq.8": 588353779, - "mtx.2.eq.9": 2195888197, - "mtx.2.eq.10": 1178389052, - "mtx.2.eq.11": 2143452393, - "mtx.2.eq.12": 2770027075, - "mtx.2.eq.13": 3572243968, - "mtx.2.eq.14": 3194822066, - "mtx.2.eq.15": 3282227340, - "mtx.2.eq.16": 4053355254, - "mtx.2.eq.17": 3239711459, - "mtx.2.eq.18": 4212320032, - "mtx.2.eq.19": 272887391, - "mtx.2.eq.20": 63553765, - "mtx.2.eq.21": 865765586, - "mtx.2.eq.22": 1494956943, - "mtx.2.eq.23": 575421598, - "mtx.2.eq.24": 1372723019, - "mtx.2.eq.25": 2007163272, - "mtx.2.eq.26": 2971898917, - "mtx.2.eq.27": 3327431988, - "mtx.2.dyn": 673364363, - "mtx.2.dyn.on": 3494114391, - "mtx.2.dyn.mdl": 461211094, - "mtx.2.dyn.mix": 3004275585, - "mtx.2.dyn.gain": 3947537013, - "mtx.2.dyn.1": 3827703749, - "mtx.2.dyn.2": 759641736, - "mtx.2.dyn.3": 1945495382, - "mtx.2.dyn.4": 1992742428, - "mtx.2.dyn.5": 3136079023, - "mtx.2.dyn.6": 484593445, - "mtx.2.dyn.7": 679306728, - "mtx.2.dyn.8": 1805522633, - "mtx.2.dyn.9": 4287432060, - "mtx.2.dynxo": 2763281988, - "mtx.2.dynxo.depth": 4157228351, - "mtx.2.dynxo.type": 3553036575, - "mtx.2.dynxo.f": 2678522474, - "mtx.2.dynxo.$solo": 1228444269, - "mtx.2.dynsc": 981001313, - "mtx.2.dynsc.type": 2556418933, - "mtx.2.dynsc.f": 3457135792, - "mtx.2.dynsc.q": 1154154683, - "mtx.2.dynsc.src": 2295947341, - "mtx.2.dynsc.tap": 1389244894, - "mtx.2.dynsc.$solo": 3205897531, - "mtx.2.preins": 1855506967, - "mtx.2.preins.on": 2548177660, - "mtx.2.preins.ins": 2676520744, - "mtx.2.preins.$stat": 3321423255, - "mtx.2.postins": 1289556843, - "mtx.2.postins.on": 4171953140, - "mtx.2.postins.ins": 3984918209, - "mtx.2.postins.$stat": 963572949, - "mtx.2.dly": 4283670191, - "mtx.2.dly.on": 2887511788, - "mtx.2.dly.mode": 3430671761, - "mtx.2.dly.dly": 2470561214, - "mtx.2.tags": 4233751524, - "mtx.2.$fdr": 864609734, - "mtx.2.$mute": 1879165513, - "mtx.2.$muteovr": 310252834, - "mtx.3": 2555557919, - "mtx.3.in": 816053037, - "mtx.3.in.set": 2792738675, - "mtx.3.in.set.inv": 3039349862, - "mtx.3.in.set.trim": 3981913369, - "mtx.3.in.set.bal": 665410127, - "mtx.3.dir": 3458591092, - "mtx.3.dir.on": 3726964265, - "mtx.3.dir.lvl": 4197657916, - "mtx.3.dir.inv": 2702030123, - "mtx.3.dir.in": 60166074, - "mtx.3.col": 3928255249, - "mtx.3.name": 4247500499, - "mtx.3.icon": 2917214435, - "mtx.3.led": 1340784127, - "mtx.3.$col": 2546457510, - "mtx.3.$name": 2500996995, - "mtx.3.$icon": 4128091896, - "mtx.3.busmono": 85409102, - "mtx.3.mute": 320395250, - "mtx.3.fdr": 1823691442, - "mtx.3.pan": 3160154025, - "mtx.3.wid": 3225391810, - "mtx.3.$solo": 2009969745, - "mtx.3.$sololed": 3031758035, - "mtx.3.mon": 720303912, - "mtx.3.busmode": 301730481, - "mtx.3.eq": 2221542187, - "mtx.3.eq.on": 811553726, - "mtx.3.eq.mdl": 3148679676, - "mtx.3.eq.mix": 1606960198, - "mtx.3.eq.$solo": 1739398511, - "mtx.3.eq.$solobd": 3991269028, - "mtx.3.eq.1": 744784604, - "mtx.3.eq.2": 76143623, - "mtx.3.eq.3": 3424310610, - "mtx.3.eq.4": 339449003, - "mtx.3.eq.5": 3876359654, - "mtx.3.eq.6": 959099772, - "mtx.3.eq.7": 12627111, - "mtx.3.eq.8": 3638668045, - "mtx.3.eq.9": 464676171, - "mtx.3.eq.10": 3071084290, - "mtx.3.eq.11": 2129813599, - "mtx.3.eq.12": 1458264485, - "mtx.3.eq.13": 700208014, - "mtx.3.eq.14": 3701281356, - "mtx.3.eq.15": 963840882, - "mtx.3.eq.16": 191443208, - "mtx.3.eq.17": 3712625221, - "mtx.3.eq.18": 2705533230, - "mtx.3.eq.19": 3994280681, - "mtx.3.eq.20": 2532953859, - "mtx.3.eq.21": 1774897260, - "mtx.3.eq.22": 1105928633, - "mtx.3.eq.23": 2038202608, - "mtx.3.eq.24": 1285675597, - "mtx.3.eq.25": 611503734, - "mtx.3.eq.26": 3964913603, - "mtx.3.eq.27": 874809114, - "mtx.3.dyn": 1895792257, - "mtx.3.dyn.on": 2293968877, - "mtx.3.dyn.mdl": 2865121617, - "mtx.3.dyn.mix": 1714374956, - "mtx.3.dyn.gain": 2647805504, - "mtx.3.dyn.1": 3696821599, - "mtx.3.dyn.2": 198922594, - "mtx.3.dyn.3": 744575484, - "mtx.3.dyn.4": 2889043446, - "mtx.3.dyn.5": 3686117173, - "mtx.3.dyn.6": 3653227711, - "mtx.3.dyn.7": 1471292226, - "mtx.3.dyn.8": 1999905091, - "mtx.3.dyn.9": 4145684438, - "mtx.3.dynxo": 2652758878, - "mtx.3.dynxo.depth": 1848660659, - "mtx.3.dynxo.type": 6779257, - "mtx.3.dynxo.f": 763031580, - "mtx.3.dynxo.$solo": 2345606209, - "mtx.3.dynsc": 514736123, - "mtx.3.dynsc.type": 1751351095, - "mtx.3.dynsc.f": 1042275778, - "mtx.3.dynsc.q": 2495910313, - "mtx.3.dynsc.src": 4175886927, - "mtx.3.dynsc.tap": 1120411804, - "mtx.3.dynsc.$solo": 3610218299, - "mtx.3.preins": 2436892185, - "mtx.3.preins.on": 2002525107, - "mtx.3.preins.ins": 353304463, - "mtx.3.preins.$stat": 1070194984, - "mtx.3.postins": 4101221529, - "mtx.3.postins.on": 1192556902, - "mtx.3.postins.ins": 1880127803, - "mtx.3.postins.$stat": 1052903478, - "mtx.3.dly": 1137546705, - "mtx.3.dly.on": 2544148626, - "mtx.3.dly.mode": 2345494731, - "mtx.3.dly.dly": 2488679015, - "mtx.3.tags": 454467038, - "mtx.3.$fdr": 408503760, - "mtx.3.$mute": 3435549407, - "mtx.3.$muteovr": 3173978, - "mtx.4": 1095037120, - "mtx.4.in": 1513367967, - "mtx.4.in.set": 166252393, - "mtx.4.in.set.inv": 3577269361, - "mtx.4.in.set.trim": 3014729987, - "mtx.4.in.set.bal": 127499952, - "mtx.4.dir": 3337803978, - "mtx.4.dir.on": 3595686247, - "mtx.4.dir.lvl": 800046094, - "mtx.4.dir.inv": 2036890265, - "mtx.4.dir.in": 180533532, - "mtx.4.col": 448478779, - "mtx.4.name": 4043147481, - "mtx.4.icon": 3297562721, - "mtx.4.led": 1105196661, - "mtx.4.$col": 2992328916, - "mtx.4.$name": 1000807917, - "mtx.4.$icon": 715775698, - "mtx.4.busmono": 1694478170, - "mtx.4.mute": 92415796, - "mtx.4.fdr": 1429928832, - "mtx.4.pan": 2766955639, - "mtx.4.wid": 3052759440, - "mtx.4.$solo": 2989659939, - "mtx.4.$sololed": 1585608516, - "mtx.4.mon": 598104606, - "mtx.4.busmode": 961790458, - "mtx.4.eq": 481948832, - "mtx.4.eq.on": 475394636, - "mtx.4.eq.mdl": 2437166222, - "mtx.4.eq.mix": 3971031908, - "mtx.4.eq.$solo": 649353249, - "mtx.4.eq.$solobd": 764062098, - "mtx.4.eq.1": 542182910, - "mtx.4.eq.2": 1213414629, - "mtx.4.eq.3": 2152043728, - "mtx.4.eq.4": 944867641, - "mtx.4.eq.5": 1705228564, - "mtx.4.eq.6": 331472542, - "mtx.4.eq.7": 1270050181, - "mtx.4.eq.8": 1940635775, - "mtx.4.eq.9": 821934553, - "mtx.4.eq.10": 2510522496, - "mtx.4.eq.11": 3454394173, - "mtx.4.eq.12": 4122349335, - "mtx.4.eq.13": 587742908, - "mtx.4.eq.14": 1884566462, - "mtx.4.eq.15": 319195728, - "mtx.4.eq.16": 1090260954, - "mtx.4.eq.17": 1866350519, - "mtx.4.eq.18": 2880334428, - "mtx.4.eq.19": 1583375451, - "mtx.4.eq.20": 3047332321, - "mtx.4.eq.21": 3808348638, - "mtx.4.eq.22": 184623243, - "mtx.4.eq.23": 3538490898, - "mtx.4.eq.24": 4293608655, - "mtx.4.eq.25": 675114996, - "mtx.4.eq.26": 1619642017, - "mtx.4.eq.27": 406568008, - "mtx.4.dyn": 2006129447, - "mtx.4.dyn.on": 531096227, - "mtx.4.dyn.mdl": 2121091802, - "mtx.4.dyn.mix": 2525822690, - "mtx.4.dyn.gain": 3110037898, - "mtx.4.dyn.1": 2496106025, - "mtx.4.dyn.2": 3681370332, - "mtx.4.dyn.3": 3318728322, - "mtx.4.dyn.4": 3324365128, - "mtx.4.dyn.5": 214493171, - "mtx.4.dyn.6": 3469917577, - "mtx.4.dyn.7": 3642651324, - "mtx.4.dyn.8": 3116824037, - "mtx.4.dyn.9": 2955344680, - "mtx.4.dynxo": 1410381808, - "mtx.4.dynxo.depth": 1018286440, - "mtx.4.dynxo.type": 598213198, - "mtx.4.dynxo.f": 1121607947, - "mtx.4.dynxo.$solo": 2858942022, - "mtx.4.dynsc": 2291978909, - "mtx.4.dynsc.type": 2494578262, - "mtx.4.dynsc.f": 1446188947, - "mtx.4.dynsc.q": 3246018168, - "mtx.4.dynsc.src": 552387350, - "mtx.4.dynsc.tap": 1521870037, - "mtx.4.dynsc.$solo": 2231421322, - "mtx.4.preins": 2211459939, - "mtx.4.preins.on": 2470039609, - "mtx.4.preins.ins": 151860885, - "mtx.4.preins.$stat": 245602542, - "mtx.4.postins": 4269322480, - "mtx.4.postins.on": 2939967087, - "mtx.4.postins.ins": 3310164283, - "mtx.4.postins.$stat": 262578321, - "mtx.4.dly": 251516275, - "mtx.4.dly.on": 2067019136, - "mtx.4.dly.mode": 286830396, - "mtx.4.dly.dly": 4026224381, - "mtx.4.tags": 239338208, - "mtx.4.$fdr": 4247037090, - "mtx.4.$mute": 2108961293, - "mtx.4.$muteovr": 843287284, - "mtx.5": 962275701, - "mtx.5.in": 4068741988, - "mtx.5.in.set": 396515495, - "mtx.5.in.set.inv": 1485637092, - "mtx.5.in.set.trim": 2168741541, - "mtx.5.in.set.bal": 1847210797, - "mtx.5.dir": 2928149152, - "mtx.5.dir.on": 2659106653, - "mtx.5.dir.lvl": 706982854, - "mtx.5.dir.inv": 1566720667, - "mtx.5.dir.in": 420993286, - "mtx.5.col": 4255577805, - "mtx.5.name": 2958766095, - "mtx.5.icon": 3512496111, - "mtx.5.led": 1569146747, - "mtx.5.$col": 1196843786, - "mtx.5.$name": 2798988991, - "mtx.5.$icon": 826087500, - "mtx.5.busmono": 192867188, - "mtx.5.mute": 4256334382, - "mtx.5.fdr": 1455942558, - "mtx.5.pan": 1565776709, - "mtx.5.wid": 2219711246, - "mtx.5.$solo": 3015853925, - "mtx.5.$sololed": 2324927830, - "mtx.5.mon": 200527380, - "mtx.5.busmode": 3721427275, - "mtx.5.eq": 1179222322, - "mtx.5.eq.on": 607046250, - "mtx.5.eq.mdl": 3312001808, - "mtx.5.eq.mix": 2843225466, - "mtx.5.eq.$solo": 759013306, - "mtx.5.eq.$solobd": 739331697, - "mtx.5.eq.1": 2730400, - "mtx.5.eq.2": 1355723443, - "mtx.5.eq.3": 2682297358, - "mtx.5.eq.4": 2156555135, - "mtx.5.eq.5": 819766474, - "mtx.5.eq.6": 1122400832, - "mtx.5.eq.7": 2491081555, - "mtx.5.eq.8": 1160172601, - "mtx.5.eq.9": 628530207, - "mtx.5.eq.10": 1625043030, - "mtx.5.eq.11": 2999007651, - "mtx.5.eq.12": 52240521, - "mtx.5.eq.13": 1399642682, - "mtx.5.eq.14": 3000576248, - "mtx.5.eq.15": 3811414598, - "mtx.5.eq.16": 1966565340, - "mtx.5.eq.17": 655970601, - "mtx.5.eq.18": 2004030042, - "mtx.5.eq.19": 1472551301, - "mtx.5.eq.20": 2905191871, - "mtx.5.eq.21": 4253413144, - "mtx.5.eq.22": 1311111253, - "mtx.5.eq.23": 2411833284, - "mtx.5.eq.24": 3764826385, - "mtx.5.eq.25": 817424290, - "mtx.5.eq.26": 2149732607, - "mtx.5.eq.27": 1618255982, - "mtx.5.dyn": 836392253, - "mtx.5.dyn.on": 3331107129, - "mtx.5.dyn.mdl": 3144241423, - "mtx.5.dyn.mix": 2703943891, - "mtx.5.dyn.gain": 4278642331, - "mtx.5.dyn.1": 4000243363, - "mtx.5.dyn.2": 586455734, - "mtx.5.dyn.3": 1783147304, - "mtx.5.dyn.4": 1830709026, - "mtx.5.dyn.5": 3299096729, - "mtx.5.dyn.6": 312086019, - "mtx.5.dyn.7": 516278806, - "mtx.5.dyn.8": 1632361087, - "mtx.5.dyn.9": 155162242, - "mtx.5.dynxo": 2936805898, - "mtx.5.dynxo.depth": 933407921, - "mtx.5.dynxo.type": 1028902669, - "mtx.5.dynxo.f": 1888374216, - "mtx.5.dynxo.$solo": 3576245668, - "mtx.5.dynsc": 817994007, - "mtx.5.dynsc.type": 2935234915, - "mtx.5.dynsc.f": 3957030934, - "mtx.5.dynsc.q": 3644077397, - "mtx.5.dynsc.src": 4111640195, - "mtx.5.dynsc.tap": 1083669768, - "mtx.5.dynsc.$solo": 368904291, - "mtx.5.preins": 2067461397, - "mtx.5.preins.on": 2093179768, - "mtx.5.preins.ins": 3571924868, - "mtx.5.preins.$stat": 2580671563, - "mtx.5.postins": 938692315, - "mtx.5.postins.on": 3920516580, - "mtx.5.postins.ins": 3597076801, - "mtx.5.postins.$stat": 3552868811, - "mtx.5.dly": 858658469, - "mtx.5.dly.on": 3338756502, - "mtx.5.dly.mode": 1172287642, - "mtx.5.dly.dly": 2205004107, - "mtx.5.tags": 4277382874, - "mtx.5.$fdr": 774470796, - "mtx.5.$mute": 1975006371, - "mtx.5.$muteovr": 4151564145, - "mtx.6": 3786195486, - "mtx.6.in": 202639097, - "mtx.6.in.set": 620838301, - "mtx.6.in.set.inv": 1045772904, - "mtx.6.in.set.trim": 3862037306, - "mtx.6.in.set.bal": 2284447785, - "mtx.6.dir": 3382071862, - "mtx.6.dir.on": 3797916315, - "mtx.6.dir.lvl": 3642781177, - "mtx.6.dir.inv": 3901440313, - "mtx.6.dir.in": 4257645080, - "mtx.6.col": 145291223, - "mtx.6.name": 3089875125, - "mtx.6.icon": 2972537037, - "mtx.6.led": 1438580401, - "mtx.6.$col": 2641988152, - "mtx.6.$name": 2377322537, - "mtx.6.$icon": 3952074534, - "mtx.6.busmono": 3078028915, - "mtx.6.mute": 396727216, - "mtx.6.fdr": 1734945548, - "mtx.6.pan": 3558644595, - "mtx.6.wid": 3325850396, - "mtx.6.$solo": 3293835639, - "mtx.6.$sololed": 1148247928, - "mtx.6.mon": 37543626, - "mtx.6.busmode": 1051871601, - "mtx.6.eq": 3734598839, - "mtx.6.eq.on": 3428583672, - "mtx.6.eq.mdl": 3778391458, - "mtx.6.eq.mix": 1017556120, - "mtx.6.eq.$solo": 3649395236, - "mtx.6.eq.$solobd": 2142667671, - "mtx.6.eq.1": 1884738754, - "mtx.6.eq.2": 2556195729, - "mtx.6.eq.3": 3495050124, - "mtx.6.eq.4": 3898097677, - "mtx.6.eq.5": 3048091640, - "mtx.6.eq.6": 1673004386, - "mtx.6.eq.7": 2611889201, - "mtx.6.eq.8": 599001515, - "mtx.6.eq.9": 2164920493, - "mtx.6.eq.10": 1169052116, - "mtx.6.eq.11": 2113149057, - "mtx.6.eq.12": 2779362811, - "mtx.6.eq.13": 3539969384, - "mtx.6.eq.14": 3225791082, - "mtx.6.eq.15": 3271258404, - "mtx.6.eq.16": 4043695790, - "mtx.6.eq.17": 3209397915, - "mtx.6.eq.18": 4221662088, - "mtx.6.eq.19": 240614135, - "mtx.6.eq.20": 94183581, - "mtx.6.eq.21": 854790282, - "mtx.6.eq.22": 1526257447, - "mtx.6.eq.23": 586079462, - "mtx.6.eq.24": 1341422483, - "mtx.6.eq.25": 2018142496, - "mtx.6.eq.26": 2962239453, - "mtx.6.eq.27": 3360044444, - "mtx.6.dyn": 778711587, - "mtx.6.dyn.on": 3514596287, - "mtx.6.dyn.mdl": 3846865317, - "mtx.6.dyn.mix": 658156617, - "mtx.6.dyn.gain": 3982338205, - "mtx.6.dyn.1": 3806242685, - "mtx.6.dyn.2": 780446240, - "mtx.6.dyn.3": 1840799758, - "mtx.6.dyn.4": 1930322612, - "mtx.6.dyn.5": 3283374407, - "mtx.6.dyn.6": 631887581, - "mtx.6.dyn.7": 573954432, - "mtx.6.dyn.8": 1742442337, - "mtx.6.dyn.9": 139432468, - "mtx.6.dynxo": 2700857004, - "mtx.6.dynxo.depth": 390261307, - "mtx.6.dynxo.type": 1109919879, - "mtx.6.dynxo.f": 1816527410, - "mtx.6.dynxo.$solo": 686646060, - "mtx.6.dynsc": 1085369289, - "mtx.6.dynsc.type": 2804733917, - "mtx.6.dynsc.f": 3344348792, - "mtx.6.dynsc.q": 4194172819, - "mtx.6.dynsc.src": 284187893, - "mtx.6.dynsc.tap": 1119957814, - "mtx.6.dynsc.$solo": 397351731, - "mtx.6.preins": 1254278783, - "mtx.6.preins.on": 1596009603, - "mtx.6.preins.ins": 3707341055, - "mtx.6.preins.$stat": 821812281, - "mtx.6.postins": 2295862610, - "mtx.6.postins.on": 3572233677, - "mtx.6.postins.ins": 3430423557, - "mtx.6.postins.$stat": 3642036286, - "mtx.6.dly": 4225202055, - "mtx.6.dly.on": 2904041572, - "mtx.6.dly.mode": 447931944, - "mtx.6.dly.dly": 930269516, - "mtx.6.tags": 529570204, - "mtx.6.$fdr": 255286110, - "mtx.6.$mute": 3473698257, - "mtx.6.$muteovr": 85930335, - "mtx.7": 1257199537, - "mtx.7.in": 2758013054, - "mtx.7.in.set": 2910111371, - "mtx.7.in.set.inv": 1362871686, - "mtx.7.in.set.trim": 256609923, - "mtx.7.in.set.bal": 2176736623, - "mtx.7.dir": 3262617388, - "mtx.7.dir.on": 3667309169, - "mtx.7.dir.lvl": 1504980044, - "mtx.7.dir.inv": 1619310081, - "mtx.7.dir.in": 84394498, - "mtx.7.col": 297891529, - "mtx.7.name": 3974727995, - "mtx.7.icon": 3732338331, - "mtx.7.led": 1244608151, - "mtx.7.$col": 3192035086, - "mtx.7.$name": 1566554171, - "mtx.7.$icon": 486878784, - "mtx.7.busmono": 4120276334, - "mtx.7.mute": 864072106, - "mtx.7.fdr": 3535757258, - "mtx.7.pan": 2897219649, - "mtx.7.wid": 3191857466, - "mtx.7.$solo": 2666246601, - "mtx.7.$sololed": 222568675, - "mtx.7.mon": 478677440, - "mtx.7.busmode": 1551038950, - "mtx.7.eq": 2016017916, - "mtx.7.eq.on": 399541254, - "mtx.7.eq.mdl": 2506804036, - "mtx.7.eq.mix": 4067529134, - "mtx.7.eq.$solo": 1517690558, - "mtx.7.eq.$solobd": 21295133, - "mtx.7.eq.1": 466965540, - "mtx.7.eq.2": 1306000319, - "mtx.7.eq.3": 2061435658, - "mtx.7.eq.4": 1021068019, - "mtx.7.eq.5": 1776503374, - "mtx.7.eq.6": 401417412, - "mtx.7.eq.7": 1198468191, - "mtx.7.eq.8": 2038442405, - "mtx.7.eq.9": 914846611, - "mtx.7.eq.10": 2581778106, - "mtx.7.eq.11": 3378869751, - "mtx.7.eq.12": 4218846557, - "mtx.7.eq.13": 679314646, - "mtx.7.eq.14": 1786430692, - "mtx.7.eq.15": 394054698, - "mtx.7.eq.16": 1166452384, - "mtx.7.eq.17": 1963830781, - "mtx.7.eq.18": 2803805046, - "mtx.7.eq.19": 1680209281, - "mtx.7.eq.20": 2955413691, - "mtx.7.eq.21": 3710193668, - "mtx.7.eq.22": 254588753, - "mtx.7.eq.23": 3468515160, - "mtx.7.eq.24": 4223663765, - "mtx.7.eq.25": 768017966, - "mtx.7.eq.26": 1522797947, - "mtx.7.eq.27": 483085666, - "mtx.7.dyn": 1830087993, - "mtx.7.dyn.on": 2312487221, - "mtx.7.dyn.mdl": 3643230806, - "mtx.7.dyn.mix": 483936672, - "mtx.7.dyn.gain": 3776008508, - "mtx.7.dyn.1": 3673394423, - "mtx.7.dyn.2": 217763610, - "mtx.7.dyn.3": 809615508, - "mtx.7.dyn.4": 2823346862, - "mtx.7.dyn.5": 3662361069, - "mtx.7.dyn.6": 3629472855, - "mtx.7.dyn.7": 1536991482, - "mtx.7.dyn.8": 1940099067, - "mtx.7.dyn.9": 4121603214, - "mtx.7.dynxo": 2592297382, - "mtx.7.dynxo.depth": 313254341, - "mtx.7.dynxo.type": 942963477, - "mtx.7.dynxo.f": 1838806096, - "mtx.7.dynxo.$solo": 3950128078, - "mtx.7.dynsc": 449368387, - "mtx.7.dynsc.type": 916750763, - "mtx.7.dynsc.f": 4148091678, - "mtx.7.dynsc.q": 2323879021, - "mtx.7.dynsc.src": 1093008523, - "mtx.7.dynsc.tap": 1920933440, - "mtx.7.dynsc.$solo": 3018450185, - "mtx.7.preins": 2287957089, - "mtx.7.preins.on": 198907428, - "mtx.7.preins.ins": 69988320, - "mtx.7.preins.$stat": 2713951914, - "mtx.7.postins": 2400870392, - "mtx.7.postins.on": 982885015, - "mtx.7.postins.ins": 2887527657, - "mtx.7.postins.$stat": 2327285123, - "mtx.7.dly": 317528201, - "mtx.7.dly.on": 2310348362, - "mtx.7.dly.mode": 2684381147, - "mtx.7.dly.dly": 585066521, - "mtx.7.tags": 314385782, - "mtx.7.$fdr": 574840296, - "mtx.7.$mute": 302291751, - "mtx.7.$muteovr": 3272681506, - "mtx.8": 446754986, - "mtx.8.in": 3455329248, - "mtx.8.in.set": 233817697, - "mtx.8.in.set.inv": 4040411633, - "mtx.8.in.set.trim": 3588305594, - "mtx.8.in.set.bal": 3791552816, - "mtx.8.dir": 3183243362, - "mtx.8.dir.on": 2738573263, - "mtx.8.dir.lvl": 2498819997, - "mtx.8.dir.inv": 2991554360, - "mtx.8.dir.in": 330056036, - "mtx.8.col": 40729043, - "mtx.8.name": 3170185185, - "mtx.8.icon": 3360280697, - "mtx.8.led": 1113243117, - "mtx.8.$col": 1246938172, - "mtx.8.$name": 1037039941, - "mtx.8.$icon": 890789434, - "mtx.8.busmono": 1756801280, - "mtx.8.mute": 62122732, - "mtx.8.fdr": 1380753208, - "mtx.8.pan": 1765461295, - "mtx.8.wid": 2913999176, - "mtx.8.$solo": 2923292635, - "mtx.8.$sololed": 3774966533, - "mtx.8.mon": 358292150, - "mtx.8.busmode": 3995513556, - "mtx.8.eq": 2692321806, - "mtx.8.eq.on": 785472820, - "mtx.8.eq.mdl": 3510048886, - "mtx.8.eq.mix": 3023649484, - "mtx.8.eq.$solo": 49901857, - "mtx.8.eq.$solobd": 80059026, - "mtx.8.eq.1": 181834054, - "mtx.8.eq.2": 1490211485, - "mtx.8.eq.3": 2547125224, - "mtx.8.eq.4": 1975813665, - "mtx.8.eq.5": 683906940, - "mtx.8.eq.6": 1320796646, - "mtx.8.eq.7": 2335613757, - "mtx.8.eq.8": 959175799, - "mtx.8.eq.9": 472405697, - "mtx.8.eq.10": 1489245592, - "mtx.8.eq.11": 3175100117, - "mtx.8.eq.12": 188059695, - "mtx.8.eq.13": 1580343812, - "mtx.8.eq.14": 2821135286, - "mtx.8.eq.15": 3676558600, - "mtx.8.eq.16": 2165964658, - "mtx.8.eq.17": 832135375, - "mtx.8.eq.18": 1804333732, - "mtx.8.eq.19": 1317727315, - "mtx.8.eq.20": 2726806937, - "mtx.8.eq.21": 4118599382, - "mtx.8.eq.22": 1131999267, - "mtx.8.eq.23": 2548992634, - "mtx.8.eq.24": 3941256119, - "mtx.8.eq.25": 954850572, - "mtx.8.eq.26": 2010945113, - "mtx.8.eq.27": 1440452752, - "mtx.8.dyn": 1116501983, - "mtx.8.dyn.on": 3192555019, - "mtx.8.dyn.mdl": 365850749, - "mtx.8.dyn.mix": 641082539, - "mtx.8.dyn.gain": 3457302291, - "mtx.8.dyn.1": 4134198209, - "mtx.8.dyn.2": 1097980020, - "mtx.8.dyn.3": 1523229498, - "mtx.8.dyn.4": 2278672352, - "mtx.8.dyn.5": 2950049963, - "mtx.8.dyn.6": 298625825, - "mtx.8.dyn.7": 907258452, - "mtx.8.dyn.8": 1394111133, - "mtx.8.dyn.9": 456366528, - "mtx.8.dynxo": 3054416984, - "mtx.8.dynxo.depth": 1076037246, - "mtx.8.dynxo.type": 2601821386, - "mtx.8.dynxo.f": 3485059903, - "mtx.8.dynxo.$solo": 3720953367, - "mtx.8.dynsc": 1413322213, - "mtx.8.dynsc.type": 35480694, - "mtx.8.dynsc.f": 3243392435, - "mtx.8.dynsc.q": 1410168920, - "mtx.8.dynsc.src": 3046893878, - "mtx.8.dynsc.tap": 3994073845, - "mtx.8.dynsc.$solo": 883757427, - "mtx.8.preins": 2229851595, - "mtx.8.preins.on": 2832782186, - "mtx.8.preins.ins": 2836281094, - "mtx.8.preins.$stat": 1756999818, - "mtx.8.postins": 3667108021, - "mtx.8.postins.on": 790717482, - "mtx.8.postins.ins": 2749815559, - "mtx.8.postins.$stat": 833971230, - "mtx.8.dly": 931899755, - "mtx.8.dly.on": 3244554520, - "mtx.8.dly.mode": 84112083, - "mtx.8.dly.dly": 714370511, - "mtx.8.tags": 57949304, - "mtx.8.$fdr": 692729690, - "mtx.8.$mute": 2104924757, - "mtx.8.$muteovr": 3212610188, - "dca": 3809718015, - "dca.1": 2722862073, - "dca.1.name": 1092527793, - "dca.1.col": 3582497475, - "dca.1.icon": 38843376, - "dca.1.led": 3698193413, - "dca.1.mute": 598275211, - "dca.1.fdr": 1063472015, - "dca.1.$solo": 3567599658, - "dca.1.$sololed": 1969219294, - "dca.1.mon": 4256428439, - "dca.2": 3466800171, - "dca.2.name": 2012060424, - "dca.2.col": 4007029481, - "dca.2.icon": 4244255346, - "dca.2.led": 4195369919, - "dca.2.mute": 4294938793, - "dca.2.fdr": 784878665, - "dca.2.$solo": 2450981704, - "dca.2.$sololed": 1075106447, - "dca.2.mon": 1675604833, - "dca.3": 2538199957, - "dca.3.name": 2636901098, - "dca.3.col": 702964839, - "dca.3.icon": 4008529412, - "dca.3.led": 471739673, - "dca.3.mute": 907208511, - "dca.3.fdr": 2332656099, - "dca.3.$solo": 2192415462, - "dca.3.$sololed": 52648852, - "dca.3.mon": 852471259, - "dca.4": 3193710666, - "dca.4.name": 2735347644, - "dca.4.col": 4210631181, - "dca.4.icon": 3424676406, - "dca.4.led": 3660348083, - "dca.4.mute": 517511117, - "dca.4.fdr": 1131985645, - "dca.4.$solo": 3613314068, - "dca.4.$sololed": 1591093370, - "dca.4.mon": 4286184149, - "dca.5": 4211292415, - "dca.5.name": 1765487758, - "dca.5.col": 3606920571, - "dca.5.icon": 4216349448, - "dca.5.led": 4124772029, - "dca.5.mute": 753446915, - "dca.5.fdr": 1168502919, - "dca.5.$solo": 2517525122, - "dca.5.$sololed": 971969584, - "dca.5.mon": 90380879, - "dca.6": 593134996, - "dca.6.name": 2703982608, - "dca.6.col": 4073389825, - "dca.6.icon": 356074026, - "dca.6.led": 4109536343, - "dca.6.mute": 149890241, - "dca.6.fdr": 554365249, - "dca.6.$solo": 2239778528, - "dca.6.$sololed": 3178470859, - "dca.6.mon": 102564889, - "dca.7": 3712057403, - "dca.7.name": 2825489202, - "dca.7.col": 36404895, - "dca.7.icon": 3345652668, - "dca.7.led": 595784817, - "dca.7.mute": 1079457975, - "dca.7.fdr": 342431995, - "dca.7.$solo": 3699351838, - "dca.7.$sololed": 1559384720, - "dca.7.mon": 1958450163, - "dca.8": 429121824, - "dca.8.name": 1852350468, - "dca.8.col": 3749918245, - "dca.8.icon": 157165006, - "dca.8.led": 3741764139, - "dca.8.mute": 644492261, - "dca.8.fdr": 883570309, - "dca.8.$solo": 3422424844, - "dca.8.$sololed": 2568296377, - "dca.8.mon": 4088342285, - "dca.9": 1201534890, - "dca.9.name": 1950798742, - "dca.9.col": 3985856915, - "dca.9.icon": 4236691232, - "dca.9.led": 4020055893, - "dca.9.mute": 40961211, - "dca.9.fdr": 604990655, - "dca.9.$solo": 2619090618, - "dca.9.$sololed": 1546506961, - "dca.9.mon": 186579303, - "dca.10": 2164911316, - "dca.10.name": 3669837550, - "dca.10.col": 38102184, - "dca.10.icon": 1919956769, - "dca.10.led": 1058217908, - "dca.10.mute": 119709607, - "dca.10.fdr": 1490540144, - "dca.10.$solo": 4207647105, - "dca.10.$sololed": 334560937, - "dca.10.mon": 918490487, - "dca.11": 3177265506, - "dca.11.name": 726073823, - "dca.11.col": 3141017633, - "dca.11.icon": 1733972772, - "dca.11.led": 418098251, - "dca.11.mute": 47586637, - "dca.11.fdr": 492006737, - "dca.11.$solo": 729028519, - "dca.11.$sololed": 3930336522, - "dca.11.mon": 163164957, - "dca.12": 3322104997, - "dca.12.name": 3155151848, - "dca.12.col": 3100554262, - "dca.12.icon": 3160940091, - "dca.12.led": 3665580008, - "dca.12.mute": 1827133773, - "dca.12.fdr": 451225892, - "dca.12.$solo": 2616654759, - "dca.12.$sololed": 3066297178, - "dca.12.mon": 3754968861, - "dca.13": 18520392, - "dca.13.name": 223494545, - "dca.13.col": 3469372156, - "dca.13.icon": 2507549246, - "dca.13.led": 138724677, - "dca.13.mute": 2990506715, - "dca.13.fdr": 745923436, - "dca.13.$solo": 3480986557, - "dca.13.$sololed": 230524559, - "dca.13.mon": 2862816627, - "dca.14": 3653342257, - "dca.14.name": 613262730, - "dca.14.col": 3423686385, - "dca.14.icon": 1755142117, - "dca.14.led": 304371906, - "dca.14.mute": 1669131998, - "dca.14.fdr": 114861275, - "dca.14.$solo": 1838946208, - "dca.14.$sololed": 3930448219, - "dca.14.mon": 3932512638, - "dca.15": 35169508, - "dca.15.name": 273635339, - "dca.15.col": 2861338554, - "dca.15.icon": 1698325496, - "dca.15.led": 647227794, - "dca.15.mute": 2383573921, - "dca.15.fdr": 4043713134, - "dca.15.$solo": 1451332915, - "dca.15.$sololed": 1529649932, - "dca.15.mon": 3182369177, - "dca.16": 270691138, - "dca.16.name": 345566062, - "dca.16.col": 2378765759, - "dca.16.icon": 3891571327, - "dca.16.led": 749284815, - "dca.16.mute": 123107748, - "dca.16.fdr": 3466266352, - "dca.16.$solo": 1737546038, - "dca.16.$sololed": 2343214486, - "dca.16.mon": 2490557316, - "mgrp": 3528604043, - "mgrp.1": 562090531, - "mgrp.1.name": 249011923, - "mgrp.1.mute": 1635172624, - "mgrp.2": 593394488, - "mgrp.2.name": 3416133868, - "mgrp.2.mute": 4263699719, - "mgrp.3": 3577493653, - "mgrp.3.name": 3378536297, - "mgrp.3.mute": 4079038426, - "mgrp.4": 4145693436, - "mgrp.4.name": 1793661762, - "mgrp.4.mute": 1197589456, - "mgrp.5": 4019726409, - "mgrp.5.name": 3612699656, - "mgrp.5.mute": 1819348852, - "mgrp.6": 764281539, - "mgrp.6.name": 79673166, - "mgrp.6.mute": 334925169, - "mgrp.7": 3790359512, - "mgrp.7.name": 1927559806, - "mgrp.7.mute": 953080245, - "mgrp.8": 3820358562, - "mgrp.8.name": 3722327428, - "mgrp.8.mute": 2102488571, - "fx": 1195151668, - "fx.1": 2787416750, - "fx.1.mdl": 3053623045, - "fx.1.fxmix": 3336625407, - "fx.1.$esrc": 1479358439, - "fx.1.$emode": 3036584470, - "fx.1.$a_chn": 3345844780, - "fx.1.$a_pos": 1407322036, - "fx.1.1": 638586229, - "fx.1.2": 2106871542, - "fx.1.3": 3003549763, - "fx.1.4": 2593130290, - "fx.1.5": 1298274447, - "fx.1.6": 864042517, - "fx.1.7": 1718951830, - "fx.1.8": 1575837804, - "fx.1.9": 12376018, - "fx.1.10": 1029870699, - "fx.1.11": 2561060294, - "fx.1.12": 4025945244, - "fx.1.13": 1120312863, - "fx.1.14": 3281165613, - "fx.1.15": 3217512027, - "fx.1.16": 2780658657, - "fx.1.17": 1459608892, - "fx.1.18": 2263709247, - "fx.1.19": 1931439560, - "fx.1.20": 2112111090, - "fx.1.21": 3502265165, - "fx.1.22": 675245208, - "fx.1.23": 1932004233, - "fx.1.24": 3316403428, - "fx.1.25": 494820327, - "fx.1.26": 1397232946, - "fx.1.27": 981079075, - "fx.1.28": 3955160446, - "fx.1.29": 1219430089, - "fx.1.30": 2447301363, - "fx.1.31": 900387468, - "fx.1.32": 2373948303, - "fx.1.33": 3950360853, - "fx.2": 4234758616, - "fx.2.mdl": 4057692408, - "fx.2.fxmix": 3294518387, - "fx.2.$esrc": 3129483552, - "fx.2.$emode": 1507381177, - "fx.2.$a_chn": 3455761488, - "fx.2.$a_pos": 1431625576, - "fx.2.1": 1935974864, - "fx.2.2": 2101258507, - "fx.2.3": 3278745694, - "fx.2.4": 223147431, - "fx.2.5": 2910584042, - "fx.2.6": 1868419696, - "fx.2.7": 3087563179, - "fx.2.8": 568818689, - "fx.2.9": 2719401543, - "fx.2.10": 1031543822, - "fx.2.11": 2245403475, - "fx.2.12": 2413636265, - "fx.2.13": 3758895746, - "fx.2.14": 3588978496, - "fx.2.15": 3222634110, - "fx.2.16": 35648516, - "fx.2.17": 2759785289, - "fx.2.18": 3934649890, - "fx.2.19": 884295653, - "fx.2.20": 546264591, - "fx.2.21": 549346656, - "fx.2.22": 2057135285, - "fx.2.23": 55355900, - "fx.2.24": 1395044673, - "fx.2.25": 1565897594, - "fx.2.26": 2738141903, - "fx.2.27": 3982753814, - "fx.2.28": 2411595611, - "fx.2.29": 3586461372, - "fx.2.30": 2515844326, - "fx.2.31": 1171482265, - "fx.2.32": 2348681586, - "fx.2.33": 2919751416, - "fx.3": 2309002218, - "fx.3.mdl": 808989077, - "fx.3.fxmix": 444235527, - "fx.3.$esrc": 1187439532, - "fx.3.$emode": 1549290782, - "fx.3.$a_chn": 3195526531, - "fx.3.$a_pos": 1255650379, - "fx.3.1": 2877664037, - "fx.3.2": 4178164230, - "fx.3.3": 932248755, - "fx.3.4": 353725762, - "fx.3.5": 3348934655, - "fx.3.6": 2914704005, - "fx.3.7": 3963586918, - "fx.3.8": 3652371612, - "fx.3.9": 2083994786, - "fx.3.10": 3080528987, - "fx.3.11": 505497366, - "fx.3.12": 1807513676, - "fx.3.13": 3191945871, - "fx.3.14": 1204300765, - "fx.3.15": 978120299, - "fx.3.16": 541268209, - "fx.3.17": 3536471980, - "fx.3.18": 207815279, - "fx.3.19": 4008311608, - "fx.3.20": 40810242, - "fx.3.21": 1425401277, - "fx.3.22": 2725906536, - "fx.3.23": 4176320761, - "fx.3.24": 1265744820, - "fx.3.25": 2566450455, - "fx.3.26": 3615338434, - "fx.3.27": 3036979283, - "fx.3.28": 1737057038, - "fx.3.29": 3458503097, - "fx.3.30": 229199235, - "fx.3.31": 2955953756, - "fx.3.32": 297074975, - "fx.3.33": 1873488805, - "fx.4": 3630499655, - "fx.4.mdl": 2482057085, - "fx.4.fxmix": 4184990013, - "fx.4.$esrc": 2476082224, - "fx.4.$emode": 2111413994, - "fx.4.$a_chn": 4248633611, - "fx.4.$a_pos": 1893898947, - "fx.4.1": 3553646685, - "fx.4.2": 567146382, - "fx.4.3": 1859567323, - "fx.4.4": 2899296026, - "fx.4.5": 75017847, - "fx.4.6": 376342781, - "fx.4.7": 1669122094, - "fx.4.8": 1903527300, - "fx.4.9": 4179529658, - "fx.4.10": 2490946179, - "fx.4.11": 3778451934, - "fx.4.12": 796866868, - "fx.4.13": 2267556103, - "fx.4.14": 2212571333, - "fx.4.15": 305065971, - "fx.4.16": 2753915513, - "fx.4.17": 4208855508, - "fx.4.18": 1216802727, - "fx.4.19": 2261776736, - "fx.4.20": 2039325834, - "fx.4.21": 3510014949, - "fx.4.22": 523197232, - "fx.4.23": 1547197297, - "fx.4.24": 3023436492, - "fx.4.25": 31386111, - "fx.4.26": 1318564170, - "fx.4.27": 2363535755, - "fx.4.28": 3818803430, - "fx.4.29": 826753073, - "fx.4.30": 3851455323, - "fx.4.31": 3964204324, - "fx.4.32": 972509943, - "fx.4.33": 200093053, - "fx.5": 3762066561, - "fx.5.mdl": 2905071706, - "fx.5.fxmix": 351235953, - "fx.5.$esrc": 382390181, - "fx.5.$emode": 3768810689, - "fx.5.$a_chn": 1274015246, - "fx.5.$a_pos": 3547472838, - "fx.5.1": 744950050, - "fx.5.2": 2084723385, - "fx.5.3": 3026191372, - "fx.5.4": 2486603269, - "fx.5.5": 1236557640, - "fx.5.6": 799685058, - "fx.5.7": 1741040473, - "fx.5.8": 1469699235, - "fx.5.9": 4246363813, - "fx.5.10": 968134076, - "fx.5.11": 2580526849, - "fx.5.12": 3919808587, - "fx.5.13": 1059314144, - "fx.5.14": 3426214882, - "fx.5.15": 3071479084, - "fx.5.16": 2634647462, - "fx.5.17": 1395087595, - "fx.5.18": 2409474688, - "fx.5.19": 1786492039, - "fx.5.20": 2174156221, - "fx.5.21": 3607809794, - "fx.5.22": 652933207, - "fx.5.23": 1996423758, - "fx.5.24": 3420083091, - "fx.5.25": 475538728, - "fx.5.26": 1416515197, - "fx.5.27": 877418612, - "fx.5.28": 3932662201, - "fx.5.29": 1239120654, - "fx.5.30": 2344379460, - "fx.5.31": 835702331, - "fx.5.32": 2521536464, - "fx.5.33": 4097929802, - "fx.6": 575041291, - "fx.6.mdl": 4246456745, - "fx.6.fxmix": 243060591, - "fx.6.$esrc": 1070185618, - "fx.6.$emode": 4245228710, - "fx.6.$a_chn": 936443528, - "fx.6.$a_pos": 2875104560, - "fx.6.1": 3270549545, - "fx.6.2": 1928249650, - "fx.6.3": 900512399, - "fx.6.4": 1437234422, - "fx.6.5": 2779268675, - "fx.6.6": 2141089993, - "fx.6.7": 1113321938, - "fx.6.8": 2454056360, - "fx.6.9": 2990777750, - "fx.6.10": 1973954271, - "fx.6.11": 275128362, - "fx.6.12": 3226484480, - "fx.6.13": 1884164267, - "fx.6.14": 587975273, - "fx.6.15": 4077503439, - "fx.6.16": 1291800149, - "fx.6.17": 2612883360, - "fx.6.18": 1604797387, - "fx.6.19": 2141518612, - "fx.6.20": 677581886, - "fx.6.21": 3630228873, - "fx.6.22": 2287918820, - "fx.6.23": 856201549, - "fx.6.24": 3808869016, - "fx.6.25": 2466549283, - "fx.6.26": 1438812030, - "fx.6.27": 1975534055, - "fx.6.28": 3296617266, - "fx.6.29": 1617441933, - "fx.6.30": 509980087, - "fx.6.31": 3173254384, - "fx.6.32": 1495359771, - "fx.6.33": 4212624289, - "fx.7": 1870339640, - "fx.7.mdl": 1674040530, - "fx.7.fxmix": 1774457665, - "fx.7.$esrc": 2711604832, - "fx.7.$emode": 2904720702, - "fx.7.$a_chn": 1909645777, - "fx.7.$a_pos": 4183765001, - "fx.7.1": 2554878762, - "fx.7.2": 1886061169, - "fx.7.3": 541193348, - "fx.7.4": 1751726861, - "fx.7.5": 1077957904, - "fx.7.6": 3863620234, - "fx.7.7": 2476487121, - "fx.7.8": 734208987, - "fx.7.9": 3013241453, - "fx.7.10": 1346361012, - "fx.7.11": 635595257, - "fx.7.12": 4256788483, - "fx.7.13": 3583019688, - "fx.7.14": 901238938, - "fx.7.15": 3448357860, - "fx.7.16": 1939052894, - "fx.7.17": 1228578659, - "fx.7.18": 4178688520, - "fx.7.19": 1089011711, - "fx.7.20": 722145141, - "fx.7.21": 48371066, - "fx.7.22": 3674843343, - "fx.7.23": 543182358, - "fx.7.24": 4169337179, - "fx.7.25": 3495563104, - "fx.7.26": 2155938485, - "fx.7.27": 3361228796, - "fx.7.28": 2650432321, - "fx.7.29": 1976658262, - "fx.7.30": 531134668, - "fx.7.31": 2815409843, - "fx.7.32": 2141303128, - "fx.7.33": 3182134994, - "fx.8": 4223803978, - "fx.8.mdl": 2736012537, - "fx.8.fxmix": 2665431338, - "fx.8.$esrc": 3026419839, - "fx.8.$emode": 3791313593, - "fx.8.$a_chn": 1144217223, - "fx.8.$a_pos": 3500948767, - "fx.8.1": 480863257, - "fx.8.2": 312863362, - "fx.8.3": 3858035007, - "fx.8.4": 4226921030, - "fx.8.5": 4137728243, - "fx.8.6": 546739065, - "fx.8.7": 4049844706, - "fx.8.8": 3880696728, - "fx.8.9": 33259942, - "fx.8.10": 3332431759, - "fx.8.11": 1864197690, - "fx.8.12": 1700293872, - "fx.8.13": 268759899, - "fx.8.14": 3456382041, - "fx.8.15": 1230027551, - "fx.8.16": 4081530277, - "fx.8.17": 3955637328, - "fx.8.18": 3109993915, - "fx.8.19": 3568174020, - "fx.8.20": 2292881294, - "fx.8.21": 2203688505, - "fx.8.22": 693511412, - "fx.8.23": 2450613757, - "fx.8.24": 1024322728, - "fx.8.25": 851245075, - "fx.8.26": 96042702, - "fx.8.27": 470335447, - "fx.8.28": 344278658, - "fx.8.29": 3206565181, - "fx.8.30": 1936556295, - "fx.8.31": 1584146176, - "fx.8.32": 68765803, - "fx.8.33": 1443832561, - "fx.9": 1402393044, - "fx.9.mdl": 3336133595, - "fx.9.fxmix": 3038782686, - "fx.9.$esrc": 3486921477, - "fx.9.$emode": 2710927129, - "fx.9.$a_chn": 56117168, - "fx.9.$a_pos": 2415514632, - "fx.9.1": 2456543979, - "fx.9.2": 306604976, - "fx.9.3": 3463473261, - "fx.9.4": 2924131108, - "fx.9.5": 779409361, - "fx.9.6": 1146532427, - "fx.9.7": 50371344, - "fx.9.8": 3270417594, - "fx.9.9": 1662575236, - "fx.9.10": 2658429117, - "fx.9.11": 2228159848, - "fx.9.12": 82112018, - "fx.9.13": 3574534713, - "fx.9.14": 3773390203, - "fx.9.15": 554916429, - "fx.9.16": 3072144583, - "fx.9.17": 964107634, - "fx.9.18": 4119676569, - "fx.9.19": 3585576166, - "fx.9.20": 3952176828, - "fx.9.21": 1807460187, - "fx.9.22": 999703574, - "fx.9.23": 3797151439, - "fx.9.24": 2989384570, - "fx.9.25": 844669249, - "fx.9.26": 3996294652, - "fx.9.27": 3462195381, - "fx.9.28": 1354153312, - "fx.9.29": 885847567, - "fx.9.30": 1995888613, - "fx.9.31": 1188109858, - "fx.9.32": 721100617, - "fx.9.33": 1493498307, - "fx.10": 2692914425, - "fx.10.mdl": 3896663012, - "fx.10.fxmix": 2931805625, - "fx.10.$esrc": 701300270, - "fx.10.$emode": 3874955365, - "fx.10.$a_chn": 2408130544, - "fx.10.$a_pos": 3590751448, - "fx.10.1": 1025972027, - "fx.10.2": 3186330708, - "fx.10.3": 280872407, - "fx.10.4": 1748173986, - "fx.10.5": 1663374840, - "fx.10.6": 558056806, - "fx.10.7": 3289889396, - "fx.10.8": 3148084210, - "fx.10.9": 420730189, - "fx.10.10": 811754265, - "fx.10.11": 2342995054, - "fx.10.12": 2197247411, - "fx.10.13": 3586550965, - "fx.10.14": 781372954, - "fx.10.15": 2999403892, - "fx.10.16": 951940366, - "fx.10.17": 2315224064, - "fx.10.18": 3790421333, - "fx.10.19": 371171002, - "fx.10.20": 954471197, - "fx.10.21": 2344624615, - "fx.10.22": 3141534484, - "fx.10.23": 2787639846, - "fx.10.24": 4172069816, - "fx.10.25": 2961100045, - "fx.10.26": 239603282, - "fx.10.27": 1031413031, - "fx.10.28": 515847318, - "fx.10.29": 2075052923, - "fx.10.30": 2229185553, - "fx.10.31": 2024454886, - "fx.10.32": 545206949, - "fx.10.33": 2792710719, - "fx.11": 4056198100, - "fx.11.mdl": 4245950662, - "fx.11.fxmix": 2462506239, - "fx.11.$esrc": 4218448332, - "fx.11.$emode": 188581719, - "fx.11.$a_chn": 1721208010, - "fx.11.$a_pos": 35288466, - "fx.11.1": 1565894967, - "fx.11.2": 2380642946, - "fx.11.3": 817510771, - "fx.11.4": 2285673166, - "fx.11.5": 2201375769, - "fx.11.6": 3585631015, - "fx.11.7": 764232818, - "fx.11.8": 3007658368, - "fx.11.9": 175426227, - "fx.11.10": 4151480575, - "fx.11.11": 1408683948, - "fx.11.12": 4110903102, - "fx.11.13": 1289127984, - "fx.11.14": 1231198597, - "fx.11.15": 2044164842, - "fx.11.16": 1607311436, - "fx.11.17": 2723116883, - "fx.11.18": 4198324432, - "fx.11.19": 758082085, - "fx.11.20": 3920876701, - "fx.11.21": 1099971938, - "fx.11.22": 2001718967, - "fx.11.23": 779618276, - "fx.11.24": 2143045966, - "fx.11.25": 1821302408, - "fx.11.26": 3289935837, - "fx.11.27": 2005544615, - "fx.11.28": 2802771924, - "fx.11.29": 67041593, - "fx.11.30": 3203296668, - "fx.11.31": 4001025121, - "fx.11.32": 1263492555, - "fx.11.33": 558199738, - "fx.12": 3063817062, - "fx.12.mdl": 994445376, - "fx.12.fxmix": 2604175509, - "fx.12.$esrc": 983529250, - "fx.12.$emode": 1475369449, - "fx.12.$a_chn": 2256728292, - "fx.12.$a_pos": 3438056476, - "fx.12.1": 1338941120, - "fx.12.2": 1113260019, - "fx.12.3": 2586818894, - "fx.12.4": 493992079, - "fx.12.5": 1872185818, - "fx.12.6": 4122308448, - "fx.12.7": 1300705427, - "fx.12.8": 2202789737, - "fx.12.9": 713550127, - "fx.12.10": 1916969594, - "fx.12.11": 3406218063, - "fx.12.12": 3176584305, - "fx.12.13": 354858438, - "fx.12.14": 3228740352, - "fx.12.15": 312949845, - "fx.12.16": 1889375180, - "fx.12.17": 3378488593, - "fx.12.18": 1984764451, - "fx.12.19": 2776595365, - "fx.12.20": 1891895715, - "fx.12.21": 3449842464, - "fx.12.22": 2367676466, - "fx.12.23": 3767015780, - "fx.12.24": 940354249, - "fx.12.25": 4108216734, - "fx.12.26": 1177025251, - "fx.12.27": 760881698, - "fx.12.28": 1662956407, - "fx.12.29": 3138327716, - "fx.12.30": 3611199807, - "fx.12.31": 176855009, - "fx.12.32": 1650424118, - "fx.12.33": 3897925368, - "fx.13": 1847616608, - "fx.13.mdl": 294587826, - "fx.13.fxmix": 1905708779, - "fx.13.$esrc": 1166829136, - "fx.13.$emode": 946044619, - "fx.13.$a_chn": 1989198718, - "fx.13.$a_pos": 3674127510, - "fx.13.1": 1879714529, - "fx.13.2": 1647961199, - "fx.13.3": 3123293498, - "fx.13.4": 3983425173, - "fx.13.5": 2409682438, - "fx.13.6": 3899256017, - "fx.13.7": 3845934636, - "fx.13.8": 1019273135, - "fx.13.9": 2376679045, - "fx.13.10": 2303880677, - "fx.13.11": 3688309962, - "fx.13.12": 879158780, - "fx.13.13": 2436265793, - "fx.13.14": 2294470806, - "fx.13.15": 699871189, - "fx.13.16": 3886896495, - "fx.13.17": 3828332188, - "fx.13.18": 1008551265, - "fx.13.19": 2408556235, - "fx.13.20": 689183534, - "fx.13.21": 2247109747, - "fx.13.22": 925885296, - "fx.13.23": 4132955399, - "fx.13.24": 1411171892, - "fx.13.25": 2884556057, - "fx.13.26": 4269272675, - "fx.13.27": 3110752224, - "fx.13.28": 2028913906, - "fx.13.29": 3420378660, - "fx.13.30": 4266570877, - "fx.13.31": 3269110124, - "fx.13.32": 447691441, - "fx.13.33": 1621463627, - "fx.14": 3247785407, - "fx.14.mdl": 3914497868, - "fx.14.fxmix": 2799525729, - "fx.14.$esrc": 683444614, - "fx.14.$emode": 3901991981, - "fx.14.$a_chn": 1302264360, - "fx.14.$a_pos": 118698816, - "fx.14.1": 4232267938, - "fx.14.2": 1468172797, - "fx.14.3": 2942212907, - "fx.14.4": 2716030086, - "fx.14.5": 1247105940, - "fx.14.6": 139163970, - "fx.14.7": 87644824, - "fx.14.8": 1555798859, - "fx.14.9": 2914004134, - "fx.14.10": 2980192523, - "fx.14.11": 48673416, - "fx.14.12": 1329025439, - "fx.14.13": 2802225868, - "fx.14.14": 4208118801, - "fx.14.15": 1376213755, - "fx.14.16": 2952626349, - "fx.14.17": 1530888767, - "fx.14.18": 2922209505, - "fx.14.19": 2774506038, - "fx.14.20": 1159980713, - "fx.14.21": 2634031102, - "fx.14.22": 4018142960, - "fx.14.23": 577245253, - "fx.14.24": 2045530538, - "fx.14.25": 3166627481, - "fx.14.26": 361234414, - "fx.14.27": 1908019507, - "fx.14.28": 3271490096, - "fx.14.29": 4075762586, - "fx.14.30": 421426685, - "fx.14.31": 1240127298, - "fx.14.32": 2629800087, - "fx.14.33": 1924486091, - "fx.15": 420304650, - "fx.15.mdl": 159548462, - "fx.15.fxmix": 2521656583, - "fx.15.$esrc": 1068632676, - "fx.15.$emode": 1557930687, - "fx.15.$a_chn": 2496396034, - "fx.15.$a_pos": 3512960058, - "fx.15.1": 477216462, - "fx.15.2": 2003695641, - "fx.15.3": 3471693556, - "fx.15.4": 3252545650, - "fx.15.5": 441633229, - "fx.15.6": 2664742579, - "fx.15.7": 4138629134, - "fx.15.8": 1206946148, - "fx.15.9": 1143263847, - "fx.15.10": 3954347126, - "fx.15.11": 456576520, - "fx.15.12": 1984356189, - "fx.15.13": 1494676591, - "fx.15.14": 279088529, - "fx.15.15": 1847028838, - "fx.15.16": 739089448, - "fx.15.17": 596618621, - "fx.15.18": 3330089580, - "fx.15.19": 560946097, - "fx.15.20": 1794390543, - "fx.15.21": 231747961, - "fx.15.22": 110084803, - "fx.15.23": 985145792, - "fx.15.24": 2348593941, - "fx.15.25": 3821948031, - "fx.15.26": 2421713769, - "fx.15.27": 2294951102, - "fx.15.28": 3679370160, - "fx.15.29": 188675333, - "fx.15.30": 3492712824, - "fx.15.31": 582666957, - "fx.15.32": 1385126930, - "fx.15.33": 2558886281, - "fx.16": 1977380921, - "fx.16.mdl": 387684232, - "fx.16.fxmix": 1824460125, - "fx.16.$esrc": 937513146, - "fx.16.$emode": 1343173393, - "fx.16.$a_chn": 2270954908, - "fx.16.$a_pos": 3371410020, - "fx.16.1": 2309439129, - "fx.16.2": 150420954, - "fx.16.3": 1539755829, - "fx.16.4": 3029534208, - "fx.16.5": 281495347, - "fx.16.6": 1857907908, - "fx.16.7": 268397562, - "fx.16.8": 1743584597, - "fx.16.9": 1679767171, - "fx.16.10": 2709691894, - "fx.16.11": 3611766619, - "fx.16.12": 2392256728, - "fx.16.13": 3781601197, - "fx.16.14": 1018345719, - "fx.16.15": 602355681, - "fx.16.16": 1105026427, - "fx.16.17": 2510274301, - "fx.16.18": 3985471554, - "fx.16.19": 3921643927, - "fx.16.20": 2097413002, - "fx.16.21": 3571473596, - "fx.16.22": 828370433, - "fx.16.23": 2982669587, - "fx.16.24": 72132240, - "fx.16.25": 4229851130, - "fx.16.26": 1466431183, - "fx.16.27": 2845464572, - "fx.16.28": 1381945219, - "fx.16.29": 2270105728, - "fx.16.30": 1484691214, - "fx.16.31": 969575496, - "fx.16.32": 1855942034, - "fx.16.33": 3029703924, - "cards": 3022614473, - "cards.$type": 4170489798, - "cards.$ver": 3721045584, - "cards.wlive": 2864518334, - "cards.wlive.sdlink": 2744763019, - "cards.wlive.$actlink": 56609892, - "cards.wlive.$battstate": 832051059, - "cards.wlive.autoin": 2197301952, - "cards.wlive.meters": 2954308811, - "cards.wlive.auto_stop": 4206185866, - "cards.wlive.auto_play": 914533740, - "cards.wlive.auto_rec": 446085148, - "cards.wlive.1": 3425561350, - "cards.wlive.1.$ctl": 3137126534, - "cards.wlive.1.$ctl.control": 1033397180, - "cards.wlive.1.$ctl.opensession": 4136888808, - "cards.wlive.1.$ctl.editmarker": 284072806, - "cards.wlive.1.$ctl.gotomarker": 2294408330, - "cards.wlive.1.$ctl.deletemarker": 1384006910, - "cards.wlive.1.$ctl.deletesession": 3423337695, - "cards.wlive.1.$ctl.stime": 1414547887, - "cards.wlive.1.$ctl.namesession": 1392996938, - "cards.wlive.1.$ctl.setmarker": 2765006130, - "cards.wlive.1.$ctl.formatsdcard": 444441614, - "cards.wlive.1.cfg": 2957492789, - "cards.wlive.1.cfg.rectracks": 1571541925, - "cards.wlive.1.cfg.playmode": 1911696243, - "cards.wlive.1.$stat": 697334989, - "cards.wlive.1.$stat.state": 3710761850, - "cards.wlive.1.$stat.etime": 4161835315, - "cards.wlive.1.$stat.sdfree": 458671745, - "cards.wlive.1.$stat.sdsize": 2319063766, - "cards.wlive.1.$stat.sdstate": 4087936643, - "cards.wlive.1.$stat.sessionlist": 1218866222, - "cards.wlive.1.$stat.markerlist": 2591677902, - "cards.wlive.1.$stat.snamelist": 4008077656, - "cards.wlive.1.$stat.sessions": 2187837112, - "cards.wlive.1.$stat.markers": 2207405787, - "cards.wlive.1.$stat.sessionlen": 3879165348, - "cards.wlive.1.$stat.sessionpos": 2916043921, - "cards.wlive.1.$stat.markerpos": 1296400300, - "cards.wlive.1.$stat.tracks": 3818974845, - "cards.wlive.1.$stat.rate": 1706021408, - "cards.wlive.1.$stat.linkedpos": 3551318073, - "cards.wlive.1.$stat.start": 465652880, - "cards.wlive.1.$stat.stop": 2643804146, - "cards.wlive.1.$stat.errormessage": 199554682, - "cards.wlive.1.$stat.errorcode": 3310296622, - "cards.wlive.2": 2640376612, - "cards.wlive.2.$ctl": 2764890920, - "cards.wlive.2.$ctl.control": 4133033363, - "cards.wlive.2.$ctl.opensession": 1037784270, - "cards.wlive.2.$ctl.editmarker": 936250173, - "cards.wlive.2.$ctl.gotomarker": 2109165812, - "cards.wlive.2.$ctl.deletemarker": 2071784605, - "cards.wlive.2.$ctl.deletesession": 1160530450, - "cards.wlive.2.$ctl.stime": 432397357, - "cards.wlive.2.$ctl.namesession": 1350969368, - "cards.wlive.2.$ctl.setmarker": 941605722, - "cards.wlive.2.$ctl.formatsdcard": 1780405559, - "cards.wlive.2.cfg": 3554536431, - "cards.wlive.2.cfg.rectracks": 932505390, - "cards.wlive.2.cfg.playmode": 3802902571, - "cards.wlive.2.$stat": 1654598923, - "cards.wlive.2.$stat.state": 1266427474, - "cards.wlive.2.$stat.etime": 1851191476, - "cards.wlive.2.$stat.sdfree": 3793387392, - "cards.wlive.2.$stat.sdsize": 2621747444, - "cards.wlive.2.$stat.sdstate": 605407785, - "cards.wlive.2.$stat.sessionlist": 1224833615, - "cards.wlive.2.$stat.markerlist": 4147273786, - "cards.wlive.2.$stat.snamelist": 185151909, - "cards.wlive.2.$stat.sessions": 1347421584, - "cards.wlive.2.$stat.markers": 2902155329, - "cards.wlive.2.$stat.sessionlen": 2812694405, - "cards.wlive.2.$stat.sessionpos": 438322704, - "cards.wlive.2.$stat.markerpos": 4020715608, - "cards.wlive.2.$stat.tracks": 1055007962, - "cards.wlive.2.$stat.rate": 2741725823, - "cards.wlive.2.$stat.linkedpos": 2797831316, - "cards.wlive.2.$stat.start": 2587593439, - "cards.wlive.2.$stat.stop": 3419880733, - "cards.wlive.2.$stat.errormessage": 139654334, - "cards.wlive.2.$stat.errorcode": 1069919063, - "play": 1462336040, - "play.$songs": 3916342408, - "play.$actlist": 2822480829, - "play.$actidx": 245405621, - "play.$actionidx": 3574440540, - "play.$playfile": 3862443209, - "play.$action": 2771670788, - "play.$actstate": 2225191856, - "play.$actfile": 2847898926, - "play.$song": 3329294838, - "play.$album": 3406343419, - "play.$artist": 1385169584, - "play.$pos": 2694898106, - "play.$total": 3912486835, - "play.$resolution": 1765648076, - "play.$channels": 1976662424, - "play.$rate": 2548353508, - "play.$format": 2307197487, - "play.repeat": 3096358146, - "rec": 4205934124, - "rec.$actstate": 1774582748, - "rec.$actfile": 1154106729, - "rec.$action": 1748867732, - "rec.$path": 2391767447, - "rec.resolution": 2213203016, - "rec.channels": 3325752508, - "rec.$time": 1863692338, - "$ctl": 3417919811, - "$ctl.$stat": 2950713648, - "$ctl.$stat.selidx": 2276326972, - "$ctl.$stat.pageidx": 2049124541, - "$ctl.$stat.bandidx": 4153862935, - "$ctl.$stat.sof": 1937174444, - "$ctl.$stat.cnslock": 270220891, - "$ctl.$stat.sendpage": 3830463421, - "$ctl.$stat.chsetuptab": 1558977068, - "$ctl.cfg": 809128819, - "$ctl.cfg.lights": 3281923494, - "$ctl.cfg.lights.btns": 497412772, - "$ctl.cfg.lights.leds": 1202367537, - "$ctl.cfg.lights.meters": 1936446862, - "$ctl.cfg.lights.rgbleds": 2888464783, - "$ctl.cfg.lights.chlcds": 2288948392, - "$ctl.cfg.lights.chlcdctr": 1764311180, - "$ctl.cfg.lights.chedit": 4286801885, - "$ctl.cfg.lights.main": 3678999368, - "$ctl.cfg.lights.glow": 2100788954, - "$ctl.cfg.lights.patch": 925748928, - "$ctl.cfg.lights.lamp": 2916824931, - "$ctl.cfg.rta": 1248487436, - "$ctl.cfg.rta.homedisp": 4222707062, - "$ctl.cfg.rta.homecol": 2087690592, - "$ctl.cfg.rta.hometap": 2673002907, - "$ctl.cfg.rta.eqdisp": 3905505020, - "$ctl.cfg.rta.eqcol": 1554458770, - "$ctl.cfg.rta.cheqtap": 3939919747, - "$ctl.cfg.rta.chflttap": 3613916103, - "$ctl.cfg.muteovr": 2987841935, - "$ctl.cfg.soloexcl": 3971963002, - "$ctl.cfg.selfsolo": 4141265248, - "$ctl.cfg.solofsel": 2065993942, - "$ctl.cfg.sof2solo": 2945234112, - "$ctl.cfg.layerlinkl": 3814084234, - "$ctl.cfg.layerlinkr": 3857049418, - "$ctl.cfg.autoview": 1471846433, - "$ctl.cfg.csctouch": 1393420978, - "$ctl.cfg.autosel_L": 3453988326, - "$ctl.cfg.autosel_C": 3772307244, - "$ctl.cfg.autosel_R": 3627856593, - "$ctl.cfg.autosel_CMPCT": 1288622624, - "$ctl.cfg.autosel_RCK": 927930808, - "$ctl.cfg.autosel_EXT": 971967370, - "$ctl.cfg.autosel_VRT": 1274509360, - "$ctl.cfg.fdrbanking": 3196630773, - "$ctl.cfg.soffdr": 686699637, - "$ctl.cfg.sofbutton": 2765933692, - "$ctl.cfg.sofframe": 343976029, - "$ctl.cfg.sofmode": 3615961093, - "$ctl.cfg.seldblclick": 2680030592, - "$ctl.cfg.usrmode": 3630687522, - "$ctl.cfg.mfdr": 2467207710, - "$ctl.cfg.cscmode": 3946776011, - "$ctl.cfg.rackmode": 2278073943, - "$ctl.cfg.busspill": 1707427917, - "$ctl.cfg.mainspill": 1422750302, - "$ctl.cfg.mtxspill": 410600661, - "$ctl.cfg.dcaspill": 2018000858, - "$ctl.cfg.dcacc": 1486107420, - "$ctl.cfg.showfdr": 1493221151, - "$ctl.layer": 3844831562, - "$ctl.layer.L": 3646854414, - "$ctl.layer.L.sel": 3071491808, - "$ctl.layer.L.spidx": 2200838274, - "$ctl.layer.L.1": 1824061710, - "$ctl.layer.L.1.ofs": 413324114, - "$ctl.layer.L.1.name": 3236275090, - "$ctl.layer.L.1.1": 3561803244, - "$ctl.layer.L.1.1.type": 2193511330, - "$ctl.layer.L.1.1.i": 526598194, - "$ctl.layer.L.1.1.dst": 2928586304, - "$ctl.layer.L.1.1.1": 1171304696, - "$ctl.layer.L.1.2": 3238460474, - "$ctl.layer.L.1.2.type": 574316208, - "$ctl.layer.L.1.2.i": 4237620239, - "$ctl.layer.L.1.2.dst": 2003363445, - "$ctl.layer.L.1.2.1": 2063597045, - "$ctl.layer.L.1.3": 2105760613, - "$ctl.layer.L.1.3.type": 3275557384, - "$ctl.layer.L.1.3.i": 3168274943, - "$ctl.layer.L.1.3.dst": 939792005, - "$ctl.layer.L.1.3.1": 3192173221, - "$ctl.layer.L.1.4": 1392348176, - "$ctl.layer.L.1.4.type": 689437178, - "$ctl.layer.L.1.4.i": 2525302580, - "$ctl.layer.L.1.4.dst": 626713078, - "$ctl.layer.L.1.4.1": 2098848334, - "$ctl.layer.L.1.5": 573903630, - "$ctl.layer.L.1.5.type": 393156366, - "$ctl.layer.L.1.5.i": 1508421793, - "$ctl.layer.L.1.5.dst": 3401647179, - "$ctl.layer.L.1.5.1": 3682287611, - "$ctl.layer.L.1.6": 1370444668, - "$ctl.layer.L.1.6.type": 413072365, - "$ctl.layer.L.1.6.i": 1103728198, - "$ctl.layer.L.1.6.dst": 3002359860, - "$ctl.layer.L.1.6.1": 1127638028, - "$ctl.layer.L.1.7": 1110160079, - "$ctl.layer.L.1.7.type": 3220214349, - "$ctl.layer.L.1.7.i": 4251985078, - "$ctl.layer.L.1.7.dst": 1855567940, - "$ctl.layer.L.1.7.1": 922913788, - "$ctl.layer.L.1.8": 417718517, - "$ctl.layer.L.1.8.type": 3772084235, - "$ctl.layer.L.1.8.i": 3661482739, - "$ctl.layer.L.1.8.dst": 1600773513, - "$ctl.layer.L.1.8.1": 2477453497, - "$ctl.layer.L.1.9": 3495823392, - "$ctl.layer.L.1.9.type": 3582619878, - "$ctl.layer.L.1.9.i": 1763884472, - "$ctl.layer.L.1.9.dst": 4160303306, - "$ctl.layer.L.1.9.1": 2861577074, - "$ctl.layer.L.1.10": 1824319548, - "$ctl.layer.L.1.10.type": 35152299, - "$ctl.layer.L.1.10.i": 4055253552, - "$ctl.layer.L.1.10.dst": 3322719799, - "$ctl.layer.L.1.10.1": 1478735870, - "$ctl.layer.L.1.11": 3292798057, - "$ctl.layer.L.1.11.type": 4209309189, - "$ctl.layer.L.1.11.i": 296614956, - "$ctl.layer.L.1.11.dst": 4019261249, - "$ctl.layer.L.1.11.1": 2015049130, - "$ctl.layer.L.1.12": 2504705739, - "$ctl.layer.L.1.12.type": 3324029423, - "$ctl.layer.L.1.12.i": 161678815, - "$ctl.layer.L.1.12.dst": 1926831979, - "$ctl.layer.L.1.12.1": 470826885, - "$ctl.layer.L.1.13": 2672978165, - "$ctl.layer.L.1.13.type": 3200762441, - "$ctl.layer.L.1.13.i": 698363230, - "$ctl.layer.L.1.13.dst": 4218744037, - "$ctl.layer.L.1.13.1": 1007197700, - "$ctl.layer.L.1.14": 4099161682, - "$ctl.layer.L.1.14.type": 3793028947, - "$ctl.layer.L.1.14.i": 143996729, - "$ctl.layer.L.1.14.dst": 3385148959, - "$ctl.layer.L.1.14.1": 788365239, - "$ctl.layer.L.1.15": 3931862943, - "$ctl.layer.L.1.15.type": 4133806989, - "$ctl.layer.L.1.15.i": 2559396064, - "$ctl.layer.L.1.15.dst": 2022541449, - "$ctl.layer.L.1.15.1": 1324691411, - "$ctl.layer.L.1.16": 1063417084, - "$ctl.layer.L.1.16.type": 3091190135, - "$ctl.layer.L.1.16.i": 2382495174, - "$ctl.layer.L.1.16.dst": 4278435411, - "$ctl.layer.L.1.16.1": 2758429580, - "$ctl.layer.L.1.17": 3605641819, - "$ctl.layer.L.1.17.type": 81334097, - "$ctl.layer.L.1.17.i": 2918831538, - "$ctl.layer.L.1.17.dst": 4199898797, - "$ctl.layer.L.1.17.1": 3295083384, - "$ctl.layer.L.1.18": 485204808, - "$ctl.layer.L.1.18.type": 3773189787, - "$ctl.layer.L.1.18.i": 2783874765, - "$ctl.layer.L.1.18.dst": 3927848167, - "$ctl.layer.L.1.18.1": 1750849467, - "$ctl.layer.L.1.19": 2666884850, - "$ctl.layer.L.1.19.type": 4087192821, - "$ctl.layer.L.1.19.i": 3320244460, - "$ctl.layer.L.1.19.dst": 1940247921, - "$ctl.layer.L.1.19.1": 2287216490, - "$ctl.layer.L.1.20": 3415387937, - "$ctl.layer.L.1.20.type": 1774324681, - "$ctl.layer.L.1.20.i": 3477861685, - "$ctl.layer.L.1.20.dst": 2515505379, - "$ctl.layer.L.1.20.1": 230096611, - "$ctl.layer.L.1.21": 2033510868, - "$ctl.layer.L.1.21.type": 2251654655, - "$ctl.layer.L.1.21.i": 1865069857, - "$ctl.layer.L.1.21.dst": 2761835641, - "$ctl.layer.L.1.21.1": 2917494511, - "$ctl.layer.L.1.22": 915280518, - "$ctl.layer.L.1.22.type": 1234626958, - "$ctl.layer.L.1.22.i": 3553874650, - "$ctl.layer.L.1.22.dst": 1795166463, - "$ctl.layer.L.1.22.1": 1379830912, - "$ctl.layer.L.1.23": 3912277280, - "$ctl.layer.L.1.23.type": 1061800756, - "$ctl.layer.L.1.23.i": 4089078147, - "$ctl.layer.L.1.23.dst": 2021145813, - "$ctl.layer.L.1.23.1": 4068109129, - "$ctl.layer.L.1.24": 2525300375, - "$ctl.layer.L.1.24.type": 2377969873, - "$ctl.layer.L.1.24.i": 1399029556, - "$ctl.layer.L.1.24.dst": 2598906219, - "$ctl.layer.L.1.24.1": 1372797154, - "$ctl.layer.L.2": 1026906157, - "$ctl.layer.L.2.ofs": 1455449943, - "$ctl.layer.L.2.name": 1034672521, - "$ctl.layer.L.2.1": 3675772445, - "$ctl.layer.L.2.1.type": 3294587095, - "$ctl.layer.L.2.1.i": 2394727541, - "$ctl.layer.L.2.1.dst": 4288239295, - "$ctl.layer.L.2.1.1": 4115797903, - "$ctl.layer.L.2.2": 3213997704, - "$ctl.layer.L.2.2.type": 4255227311, - "$ctl.layer.L.2.2.i": 991540005, - "$ctl.layer.L.2.2.dst": 2884640719, - "$ctl.layer.L.2.2.1": 4189014399, - "$ctl.layer.L.2.3": 2500738310, - "$ctl.layer.L.2.3.type": 1365843985, - "$ctl.layer.L.2.3.i": 2234341514, - "$ctl.layer.L.2.3.dst": 411080, - "$ctl.layer.L.2.3.1": 2747308400, - "$ctl.layer.L.2.4": 2219338865, - "$ctl.layer.L.2.4.type": 3330159193, - "$ctl.layer.L.2.4.i": 1651502642, - "$ctl.layer.L.2.4.dst": 4053244992, - "$ctl.layer.L.2.4.1": 14533368, - "$ctl.layer.L.2.5": 1002466556, - "$ctl.layer.L.2.5.type": 3180204704, - "$ctl.layer.L.2.5.i": 1656324295, - "$ctl.layer.L.2.5.dst": 4058272317, - "$ctl.layer.L.2.5.1": 19299341, - "$ctl.layer.L.2.6": 4055238648, - "$ctl.layer.L.2.6.type": 52218303, - "$ctl.layer.L.2.6.i": 1838928497, - "$ctl.layer.L.2.6.dst": 4072817723, - "$ctl.layer.L.2.6.1": 3020496907, - "$ctl.layer.L.2.7": 1647347323, - "$ctl.layer.L.2.7.type": 1148108657, - "$ctl.layer.L.2.7.i": 2091694241, - "$ctl.layer.L.2.7.dst": 30493771, - "$ctl.layer.L.2.7.1": 2736191483, - "$ctl.layer.L.2.8": 955059942, - "$ctl.layer.L.2.8.type": 156495337, - "$ctl.layer.L.2.8.i": 1208598222, - "$ctl.layer.L.2.8.dst": 3610382732, - "$ctl.layer.L.2.8.1": 3463724212, - "$ctl.layer.L.2.9": 4033298001, - "$ctl.layer.L.2.9.type": 1040442715, - "$ctl.layer.L.2.9.i": 630993283, - "$ctl.layer.L.2.9.dst": 2697192697, - "$ctl.layer.L.2.9.1": 70352713, - "$ctl.layer.L.2.10": 1365477611, - "$ctl.layer.L.2.10.type": 3123738811, - "$ctl.layer.L.2.10.i": 561226447, - "$ctl.layer.L.2.10.dst": 1296538178, - "$ctl.layer.L.2.10.1": 2114523433, - "$ctl.layer.L.2.11": 652311582, - "$ctl.layer.L.2.11.type": 2825081665, - "$ctl.layer.L.2.11.i": 25204987, - "$ctl.layer.L.2.11.dst": 1858233928, - "$ctl.layer.L.2.11.1": 1578491733, - "$ctl.layer.L.2.12": 4041302620, - "$ctl.layer.L.2.12.type": 2829594727, - "$ctl.layer.L.2.12.i": 1501667968, - "$ctl.layer.L.2.12.dst": 1038846670, - "$ctl.layer.L.2.12.1": 3390499034, - "$ctl.layer.L.2.13": 1860158314, - "$ctl.layer.L.2.13.type": 3202886365, - "$ctl.layer.L.2.13.i": 965838793, - "$ctl.layer.L.2.13.dst": 508533492, - "$ctl.layer.L.2.13.1": 2854353667, - "$ctl.layer.L.2.14": 1188749997, - "$ctl.layer.L.2.14.type": 3868937971, - "$ctl.layer.L.2.14.i": 2777846094, - "$ctl.layer.L.2.14.dst": 1233111130, - "$ctl.layer.L.2.14.1": 203611304, - "$ctl.layer.L.2.15": 3636777152, - "$ctl.layer.L.2.15.type": 2899011737, - "$ctl.layer.L.2.15.i": 1973412735, - "$ctl.layer.L.2.15.dst": 435881792, - "$ctl.layer.L.2.15.1": 3962554580, - "$ctl.layer.L.2.16": 2797934635, - "$ctl.layer.L.2.16.type": 2431641119, - "$ctl.layer.L.2.16.i": 4246774593, - "$ctl.layer.L.2.16.dst": 660886310, - "$ctl.layer.L.2.16.1": 163899803, - "$ctl.layer.L.2.17": 1011032620, - "$ctl.layer.L.2.17.type": 3077546805, - "$ctl.layer.L.2.17.i": 3710596941, - "$ctl.layer.L.2.17.dst": 529694060, - "$ctl.layer.L.2.17.1": 3921696135, - "$ctl.layer.L.2.18": 4131275191, - "$ctl.layer.L.2.18.type": 3890393579, - "$ctl.layer.L.2.18.i": 893383218, - "$ctl.layer.L.2.18.dst": 1905123570, - "$ctl.layer.L.2.18.1": 1440038252, - "$ctl.layer.L.2.19": 1278480909, - "$ctl.layer.L.2.19.type": 3394192817, - "$ctl.layer.L.2.19.i": 356091963, - "$ctl.layer.L.2.19.dst": 979567864, - "$ctl.layer.L.2.19.1": 902744469, - "$ctl.layer.L.2.20": 3440072507, - "$ctl.layer.L.2.20.type": 3333576832, - "$ctl.layer.L.2.20.i": 3441209631, - "$ctl.layer.L.2.20.dst": 191449061, - "$ctl.layer.L.2.20.1": 28460921, - "$ctl.layer.L.2.21": 4213530062, - "$ctl.layer.L.2.21.type": 3506785138, - "$ctl.layer.L.2.21.i": 758624779, - "$ctl.layer.L.2.21.dst": 65294415, - "$ctl.layer.L.2.21.1": 1640822885, - "$ctl.layer.L.2.22": 3307819884, - "$ctl.layer.L.2.22.type": 254436684, - "$ctl.layer.L.2.22.i": 1438946416, - "$ctl.layer.L.2.22.dst": 988648193, - "$ctl.layer.L.2.22.1": 509205130, - "$ctl.layer.L.2.23": 2592320090, - "$ctl.layer.L.2.23.type": 4052344014, - "$ctl.layer.L.2.23.i": 904521241, - "$ctl.layer.L.2.23.dst": 846320683, - "$ctl.layer.L.2.23.1": 2122243155, - "$ctl.layer.L.2.24": 3407741181, - "$ctl.layer.L.2.24.type": 3407688504, - "$ctl.layer.L.2.24.i": 3510028350, - "$ctl.layer.L.2.24.dst": 117557533, - "$ctl.layer.L.2.24.1": 265031320, - "$ctl.layer.L.3": 4084162080, - "$ctl.layer.L.3.ofs": 2296849361, - "$ctl.layer.L.3.name": 3533860380, - "$ctl.layer.L.3.1": 2871093670, - "$ctl.layer.L.3.1.type": 3164007833, - "$ctl.layer.L.3.1.i": 101803611, - "$ctl.layer.L.3.1.dst": 2498386081, - "$ctl.layer.L.3.1.1": 1602000257, - "$ctl.layer.L.3.2": 1603834420, - "$ctl.layer.L.3.2.type": 874475864, - "$ctl.layer.L.3.2.i": 2304153376, - "$ctl.layer.L.3.2.dst": 4197540802, - "$ctl.layer.L.3.2.1": 2864932218, - "$ctl.layer.L.3.3": 890442119, - "$ctl.layer.L.3.3.type": 1944547235, - "$ctl.layer.L.3.3.i": 2566724789, - "$ctl.layer.L.3.3.dst": 165063167, - "$ctl.layer.L.3.3.1": 2593101135, - "$ctl.layer.L.3.4": 2756687885, - "$ctl.layer.L.3.4.type": 2197705514, - "$ctl.layer.L.3.4.i": 1996915250, - "$ctl.layer.L.3.4.dst": 4058198080, - "$ctl.layer.L.3.4.1": 2963025656, - "$ctl.layer.L.3.5": 1539948408, - "$ctl.layer.L.3.5.type": 2181855709, - "$ctl.layer.L.3.5.i": 910955714, - "$ctl.layer.L.3.5.dst": 2977031728, - "$ctl.layer.L.3.5.1": 4105758728, - "$ctl.layer.L.3.6": 847322619, - "$ctl.layer.L.3.6.type": 2693855463, - "$ctl.layer.L.3.6.i": 3512507167, - "$ctl.layer.L.3.6.dst": 1283534309, - "$ctl.layer.L.3.6.1": 1472665157, - "$ctl.layer.L.3.7": 3539691716, - "$ctl.layer.L.3.7.type": 2803357584, - "$ctl.layer.L.3.7.i": 3308535604, - "$ctl.layer.L.3.7.dst": 1415557622, - "$ctl.layer.L.3.7.1": 2664018510, - "$ctl.layer.L.3.8": 2994214679, - "$ctl.layer.L.3.8.type": 2244354782, - "$ctl.layer.L.3.8.i": 929221316, - "$ctl.layer.L.3.8.dst": 2822569510, - "$ctl.layer.L.3.8.1": 4260750878, - "$ctl.layer.L.3.9": 565311042, - "$ctl.layer.L.3.9.type": 668798502, - "$ctl.layer.L.3.9.i": 1655189617, - "$ctl.layer.L.3.9.dst": 3553329723, - "$ctl.layer.L.3.9.1": 557498891, - "$ctl.layer.L.3.10": 4078640845, - "$ctl.layer.L.3.10.type": 383617442, - "$ctl.layer.L.3.10.i": 856319209, - "$ctl.layer.L.3.10.dst": 2214684171, - "$ctl.layer.L.3.10.1": 3598028559, - "$ctl.layer.L.3.11": 497166816, - "$ctl.layer.L.3.11.type": 504440508, - "$ctl.layer.L.3.11.i": 2466409165, - "$ctl.layer.L.3.11.dst": 552603589, - "$ctl.layer.L.3.11.1": 918368579, - "$ctl.layer.L.3.12": 1408016466, - "$ctl.layer.L.3.12.type": 1390547590, - "$ctl.layer.L.3.12.i": 3942736014, - "$ctl.layer.L.3.12.dst": 1932828399, - "$ctl.layer.L.3.12.1": 980166388, - "$ctl.layer.L.3.13": 636738964, - "$ctl.layer.L.3.13.type": 1512966688, - "$ctl.layer.L.3.13.i": 3404863919, - "$ctl.layer.L.3.13.dst": 4020426969, - "$ctl.layer.L.3.13.1": 2595006741, - "$ctl.layer.L.3.14": 1302907083, - "$ctl.layer.L.3.14.type": 249644042, - "$ctl.layer.L.3.14.i": 2935033664, - "$ctl.layer.L.3.14.dst": 2236781843, - "$ctl.layer.L.3.14.1": 2287716054, - "$ctl.layer.L.3.15": 1807339262, - "$ctl.layer.L.3.15.type": 1251030116, - "$ctl.layer.L.3.15.i": 517914009, - "$ctl.layer.L.3.15.dst": 4156651725, - "$ctl.layer.L.3.15.1": 1755526842, - "$ctl.layer.L.3.16": 2651714061, - "$ctl.layer.L.3.16.type": 952282190, - "$ctl.layer.L.3.16.i": 1197345063, - "$ctl.layer.L.3.16.dst": 3876834327, - "$ctl.layer.L.3.16.1": 2332998509, - "$ctl.layer.L.3.17": 1485540386, - "$ctl.layer.L.3.17.type": 337429288, - "$ctl.layer.L.3.17.i": 660066683, - "$ctl.layer.L.3.17.dst": 3956010177, - "$ctl.layer.L.3.17.1": 1796385697, - "$ctl.layer.L.3.18": 2654978977, - "$ctl.layer.L.3.18.type": 269461874, - "$ctl.layer.L.3.18.i": 524490796, - "$ctl.layer.L.3.18.dst": 12258523, - "$ctl.layer.L.3.18.1": 4009611122, - "$ctl.layer.L.3.19": 3091855403, - "$ctl.layer.L.3.19.type": 1284071756, - "$ctl.layer.L.3.19.i": 2135236109, - "$ctl.layer.L.3.19.dst": 1958724181, - "$ctl.layer.L.3.19.1": 3472875395, - "$ctl.layer.L.3.20": 466852670, - "$ctl.layer.L.3.20.type": 2989847121, - "$ctl.layer.L.3.20.i": 1459852546, - "$ctl.layer.L.3.20.dst": 99311388, - "$ctl.layer.L.3.20.1": 3094373244, - "$ctl.layer.L.3.21": 1819986379, - "$ctl.layer.L.3.21.type": 2072167911, - "$ctl.layer.L.3.21.i": 1994868238, - "$ctl.layer.L.3.21.dst": 593912194, - "$ctl.layer.L.3.21.1": 3634662504, - "$ctl.layer.L.3.22": 994578281, - "$ctl.layer.L.3.22.type": 2024225309, - "$ctl.layer.L.3.22.i": 2669301837, - "$ctl.layer.L.3.22.dst": 4016159096, - "$ctl.layer.L.3.22.1": 3565655687, - "$ctl.layer.L.3.23": 3916371543, - "$ctl.layer.L.3.23.type": 2450319955, - "$ctl.layer.L.3.23.i": 3203979804, - "$ctl.layer.L.3.23.dst": 3623731022, - "$ctl.layer.L.3.23.1": 4105259094, - "$ctl.layer.L.3.24": 1010889952, - "$ctl.layer.L.3.24.type": 3063531849, - "$ctl.layer.L.3.24.i": 1613489211, - "$ctl.layer.L.3.24.dst": 26075348, - "$ctl.layer.L.3.24.1": 2173971093, - "$ctl.layer.L.4": 3555139537, - "$ctl.layer.L.4.ofs": 3148769233, - "$ctl.layer.L.4.name": 2159225363, - "$ctl.layer.L.4.1": 699146676, - "$ctl.layer.L.4.1.type": 771694830, - "$ctl.layer.L.4.1.i": 3271980358, - "$ctl.layer.L.4.1.dst": 1205946164, - "$ctl.layer.L.4.1.1": 1551075084, - "$ctl.layer.L.4.2": 2648953090, - "$ctl.layer.L.4.2.type": 2154428641, - "$ctl.layer.L.4.2.i": 279961107, - "$ctl.layer.L.4.2.dst": 2172897897, - "$ctl.layer.L.4.2.1": 1917001433, - "$ctl.layer.L.4.3": 1046354800, - "$ctl.layer.L.4.3.type": 253917453, - "$ctl.layer.L.4.3.i": 1959854712, - "$ctl.layer.L.4.3.dst": 4025929866, - "$ctl.layer.L.4.3.1": 3057514674, - "$ctl.layer.L.4.4": 500867731, - "$ctl.layer.L.4.4.type": 1450212900, - "$ctl.layer.L.4.4.i": 1402310152, - "$ctl.layer.L.4.4.dst": 3630832250, - "$ctl.layer.L.4.4.1": 3441962690, - "$ctl.layer.L.4.5": 4103371033, - "$ctl.layer.L.4.5.type": 458599051, - "$ctl.layer.L.4.5.i": 4020188229, - "$ctl.layer.L.4.5.dst": 1786176047, - "$ctl.layer.L.4.5.1": 2301918495, - "$ctl.layer.L.4.6": 3532280759, - "$ctl.layer.L.4.6.type": 3943655398, - "$ctl.layer.L.4.6.i": 575069978, - "$ctl.layer.L.4.6.dst": 2468418040, - "$ctl.layer.L.4.6.1": 1672598080, - "$ctl.layer.L.4.7": 2734818018, - "$ctl.layer.L.4.7.type": 4001586361, - "$ctl.layer.L.4.7.i": 4018921807, - "$ctl.layer.L.4.7.dst": 1957680053, - "$ctl.layer.L.4.7.1": 821498037, - "$ctl.layer.L.4.8": 3531348816, - "$ctl.layer.L.4.8.type": 2521157943, - "$ctl.layer.L.4.8.i": 3032268484, - "$ctl.layer.L.4.8.dst": 803418662, - "$ctl.layer.L.4.8.1": 1985098270, - "$ctl.layer.L.4.9": 3250113102, - "$ctl.layer.L.4.9.type": 4066076171, - "$ctl.layer.L.4.9.i": 2720035916, - "$ctl.layer.L.4.9.dst": 826893886, - "$ctl.layer.L.4.9.1": 3283320326, - "$ctl.layer.L.4.10": 4129525696, - "$ctl.layer.L.4.10.type": 2508916111, - "$ctl.layer.L.4.10.i": 806581756, - "$ctl.layer.L.4.10.dst": 448211478, - "$ctl.layer.L.4.10.1": 3380641154, - "$ctl.layer.L.4.11": 548051181, - "$ctl.layer.L.4.11.type": 1958187161, - "$ctl.layer.L.4.11.i": 1341619136, - "$ctl.layer.L.4.11.dst": 4129672544, - "$ctl.layer.L.4.11.1": 3920936918, - "$ctl.layer.L.4.12": 1626878271, - "$ctl.layer.L.4.12.type": 2136519523, - "$ctl.layer.L.4.12.i": 3993662011, - "$ctl.layer.L.4.12.dst": 811384074, - "$ctl.layer.L.4.12.1": 2272769505, - "$ctl.layer.L.4.13": 3640577153, - "$ctl.layer.L.4.13.type": 2951433037, - "$ctl.layer.L.4.13.i": 233375778, - "$ctl.layer.L.4.13.dst": 3931019492, - "$ctl.layer.L.4.13.1": 2812353000, - "$ctl.layer.L.4.14": 11614046, - "$ctl.layer.L.4.14.type": 2337810263, - "$ctl.layer.L.4.14.i": 2885418573, - "$ctl.layer.L.4.14.dst": 469653438, - "$ctl.layer.L.4.14.1": 1164195907, - "$ctl.layer.L.4.15": 2024685035, - "$ctl.layer.L.4.15.type": 2018008449, - "$ctl.layer.L.4.15.i": 3688213644, - "$ctl.layer.L.4.15.dst": 689515624, - "$ctl.layer.L.4.15.1": 1704478119, - "$ctl.layer.L.4.16": 2701492352, - "$ctl.layer.L.4.16.type": 3040447083, - "$ctl.layer.L.4.16.i": 1416165946, - "$ctl.layer.L.4.16.dst": 3803565106, - "$ctl.layer.L.4.16.1": 1040394720, - "$ctl.layer.L.4.17": 193100591, - "$ctl.layer.L.4.17.type": 2446991989, - "$ctl.layer.L.4.17.i": 1951195726, - "$ctl.layer.L.4.17.dst": 3881684652, - "$ctl.layer.L.4.17.1": 1577728564, - "$ctl.layer.L.4.18": 1530188340, - "$ctl.layer.L.4.18.type": 2357640543, - "$ctl.layer.L.4.18.i": 305669817, - "$ctl.layer.L.4.18.dst": 4152943782, - "$ctl.layer.L.4.18.1": 4227162207, - "$ctl.layer.L.4.19": 89327294, - "$ctl.layer.L.4.19.type": 2081177129, - "$ctl.layer.L.4.19.i": 842632320, - "$ctl.layer.L.4.19.dst": 773052976, - "$ctl.layer.L.4.19.1": 469160086, - "$ctl.layer.L.4.20": 3565257781, - "$ctl.layer.L.4.20.type": 729742049, - "$ctl.layer.L.4.20.i": 2655575633, - "$ctl.layer.L.4.20.dst": 3481143652, - "$ctl.layer.L.4.20.1": 4292614647, - "$ctl.layer.L.4.21": 2788929608, - "$ctl.layer.L.4.21.type": 1175577503, - "$ctl.layer.L.4.21.i": 2120474469, - "$ctl.layer.L.4.21.dst": 2480601210, - "$ctl.layer.L.4.21.1": 3757482763, - "$ctl.layer.L.4.22": 1924344010, - "$ctl.layer.L.4.22.type": 1262826277, - "$ctl.layer.L.4.22.i": 3617253830, - "$ctl.layer.L.4.22.dst": 2004852280, - "$ctl.layer.L.4.22.1": 1294839180, - "$ctl.layer.L.4.23": 4079844604, - "$ctl.layer.L.4.23.type": 1686051043, - "$ctl.layer.L.4.23.i": 3081998487, - "$ctl.layer.L.4.23.dst": 2240655038, - "$ctl.layer.L.4.23.1": 759902557, - "$ctl.layer.L.4.24": 3261737907, - "$ctl.layer.L.4.24.type": 789724809, - "$ctl.layer.L.4.24.i": 640326424, - "$ctl.layer.L.4.24.dst": 3458062252, - "$ctl.layer.L.4.24.1": 2277663678, - "$ctl.layer.L.5": 157371876, - "$ctl.layer.L.5.ofs": 2783242459, - "$ctl.layer.L.5.name": 2949343134, - "$ctl.layer.L.5.1": 1236457488, - "$ctl.layer.L.5.1.type": 712826026, - "$ctl.layer.L.5.1.i": 1795492209, - "$ctl.layer.L.5.1.dst": 3856325435, - "$ctl.layer.L.5.1.1": 211415819, - "$ctl.layer.L.5.2": 1038933811, - "$ctl.layer.L.5.2.type": 3806847855, - "$ctl.layer.L.5.2.i": 712614382, - "$ctl.layer.L.5.2.dst": 2773364332, - "$ctl.layer.L.5.2.1": 1357126356, - "$ctl.layer.L.5.3": 241470777, - "$ctl.layer.L.5.3.type": 1918621276, - "$ctl.layer.L.5.3.i": 4147332163, - "$ctl.layer.L.5.3.dst": 2248823481, - "$ctl.layer.L.5.3.1": 497055369, - "$ctl.layer.L.5.4": 1038012111, - "$ctl.layer.L.5.4.type": 3538992381, - "$ctl.layer.L.5.4.i": 3757056520, - "$ctl.layer.L.5.4.dst": 1863954042, - "$ctl.layer.L.5.4.1": 2256706242, - "$ctl.layer.L.5.5": 345713914, - "$ctl.layer.L.5.5.type": 198405435, - "$ctl.layer.L.5.5.i": 2596087872, - "$ctl.layer.L.5.5.dst": 702576162, - "$ctl.layer.L.5.5.1": 2032650522, - "$ctl.layer.L.5.6": 85316640, - "$ctl.layer.L.5.6.type": 3425124310, - "$ctl.layer.L.5.6.i": 3450003125, - "$ctl.layer.L.5.6.dst": 1048095743, - "$ctl.layer.L.5.6.1": 3020952399, - "$ctl.layer.L.5.7": 3163391107, - "$ctl.layer.L.5.7.type": 4034343991, - "$ctl.layer.L.5.7.i": 2615103834, - "$ctl.layer.L.5.7.dst": 548699960, - "$ctl.layer.L.5.7.1": 2188536320, - "$ctl.layer.L.5.8": 2345100238, - "$ctl.layer.L.5.8.type": 265177481, - "$ctl.layer.L.5.8.i": 1276138183, - "$ctl.layer.L.5.8.dst": 3510191165, - "$ctl.layer.L.5.8.1": 631482893, - "$ctl.layer.L.5.9": 2974032956, - "$ctl.layer.L.5.9.type": 2450816981, - "$ctl.layer.L.5.9.i": 3213961815, - "$ctl.layer.L.5.9.dst": 1147968557, - "$ctl.layer.L.5.9.1": 1576978461, - "$ctl.layer.L.5.10": 975840199, - "$ctl.layer.L.5.10.type": 3406681334, - "$ctl.layer.L.5.10.i": 951192051, - "$ctl.layer.L.5.10.dst": 1328471823, - "$ctl.layer.L.5.10.1": 2756110725, - "$ctl.layer.L.5.11": 178541850, - "$ctl.layer.L.5.11.type": 2436959900, - "$ctl.layer.L.5.11.i": 3635986391, - "$ctl.layer.L.5.11.dst": 3148499493, - "$ctl.layer.L.5.11.1": 1145963481, - "$ctl.layer.L.5.12": 3441335608, - "$ctl.layer.L.5.12.type": 2195033474, - "$ctl.layer.L.5.12.i": 1027857956, - "$ctl.layer.L.5.12.dst": 1256355227, - "$ctl.layer.L.5.12.1": 3906544126, - "$ctl.layer.L.5.13": 1469614222, - "$ctl.layer.L.5.13.type": 2590916840, - "$ctl.layer.L.5.13.i": 1565150245, - "$ctl.layer.L.5.13.dst": 768614897, - "$ctl.layer.L.5.13.1": 2296370687, - "$ctl.layer.L.5.14": 672299857, - "$ctl.layer.L.5.14.type": 3236022974, - "$ctl.layer.L.5.14.i": 3251989066, - "$ctl.layer.L.5.14.dst": 1350571255, - "$ctl.layer.L.5.14.1": 3815416908, - "$ctl.layer.L.5.15": 2995562980, - "$ctl.layer.L.5.15.type": 3167857988, - "$ctl.layer.L.5.15.i": 1373399171, - "$ctl.layer.L.5.15.dst": 1135053613, - "$ctl.layer.L.5.15.1": 57803216, - "$ctl.layer.L.5.16": 2366061703, - "$ctl.layer.L.5.16.type": 2679547114, - "$ctl.layer.L.5.16.i": 3563535933, - "$ctl.layer.L.5.16.dst": 1311873315, - "$ctl.layer.L.5.16.1": 4026297847, - "$ctl.layer.L.5.17": 494987048, - "$ctl.layer.L.5.17.type": 3344754352, - "$ctl.layer.L.5.17.i": 4100890225, - "$ctl.layer.L.5.17.dst": 718676057, - "$ctl.layer.L.5.17.1": 268684811, - "$ctl.layer.L.5.18": 3489359419, - "$ctl.layer.L.5.18.type": 3255826182, - "$ctl.layer.L.5.18.i": 1492740790, - "$ctl.layer.L.5.18.dst": 3171753055, - "$ctl.layer.L.5.18.1": 881763400, - "$ctl.layer.L.5.19": 1710312113, - "$ctl.layer.L.5.19.type": 2139675308, - "$ctl.layer.L.5.19.i": 4177535127, - "$ctl.layer.L.5.19.dst": 1216677045, - "$ctl.layer.L.5.19.1": 1419076761, - "$ctl.layer.L.5.20": 1974986808, - "$ctl.layer.L.5.20.type": 3372342277, - "$ctl.layer.L.5.20.i": 4247167572, - "$ctl.layer.L.5.20.dst": 502674144, - "$ctl.layer.L.5.20.1": 1670452730, - "$ctl.layer.L.5.21": 3432557637, - "$ctl.layer.L.5.21.type": 4237198675, - "$ctl.layer.L.5.21.i": 486990696, - "$ctl.layer.L.5.21.dst": 3981610390, - "$ctl.layer.L.5.21.1": 2210506510, - "$ctl.layer.L.5.22": 2355758279, - "$ctl.layer.L.5.22.type": 3905038409, - "$ctl.layer.L.5.22.i": 4261004739, - "$ctl.layer.L.5.22.dst": 1644015284, - "$ctl.layer.L.5.22.1": 610568585, - "$ctl.layer.L.5.23": 2492102905, - "$ctl.layer.L.5.23.type": 4077015271, - "$ctl.layer.L.5.23.i": 500479130, - "$ctl.layer.L.5.23.dst": 2131717146, - "$ctl.layer.L.5.23.1": 1150561600, - "$ctl.layer.L.5.24": 3944779702, - "$ctl.layer.L.5.24.type": 3431957789, - "$ctl.layer.L.5.24.i": 497429, - "$ctl.layer.L.5.24.dst": 480226136, - "$ctl.layer.L.5.24.1": 645357499, - "$ctl.layer.L.6": 1867982958, - "$ctl.layer.L.6.ofs": 662531291, - "$ctl.layer.L.6.name": 3434738501, - "$ctl.layer.L.6.1": 2147334257, - "$ctl.layer.L.6.1.type": 883682100, - "$ctl.layer.L.6.1.i": 3069217620, - "$ctl.layer.L.6.1.dst": 840406998, - "$ctl.layer.L.6.1.1": 1885155694, - "$ctl.layer.L.6.2": 1350035708, - "$ctl.layer.L.6.2.type": 394253227, - "$ctl.layer.L.6.2.i": 2503576969, - "$ctl.layer.L.6.2.dst": 610558179, - "$ctl.layer.L.6.2.1": 3467010883, - "$ctl.layer.L.6.3": 133163087, - "$ctl.layer.L.6.3.type": 3436164083, - "$ctl.layer.L.6.3.i": 2497708078, - "$ctl.layer.L.6.3.dst": 604605612, - "$ctl.layer.L.6.3.1": 3463623316, - "$ctl.layer.L.6.4": 4272549493, - "$ctl.layer.L.6.4.type": 1244847121, - "$ctl.layer.L.6.4.i": 1403894374, - "$ctl.layer.L.6.4.dst": 3805964436, - "$ctl.layer.L.6.4.1": 303759532, - "$ctl.layer.L.6.5": 522629083, - "$ctl.layer.L.6.5.type": 910619449, - "$ctl.layer.L.6.5.i": 3431501531, - "$ctl.layer.L.6.5.dst": 1538071585, - "$ctl.layer.L.6.5.1": 1260072193, - "$ctl.layer.L.6.6": 622627409, - "$ctl.layer.L.6.6.type": 2091235595, - "$ctl.layer.L.6.6.i": 4196160176, - "$ctl.layer.L.6.6.dst": 2302894066, - "$ctl.layer.L.6.6.1": 464609098, - "$ctl.layer.L.6.7": 3679893596, - "$ctl.layer.L.6.7.type": 400076568, - "$ctl.layer.L.6.7.i": 3604300957, - "$ctl.layer.L.6.7.dst": 1375778455, - "$ctl.layer.L.6.7.1": 1349171159, - "$ctl.layer.L.6.8": 2882410410, - "$ctl.layer.L.6.8.type": 1280064129, - "$ctl.layer.L.6.8.i": 2010048194, - "$ctl.layer.L.6.8.dst": 3902986288, - "$ctl.layer.L.6.8.1": 3191477768, - "$ctl.layer.L.6.9": 2168985173, - "$ctl.layer.L.6.9.type": 3578945979, - "$ctl.layer.L.6.9.i": 916024402, - "$ctl.layer.L.6.9.dst": 2814778912, - "$ctl.layer.L.6.9.1": 4247733784, - "$ctl.layer.L.6.10": 1446956770, - "$ctl.layer.L.6.10.type": 3515870462, - "$ctl.layer.L.6.10.i": 1156417774, - "$ctl.layer.L.6.10.dst": 3196188805, - "$ctl.layer.L.6.10.1": 2287611680, - "$ctl.layer.L.6.11": 2128582031, - "$ctl.layer.L.6.11.type": 3038577796, - "$ctl.layer.L.6.11.i": 2764929570, - "$ctl.layer.L.6.11.dst": 2999648059, - "$ctl.layer.L.6.11.1": 3896164468, - "$ctl.layer.L.6.12": 1088625565, - "$ctl.layer.L.6.12.type": 2553525802, - "$ctl.layer.L.6.12.i": 3649068169, - "$ctl.layer.L.6.12.dst": 3486875409, - "$ctl.layer.L.6.12.1": 2632819395, - "$ctl.layer.L.6.13": 595845667, - "$ctl.layer.L.6.13.type": 3397437360, - "$ctl.layer.L.6.13.i": 3109932480, - "$ctl.layer.L.6.13.dst": 3345449367, - "$ctl.layer.L.6.13.1": 4241167386, - "$ctl.layer.L.6.14": 1277634764, - "$ctl.layer.L.6.14.type": 3591197510, - "$ctl.layer.L.6.14.i": 1309716527, - "$ctl.layer.L.6.14.dst": 3791093325, - "$ctl.layer.L.6.14.1": 2273179233, - "$ctl.layer.L.6.15": 3469209497, - "$ctl.layer.L.6.15.type": 3093152236, - "$ctl.layer.L.6.15.i": 502334014, - "$ctl.layer.L.6.15.dst": 2975898307, - "$ctl.layer.L.6.15.1": 1734248373, - "$ctl.layer.L.6.16": 13358626, - "$ctl.layer.L.6.16.type": 3300144914, - "$ctl.layer.L.6.16.i": 1218700424, - "$ctl.layer.L.6.16.dst": 3422470329, - "$ctl.layer.L.6.16.1": 1005136578, - "$ctl.layer.L.6.17": 1768700941, - "$ctl.layer.L.6.17.type": 3472943800, - "$ctl.layer.L.6.17.i": 679605724, - "$ctl.layer.L.6.17.dst": 3238463487, - "$ctl.layer.L.6.17.1": 468663318, - "$ctl.layer.L.6.18": 2618303190, - "$ctl.layer.L.6.18.type": 2995634190, - "$ctl.layer.L.6.18.i": 3171735595, - "$ctl.layer.L.6.18.dst": 3041914837, - "$ctl.layer.L.6.18.1": 1350180477, - "$ctl.layer.L.6.19": 439220268, - "$ctl.layer.L.6.19.type": 2510582228, - "$ctl.layer.L.6.19.i": 487901538, - "$ctl.layer.L.6.19.dst": 2859365067, - "$ctl.layer.L.6.19.1": 813830068, - "$ctl.layer.L.6.20": 1676055951, - "$ctl.layer.L.6.20.type": 2453590925, - "$ctl.layer.L.6.20.i": 580947899, - "$ctl.layer.L.6.20.dst": 619186158, - "$ctl.layer.L.6.20.1": 1712153933, - "$ctl.layer.L.6.21": 221105890, - "$ctl.layer.L.6.21.type": 1588726911, - "$ctl.layer.L.6.21.i": 42225295, - "$ctl.layer.L.6.21.dst": 1165549528, - "$ctl.layer.L.6.21.1": 1173456961, - "$ctl.layer.L.6.22": 3811907920, - "$ctl.layer.L.6.22.type": 1447070969, - "$ctl.layer.L.6.22.i": 2077055100, - "$ctl.layer.L.6.22.dst": 284226202, - "$ctl.layer.L.6.22.1": 2872742454, - "$ctl.layer.L.6.23": 2503743126, - "$ctl.layer.L.6.23.type": 1923563371, - "$ctl.layer.L.6.23.i": 1538644653, - "$ctl.layer.L.6.23.dst": 425662260, - "$ctl.layer.L.6.23.1": 2334019687, - "$ctl.layer.L.6.24": 1048439769, - "$ctl.layer.L.6.24.type": 2589641077, - "$ctl.layer.L.6.24.i": 3216958594, - "$ctl.layer.L.6.24.dst": 651122710, - "$ctl.layer.L.6.24.1": 4180095572, - "$ctl.layer.L.7": 672409485, - "$ctl.layer.L.7.ofs": 3276772325, - "$ctl.layer.L.7.name": 2724606904, - "$ctl.layer.L.7.1": 537035826, - "$ctl.layer.L.7.1.type": 3954651243, - "$ctl.layer.L.7.1.i": 999960431, - "$ctl.layer.L.7.1.dst": 3228402453, - "$ctl.layer.L.7.1.1": 3791962453, - "$ctl.layer.L.7.2": 4034857848, - "$ctl.layer.L.7.2.type": 33445581, - "$ctl.layer.L.7.2.i": 181129604, - "$ctl.layer.L.7.2.dst": 2582791398, - "$ctl.layer.L.7.2.1": 205070174, - "$ctl.layer.L.7.3": 2839099899, - "$ctl.layer.L.7.3.type": 2546519255, - "$ctl.layer.L.7.3.i": 3889972508, - "$ctl.layer.L.7.3.dst": 1661040494, - "$ctl.layer.L.7.3.1": 1095202518, - "$ctl.layer.L.7.4": 514890342, - "$ctl.layer.L.7.4.type": 4205891431, - "$ctl.layer.L.7.4.i": 2218372753, - "$ctl.layer.L.7.4.dst": 4284611739, - "$ctl.layer.L.7.4.1": 2779008171, - "$ctl.layer.L.7.5": 4012558801, - "$ctl.layer.L.7.5.type": 1032104945, - "$ctl.layer.L.7.5.i": 1640771798, - "$ctl.layer.L.7.5.dst": 4042513956, - "$ctl.layer.L.7.5.1": 56724252, - "$ctl.layer.L.7.6": 2640810562, - "$ctl.layer.L.7.6.type": 2140654934, - "$ctl.layer.L.7.6.i": 1764220323, - "$ctl.layer.L.7.6.dst": 3662400217, - "$ctl.layer.L.7.6.1": 3401260649, - "$ctl.layer.L.7.7": 1843501773, - "$ctl.layer.L.7.7.type": 665449069, - "$ctl.layer.L.7.7.i": 611254291, - "$ctl.layer.L.7.7.dst": 2677738601, - "$ctl.layer.L.7.7.1": 100908249, - "$ctl.layer.L.7.8": 3814259256, - "$ctl.layer.L.7.8.type": 3740723704, - "$ctl.layer.L.7.8.i": 3226716568, - "$ctl.layer.L.7.8.dst": 992623466, - "$ctl.layer.L.7.8.1": 3116443858, - "$ctl.layer.L.7.9": 2618501302, - "$ctl.layer.L.7.9.type": 253974722, - "$ctl.layer.L.7.9.i": 2640796949, - "$ctl.layer.L.7.9.dst": 742411167, - "$ctl.layer.L.7.9.1": 1993514415, - "$ctl.layer.L.7.10": 1352092609, - "$ctl.layer.L.7.10.type": 1528703593, - "$ctl.layer.L.7.10.i": 239546837, - "$ctl.layer.L.7.10.dst": 1336665092, - "$ctl.layer.L.7.10.1": 1790034819, - "$ctl.layer.L.7.11": 641293620, - "$ctl.layer.L.7.11.type": 1083277727, - "$ctl.layer.L.7.11.i": 2921742465, - "$ctl.layer.L.7.11.dst": 2430757882, - "$ctl.layer.L.7.11.1": 182516303, - "$ctl.layer.L.7.12": 25786150, - "$ctl.layer.L.7.12.type": 1148871461, - "$ctl.layer.L.7.12.i": 1826174522, - "$ctl.layer.L.7.12.dst": 1648611792, - "$ctl.layer.L.7.12.1": 155447264, - "$ctl.layer.L.7.13": 841683072, - "$ctl.layer.L.7.13.type": 2045618667, - "$ctl.layer.L.7.13.i": 2360691939, - "$ctl.layer.L.7.13.dst": 2126275830, - "$ctl.layer.L.7.13.1": 2843008681, - "$ctl.layer.L.7.14": 125825527, - "$ctl.layer.L.7.14.type": 1453397425, - "$ctl.layer.L.7.14.i": 2791850644, - "$ctl.layer.L.7.14.dst": 1454114892, - "$ctl.layer.L.7.14.1": 3436706882, - "$ctl.layer.L.7.15": 3626107690, - "$ctl.layer.L.7.15.type": 1007751495, - "$ctl.layer.L.7.15.i": 910618757, - "$ctl.layer.L.7.15.dst": 1583517890, - "$ctl.layer.L.7.15.1": 3976661774, - "$ctl.layer.L.7.16": 2742140033, - "$ctl.layer.L.7.16.type": 2163877581, - "$ctl.layer.L.7.16.i": 4193924667, - "$ctl.layer.L.7.16.dst": 2017759672, - "$ctl.layer.L.7.16.1": 3063017441, - "$ctl.layer.L.7.17": 3910383286, - "$ctl.layer.L.7.17.type": 1571640979, - "$ctl.layer.L.7.17.i": 433822951, - "$ctl.layer.L.7.17.dst": 2159194270, - "$ctl.layer.L.7.17.1": 3600187053, - "$ctl.layer.L.7.18": 3110639597, - "$ctl.layer.L.7.18.type": 1377833305, - "$ctl.layer.L.7.18.i": 946266776, - "$ctl.layer.L.7.18.dst": 2387188980, - "$ctl.layer.L.7.18.1": 1428266054, - "$ctl.layer.L.7.19": 2340864663, - "$ctl.layer.L.7.19.type": 1191804495, - "$ctl.layer.L.7.19.i": 3631042881, - "$ctl.layer.L.7.19.dst": 1606367850, - "$ctl.layer.L.7.19.1": 1965558543, - "$ctl.layer.L.7.20": 3327752626, - "$ctl.layer.L.7.20.type": 1203913194, - "$ctl.layer.L.7.20.i": 953340862, - "$ctl.layer.L.7.20.dst": 1534315169, - "$ctl.layer.L.7.20.1": 71311728, - "$ctl.layer.L.7.21": 2554039039, - "$ctl.layer.L.7.21.type": 1429125272, - "$ctl.layer.L.7.21.i": 414290610, - "$ctl.layer.L.7.21.dst": 4010074455, - "$ctl.layer.L.7.21.1": 3827223620, - "$ctl.layer.L.7.22": 3502716205, - "$ctl.layer.L.7.22.type": 196981694, - "$ctl.layer.L.7.22.i": 1033532537, - "$ctl.layer.L.7.22.dst": 191859829, - "$ctl.layer.L.7.22.1": 889695795, - "$ctl.layer.L.7.23": 2833896083, - "$ctl.layer.L.7.23.type": 422240428, - "$ctl.layer.L.7.23.i": 495173328, - "$ctl.layer.L.7.23.dst": 3269536230, - "$ctl.layer.L.7.23.1": 351341674, - "$ctl.layer.L.7.24": 2060177372, - "$ctl.layer.L.7.24.type": 1339512354, - "$ctl.layer.L.7.24.i": 883728543, - "$ctl.layer.L.7.24.dst": 1565609081, - "$ctl.layer.L.7.24.1": 907669073, - "$ctl.layer.C": 230497844, - "$ctl.layer.C.sel": 3393244916, - "$ctl.layer.C.spidx": 1731599777, - "$ctl.layer.C.1": 3628800154, - "$ctl.layer.C.1.ofs": 1632893805, - "$ctl.layer.C.1.name": 1651514609, - "$ctl.layer.C.1.1": 3243301128, - "$ctl.layer.C.1.1.type": 978334977, - "$ctl.layer.C.1.1.i": 2880025693, - "$ctl.layer.C.1.1.dst": 645932631, - "$ctl.layer.C.1.1.1": 3443473943, - "$ctl.layer.C.1.2": 1454180270, - "$ctl.layer.C.1.2.type": 2643650113, - "$ctl.layer.C.1.2.i": 1305268582, - "$ctl.layer.C.1.2.dst": 3534036884, - "$ctl.layer.C.1.2.1": 3560382380, - "$ctl.layer.C.1.3": 2256489081, - "$ctl.layer.C.1.3.type": 2805347329, - "$ctl.layer.C.1.3.i": 841674564, - "$ctl.layer.C.1.3.dst": 3243416998, - "$ctl.layer.C.1.3.1": 865649054, - "$ctl.layer.C.1.4": 3735124868, - "$ctl.layer.C.1.4.type": 2031419291, - "$ctl.layer.C.1.4.i": 289162859, - "$ctl.layer.C.1.4.dst": 2350363793, - "$ctl.layer.C.1.4.1": 1792128209, - "$ctl.layer.C.1.5": 914210458, - "$ctl.layer.C.1.5.type": 2566253481, - "$ctl.layer.C.1.5.i": 3054583108, - "$ctl.layer.C.1.5.dst": 820284326, - "$ctl.layer.C.1.5.1": 1956885406, - "$ctl.layer.C.1.6": 1050653752, - "$ctl.layer.C.1.6.type": 4003173904, - "$ctl.layer.C.1.6.i": 2039743104, - "$ctl.layer.C.1.6.dst": 3932803170, - "$ctl.layer.C.1.6.1": 3087071450, - "$ctl.layer.C.1.7": 3597792963, - "$ctl.layer.C.1.7.type": 3614969496, - "$ctl.layer.C.1.7.i": 1660379465, - "$ctl.layer.C.1.7.dst": 3558641571, - "$ctl.layer.C.1.7.1": 562712451, - "$ctl.layer.C.1.8": 740173161, - "$ctl.layer.C.1.8.type": 442590752, - "$ctl.layer.C.1.8.i": 2148882192, - "$ctl.layer.C.1.8.dst": 87844242, - "$ctl.layer.C.1.8.1": 2659345322, - "$ctl.layer.C.1.9": 1542441012, - "$ctl.layer.C.1.9.type": 838844512, - "$ctl.layer.C.1.9.i": 2165740718, - "$ctl.layer.C.1.9.dst": 267478572, - "$ctl.layer.C.1.9.1": 3800262676, - "$ctl.layer.C.1.10": 4185616131, - "$ctl.layer.C.1.10.type": 4054789386, - "$ctl.layer.C.1.10.i": 2035070183, - "$ctl.layer.C.1.10.dst": 235025923, - "$ctl.layer.C.1.10.1": 3840032449, - "$ctl.layer.C.1.11": 1261808054, - "$ctl.layer.C.1.11.type": 258127288, - "$ctl.layer.C.1.11.i": 2573694275, - "$ctl.layer.C.1.11.dst": 478919865, - "$ctl.layer.C.1.11.1": 83668685, - "$ctl.layer.C.1.12": 230249124, - "$ctl.layer.C.1.12.type": 3517527374, - "$ctl.layer.C.1.12.i": 2090111720, - "$ctl.layer.C.1.12.dst": 1132492551, - "$ctl.layer.C.1.12.1": 2821311650, - "$ctl.layer.C.1.13": 406052098, - "$ctl.layer.C.1.13.type": 3342285260, - "$ctl.layer.C.1.13.i": 2629411169, - "$ctl.layer.C.1.13.dst": 1358502653, - "$ctl.layer.C.1.13.1": 3360631611, - "$ctl.layer.C.1.14": 1735247429, - "$ctl.layer.C.1.14.type": 4008317938, - "$ctl.layer.C.1.14.i": 2166800214, - "$ctl.layer.C.1.14.dst": 325631243, - "$ctl.layer.C.1.14.1": 2730227904, - "$ctl.layer.C.1.15": 1911684728, - "$ctl.layer.C.1.15.type": 190448896, - "$ctl.layer.C.1.15.i": 290176279, - "$ctl.layer.C.1.15.dst": 61223777, - "$ctl.layer.C.1.15.1": 3268851388, - "$ctl.layer.C.1.16": 3429623747, - "$ctl.layer.C.1.16.type": 3434151126, - "$ctl.layer.C.1.16.i": 351832489, - "$ctl.layer.C.1.16.dst": 1231615151, - "$ctl.layer.C.1.16.1": 816563043, - "$ctl.layer.C.2": 812468097, - "$ctl.layer.C.2.ofs": 3056514920, - "$ctl.layer.C.2.name": 1706452698, - "$ctl.layer.C.2.1": 1352006209, - "$ctl.layer.C.2.1.type": 1134902774, - "$ctl.layer.C.2.1.i": 3760614853, - "$ctl.layer.C.2.1.dst": 1531805871, - "$ctl.layer.C.2.1.1": 2579186591, - "$ctl.layer.C.2.2": 2831296108, - "$ctl.layer.C.2.2.type": 1394759420, - "$ctl.layer.C.2.2.i": 11740391, - "$ctl.layer.C.2.2.dst": 2245957533, - "$ctl.layer.C.2.2.1": 522245805, - "$ctl.layer.C.2.3": 9726146, - "$ctl.layer.C.2.3.type": 4150631312, - "$ctl.layer.C.2.3.i": 3845659589, - "$ctl.layer.C.2.3.dst": 1952149167, - "$ctl.layer.C.2.3.1": 2127222175, - "$ctl.layer.C.2.4": 2562103149, - "$ctl.layer.C.2.4.type": 3334031544, - "$ctl.layer.C.2.4.i": 3344071377, - "$ctl.layer.C.2.4.dst": 947858907, - "$ctl.layer.C.2.4.1": 1841315947, - "$ctl.layer.C.2.5": 3365027000, - "$ctl.layer.C.2.5.type": 4152725394, - "$ctl.layer.C.2.5.i": 82032837, - "$ctl.layer.C.2.5.dst": 2142907311, - "$ctl.layer.C.2.5.1": 592528031, - "$ctl.layer.C.2.6": 2661074748, - "$ctl.layer.C.2.6.type": 2820383081, - "$ctl.layer.C.2.6.i": 628170368, - "$ctl.layer.C.2.6.dst": 2857143394, - "$ctl.layer.C.2.6.1": 1272896730, - "$ctl.layer.C.2.7": 3060684183, - "$ctl.layer.C.2.7.type": 2197394904, - "$ctl.layer.C.2.7.i": 2658323806, - "$ctl.layer.C.2.7.dst": 256703420, - "$ctl.layer.C.2.7.1": 3842368388, - "$ctl.layer.C.2.8": 202414754, - "$ctl.layer.C.2.8.type": 1910722224, - "$ctl.layer.C.2.8.i": 2226397973, - "$ctl.layer.C.2.8.dst": 4287066527, - "$ctl.layer.C.2.8.1": 2787039151, - "$ctl.layer.C.2.9": 1005373773, - "$ctl.layer.C.2.9.type": 159372351, - "$ctl.layer.C.2.9.i": 561963182, - "$ctl.layer.C.2.9.dst": 2963993132, - "$ctl.layer.C.2.9.1": 1125374996, - "$ctl.layer.C.2.10": 755545499, - "$ctl.layer.C.2.10.type": 1968586490, - "$ctl.layer.C.2.10.i": 1846505343, - "$ctl.layer.C.2.10.dst": 420308057, - "$ctl.layer.C.2.10.1": 2980332889, - "$ctl.layer.C.2.11": 1434562414, - "$ctl.layer.C.2.11.type": 2466885504, - "$ctl.layer.C.2.11.i": 3458952747, - "$ctl.layer.C.2.11.dst": 3643860879, - "$ctl.layer.C.2.11.1": 292595717, - "$ctl.layer.C.2.12": 439171276, - "$ctl.layer.C.2.12.type": 2321958566, - "$ctl.layer.C.2.12.i": 2955049104, - "$ctl.layer.C.2.12.dst": 77173733, - "$ctl.layer.C.2.12.1": 1941418538, - "$ctl.layer.C.2.13": 1244002042, - "$ctl.layer.C.2.13.type": 1457931964, - "$ctl.layer.C.2.13.i": 2419833529, - "$ctl.layer.C.2.13.dst": 228436075, - "$ctl.layer.C.2.13.1": 3548459123, - "$ctl.layer.C.2.14": 1970342813, - "$ctl.layer.C.2.14.type": 2102972210, - "$ctl.layer.C.2.14.i": 1999815902, - "$ctl.layer.C.2.14.dst": 453900977, - "$ctl.layer.C.2.14.1": 2965902008, - "$ctl.layer.C.2.15": 2776499600, - "$ctl.layer.C.2.15.type": 2391357656, - "$ctl.layer.C.2.15.i": 1196365519, - "$ctl.layer.C.2.15.dst": 141384903, - "$ctl.layer.C.2.15.1": 2425658724, - "$ctl.layer.C.2.16": 3660178011, - "$ctl.layer.C.2.16.type": 1365619998, - "$ctl.layer.C.2.16.i": 566611953, - "$ctl.layer.C.2.16.dst": 3944362941, - "$ctl.layer.C.2.16.1": 1696537995, - "$ctl.layer.C.3": 1614776884, - "$ctl.layer.C.3.ofs": 3712069522, - "$ctl.layer.C.3.name": 2576630795, - "$ctl.layer.C.3.1": 2162337122, - "$ctl.layer.C.3.1.type": 3849692091, - "$ctl.layer.C.3.1.i": 1343998963, - "$ctl.layer.C.3.1.dst": 3577724553, - "$ctl.layer.C.3.1.1": 3464963513, - "$ctl.layer.C.3.2": 146095648, - "$ctl.layer.C.3.2.type": 3363372398, - "$ctl.layer.C.3.2.i": 1709367505, - "$ctl.layer.C.3.2.dst": 3770201051, - "$ctl.layer.C.3.2.1": 3293583979, - "$ctl.layer.C.3.3": 1620102347, - "$ctl.layer.C.3.3.type": 2296759072, - "$ctl.layer.C.3.3.i": 2662512581, - "$ctl.layer.C.3.3.dst": 769084079, - "$ctl.layer.C.3.3.1": 3309631903, - "$ctl.layer.C.3.4": 2025000209, - "$ctl.layer.C.3.4.type": 3057181766, - "$ctl.layer.C.3.4.i": 2267317969, - "$ctl.layer.C.3.4.dst": 368810459, - "$ctl.layer.C.3.4.1": 2377725035, - "$ctl.layer.C.3.5": 2827308988, - "$ctl.layer.C.3.5.type": 2466851051, - "$ctl.layer.C.3.5.i": 1891706079, - "$ctl.layer.C.3.5.dst": 4288452517, - "$ctl.layer.C.3.5.1": 4147041925, - "$ctl.layer.C.3.6": 4264656407, - "$ctl.layer.C.3.6.type": 1912553074, - "$ctl.layer.C.3.6.i": 230881825, - "$ctl.layer.C.3.6.dst": 2292000971, - "$ctl.layer.C.3.6.1": 1817559163, - "$ctl.layer.C.3.7": 2248373328, - "$ctl.layer.C.3.7.type": 1529809123, - "$ctl.layer.C.3.7.i": 3512504111, - "$ctl.layer.C.3.7.dst": 1115880917, - "$ctl.layer.C.3.7.1": 2951897493, - "$ctl.layer.C.3.8": 3727013627, - "$ctl.layer.C.3.8.type": 2642578867, - "$ctl.layer.C.3.8.i": 3137103419, - "$ctl.layer.C.3.8.dst": 740398273, - "$ctl.layer.C.3.8.1": 2036814945, - "$ctl.layer.C.3.9": 4127319430, - "$ctl.layer.C.3.9.type": 2549038387, - "$ctl.layer.C.3.9.i": 1484625199, - "$ctl.layer.C.3.9.dst": 3713434581, - "$ctl.layer.C.3.9.1": 386947989, - "$ctl.layer.C.3.10": 1679132501, - "$ctl.layer.C.3.10.type": 2980748889, - "$ctl.layer.C.3.10.i": 587517297, - "$ctl.layer.C.3.10.dst": 1164595946, - "$ctl.layer.C.3.10.1": 1466967831, - "$ctl.layer.C.3.11": 318226728, - "$ctl.layer.C.3.11.type": 2786981111, - "$ctl.layer.C.3.11.i": 3271023685, - "$ctl.layer.C.3.11.dst": 460267680, - "$ctl.layer.C.3.11.1": 4150433259, - "$ctl.layer.C.3.12": 3992402666, - "$ctl.layer.C.3.12.type": 3925399197, - "$ctl.layer.C.3.12.i": 2153183910, - "$ctl.layer.C.3.12.dst": 4227018574, - "$ctl.layer.C.3.12.1": 4106335340, - "$ctl.layer.C.3.13": 1184462044, - "$ctl.layer.C.3.13.type": 3750960603, - "$ctl.layer.C.3.13.i": 2689042551, - "$ctl.layer.C.3.13.dst": 157405988, - "$ctl.layer.C.3.13.1": 2495038013, - "$ctl.layer.C.3.14": 4076744083, - "$ctl.layer.C.3.14.type": 2907081057, - "$ctl.layer.C.3.14.i": 3118900984, - "$ctl.layer.C.3.14.dst": 1280414738, - "$ctl.layer.C.3.14.1": 3092668574, - "$ctl.layer.C.3.15": 3954468710, - "$ctl.layer.C.3.15.type": 2713093151, - "$ctl.layer.C.3.15.i": 1238979777, - "$ctl.layer.C.3.15.dst": 4158004936, - "$ctl.layer.C.3.15.1": 3628650386, - "$ctl.layer.C.3.16": 2394128405, - "$ctl.layer.C.3.16.type": 3872498565, - "$ctl.layer.C.3.16.i": 3870847487, - "$ctl.layer.C.3.16.dst": 37428310, - "$ctl.layer.C.3.16.1": 3407096741, - "$ctl.layer.C.4": 2825617373, - "$ctl.layer.C.4.ofs": 2977045394, - "$ctl.layer.C.4.name": 3098249227, - "$ctl.layer.C.4.1": 1386727072, - "$ctl.layer.C.4.1.type": 1761914080, - "$ctl.layer.C.4.1.i": 2234715883, - "$ctl.layer.C.4.1.dst": 168354321, - "$ctl.layer.C.4.1.1": 3953123921, - "$ctl.layer.C.4.2": 1791620422, - "$ctl.layer.C.4.2.type": 2810735978, - "$ctl.layer.C.4.2.i": 1644551714, - "$ctl.layer.C.4.2.dst": 3543019728, - "$ctl.layer.C.4.2.1": 546839912, - "$ctl.layer.C.4.3": 4070959844, - "$ctl.layer.C.4.3.type": 864316622, - "$ctl.layer.C.4.3.i": 3599258347, - "$ctl.layer.C.4.3.dst": 1706280465, - "$ctl.layer.C.4.3.1": 2415238737, - "$ctl.layer.C.4.4": 1254632959, - "$ctl.layer.C.4.4.type": 2131247655, - "$ctl.layer.C.4.4.i": 995764770, - "$ctl.layer.C.4.4.dst": 3397631184, - "$ctl.layer.C.4.4.1": 3653538152, - "$ctl.layer.C.4.5": 2686086661, - "$ctl.layer.C.4.5.type": 2790363661, - "$ctl.layer.C.4.5.i": 600539024, - "$ctl.layer.C.4.5.dst": 2997367570, - "$ctl.layer.C.4.5.1": 1113665834, - "$ctl.layer.C.4.6": 1579455387, - "$ctl.layer.C.4.6.type": 662888800, - "$ctl.layer.C.4.6.i": 170964539, - "$ctl.layer.C.4.6.dst": 2063942849, - "$ctl.layer.C.4.6.1": 734200929, - "$ctl.layer.C.4.7": 3053503014, - "$ctl.layer.C.4.7.type": 3069112883, - "$ctl.layer.C.4.7.i": 2808180015, - "$ctl.layer.C.4.7.dst": 742022101, - "$ctl.layer.C.4.7.1": 3368846229, - "$ctl.layer.C.4.8": 3189951428, - "$ctl.layer.C.4.8.type": 1828884052, - "$ctl.layer.C.4.8.i": 1662267963, - "$ctl.layer.C.4.8.dst": 4064256193, - "$ctl.layer.C.4.8.1": 78235745, - "$ctl.layer.C.4.9": 1442118362, - "$ctl.layer.C.4.9.type": 3443915026, - "$ctl.layer.C.4.9.i": 1080643865, - "$ctl.layer.C.4.9.dst": 3146554771, - "$ctl.layer.C.4.9.1": 972792275, - "$ctl.layer.C.4.10": 1190925373, - "$ctl.layer.C.4.10.type": 2160832589, - "$ctl.layer.C.4.10.i": 388763225, - "$ctl.layer.C.4.10.dst": 2450481967, - "$ctl.layer.C.4.10.1": 1939400319, - "$ctl.layer.C.4.11": 490623152, - "$ctl.layer.C.4.11.type": 1316934968, - "$ctl.layer.C.4.11.i": 4145990909, - "$ctl.layer.C.4.11.dst": 4146468329, - "$ctl.layer.C.4.11.1": 1406929267, - "$ctl.layer.C.4.12": 4212168578, - "$ctl.layer.C.4.12.type": 1188554642, - "$ctl.layer.C.4.12.i": 1675482974, - "$ctl.layer.C.4.12.dst": 2108310219, - "$ctl.layer.C.4.12.1": 3226145668, - "$ctl.layer.C.4.13": 2022873124, - "$ctl.layer.C.4.13.type": 1667502516, - "$ctl.layer.C.4.13.i": 1137728479, - "$ctl.layer.C.4.13.dst": 2333627349, - "$ctl.layer.C.4.13.1": 2693648133, - "$ctl.layer.C.4.14": 1359244539, - "$ctl.layer.C.4.14.type": 2333574629, - "$ctl.layer.C.4.14.i": 2941216272, - "$ctl.layer.C.4.14.dst": 2517142727, - "$ctl.layer.C.4.14.1": 364687718, - "$ctl.layer.C.4.15": 3466241742, - "$ctl.layer.C.4.15.type": 1258790768, - "$ctl.layer.C.4.15.i": 2135062569, - "$ctl.layer.C.4.15.dst": 2240492609, - "$ctl.layer.C.4.15.1": 4127194762, - "$ctl.layer.C.4.16": 2624406397, - "$ctl.layer.C.4.16.type": 1576053930, - "$ctl.layer.C.4.16.i": 4085329559, - "$ctl.layer.C.4.16.dst": 1789006979, - "$ctl.layer.C.4.16.1": 2784989, - "$ctl.layer.C.5": 4047472, - "$ctl.layer.C.5.ofs": 876733609, - "$ctl.layer.C.5.name": 2331170085, - "$ctl.layer.C.5.1": 854247300, - "$ctl.layer.C.5.1.type": 1822144843, - "$ctl.layer.C.5.1.i": 1706851086, - "$ctl.layer.C.5.1.dst": 3935784396, - "$ctl.layer.C.5.1.1": 206665332, - "$ctl.layer.C.5.2": 3402042015, - "$ctl.layer.C.5.2.type": 3440014937, - "$ctl.layer.C.5.2.i": 177068583, - "$ctl.layer.C.5.2.dst": 2573733085, - "$ctl.layer.C.5.2.1": 203481453, - "$ctl.layer.C.5.3": 585709861, - "$ctl.layer.C.5.3.type": 2354810279, - "$ctl.layer.C.5.3.i": 3888107790, - "$ctl.layer.C.5.3.dst": 1654383564, - "$ctl.layer.C.5.3.1": 1093460084, - "$ctl.layer.C.5.4": 717570755, - "$ctl.layer.C.5.4.type": 42613128, - "$ctl.layer.C.5.4.i": 2004325927, - "$ctl.layer.C.5.4.dst": 4238092509, - "$ctl.layer.C.5.4.1": 4178191725, - "$ctl.layer.C.5.5": 2149020014, - "$ctl.layer.C.5.5.type": 2513670224, - "$ctl.layer.C.5.5.i": 1419004821, - "$ctl.layer.C.5.5.dst": 3317514015, - "$ctl.layer.C.5.5.1": 771728687, - "$ctl.layer.C.5.6": 406393908, - "$ctl.layer.C.5.6.type": 1428481680, - "$ctl.layer.C.5.6.i": 3583404668, - "$ctl.layer.C.5.6.dst": 1181826574, - "$ctl.layer.C.5.6.1": 1543737398, - "$ctl.layer.C.5.7": 1209352335, - "$ctl.layer.C.5.7.type": 3186849932, - "$ctl.layer.C.5.7.i": 1985489045, - "$ctl.layer.C.5.7.dst": 4214340639, - "$ctl.layer.C.5.7.1": 4159345199, - "$ctl.layer.C.5.8": 2687992666, - "$ctl.layer.C.5.8.type": 306642108, - "$ctl.layer.C.5.8.i": 1605951329, - "$ctl.layer.C.5.8.dst": 3839677195, - "$ctl.layer.C.5.8.1": 3242987835, - "$ctl.layer.C.5.9": 2819193080, - "$ctl.layer.C.5.9.type": 3268779499, - "$ctl.layer.C.5.9.i": 255566954, - "$ctl.layer.C.5.9.dst": 2321684456, - "$ctl.layer.C.5.9.1": 1755928144, - "$ctl.layer.C.5.10": 644710424, - "$ctl.layer.C.5.10.type": 1261812891, - "$ctl.layer.C.5.10.i": 934640180, - "$ctl.layer.C.5.10.dst": 1560939994, - "$ctl.layer.C.5.10.1": 2487908954, - "$ctl.layer.C.5.11": 4258042981, - "$ctl.layer.C.5.11.type": 836935925, - "$ctl.layer.C.5.11.i": 3621095688, - "$ctl.layer.C.5.11.dst": 831457540, - "$ctl.layer.C.5.11.1": 879412526, - "$ctl.layer.C.5.12": 3686935463, - "$ctl.layer.C.5.12.type": 1802351407, - "$ctl.layer.C.5.12.i": 1126984547, - "$ctl.layer.C.5.12.dst": 1662633646, - "$ctl.layer.C.5.12.1": 3754010537, - "$ctl.layer.C.5.13": 1495325721, - "$ctl.layer.C.5.13.type": 2026774137, - "$ctl.layer.C.5.13.i": 1665603514, - "$ctl.layer.C.5.13.dst": 529219752, - "$ctl.layer.C.5.13.1": 2144801504, - "$ctl.layer.C.5.14": 813377750, - "$ctl.layer.C.5.14.type": 1434125011, - "$ctl.layer.C.5.14.i": 3466459701, - "$ctl.layer.C.5.14.dst": 1635463794, - "$ctl.layer.C.5.14.1": 4113450331, - "$ctl.layer.C.5.15": 2917415587, - "$ctl.layer.C.5.15.type": 778781453, - "$ctl.layer.C.5.15.i": 1588837380, - "$ctl.layer.C.5.15.dst": 1787832188, - "$ctl.layer.C.5.15.1": 357450415, - "$ctl.layer.C.5.16": 2078508888, - "$ctl.layer.C.5.16.type": 1938212967, - "$ctl.layer.C.5.16.i": 3557485218, - "$ctl.layer.C.5.16.dst": 654768390, - "$ctl.layer.C.5.16.1": 3770235624, - "$ctl.layer.C.6": 642246650, - "$ctl.layer.C.6.ofs": 855830692, - "$ctl.layer.C.6.name": 2253424896, - "$ctl.layer.C.6.1": 3976192877, - "$ctl.layer.C.6.1.type": 4064278312, - "$ctl.layer.C.6.1.i": 2614275956, - "$ctl.layer.C.6.1.dst": 553606454, - "$ctl.layer.C.6.1.1": 3577744398, - "$ctl.layer.C.6.2": 1155279032, - "$ctl.layer.C.6.2.type": 2376916162, - "$ctl.layer.C.6.2.i": 3177449064, - "$ctl.layer.C.6.2.dst": 1278858266, - "$ctl.layer.C.6.2.1": 1456532258, - "$ctl.layer.C.6.3": 1957541699, - "$ctl.layer.C.6.3.type": 2638917154, - "$ctl.layer.C.6.3.i": 3142042662, - "$ctl.layer.C.6.3.dst": 745296468, - "$ctl.layer.C.6.3.1": 2044325100, - "$ctl.layer.C.6.4": 173668841, - "$ctl.layer.C.6.4.type": 892513234, - "$ctl.layer.C.6.4.i": 1608860152, - "$ctl.layer.C.6.4.dst": 3675018506, - "$ctl.layer.C.6.4.1": 424835378, - "$ctl.layer.C.6.5": 304869367, - "$ctl.layer.C.6.5.type": 724632671, - "$ctl.layer.C.6.5.i": 345966262, - "$ctl.layer.C.6.5.dst": 2747832900, - "$ctl.layer.C.6.5.1": 1393142268, - "$ctl.layer.C.6.6": 4164293965, - "$ctl.layer.C.6.6.type": 1822873839, - "$ctl.layer.C.6.6.i": 1979627105, - "$ctl.layer.C.6.6.dst": 3878382091, - "$ctl.layer.C.6.6.1": 3163817019, - "$ctl.layer.C.6.7": 676878360, - "$ctl.layer.C.6.7.type": 4243228335, - "$ctl.layer.C.6.7.i": 1526723768, - "$ctl.layer.C.6.7.dst": 3587557322, - "$ctl.layer.C.6.7.1": 479528562, - "$ctl.layer.C.6.8": 2150926014, - "$ctl.layer.C.6.8.type": 3586592746, - "$ctl.layer.C.6.8.i": 4246883169, - "$ctl.layer.C.6.8.dst": 2180726539, - "$ctl.layer.C.6.8.1": 596485435, - "$ctl.layer.C.6.9": 3624322761, - "$ctl.layer.C.6.9.type": 3482806488, - "$ctl.layer.C.6.9.i": 3841008239, - "$ctl.layer.C.6.9.dst": 1780012565, - "$ctl.layer.C.6.9.1": 2340853845, - "$ctl.layer.C.6.10": 1565371074, - "$ctl.layer.C.6.10.type": 1931736641, - "$ctl.layer.C.6.10.i": 700821710, - "$ctl.layer.C.6.10.dst": 1804985729, - "$ctl.layer.C.6.10.1": 1664288896, - "$ctl.layer.C.6.11": 120810927, - "$ctl.layer.C.6.11.type": 2796613375, - "$ctl.layer.C.6.11.i": 163487938, - "$ctl.layer.C.6.11.dst": 2816918519, - "$ctl.layer.C.6.11.1": 1126950036, - "$ctl.layer.C.6.12": 3921368957, - "$ctl.layer.C.6.12.type": 2057272341, - "$ctl.layer.C.6.12.i": 1955829545, - "$ctl.layer.C.6.12.dst": 1735464213, - "$ctl.layer.C.6.12.1": 2919291619, - "$ctl.layer.C.6.13": 2413930051, - "$ctl.layer.C.6.13.type": 2251057475, - "$ctl.layer.C.6.13.i": 1418695136, - "$ctl.layer.C.6.13.dst": 1510144155, - "$ctl.layer.C.6.13.1": 2381835962, - "$ctl.layer.C.6.14": 969212140, - "$ctl.layer.C.6.14.type": 1752780153, - "$ctl.layer.C.6.14.i": 3315894351, - "$ctl.layer.C.6.14.dst": 1720923801, - "$ctl.layer.C.6.14.1": 4279024897, - "$ctl.layer.C.6.15": 3756706041, - "$ctl.layer.C.6.15.type": 2827597335, - "$ctl.layer.C.6.15.i": 2510145118, - "$ctl.layer.C.6.15.dst": 1583636911, - "$ctl.layer.C.6.15.1": 3741696277, - "$ctl.layer.C.6.16": 2322791298, - "$ctl.layer.C.6.16.type": 2350416429, - "$ctl.layer.C.6.16.i": 3715285096, - "$ctl.layer.C.6.16.dst": 2114126381, - "$ctl.layer.C.6.16.1": 383447074, - "$ctl.layer.R": 109153713, - "$ctl.layer.R.sel": 2781719543, - "$ctl.layer.R.spidx": 3109791667, - "$ctl.layer.R.1": 4260884953, - "$ctl.layer.R.1.ofs": 3703849503, - "$ctl.layer.R.1.name": 2447183015, - "$ctl.layer.R.1.1": 3844338851, - "$ctl.layer.R.1.1.type": 2476668616, - "$ctl.layer.R.1.1.i": 569600667, - "$ctl.layer.R.1.1.dst": 2462619617, - "$ctl.layer.R.1.1.1": 1616791361, - "$ctl.layer.R.1.2": 475655869, - "$ctl.layer.R.1.2.type": 3185220746, - "$ctl.layer.R.1.2.i": 1411435832, - "$ctl.layer.R.1.2.dst": 3808222026, - "$ctl.layer.R.1.2.1": 311291378, - "$ctl.layer.R.1.3": 1655531378, - "$ctl.layer.R.1.3.type": 3634544888, - "$ctl.layer.R.1.3.i": 2303875302, - "$ctl.layer.R.1.3.dst": 242592788, - "$ctl.layer.R.1.3.1": 3887896620, - "$ctl.layer.R.1.4": 3081985735, - "$ctl.layer.R.1.4.type": 1131729720, - "$ctl.layer.R.1.4.i": 3119828529, - "$ctl.layer.R.1.4.dst": 891222779, - "$ctl.layer.R.1.4.1": 3230131275, - "$ctl.layer.R.1.5": 292280193, - "$ctl.layer.R.1.5.type": 1401297291, - "$ctl.layer.R.1.5.i": 264128062, - "$ctl.layer.R.1.5.dst": 2157271132, - "$ctl.layer.R.1.5.1": 1985178596, - "$ctl.layer.R.1.6": 1651611475, - "$ctl.layer.R.1.6.type": 3834131623, - "$ctl.layer.R.1.6.i": 658356425, - "$ctl.layer.R.1.6.dst": 2556578851, - "$ctl.layer.R.1.6.1": 231733251, - "$ctl.layer.R.1.7": 2630160360, - "$ctl.layer.R.1.7.type": 2551336410, - "$ctl.layer.R.1.7.i": 1218813287, - "$ctl.layer.R.1.7.dst": 3620473629, - "$ctl.layer.R.1.7.1": 3474153005, - "$ctl.layer.R.1.8": 4098558434, - "$ctl.layer.R.1.8.type": 2269005037, - "$ctl.layer.R.1.8.i": 2313950258, - "$ctl.layer.R.1.8.dst": 420479552, - "$ctl.layer.R.1.8.1": 2337725688, - "$ctl.layer.R.1.9": 889381559, - "$ctl.layer.R.1.9.type": 871042906, - "$ctl.layer.R.1.9.i": 2074549391, - "$ctl.layer.R.1.9.dst": 8432117, - "$ctl.layer.R.1.9.1": 4111570293, - "$ctl.layer.R.1.10": 3862848909, - "$ctl.layer.R.1.10.type": 1480978846, - "$ctl.layer.R.1.10.i": 3018615721, - "$ctl.layer.R.1.10.dst": 577305255, - "$ctl.layer.R.1.10.1": 3898035535, - "$ctl.layer.R.1.11": 2491364128, - "$ctl.layer.R.1.11.type": 2430151392, - "$ctl.layer.R.1.11.i": 2480957069, - "$ctl.layer.R.1.11.dst": 3315073265, - "$ctl.layer.R.1.11.1": 3365609603, - "$ctl.layer.R.1.12": 1540332562, - "$ctl.layer.R.1.12.type": 941237706, - "$ctl.layer.R.1.12.i": 4011809870, - "$ctl.layer.R.1.12.dst": 3699146355, - "$ctl.layer.R.1.12.1": 931796532, - "$ctl.layer.R.1.13": 64023508, - "$ctl.layer.R.1.13.type": 1892045692, - "$ctl.layer.R.1.13.i": 3473856495, - "$ctl.layer.R.1.13.dst": 3473596461, - "$ctl.layer.R.1.13.1": 399422677, - "$ctl.layer.R.1.14": 2982591755, - "$ctl.layer.R.1.14.type": 1415134534, - "$ctl.layer.R.1.14.i": 940428672, - "$ctl.layer.R.1.14.dst": 567986895, - "$ctl.layer.R.1.14.1": 1987936918, - "$ctl.layer.R.1.15": 1843105086, - "$ctl.layer.R.1.15.type": 2364097032, - "$ctl.layer.R.1.15.i": 134351833, - "$ctl.layer.R.1.15.dst": 3573098425, - "$ctl.layer.R.1.15.1": 1455523066, - "$ctl.layer.R.1.16": 288110157, - "$ctl.layer.R.1.16.type": 1331319538, - "$ctl.layer.R.1.16.i": 1749088999, - "$ctl.layer.R.1.16.dst": 4027305115, - "$ctl.layer.R.1.16.1": 2632758445, - "$ctl.layer.R.2": 1476094594, - "$ctl.layer.R.2.ofs": 3728735770, - "$ctl.layer.R.2.name": 1011784400, - "$ctl.layer.R.2.1": 2320045274, - "$ctl.layer.R.2.1.type": 4281738954, - "$ctl.layer.R.2.1.i": 3584610802, - "$ctl.layer.R.2.1.dst": 1187824896, - "$ctl.layer.R.2.1.1": 1547446584, - "$ctl.layer.R.2.2": 3494841391, - "$ctl.layer.R.2.2.type": 160339083, - "$ctl.layer.R.2.2.i": 110878130, - "$ctl.layer.R.2.2.dst": 2507542720, - "$ctl.layer.R.2.2.1": 218551160, - "$ctl.layer.R.2.3": 631408009, - "$ctl.layer.R.2.3.type": 2630922419, - "$ctl.layer.R.2.3.i": 1014584011, - "$ctl.layer.R.2.3.dst": 3243270065, - "$ctl.layer.R.2.3.1": 3809370033, - "$ctl.layer.R.2.4": 1604877918, - "$ctl.layer.R.2.4.type": 1544993472, - "$ctl.layer.R.2.4.i": 1838601990, - "$ctl.layer.R.2.4.dst": 3904840692, - "$ctl.layer.R.2.4.1": 204023116, - "$ctl.layer.R.2.5": 2690667987, - "$ctl.layer.R.2.5.type": 1036230049, - "$ctl.layer.R.2.5.i": 1582120835, - "$ctl.layer.R.2.5.dst": 3480384249, - "$ctl.layer.R.2.5.1": 618688841, - "$ctl.layer.R.2.6": 3261784831, - "$ctl.layer.R.2.6.type": 1309257507, - "$ctl.layer.R.2.6.i": 2071581918, - "$ctl.layer.R.2.6.dst": 10750012, - "$ctl.layer.R.2.6.1": 4108639236, - "$ctl.layer.R.2.7": 2092973140, - "$ctl.layer.R.2.7.type": 2542937987, - "$ctl.layer.R.2.7.i": 1146792295, - "$ctl.layer.R.2.7.dst": 3213195037, - "$ctl.layer.R.2.7.1": 3807334957, - "$ctl.layer.R.2.8": 3561206697, - "$ctl.layer.R.2.8.type": 1321201777, - "$ctl.layer.R.2.8.i": 4266467383, - "$ctl.layer.R.2.8.dst": 1864683085, - "$ctl.layer.R.2.8.1": 934973693, - "$ctl.layer.R.2.9": 351906942, - "$ctl.layer.R.2.9.type": 2615161689, - "$ctl.layer.R.2.9.i": 711633012, - "$ctl.layer.R.2.9.dst": 3113416246, - "$ctl.layer.R.2.9.1": 3906291982, - "$ctl.layer.R.2.10": 176065404, - "$ctl.layer.R.2.10.type": 4231027978, - "$ctl.layer.R.2.10.i": 135254384, - "$ctl.layer.R.2.10.dst": 669297961, - "$ctl.layer.R.2.10.1": 3299025854, - "$ctl.layer.R.2.11": 1620622633, - "$ctl.layer.R.2.11.type": 3260909724, - "$ctl.layer.R.2.11.i": 1746327148, - "$ctl.layer.R.2.11.dst": 4113135491, - "$ctl.layer.R.2.11.1": 609852522, - "$ctl.layer.R.2.12": 2278176011, - "$ctl.layer.R.2.12.type": 3869813606, - "$ctl.layer.R.2.12.i": 4080530463, - "$ctl.layer.R.2.12.dst": 3729861349, - "$ctl.layer.R.2.12.1": 2211101253, - "$ctl.layer.R.2.13": 3617878197, - "$ctl.layer.R.2.13.type": 4260339784, - "$ctl.layer.R.2.13.i": 3544614174, - "$ctl.layer.R.2.13.dst": 600644351, - "$ctl.layer.R.2.13.1": 3817749572, - "$ctl.layer.R.2.14": 772879378, - "$ctl.layer.R.2.14.type": 3395058770, - "$ctl.layer.R.2.14.i": 1814536953, - "$ctl.layer.R.2.14.dst": 637343953, - "$ctl.layer.R.2.14.1": 1925143031, - "$ctl.layer.R.2.15": 2447467359, - "$ctl.layer.R.2.15.type": 3326925732, - "$ctl.layer.R.2.15.i": 3694678176, - "$ctl.layer.R.2.15.dst": 3642078571, - "$ctl.layer.R.2.15.1": 1383451539, - "$ctl.layer.R.2.16": 3708323516, - "$ctl.layer.R.2.16.type": 65528430, - "$ctl.layer.R.2.16.i": 2488890886, - "$ctl.layer.R.2.16.dst": 3821767949, - "$ctl.layer.R.2.16.1": 1353394252, - "$ctl.layer.R.3": 2561762447, - "$ctl.layer.R.3.ofs": 695265781, - "$ctl.layer.R.3.name": 1883194157, - "$ctl.layer.R.3.1": 1519354089, - "$ctl.layer.R.3.1.type": 506420662, - "$ctl.layer.R.3.1.i": 1581610010, - "$ctl.layer.R.3.1.dst": 3815540472, - "$ctl.layer.R.3.1.1": 3216131904, - "$ctl.layer.R.3.2": 810047643, - "$ctl.layer.R.3.2.type": 521029228, - "$ctl.layer.R.3.2.i": 1532008882, - "$ctl.layer.R.3.2.dst": 3592760512, - "$ctl.layer.R.3.2.1": 484644728, - "$ctl.layer.R.3.3": 2241704272, - "$ctl.layer.R.3.3.type": 1515682143, - "$ctl.layer.R.3.3.i": 3162279648, - "$ctl.layer.R.3.3.dst": 765655938, - "$ctl.layer.R.3.3.1": 1980916666, - "$ctl.layer.R.3.4": 1067528874, - "$ctl.layer.R.3.4.type": 3617094805, - "$ctl.layer.R.3.4.i": 3987686155, - "$ctl.layer.R.3.4.dst": 1585614833, - "$ctl.layer.R.3.4.1": 1192868209, - "$ctl.layer.R.3.5": 2153196415, - "$ctl.layer.R.3.5.type": 1632414285, - "$ctl.layer.R.3.5.i": 516533181, - "$ctl.layer.R.3.5.dst": 2918440695, - "$ctl.layer.R.3.5.1": 4164224375, - "$ctl.layer.R.3.6": 3621758164, - "$ctl.layer.R.3.6.type": 3826817541, - "$ctl.layer.R.3.6.i": 1873429064, - "$ctl.layer.R.3.6.dst": 4107644602, - "$ctl.layer.R.3.6.1": 2923409538, - "$ctl.layer.R.3.7": 3258276299, - "$ctl.layer.R.3.7.type": 3186555452, - "$ctl.layer.R.3.7.i": 2077381793, - "$ctl.layer.R.3.7.dst": 4143417419, - "$ctl.layer.R.3.7.1": 4251278331, - "$ctl.layer.R.3.8": 54055872, - "$ctl.layer.R.3.8.type": 1274072692, - "$ctl.layer.R.3.8.i": 2987842908, - "$ctl.layer.R.3.8.dst": 591179694, - "$ctl.layer.R.3.8.1": 3551270038, - "$ctl.layer.R.3.9": 3169766549, - "$ctl.layer.R.3.9.type": 3632528060, - "$ctl.layer.R.3.9.i": 3738276174, - "$ctl.layer.R.3.9.dst": 1840135948, - "$ctl.layer.R.3.9.1": 2238130740, - "$ctl.layer.R.3.10": 1927264596, - "$ctl.layer.R.3.10.type": 3623555047, - "$ctl.layer.R.3.10.i": 3952636712, - "$ctl.layer.R.3.10.dst": 3139940676, - "$ctl.layer.R.3.10.1": 1292190102, - "$ctl.layer.R.3.11": 1142991777, - "$ctl.layer.R.3.11.type": 4016580425, - "$ctl.layer.R.3.11.i": 3414976532, - "$ctl.layer.R.3.11.dst": 2015266718, - "$ctl.layer.R.3.11.1": 754560578, - "$ctl.layer.R.3.12": 607007411, - "$ctl.layer.R.3.12.type": 3993085011, - "$ctl.layer.R.3.12.i": 2327933479, - "$ctl.layer.R.3.12.dst": 2806371760, - "$ctl.layer.R.3.12.1": 3962484845, - "$ctl.layer.R.3.13": 1412363021, - "$ctl.layer.R.3.13.type": 3023739653, - "$ctl.layer.R.3.13.i": 1790752502, - "$ctl.layer.R.3.13.dst": 2989344458, - "$ctl.layer.R.3.13.1": 3425315388, - "$ctl.layer.R.3.14": 628232650, - "$ctl.layer.R.3.14.type": 3689415407, - "$ctl.layer.R.3.14.i": 2293350657, - "$ctl.layer.R.3.14.dst": 3109934476, - "$ctl.layer.R.3.14.1": 3927903311, - "$ctl.layer.R.3.15": 4118610391, - "$ctl.layer.R.3.15.type": 4061653617, - "$ctl.layer.R.3.15.i": 1487934264, - "$ctl.layer.R.3.15.dst": 2938140806, - "$ctl.layer.R.3.15.1": 3390282171, - "$ctl.layer.R.3.16": 3313559700, - "$ctl.layer.R.3.16.type": 2931892571, - "$ctl.layer.R.3.16.i": 400872334, - "$ctl.layer.R.3.16.dst": 2446107640, - "$ctl.layer.R.3.16.1": 3645381108, - "$ctl.layer.R.3.17": 113988387, - "$ctl.layer.R.3.17.type": 3577390253, - "$ctl.layer.R.3.17.i": 4158064250, - "$ctl.layer.R.3.17.dst": 2986235890, - "$ctl.layer.R.3.17.1": 3108250784, - "$ctl.layer.R.3.18": 3603894752, - "$ctl.layer.R.3.18.type": 3718721719, - "$ctl.layer.R.3.18.i": 365675109, - "$ctl.layer.R.3.18.dst": 2106682708, - "$ctl.layer.R.3.18.1": 2000227795, - "$ctl.layer.R.3.19": 1759044202, - "$ctl.layer.R.3.19.type": 3908869657, - "$ctl.layer.R.3.19.i": 4123637588, - "$ctl.layer.R.3.19.dst": 2751011886, - "$ctl.layer.R.3.19.1": 1463220354, - "$ctl.layer.R.3.20": 1238819260, - "$ctl.layer.R.3.20.type": 684227237, - "$ctl.layer.R.3.20.i": 3362233264, - "$ctl.layer.R.3.20.dst": 3162262664, - "$ctl.layer.R.3.20.1": 2482641278, - "$ctl.layer.R.3.21": 2599400169, - "$ctl.layer.R.3.21.type": 1580546103, - "$ctl.layer.R.3.21.i": 3899648684, - "$ctl.layer.R.3.21.dst": 2348890114, - "$ctl.layer.R.3.21.1": 3020071978, - "$ctl.layer.R.3.22": 3178433867, - "$ctl.layer.R.3.22.type": 1188088081, - "$ctl.layer.R.3.22.i": 764464223, - "$ctl.layer.R.3.22.dst": 40455076, - "$ctl.layer.R.3.22.1": 4179854853, - "$ctl.layer.R.3.23": 1732999797, - "$ctl.layer.R.3.23.type": 1410857763, - "$ctl.layer.R.3.23.i": 1302181598, - "$ctl.layer.R.3.23.dst": 434424958, - "$ctl.layer.R.3.23.1": 422917252, - "$ctl.layer.R.3.24": 3093923794, - "$ctl.layer.R.3.24.type": 818210317, - "$ctl.layer.R.3.24.i": 830380217, - "$ctl.layer.R.3.24.dst": 3193245456, - "$ctl.layer.R.3.24.1": 4078331447, - "$ctl.layer.R.3.25": 3258472735, - "$ctl.layer.R.3.25.type": 833929983, - "$ctl.layer.R.3.25.i": 1636866656, - "$ctl.layer.R.3.25.dst": 136185258, - "$ctl.layer.R.3.25.1": 320774483, - "$ctl.layer.R.3.26": 481388156, - "$ctl.layer.R.3.26.type": 1322233721, - "$ctl.layer.R.3.26.i": 3299986502, - "$ctl.layer.R.3.26.dst": 536053356, - "$ctl.layer.R.3.26.1": 3763575308, - "$ctl.layer.R.3.27": 2916360411, - "$ctl.layer.R.3.27.type": 709463083, - "$ctl.layer.R.3.27.i": 3837396786, - "$ctl.layer.R.3.27.dst": 551915046, - "$ctl.layer.R.3.27.1": 5035256, - "$ctl.layer.R.3.28": 3753001416, - "$ctl.layer.R.3.28.type": 745954549, - "$ctl.layer.R.3.28.i": 3366926413, - "$ctl.layer.R.3.28.dst": 2309880216, - "$ctl.layer.R.3.28.1": 1145177659, - "$ctl.layer.R.3.29": 1973966962, - "$ctl.layer.R.3.29.type": 1227714631, - "$ctl.layer.R.3.29.i": 3903645548, - "$ctl.layer.R.3.29.dst": 1442450, - "$ctl.layer.R.3.29.1": 1681891562, - "$ctl.layer.R.3.30": 1353861502, - "$ctl.layer.R.3.30.type": 3066939779, - "$ctl.layer.R.3.30.i": 1249480514, - "$ctl.layer.R.3.30.dst": 1092845840, - "$ctl.layer.R.3.30.1": 2215602492, - "$ctl.layer.R.3.31": 2053930891, - "$ctl.layer.R.3.31.type": 2946137137, - "$ctl.layer.R.3.31.i": 2860554830, - "$ctl.layer.R.3.31.dst": 1969130678, - "$ctl.layer.R.3.31.1": 3821392936, - "$ctl.layer.R.3.32": 1184266153, - "$ctl.layer.R.3.32.type": 4056871367, - "$ctl.layer.R.3.32.i": 3553343629, - "$ctl.layer.R.3.32.dst": 1427766228, - "$ctl.layer.R.3.32.1": 2707485255, - "$ctl.layer.R.3.33": 521189399, - "$ctl.layer.R.3.33.type": 3916778213, - "$ctl.layer.R.3.33.i": 3016936412, - "$ctl.layer.R.3.33.dst": 1622534698, - "$ctl.layer.R.3.33.1": 18350230, - "$ctl.layer.R.3.34": 1184559264, - "$ctl.layer.R.3.34.type": 3020014219, - "$ctl.layer.R.3.34.i": 1381886459, - "$ctl.layer.R.3.34.dst": 1082523480, - "$ctl.layer.R.3.34.1": 2347966165, - "$ctl.layer.R.3.35": 3541379405, - "$ctl.layer.R.3.35.type": 2878491097, - "$ctl.layer.R.3.35.i": 577017874, - "$ctl.layer.R.3.35.dst": 1978474078, - "$ctl.layer.R.3.35.1": 1806274881, - "$ctl.layer.R.3.36": 4215194174, - "$ctl.layer.R.3.36.type": 4025920207, - "$ctl.layer.R.3.36.i": 1311747796, - "$ctl.layer.R.3.36.dst": 1496086748, - "$ctl.layer.R.3.36.1": 930408558, - "$ctl.layer.R.3.37": 1694062553, - "$ctl.layer.R.3.37.type": 3109842573, - "$ctl.layer.R.3.37.i": 775300032, - "$ctl.layer.R.3.37.dst": 1627290450, - "$ctl.layer.R.3.37.1": 393960858, - "$ctl.layer.R.3.38": 2713907338, - "$ctl.layer.R.3.38.type": 2989048531, - "$ctl.layer.R.3.38.i": 3099672607, - "$ctl.layer.R.3.38.dst": 1836412128, - "$ctl.layer.R.3.38.1": 1443263737, - "$ctl.layer.R.3.39": 532226048, - "$ctl.layer.R.3.39.type": 3466720065, - "$ctl.layer.R.3.39.i": 415779598, - "$ctl.layer.R.3.39.dst": 1399910726, - "$ctl.layer.R.3.39.1": 906856936, - "$ctl.layer.R.3.40": 527976221, - "$ctl.layer.R.3.40.type": 1956644902, - "$ctl.layer.R.3.40.i": 447889721, - "$ctl.layer.R.3.40.dst": 962811359, - "$ctl.layer.R.3.40.1": 3021780831, - "$ctl.layer.R.4": 2193203958, - "$ctl.layer.R.4.ofs": 2581616112, - "$ctl.layer.R.4.name": 3269953382, - "$ctl.layer.R.4.1": 2385813787, - "$ctl.layer.R.4.1.type": 3225357611, - "$ctl.layer.R.4.1.i": 312488993, - "$ctl.layer.R.4.1.dst": 2541052619, - "$ctl.layer.R.4.1.1": 204703355, - "$ctl.layer.R.4.2": 1128077781, - "$ctl.layer.R.4.2.type": 1492199729, - "$ctl.layer.R.4.2.i": 1405740380, - "$ctl.layer.R.4.2.dst": 3472226222, - "$ctl.layer.R.4.2.1": 3579759766, - "$ctl.layer.R.4.3": 764596071, - "$ctl.layer.R.4.3.type": 3539553075, - "$ctl.layer.R.4.3.i": 1616451557, - "$ctl.layer.R.4.3.dst": 4018316431, - "$ctl.layer.R.4.3.1": 113484991, - "$ctl.layer.R.4.4": 1855342652, - "$ctl.layer.R.4.4.type": 4217187936, - "$ctl.layer.R.4.4.i": 2433851525, - "$ctl.layer.R.4.4.dst": 535588463, - "$ctl.layer.R.4.4.1": 3531496159, - "$ctl.layer.R.4.5": 3318499766, - "$ctl.layer.R.4.5.type": 1410631182, - "$ctl.layer.R.4.5.i": 3523704578, - "$ctl.layer.R.4.5.dst": 1625318256, - "$ctl.layer.R.4.5.1": 2473753544, - "$ctl.layer.R.4.6": 936800032, - "$ctl.layer.R.4.6.type": 3516582570, - "$ctl.layer.R.4.6.i": 2760048205, - "$ctl.layer.R.4.6.dst": 861457063, - "$ctl.layer.R.4.6.1": 3270505607, - "$ctl.layer.R.4.7": 2452547573, - "$ctl.layer.R.4.7.type": 691073599, - "$ctl.layer.R.4.7.i": 4187846326, - "$ctl.layer.R.4.7.dst": 2127178308, - "$ctl.layer.R.4.7.1": 2014001660, - "$ctl.layer.R.4.8": 3811878791, - "$ctl.layer.R.4.8.type": 1668484555, - "$ctl.layer.R.4.8.i": 297593153, - "$ctl.layer.R.4.8.dst": 2526485419, - "$ctl.layer.R.4.8.1": 273664155, - "$ctl.layer.R.4.9": 484974657, - "$ctl.layer.R.4.9.type": 1308873054, - "$ctl.layer.R.4.9.i": 1105612110, - "$ctl.layer.R.4.9.dst": 3339541260, - "$ctl.layer.R.4.9.1": 3682299444, - "$ctl.layer.R.4.10": 2793877015, - "$ctl.layer.R.4.10.type": 2517632983, - "$ctl.layer.R.4.10.i": 3763811331, - "$ctl.layer.R.4.10.dst": 2412809902, - "$ctl.layer.R.4.10.1": 434800213, - "$ctl.layer.R.4.11": 3493862090, - "$ctl.layer.R.4.11.type": 2271415877, - "$ctl.layer.R.4.11.i": 6255527, - "$ctl.layer.R.4.11.dst": 3176392452, - "$ctl.layer.R.4.11.1": 972175913, - "$ctl.layer.R.4.12": 2965557832, - "$ctl.layer.R.4.12.type": 2173703403, - "$ctl.layer.R.4.12.i": 1033933204, - "$ctl.layer.R.4.12.dst": 2689361634, - "$ctl.layer.R.4.12.1": 926111662, - "$ctl.layer.R.4.13": 2302399358, - "$ctl.layer.R.4.13.type": 1929939369, - "$ctl.layer.R.4.13.i": 1571678133, - "$ctl.layer.R.4.13.dst": 2254052696, - "$ctl.layer.R.4.13.1": 1464179151, - "$ctl.layer.R.4.14": 2960774817, - "$ctl.layer.R.4.14.type": 2354816223, - "$ctl.layer.R.4.14.i": 4230939962, - "$ctl.layer.R.4.14.dst": 2322214294, - "$ctl.layer.R.4.14.1": 4123441084, - "$ctl.layer.R.4.15": 686343700, - "$ctl.layer.R.4.15.type": 2339065837, - "$ctl.layer.R.4.15.i": 2353066867, - "$ctl.layer.R.4.15.dst": 2608714572, - "$ctl.layer.R.4.15.1": 365850048, - "$ctl.layer.R.4.16": 1365322071, - "$ctl.layer.R.4.16.type": 2047379635, - "$ctl.layer.R.4.16.i": 2751599437, - "$ctl.layer.R.4.16.dst": 2841903754, - "$ctl.layer.R.4.16.1": 2376320391, - "$ctl.layer.R.5": 940547299, - "$ctl.layer.R.5.ofs": 208848606, - "$ctl.layer.R.5.name": 2457262163, - "$ctl.layer.R.5.1": 1853745863, - "$ctl.layer.R.5.1.type": 802540712, - "$ctl.layer.R.5.1.i": 3598008388, - "$ctl.layer.R.5.1.dst": 1704906406, - "$ctl.layer.R.5.1.1": 2416409246, - "$ctl.layer.R.5.2": 2738086812, - "$ctl.layer.R.5.2.type": 376645541, - "$ctl.layer.R.5.2.i": 472719681, - "$ctl.layer.R.5.2.dst": 2701693867, - "$ctl.layer.R.5.2.1": 1438830747, - "$ctl.layer.R.5.3": 4248591766, - "$ctl.layer.R.5.3.type": 3573110264, - "$ctl.layer.R.5.3.i": 3648231836, - "$ctl.layer.R.5.3.dst": 1414301422, - "$ctl.layer.R.5.3.1": 2684772950, - "$ctl.layer.R.5.4": 1318198248, - "$ctl.layer.R.5.4.type": 1188931978, - "$ctl.layer.R.5.4.i": 4112911493, - "$ctl.layer.R.5.4.dst": 1884019311, - "$ctl.layer.R.5.4.1": 915599071, - "$ctl.layer.R.5.5": 2781189629, - "$ctl.layer.R.5.5.type": 1133912775, - "$ctl.layer.R.5.5.i": 2790818567, - "$ctl.layer.R.5.5.dst": 394604413, - "$ctl.layer.R.5.5.1": 2361798605, - "$ctl.layer.R.5.6": 3754618551, - "$ctl.layer.R.5.6.type": 238821514, - "$ctl.layer.R.5.6.i": 1948706626, - "$ctl.layer.R.5.6.dst": 50402224, - "$ctl.layer.R.5.6.1": 4069643656, - "$ctl.layer.R.5.7": 555968012, - "$ctl.layer.R.5.7.type": 1336834066, - "$ctl.layer.R.5.7.i": 3368513563, - "$ctl.layer.R.5.7.dst": 1302479457, - "$ctl.layer.R.5.7.1": 2807857601, - "$ctl.layer.R.5.8": 2066308801, - "$ctl.layer.R.5.8.type": 1926572856, - "$ctl.layer.R.5.8.i": 4193683542, - "$ctl.layer.R.5.8.dst": 1964874404, - "$ctl.layer.R.5.8.1": 2156606364, - "$ctl.layer.R.5.9": 3755777683, - "$ctl.layer.R.5.9.type": 1043903572, - "$ctl.layer.R.5.9.i": 34957128, - "$ctl.layer.R.5.9.dst": 2095748026, - "$ctl.layer.R.5.9.1": 682120578, - "$ctl.layer.R.5.10": 582457842, - "$ctl.layer.R.5.10.type": 410635401, - "$ctl.layer.R.5.10.i": 1673412606, - "$ctl.layer.R.5.10.dst": 2070658786, - "$ctl.layer.R.5.10.1": 2807069232, - "$ctl.layer.R.5.11": 1272274623, - "$ctl.layer.R.5.11.type": 604444027, - "$ctl.layer.R.5.11.i": 3286183922, - "$ctl.layer.R.5.11.dst": 3015522700, - "$ctl.layer.R.5.11.1": 119666180, - "$ctl.layer.R.5.12": 611935853, - "$ctl.layer.R.5.12.type": 4196766677, - "$ctl.layer.R.5.12.i": 3128305081, - "$ctl.layer.R.5.12.dst": 2831628750, - "$ctl.layer.R.5.12.1": 1778969587, - "$ctl.layer.R.5.13": 1406605139, - "$ctl.layer.R.5.13.type": 745724055, - "$ctl.layer.R.5.13.i": 2592932752, - "$ctl.layer.R.5.13.dst": 1666805576, - "$ctl.layer.R.5.13.1": 3385843114, - "$ctl.layer.R.5.14": 2143613596, - "$ctl.layer.R.5.14.type": 939471041, - "$ctl.layer.R.5.14.i": 2162424159, - "$ctl.layer.R.5.14.dst": 1986613818, - "$ctl.layer.R.5.14.1": 3128339345, - "$ctl.layer.R.5.15": 2603399625, - "$ctl.layer.R.5.15.type": 651134547, - "$ctl.layer.R.5.15.i": 1358640942, - "$ctl.layer.R.5.15.dst": 1762561444, - "$ctl.layer.R.5.15.1": 2588430821, - "$ctl.layer.R.5.16": 3487239474, - "$ctl.layer.R.5.16.type": 866016429, - "$ctl.layer.R.5.16.i": 403845016, - "$ctl.layer.R.5.16.dst": 1583925894, - "$ctl.layer.R.5.16.1": 1534255570, - "$ctl.layer.R.6": 1243202169, - "$ctl.layer.R.6.ofs": 2123490014, - "$ctl.layer.R.6.name": 1983949898, - "$ctl.layer.R.6.1": 292751966, - "$ctl.layer.R.6.1.type": 528737904, - "$ctl.layer.R.6.1.i": 2316740137, - "$ctl.layer.R.6.1.dst": 423557187, - "$ctl.layer.R.6.1.1": 2343128035, - "$ctl.layer.R.6.2": 1797849555, - "$ctl.layer.R.6.2.type": 3818166097, - "$ctl.layer.R.6.2.i": 3469590102, - "$ctl.layer.R.6.2.dst": 1408389284, - "$ctl.layer.R.6.2.1": 1348468124, - "$ctl.layer.R.6.3": 2894125672, - "$ctl.layer.R.6.3.type": 2235100236, - "$ctl.layer.R.6.3.i": 2889197407, - "$ctl.layer.R.6.3.dst": 660346149, - "$ctl.layer.R.6.3.1": 3450033157, - "$ctl.layer.R.6.4": 3825652834, - "$ctl.layer.R.6.4.type": 1743218079, - "$ctl.layer.R.6.4.i": 3984329199, - "$ctl.layer.R.6.4.dst": 1587542165, - "$ctl.layer.R.6.4.1": 2481383125, - "$ctl.layer.R.6.5": 1304040180, - "$ctl.layer.R.6.5.type": 996887779, - "$ctl.layer.R.6.5.i": 4185820108, - "$ctl.layer.R.6.5.dst": 1789483198, - "$ctl.layer.R.6.5.1": 988508294, - "$ctl.layer.R.6.6": 3217307774, - "$ctl.layer.R.6.6.type": 3586029833, - "$ctl.layer.R.6.6.i": 3337253703, - "$ctl.layer.R.6.6.dst": 1108565949, - "$ctl.layer.R.6.6.1": 1616218509, - "$ctl.layer.R.6.7": 13251187, - "$ctl.layer.R.6.7.type": 3816849068, - "$ctl.layer.R.6.7.i": 221346786, - "$ctl.layer.R.6.7.dst": 2119569040, - "$ctl.layer.R.6.7.1": 647771560, - "$ctl.layer.R.6.8": 1528998669, - "$ctl.layer.R.6.8.type": 3998655598, - "$ctl.layer.R.6.8.i": 1323758683, - "$ctl.layer.R.6.8.dst": 3720545953, - "$ctl.layer.R.6.8.1": 3363555201, - "$ctl.layer.R.6.9": 2950212738, - "$ctl.layer.R.6.9.type": 1769492311, - "$ctl.layer.R.6.9.i": 2329930056, - "$ctl.layer.R.6.9.dst": 431216058, - "$ctl.layer.R.6.9.1": 2306020226, - "$ctl.layer.R.6.10": 1191947503, - "$ctl.layer.R.6.10.type": 140693920, - "$ctl.layer.R.6.10.i": 3088951067, - "$ctl.layer.R.6.10.dst": 3685456515, - "$ctl.layer.R.6.10.1": 2209369261, - "$ctl.layer.R.6.11": 394979202, - "$ctl.layer.R.6.11.type": 638986614, - "$ctl.layer.R.6.11.i": 2552870703, - "$ctl.layer.R.6.11.dst": 1070944809, - "$ctl.layer.R.6.11.1": 1668051169, - "$ctl.layer.R.6.12": 1345847472, - "$ctl.layer.R.6.12.type": 1323116908, - "$ctl.layer.R.6.12.i": 3190472988, - "$ctl.layer.R.6.12.dst": 1254956207, - "$ctl.layer.R.6.12.1": 3049093846, - "$ctl.layer.R.6.13": 674672438, - "$ctl.layer.R.6.13.type": 1149464514, - "$ctl.layer.R.6.13.i": 2654520141, - "$ctl.layer.R.6.13.dst": 725326869, - "$ctl.layer.R.6.13.1": 2507892999, - "$ctl.layer.R.6.14": 4219688057, - "$ctl.layer.R.6.14.type": 284607992, - "$ctl.layer.R.6.14.i": 3040464162, - "$ctl.layer.R.6.14.dst": 3777698427, - "$ctl.layer.R.6.14.1": 3066862324, - "$ctl.layer.R.6.15": 3211693164, - "$ctl.layer.R.6.15.type": 572975502, - "$ctl.layer.R.6.15.i": 625315595, - "$ctl.layer.R.6.15.dst": 1332241249, - "$ctl.layer.R.6.15.1": 2525533320, - "$ctl.layer.R.6.16": 2619038127, - "$ctl.layer.R.6.16.type": 360537028, - "$ctl.layer.R.6.16.i": 1137088437, - "$ctl.layer.R.6.16.dst": 807183207, - "$ctl.layer.R.6.16.1": 253584719, - "$ctl.layer.R.7": 2370607906, - "$ctl.layer.R.7.ofs": 1359487556, - "$ctl.layer.R.7.name": 2943157305, - "$ctl.layer.R.7.1": 1903050405, - "$ctl.layer.R.7.1.type": 3372589509, - "$ctl.layer.R.7.1.i": 2251293246, - "$ctl.layer.R.7.1.dst": 17568860, - "$ctl.layer.R.7.1.1": 2761732068, - "$ctl.layer.R.7.2": 3407984511, - "$ctl.layer.R.7.2.type": 1293344317, - "$ctl.layer.R.7.2.i": 994695771, - "$ctl.layer.R.7.2.dst": 2893286561, - "$ctl.layer.R.7.2.1": 4189380993, - "$ctl.layer.R.7.3": 245870804, - "$ctl.layer.R.7.3.type": 3587489973, - "$ctl.layer.R.7.3.i": 2083153003, - "$ctl.layer.R.7.3.dst": 3981783697, - "$ctl.layer.R.7.3.1": 3049232081, - "$ctl.layer.R.7.4": 3288344617, - "$ctl.layer.R.7.4.type": 1466379387, - "$ctl.layer.R.7.4.i": 1025316335, - "$ctl.layer.R.7.4.dst": 3421815957, - "$ctl.layer.R.7.4.1": 3599407829, - "$ctl.layer.R.7.5": 498475262, - "$ctl.layer.R.7.5.type": 2578237707, - "$ctl.layer.R.7.5.i": 2184883697, - "$ctl.layer.R.7.5.dst": 123927227, - "$ctl.layer.R.7.5.1": 2611302027, - "$ctl.layer.R.7.6": 4005124245, - "$ctl.layer.R.7.6.type": 3455019628, - "$ctl.layer.R.7.6.i": 4216434796, - "$ctl.layer.R.7.6.dst": 1982750366, - "$ctl.layer.R.7.6.1": 2095516326, - "$ctl.layer.R.7.7": 1225740266, - "$ctl.layer.R.7.7.type": 307851994, - "$ctl.layer.R.7.7.i": 816269578, - "$ctl.layer.R.7.7.dst": 3217726280, - "$ctl.layer.R.7.7.1": 923906800, - "$ctl.layer.R.7.8": 4262971583, - "$ctl.layer.R.7.8.type": 1376477250, - "$ctl.layer.R.7.8.i": 2170681941, - "$ctl.layer.R.7.8.dst": 272378079, - "$ctl.layer.R.7.8.1": 3805069423, - "$ctl.layer.R.7.9": 1095615001, - "$ctl.layer.R.7.9.type": 3897697799, - "$ctl.layer.R.7.9.i": 3342820434, - "$ctl.layer.R.7.9.dst": 1276540448, - "$ctl.layer.R.7.9.1": 2832485912, - "$ctl.layer.R.7.10": 1106921704, - "$ctl.layer.R.7.10.type": 2162134742, - "$ctl.layer.R.7.10.i": 4163437316, - "$ctl.layer.R.7.10.dst": 2503200015, - "$ctl.layer.R.7.10.1": 2526392490, - "$ctl.layer.R.7.11": 4030733205, - "$ctl.layer.R.7.11.type": 1737296280, - "$ctl.layer.R.7.11.i": 2552365912, - "$ctl.layer.R.7.11.dst": 1750134537, - "$ctl.layer.R.7.11.1": 920599806, - "$ctl.layer.R.7.12": 269395127, - "$ctl.layer.R.7.12.type": 1163929074, - "$ctl.layer.R.7.12.i": 2866865427, - "$ctl.layer.R.7.12.dst": 2176547307, - "$ctl.layer.R.7.12.1": 3377340121, - "$ctl.layer.R.7.13": 261382921, - "$ctl.layer.R.7.13.type": 2080406228, - "$ctl.layer.R.7.13.i": 3402780490, - "$ctl.layer.R.7.13.dst": 1898821877, - "$ctl.layer.R.7.13.1": 1770691888, - "$ctl.layer.R.7.14": 3221725286, - "$ctl.layer.R.7.14.type": 1655506190, - "$ctl.layer.R.7.14.i": 3696308517, - "$ctl.layer.R.7.14.dst": 1914518375, - "$ctl.layer.R.7.14.1": 2058976971, - "$ctl.layer.R.7.15": 3214373011, - "$ctl.layer.R.7.15.type": 1671249040, - "$ctl.layer.R.7.15.i": 205554484, - "$ctl.layer.R.7.15.dst": 1592656737, - "$ctl.layer.R.7.15.1": 2600667295, - "$ctl.layer.R.7.16": 1869630888, - "$ctl.layer.R.7.16.type": 1962982602, - "$ctl.layer.R.7.16.i": 478110642, - "$ctl.layer.R.7.16.dst": 1990263587, - "$ctl.layer.R.7.16.1": 187543928, - "$ctl.layer.CMPCT": 3839925558, - "$ctl.layer.CMPCT.sel": 4230258351, - "$ctl.layer.CMPCT.spidx": 1465317631, - "$ctl.layer.CMPCT.1": 2812438329, - "$ctl.layer.CMPCT.1.ofs": 1826716928, - "$ctl.layer.CMPCT.1.name": 3019857596, - "$ctl.layer.CMPCT.1.1": 2405650363, - "$ctl.layer.CMPCT.1.1.type": 3491725594, - "$ctl.layer.CMPCT.1.1.i": 2965484775, - "$ctl.layer.CMPCT.1.1.dst": 1067180565, - "$ctl.layer.CMPCT.1.1.1": 3073181485, - "$ctl.layer.CMPCT.1.2": 2249744789, - "$ctl.layer.CMPCT.1.2.type": 1193897412, - "$ctl.layer.CMPCT.1.2.i": 1794371412, - "$ctl.layer.CMPCT.1.2.dst": 4023098846, - "$ctl.layer.CMPCT.1.2.1": 76136814, - "$ctl.layer.CMPCT.1.3": 3094147618, - "$ctl.layer.CMPCT.1.3.type": 3072446975, - "$ctl.layer.CMPCT.1.3.i": 1164013210, - "$ctl.layer.CMPCT.1.3.dst": 3057279472, - "$ctl.layer.CMPCT.1.3.1": 1053592640, - "$ctl.layer.CMPCT.1.4": 236192831, - "$ctl.layer.CMPCT.1.4.type": 3125527132, - "$ctl.layer.CMPCT.1.4.i": 2878637137, - "$ctl.layer.CMPCT.1.4.dst": 812192467, - "$ctl.layer.CMPCT.1.4.1": 1912551019, - "$ctl.layer.CMPCT.1.5": 1730047145, - "$ctl.layer.CMPCT.1.5.type": 2926438945, - "$ctl.layer.CMPCT.1.5.i": 2733308916, - "$ctl.layer.CMPCT.1.5.dst": 835127614, - "$ctl.layer.CMPCT.1.5.1": 3243750926, - "$ctl.layer.CMPCT.1.6": 214285483, - "$ctl.layer.CMPCT.1.6.type": 1322387809, - "$ctl.layer.CMPCT.1.6.i": 3035366243, - "$ctl.layer.CMPCT.1.6.dst": 801476881, - "$ctl.layer.CMPCT.1.6.1": 1935063081, - "$ctl.layer.CMPCT.1.7": 119164248, - "$ctl.layer.CMPCT.1.7.type": 1022205400, - "$ctl.layer.CMPCT.1.7.i": 250961908, - "$ctl.layer.CMPCT.1.7.dst": 2652908862, - "$ctl.layer.CMPCT.1.7.1": 1435144718, - "$ctl.layer.CMPCT.1.8": 1576492882, - "$ctl.layer.CMPCT.1.8.type": 4217774411, - "$ctl.layer.CMPCT.1.8.i": 976999965, - "$ctl.layer.CMPCT.1.8.dst": 3043238559, - "$ctl.layer.CMPCT.1.8.1": 1087252183, - "$ctl.layer.CMPCT.1.9": 2337040367, - "$ctl.layer.CMPCT.1.9.type": 1268415542, - "$ctl.layer.CMPCT.1.9.i": 3919983254, - "$ctl.layer.CMPCT.1.9.dst": 1858823276, - "$ctl.layer.CMPCT.1.9.1": 2282850780, - "$ctl.layer.CMPCT.1.10": 459320609, - "$ctl.layer.CMPCT.1.10.type": 2232712412, - "$ctl.layer.CMPCT.1.10.i": 3805852485, - "$ctl.layer.CMPCT.1.10.dst": 1068753697, - "$ctl.layer.CMPCT.1.10.1": 2839807331, - "$ctl.layer.CMPCT.1.11": 4075199324, - "$ctl.layer.CMPCT.1.11.type": 2007479558, - "$ctl.layer.CMPCT.1.11.i": 3267228817, - "$ctl.layer.CMPCT.1.11.dst": 1794151035, - "$ctl.layer.CMPCT.1.11.1": 2306390719, - "$ctl.layer.CMPCT.1.12": 649875966, - "$ctl.layer.CMPCT.1.12.type": 1900761960, - "$ctl.layer.CMPCT.1.12.i": 2554794578, - "$ctl.layer.CMPCT.1.12.dst": 1402287485, - "$ctl.layer.CMPCT.1.12.1": 2326911128, - "$ctl.layer.CMPCT.1.13": 1312969672, - "$ctl.layer.CMPCT.1.13.type": 1673849810, - "$ctl.layer.CMPCT.1.13.i": 2016176131, - "$ctl.layer.CMPCT.1.13.dst": 925094679, - "$ctl.layer.CMPCT.1.13.1": 1793530441, - "$ctl.layer.CMPCT.1.14": 628643623, - "$ctl.layer.CMPCT.1.14.type": 2098735364, - "$ctl.layer.CMPCT.1.14.i": 3652552172, - "$ctl.layer.CMPCT.1.14.dst": 993223593, - "$ctl.layer.CMPCT.1.14.1": 3760207882, - "$ctl.layer.CMPCT.1.15": 2565490002, - "$ctl.layer.CMPCT.1.15.type": 2083023214, - "$ctl.layer.CMPCT.1.15.i": 1234858997, - "$ctl.layer.CMPCT.1.15.dst": 1253318467, - "$ctl.layer.CMPCT.1.15.1": 3226791238, - "$ctl.layer.CMPCT.1.16": 1891608673, - "$ctl.layer.CMPCT.1.16.type": 1766580336, - "$ctl.layer.CMPCT.1.16.i": 522425035, - "$ctl.layer.CMPCT.1.16.dst": 1536485957, - "$ctl.layer.CMPCT.1.16.1": 902448433, - "$ctl.layer.CMPCT.1.17": 138804686, - "$ctl.layer.CMPCT.1.17.type": 2210767066, - "$ctl.layer.CMPCT.1.17.i": 4278732807, - "$ctl.layer.CMPCT.1.17.dst": 1561944095, - "$ctl.layer.CMPCT.1.17.1": 365099597, - "$ctl.layer.CMPCT.1.18": 3413855517, - "$ctl.layer.CMPCT.1.18.type": 2174274700, - "$ctl.layer.CMPCT.1.18.i": 1954375296, - "$ctl.layer.CMPCT.1.18.dst": 1874460689, - "$ctl.layer.CMPCT.1.18.1": 389552302, - "$ctl.layer.CMPCT.1.19": 228165255, - "$ctl.layer.CMPCT.1.19.type": 1864355830, - "$ctl.layer.CMPCT.1.19.i": 1417062353, - "$ctl.layer.CMPCT.1.19.dst": 1440629163, - "$ctl.layer.CMPCT.1.19.1": 4147211775, - "$ctl.layer.CMPCT.1.20": 1312483594, - "$ctl.layer.CMPCT.1.20.type": 2063575088, - "$ctl.layer.CMPCT.1.20.i": 3623939862, - "$ctl.layer.CMPCT.1.20.dst": 1152710381, - "$ctl.layer.CMPCT.1.20.1": 1905707848, - "$ctl.layer.CMPCT.1.21": 2022957055, - "$ctl.layer.CMPCT.1.21.type": 1921802138, - "$ctl.layer.CMPCT.1.21.i": 4161353946, - "$ctl.layer.CMPCT.1.21.dst": 3579343863, - "$ctl.layer.CMPCT.1.21.1": 2443081020, - "$ctl.layer.CMPCT.1.22": 3104774013, - "$ctl.layer.CMPCT.1.22.type": 1719234684, - "$ctl.layer.CMPCT.1.22.i": 1173640825, - "$ctl.layer.CMPCT.1.22.dst": 1437865481, - "$ctl.layer.CMPCT.1.22.1": 3750335155, - "$ctl.layer.CMPCT.1.23": 2162694211, - "$ctl.layer.CMPCT.1.23.type": 1579101782, - "$ctl.layer.CMPCT.1.23.i": 1710894248, - "$ctl.layer.CMPCT.1.23.dst": 1716482067, - "$ctl.layer.CMPCT.1.23.1": 4287586018, - "$ctl.layer.CMPCT.1.24": 2831389108, - "$ctl.layer.CMPCT.1.24.type": 2024522792, - "$ctl.layer.CMPCT.1.24.i": 1407535663, - "$ctl.layer.CMPCT.1.24.dst": 1134559365, - "$ctl.layer.CMPCT.1.24.1": 3984227457, - "$ctl.layer.CMPCT.2": 38205354, - "$ctl.layer.CMPCT.2.ofs": 2552369434, - "$ctl.layer.CMPCT.2.name": 4114179260, - "$ctl.layer.CMPCT.2.1": 537283034, - "$ctl.layer.CMPCT.2.1.type": 1538715114, - "$ctl.layer.CMPCT.2.1.i": 2445717355, - "$ctl.layer.CMPCT.2.1.dst": 552534809, - "$ctl.layer.CMPCT.2.1.1": 3545842001, - "$ctl.layer.CMPCT.2.2": 2057524951, - "$ctl.layer.CMPCT.2.2.type": 3668216593, - "$ctl.layer.CMPCT.2.2.i": 3203254255, - "$ctl.layer.CMPCT.2.2.dst": 806509341, - "$ctl.layer.CMPCT.2.2.1": 3313496917, - "$ctl.layer.CMPCT.2.3": 3489120385, - "$ctl.layer.CMPCT.2.3.type": 2179853995, - "$ctl.layer.CMPCT.2.3.i": 2254151005, - "$ctl.layer.CMPCT.2.3.dst": 188238303, - "$ctl.layer.CMPCT.2.3.1": 3891339159, - "$ctl.layer.CMPCT.2.4": 3378434398, - "$ctl.layer.CMPCT.2.4.type": 2691614376, - "$ctl.layer.CMPCT.2.4.i": 4034459996, - "$ctl.layer.CMPCT.2.4.dst": 1637673766, - "$ctl.layer.CMPCT.2.4.1": 2450260758, - "$ctl.layer.CMPCT.2.5": 4138337067, - "$ctl.layer.CMPCT.2.5.type": 336788211, - "$ctl.layer.CMPCT.2.5.i": 4026266978, - "$ctl.layer.CMPCT.2.5.dst": 1960190872, - "$ctl.layer.CMPCT.2.5.1": 828816296, - "$ctl.layer.CMPCT.2.6": 751269223, - "$ctl.layer.CMPCT.2.6.type": 2203211511, - "$ctl.layer.CMPCT.2.6.i": 1377539939, - "$ctl.layer.CMPCT.2.6.dst": 3275760913, - "$ctl.layer.CMPCT.2.6.1": 814097449, - "$ctl.layer.CMPCT.2.7": 656353108, - "$ctl.layer.CMPCT.2.7.type": 560843755, - "$ctl.layer.CMPCT.2.7.i": 557642740, - "$ctl.layer.CMPCT.2.7.dst": 2791489854, - "$ctl.layer.CMPCT.2.7.1": 4291952142, - "$ctl.layer.CMPCT.2.8": 2114162977, - "$ctl.layer.CMPCT.2.8.type": 3289316363, - "$ctl.layer.CMPCT.2.8.i": 3904899627, - "$ctl.layer.CMPCT.2.8.dst": 1503402201, - "$ctl.layer.CMPCT.2.8.1": 1244442769, - "$ctl.layer.CMPCT.2.9": 2874188286, - "$ctl.layer.CMPCT.2.9.type": 2350399227, - "$ctl.layer.CMPCT.2.9.i": 2463950489, - "$ctl.layer.CMPCT.2.9.dst": 402708635, - "$ctl.layer.CMPCT.2.9.1": 2353534419, - "$ctl.layer.CMPCT.2.10": 4284206021, - "$ctl.layer.CMPCT.2.10.type": 723397202, - "$ctl.layer.CMPCT.2.10.i": 4281184721, - "$ctl.layer.CMPCT.2.10.dst": 3752576433, - "$ctl.layer.CMPCT.2.10.1": 3401597831, - "$ctl.layer.CMPCT.2.11": 3518684464, - "$ctl.layer.CMPCT.2.11.type": 277967236, - "$ctl.layer.CMPCT.2.11.i": 2671362181, - "$ctl.layer.CMPCT.2.11.dst": 1625434363, - "$ctl.layer.CMPCT.2.11.1": 1786542667, - "$ctl.layer.CMPCT.2.12": 132642594, - "$ctl.layer.CMPCT.2.12.type": 343564958, - "$ctl.layer.CMPCT.2.12.i": 1998239294, - "$ctl.layer.CMPCT.2.12.dst": 843303933, - "$ctl.layer.CMPCT.2.12.1": 2930601956, - "$ctl.layer.CMPCT.2.13": 835096708, - "$ctl.layer.CMPCT.2.13.type": 1240312528, - "$ctl.layer.CMPCT.2.13.i": 2536033511, - "$ctl.layer.CMPCT.2.13.dst": 1320971015, - "$ctl.layer.CMPCT.2.13.1": 1315659437, - "$ctl.layer.CMPCT.2.14": 32731635, - "$ctl.layer.CMPCT.2.14.type": 648058026, - "$ctl.layer.CMPCT.2.14.i": 4211720848, - "$ctl.layer.CMPCT.2.14.dst": 3870049417, - "$ctl.layer.CMPCT.2.14.1": 3164372038, - "$ctl.layer.CMPCT.2.15": 2008974126, - "$ctl.layer.CMPCT.2.15.type": 202439964, - "$ctl.layer.CMPCT.2.15.i": 722825345, - "$ctl.layer.CMPCT.2.15.dst": 778219667, - "$ctl.layer.CMPCT.2.15.1": 3696790282, - "$ctl.layer.CMPCT.2.16": 1374370949, - "$ctl.layer.CMPCT.2.16.type": 1358580982, - "$ctl.layer.CMPCT.2.16.i": 4218861119, - "$ctl.layer.CMPCT.2.16.dst": 1212427157, - "$ctl.layer.CMPCT.2.16.1": 382562277, - "$ctl.layer.CMPCT.2.17": 3830068914, - "$ctl.layer.CMPCT.2.17.type": 766325192, - "$ctl.layer.CMPCT.2.17.i": 461708515, - "$ctl.layer.CMPCT.2.17.dst": 1353893023, - "$ctl.layer.CMPCT.2.17.1": 919076521, - "$ctl.layer.CMPCT.2.18": 2859931625, - "$ctl.layer.CMPCT.2.18.type": 572527330, - "$ctl.layer.CMPCT.2.18.i": 2474271388, - "$ctl.layer.CMPCT.2.18.dst": 1581859905, - "$ctl.layer.CMPCT.2.18.1": 4206697538, - "$ctl.layer.CMPCT.2.19": 745357971, - "$ctl.layer.CMPCT.2.19.type": 386494548, - "$ctl.layer.CMPCT.2.19.i": 863097157, - "$ctl.layer.CMPCT.2.19.dst": 801025291, - "$ctl.layer.CMPCT.2.19.1": 448039691, - "$ctl.layer.CMPCT.2.20": 558107961, - "$ctl.layer.CMPCT.2.20.type": 2339076149, - "$ctl.layer.CMPCT.2.20.i": 4048209757, - "$ctl.layer.CMPCT.2.20.dst": 1747931133, - "$ctl.layer.CMPCT.2.20.1": 2916937083, - "$ctl.layer.CMPCT.2.21": 4150056884, - "$ctl.layer.CMPCT.2.21.type": 1809761511, - "$ctl.layer.CMPCT.2.21.i": 3511860217, - "$ctl.layer.CMPCT.2.21.dst": 4219837527, - "$ctl.layer.CMPCT.2.21.1": 2375385719, - "$ctl.layer.CMPCT.2.22": 554032774, - "$ctl.layer.CMPCT.2.22.type": 1366842946, - "$ctl.layer.CMPCT.2.22.i": 2315099738, - "$ctl.layer.CMPCT.2.22.dst": 4090128817, - "$ctl.layer.CMPCT.2.22.1": 2593154176, - "$ctl.layer.CMPCT.2.23": 1046388512, - "$ctl.layer.CMPCT.2.23.type": 2160327787, - "$ctl.layer.CMPCT.2.23.i": 1778420443, - "$ctl.layer.CMPCT.2.23.dst": 1840800971, - "$ctl.layer.CMPCT.2.23.1": 2051560961, - "$ctl.layer.CMPCT.2.24": 390882815, - "$ctl.layer.CMPCT.2.24.type": 1735860445, - "$ctl.layer.CMPCT.2.24.i": 3580587284, - "$ctl.layer.CMPCT.2.24.dst": 2380819845, - "$ctl.layer.CMPCT.2.24.1": 3691198562, - "$ctl.layer.CMPCT.3": 777904575, - "$ctl.layer.CMPCT.3.ofs": 1641230799, - "$ctl.layer.CMPCT.3.name": 3625779931, - "$ctl.layer.CMPCT.3.1": 4029858785, - "$ctl.layer.CMPCT.3.1.type": 243718694, - "$ctl.layer.CMPCT.3.1.i": 1747431781, - "$ctl.layer.CMPCT.3.1.dst": 3981731079, - "$ctl.layer.CMPCT.3.1.1": 160759615, - "$ctl.layer.CMPCT.3.2": 2592533923, - "$ctl.layer.CMPCT.3.2.type": 724654424, - "$ctl.layer.CMPCT.3.2.i": 4086348827, - "$ctl.layer.CMPCT.3.2.dst": 2188046057, - "$ctl.layer.CMPCT.3.2.1": 1912340289, - "$ctl.layer.CMPCT.3.3": 4026310224, - "$ctl.layer.CMPCT.3.3.type": 4067177431, - "$ctl.layer.CMPCT.3.3.i": 26890576, - "$ctl.layer.CMPCT.3.3.dst": 2093333978, - "$ctl.layer.CMPCT.3.3.1": 674212714, - "$ctl.layer.CMPCT.3.4": 3915461930, - "$ctl.layer.CMPCT.3.4.type": 2095541787, - "$ctl.layer.CMPCT.3.4.i": 3929836839, - "$ctl.layer.CMPCT.3.4.dst": 1528135509, - "$ctl.layer.CMPCT.3.4.1": 1218932461, - "$ctl.layer.CMPCT.3.5": 381165031, - "$ctl.layer.CMPCT.3.5.type": 2559513841, - "$ctl.layer.CMPCT.3.5.i": 829131112, - "$ctl.layer.CMPCT.3.5.dst": 2895124370, - "$ctl.layer.CMPCT.3.5.1": 4158007202, - "$ctl.layer.CMPCT.3.6": 1838329812, - "$ctl.layer.CMPCT.3.6.type": 268002101, - "$ctl.layer.CMPCT.3.6.i": 1284317153, - "$ctl.layer.CMPCT.3.6.dst": 3685936259, - "$ctl.layer.CMPCT.3.6.1": 3407994043, - "$ctl.layer.CMPCT.3.7": 401208467, - "$ctl.layer.CMPCT.3.7.type": 2836393680, - "$ctl.layer.CMPCT.3.7.i": 1641220650, - "$ctl.layer.CMPCT.3.7.dst": 3534526112, - "$ctl.layer.CMPCT.3.7.1": 543533200, - "$ctl.layer.CMPCT.3.8": 1838057024, - "$ctl.layer.CMPCT.3.8.type": 1610323818, - "$ctl.layer.CMPCT.3.8.i": 3164905470, - "$ctl.layer.CMPCT.3.8.dst": 1104112788, - "$ctl.layer.CMPCT.3.8.1": 1664703652, - "$ctl.layer.CMPCT.3.9": 1721472797, - "$ctl.layer.CMPCT.3.9.type": 507206879, - "$ctl.layer.CMPCT.3.9.i": 3881794436, - "$ctl.layer.CMPCT.3.9.dst": 1479969134, - "$ctl.layer.CMPCT.3.9.1": 1307850206, - "$ctl.layer.CMPCT.3.10": 688036307, - "$ctl.layer.CMPCT.3.10.type": 2346178911, - "$ctl.layer.CMPCT.3.10.i": 896578503, - "$ctl.layer.CMPCT.3.10.dst": 1341714252, - "$ctl.layer.CMPCT.3.10.1": 2531131793, - "$ctl.layer.CMPCT.3.11": 4220021518, - "$ctl.layer.CMPCT.3.11.type": 2571828609, - "$ctl.layer.CMPCT.3.11.i": 3580473955, - "$ctl.layer.CMPCT.3.11.dst": 2199675846, - "$ctl.layer.CMPCT.3.11.1": 920054893, - "$ctl.layer.CMPCT.3.12": 3724956940, - "$ctl.layer.CMPCT.3.12.type": 2678559979, - "$ctl.layer.CMPCT.3.12.i": 1088984144, - "$ctl.layer.CMPCT.3.12.dst": 1066693368, - "$ctl.layer.CMPCT.3.12.1": 3797274090, - "$ctl.layer.CMPCT.3.13": 1535947450, - "$ctl.layer.CMPCT.3.13.type": 2906666877, - "$ctl.layer.CMPCT.3.13.i": 1624940273, - "$ctl.layer.CMPCT.3.13.dst": 1459757202, - "$ctl.layer.CMPCT.3.13.1": 2185424011, - "$ctl.layer.CMPCT.3.14": 772796389, - "$ctl.layer.CMPCT.3.14.type": 2482204583, - "$ctl.layer.CMPCT.3.14.i": 3512303742, - "$ctl.layer.CMPCT.3.14.dst": 1366437108, - "$ctl.layer.CMPCT.3.14.1": 4072787576, - "$ctl.layer.CMPCT.3.15": 2879373648, - "$ctl.layer.CMPCT.3.15.type": 2497944585, - "$ctl.layer.CMPCT.3.15.i": 1632162487, - "$ctl.layer.CMPCT.3.15.dst": 1159039246, - "$ctl.layer.CMPCT.3.15.1": 314226948, - "$ctl.layer.CMPCT.3.16": 2116550291, - "$ctl.layer.CMPCT.3.16.type": 2814417555, - "$ctl.layer.CMPCT.3.16.i": 3519525897, - "$ctl.layer.CMPCT.3.16.dst": 1559992960, - "$ctl.layer.CMPCT.3.16.1": 3810918851, - "$ctl.layer.CMPCT.3.17": 279185564, - "$ctl.layer.CMPCT.3.17.type": 2389105509, - "$ctl.layer.CMPCT.3.17.i": 4055768837, - "$ctl.layer.CMPCT.3.17.dst": 1574956858, - "$ctl.layer.CMPCT.3.17.1": 53177567, - "$ctl.layer.CMPCT.3.18": 3727120911, - "$ctl.layer.CMPCT.3.18.type": 2405039599, - "$ctl.layer.CMPCT.3.18.i": 1562968194, - "$ctl.layer.CMPCT.3.18.dst": 1216560668, - "$ctl.layer.CMPCT.3.18.1": 781602396, - "$ctl.layer.CMPCT.3.19": 1613832325, - "$ctl.layer.CMPCT.3.19.type": 2721486161, - "$ctl.layer.CMPCT.3.19.i": 4247559971, - "$ctl.layer.CMPCT.3.19.dst": 1023112342, - "$ctl.layer.CMPCT.3.19.1": 1318705453, - "$ctl.layer.CMPCT.3.20": 3231424853, - "$ctl.layer.CMPCT.3.20.type": 3774350142, - "$ctl.layer.CMPCT.3.20.i": 3314137889, - "$ctl.layer.CMPCT.3.20.dst": 3827665559, - "$ctl.layer.CMPCT.3.20.1": 66386327, - "$ctl.layer.CMPCT.3.21": 1881248672, - "$ctl.layer.CMPCT.3.21.type": 2825620480, - "$ctl.layer.CMPCT.3.21.i": 1703084053, - "$ctl.layer.CMPCT.3.21.dst": 85736249, - "$ctl.layer.CMPCT.3.21.1": 2755511899, - "$ctl.layer.CMPCT.3.22": 1097681586, - "$ctl.layer.CMPCT.3.22.type": 17095706, - "$ctl.layer.CMPCT.3.22.i": 3716287022, - "$ctl.layer.CMPCT.3.22.dst": 3997032659, - "$ctl.layer.CMPCT.3.22.1": 1206702228, - "$ctl.layer.CMPCT.3.23": 4084423476, - "$ctl.layer.CMPCT.3.23.type": 3342319068, - "$ctl.layer.CMPCT.3.23.i": 4252069623, - "$ctl.layer.CMPCT.3.23.dst": 4181082437, - "$ctl.layer.CMPCT.3.23.1": 3895202365, - "$ctl.layer.CMPCT.3.24": 2687060419, - "$ctl.layer.CMPCT.3.24.type": 3840600246, - "$ctl.layer.CMPCT.3.24.i": 1550874880, - "$ctl.layer.CMPCT.3.24.dst": 3798346863, - "$ctl.layer.CMPCT.3.24.1": 1524319350, - "$ctl.layer.CMPCT.4": 418951262, - "$ctl.layer.CMPCT.4.ofs": 2735478236, - "$ctl.layer.CMPCT.4.name": 2212785862, - "$ctl.layer.CMPCT.4.1": 3835018787, - "$ctl.layer.CMPCT.4.1.type": 3826600802, - "$ctl.layer.CMPCT.4.1.i": 3051416129, - "$ctl.layer.CMPCT.4.1.dst": 817567779, - "$ctl.layer.CMPCT.4.1.1": 1951123227, - "$ctl.layer.CMPCT.4.2": 3640282845, - "$ctl.layer.CMPCT.4.2.type": 265297646, - "$ctl.layer.CMPCT.4.2.i": 266806000, - "$ctl.layer.CMPCT.4.2.dst": 2668549562, - "$ctl.layer.CMPCT.4.2.1": 1451006090, - "$ctl.layer.CMPCT.4.3": 2202506463, - "$ctl.layer.CMPCT.4.3.type": 226249929, - "$ctl.layer.CMPCT.4.3.i": 1705520531, - "$ctl.layer.CMPCT.4.3.dst": 3603783521, - "$ctl.layer.CMPCT.4.3.1": 3426452697, - "$ctl.layer.CMPCT.4.4": 3639344460, - "$ctl.layer.CMPCT.4.4.type": 869536646, - "$ctl.layer.CMPCT.4.4.i": 486654666, - "$ctl.layer.CMPCT.4.4.dst": 2552771968, - "$ctl.layer.CMPCT.4.4.1": 1536637104, - "$ctl.layer.CMPCT.4.5": 797119558, - "$ctl.layer.CMPCT.4.5.type": 593833570, - "$ctl.layer.CMPCT.4.5.i": 2506635579, - "$ctl.layer.CMPCT.4.5.dst": 109807049, - "$ctl.layer.CMPCT.4.5.1": 2616902497, - "$ctl.layer.CMPCT.4.6": 2373511584, - "$ctl.layer.CMPCT.4.6.type": 3897710485, - "$ctl.layer.CMPCT.4.6.i": 3054506912, - "$ctl.layer.CMPCT.4.6.dst": 1156284618, - "$ctl.layer.CMPCT.4.6.1": 2944264314, - "$ctl.layer.CMPCT.4.7": 3890969213, - "$ctl.layer.CMPCT.4.7.type": 2689574861, - "$ctl.layer.CMPCT.4.7.i": 3492490282, - "$ctl.layer.CMPCT.4.7.dst": 1263720608, - "$ctl.layer.CMPCT.4.7.1": 2845345424, - "$ctl.layer.CMPCT.4.8": 2375197311, - "$ctl.layer.CMPCT.4.8.type": 2356766317, - "$ctl.layer.CMPCT.4.8.i": 1395405793, - "$ctl.layer.CMPCT.4.8.dst": 3629211779, - "$ctl.layer.CMPCT.4.8.1": 3432483003, - "$ctl.layer.CMPCT.4.9": 2259104489, - "$ctl.layer.CMPCT.4.9.type": 4139054178, - "$ctl.layer.CMPCT.4.9.i": 763522927, - "$ctl.layer.CMPCT.4.9.dst": 2662276509, - "$ctl.layer.CMPCT.4.9.1": 116408789, - "$ctl.layer.CMPCT.4.10": 1380705823, - "$ctl.layer.CMPCT.4.10.type": 3357953096, - "$ctl.layer.CMPCT.4.10.i": 1215949819, - "$ctl.layer.CMPCT.4.10.dst": 316512973, - "$ctl.layer.CMPCT.4.10.1": 2263141853, - "$ctl.layer.CMPCT.4.11": 2146546410, - "$ctl.layer.CMPCT.4.11.type": 12166118, - "$ctl.layer.CMPCT.4.11.i": 2826102191, - "$ctl.layer.CMPCT.4.11.dst": 4068515035, - "$ctl.layer.CMPCT.4.11.1": 3878526849, - "$ctl.layer.CMPCT.4.12": 1069358152, - "$ctl.layer.CMPCT.4.12.type": 2809549836, - "$ctl.layer.CMPCT.4.12.i": 3666992148, - "$ctl.layer.CMPCT.4.12.dst": 155832961, - "$ctl.layer.CMPCT.4.12.1": 2566690222, - "$ctl.layer.CMPCT.4.13": 534997886, - "$ctl.layer.CMPCT.4.13.type": 3759547690, - "$ctl.layer.CMPCT.4.13.i": 3129038653, - "$ctl.layer.CMPCT.4.13.dst": 4277019615, - "$ctl.layer.CMPCT.4.13.1": 4181472247, - "$ctl.layer.CMPCT.4.14": 1337539609, - "$ctl.layer.CMPCT.4.14.type": 3282628432, - "$ctl.layer.CMPCT.4.14.i": 1285573978, - "$ctl.layer.CMPCT.4.14.dst": 297671829, - "$ctl.layer.CMPCT.4.14.1": 2332754492, - "$ctl.layer.CMPCT.4.15": 3488157204, - "$ctl.layer.CMPCT.4.15.type": 4231619150, - "$ctl.layer.CMPCT.4.15.i": 479169355, - "$ctl.layer.CMPCT.4.15.dst": 94191011, - "$ctl.layer.CMPCT.4.15.1": 1800668640, - "$ctl.layer.CMPCT.4.16": 4290688735, - "$ctl.layer.CMPCT.4.16.type": 3205879412, - "$ctl.layer.CMPCT.4.16.i": 1278114677, - "$ctl.layer.CMPCT.4.16.dst": 535451017, - "$ctl.layer.CMPCT.4.16.1": 987706639, - "$ctl.layer.CMPCT.4.17": 1834663032, - "$ctl.layer.CMPCT.4.17.type": 3400879506, - "$ctl.layer.CMPCT.4.17.i": 740775737, - "$ctl.layer.CMPCT.4.17.dst": 37264391, - "$ctl.layer.CMPCT.4.17.1": 451033331, - "$ctl.layer.CMPCT.4.18": 2637204771, - "$ctl.layer.CMPCT.4.18.type": 3259525048, - "$ctl.layer.CMPCT.4.18.i": 3190967462, - "$ctl.layer.CMPCT.4.18.dst": 3988229885, - "$ctl.layer.CMPCT.4.18.1": 1290600856, - "$ctl.layer.CMPCT.4.19": 456813753, - "$ctl.layer.CMPCT.4.19.type": 3590411606, - "$ctl.layer.CMPCT.4.19.i": 506848879, - "$ctl.layer.CMPCT.4.19.dst": 221044747, - "$ctl.layer.CMPCT.4.19.1": 753968449, - "$ctl.layer.CMPCT.4.20": 2084440646, - "$ctl.layer.CMPCT.4.20.type": 1939105774, - "$ctl.layer.CMPCT.4.20.i": 2186159178, - "$ctl.layer.CMPCT.4.20.dst": 1581619165, - "$ctl.layer.CMPCT.4.20.1": 1222873092, - "$ctl.layer.CMPCT.4.21": 1381431851, - "$ctl.layer.CMPCT.4.21.type": 968933752, - "$ctl.layer.CMPCT.4.21.i": 576067910, - "$ctl.layer.CMPCT.4.21.dst": 2090275959, - "$ctl.layer.CMPCT.4.21.1": 3902496016, - "$ctl.layer.CMPCT.4.22": 2248926201, - "$ctl.layer.CMPCT.4.22.type": 932175778, - "$ctl.layer.CMPCT.4.22.i": 4176946093, - "$ctl.layer.CMPCT.4.22.dst": 239172049, - "$ctl.layer.CMPCT.4.22.1": 730621799, - "$ctl.layer.CMPCT.4.23": 2909094343, - "$ctl.layer.CMPCT.4.23.type": 1304221580, - "$ctl.layer.CMPCT.4.23.i": 419890532, - "$ctl.layer.CMPCT.4.23.dst": 4004722539, - "$ctl.layer.CMPCT.4.23.1": 3410787134, - "$ctl.layer.CMPCT.4.24": 2253414504, - "$ctl.layer.CMPCT.4.24.type": 1969849590, - "$ctl.layer.CMPCT.4.24.i": 2053640139, - "$ctl.layer.CMPCT.4.24.dst": 1508055077, - "$ctl.layer.CMPCT.4.24.1": 1090346373, - "$ctl.layer.CMPCT.5": 3461333587, - "$ctl.layer.CMPCT.5.ofs": 3499043593, - "$ctl.layer.CMPCT.5.name": 2547652773, - "$ctl.layer.CMPCT.5.1": 80312383, - "$ctl.layer.CMPCT.5.1.type": 3232800300, - "$ctl.layer.CMPCT.5.1.i": 253001318, - "$ctl.layer.CMPCT.5.1.dst": 2313751580, - "$ctl.layer.CMPCT.5.1.1": 1753166636, - "$ctl.layer.CMPCT.5.2": 4174799020, - "$ctl.layer.CMPCT.5.2.type": 3227436593, - "$ctl.layer.CMPCT.5.2.i": 2859325161, - "$ctl.layer.CMPCT.5.2.dst": 793004427, - "$ctl.layer.CMPCT.5.2.1": 3285918883, - "$ctl.layer.CMPCT.5.3": 1400566438, - "$ctl.layer.CMPCT.5.3.type": 2974411676, - "$ctl.layer.CMPCT.5.3.i": 2243186528, - "$ctl.layer.CMPCT.5.3.dst": 4136083850, - "$ctl.layer.CMPCT.5.3.1": 4280197818, - "$ctl.layer.CMPCT.5.4": 4176494936, - "$ctl.layer.CMPCT.5.4.type": 1347544168, - "$ctl.layer.CMPCT.5.4.i": 1450530557, - "$ctl.layer.CMPCT.5.4.dst": 3684747711, - "$ctl.layer.CMPCT.5.4.1": 403350711, - "$ctl.layer.CMPCT.5.5": 1334104917, - "$ctl.layer.CMPCT.5.5.type": 2212838939, - "$ctl.layer.CMPCT.5.5.i": 834432315, - "$ctl.layer.CMPCT.5.5.dst": 2732816841, - "$ctl.layer.CMPCT.5.5.1": 1397837665, - "$ctl.layer.CMPCT.5.6": 1244421103, - "$ctl.layer.CMPCT.5.6.type": 1846611590, - "$ctl.layer.CMPCT.5.6.i": 3710298546, - "$ctl.layer.CMPCT.5.6.dst": 1481325896, - "$ctl.layer.CMPCT.5.6.1": 2660307192, - "$ctl.layer.CMPCT.5.7": 2004281564, - "$ctl.layer.CMPCT.5.7.type": 3921416598, - "$ctl.layer.CMPCT.5.7.i": 4113049069, - "$ctl.layer.CMPCT.5.7.dst": 2219701007, - "$ctl.layer.CMPCT.5.7.1": 1857866791, - "$ctl.layer.CMPCT.5.8": 3504208233, - "$ctl.layer.CMPCT.5.8.type": 3787217916, - "$ctl.layer.CMPCT.5.8.i": 3750927852, - "$ctl.layer.CMPCT.5.8.dst": 1522487446, - "$ctl.layer.CMPCT.5.8.1": 2566919078, - "$ctl.layer.CMPCT.5.9": 1983039851, - "$ctl.layer.CMPCT.5.9.type": 2380188732, - "$ctl.layer.CMPCT.5.9.i": 1637106981, - "$ctl.layer.CMPCT.5.9.dst": 4038972359, - "$ctl.layer.CMPCT.5.9.1": 50228095, - "$ctl.layer.CMPCT.5.10": 4262648264, - "$ctl.layer.CMPCT.5.10.type": 3783953358, - "$ctl.layer.CMPCT.5.10.i": 1019969476, - "$ctl.layer.CMPCT.5.10.dst": 1400817567, - "$ctl.layer.CMPCT.5.10.1": 3761650058, - "$ctl.layer.CMPCT.5.11": 649318109, - "$ctl.layer.CMPCT.5.11.type": 2971108708, - "$ctl.layer.CMPCT.5.11.i": 2628504056, - "$ctl.layer.CMPCT.5.11.dst": 2558724229, - "$ctl.layer.CMPCT.5.11.1": 1080460158, - "$ctl.layer.CMPCT.5.12": 1225730207, - "$ctl.layer.CMPCT.5.12.type": 3406968114, - "$ctl.layer.CMPCT.5.12.i": 3780438027, - "$ctl.layer.CMPCT.5.12.dst": 2731227779, - "$ctl.layer.CMPCT.5.12.1": 1153409521, - "$ctl.layer.CMPCT.5.13": 464488225, - "$ctl.layer.CMPCT.5.13.type": 3954838664, - "$ctl.layer.CMPCT.5.13.i": 3241777898, - "$ctl.layer.CMPCT.5.13.dst": 2254915305, - "$ctl.layer.CMPCT.5.13.1": 2767802320, - "$ctl.layer.CMPCT.5.14": 1141211110, - "$ctl.layer.CMPCT.5.14.type": 3708199462, - "$ctl.layer.CMPCT.5.14.i": 2783099245, - "$ctl.layer.CMPCT.5.14.dst": 1379325271, - "$ctl.layer.CMPCT.5.14.1": 2136108515, - "$ctl.layer.CMPCT.5.15": 1989966283, - "$ctl.layer.CMPCT.5.15.type": 2916524796, - "$ctl.layer.CMPCT.5.15.i": 365733716, - "$ctl.layer.CMPCT.5.15.dst": 2621169597, - "$ctl.layer.CMPCT.5.15.1": 1602404871, - "$ctl.layer.CMPCT.5.16": 2834133640, - "$ctl.layer.CMPCT.5.16.type": 3383887498, - "$ctl.layer.CMPCT.5.16.i": 1349894034, - "$ctl.layer.CMPCT.5.16.dst": 2136298427, - "$ctl.layer.CMPCT.5.16.1": 2484566360, - "$ctl.layer.CMPCT.5.17": 1637361807, - "$ctl.layer.CMPCT.5.17.type": 3830148128, - "$ctl.layer.CMPCT.5.17.i": 810947398, - "$ctl.layer.CMPCT.5.17.dst": 2309434529, - "$ctl.layer.CMPCT.5.17.1": 1947258124, - "$ctl.layer.CMPCT.5.18": 2481856796, - "$ctl.layer.CMPCT.5.18.type": 3688369950, - "$ctl.layer.CMPCT.5.18.i": 350957721, - "$ctl.layer.CMPCT.5.18.dst": 2460772015, - "$ctl.layer.CMPCT.5.18.1": 4171621711, - "$ctl.layer.CMPCT.5.19": 3255586950, - "$ctl.layer.CMPCT.5.19.type": 3513495220, - "$ctl.layer.CMPCT.5.19.i": 1961417400, - "$ctl.layer.CMPCT.5.19.dst": 2748599061, - "$ctl.layer.CMPCT.5.19.1": 3634600254, - "$ctl.layer.CMPCT.5.20": 246906487, - "$ctl.layer.CMPCT.5.20.type": 2312990274, - "$ctl.layer.CMPCT.5.20.i": 393271379, - "$ctl.layer.CMPCT.5.20.dst": 516984539, - "$ctl.layer.CMPCT.5.20.1": 2967346229, - "$ctl.layer.CMPCT.5.21": 3086583362, - "$ctl.layer.CMPCT.5.21.type": 2454759388, - "$ctl.layer.CMPCT.5.21.i": 3076754807, - "$ctl.layer.CMPCT.5.21.dst": 3558960333, - "$ctl.layer.CMPCT.5.21.1": 1361105145, - "$ctl.layer.CMPCT.5.22": 4166332432, - "$ctl.layer.CMPCT.5.22.type": 1306466486, - "$ctl.layer.CMPCT.5.22.i": 2258137020, - "$ctl.layer.CMPCT.5.22.dst": 3468066063, - "$ctl.layer.CMPCT.5.22.1": 2684728182, - "$ctl.layer.CMPCT.5.23": 1079496150, - "$ctl.layer.CMPCT.5.23.type": 1445783040, - "$ctl.layer.CMPCT.5.23.i": 2794830229, - "$ctl.layer.CMPCT.5.23.dst": 2251229233, - "$ctl.layer.CMPCT.5.23.1": 1079183151, - "$ctl.layer.CMPCT.5.24": 3913929841, - "$ctl.layer.CMPCT.5.24.type": 2363493402, - "$ctl.layer.CMPCT.5.24.i": 344628194, - "$ctl.layer.CMPCT.5.24.dst": 442411123, - "$ctl.layer.CMPCT.5.24.1": 2918705556, - "$ctl.layer.CMPCT.6": 3027081177, - "$ctl.layer.CMPCT.6.ofs": 305057542, - "$ctl.layer.CMPCT.6.name": 358835302, - "$ctl.layer.CMPCT.6.1": 3138667870, - "$ctl.layer.CMPCT.6.1.type": 64989112, - "$ctl.layer.CMPCT.6.1.i": 3556307057, - "$ctl.layer.CMPCT.6.1.dst": 1495065267, - "$ctl.layer.CMPCT.6.1.1": 2592869259, - "$ctl.layer.CMPCT.6.2": 361322283, - "$ctl.layer.CMPCT.6.2.type": 1201382339, - "$ctl.layer.CMPCT.6.2.i": 4286318846, - "$ctl.layer.CMPCT.6.2.dst": 1884657044, - "$ctl.layer.CMPCT.6.2.1": 2246486436, - "$ctl.layer.CMPCT.6.3": 1121880024, - "$ctl.layer.CMPCT.6.3.type": 2632243074, - "$ctl.layer.CMPCT.6.3.i": 3179644204, - "$ctl.layer.CMPCT.6.3.dst": 1118853078, - "$ctl.layer.CMPCT.6.3.1": 1679453286, - "$ctl.layer.CMPCT.6.4": 968585682, - "$ctl.layer.CMPCT.6.4.type": 3392856093, - "$ctl.layer.CMPCT.6.4.i": 3570122568, - "$ctl.layer.CMPCT.6.4.dst": 1173623090, - "$ctl.layer.CMPCT.6.4.1": 2925411586, - "$ctl.layer.CMPCT.6.5": 3826270324, - "$ctl.layer.CMPCT.6.5.type": 4282606757, - "$ctl.layer.CMPCT.6.5.i": 1441843729, - "$ctl.layer.CMPCT.6.5.dst": 3675732115, - "$ctl.layer.CMPCT.6.5.1": 392046251, - "$ctl.layer.CMPCT.6.6": 1778783742, - "$ctl.layer.CMPCT.6.6.type": 916396235, - "$ctl.layer.CMPCT.6.6.i": 1985830315, - "$ctl.layer.CMPCT.6.6.dst": 3883970905, - "$ctl.layer.CMPCT.6.6.1": 3167198481, - "$ctl.layer.CMPCT.6.7": 2523736011, - "$ctl.layer.CMPCT.6.7.type": 242869013, - "$ctl.layer.CMPCT.6.7.i": 1636809050, - "$ctl.layer.CMPCT.6.7.dst": 3870943152, - "$ctl.layer.CMPCT.6.7.1": 3223517056, - "$ctl.layer.CMPCT.6.8": 4041193573, - "$ctl.layer.CMPCT.6.8.type": 2117899043, - "$ctl.layer.CMPCT.6.8.i": 1996108268, - "$ctl.layer.CMPCT.6.8.dst": 4062307478, - "$ctl.layer.CMPCT.6.8.1": 2959572902, - "$ctl.layer.CMPCT.6.9": 1177986930, - "$ctl.layer.CMPCT.6.9.type": 2250192369, - "$ctl.layer.CMPCT.6.9.i": 3511666469, - "$ctl.layer.CMPCT.6.9.dst": 1450710471, - "$ctl.layer.CMPCT.6.9.1": 1337600383, - "$ctl.layer.CMPCT.6.10": 3090060527, - "$ctl.layer.CMPCT.6.10.type": 3232780752, - "$ctl.layer.CMPCT.6.10.i": 1191177931, - "$ctl.layer.CMPCT.6.10.dst": 348611427, - "$ctl.layer.CMPCT.6.10.1": 59966765, - "$ctl.layer.CMPCT.6.11": 250126362, - "$ctl.layer.CMPCT.6.11.type": 3353598534, - "$ctl.layer.CMPCT.6.11.i": 1728509183, - "$ctl.layer.CMPCT.6.11.dst": 222484777, - "$ctl.layer.CMPCT.6.11.1": 592034641, - "$ctl.layer.CMPCT.6.12": 1243223640, - "$ctl.layer.CMPCT.6.12.type": 153639452, - "$ctl.layer.CMPCT.6.12.i": 3024606852, - "$ctl.layer.CMPCT.6.12.dst": 3882588623, - "$ctl.layer.CMPCT.6.12.1": 1893375198, - "$ctl.layer.CMPCT.6.13": 3935594350, - "$ctl.layer.CMPCT.6.13.type": 3899115346, - "$ctl.layer.CMPCT.6.13.i": 3562447821, - "$ctl.layer.CMPCT.6.13.dst": 3603956149, - "$ctl.layer.CMPCT.6.13.1": 2426281735, - "$ctl.layer.CMPCT.6.14": 1059143337, - "$ctl.layer.CMPCT.6.14.type": 3306896616, - "$ctl.layer.CMPCT.6.14.i": 3185018186, - "$ctl.layer.CMPCT.6.14.dst": 285186715, - "$ctl.layer.CMPCT.6.14.1": 2221887660, - "$ctl.layer.CMPCT.6.15": 1066484932, - "$ctl.layer.CMPCT.6.15.type": 3427473822, - "$ctl.layer.CMPCT.6.15.i": 3991422843, - "$ctl.layer.CMPCT.6.15.dst": 595268417, - "$ctl.layer.CMPCT.6.15.1": 2753932496, - "$ctl.layer.CMPCT.6.16": 2327346223, - "$ctl.layer.CMPCT.6.16.type": 175104276, - "$ctl.layer.CMPCT.6.16.i": 1118404421, - "$ctl.layer.CMPCT.6.16.dst": 3756290727, - "$ctl.layer.CMPCT.6.16.1": 1325090207, - "$ctl.layer.CMPCT.6.17": 561845800, - "$ctl.layer.CMPCT.6.17.type": 3857685450, - "$ctl.layer.CMPCT.6.17.i": 1655855945, - "$ctl.layer.CMPCT.6.17.dst": 3625063533, - "$ctl.layer.CMPCT.6.17.1": 1861558659, - "$ctl.layer.CMPCT.6.18": 1917406643, - "$ctl.layer.CMPCT.6.18.type": 3328361600, - "$ctl.layer.CMPCT.6.18.i": 1363643958, - "$ctl.layer.CMPCT.6.18.dst": 269327763, - "$ctl.layer.CMPCT.6.18.1": 3179960680, - "$ctl.layer.CMPCT.6.19": 4097797641, - "$ctl.layer.CMPCT.6.19.type": 47163190, - "$ctl.layer.CMPCT.6.19.i": 1900319807, - "$ctl.layer.CMPCT.6.19.dst": 3823299865, - "$ctl.layer.CMPCT.6.19.1": 3716634001, - "$ctl.layer.CMPCT.6.20": 3768995696, - "$ctl.layer.CMPCT.6.20.type": 2324140009, - "$ctl.layer.CMPCT.6.20.i": 840894796, - "$ctl.layer.CMPCT.6.20.dst": 519277132, - "$ctl.layer.CMPCT.6.20.1": 4002000690, - "$ctl.layer.CMPCT.6.21": 931939717, - "$ctl.layer.CMPCT.6.21.type": 1532251455, - "$ctl.layer.CMPCT.6.21.i": 2451068016, - "$ctl.layer.CMPCT.6.21.dst": 1117942970, - "$ctl.layer.CMPCT.6.21.1": 1322454566, - "$ctl.layer.CMPCT.6.22": 1633852887, - "$ctl.layer.CMPCT.6.22.type": 2182432293, - "$ctl.layer.CMPCT.6.22.i": 3370999427, - "$ctl.layer.CMPCT.6.22.dst": 1248473560, - "$ctl.layer.CMPCT.6.22.1": 1498945609, - "$ctl.layer.CMPCT.6.23": 4287107561, - "$ctl.layer.CMPCT.6.23.type": 2041513483, - "$ctl.layer.CMPCT.6.23.i": 2833655250, - "$ctl.layer.CMPCT.6.23.dst": 854736054, - "$ctl.layer.CMPCT.6.23.1": 3114321560, - "$ctl.layer.CMPCT.6.24": 1444804270, - "$ctl.layer.CMPCT.6.24.type": 2486937905, - "$ctl.layer.CMPCT.6.24.i": 2499489765, - "$ctl.layer.CMPCT.6.24.dst": 591524468, - "$ctl.layer.CMPCT.6.24.1": 2607151275, - "$ctl.layer.CMPCT.7": 3808610378, - "$ctl.layer.CMPCT.7.ofs": 3061493211, - "$ctl.layer.CMPCT.7.name": 2609849258, - "$ctl.layer.CMPCT.7.1": 3675859245, - "$ctl.layer.CMPCT.7.1.type": 1952272747, - "$ctl.layer.CMPCT.7.1.i": 3720160372, - "$ctl.layer.CMPCT.7.1.dst": 1821693630, - "$ctl.layer.CMPCT.7.1.1": 925538190, - "$ctl.layer.CMPCT.7.2": 896373223, - "$ctl.layer.CMPCT.7.2.type": 2750793089, - "$ctl.layer.CMPCT.7.2.i": 2834013370, - "$ctl.layer.CMPCT.7.2.dst": 437266896, - "$ctl.layer.CMPCT.7.2.1": 2320897376, - "$ctl.layer.CMPCT.7.3": 1682613204, - "$ctl.layer.CMPCT.7.3.type": 301876869, - "$ctl.layer.CMPCT.7.3.i": 1410144822, - "$ctl.layer.CMPCT.7.3.dst": 3643992140, - "$ctl.layer.CMPCT.7.3.1": 3449935612, - "$ctl.layer.CMPCT.7.4": 1503606177, - "$ctl.layer.CMPCT.7.4.type": 2462565957, - "$ctl.layer.CMPCT.7.4.i": 714077028, - "$ctl.layer.CMPCT.7.4.dst": 2607547662, - "$ctl.layer.CMPCT.7.4.1": 150784318, - "$ctl.layer.CMPCT.7.5": 3021227646, - "$ctl.layer.CMPCT.7.5.type": 2323886717, - "$ctl.layer.CMPCT.7.5.i": 3568102417, - "$ctl.layer.CMPCT.7.5.dst": 1506859667, - "$ctl.layer.CMPCT.7.5.1": 2602042539, - "$ctl.layer.CMPCT.7.6": 1484327709, - "$ctl.layer.CMPCT.7.6.type": 3785219823, - "$ctl.layer.CMPCT.7.6.i": 3403641472, - "$ctl.layer.CMPCT.7.6.dst": 1505134058, - "$ctl.layer.CMPCT.7.6.1": 1282689114, - "$ctl.layer.CMPCT.7.7": 2999973098, - "$ctl.layer.CMPCT.7.7.type": 2594719434, - "$ctl.layer.CMPCT.7.7.i": 2714004262, - "$ctl.layer.CMPCT.7.7.dst": 317545948, - "$ctl.layer.CMPCT.7.7.1": 3761210988, - "$ctl.layer.CMPCT.7.8": 2825553319, - "$ctl.layer.CMPCT.7.8.type": 1994510520, - "$ctl.layer.CMPCT.7.8.i": 1016284314, - "$ctl.layer.CMPCT.7.8.dst": 3244849136, - "$ctl.layer.CMPCT.7.8.1": 3808327232, - "$ctl.layer.CMPCT.7.9": 3607205777, - "$ctl.layer.CMPCT.7.9.type": 3207820284, - "$ctl.layer.CMPCT.7.9.i": 665952715, - "$ctl.layer.CMPCT.7.9.dst": 2559463225, - "$ctl.layer.CMPCT.7.9.1": 239538225, - "$ctl.layer.CMPCT.7.10": 459802858, - "$ctl.layer.CMPCT.7.10.type": 171171068, - "$ctl.layer.CMPCT.7.10.i": 190849782, - "$ctl.layer.CMPCT.7.10.dst": 2638809121, - "$ctl.layer.CMPCT.7.10.1": 2932707624, - "$ctl.layer.CMPCT.7.11": 1162411039, - "$ctl.layer.CMPCT.7.11.type": 4167082850, - "$ctl.layer.CMPCT.7.11.i": 1800673530, - "$ctl.layer.CMPCT.7.11.dst": 3200567407, - "$ctl.layer.CMPCT.7.11.1": 252796764, - "$ctl.layer.CMPCT.7.12": 2074468957, - "$ctl.layer.CMPCT.7.12.type": 4171564344, - "$ctl.layer.CMPCT.7.12.i": 313074329, - "$ctl.layer.CMPCT.7.12.dst": 1306518957, - "$ctl.layer.CMPCT.7.12.1": 1645635795, - "$ctl.layer.CMPCT.7.13": 4266083171, - "$ctl.layer.CMPCT.7.13.type": 250272542, - "$ctl.layer.CMPCT.7.13.i": 4070901704, - "$ctl.layer.CMPCT.7.13.dst": 777765547, - "$ctl.layer.CMPCT.7.13.1": 3261233922, - "$ctl.layer.CMPCT.7.14": 626680532, - "$ctl.layer.CMPCT.7.14.type": 915927732, - "$ctl.layer.CMPCT.7.14.i": 2268729679, - "$ctl.layer.CMPCT.7.14.dst": 2576078649, - "$ctl.layer.CMPCT.7.14.1": 1621580961, - "$ctl.layer.CMPCT.7.15": 2483376345, - "$ctl.layer.CMPCT.7.15.type": 4240971258, - "$ctl.layer.CMPCT.7.15.i": 4147667814, - "$ctl.layer.CMPCT.7.15.dst": 705098791, - "$ctl.layer.CMPCT.7.15.1": 1089161429, - "$ctl.layer.CMPCT.7.16": 3327694890, - "$ctl.layer.CMPCT.7.16.type": 3773619088, - "$ctl.layer.CMPCT.7.16.i": 1863131968, - "$ctl.layer.CMPCT.7.16.dst": 929189701, - "$ctl.layer.CMPCT.7.16.1": 1656777114, - "$ctl.layer.CMPCT.7.17": 809738797, - "$ctl.layer.CMPCT.7.17.type": 124965046, - "$ctl.layer.CMPCT.7.17.i": 1325315956, - "$ctl.layer.CMPCT.7.17.dst": 798258691, - "$ctl.layer.CMPCT.7.17.1": 1119606158, - "$ctl.layer.CMPCT.7.18": 1989591486, - "$ctl.layer.CMPCT.7.18.type": 937409676, - "$ctl.layer.CMPCT.7.18.i": 4153635339, - "$ctl.layer.CMPCT.7.18.dst": 3247391793, - "$ctl.layer.CMPCT.7.18.1": 391167341, - "$ctl.layer.CMPCT.7.19": 3768619572, - "$ctl.layer.CMPCT.7.19.type": 441191986, - "$ctl.layer.CMPCT.7.19.i": 1469188154, - "$ctl.layer.CMPCT.7.19.dst": 1248521919, - "$ctl.layer.CMPCT.7.19.1": 4149168540, - "$ctl.layer.CMPCT.7.20": 1011213164, - "$ctl.layer.CMPCT.7.20.type": 116397559, - "$ctl.layer.CMPCT.7.20.i": 909417856, - "$ctl.layer.CMPCT.7.20.dst": 3678669524, - "$ctl.layer.CMPCT.7.20.1": 2543786798, - "$ctl.layer.CMPCT.7.21": 2395386129, - "$ctl.layer.CMPCT.7.21.type": 1065142361, - "$ctl.layer.CMPCT.7.21.i": 2519263452, - "$ctl.layer.CMPCT.7.21.dst": 2925583710, - "$ctl.layer.CMPCT.7.21.1": 4153647738, - "$ctl.layer.CMPCT.7.22": 1523059251, - "$ctl.layer.CMPCT.7.22.type": 1299168819, - "$ctl.layer.CMPCT.7.22.i": 3223833239, - "$ctl.layer.CMPCT.7.22.dst": 514570448, - "$ctl.layer.CMPCT.7.22.1": 3046278237, - "$ctl.layer.CMPCT.7.23": 180911501, - "$ctl.layer.CMPCT.7.23.type": 925928885, - "$ctl.layer.CMPCT.7.23.i": 2685843918, - "$ctl.layer.CMPCT.7.23.dst": 1044233114, - "$ctl.layer.CMPCT.7.23.1": 361116340, - "$ctl.layer.CMPCT.7.24": 1523485410, - "$ctl.layer.CMPCT.7.24.type": 259877263, - "$ctl.layer.CMPCT.7.24.i": 1041603489, - "$ctl.layer.CMPCT.7.24.dst": 3750595308, - "$ctl.layer.CMPCT.7.24.1": 2676319311, - "$ctl.layer.CMPCT.8": 3718231872, - "$ctl.layer.CMPCT.8.ofs": 1729704951, - "$ctl.layer.CMPCT.8.name": 2825056048, - "$ctl.layer.CMPCT.8.1": 530823271, - "$ctl.layer.CMPCT.8.1.type": 2534998819, - "$ctl.layer.CMPCT.8.1.i": 4143681295, - "$ctl.layer.CMPCT.8.1.dst": 1914706941, - "$ctl.layer.CMPCT.8.1.1": 812002677, - "$ctl.layer.CMPCT.8.2": 3325593689, - "$ctl.layer.CMPCT.8.2.type": 2820466516, - "$ctl.layer.CMPCT.8.2.i": 2027198264, - "$ctl.layer.CMPCT.8.2.dst": 134301122, - "$ctl.layer.CMPCT.8.2.1": 2590644594, - "$ctl.layer.CMPCT.8.3": 464361747, - "$ctl.layer.CMPCT.8.3.type": 2766583866, - "$ctl.layer.CMPCT.8.3.i": 2745371778, - "$ctl.layer.CMPCT.8.3.dst": 511483512, - "$ctl.layer.CMPCT.8.3.1": 2234888136, - "$ctl.layer.CMPCT.8.4": 1985086144, - "$ctl.layer.CMPCT.8.4.type": 1510251652, - "$ctl.layer.CMPCT.8.4.i": 4017399161, - "$ctl.layer.CMPCT.8.4.dst": 1956606907, - "$ctl.layer.CMPCT.8.4.1": 822692787, - "$ctl.layer.CMPCT.8.5": 2724139933, - "$ctl.layer.CMPCT.8.5.type": 831709033, - "$ctl.layer.CMPCT.8.5.i": 439288060, - "$ctl.layer.CMPCT.8.5.dst": 2332472326, - "$ctl.layer.CMPCT.8.5.1": 465874998, - "$ctl.layer.CMPCT.8.6": 676694279, - "$ctl.layer.CMPCT.8.6.type": 15489997, - "$ctl.layer.CMPCT.8.6.i": 2578420921, - "$ctl.layer.CMPCT.8.6.dst": 679749627, - "$ctl.layer.CMPCT.8.6.1": 2067932787, - "$ctl.layer.CMPCT.8.7": 3539581158, - "$ctl.layer.CMPCT.8.7.type": 2132294381, - "$ctl.layer.CMPCT.8.7.i": 927727408, - "$ctl.layer.CMPCT.8.7.dst": 2993680890, - "$ctl.layer.CMPCT.8.7.1": 4038521418, - "$ctl.layer.CMPCT.8.8": 3360778675, - "$ctl.layer.CMPCT.8.8.type": 3949768066, - "$ctl.layer.CMPCT.8.8.i": 101111993, - "$ctl.layer.CMPCT.8.8.dst": 2497776635, - "$ctl.layer.CMPCT.8.8.1": 1601299059, - "$ctl.layer.CMPCT.8.9": 4144223072, - "$ctl.layer.CMPCT.8.9.type": 800291300, - "$ctl.layer.CMPCT.8.9.i": 299390411, - "$ctl.layer.CMPCT.8.9.dst": 2198061881, - "$ctl.layer.CMPCT.8.9.1": 1933941809, - "$ctl.layer.CMPCT.8.10": 372626201, - "$ctl.layer.CMPCT.8.10.type": 1025508601, - "$ctl.layer.CMPCT.8.10.i": 2229570877, - "$ctl.layer.CMPCT.8.10.dst": 3504549898, - "$ctl.layer.CMPCT.8.10.1": 3360631643, - "$ctl.layer.CMPCT.8.11": 3201745364, - "$ctl.layer.CMPCT.8.11.type": 129174679, - "$ctl.layer.CMPCT.8.11.i": 1691930137, - "$ctl.layer.CMPCT.8.11.dst": 3058808624, - "$ctl.layer.CMPCT.8.11.1": 2823001239, - "$ctl.layer.CMPCT.8.12": 2161645414, - "$ctl.layer.CMPCT.8.12.type": 899956269, - "$ctl.layer.CMPCT.8.12.i": 427284602, - "$ctl.layer.CMPCT.8.12.dst": 1014417214, - "$ctl.layer.CMPCT.8.12.1": 1558355616, - "$ctl.layer.CMPCT.8.13": 3816328768, - "$ctl.layer.CMPCT.8.13.type": 655376315, - "$ctl.layer.CMPCT.8.13.i": 4184252923, - "$ctl.layer.CMPCT.8.13.dst": 621066596, - "$ctl.layer.CMPCT.8.13.1": 1020674081, - "$ctl.layer.CMPCT.8.14": 2350808351, - "$ctl.layer.CMPCT.8.14.type": 1101224785, - "$ctl.layer.CMPCT.8.14.i": 235252788, - "$ctl.layer.CMPCT.8.14.dst": 4103366242, - "$ctl.layer.CMPCT.8.14.1": 1198879362, - "$ctl.layer.CMPCT.8.15": 2396220330, - "$ctl.layer.CMPCT.8.15.type": 183728623, - "$ctl.layer.CMPCT.8.15.i": 3724127821, - "$ctl.layer.CMPCT.8.15.dst": 1170186952, - "$ctl.layer.CMPCT.8.15.1": 661238638, - "$ctl.layer.CMPCT.8.16": 1087668825, - "$ctl.layer.CMPCT.8.16.type": 1227124613, - "$ctl.layer.CMPCT.8.16.i": 2291710067, - "$ctl.layer.CMPCT.8.16.dst": 687192278, - "$ctl.layer.CMPCT.8.16.1": 2079620793, - "$ctl.layer.CMPCT.8.17": 2843031574, - "$ctl.layer.CMPCT.8.17.type": 979284659, - "$ctl.layer.CMPCT.8.17.i": 1754079631, - "$ctl.layer.CMPCT.8.17.dst": 546172924, - "$ctl.layer.CMPCT.8.17.1": 1542963189, - "$ctl.layer.CMPCT.8.18": 1545283317, - "$ctl.layer.CMPCT.8.18.type": 1173493769, - "$ctl.layer.CMPCT.8.18.i": 2098736248, - "$ctl.layer.CMPCT.8.18.dst": 869855514, - "$ctl.layer.CMPCT.8.18.1": 277017222, - "$ctl.layer.CMPCT.8.19": 3659877503, - "$ctl.layer.CMPCT.8.19.type": 860309927, - "$ctl.layer.CMPCT.8.19.i": 1562365273, - "$ctl.layer.CMPCT.8.19.dst": 1054698176, - "$ctl.layer.CMPCT.8.19.1": 4035613655, - "$ctl.layer.CMPCT.8.20": 407605534, - "$ctl.layer.CMPCT.8.20.type": 3824345476, - "$ctl.layer.CMPCT.8.20.i": 1188796162, - "$ctl.layer.CMPCT.8.20.dst": 1168687703, - "$ctl.layer.CMPCT.8.20.1": 2993759068, - "$ctl.layer.CMPCT.8.21": 1758037955, - "$ctl.layer.CMPCT.8.21.type": 3011525202, - "$ctl.layer.CMPCT.8.21.i": 1726517422, - "$ctl.layer.CMPCT.8.21.dst": 1324078589, - "$ctl.layer.CMPCT.8.21.1": 3526217000, - "$ctl.layer.CMPCT.8.22": 1056534337, - "$ctl.layer.CMPCT.8.22.type": 3312234472, - "$ctl.layer.CMPCT.8.22.i": 2942938773, - "$ctl.layer.CMPCT.8.22.dst": 1009408763, - "$ctl.layer.CMPCT.8.22.1": 3338594991, - "$ctl.layer.CMPCT.8.23": 4185374847, - "$ctl.layer.CMPCT.8.23.type": 3173740870, - "$ctl.layer.CMPCT.8.23.i": 3480847548, - "$ctl.layer.CMPCT.8.23.dst": 616324385, - "$ctl.layer.CMPCT.8.23.1": 3870951158, - "$ctl.layer.CMPCT.8.24": 1245899168, - "$ctl.layer.CMPCT.8.24.type": 3094886684, - "$ctl.layer.CMPCT.8.24.i": 1677369907, - "$ctl.layer.CMPCT.8.24.dst": 1183601967, - "$ctl.layer.CMPCT.8.24.1": 2240468157, - "$ctl.layer.CMPCT.9": 2197061886, - "$ctl.layer.CMPCT.9.ofs": 2435605970, - "$ctl.layer.CMPCT.9.name": 1479423124, - "$ctl.layer.CMPCT.9.1": 1067808627, - "$ctl.layer.CMPCT.9.1.type": 865644849, - "$ctl.layer.CMPCT.9.1.i": 2471437071, - "$ctl.layer.CMPCT.9.1.dst": 75018237, - "$ctl.layer.CMPCT.9.1.1": 4055472501, - "$ctl.layer.CMPCT.9.2": 2520581664, - "$ctl.layer.CMPCT.9.2.type": 173876623, - "$ctl.layer.CMPCT.9.2.i": 1289754936, - "$ctl.layer.CMPCT.9.2.dst": 3518728130, - "$ctl.layer.CMPCT.9.2.1": 3545094002, - "$ctl.layer.CMPCT.9.3": 1004613602, - "$ctl.layer.CMPCT.9.3.type": 92369241, - "$ctl.layer.CMPCT.9.3.i": 3702112471, - "$ctl.layer.CMPCT.9.3.dst": 1808929317, - "$ctl.layer.CMPCT.9.3.1": 991181853, - "$ctl.layer.CMPCT.9.4": 2519653631, - "$ctl.layer.CMPCT.9.4.type": 1046547191, - "$ctl.layer.CMPCT.9.4.i": 3904649522, - "$ctl.layer.CMPCT.9.4.dst": 1675716552, - "$ctl.layer.CMPCT.9.4.1": 2401728376, - "$ctl.layer.CMPCT.9.5": 3264441705, - "$ctl.layer.CMPCT.9.5.type": 3872210764, - "$ctl.layer.CMPCT.9.5.i": 3272774913, - "$ctl.layer.CMPCT.9.5.dst": 1379878883, - "$ctl.layer.CMPCT.9.5.1": 2709527643, - "$ctl.layer.CMPCT.9.6": 3171450726, - "$ctl.layer.CMPCT.9.6.type": 3825809663, - "$ctl.layer.CMPCT.9.6.i": 1851519374, - "$ctl.layer.CMPCT.9.6.dst": 3917471428, - "$ctl.layer.CMPCT.9.6.1": 214370932, - "$ctl.layer.CMPCT.9.7": 308078643, - "$ctl.layer.CMPCT.9.7.type": 726829036, - "$ctl.layer.CMPCT.9.7.i": 890701564, - "$ctl.layer.CMPCT.9.7.dst": 3287325190, - "$ctl.layer.CMPCT.9.7.1": 780249654, - "$ctl.layer.CMPCT.9.8": 3108255762, - "$ctl.layer.CMPCT.9.8.type": 2016704806, - "$ctl.layer.CMPCT.9.8.i": 3338891091, - "$ctl.layer.CMPCT.9.8.dst": 1104961825, - "$ctl.layer.CMPCT.9.8.1": 1620479257, - "$ctl.layer.CMPCT.9.9": 328124591, - "$ctl.layer.CMPCT.9.9.type": 2077457489, - "$ctl.layer.CMPCT.9.9.i": 3782117310, - "$ctl.layer.CMPCT.9.9.dst": 1883445588, - "$ctl.layer.CMPCT.9.9.1": 2195270372, - "$ctl.layer.CMPCT.9.10": 1960666905, - "$ctl.layer.CMPCT.9.10.type": 949982102, - "$ctl.layer.CMPCT.9.10.i": 3326878013, - "$ctl.layer.CMPCT.9.10.dst": 1298339933, - "$ctl.layer.CMPCT.9.10.1": 1521915739, - "$ctl.layer.CMPCT.9.11": 2747477460, - "$ctl.layer.CMPCT.9.11.type": 1815254276, - "$ctl.layer.CMPCT.9.11.i": 640770585, - "$ctl.layer.CMPCT.9.11.dst": 433191211, - "$ctl.layer.CMPCT.9.11.1": 3130796183, - "$ctl.layer.CMPCT.9.12": 3443491686, - "$ctl.layer.CMPCT.9.12.type": 1495539490, - "$ctl.layer.CMPCT.9.12.i": 1562657914, - "$ctl.layer.CMPCT.9.12.dst": 1358319177, - "$ctl.layer.CMPCT.9.12.1": 3314485920, - "$ctl.layer.CMPCT.9.13": 2472868416, - "$ctl.layer.CMPCT.9.13.type": 1670404528, - "$ctl.layer.CMPCT.9.13.i": 1023358459, - "$ctl.layer.CMPCT.9.13.dst": 1887738311, - "$ctl.layer.CMPCT.9.13.1": 627682337, - "$ctl.layer.CMPCT.9.14": 3259699487, - "$ctl.layer.CMPCT.9.14.type": 1025742398, - "$ctl.layer.CMPCT.9.14.i": 691148852, - "$ctl.layer.CMPCT.9.14.dst": 1226098405, - "$ctl.layer.CMPCT.9.14.1": 127721090, - "$ctl.layer.CMPCT.9.15": 4234598314, - "$ctl.layer.CMPCT.9.15.type": 1869842252, - "$ctl.layer.CMPCT.9.15.i": 2567772749, - "$ctl.layer.CMPCT.9.15.dst": 1514089203, - "$ctl.layer.CMPCT.9.15.1": 3884064622, - "$ctl.layer.CMPCT.9.16": 569175641, - "$ctl.layer.CMPCT.9.16.type": 1571052906, - "$ctl.layer.CMPCT.9.16.i": 3657452659, - "$ctl.layer.CMPCT.9.16.dst": 1953893553, - "$ctl.layer.CMPCT.9.16.1": 239932089, - "$ctl.layer.CMPCT.9.17": 3771245590, - "$ctl.layer.CMPCT.9.17.type": 903769624, - "$ctl.layer.CMPCT.9.17.i": 3118828943, - "$ctl.layer.CMPCT.9.17.dst": 1812865487, - "$ctl.layer.CMPCT.9.17.1": 3998241781, - "$ctl.layer.CMPCT.9.18": 451853045, - "$ctl.layer.CMPCT.9.18.type": 1097989830, - "$ctl.layer.CMPCT.9.18.i": 2448474232, - "$ctl.layer.CMPCT.9.18.dst": 525907341, - "$ctl.layer.CMPCT.9.18.1": 2052818566, - "$ctl.layer.CMPCT.9.19": 1225580671, - "$ctl.layer.CMPCT.9.19.type": 1455881588, - "$ctl.layer.CMPCT.9.19.i": 4059259225, - "$ctl.layer.CMPCT.9.19.dst": 1398626459, - "$ctl.layer.CMPCT.9.19.1": 1516120023, - "$ctl.layer.CMPCT.9.20": 2135539486, - "$ctl.layer.CMPCT.9.20.type": 3769832680, - "$ctl.layer.CMPCT.9.20.i": 2138642690, - "$ctl.layer.CMPCT.9.20.dst": 3026756589, - "$ctl.layer.CMPCT.9.20.1": 1004986716, - "$ctl.layer.CMPCT.9.21": 3572561347, - "$ctl.layer.CMPCT.9.21.type": 3628068998, - "$ctl.layer.CMPCT.9.21.i": 3748733614, - "$ctl.layer.CMPCT.9.21.dst": 3727407291, - "$ctl.layer.CMPCT.9.21.1": 2620284712, - "$ctl.layer.CMPCT.9.22": 314436929, - "$ctl.layer.CMPCT.9.22.type": 11328684, - "$ctl.layer.CMPCT.9.22.i": 2073046165, - "$ctl.layer.CMPCT.9.22.dst": 3848934113, - "$ctl.layer.CMPCT.9.22.1": 4160579759, - "$ctl.layer.CMPCT.9.23": 1625637503, - "$ctl.layer.CMPCT.9.23.type": 543926538, - "$ctl.layer.CMPCT.9.23.i": 1535334076, - "$ctl.layer.CMPCT.9.23.dst": 3371962431, - "$ctl.layer.CMPCT.9.23.1": 1480291574, - "$ctl.layer.CMPCT.9.24": 3099027360, - "$ctl.layer.CMPCT.9.24.type": 3921183536, - "$ctl.layer.CMPCT.9.24.i": 4154613811, - "$ctl.layer.CMPCT.9.24.dst": 3041685365, - "$ctl.layer.CMPCT.9.24.1": 4262110909, - "$ctl.layer.RCK": 774152205, - "$ctl.layer.RCK.sel": 57411399, - "$ctl.layer.RCK.spidx": 1838498146, - "$ctl.layer.RCK.1": 134840295, - "$ctl.layer.RCK.1.ofs": 2353513831, - "$ctl.layer.RCK.1.name": 3104649585, - "$ctl.layer.RCK.1.1": 1830009424, - "$ctl.layer.RCK.1.1.type": 2212925757, - "$ctl.layer.RCK.1.1.i": 2781542295, - "$ctl.layer.RCK.1.1.dst": 1715990205, - "$ctl.layer.RCK.1.1.1": 70630186, - "$ctl.layer.RCK.1.2": 2627316147, - "$ctl.layer.RCK.1.2.type": 630438349, - "$ctl.layer.RCK.1.2.i": 2538233434, - "$ctl.layer.RCK.1.2.dst": 2694984375, - "$ctl.layer.RCK.1.2.1": 3853834443, - "$ctl.layer.RCK.1.3": 3424627966, - "$ctl.layer.RCK.1.3.type": 3157857107, - "$ctl.layer.RCK.1.3.i": 2000225038, - "$ctl.layer.RCK.1.3.dst": 1807587591, - "$ctl.layer.RCK.1.3.1": 363054832, - "$ctl.layer.RCK.1.4": 3952827679, - "$ctl.layer.RCK.1.4.type": 1238605539, - "$ctl.layer.RCK.1.4.i": 3099074744, - "$ctl.layer.RCK.1.4.dst": 2150227260, - "$ctl.layer.RCK.1.4.1": 2535646306, - "$ctl.layer.RCK.1.5": 3139526730, - "$ctl.layer.RCK.1.5.type": 1924561646, - "$ctl.layer.RCK.1.5.i": 413626220, - "$ctl.layer.RCK.1.5.dst": 4014084291, - "$ctl.layer.RCK.1.5.1": 1998334294, - "$ctl.layer.RCK.1.6": 1764461296, - "$ctl.layer.RCK.1.6.type": 2152793444, - "$ctl.layer.RCK.1.6.i": 4196833037, - "$ctl.layer.RCK.1.6.dst": 3105670342, - "$ctl.layer.RCK.1.6.1": 1485260535, - "$ctl.layer.RCK.1.7": 2561727059, - "$ctl.layer.RCK.1.7.type": 3537203556, - "$ctl.layer.RCK.1.7.i": 3927934263, - "$ctl.layer.RCK.1.7.dst": 1083006485, - "$ctl.layer.RCK.1.7.1": 3096049076, - "$ctl.layer.RCK.1.8": 675337097, - "$ctl.layer.RCK.1.8.type": 3096388645, - "$ctl.layer.RCK.1.8.i": 730505892, - "$ctl.layer.RCK.1.8.dst": 1495482850, - "$ctl.layer.RCK.1.8.1": 1777685102, - "$ctl.layer.RCK.1.9": 2277936575, - "$ctl.layer.RCK.1.9.type": 531861562, - "$ctl.layer.RCK.1.9.i": 2341294440, - "$ctl.layer.RCK.1.9.dst": 2753557618, - "$ctl.layer.RCK.1.9.1": 3388517202, - "$ctl.layer.RCK.1.10": 1260467414, - "$ctl.layer.RCK.1.10.type": 1787848056, - "$ctl.layer.RCK.1.10.i": 4218204873, - "$ctl.layer.RCK.1.10.dst": 2820522543, - "$ctl.layer.RCK.1.10.1": 1680986415, - "$ctl.layer.RCK.1.11": 2057779203, - "$ctl.layer.RCK.1.11.type": 3968636992, - "$ctl.layer.RCK.1.11.i": 3679117505, - "$ctl.layer.RCK.1.11.dst": 830401431, - "$ctl.layer.RCK.1.11.1": 2052262183, - "$ctl.layer.RCK.1.12": 2855741305, - "$ctl.layer.RCK.1.12.type": 312882915, - "$ctl.layer.RCK.1.12.i": 2750538378, - "$ctl.layer.RCK.1.12.dst": 1335396804, - "$ctl.layer.RCK.1.12.1": 197255892, - "$ctl.layer.RCK.1.13": 3653053146, - "$ctl.layer.RCK.1.13.type": 4278198715, - "$ctl.layer.RCK.1.13.i": 3484709810, - "$ctl.layer.RCK.1.13.dst": 437440220, - "$ctl.layer.RCK.1.13.1": 2414441948, - "$ctl.layer.RCK.1.14": 3107510984, - "$ctl.layer.RCK.1.14.type": 1039211709, - "$ctl.layer.RCK.1.14.i": 755591092, - "$ctl.layer.RCK.1.14.dst": 3816714090, - "$ctl.layer.RCK.1.14.1": 682172778, - "$ctl.layer.RCK.1.15": 3367951910, - "$ctl.layer.RCK.1.15.type": 657070933, - "$ctl.layer.RCK.1.15.i": 4163881148, - "$ctl.layer.RCK.1.15.dst": 1100443234, - "$ctl.layer.RCK.1.15.1": 3077528210, - "$ctl.layer.RCK.1.16": 4140329132, - "$ctl.layer.RCK.1.16.type": 1578144232, - "$ctl.layer.RCK.1.16.i": 625403481, - "$ctl.layer.RCK.1.16.dst": 3632459487, - "$ctl.layer.RCK.1.16.1": 1146552895, - "$ctl.layer.RCK.1.17": 3327023129, - "$ctl.layer.RCK.1.17.type": 1034674421, - "$ctl.layer.RCK.1.17.i": 1147902044, - "$ctl.layer.RCK.1.17.dst": 4162731522, - "$ctl.layer.RCK.1.17.1": 2771618866, - "$ctl.layer.RCK.1.18": 4124987770, - "$ctl.layer.RCK.1.18.type": 2221309826, - "$ctl.layer.RCK.1.18.i": 1261357539, - "$ctl.layer.RCK.1.18.dst": 22618725, - "$ctl.layer.RCK.1.18.1": 1854128085, - "$ctl.layer.RCK.1.19": 358878053, - "$ctl.layer.RCK.1.19.type": 1335172895, - "$ctl.layer.RCK.1.19.i": 2122671382, - "$ctl.layer.RCK.1.19.dst": 3523375672, - "$ctl.layer.RCK.1.19.1": 1462574808, - "$ctl.layer.RCK.1.20": 4276749967, - "$ctl.layer.RCK.1.20.type": 3130457320, - "$ctl.layer.RCK.1.20.i": 3011413849, - "$ctl.layer.RCK.1.20.dst": 1560891359, - "$ctl.layer.RCK.1.20.1": 2887860543, - "$ctl.layer.RCK.1.21": 778434024, - "$ctl.layer.RCK.1.21.type": 1095040064, - "$ctl.layer.RCK.1.21.i": 2052369601, - "$ctl.layer.RCK.1.21.dst": 640851863, - "$ctl.layer.RCK.1.21.1": 3041557799, - "$ctl.layer.RCK.1.22": 1575745877, - "$ctl.layer.RCK.1.22.type": 2580931714, - "$ctl.layer.RCK.1.22.i": 2459934947, - "$ctl.layer.RCK.1.22.dst": 3706208613, - "$ctl.layer.RCK.1.22.1": 823404757, - "$ctl.layer.RCK.1.23": 494643572, - "$ctl.layer.RCK.1.23.type": 3380265498, - "$ctl.layer.RCK.1.23.i": 45896171, - "$ctl.layer.RCK.1.23.dst": 1326280509, - "$ctl.layer.RCK.1.23.1": 3707163101, - "$ctl.layer.RCK.1.24": 1291955361, - "$ctl.layer.RCK.1.24.type": 2638839997, - "$ctl.layer.RCK.1.24.i": 2517840820, - "$ctl.layer.RCK.1.24.dst": 3753321322, - "$ctl.layer.RCK.1.24.1": 765498730, - "$ctl.layer.RCK.1.25": 2089262082, - "$ctl.layer.RCK.1.25.type": 1959710650, - "$ctl.layer.RCK.1.25.i": 2745898379, - "$ctl.layer.RCK.1.25.dst": 4158399197, - "$ctl.layer.RCK.1.25.1": 2180173693, - "$ctl.layer.RCK.1.26": 2885918543, - "$ctl.layer.RCK.1.26.type": 397100631, - "$ctl.layer.RCK.1.26.i": 1355744094, - "$ctl.layer.RCK.1.26.dst": 4206424880, - "$ctl.layer.RCK.1.26.1": 2397357824, - "$ctl.layer.RCK.1.27": 3414773614, - "$ctl.layer.RCK.1.27.type": 2446976751, - "$ctl.layer.RCK.1.27.i": 3642465862, - "$ctl.layer.RCK.1.27.dst": 2406237192, - "$ctl.layer.RCK.1.27.1": 4237829640, - "$ctl.layer.RCK.1.28": 2601472731, - "$ctl.layer.RCK.1.28.type": 3229564919, - "$ctl.layer.RCK.1.28.i": 4181559422, - "$ctl.layer.RCK.1.28.dst": 2743919312, - "$ctl.layer.RCK.1.28.1": 912326816, - "$ctl.layer.RCK.1.29": 3399434804, - "$ctl.layer.RCK.1.29.type": 984560783, - "$ctl.layer.RCK.1.29.i": 2173493094, - "$ctl.layer.RCK.1.29.dst": 943511464, - "$ctl.layer.RCK.1.29.1": 2752660392, - "$ctl.layer.RCK.1.30": 1948556638, - "$ctl.layer.RCK.1.30.type": 929346274, - "$ctl.layer.RCK.1.30.i": 1211655491, - "$ctl.layer.RCK.1.30.dst": 4099016133, - "$ctl.layer.RCK.1.30.1": 2876990261, - "$ctl.layer.RCK.1.31": 1403057993, - "$ctl.layer.RCK.1.31.type": 292139503, - "$ctl.layer.RCK.1.31.i": 1481635654, - "$ctl.layer.RCK.1.31.dst": 209147144, - "$ctl.layer.RCK.1.31.1": 2102258952, - "$ctl.layer.RCK.1.32": 2200326314, - "$ctl.layer.RCK.1.32.type": 3751422082, - "$ctl.layer.RCK.1.32.i": 4037000419, - "$ctl.layer.RCK.1.32.dst": 2636612965, - "$ctl.layer.RCK.1.32.1": 1392471253, - "$ctl.layer.RCK.1.33": 2435873616, - "$ctl.layer.RCK.1.33.type": 3529360927, - "$ctl.layer.RCK.1.33.i": 2570731030, - "$ctl.layer.RCK.1.33.dst": 1330651960, - "$ctl.layer.RCK.1.33.1": 3160688088, - "$ctl.layer.RCK.1.34": 3233180317, - "$ctl.layer.RCK.1.34.type": 1741551900, - "$ctl.layer.RCK.1.34.i": 2030988349, - "$ctl.layer.RCK.1.34.dst": 3300609083, - "$ctl.layer.RCK.1.34.1": 2057534923, - "$ctl.layer.RCK.1.35": 4031147515, - "$ctl.layer.RCK.1.35.type": 831153594, - "$ctl.layer.RCK.1.35.i": 4168225675, - "$ctl.layer.RCK.1.35.dst": 1326954717, - "$ctl.layer.RCK.1.35.1": 3240956285, - "$ctl.layer.RCK.1.36": 2949389801, - "$ctl.layer.RCK.1.36.type": 1577974359, - "$ctl.layer.RCK.1.36.i": 1858883422, - "$ctl.layer.RCK.1.36.dst": 3137054512, - "$ctl.layer.RCK.1.36.1": 1892825856, - "$ctl.layer.RCK.1.37": 3746701642, - "$ctl.layer.RCK.1.37.type": 4127103839, - "$ctl.layer.RCK.1.37.i": 2266425558, - "$ctl.layer.RCK.1.37.dst": 812710008, - "$ctl.layer.RCK.1.37.1": 3969620760, - "$ctl.layer.RCK.1.38": 248385696, - "$ctl.layer.RCK.1.38.type": 2898494433, - "$ctl.layer.RCK.1.38.i": 464778216, - "$ctl.layer.RCK.1.38.dst": 1876285238, - "$ctl.layer.RCK.1.38.1": 3120428070, - "$ctl.layer.RCK.1.39": 1045697517, - "$ctl.layer.RCK.1.39.type": 2943477892, - "$ctl.layer.RCK.1.39.i": 3062508469, - "$ctl.layer.RCK.1.39.dst": 1828686691, - "$ctl.layer.RCK.1.39.1": 522696643, - "$ctl.layer.RCK.1.40": 400800760, - "$ctl.layer.RCK.1.40.type": 2263417682, - "$ctl.layer.RCK.1.40.i": 4130567763, - "$ctl.layer.RCK.1.40.dst": 2841007669, - "$ctl.layer.RCK.1.40.1": 4085150725, - "$ctl.layer.RCK.2": 3683759230, - "$ctl.layer.RCK.2.ofs": 13186432, - "$ctl.layer.RCK.2.name": 2849618237, - "$ctl.layer.RCK.2.1": 4157962239, - "$ctl.layer.RCK.2.1.type": 2294100161, - "$ctl.layer.RCK.2.1.i": 578128016, - "$ctl.layer.RCK.2.1.dst": 724549126, - "$ctl.layer.RCK.2.1.1": 3772796637, - "$ctl.layer.RCK.2.2": 1887032996, - "$ctl.layer.RCK.2.2.type": 3871693169, - "$ctl.layer.RCK.2.2.i": 572411565, - "$ctl.layer.RCK.2.2.dst": 1193582994, - "$ctl.layer.RCK.2.2.1": 1720276148, - "$ctl.layer.RCK.2.3": 2820726137, - "$ctl.layer.RCK.2.3.type": 3345667915, - "$ctl.layer.RCK.2.3.i": 33891697, - "$ctl.layer.RCK.2.3.dst": 4263217785, - "$ctl.layer.RCK.2.3.1": 913304375, - "$ctl.layer.RCK.2.4": 1623563824, - "$ctl.layer.RCK.2.4.type": 964056347, - "$ctl.layer.RCK.2.4.i": 749592511, - "$ctl.layer.RCK.2.4.dst": 2608713480, - "$ctl.layer.RCK.2.4.1": 1964548341, - "$ctl.layer.RCK.2.5": 1036831941, - "$ctl.layer.RCK.2.5.type": 3603976469, - "$ctl.layer.RCK.2.5.i": 2358358947, - "$ctl.layer.RCK.2.5.dst": 3807154505, - "$ctl.layer.RCK.2.5.1": 1425823481, - "$ctl.layer.RCK.2.6": 1005234015, - "$ctl.layer.RCK.2.6.type": 3710294591, - "$ctl.layer.RCK.2.6.i": 641364730, - "$ctl.layer.RCK.2.6.dst": 2691761478, - "$ctl.layer.RCK.2.6.1": 881932592, - "$ctl.layer.RCK.2.7": 1938793988, - "$ctl.layer.RCK.2.7.type": 493069887, - "$ctl.layer.RCK.2.7.i": 1981875440, - "$ctl.layer.RCK.2.7.dst": 2884151868, - "$ctl.layer.RCK.2.7.1": 2492204491, - "$ctl.layer.RCK.2.8": 1277339566, - "$ctl.layer.RCK.2.8.type": 1300835193, - "$ctl.layer.RCK.2.8.i": 2696286171, - "$ctl.layer.RCK.2.8.dst": 1234521626, - "$ctl.layer.RCK.2.8.1": 2401293841, - "$ctl.layer.RCK.2.9": 153578896, - "$ctl.layer.RCK.2.9.type": 167896932, - "$ctl.layer.RCK.2.9.i": 11416527, - "$ctl.layer.RCK.2.9.dst": 2130185386, - "$ctl.layer.RCK.2.9.1": 4011362053, - "$ctl.layer.RCK.2.10": 1842148265, - "$ctl.layer.RCK.2.10.type": 93951674, - "$ctl.layer.RCK.2.10.i": 3604696715, - "$ctl.layer.RCK.2.10.dst": 548139997, - "$ctl.layer.RCK.2.10.1": 2631390845, - "$ctl.layer.RCK.2.11": 2775677564, - "$ctl.layer.RCK.2.11.type": 3717864923, - "$ctl.layer.RCK.2.11.i": 4003453522, - "$ctl.layer.RCK.2.11.dst": 992443132, - "$ctl.layer.RCK.2.11.1": 4043263484, - "$ctl.layer.RCK.2.12": 506222854, - "$ctl.layer.RCK.2.12.type": 13611937, - "$ctl.layer.RCK.2.12.i": 2043293736, - "$ctl.layer.RCK.2.12.dst": 633147638, - "$ctl.layer.RCK.2.12.1": 2045229030, - "$ctl.layer.RCK.2.13": 1261504301, - "$ctl.layer.RCK.2.13.type": 1422274471, - "$ctl.layer.RCK.2.13.i": 634774670, - "$ctl.layer.RCK.2.13.dst": 3518225536, - "$ctl.layer.RCK.2.13.1": 1305034480, - "$ctl.layer.RCK.2.14": 2547533935, - "$ctl.layer.RCK.2.14.type": 2993089038, - "$ctl.layer.RCK.2.14.i": 3106961967, - "$ctl.layer.RCK.2.14.dst": 1868121849, - "$ctl.layer.RCK.2.14.1": 478325193, - "$ctl.layer.RCK.2.15": 3950825305, - "$ctl.layer.RCK.2.15.type": 3583823128, - "$ctl.layer.RCK.2.15.i": 73087081, - "$ctl.layer.RCK.2.15.dst": 1529814991, - "$ctl.layer.RCK.2.15.1": 3846393039, - "$ctl.layer.RCK.2.16": 1769163219, - "$ctl.layer.RCK.2.16.type": 741767914, - "$ctl.layer.RCK.2.16.i": 3009677915, - "$ctl.layer.RCK.2.16.dst": 153344013, - "$ctl.layer.RCK.2.16.1": 3057367565, - "$ctl.layer.RCK.3": 893890163, - "$ctl.layer.RCK.3.ofs": 3130021794, - "$ctl.layer.RCK.3.name": 2532349760, - "$ctl.layer.RCK.3.1": 2853967261, - "$ctl.layer.RCK.3.1.type": 3430165028, - "$ctl.layer.RCK.3.1.i": 3568212178, - "$ctl.layer.RCK.3.1.dst": 2858604542, - "$ctl.layer.RCK.3.1.1": 320426655, - "$ctl.layer.RCK.3.2": 2856466054, - "$ctl.layer.RCK.3.2.type": 3772928766, - "$ctl.layer.RCK.3.2.i": 3898724687, - "$ctl.layer.RCK.3.2.dst": 2636717034, - "$ctl.layer.RCK.3.2.1": 919353222, - "$ctl.layer.RCK.3.3": 1851998907, - "$ctl.layer.RCK.3.3.type": 297138419, - "$ctl.layer.RCK.3.3.i": 3359406787, - "$ctl.layer.RCK.3.3.dst": 1276792996, - "$ctl.layer.RCK.3.3.1": 111949349, - "$ctl.layer.RCK.3.4": 780403522, - "$ctl.layer.RCK.3.4.type": 4264987576, - "$ctl.layer.RCK.3.4.i": 1718594685, - "$ctl.layer.RCK.3.4.dst": 715994320, - "$ctl.layer.RCK.3.4.1": 3101649703, - "$ctl.layer.RCK.3.5": 2382675831, - "$ctl.layer.RCK.3.5.type": 4000524221, - "$ctl.layer.RCK.3.5.i": 1179643345, - "$ctl.layer.RCK.3.5.dst": 3856504318, - "$ctl.layer.RCK.3.5.1": 2562700955, - "$ctl.layer.RCK.3.6": 4163036413, - "$ctl.layer.RCK.3.6.type": 3666235127, - "$ctl.layer.RCK.3.6.i": 1484986632, - "$ctl.layer.RCK.3.6.dst": 3175221729, - "$ctl.layer.RCK.3.6.1": 3872057074, - "$ctl.layer.RCK.3.7": 3116918246, - "$ctl.layer.RCK.3.7.type": 937192183, - "$ctl.layer.RCK.3.7.i": 677583666, - "$ctl.layer.RCK.3.7.dst": 2345803300, - "$ctl.layer.RCK.3.7.1": 3335358345, - "$ctl.layer.RCK.3.8": 434731420, - "$ctl.layer.RCK.3.8.type": 4216200588, - "$ctl.layer.RCK.3.8.i": 4000185785, - "$ctl.layer.RCK.3.8.dst": 1653359119, - "$ctl.layer.RCK.3.8.1": 3705195363, - "$ctl.layer.RCK.3.9": 3647615650, - "$ctl.layer.RCK.3.9.type": 916904321, - "$ctl.layer.RCK.3.9.i": 3463834669, - "$ctl.layer.RCK.3.9.dst": 3149583314, - "$ctl.layer.RCK.3.9.1": 3168863511, - "$ctl.layer.RCK.3.10": 1040488555, - "$ctl.layer.RCK.3.10.type": 2718088023, - "$ctl.layer.RCK.3.10.i": 687107678, - "$ctl.layer.RCK.3.10.dst": 2140495408, - "$ctl.layer.RCK.3.10.1": 750697472, - "$ctl.layer.RCK.3.11": 3618285022, - "$ctl.layer.RCK.3.11.type": 1470460083, - "$ctl.layer.RCK.3.11.i": 680981434, - "$ctl.layer.RCK.3.11.dst": 3576873876, - "$ctl.layer.RCK.3.11.1": 1260138436, - "$ctl.layer.RCK.3.12": 3623078004, - "$ctl.layer.RCK.3.12.type": 3569931028, - "$ctl.layer.RCK.3.12.i": 1544765733, - "$ctl.layer.RCK.3.12.dst": 2981524979, - "$ctl.layer.RCK.3.12.1": 1570677491, - "$ctl.layer.RCK.3.13": 2272560351, - "$ctl.layer.RCK.3.13.type": 1409098122, - "$ctl.layer.RCK.3.13.i": 448583291, - "$ctl.layer.RCK.3.13.dst": 3473571501, - "$ctl.layer.RCK.3.13.1": 987909293, - "$ctl.layer.RCK.3.14": 1536509149, - "$ctl.layer.RCK.3.14.type": 105771318, - "$ctl.layer.RCK.3.14.i": 3613894343, - "$ctl.layer.RCK.3.14.dst": 559959617, - "$ctl.layer.RCK.3.14.1": 2622233825, - "$ctl.layer.RCK.3.15": 3149615675, - "$ctl.layer.RCK.3.15.type": 2208525808, - "$ctl.layer.RCK.3.15.i": 1253170001, - "$ctl.layer.RCK.3.15.dst": 4262859015, - "$ctl.layer.RCK.3.15.1": 1861003575, - "$ctl.layer.RCK.3.16": 632346529, - "$ctl.layer.RCK.3.16.type": 478234957, - "$ctl.layer.RCK.3.16.i": 362466340, - "$ctl.layer.RCK.3.16.dst": 1592716346, - "$ctl.layer.RCK.3.16.1": 2920831130, - "$ctl.layer.RCK.4": 2320181000, - "$ctl.layer.RCK.4.ofs": 3842692815, - "$ctl.layer.RCK.4.name": 2941120213, - "$ctl.layer.RCK.4.1": 2147445048, - "$ctl.layer.RCK.4.1.type": 4042359409, - "$ctl.layer.RCK.4.1.i": 151512703, - "$ctl.layer.RCK.4.1.dst": 2026295822, - "$ctl.layer.RCK.4.1.1": 3885837490, - "$ctl.layer.RCK.4.2": 1979250731, - "$ctl.layer.RCK.4.2.type": 240690112, - "$ctl.layer.RCK.4.2.i": 3182734626, - "$ctl.layer.RCK.4.2.dst": 4920837, - "$ctl.layer.RCK.4.2.1": 38422371, - "$ctl.layer.RCK.4.3": 1119042454, - "$ctl.layer.RCK.4.3.type": 3521379776, - "$ctl.layer.RCK.4.3.i": 2648290342, - "$ctl.layer.RCK.4.3.dst": 750032052, - "$ctl.layer.RCK.4.3.1": 846133336, - "$ctl.layer.RCK.4.4": 1488399335, - "$ctl.layer.RCK.4.4.type": 2671294658, - "$ctl.layer.RCK.4.4.i": 2445726160, - "$ctl.layer.RCK.4.4.dst": 2424363141, - "$ctl.layer.RCK.4.4.1": 2388398874, - "$ctl.layer.RCK.4.5": 1488023378, - "$ctl.layer.RCK.4.5.type": 356336845, - "$ctl.layer.RCK.4.5.i": 1911242996, - "$ctl.layer.RCK.4.5.dst": 1699934318, - "$ctl.layer.RCK.4.5.1": 1853257790, - "$ctl.layer.RCK.4.6": 3264453080, - "$ctl.layer.RCK.4.6.type": 3470245703, - "$ctl.layer.RCK.4.6.i": 2358797845, - "$ctl.layer.RCK.4.6.dst": 3889538158, - "$ctl.layer.RCK.4.6.1": 3142293599, - "$ctl.layer.RCK.4.7": 2404239563, - "$ctl.layer.RCK.4.7.type": 2755296071, - "$ctl.layer.RCK.4.7.i": 4239594527, - "$ctl.layer.RCK.4.7.dst": 3977653524, - "$ctl.layer.RCK.4.7.1": 2605229740, - "$ctl.layer.RCK.4.8": 1163003041, - "$ctl.layer.RCK.4.8.type": 3255328249, - "$ctl.layer.RCK.4.8.i": 415773020, - "$ctl.layer.RCK.4.8.dst": 1494376721, - "$ctl.layer.RCK.4.8.1": 123560838, - "$ctl.layer.RCK.4.9": 2773220487, - "$ctl.layer.RCK.4.9.type": 2223839737, - "$ctl.layer.RCK.4.9.i": 4173677184, - "$ctl.layer.RCK.4.9.dst": 1166992935, - "$ctl.layer.RCK.4.9.1": 3881466314, - "$ctl.layer.RCK.4.10": 1756489166, - "$ctl.layer.RCK.4.10.type": 965011369, - "$ctl.layer.RCK.4.10.i": 4065799616, - "$ctl.layer.RCK.4.10.dst": 1047693982, - "$ctl.layer.RCK.4.10.1": 3512383390, - "$ctl.layer.RCK.4.11": 225151291, - "$ctl.layer.RCK.4.11.type": 1234666156, - "$ctl.layer.RCK.4.11.i": 2422207789, - "$ctl.layer.RCK.4.11.dst": 3878278603, - "$ctl.layer.RCK.4.11.1": 1498542843, - "$ctl.layer.RCK.4.12": 55031313, - "$ctl.layer.RCK.4.12.type": 1319061200, - "$ctl.layer.RCK.4.12.i": 3753431345, - "$ctl.layer.RCK.4.12.dst": 689019367, - "$ctl.layer.RCK.4.12.1": 3824875287, - "$ctl.layer.RCK.4.13": 3007445410, - "$ctl.layer.RCK.4.13.type": 2843151265, - "$ctl.layer.RCK.4.13.i": 576555048, - "$ctl.layer.RCK.4.13.dst": 3463035126, - "$ctl.layer.RCK.4.13.1": 557866982, - "$ctl.layer.RCK.4.14": 805693792, - "$ctl.layer.RCK.4.14.type": 2088249566, - "$ctl.layer.RCK.4.14.i": 63074527, - "$ctl.layer.RCK.4.14.dst": 3120921481, - "$ctl.layer.RCK.4.14.1": 1710233849, - "$ctl.layer.RCK.4.15": 3858771166, - "$ctl.layer.RCK.4.15.type": 3207681391, - "$ctl.layer.RCK.4.15.i": 275308486, - "$ctl.layer.RCK.4.15.dst": 3156146312, - "$ctl.layer.RCK.4.15.1": 859236744, - "$ctl.layer.RCK.4.16": 1342854980, - "$ctl.layer.RCK.4.16.type": 3273350035, - "$ctl.layer.RCK.4.16.i": 173788698, - "$ctl.layer.RCK.4.16.dst": 1580072564, - "$ctl.layer.RCK.4.16.1": 3411418020, - "$ctl.layer.RCK.5": 3500181634, - "$ctl.layer.RCK.5.ofs": 2243868870, - "$ctl.layer.RCK.5.name": 602705883, - "$ctl.layer.RCK.5.1": 2599613329, - "$ctl.layer.RCK.5.1.type": 3790512767, - "$ctl.layer.RCK.5.1.i": 1637092950, - "$ctl.layer.RCK.5.1.dst": 2032110283, - "$ctl.layer.RCK.5.1.1": 2200356883, - "$ctl.layer.RCK.5.2": 4107230322, - "$ctl.layer.RCK.5.2.type": 2499288826, - "$ctl.layer.RCK.5.2.i": 1890241443, - "$ctl.layer.RCK.5.2.dst": 1495856884, - "$ctl.layer.RCK.5.2.1": 742248802, - "$ctl.layer.RCK.5.3": 1005148743, - "$ctl.layer.RCK.5.3.type": 345263333, - "$ctl.layer.RCK.5.3.i": 2428742063, - "$ctl.layer.RCK.5.3.dst": 3301159533, - "$ctl.layer.RCK.5.3.1": 4233847897, - "$ctl.layer.RCK.5.4": 633414582, - "$ctl.layer.RCK.5.4.type": 3014344925, - "$ctl.layer.RCK.5.4.i": 3633996801, - "$ctl.layer.RCK.5.4.dst": 1256287822, - "$ctl.layer.RCK.5.4.1": 4029816267, - "$ctl.layer.RCK.5.5": 3594209675, - "$ctl.layer.RCK.5.5.type": 143570275, - "$ctl.layer.RCK.5.5.i": 4172625581, - "$ctl.layer.RCK.5.5.dst": 472582885, - "$ctl.layer.RCK.5.5.1": 273472663, - "$ctl.layer.RCK.5.6": 2820482097, - "$ctl.layer.RCK.5.6.type": 1006939753, - "$ctl.layer.RCK.5.6.i": 2378952652, - "$ctl.layer.RCK.5.6.dst": 767559523, - "$ctl.layer.RCK.5.6.1": 2943860150, - "$ctl.layer.RCK.5.7": 4013567250, - "$ctl.layer.RCK.5.7.type": 1354646121, - "$ctl.layer.RCK.5.7.i": 501842422, - "$ctl.layer.RCK.5.7.dst": 2045032946, - "$ctl.layer.RCK.5.7.1": 3481045237, - "$ctl.layer.RCK.5.8": 3911723752, - "$ctl.layer.RCK.5.8.type": 3235374007, - "$ctl.layer.RCK.5.8.i": 1708428101, - "$ctl.layer.RCK.5.8.dst": 3549169172, - "$ctl.layer.RCK.5.8.1": 661084431, - "$ctl.layer.RCK.5.9": 2308961366, - "$ctl.layer.RCK.5.9.type": 501970828, - "$ctl.layer.RCK.5.9.i": 2245766737, - "$ctl.layer.RCK.5.9.dst": 1188505420, - "$ctl.layer.RCK.5.9.1": 1198392347, - "$ctl.layer.RCK.5.10": 3325786095, - "$ctl.layer.RCK.5.10.type": 411794324, - "$ctl.layer.RCK.5.10.i": 1771124901, - "$ctl.layer.RCK.5.10.dst": 318318707, - "$ctl.layer.RCK.5.10.1": 2316210291, - "$ctl.layer.RCK.5.11": 223868066, - "$ctl.layer.RCK.5.11.type": 301533619, - "$ctl.layer.RCK.5.11.i": 1493089978, - "$ctl.layer.RCK.5.11.dst": 260814484, - "$ctl.layer.RCK.5.11.1": 2090927300, - "$ctl.layer.RCK.5.12": 1730010808, - "$ctl.layer.RCK.5.12.type": 3620846357, - "$ctl.layer.RCK.5.12.i": 109448444, - "$ctl.layer.RCK.5.12.dst": 1514432546, - "$ctl.layer.RCK.5.12.1": 3810032466, - "$ctl.layer.RCK.5.13": 3080029243, - "$ctl.layer.RCK.5.13.type": 2916407463, - "$ctl.layer.RCK.5.13.i": 488659854, - "$ctl.layer.RCK.5.13.dst": 1936161664, - "$ctl.layer.RCK.5.13.1": 3096668144, - "$ctl.layer.RCK.5.14": 1320144425, - "$ctl.layer.RCK.5.14.type": 1040744752, - "$ctl.layer.RCK.5.14.i": 2396128273, - "$ctl.layer.RCK.5.14.dst": 3673543751, - "$ctl.layer.RCK.5.14.1": 1356972151, - "$ctl.layer.RCK.5.15": 1217153759, - "$ctl.layer.RCK.5.15.type": 19828398, - "$ctl.layer.RCK.5.15.i": 2047542991, - "$ctl.layer.RCK.5.15.dst": 649870233, - "$ctl.layer.RCK.5.15.1": 2039668329, - "$ctl.layer.RCK.5.16": 446088517, - "$ctl.layer.RCK.5.16.type": 4192011876, - "$ctl.layer.RCK.5.16.i": 2159723285, - "$ctl.layer.RCK.5.16.dst": 919581507, - "$ctl.layer.RCK.5.16.1": 3907323555, - "$ctl.layer.EXT": 1695636350, - "$ctl.layer.EXT.sel": 441406531, - "$ctl.layer.EXT.spidx": 1846342446, - "$ctl.layer.EXT.1": 654272723, - "$ctl.layer.EXT.1.ofs": 1099719329, - "$ctl.layer.EXT.1.name": 536617129, - "$ctl.layer.EXT.1.1": 515907022, - "$ctl.layer.EXT.1.1.type": 1488811069, - "$ctl.layer.EXT.1.1.i": 1571982513, - "$ctl.layer.EXT.1.1.dst": 626680133, - "$ctl.layer.EXT.1.1.1": 922044660, - "$ctl.layer.EXT.1.2": 3500031637, - "$ctl.layer.EXT.1.2.type": 1722343246, - "$ctl.layer.EXT.1.2.i": 1558038276, - "$ctl.layer.EXT.1.2.dst": 117458279, - "$ctl.layer.EXT.1.2.1": 2960146589, - "$ctl.layer.EXT.1.3": 2550610016, - "$ctl.layer.EXT.1.3.type": 2322010435, - "$ctl.layer.EXT.1.3.i": 1021342288, - "$ctl.layer.EXT.1.3.dst": 3478971615, - "$ctl.layer.EXT.1.3.1": 3760729390, - "$ctl.layer.EXT.1.4": 3118462729, - "$ctl.layer.EXT.1.4.type": 2546502433, - "$ctl.layer.EXT.1.4.i": 3972774054, - "$ctl.layer.EXT.1.4.dst": 2804447516, - "$ctl.layer.EXT.1.4.1": 3831723260, - "$ctl.layer.EXT.1.5": 34130196, - "$ctl.layer.EXT.1.5.type": 1409181478, - "$ctl.layer.EXT.1.5.i": 3436438706, - "$ctl.layer.EXT.1.5.dst": 1435122795, - "$ctl.layer.EXT.1.5.1": 3290152648, - "$ctl.layer.EXT.1.6": 469692014, - "$ctl.layer.EXT.1.6.type": 1642812759, - "$ctl.layer.EXT.1.6.i": 838804059, - "$ctl.layer.EXT.1.6.dst": 477995118, - "$ctl.layer.EXT.1.6.1": 189193873, - "$ctl.layer.EXT.1.7": 3815534389, - "$ctl.layer.EXT.1.7.type": 3285107031, - "$ctl.layer.EXT.1.7.i": 2718371921, - "$ctl.layer.EXT.1.7.dst": 739584384, - "$ctl.layer.EXT.1.7.1": 3947467370, - "$ctl.layer.EXT.1.8": 4114968735, - "$ctl.layer.EXT.1.8.type": 2492537109, - "$ctl.layer.EXT.1.8.i": 2045904250, - "$ctl.layer.EXT.1.8.dst": 4129893739, - "$ctl.layer.EXT.1.8.1": 3006579120, - "$ctl.layer.EXT.1.9": 1299064745, - "$ctl.layer.EXT.1.9.type": 2953086186, - "$ctl.layer.EXT.1.9.i": 1509549046, - "$ctl.layer.EXT.1.9.dst": 1059231826, - "$ctl.layer.EXT.1.9.1": 2470252044, - "$ctl.layer.EXT.1.10": 302556336, - "$ctl.layer.EXT.1.10.type": 1069309408, - "$ctl.layer.EXT.1.10.i": 4002993633, - "$ctl.layer.EXT.1.10.dst": 1110379319, - "$ctl.layer.EXT.1.10.1": 3406147015, - "$ctl.layer.EXT.1.11": 2972097885, - "$ctl.layer.EXT.1.11.type": 3417039375, - "$ctl.layer.EXT.1.11.i": 2630767078, - "$ctl.layer.EXT.1.11.dst": 1186563368, - "$ctl.layer.EXT.1.11.1": 3269735976, - "$ctl.layer.EXT.1.12": 1666170023, - "$ctl.layer.EXT.1.12.type": 1349926841, - "$ctl.layer.EXT.1.12.i": 3785618608, - "$ctl.layer.EXT.1.12.dst": 719580270, - "$ctl.layer.EXT.1.12.1": 3791376078, - "$ctl.layer.EXT.1.13": 192450188, - "$ctl.layer.EXT.1.13.type": 3981711411, - "$ctl.layer.EXT.1.13.i": 3859308602, - "$ctl.layer.EXT.1.13.dst": 2411817748, - "$ctl.layer.EXT.1.13.1": 3717564484, - "$ctl.layer.EXT.1.14": 2190560606, - "$ctl.layer.EXT.1.14.type": 2370012306, - "$ctl.layer.EXT.1.14.i": 1412691219, - "$ctl.layer.EXT.1.14.dst": 2824198005, - "$ctl.layer.EXT.1.14.1": 360576325, - "$ctl.layer.EXT.1.15": 2495563232, - "$ctl.layer.EXT.1.15.type": 4261002060, - "$ctl.layer.EXT.1.15.i": 3474812365, - "$ctl.layer.EXT.1.15.dst": 2020367979, - "$ctl.layer.EXT.1.15.1": 4103453595, - "$ctl.layer.EXT.1.16": 2931084154, - "$ctl.layer.EXT.1.16.type": 2165306054, - "$ctl.layer.EXT.1.16.i": 1208631927, - "$ctl.layer.EXT.1.16.dst": 2608701457, - "$ctl.layer.EXT.1.16.1": 229130769, - "$ctl.layer.EXT.2": 696410142, - "$ctl.layer.EXT.2.ofs": 1549630026, - "$ctl.layer.EXT.2.name": 794127939, - "$ctl.layer.EXT.2.1": 1133594405, - "$ctl.layer.EXT.2.1.type": 270702375, - "$ctl.layer.EXT.2.1.i": 1122069466, - "$ctl.layer.EXT.2.1.dst": 1005686645, - "$ctl.layer.EXT.2.1.1": 1551118215, - "$ctl.layer.EXT.2.2": 3960348158, - "$ctl.layer.EXT.2.2.type": 1554216343, - "$ctl.layer.EXT.2.2.i": 1096985111, - "$ctl.layer.EXT.2.2.dst": 3964553907, - "$ctl.layer.EXT.2.2.1": 3405063166, - "$ctl.layer.EXT.2.3": 3163381939, - "$ctl.layer.EXT.2.3.type": 2569582433, - "$ctl.layer.EXT.2.3.i": 1634766395, - "$ctl.layer.EXT.2.3.dst": 2029622819, - "$ctl.layer.EXT.2.3.1": 4211299277, - "$ctl.layer.EXT.2.4": 3574190410, - "$ctl.layer.EXT.2.4.type": 3853003281, - "$ctl.layer.EXT.2.4.i": 133289077, - "$ctl.layer.EXT.2.4.dst": 3930849830, - "$ctl.layer.EXT.2.4.1": 3380910143, - "$ctl.layer.EXT.2.5": 495512607, - "$ctl.layer.EXT.2.5.type": 1124486678, - "$ctl.layer.EXT.2.5.i": 2818423929, - "$ctl.layer.EXT.2.5.dst": 411996007, - "$ctl.layer.EXT.2.5.1": 3918568995, - "$ctl.layer.EXT.2.6": 4152301189, - "$ctl.layer.EXT.2.6.type": 274790229, - "$ctl.layer.EXT.2.6.i": 377424432, - "$ctl.layer.EXT.2.6.dst": 714267548, - "$ctl.layer.EXT.2.6.1": 807778810, - "$ctl.layer.EXT.2.7": 3355135326, - "$ctl.layer.EXT.2.7.type": 4022459216, - "$ctl.layer.EXT.2.7.i": 3331143738, - "$ctl.layer.EXT.2.7.dst": 1463234845, - "$ctl.layer.EXT.2.7.1": 3491736193, - "$ctl.layer.EXT.2.8": 275155092, - "$ctl.layer.EXT.2.8.type": 2092635103, - "$ctl.layer.EXT.2.8.i": 2502045457, - "$ctl.layer.EXT.2.8.dst": 3924241680, - "$ctl.layer.EXT.2.8.1": 3467960027, - "$ctl.layer.EXT.2.9": 685965482, - "$ctl.layer.EXT.2.9.type": 3267864538, - "$ctl.layer.EXT.2.9.i": 890881157, - "$ctl.layer.EXT.2.9.dst": 4096381739, - "$ctl.layer.EXT.2.9.1": 1856829007, - "$ctl.layer.EXT.2.10": 3985162339, - "$ctl.layer.EXT.2.10.type": 2966681634, - "$ctl.layer.EXT.2.10.i": 2179170307, - "$ctl.layer.EXT.2.10.dst": 3420867333, - "$ctl.layer.EXT.2.10.1": 1102817397, - "$ctl.layer.EXT.2.11": 2516943670, - "$ctl.layer.EXT.2.11.type": 811894810, - "$ctl.layer.EXT.2.11.i": 2671263723, - "$ctl.layer.EXT.2.11.dst": 1431450941, - "$ctl.layer.EXT.2.11.1": 2591785949, - "$ctl.layer.EXT.2.12": 1047583820, - "$ctl.layer.EXT.2.12.type": 3826124930, - "$ctl.layer.EXT.2.12.i": 3947781347, - "$ctl.layer.EXT.2.12.dst": 1048274277, - "$ctl.layer.EXT.2.12.1": 3932392661, - "$ctl.layer.EXT.2.13": 3874322023, - "$ctl.layer.EXT.2.13.type": 59522799, - "$ctl.layer.EXT.2.13.i": 3402495558, - "$ctl.layer.EXT.2.13.dst": 2113530888, - "$ctl.layer.EXT.2.13.1": 4008037896, - "$ctl.layer.EXT.2.14": 2808899541, - "$ctl.layer.EXT.2.14.type": 4010314216, - "$ctl.layer.EXT.2.14.i": 673979993, - "$ctl.layer.EXT.2.14.dst": 1956329183, - "$ctl.layer.EXT.2.14.1": 126290495, - "$ctl.layer.EXT.2.15": 1877551763, - "$ctl.layer.EXT.2.15.type": 3369245269, - "$ctl.layer.EXT.2.15.i": 29551036, - "$ctl.layer.EXT.2.15.dst": 2915366754, - "$ctl.layer.EXT.2.15.1": 1106221458, - "$ctl.layer.EXT.2.16": 3386815769, - "$ctl.layer.EXT.2.16.type": 3430982589, - "$ctl.layer.EXT.2.16.i": 1568432308, - "$ctl.layer.EXT.2.16.dst": 2853044330, - "$ctl.layer.EXT.2.16.1": 1714907242, - "$ctl.layer.EXT.3": 4114463280, - "$ctl.layer.EXT.3.ofs": 2184843145, - "$ctl.layer.EXT.3.name": 63489676, - "$ctl.layer.EXT.3.1": 1908809046, - "$ctl.layer.EXT.3.1.type": 1667253760, - "$ctl.layer.EXT.3.1.i": 2701451449, - "$ctl.layer.EXT.3.1.dst": 932305415, - "$ctl.layer.EXT.3.1.1": 1522670204, - "$ctl.layer.EXT.3.2": 4058525389, - "$ctl.layer.EXT.3.2.type": 2505705157, - "$ctl.layer.EXT.3.2.i": 2612492588, - "$ctl.layer.EXT.3.2.dst": 1144311313, - "$ctl.layer.EXT.3.2.1": 4012179381, - "$ctl.layer.EXT.3.3": 649734904, - "$ctl.layer.EXT.3.3.type": 381297882, - "$ctl.layer.EXT.3.3.i": 2073481928, - "$ctl.layer.EXT.3.3.dst": 950784704, - "$ctl.layer.EXT.3.3.1": 3209956918, - "$ctl.layer.EXT.3.4": 3873209137, - "$ctl.layer.EXT.3.4.type": 1230332047, - "$ctl.layer.EXT.3.4.i": 2915677374, - "$ctl.layer.EXT.3.4.dst": 288298687, - "$ctl.layer.EXT.3.4.1": 4046910324, - "$ctl.layer.EXT.3.5": 3249436476, - "$ctl.layer.EXT.3.5.type": 860699780, - "$ctl.layer.EXT.3.5.i": 229139866, - "$ctl.layer.EXT.3.5.dst": 3803921029, - "$ctl.layer.EXT.3.5.1": 3513101904, - "$ctl.layer.EXT.3.6": 3217837238, - "$ctl.layer.EXT.3.6.type": 1702514233, - "$ctl.layer.EXT.3.6.i": 2765832451, - "$ctl.layer.EXT.3.6.dst": 3359526552, - "$ctl.layer.EXT.3.6.1": 2926612185, - "$ctl.layer.EXT.3.7": 4062117421, - "$ctl.layer.EXT.3.7.type": 3226712638, - "$ctl.layer.EXT.3.7.i": 4105851673, - "$ctl.layer.EXT.3.7.dst": 2761595331, - "$ctl.layer.EXT.3.7.1": 242737058, - "$ctl.layer.EXT.3.8": 3527475671, - "$ctl.layer.EXT.3.8.type": 442117480, - "$ctl.layer.EXT.3.8.i": 650458578, - "$ctl.layer.EXT.3.8.dst": 2342780358, - "$ctl.layer.EXT.3.8.1": 276988776, - "$ctl.layer.EXT.3.9": 2366851729, - "$ctl.layer.EXT.3.9.type": 2604001640, - "$ctl.layer.EXT.3.9.i": 2261550190, - "$ctl.layer.EXT.3.9.dst": 4808313, - "$ctl.layer.EXT.3.9.1": 1888038180, - "$ctl.layer.EXT.3.10": 4054753416, - "$ctl.layer.EXT.3.10.type": 1728414720, - "$ctl.layer.EXT.3.10.i": 3092250881, - "$ctl.layer.EXT.3.10.dst": 24633687, - "$ctl.layer.EXT.3.10.1": 2002946279, - "$ctl.layer.EXT.3.11": 609263093, - "$ctl.layer.EXT.3.11.type": 1485246817, - "$ctl.layer.EXT.3.11.i": 2276689512, - "$ctl.layer.EXT.3.11.dst": 3725881014, - "$ctl.layer.EXT.3.11.1": 1642790054, - "$ctl.layer.EXT.3.12": 2756358271, - "$ctl.layer.EXT.3.12.type": 4260328315, - "$ctl.layer.EXT.3.12.i": 3471517170, - "$ctl.layer.EXT.3.12.dst": 450676380, - "$ctl.layer.EXT.3.12.1": 2429068188, - "$ctl.layer.EXT.3.13": 3474762964, - "$ctl.layer.EXT.3.13.type": 383200035, - "$ctl.layer.EXT.3.13.i": 2816843338, - "$ctl.layer.EXT.3.13.dst": 1373949444, - "$ctl.layer.EXT.3.13.1": 129559572, - "$ctl.layer.EXT.3.14": 255786262, - "$ctl.layer.EXT.3.14.type": 121036932, - "$ctl.layer.EXT.3.14.i": 1988174773, - "$ctl.layer.EXT.3.14.dst": 709440355, - "$ctl.layer.EXT.3.14.1": 1932615619, - "$ctl.layer.EXT.3.15": 1947269720, - "$ctl.layer.EXT.3.15.type": 2862667420, - "$ctl.layer.EXT.3.15.i": 3143012029, - "$ctl.layer.EXT.3.15.dst": 1748186043, - "$ctl.layer.EXT.3.15.1": 608736843, - "$ctl.layer.EXT.3.16": 4060573650, - "$ctl.layer.EXT.3.16.type": 3422735206, - "$ctl.layer.EXT.3.16.i": 1387731095, - "$ctl.layer.EXT.3.16.dst": 2802854065, - "$ctl.layer.EXT.3.16.1": 1390856881, - "$ctl.layer.EXT.4": 1161893226, - "$ctl.layer.EXT.4.ofs": 2620790178, - "$ctl.layer.EXT.4.name": 1328564412, - "$ctl.layer.EXT.4.1": 1552001949, - "$ctl.layer.EXT.4.1.type": 2209583176, - "$ctl.layer.EXT.4.1.i": 3185357522, - "$ctl.layer.EXT.4.1.dst": 170040711, - "$ctl.layer.EXT.4.1.1": 1145531551, - "$ctl.layer.EXT.4.2": 2904994950, - "$ctl.layer.EXT.4.2.type": 178433970, - "$ctl.layer.EXT.4.2.i": 1588728655, - "$ctl.layer.EXT.4.2.dst": 2464776636, - "$ctl.layer.EXT.4.2.1": 3407646086, - "$ctl.layer.EXT.4.3": 3817381051, - "$ctl.layer.EXT.4.3.type": 2717239730, - "$ctl.layer.EXT.4.3.i": 1051479235, - "$ctl.layer.EXT.4.3.dst": 1062887229, - "$ctl.layer.EXT.4.3.1": 4212918309, - "$ctl.layer.EXT.4.4": 607284546, - "$ctl.layer.EXT.4.4.type": 2364993449, - "$ctl.layer.EXT.4.4.i": 4047575677, - "$ctl.layer.EXT.4.4.dst": 2255287095, - "$ctl.layer.EXT.4.4.1": 3652245799, - "$ctl.layer.EXT.4.5": 2033493367, - "$ctl.layer.EXT.4.5.type": 1924348895, - "$ctl.layer.EXT.4.5.i": 1363050449, - "$ctl.layer.EXT.4.5.dst": 2937923413, - "$ctl.layer.EXT.4.5.1": 3114546331, - "$ctl.layer.EXT.4.6": 2671672061, - "$ctl.layer.EXT.4.6.type": 2235977406, - "$ctl.layer.EXT.4.6.i": 3918743304, - "$ctl.layer.EXT.4.6.dst": 3909196629, - "$ctl.layer.EXT.4.6.1": 1878589682, - "$ctl.layer.EXT.4.7": 3626165222, - "$ctl.layer.EXT.4.7.type": 471644857, - "$ctl.layer.EXT.4.7.i": 3649619250, - "$ctl.layer.EXT.4.7.dst": 403816582, - "$ctl.layer.EXT.4.7.1": 3488826761, - "$ctl.layer.EXT.4.8": 3905868700, - "$ctl.layer.EXT.4.8.type": 4144920032, - "$ctl.layer.EXT.4.8.i": 1679680441, - "$ctl.layer.EXT.4.8.dst": 558662680, - "$ctl.layer.EXT.4.8.1": 713596259, - "$ctl.layer.EXT.4.9": 1842257058, - "$ctl.layer.EXT.4.9.type": 3890647531, - "$ctl.layer.EXT.4.9.i": 3290060333, - "$ctl.layer.EXT.4.9.dst": 2818233169, - "$ctl.layer.EXT.4.9.1": 2323995415, - "$ctl.layer.EXT.4.10": 154414699, - "$ctl.layer.EXT.4.10.type": 3678619550, - "$ctl.layer.EXT.4.10.i": 3795112479, - "$ctl.layer.EXT.4.10.dst": 2522192457, - "$ctl.layer.EXT.4.10.1": 1132394425, - "$ctl.layer.EXT.4.11": 1780037598, - "$ctl.layer.EXT.4.11.type": 1256556410, - "$ctl.layer.EXT.4.11.i": 2211922379, - "$ctl.layer.EXT.4.11.dst": 3455267997, - "$ctl.layer.EXT.4.11.1": 1541179453, - "$ctl.layer.EXT.4.12": 3133481588, - "$ctl.layer.EXT.4.12.type": 2357796610, - "$ctl.layer.EXT.4.12.i": 3721631331, - "$ctl.layer.EXT.4.12.dst": 2264320997, - "$ctl.layer.EXT.4.12.1": 31387221, - "$ctl.layer.EXT.4.13": 264559327, - "$ctl.layer.EXT.4.13.type": 1211967558, - "$ctl.layer.EXT.4.13.i": 3472669943, - "$ctl.layer.EXT.4.13.dst": 634029457, - "$ctl.layer.EXT.4.13.1": 3600968849, - "$ctl.layer.EXT.4.14": 4214303453, - "$ctl.layer.EXT.4.14.type": 2290974695, - "$ctl.layer.EXT.4.14.i": 4154922062, - "$ctl.layer.EXT.4.14.dst": 2921344192, - "$ctl.layer.EXT.4.14.1": 4060877872, - "$ctl.layer.EXT.4.15": 2262144059, - "$ctl.layer.EXT.4.15.type": 174279242, - "$ctl.layer.EXT.4.15.i": 3513883067, - "$ctl.layer.EXT.4.15.dst": 659924845, - "$ctl.layer.EXT.4.15.1": 2553039213, - "$ctl.layer.EXT.4.16": 752839073, - "$ctl.layer.EXT.4.16.type": 2218872451, - "$ctl.layer.EXT.4.16.i": 1264245162, - "$ctl.layer.EXT.4.16.dst": 19853668, - "$ctl.layer.EXT.4.16.1": 1851281268, - "$ctl.layer.EXT.5": 1502710985, - "$ctl.layer.EXT.5.ofs": 3893535808, - "$ctl.layer.EXT.5.name": 3954291364, - "$ctl.layer.EXT.5.1": 4249241919, - "$ctl.layer.EXT.5.1.type": 3419733960, - "$ctl.layer.EXT.5.1.i": 4282390992, - "$ctl.layer.EXT.5.1.dst": 523745007, - "$ctl.layer.EXT.5.1.1": 3850722717, - "$ctl.layer.EXT.5.2": 1461848036, - "$ctl.layer.EXT.5.2.type": 1843219411, - "$ctl.layer.EXT.5.2.i": 323846125, - "$ctl.layer.EXT.5.2.dst": 4053572413, - "$ctl.layer.EXT.5.2.1": 2313315828, - "$ctl.layer.EXT.5.3": 2576010937, - "$ctl.layer.EXT.5.3.type": 1105371603, - "$ctl.layer.EXT.5.3.i": 4084266033, - "$ctl.layer.EXT.5.3.dst": 1119060097, - "$ctl.layer.EXT.5.3.1": 1505114615, - "$ctl.layer.EXT.5.4": 2205175664, - "$ctl.layer.EXT.5.4.type": 871262417, - "$ctl.layer.EXT.5.4.i": 993898111, - "$ctl.layer.EXT.5.4.dst": 3649422519, - "$ctl.layer.EXT.5.4.1": 2379412021, - "$ctl.layer.EXT.5.5": 949566981, - "$ctl.layer.EXT.5.5.type": 1471722716, - "$ctl.layer.EXT.5.5.i": 2607047267, - "$ctl.layer.EXT.5.5.dst": 240422401, - "$ctl.layer.EXT.5.5.1": 1839171641, - "$ctl.layer.EXT.5.6": 1249581215, - "$ctl.layer.EXT.5.6.type": 1252972258, - "$ctl.layer.EXT.5.6.i": 728835130, - "$ctl.layer.EXT.5.6.dst": 3688432129, - "$ctl.layer.EXT.5.6.1": 299132912, - "$ctl.layer.EXT.5.7": 2363897668, - "$ctl.layer.EXT.5.7.type": 679187170, - "$ctl.layer.EXT.5.7.i": 2072704560, - "$ctl.layer.EXT.5.7.dst": 1743820059, - "$ctl.layer.EXT.5.7.1": 1909445771, - "$ctl.layer.EXT.5.8": 1187575406, - "$ctl.layer.EXT.5.8.type": 4093733280, - "$ctl.layer.EXT.5.8.i": 3279946011, - "$ctl.layer.EXT.5.8.dst": 36538672, - "$ctl.layer.EXT.5.8.1": 2311406801, - "$ctl.layer.EXT.5.9": 737443536, - "$ctl.layer.EXT.5.9.type": 1417270688, - "$ctl.layer.EXT.5.9.i": 595444367, - "$ctl.layer.EXT.5.9.dst": 3538961122, - "$ctl.layer.EXT.5.9.1": 3921885253, - "$ctl.layer.EXT.5.10": 1754841705, - "$ctl.layer.EXT.5.10.type": 413239398, - "$ctl.layer.EXT.5.10.i": 3348302743, - "$ctl.layer.EXT.5.10.dst": 506735537, - "$ctl.layer.EXT.5.10.1": 2720012209, - "$ctl.layer.EXT.5.11": 2863966524, - "$ctl.layer.EXT.5.11.type": 2603748165, - "$ctl.layer.EXT.5.11.i": 3790052812, - "$ctl.layer.EXT.5.11.dst": 2510272658, - "$ctl.layer.EXT.5.11.1": 129469474, - "$ctl.layer.EXT.5.12": 79645254, - "$ctl.layer.EXT.5.12.type": 3074934499, - "$ctl.layer.EXT.5.12.i": 2962371210, - "$ctl.layer.EXT.5.12.dst": 1546983876, - "$ctl.layer.EXT.5.12.1": 2938090196, - "$ctl.layer.EXT.5.13": 1508554861, - "$ctl.layer.EXT.5.13.type": 2052991886, - "$ctl.layer.EXT.5.13.i": 4078823599, - "$ctl.layer.EXT.5.13.dst": 2641090681, - "$ctl.layer.EXT.5.13.1": 3967893577, - "$ctl.layer.EXT.5.14": 2970466735, - "$ctl.layer.EXT.5.14.type": 3452894503, - "$ctl.layer.EXT.5.14.i": 350795534, - "$ctl.layer.EXT.5.14.dst": 1759619584, - "$ctl.layer.EXT.5.14.1": 3570078064, - "$ctl.layer.EXT.5.15": 3862495385, - "$ctl.layer.EXT.5.15.type": 755282370, - "$ctl.layer.EXT.5.15.i": 2618491811, - "$ctl.layer.EXT.5.15.dst": 4017577637, - "$ctl.layer.EXT.5.15.1": 965445141, - "$ctl.layer.EXT.5.16": 2017647379, - "$ctl.layer.EXT.5.16.type": 3318645568, - "$ctl.layer.EXT.5.16.i": 380376513, - "$ctl.layer.EXT.5.16.dst": 1625022615, - "$ctl.layer.EXT.5.16.1": 3706958887, - "$ctl.layer.EXT.6": 128948595, - "$ctl.layer.EXT.6.ofs": 2930790179, - "$ctl.layer.EXT.6.name": 3567452748, - "$ctl.layer.EXT.6.1": 3304862284, - "$ctl.layer.EXT.6.1.type": 3523497752, - "$ctl.layer.EXT.6.1.i": 3410917683, - "$ctl.layer.EXT.6.1.dst": 2310093162, - "$ctl.layer.EXT.6.1.1": 750335350, - "$ctl.layer.EXT.6.2": 2678205271, - "$ctl.layer.EXT.6.2.type": 3741462466, - "$ctl.layer.EXT.6.2.i": 3342981702, - "$ctl.layer.EXT.6.2.dst": 2434583942, - "$ctl.layer.EXT.6.2.1": 1118589967, - "$ctl.layer.EXT.6.3": 1359160290, - "$ctl.layer.EXT.6.3.type": 4261825991, - "$ctl.layer.EXT.6.3.i": 2803664322, - "$ctl.layer.EXT.6.3.dst": 1581244928, - "$ctl.layer.EXT.6.3.1": 311181756, - "$ctl.layer.EXT.6.4": 1000596379, - "$ctl.layer.EXT.6.4.type": 4146656452, - "$ctl.layer.EXT.6.4.i": 2211423268, - "$ctl.layer.EXT.6.4.dst": 324781628, - "$ctl.layer.EXT.6.4.1": 3342819438, - "$ctl.layer.EXT.6.5": 1805966374, - "$ctl.layer.EXT.6.5.type": 3695497433, - "$ctl.layer.EXT.6.5.i": 1672476928, - "$ctl.layer.EXT.6.5.dst": 3760098130, - "$ctl.layer.EXT.6.5.1": 2803870538, - "$ctl.layer.EXT.6.6": 297992620, - "$ctl.layer.EXT.6.6.type": 3910289027, - "$ctl.layer.EXT.6.6.i": 1998785897, - "$ctl.layer.EXT.6.6.dst": 2829225797, - "$ctl.layer.EXT.6.6.1": 3630877139, - "$ctl.layer.EXT.6.7": 3316144823, - "$ctl.layer.EXT.6.7.type": 597668483, - "$ctl.layer.EXT.6.7.i": 1191377811, - "$ctl.layer.EXT.6.7.dst": 2714157832, - "$ctl.layer.EXT.6.7.1": 3094183720, - "$ctl.layer.EXT.6.8": 4808013, - "$ctl.layer.EXT.6.8.type": 225048816, - "$ctl.layer.EXT.6.8.i": 4220394040, - "$ctl.layer.EXT.6.8.dst": 1735894643, - "$ctl.layer.EXT.6.8.1": 3170424418, - "$ctl.layer.EXT.6.9": 3762950907, - "$ctl.layer.EXT.6.9.type": 1338336501, - "$ctl.layer.EXT.6.9.i": 3684028276, - "$ctl.layer.EXT.6.9.dst": 3025761662, - "$ctl.layer.EXT.6.9.1": 2634097086, - "$ctl.layer.EXT.6.10": 463779890, - "$ctl.layer.EXT.6.10.type": 2658490691, - "$ctl.layer.EXT.6.10.i": 799133418, - "$ctl.layer.EXT.6.10.dst": 2028471844, - "$ctl.layer.EXT.6.10.1": 805049652, - "$ctl.layer.EXT.6.11": 4153061599, - "$ctl.layer.EXT.6.11.type": 1012078767, - "$ctl.layer.EXT.6.11.i": 730423430, - "$ctl.layer.EXT.6.11.dst": 3779095496, - "$ctl.layer.EXT.6.11.1": 705988808, - "$ctl.layer.EXT.6.12": 3528698261, - "$ctl.layer.EXT.6.12.type": 3369058104, - "$ctl.layer.EXT.6.12.i": 1336755465, - "$ctl.layer.EXT.6.12.dst": 2749174255, - "$ctl.layer.EXT.6.12.1": 1441955567, - "$ctl.layer.EXT.6.13": 2723455454, - "$ctl.layer.EXT.6.13.type": 1249563478, - "$ctl.layer.EXT.6.13.i": 461317607, - "$ctl.layer.EXT.6.13.dst": 3355979873, - "$ctl.layer.EXT.6.13.1": 1142866945, - "$ctl.layer.EXT.6.14": 1672831500, - "$ctl.layer.EXT.6.14.type": 3974795954, - "$ctl.layer.EXT.6.14.i": 3693807027, - "$ctl.layer.EXT.6.14.dst": 794617237, - "$ctl.layer.EXT.6.14.1": 2038924133, - "$ctl.layer.EXT.6.15": 2656787106, - "$ctl.layer.EXT.6.15.type": 2000727668, - "$ctl.layer.EXT.6.15.i": 1209284357, - "$ctl.layer.EXT.6.15.dst": 4055040339, - "$ctl.layer.EXT.6.15.1": 1738470227, - "$ctl.layer.EXT.6.16": 1146150952, - "$ctl.layer.EXT.6.16.type": 156160729, - "$ctl.layer.EXT.6.16.i": 3658302160, - "$ctl.layer.EXT.6.16.dst": 599553422, - "$ctl.layer.EXT.6.16.1": 2576393966, - "$ctl.layer.EXT.7": 1465462974, - "$ctl.layer.EXT.7.ofs": 2931920101, - "$ctl.layer.EXT.7.name": 3600178534, - "$ctl.layer.EXT.7.1": 1171071058, - "$ctl.layer.EXT.7.1.type": 3100620250, - "$ctl.layer.EXT.7.1.i": 3564977045, - "$ctl.layer.EXT.7.1.dst": 2288072154, - "$ctl.layer.EXT.7.1.1": 775419816, - "$ctl.layer.EXT.7.2": 3184666993, - "$ctl.layer.EXT.7.2.type": 3344587574, - "$ctl.layer.EXT.7.2.i": 1875287064, - "$ctl.layer.EXT.7.2.dst": 1746258367, - "$ctl.layer.EXT.7.2.1": 3106996825, - "$ctl.layer.EXT.7.3": 4207486332, - "$ctl.layer.EXT.7.3.type": 3821636864, - "$ctl.layer.EXT.7.3.i": 1336727580, - "$ctl.layer.EXT.7.3.dst": 2935650108, - "$ctl.layer.EXT.7.3.1": 3915879266, - "$ctl.layer.EXT.7.4": 315487757, - "$ctl.layer.EXT.7.4.type": 1781728564, - "$ctl.layer.EXT.7.4.i": 3652555194, - "$ctl.layer.EXT.7.4.dst": 1848032017, - "$ctl.layer.EXT.7.4.1": 3340783088, - "$ctl.layer.EXT.7.5": 2334464568, - "$ctl.layer.EXT.7.5.type": 3178225934, - "$ctl.layer.EXT.7.5.i": 966396702, - "$ctl.layer.EXT.7.5.dst": 761114246, - "$ctl.layer.EXT.7.5.1": 2807343444, - "$ctl.layer.EXT.7.6": 2302865330, - "$ctl.layer.EXT.7.6.type": 2944001780, - "$ctl.layer.EXT.7.6.i": 3638737919, - "$ctl.layer.EXT.7.6.dst": 3175617155, - "$ctl.layer.EXT.7.6.1": 2190052405, - "$ctl.layer.EXT.7.7": 3325515985, - "$ctl.layer.EXT.7.7.type": 1028936436, - "$ctl.layer.EXT.7.7.i": 3368635893, - "$ctl.layer.EXT.7.7.dst": 3838579141, - "$ctl.layer.EXT.7.7.1": 3800284406, - "$ctl.layer.EXT.7.8": 4264189659, - "$ctl.layer.EXT.7.8.type": 195486930, - "$ctl.layer.EXT.7.8.i": 1388206182, - "$ctl.layer.EXT.7.8.dst": 2191836739, - "$ctl.layer.EXT.7.8.1": 1014573244, - "$ctl.layer.EXT.7.9": 1451173229, - "$ctl.layer.EXT.7.9.type": 1360220381, - "$ctl.layer.EXT.7.9.i": 2998264170, - "$ctl.layer.EXT.7.9.dst": 1602812151, - "$ctl.layer.EXT.7.9.1": 2624638880, - "$ctl.layer.EXT.7.10": 455386580, - "$ctl.layer.EXT.7.10.type": 587635141, - "$ctl.layer.EXT.7.10.i": 4096986956, - "$ctl.layer.EXT.7.10.dst": 1083459346, - "$ctl.layer.EXT.7.10.1": 3144340898, - "$ctl.layer.EXT.7.11": 1483326209, - "$ctl.layer.EXT.7.11.type": 2273664450, - "$ctl.layer.EXT.7.11.i": 4140816291, - "$ctl.layer.EXT.7.11.dst": 2851605157, - "$ctl.layer.EXT.7.11.1": 4074942997, - "$ctl.layer.EXT.7.12": 3493112587, - "$ctl.layer.EXT.7.12.type": 1607261062, - "$ctl.layer.EXT.7.12.i": 1724411319, - "$ctl.layer.EXT.7.12.dst": 3166669009, - "$ctl.layer.EXT.7.12.1": 1860918225, - "$ctl.layer.EXT.7.13": 4169748360, - "$ctl.layer.EXT.7.13.type": 2229900226, - "$ctl.layer.EXT.7.13.i": 1273882019, - "$ctl.layer.EXT.7.13.dst": 31191205, - "$ctl.layer.EXT.7.13.1": 1840251925, - "$ctl.layer.EXT.7.14": 3855654810, - "$ctl.layer.EXT.7.14.type": 1399450389, - "$ctl.layer.EXT.7.14.i": 2352102652, - "$ctl.layer.EXT.7.14.dst": 3629619234, - "$ctl.layer.EXT.7.14.1": 1736420178, - "$ctl.layer.EXT.7.15": 2642746596, - "$ctl.layer.EXT.7.15.type": 767788797, - "$ctl.layer.EXT.7.15.i": 1048134004, - "$ctl.layer.EXT.7.15.dst": 3947967402, - "$ctl.layer.EXT.7.15.1": 2703656874, - "$ctl.layer.EXT.7.16": 461042302, - "$ctl.layer.EXT.7.16.type": 1174486805, - "$ctl.layer.EXT.7.16.i": 3604199676, - "$ctl.layer.EXT.7.16.dst": 586390562, - "$ctl.layer.EXT.7.16.1": 3638439762, - "$ctl.layer.EXT.8": 1775889119, - "$ctl.layer.EXT.8.ofs": 3494183573, - "$ctl.layer.EXT.8.name": 3664554086, - "$ctl.layer.EXT.8.1": 267943746, - "$ctl.layer.EXT.8.1.type": 2961562186, - "$ctl.layer.EXT.8.1.i": 4009354213, - "$ctl.layer.EXT.8.1.dst": 1796144906, - "$ctl.layer.EXT.8.1.1": 2822547384, - "$ctl.layer.EXT.8.2": 1062659521, - "$ctl.layer.EXT.8.2.type": 3750778422, - "$ctl.layer.EXT.8.2.i": 1310401032, - "$ctl.layer.EXT.8.2.dst": 2706105010, - "$ctl.layer.EXT.8.2.1": 2712509353, - "$ctl.layer.EXT.8.3": 2302974060, - "$ctl.layer.EXT.8.3.type": 3494112256, - "$ctl.layer.EXT.8.3.i": 774378988, - "$ctl.layer.EXT.8.3.dst": 1876452796, - "$ctl.layer.EXT.8.3.1": 1902828562, - "$ctl.layer.EXT.8.4": 1218615709, - "$ctl.layer.EXT.8.4.type": 1328365236, - "$ctl.layer.EXT.8.4.i": 4220062762, - "$ctl.layer.EXT.8.4.dst": 2332883553, - "$ctl.layer.EXT.8.4.1": 1394331616, - "$ctl.layer.EXT.8.5": 1934652456, - "$ctl.layer.EXT.8.5.type": 3659123337, - "$ctl.layer.EXT.8.5.i": 1536590990, - "$ctl.layer.EXT.8.5.dst": 1535596614, - "$ctl.layer.EXT.8.5.1": 853108292, - "$ctl.layer.EXT.8.6": 222711458, - "$ctl.layer.EXT.8.6.type": 3313471076, - "$ctl.layer.EXT.8.6.i": 1127711311, - "$ctl.layer.EXT.8.6.dst": 4223294531, - "$ctl.layer.EXT.8.6.1": 4237177349, - "$ctl.layer.EXT.8.7": 1421088033, - "$ctl.layer.EXT.8.7.type": 648956527, - "$ctl.layer.EXT.8.7.i": 2470756421, - "$ctl.layer.EXT.8.7.dst": 1982434536, - "$ctl.layer.EXT.8.7.1": 1552364134, - "$ctl.layer.EXT.8.8": 2214445131, - "$ctl.layer.EXT.8.8.type": 4198267858, - "$ctl.layer.EXT.8.8.i": 2293872374, - "$ctl.layer.EXT.8.8.dst": 2331918419, - "$ctl.layer.EXT.8.8.1": 3254544012, - "$ctl.layer.EXT.8.9": 1051445501, - "$ctl.layer.EXT.8.9.type": 1504262109, - "$ctl.layer.EXT.8.9.i": 3904015482, - "$ctl.layer.EXT.8.9.dst": 3074902810, - "$ctl.layer.EXT.8.9.1": 569732656, - "$ctl.layer.EXT.8.10": 2739927108, - "$ctl.layer.EXT.8.10.type": 97561443, - "$ctl.layer.EXT.8.10.i": 3437821450, - "$ctl.layer.EXT.8.10.dst": 2162055236, - "$ctl.layer.EXT.8.10.1": 3972590676, - "$ctl.layer.EXT.8.11": 3262008081, - "$ctl.layer.EXT.8.11.type": 1390353287, - "$ctl.layer.EXT.8.11.i": 2350222830, - "$ctl.layer.EXT.8.11.dst": 3631332960, - "$ctl.layer.EXT.8.11.1": 1736989648, - "$ctl.layer.EXT.8.12": 4060615739, - "$ctl.layer.EXT.8.12.type": 2366032385, - "$ctl.layer.EXT.8.12.i": 3723394824, - "$ctl.layer.EXT.8.12.dst": 2325313366, - "$ctl.layer.EXT.8.12.1": 28394822, - "$ctl.layer.EXT.8.13": 481685176, - "$ctl.layer.EXT.8.13.type": 1151322800, - "$ctl.layer.EXT.8.13.i": 3585620625, - "$ctl.layer.EXT.8.13.dst": 521280967, - "$ctl.layer.EXT.8.13.1": 3657060087, - "$ctl.layer.EXT.8.14": 1901326218, - "$ctl.layer.EXT.8.14.type": 640678629, - "$ctl.layer.EXT.8.14.i": 1426876652, - "$ctl.layer.EXT.8.14.dst": 196955698, - "$ctl.layer.EXT.8.14.1": 2492562114, - "$ctl.layer.EXT.8.15": 637641332, - "$ctl.layer.EXT.8.15.type": 1609138372, - "$ctl.layer.EXT.8.15.i": 1723020149, - "$ctl.layer.EXT.8.15.dst": 3168215971, - "$ctl.layer.EXT.8.15.1": 1862309123, - "$ctl.layer.EXT.8.16": 1073183950, - "$ctl.layer.EXT.8.16.type": 563817598, - "$ctl.layer.EXT.8.16.i": 2824436735, - "$ctl.layer.EXT.8.16.dst": 1596840233, - "$ctl.layer.EXT.8.16.1": 289695641, - "$ctl.layer.VRT": 1814152609, - "$ctl.layer.VRT.sel": 1441683997, - "$ctl.layer.VRT.spidx": 3137597096, - "$ctl.layer.VRT.1": 2289231767, - "$ctl.layer.VRT.1.ofs": 2907796916, - "$ctl.layer.VRT.1.name": 1930715036, - "$ctl.layer.VRT.1.1": 4165339715, - "$ctl.layer.VRT.1.1.type": 2775953816, - "$ctl.layer.VRT.1.1.i": 2427275172, - "$ctl.layer.VRT.1.1.dst": 1617345898, - "$ctl.layer.VRT.1.1.1": 255855457, - "$ctl.layer.VRT.1.2": 2644728192, - "$ctl.layer.VRT.1.2.type": 57970814, - "$ctl.layer.VRT.1.2.i": 4128771729, - "$ctl.layer.VRT.1.2.dst": 1513740650, - "$ctl.layer.VRT.1.2.1": 2058037376, - "$ctl.layer.VRT.1.3": 1795251445, - "$ctl.layer.VRT.1.3.type": 3730792062, - "$ctl.layer.VRT.1.3.i": 370889421, - "$ctl.layer.VRT.1.3.dst": 3381594585, - "$ctl.layer.VRT.1.3.1": 1252923195, - "$ctl.layer.VRT.1.4": 542444852, - "$ctl.layer.VRT.1.4.type": 3965479871, - "$ctl.layer.VRT.1.4.i": 1501982899, - "$ctl.layer.VRT.1.4.dst": 1173124519, - "$ctl.layer.VRT.1.4.1": 1981363273, - "$ctl.layer.VRT.1.5": 3495104617, - "$ctl.layer.VRT.1.5.type": 4172427145, - "$ctl.layer.VRT.1.5.i": 4186513295, - "$ctl.layer.VRT.1.5.dst": 2435844070, - "$ctl.layer.VRT.1.5.1": 2519062853, - "$ctl.layer.VRT.1.6": 2856925923, - "$ctl.layer.VRT.1.6.type": 97741258, - "$ctl.layer.VRT.1.6.i": 1693730638, - "$ctl.layer.VRT.1.6.dst": 1933943785, - "$ctl.layer.VRT.1.6.1": 3817928452, - "$ctl.layer.VRT.1.7": 2007444000, - "$ctl.layer.VRT.1.7.type": 4105612751, - "$ctl.layer.VRT.1.7.i": 1963013444, - "$ctl.layer.VRT.1.7.dst": 2055285448, - "$ctl.layer.VRT.1.7.1": 2207532391, - "$ctl.layer.VRT.1.8": 1559962474, - "$ctl.layer.VRT.1.8.type": 1057832768, - "$ctl.layer.VRT.1.8.i": 3765195415, - "$ctl.layer.VRT.1.8.dst": 2064053814, - "$ctl.layer.VRT.1.8.1": 520028717, - "$ctl.layer.VRT.1.9": 3707297236, - "$ctl.layer.VRT.1.9.type": 429949765, - "$ctl.layer.VRT.1.9.i": 2154799459, - "$ctl.layer.VRT.1.9.dst": 3929980165, - "$ctl.layer.VRT.1.9.1": 3204602681, - "$ctl.layer.VRT.1.10": 1079215261, - "$ctl.layer.VRT.1.10.type": 746877168, - "$ctl.layer.VRT.1.10.i": 4252379217, - "$ctl.layer.VRT.1.10.dst": 1242680839, - "$ctl.layer.VRT.1.10.1": 3325926455, - "$ctl.layer.VRT.1.11": 3853576176, - "$ctl.layer.VRT.1.11.type": 2919464852, - "$ctl.layer.VRT.1.11.i": 489755813, - "$ctl.layer.VRT.1.11.dst": 3549834355, - "$ctl.layer.VRT.1.11.1": 476976243, - "$ctl.layer.VRT.1.12": 2332350266, - "$ctl.layer.VRT.1.12.type": 2024417684, - "$ctl.layer.VRT.1.12.i": 2984935077, - "$ctl.layer.VRT.1.12.dst": 4254914163, - "$ctl.layer.VRT.1.12.1": 2445765235, - "$ctl.layer.VRT.1.13": 990042905, - "$ctl.layer.VRT.1.13.type": 3237725416, - "$ctl.layer.VRT.1.13.i": 297488217, - "$ctl.layer.VRT.1.13.dst": 3155060703, - "$ctl.layer.VRT.1.13.1": 837015871, - "$ctl.layer.VRT.1.14": 1482066603, - "$ctl.layer.VRT.1.14.type": 2148493719, - "$ctl.layer.VRT.1.14.i": 2934766622, - "$ctl.layer.VRT.1.14.dst": 94160496, - "$ctl.layer.VRT.1.14.1": 2326933056, - "$ctl.layer.VRT.1.15": 3182726637, - "$ctl.layer.VRT.1.15.type": 221642327, - "$ctl.layer.VRT.1.15.i": 3324410718, - "$ctl.layer.VRT.1.15.dst": 1872976688, - "$ctl.layer.VRT.1.15.1": 4253773568, - "$ctl.layer.VRT.1.16": 397064295, - "$ctl.layer.VRT.1.16.type": 2015872363, - "$ctl.layer.VRT.1.16.i": 2804777602, - "$ctl.layer.VRT.1.16.dst": 4204425868, - "$ctl.layer.VRT.1.16.1": 2121418284, - "$ctl.layer.VRT.2": 802729688, - "$ctl.layer.VRT.2.ofs": 2596879957, - "$ctl.layer.VRT.2.name": 1969539894, - "$ctl.layer.VRT.2.1": 2323448706, - "$ctl.layer.VRT.2.1.type": 3634247322, - "$ctl.layer.VRT.2.1.i": 1953867813, - "$ctl.layer.VRT.2.1.dst": 855067418, - "$ctl.layer.VRT.2.1.1": 1924853368, - "$ctl.layer.VRT.2.2": 165108225, - "$ctl.layer.VRT.2.2.type": 631799558, - "$ctl.layer.VRT.2.2.i": 2291592008, - "$ctl.layer.VRT.2.2.dst": 3571673026, - "$ctl.layer.VRT.2.2.1": 388752617, - "$ctl.layer.VRT.2.3": 1321311404, - "$ctl.layer.VRT.2.3.type": 3518733584, - "$ctl.layer.VRT.2.3.i": 2829536428, - "$ctl.layer.VRT.2.3.dst": 527441100, - "$ctl.layer.VRT.2.3.1": 3874263762, - "$ctl.layer.VRT.2.4": 237343453, - "$ctl.layer.VRT.2.4.type": 514133860, - "$ctl.layer.VRT.2.4.i": 3322450666, - "$ctl.layer.VRT.2.4.dst": 1874122865, - "$ctl.layer.VRT.2.4.1": 3634223392, - "$ctl.layer.VRT.2.5": 3989810536, - "$ctl.layer.VRT.2.5.type": 2646700921, - "$ctl.layer.VRT.2.5.i": 3860430926, - "$ctl.layer.VRT.2.5.dst": 2653931830, - "$ctl.layer.VRT.2.5.1": 4166310532, - "$ctl.layer.VRT.2.6": 2546324194, - "$ctl.layer.VRT.2.6.type": 1787288511, - "$ctl.layer.VRT.2.6.i": 2025506447, - "$ctl.layer.VRT.2.6.dst": 2753713459, - "$ctl.layer.VRT.2.6.1": 3339319493, - "$ctl.layer.VRT.2.7": 3660548449, - "$ctl.layer.VRT.2.7.type": 3037077439, - "$ctl.layer.VRT.2.7.i": 146896005, - "$ctl.layer.VRT.2.7.dst": 1446111704, - "$ctl.layer.VRT.2.7.1": 3875958310, - "$ctl.layer.VRT.2.8": 4185902091, - "$ctl.layer.VRT.2.8.type": 1169482210, - "$ctl.layer.VRT.2.8.i": 1312189238, - "$ctl.layer.VRT.2.8.dst": 978765379, - "$ctl.layer.VRT.2.8.1": 1014734156, - "$ctl.layer.VRT.2.9": 2032779837, - "$ctl.layer.VRT.2.9.type": 2090935789, - "$ctl.layer.VRT.2.9.i": 1848838202, - "$ctl.layer.VRT.2.9.dst": 1161754711, - "$ctl.layer.VRT.2.9.1": 1551413872, - "$ctl.layer.VRT.2.10": 3721363204, - "$ctl.layer.VRT.2.10.type": 2555969427, - "$ctl.layer.VRT.2.10.i": 3911272986, - "$ctl.layer.VRT.2.10.dst": 2472977012, - "$ctl.layer.VRT.2.10.1": 177291172, - "$ctl.layer.VRT.2.11": 4159291857, - "$ctl.layer.VRT.2.11.type": 2782356599, - "$ctl.layer.VRT.2.11.i": 3569209342, - "$ctl.layer.VRT.2.11.dst": 2328495952, - "$ctl.layer.VRT.2.11.1": 350270496, - "$ctl.layer.VRT.2.12": 2005538939, - "$ctl.layer.VRT.2.12.type": 3665745654, - "$ctl.layer.VRT.2.12.i": 3786824967, - "$ctl.layer.VRT.2.12.dst": 2551282177, - "$ctl.layer.VRT.2.12.1": 1139369633, - "$ctl.layer.VRT.2.13": 2805215992, - "$ctl.layer.VRT.2.13.type": 171424907, - "$ctl.layer.VRT.2.13.i": 3506441378, - "$ctl.layer.VRT.2.13.dst": 667576748, - "$ctl.layer.VRT.2.13.1": 2561833036, - "$ctl.layer.VRT.2.14": 1004021962, - "$ctl.layer.VRT.2.14.type": 1217947178, - "$ctl.layer.VRT.2.14.i": 2177151771, - "$ctl.layer.VRT.2.14.dst": 3406152525, - "$ctl.layer.VRT.2.14.1": 1574555981, - "$ctl.layer.VRT.2.15": 1535273908, - "$ctl.layer.VRT.2.15.type": 1123111359, - "$ctl.layer.VRT.2.15.i": 1007343542, - "$ctl.layer.VRT.2.15.dst": 3900634328, - "$ctl.layer.VRT.2.15.1": 933776760, - "$ctl.layer.VRT.2.16": 91746574, - "$ctl.layer.VRT.2.16.type": 2649973827, - "$ctl.layer.VRT.2.16.i": 3439448042, - "$ctl.layer.VRT.2.16.dst": 2206598948, - "$ctl.layer.VRT.2.16.1": 144487476, - "$ctl.layer.VRT.3": 757394957, - "$ctl.layer.VRT.3.ofs": 4071103670, - "$ctl.layer.VRT.3.name": 1705699782, - "$ctl.layer.VRT.3.1": 844883009, - "$ctl.layer.VRT.3.1.type": 625756970, - "$ctl.layer.VRT.3.1.i": 3433744806, - "$ctl.layer.VRT.3.1.dst": 3769457898, - "$ctl.layer.VRT.3.1.1": 3409972579, - "$ctl.layer.VRT.3.2": 1649900482, - "$ctl.layer.VRT.3.2.type": 4055758308, - "$ctl.layer.VRT.3.2.i": 806882387, - "$ctl.layer.VRT.3.2.dst": 1189005566, - "$ctl.layer.VRT.3.2.1": 3199010482, - "$ctl.layer.VRT.3.3": 2790620663, - "$ctl.layer.VRT.3.3.type": 120505327, - "$ctl.layer.VRT.3.3.i": 1346055167, - "$ctl.layer.VRT.3.3.dst": 1401560016, - "$ctl.layer.VRT.3.3.1": 2395697417, - "$ctl.layer.VRT.3.4": 1716892678, - "$ctl.layer.VRT.3.4.type": 3551365454, - "$ctl.layer.VRT.3.4.i": 505967025, - "$ctl.layer.VRT.3.4.dst": 2094499748, - "$ctl.layer.VRT.3.4.1": 817412731, - "$ctl.layer.VRT.3.5": 2522058299, - "$ctl.layer.VRT.3.5.type": 3907583305, - "$ctl.layer.VRT.3.5.i": 1045012125, - "$ctl.layer.VRT.3.5.dst": 2841440962, - "$ctl.layer.VRT.3.5.1": 1356462919, - "$ctl.layer.VRT.3.6": 4030051233, - "$ctl.layer.VRT.3.6.type": 3045774328, - "$ctl.layer.VRT.3.6.i": 540469276, - "$ctl.layer.VRT.3.6.dst": 402800335, - "$ctl.layer.VRT.3.6.1": 518985670, - "$ctl.layer.VRT.3.7": 833661730, - "$ctl.layer.VRT.3.7.type": 3388500099, - "$ctl.layer.VRT.3.7.i": 2958382598, - "$ctl.layer.VRT.3.7.dst": 1271023880, - "$ctl.layer.VRT.3.7.1": 1055542437, - "$ctl.layer.VRT.3.8": 2712578776, - "$ctl.layer.VRT.3.8.type": 1517671602, - "$ctl.layer.VRT.3.8.i": 2791984341, - "$ctl.layer.VRT.3.8.dst": 1153799477, - "$ctl.layer.VRT.3.8.1": 3841948831, - "$ctl.layer.VRT.3.9": 565109606, - "$ctl.layer.VRT.3.9.type": 3906017469, - "$ctl.layer.VRT.3.9.i": 3328386913, - "$ctl.layer.VRT.3.9.dst": 1365576006, - "$ctl.layer.VRT.3.9.1": 83416107, - "$ctl.layer.VRT.3.10": 2253610399, - "$ctl.layer.VRT.3.10.type": 2695706229, - "$ctl.layer.VRT.3.10.i": 3656315612, - "$ctl.layer.VRT.3.10.dst": 2241520514, - "$ctl.layer.VRT.3.10.1": 432289458, - "$ctl.layer.VRT.3.11": 2681135346, - "$ctl.layer.VRT.3.11.type": 890977192, - "$ctl.layer.VRT.3.11.i": 4233939097, - "$ctl.layer.VRT.3.11.dst": 1345165471, - "$ctl.layer.VRT.3.11.1": 3176594175, - "$ctl.layer.VRT.3.12": 3483695464, - "$ctl.layer.VRT.3.12.type": 1712559124, - "$ctl.layer.VRT.3.12.i": 1996743717, - "$ctl.layer.VRT.3.12.dst": 3230003443, - "$ctl.layer.VRT.3.12.1": 2091778035, - "$ctl.layer.VRT.3.13": 4289024939, - "$ctl.layer.VRT.3.13.type": 4180869293, - "$ctl.layer.VRT.3.13.i": 3896673156, - "$ctl.layer.VRT.3.13.dst": 1011176346, - "$ctl.layer.VRT.3.13.1": 2170372090, - "$ctl.layer.VRT.3.14": 2476935705, - "$ctl.layer.VRT.3.14.type": 1940260901, - "$ctl.layer.VRT.3.14.i": 1154714540, - "$ctl.layer.VRT.3.14.dst": 4004752242, - "$ctl.layer.VRT.3.14.1": 1791727618, - "$ctl.layer.VRT.3.15": 60722479, - "$ctl.layer.VRT.3.15.type": 3094145240, - "$ctl.layer.VRT.3.15.i": 3383582889, - "$ctl.layer.VRT.3.15.dst": 1926927759, - "$ctl.layer.VRT.3.15.1": 704980111, - "$ctl.layer.VRT.3.16": 1571295957, - "$ctl.layer.VRT.3.16.type": 1104601434, - "$ctl.layer.VRT.3.16.i": 983602859, - "$ctl.layer.VRT.3.16.dst": 3840491133, - "$ctl.layer.VRT.3.16.1": 957517085, - "$ctl.layer.VRT.4": 1443517260, - "$ctl.layer.VRT.4.ofs": 1348520999, - "$ctl.layer.VRT.4.name": 3481625107, - "$ctl.layer.VRT.4.1": 1666473872, - "$ctl.layer.VRT.4.1.type": 2961083215, - "$ctl.layer.VRT.4.1.i": 967965399, - "$ctl.layer.VRT.4.1.dst": 3501171445, - "$ctl.layer.VRT.4.1.1": 2063021802, - "$ctl.layer.VRT.4.2": 3780045043, - "$ctl.layer.VRT.4.2.type": 1068202713, - "$ctl.layer.VRT.4.2.i": 627006618, - "$ctl.layer.VRT.4.2.dst": 532307707, - "$ctl.layer.VRT.4.2.1": 3606332171, - "$ctl.layer.VRT.4.3": 2673731134, - "$ctl.layer.VRT.4.3.type": 1802556612, - "$ctl.layer.VRT.4.3.i": 1166285006, - "$ctl.layer.VRT.4.3.dst": 1733654707, - "$ctl.layer.VRT.4.3.1": 113529520, - "$ctl.layer.VRT.4.4": 3713873247, - "$ctl.layer.VRT.4.4.type": 1586232955, - "$ctl.layer.VRT.4.4.i": 628150904, - "$ctl.layer.VRT.4.4.dst": 2987537761, - "$ctl.layer.VRT.4.4.1": 3540061858, - "$ctl.layer.VRT.4.5": 809610, - "$ctl.layer.VRT.4.5.type": 1159619174, - "$ctl.layer.VRT.4.5.i": 3314633260, - "$ctl.layer.VRT.4.5.dst": 3886681367, - "$ctl.layer.VRT.4.5.1": 4073810070, - "$ctl.layer.VRT.4.6": 367931440, - "$ctl.layer.VRT.4.6.type": 943253077, - "$ctl.layer.VRT.4.6.i": 893254733, - "$ctl.layer.VRT.4.6.dst": 59042060, - "$ctl.layer.VRT.4.6.1": 648432823, - "$ctl.layer.VRT.4.7": 3556252051, - "$ctl.layer.VRT.4.7.type": 881707600, - "$ctl.layer.VRT.4.7.i": 3848146551, - "$ctl.layer.VRT.4.7.dst": 2870302237, - "$ctl.layer.VRT.4.7.1": 3332570228, - "$ctl.layer.VRT.4.8": 4059504201, - "$ctl.layer.VRT.4.8.type": 59196567, - "$ctl.layer.VRT.4.8.i": 2641565668, - "$ctl.layer.VRT.4.8.dst": 375067114, - "$ctl.layer.VRT.4.8.1": 2931320878, - "$ctl.layer.VRT.4.9": 883320319, - "$ctl.layer.VRT.4.9.type": 1231804562, - "$ctl.layer.VRT.4.9.i": 1030398504, - "$ctl.layer.VRT.4.9.dst": 2774005763, - "$ctl.layer.VRT.4.9.1": 1320161426, - "$ctl.layer.VRT.4.10": 3490440854, - "$ctl.layer.VRT.4.10.type": 1532498704, - "$ctl.layer.VRT.4.10.i": 1820615921, - "$ctl.layer.VRT.4.10.dst": 3091558439, - "$ctl.layer.VRT.4.10.1": 1931051863, - "$ctl.layer.VRT.4.11": 3049685955, - "$ctl.layer.VRT.4.11.type": 3452211208, - "$ctl.layer.VRT.4.11.i": 4241675641, - "$ctl.layer.VRT.4.11.dst": 2998330111, - "$ctl.layer.VRT.4.11.1": 1019940703, - "$ctl.layer.VRT.4.12": 871197369, - "$ctl.layer.VRT.4.12.type": 673043348, - "$ctl.layer.VRT.4.12.i": 4011430053, - "$ctl.layer.VRT.4.12.dst": 1169174643, - "$ctl.layer.VRT.4.12.1": 3063519347, - "$ctl.layer.VRT.4.13": 110923802, - "$ctl.layer.VRT.4.13.type": 3164110573, - "$ctl.layer.VRT.4.13.i": 3281832260, - "$ctl.layer.VRT.4.13.dst": 2049647066, - "$ctl.layer.VRT.4.13.1": 637648698, - "$ctl.layer.VRT.4.14": 2942033672, - "$ctl.layer.VRT.4.14.type": 454599456, - "$ctl.layer.VRT.4.14.i": 333508769, - "$ctl.layer.VRT.4.14.dst": 1621512311, - "$ctl.layer.VRT.4.14.1": 2949706503, - "$ctl.layer.VRT.4.15": 1386601574, - "$ctl.layer.VRT.4.15.type": 1970440664, - "$ctl.layer.VRT.4.15.i": 1177030569, - "$ctl.layer.VRT.4.15.dst": 4066368655, - "$ctl.layer.VRT.4.15.1": 1769452943, - "$ctl.layer.VRT.4.16": 3903828460, - "$ctl.layer.VRT.4.16.type": 4255692517, - "$ctl.layer.VRT.4.16.i": 3465477356, - "$ctl.layer.VRT.4.16.dst": 456874546, - "$ctl.layer.VRT.4.16.1": 2433713858, - "$ctl.layer.VRT.5": 1314931361, - "$ctl.layer.VRT.5.ofs": 127119742, - "$ctl.layer.VRT.5.name": 2372933988, - "$ctl.layer.VRT.5.1": 421482121, - "$ctl.layer.VRT.5.1.type": 2038904376, - "$ctl.layer.VRT.5.1.i": 4022275054, - "$ctl.layer.VRT.5.1.dst": 1156066898, - "$ctl.layer.VRT.5.1.1": 2977714731, - "$ctl.layer.VRT.5.2": 379784666, - "$ctl.layer.VRT.5.2.type": 3246320264, - "$ctl.layer.VRT.5.2.i": 4009654235, - "$ctl.layer.VRT.5.2.dst": 1269013162, - "$ctl.layer.VRT.5.2.1": 2691396042, - "$ctl.layer.VRT.5.3": 1779679503, - "$ctl.layer.VRT.5.3.type": 4024280094, - "$ctl.layer.VRT.5.3.i": 250603959, - "$ctl.layer.VRT.5.3.dst": 4180477380, - "$ctl.layer.VRT.5.3.1": 3501010417, - "$ctl.layer.VRT.5.4": 2811709006, - "$ctl.layer.VRT.5.4.type": 2615316278, - "$ctl.layer.VRT.5.4.i": 1517205321, - "$ctl.layer.VRT.5.4.dst": 2090519271, - "$ctl.layer.VRT.5.4.1": 467402163, - "$ctl.layer.VRT.5.5": 1248348579, - "$ctl.layer.VRT.5.5.type": 3016229681, - "$ctl.layer.VRT.5.5.i": 2053331781, - "$ctl.layer.VRT.5.5.dst": 1697783966, - "$ctl.layer.VRT.5.5.1": 1008766351, - "$ctl.layer.VRT.5.6": 3430031145, - "$ctl.layer.VRT.5.6.type": 125916754, - "$ctl.layer.VRT.5.6.i": 1814178692, - "$ctl.layer.VRT.5.6.dst": 27749505, - "$ctl.layer.VRT.5.6.1": 3721092558, - "$ctl.layer.VRT.5.7": 493174394, - "$ctl.layer.VRT.5.7.type": 2476796503, - "$ctl.layer.VRT.5.7.i": 2618550670, - "$ctl.layer.VRT.5.7.dst": 1563388096, - "$ctl.layer.VRT.5.7.1": 4258324797, - "$ctl.layer.VRT.5.8": 3136941904, - "$ctl.layer.VRT.5.8.type": 2592014304, - "$ctl.layer.VRT.5.8.i": 3883861677, - "$ctl.layer.VRT.5.8.dst": 3774395597, - "$ctl.layer.VRT.5.8.1": 4181473559, - "$ctl.layer.VRT.5.9": 4258100974, - "$ctl.layer.VRT.5.9.type": 2550547429, - "$ctl.layer.VRT.5.9.i": 126270777, - "$ctl.layer.VRT.5.9.dst": 3851432773, - "$ctl.layer.VRT.5.9.1": 423903075, - "$ctl.layer.VRT.5.10": 2590493527, - "$ctl.layer.VRT.5.10.type": 1836987197, - "$ctl.layer.VRT.5.10.i": 1547559220, - "$ctl.layer.VRT.5.10.dst": 2961954282, - "$ctl.layer.VRT.5.10.1": 4183900906, - "$ctl.layer.VRT.5.11": 3953893002, - "$ctl.layer.VRT.5.11.type": 4243461061, - "$ctl.layer.VRT.5.11.i": 2213126476, - "$ctl.layer.VRT.5.11.dst": 971030802, - "$ctl.layer.VRT.5.11.1": 3855229858, - "$ctl.layer.VRT.5.12": 3908057952, - "$ctl.layer.VRT.5.12.type": 1765043523, - "$ctl.layer.VRT.5.12.i": 407026410, - "$ctl.layer.VRT.5.12.dst": 3427211812, - "$ctl.layer.VRT.5.12.1": 1364928820, - "$ctl.layer.VRT.5.13": 1002684243, - "$ctl.layer.VRT.5.13.type": 503448336, - "$ctl.layer.VRT.5.13.i": 1291031793, - "$ctl.layer.VRT.5.13.dst": 60055591, - "$ctl.layer.VRT.5.13.1": 2294297431, - "$ctl.layer.VRT.5.14": 2055521297, - "$ctl.layer.VRT.5.14.type": 510734295, - "$ctl.layer.VRT.5.14.i": 2947069406, - "$ctl.layer.VRT.5.14.dst": 4175332016, - "$ctl.layer.VRT.5.14.1": 2952163200, - "$ctl.layer.VRT.5.15": 481818407, - "$ctl.layer.VRT.5.15.type": 2285370928, - "$ctl.layer.VRT.5.15.i": 1099057937, - "$ctl.layer.VRT.5.15.dst": 2336598855, - "$ctl.layer.VRT.5.15.1": 506476919, - "$ctl.layer.VRT.5.16": 2663500973, - "$ctl.layer.VRT.5.16.type": 1183954882, - "$ctl.layer.VRT.5.16.i": 2137354659, - "$ctl.layer.VRT.5.16.dst": 3424937125, - "$ctl.layer.VRT.5.16.1": 1615706133, - "$ctl.layer.VRT.6": 2357114935, - "$ctl.layer.VRT.6.ofs": 1668642865, - "$ctl.layer.VRT.6.name": 4020624292, - "$ctl.layer.VRT.6.1": 1350698974, - "$ctl.layer.VRT.6.1.type": 319238856, - "$ctl.layer.VRT.6.1.i": 1070155041, - "$ctl.layer.VRT.6.1.dst": 3780398959, - "$ctl.layer.VRT.6.1.1": 3112437988, - "$ctl.layer.VRT.6.2": 1395087109, - "$ctl.layer.VRT.6.2.type": 2230494845, - "$ctl.layer.VRT.6.2.i": 981209364, - "$ctl.layer.VRT.6.2.dst": 3646053081, - "$ctl.layer.VRT.6.2.1": 3454479117, - "$ctl.layer.VRT.6.3": 92101232, - "$ctl.layer.VRT.6.3.type": 1609403506, - "$ctl.layer.VRT.6.3.i": 1515671616, - "$ctl.layer.VRT.6.3.dst": 1680260613, - "$ctl.layer.VRT.6.3.1": 2651985086, - "$ctl.layer.VRT.6.4": 3357085625, - "$ctl.layer.VRT.6.4.type": 1844364391, - "$ctl.layer.VRT.6.4.i": 252341814, - "$ctl.layer.VRT.6.4.dst": 3304749674, - "$ctl.layer.VRT.6.4.1": 309671628, - "$ctl.layer.VRT.6.5": 544150244, - "$ctl.layer.VRT.6.5.type": 2052335740, - "$ctl.layer.VRT.6.5.i": 2934252034, - "$ctl.layer.VRT.6.5.dst": 439877453, - "$ctl.layer.VRT.6.5.1": 849991384, - "$ctl.layer.VRT.6.6": 1586313342, - "$ctl.layer.VRT.6.6.type": 1936014054, - "$ctl.layer.VRT.6.6.i": 3281536203, - "$ctl.layer.VRT.6.6.dst": 3971189581, - "$ctl.layer.VRT.6.6.1": 2369057921, - "$ctl.layer.VRT.6.7": 283322277, - "$ctl.layer.VRT.6.7.type": 1595199206, - "$ctl.layer.VRT.6.7.i": 3548197569, - "$ctl.layer.VRT.6.7.dst": 4186932507, - "$ctl.layer.VRT.6.7.1": 758663162, - "$ctl.layer.VRT.6.8": 3011454447, - "$ctl.layer.VRT.6.8.type": 3231375776, - "$ctl.layer.VRT.6.8.i": 2282246122, - "$ctl.layer.VRT.6.8.dst": 4226728222, - "$ctl.layer.VRT.6.8.1": 1908604832, - "$ctl.layer.VRT.6.9": 735371353, - "$ctl.layer.VRT.6.9.type": 2551104928, - "$ctl.layer.VRT.6.9.i": 671851494, - "$ctl.layer.VRT.6.9.dst": 1798074804, - "$ctl.layer.VRT.6.9.1": 298211516, - "$ctl.layer.VRT.6.10": 2423226880, - "$ctl.layer.VRT.6.10.type": 2532461000, - "$ctl.layer.VRT.6.10.i": 2246220729, - "$ctl.layer.VRT.6.10.dst": 3689195199, - "$ctl.layer.VRT.6.10.1": 533679647, - "$ctl.layer.VRT.6.11": 1125442893, - "$ctl.layer.VRT.6.11.type": 787621353, - "$ctl.layer.VRT.6.11.i": 2653451136, - "$ctl.layer.VRT.6.11.dst": 1365213918, - "$ctl.layer.VRT.6.11.1": 2608206302, - "$ctl.layer.VRT.6.12": 1166595255, - "$ctl.layer.VRT.6.12.type": 4240193267, - "$ctl.layer.VRT.6.12.i": 905822586, - "$ctl.layer.VRT.6.12.dst": 2143914452, - "$ctl.layer.VRT.6.12.1": 229992196, - "$ctl.layer.VRT.6.13": 3990804636, - "$ctl.layer.VRT.6.13.type": 1065248464, - "$ctl.layer.VRT.6.13.i": 2428416305, - "$ctl.layer.VRT.6.13.dst": 1024178663, - "$ctl.layer.VRT.6.13.1": 3002324759, - "$ctl.layer.VRT.6.14": 4034563374, - "$ctl.layer.VRT.6.14.type": 4269626375, - "$ctl.layer.VRT.6.14.i": 760856942, - "$ctl.layer.VRT.6.14.dst": 2205152992, - "$ctl.layer.VRT.6.14.1": 205792080, - "$ctl.layer.VRT.6.15": 315658384, - "$ctl.layer.VRT.6.15.type": 2394176548, - "$ctl.layer.VRT.6.15.i": 1036241237, - "$ctl.layer.VRT.6.15.dst": 4056324355, - "$ctl.layer.VRT.6.15.1": 2078014307, - "$ctl.layer.VRT.6.16": 3502683626, - "$ctl.layer.VRT.6.16.type": 4095084526, - "$ctl.layer.VRT.6.16.i": 589593999, - "$ctl.layer.VRT.6.16.dst": 2040751321, - "$ctl.layer.VRT.6.16.1": 41551785, - "$ctl.layer.VRT.7": 969572216, - "$ctl.layer.VRT.7.ofs": 1810706591, - "$ctl.layer.VRT.7.name": 4088415641, - "$ctl.layer.VRT.7.1": 1287191880, - "$ctl.layer.VRT.7.1.type": 1238597093, - "$ctl.layer.VRT.7.1.i": 1175565807, - "$ctl.layer.VRT.7.1.dst": 3083383346, - "$ctl.layer.VRT.7.1.1": 1686043042, - "$ctl.layer.VRT.7.2": 4242232283, - "$ctl.layer.VRT.7.2.type": 2655147429, - "$ctl.layer.VRT.7.2.i": 922416178, - "$ctl.layer.VRT.7.2.dst": 1510305361, - "$ctl.layer.VRT.7.2.1": 3311917523, - "$ctl.layer.VRT.7.3": 2881333862, - "$ctl.layer.VRT.7.3.type": 1133107135, - "$ctl.layer.VRT.7.3.i": 1457739798, - "$ctl.layer.VRT.7.3.dst": 2130085112, - "$ctl.layer.VRT.7.3.1": 4115701224, - "$ctl.layer.VRT.7.4": 3421084567, - "$ctl.layer.VRT.7.4.type": 2212954919, - "$ctl.layer.VRT.7.4.i": 420252192, - "$ctl.layer.VRT.7.4.dst": 3788718356, - "$ctl.layer.VRT.7.4.1": 3078213098, - "$ctl.layer.VRT.7.5": 460038690, - "$ctl.layer.VRT.7.5.type": 559114044, - "$ctl.layer.VRT.7.5.i": 3103098500, - "$ctl.layer.VRT.7.5.dst": 482440314, - "$ctl.layer.VRT.7.5.1": 3612922958, - "$ctl.layer.VRT.7.6": 160025768, - "$ctl.layer.VRT.7.6.type": 4130468299, - "$ctl.layer.VRT.7.6.i": 434028613, - "$ctl.layer.VRT.7.6.dst": 980680826, - "$ctl.layer.VRT.7.6.1": 942539791, - "$ctl.layer.VRT.7.7": 3094053691, - "$ctl.layer.VRT.7.7.type": 1038124491, - "$ctl.layer.VRT.7.7.i": 3384640079, - "$ctl.layer.VRT.7.7.dst": 3748677899, - "$ctl.layer.VRT.7.7.1": 3626655868, - "$ctl.layer.VRT.7.8": 142856817, - "$ctl.layer.VRT.7.8.type": 2859087949, - "$ctl.layer.VRT.7.8.i": 2345821388, - "$ctl.layer.VRT.7.8.dst": 2981627147, - "$ctl.layer.VRT.7.8.1": 3393169590, - "$ctl.layer.VRT.7.9": 671468279, - "$ctl.layer.VRT.7.9.type": 4042705997, - "$ctl.layer.VRT.7.9.i": 734989936, - "$ctl.layer.VRT.7.9.dst": 3363879094, - "$ctl.layer.VRT.7.9.1": 1782361146, - "$ctl.layer.VRT.7.10": 3949688414, - "$ctl.layer.VRT.7.10.type": 4228065579, - "$ctl.layer.VRT.7.10.i": 1798938306, - "$ctl.layer.VRT.7.10.dst": 563140172, - "$ctl.layer.VRT.7.10.1": 1784997100, - "$ctl.layer.VRT.7.11": 2588789995, - "$ctl.layer.VRT.7.11.type": 606448791, - "$ctl.layer.VRT.7.11.i": 1565662494, - "$ctl.layer.VRT.7.11.dst": 121130864, - "$ctl.layer.VRT.7.11.1": 2521591104, - "$ctl.layer.VRT.7.12": 1250829857, - "$ctl.layer.VRT.7.12.type": 3603757877, - "$ctl.layer.VRT.7.12.i": 95059484, - "$ctl.layer.VRT.7.12.dst": 1507806786, - "$ctl.layer.VRT.7.12.1": 3824461426, - "$ctl.layer.VRT.7.13": 4195364018, - "$ctl.layer.VRT.7.13.type": 1859738979, - "$ctl.layer.VRT.7.13.i": 1576785930, - "$ctl.layer.VRT.7.13.dst": 3016493636, - "$ctl.layer.VRT.7.13.1": 4155945556, - "$ctl.layer.VRT.7.14": 2566659504, - "$ctl.layer.VRT.7.14.type": 3614019786, - "$ctl.layer.VRT.7.14.i": 105907003, - "$ctl.layer.VRT.7.14.dst": 1517761517, - "$ctl.layer.VRT.7.14.1": 3813532909, - "$ctl.layer.VRT.7.15": 1763603534, - "$ctl.layer.VRT.7.15.type": 3382935132, - "$ctl.layer.VRT.7.15.i": 3094808317, - "$ctl.layer.VRT.7.15.dst": 1813041531, - "$ctl.layer.VRT.7.15.1": 2973549323, - "$ctl.layer.VRT.7.16": 3608411892, - "$ctl.layer.VRT.7.16.type": 1029819814, - "$ctl.layer.VRT.7.16.i": 1142311511, - "$ctl.layer.VRT.7.16.dst": 4168362737, - "$ctl.layer.VRT.7.16.1": 2777169393, - "$ctl.layer.VRT.8": 3039855787, - "$ctl.layer.VRT.8.ofs": 2202863500, - "$ctl.layer.VRT.8.name": 1757862721, - "$ctl.layer.VRT.8.1": 2723767643, - "$ctl.layer.VRT.8.1.type": 3462318229, - "$ctl.layer.VRT.8.1.i": 1678108860, - "$ctl.layer.VRT.8.1.dst": 3298018858, - "$ctl.layer.VRT.8.1.1": 2327880313, - "$ctl.layer.VRT.8.2": 4066305736, - "$ctl.layer.VRT.8.2.type": 3730301403, - "$ctl.layer.VRT.8.2.i": 2017100073, - "$ctl.layer.VRT.8.2.dst": 3070571061, - "$ctl.layer.VRT.8.2.1": 614827912, - "$ctl.layer.VRT.8.3": 1045426941, - "$ctl.layer.VRT.8.3.type": 3954970587, - "$ctl.layer.VRT.8.3.i": 2553531125, - "$ctl.layer.VRT.8.3.dst": 4061884809, - "$ctl.layer.VRT.8.3.1": 4109600307, - "$ctl.layer.VRT.8.4": 509260556, - "$ctl.layer.VRT.8.4.type": 3226699326, - "$ctl.layer.VRT.8.4.i": 3593010363, - "$ctl.layer.VRT.8.4.dst": 2419141988, - "$ctl.layer.VRT.8.4.1": 4070095729, - "$ctl.layer.VRT.8.5": 3551227681, - "$ctl.layer.VRT.8.5.type": 1817115172, - "$ctl.layer.VRT.8.5.i": 4129725831, - "$ctl.layer.VRT.8.5.dst": 4290990137, - "$ctl.layer.VRT.8.5.1": 316434013, - "$ctl.layer.VRT.8.6": 2780140731, - "$ctl.layer.VRT.8.6.type": 1081632911, - "$ctl.layer.VRT.8.6.i": 2421934342, - "$ctl.layer.VRT.8.6.dst": 390089782, - "$ctl.layer.VRT.8.6.1": 3071383260, - "$ctl.layer.VRT.8.7": 4054562344, - "$ctl.layer.VRT.8.7.type": 2035416202, - "$ctl.layer.VRT.8.7.i": 542100252, - "$ctl.layer.VRT.8.7.dst": 1302100851, - "$ctl.layer.VRT.8.7.1": 3607812015, - "$ctl.layer.VRT.8.8": 3786852818, - "$ctl.layer.VRT.8.8.type": 1632118701, - "$ctl.layer.VRT.8.8.i": 1581559263, - "$ctl.layer.VRT.8.8.dst": 2796308533, - "$ctl.layer.VRT.8.8.1": 620723093, - "$ctl.layer.VRT.8.9": 2265416300, - "$ctl.layer.VRT.8.9.type": 2016918440, - "$ctl.layer.VRT.8.9.i": 2118335595, - "$ctl.layer.VRT.8.9.dst": 2034984218, - "$ctl.layer.VRT.8.9.1": 1157477665, - "$ctl.layer.VRT.8.10": 3282823301, - "$ctl.layer.VRT.8.10.type": 2248621488, - "$ctl.layer.VRT.8.10.i": 1297282961, - "$ctl.layer.VRT.8.10.dst": 7662279, - "$ctl.layer.VRT.8.10.1": 1818284535, - "$ctl.layer.VRT.8.11": 267474424, - "$ctl.layer.VRT.8.11.type": 292867704, - "$ctl.layer.VRT.8.11.i": 180386249, - "$ctl.layer.VRT.8.11.dst": 1460105519, - "$ctl.layer.VRT.8.11.1": 2767407663, - "$ctl.layer.VRT.8.12": 1605138530, - "$ctl.layer.VRT.8.12.type": 4075650987, - "$ctl.layer.VRT.8.12.i": 2045233218, - "$ctl.layer.VRT.8.12.dst": 803218124, - "$ctl.layer.VRT.8.12.1": 3687497836, - "$ctl.layer.VRT.8.13": 3036493009, - "$ctl.layer.VRT.8.13.type": 4124645021, - "$ctl.layer.VRT.8.13.i": 1021222676, - "$ctl.layer.VRT.8.13.dst": 2431367498, - "$ctl.layer.VRT.8.13.1": 4240517962, - "$ctl.layer.VRT.8.14": 1447556371, - "$ctl.layer.VRT.8.14.type": 1077459802, - "$ctl.layer.VRT.8.14.i": 2038712491, - "$ctl.layer.VRT.8.14.dst": 591796349, - "$ctl.layer.VRT.8.14.1": 3056565021, - "$ctl.layer.VRT.8.15": 1090388565, - "$ctl.layer.VRT.8.15.type": 1604244648, - "$ctl.layer.VRT.8.15.i": 1717387161, - "$ctl.layer.VRT.8.15.dst": 3173808031, - "$ctl.layer.VRT.8.15.1": 1866507263, - "$ctl.layer.VRT.8.16": 319301551, - "$ctl.layer.VRT.8.16.type": 384880218, - "$ctl.layer.VRT.8.16.i": 2814671275, - "$ctl.layer.VRT.8.16.dst": 1375957373, - "$ctl.layer.VRT.8.16.1": 133122589, - "$ctl.user": 3950999152, - "$ctl.user.sel": 630029008, - "$ctl.user.mode": 2584601966, - "$ctl.user.cmode": 2958502987, - "$ctl.user.gpio": 4123730293, - "$ctl.user.gpio.1": 3461542252, - "$ctl.user.gpio.1.bu": 1150157134, - "$ctl.user.gpio.1.bu.mode": 476904895, - "$ctl.user.gpio.1.bu.name": 2812538375, - "$ctl.user.gpio.1.bu.$fname": 2724393746, - "$ctl.user.gpio.1.bu.1": 700046283, - "$ctl.user.gpio.1.bu.2": 4002735193, - "$ctl.user.gpio.1.bu.3": 1981129575, - "$ctl.user.gpio.2": 548462795, - "$ctl.user.gpio.2.bu": 4220636178, - "$ctl.user.gpio.2.bu.mode": 2205148775, - "$ctl.user.gpio.2.bu.name": 916862495, - "$ctl.user.gpio.2.bu.$fname": 3895343858, - "$ctl.user.gpio.2.bu.1": 2428602371, - "$ctl.user.gpio.2.bu.2": 1603092993, - "$ctl.user.gpio.2.bu.3": 85146559, - "$ctl.user.gpio.3": 2055857229, - "$ctl.user.gpio.3.bu": 2646796873, - "$ctl.user.gpio.3.bu.mode": 962946137, - "$ctl.user.gpio.3.bu.name": 3298497489, - "$ctl.user.gpio.3.bu.$fname": 3628464697, - "$ctl.user.gpio.3.bu.1": 201643541, - "$ctl.user.gpio.3.bu.2": 3416923207, - "$ctl.user.gpio.3.bu.3": 1403586937, - "$ctl.user.gpio.4": 3228357560, - "$ctl.user.gpio.4.bu": 1911130013, - "$ctl.user.gpio.4.bu.mode": 701883576, - "$ctl.user.gpio.4.bu.name": 3038745808, - "$ctl.user.gpio.4.bu.$fname": 168696775, - "$ctl.user.gpio.4.bu.1": 473192180, - "$ctl.user.gpio.4.bu.2": 1009688646, - "$ctl.user.gpio.4.bu.3": 3817377632, - "$ctl.user.user": 1298850435, - "$ctl.user.user.1": 2072193228, - "$ctl.user.user.1.bu": 1485982124, - "$ctl.user.user.1.bu.mode": 936295815, - "$ctl.user.user.1.bu.name": 3901033791, - "$ctl.user.user.1.bu.$fname": 1214368174, - "$ctl.user.user.1.bu.1": 3927498531, - "$ctl.user.user.1.bu.2": 125179873, - "$ctl.user.user.1.bu.3": 1500977119, - "$ctl.user.user.1.bd": 4104809504, - "$ctl.user.user.1.bd.mode": 4150749441, - "$ctl.user.user.1.bd.name": 2192644329, - "$ctl.user.user.1.bd.$fname": 439682408, - "$ctl.user.user.1.bd.1": 1154144973, - "$ctl.user.user.1.bd.2": 328737135, - "$ctl.user.user.1.bd.3": 287247953, - "$ctl.user.user.2": 4232392634, - "$ctl.user.user.2.bu": 2607461940, - "$ctl.user.user.2.bu.mode": 1898661416, - "$ctl.user.user.2.bu.name": 2850174368, - "$ctl.user.user.2.bu.$fname": 1433915960, - "$ctl.user.user.2.bu.1": 516274116, - "$ctl.user.user.2.bu.2": 1254702966, - "$ctl.user.user.2.bu.3": 449441904, - "$ctl.user.user.2.bd": 3042105752, - "$ctl.user.user.2.bd.mode": 3087292146, - "$ctl.user.user.2.bd.name": 2092566282, - "$ctl.user.user.2.bd.$fname": 2088102409, - "$ctl.user.user.2.bd.1": 1252242750, - "$ctl.user.user.2.bd.2": 631962652, - "$ctl.user.user.2.bd.3": 1303511466, - "$ctl.user.user.3": 561461135, - "$ctl.user.user.3.bu": 3767290618, - "$ctl.user.user.3.bu.mode": 4112034852, - "$ctl.user.user.3.bu.name": 2783157212, - "$ctl.user.user.3.bu.$fname": 3980698808, - "$ctl.user.user.3.bu.1": 583945744, - "$ctl.user.user.3.bu.2": 1322558530, - "$ctl.user.user.3.bu.3": 383385956, - "$ctl.user.user.3.bd": 2222205030, - "$ctl.user.user.3.bd.mode": 4228247580, - "$ctl.user.user.3.bd.name": 2562392164, - "$ctl.user.user.3.bd.$fname": 22646921, - "$ctl.user.user.3.bd.1": 782426744, - "$ctl.user.user.3.bd.2": 1772882682, - "$ctl.user.user.3.bd.3": 162437836, - "$ctl.user.user.4": 163135056, - "$ctl.user.user.4.bu": 636549711, - "$ctl.user.user.4.bu.mode": 451870966, - "$ctl.user.user.4.bu.name": 3752071550, - "$ctl.user.user.4.bu.$fname": 1916100342, - "$ctl.user.user.4.bu.1": 3896237890, - "$ctl.user.user.4.bu.2": 3367176464, - "$ctl.user.user.4.bu.3": 1898817238, - "$ctl.user.user.4.bd": 1065935083, - "$ctl.user.user.4.bd.mode": 1794222855, - "$ctl.user.user.4.bd.name": 3124533951, - "$ctl.user.user.4.bd.$fname": 1288828395, - "$ctl.user.user.4.bd.1": 408374435, - "$ctl.user.user.4.bd.2": 1363912033, - "$ctl.user.user.4.bd.3": 682164319, - "$ctl.user.daw1": 545535388, - "$ctl.user.daw1.1": 384336107, - "$ctl.user.daw1.1.bu": 259909773, - "$ctl.user.daw1.1.bu.mode": 3473940646, - "$ctl.user.daw1.1.bu.name": 172306574, - "$ctl.user.daw1.1.bu.$fname": 597130890, - "$ctl.user.daw1.1.bu.1": 3160052370, - "$ctl.user.daw1.1.bu.2": 3948166336, - "$ctl.user.daw1.1.bu.3": 961465062, - "$ctl.user.daw1.1.bd": 1972744601, - "$ctl.user.daw1.1.bd.mode": 1310905314, - "$ctl.user.daw1.1.bd.name": 2976760730, - "$ctl.user.daw1.1.bd.$fname": 1555044265, - "$ctl.user.daw1.1.bd.1": 545650062, - "$ctl.user.daw1.1.bd.2": 3766275980, - "$ctl.user.daw1.1.bd.3": 1081749050, - "$ctl.user.daw1.2": 3325237846, - "$ctl.user.daw1.2.bu": 1333020258, - "$ctl.user.daw1.2.bu.mode": 1116073057, - "$ctl.user.daw1.2.bu.name": 2110798921, - "$ctl.user.daw1.2.bu.$fname": 3868285276, - "$ctl.user.daw1.2.bu.1": 1424723501, - "$ctl.user.daw1.2.bu.2": 347555343, - "$ctl.user.daw1.2.bu.3": 1279082929, - "$ctl.user.daw1.2.bd": 3909907390, - "$ctl.user.daw1.2.bd.mode": 3246566295, - "$ctl.user.daw1.2.bd.name": 1580751791, - "$ctl.user.daw1.2.bd.$fname": 185077423, - "$ctl.user.daw1.2.bd.1": 1942981075, - "$ctl.user.daw1.2.bd.2": 2770292593, - "$ctl.user.daw1.2.bd.3": 3485554255, - "$ctl.user.daw1.3": 2483539612, - "$ctl.user.daw1.3.bu": 1344288604, - "$ctl.user.daw1.3.bu.mode": 3441994877, - "$ctl.user.daw1.3.bu.name": 1819475093, - "$ctl.user.daw1.3.bu.$fname": 3193400742, - "$ctl.user.daw1.3.bu.1": 1524027017, - "$ctl.user.daw1.3.bu.2": 1032586651, - "$ctl.user.daw1.3.bu.3": 988086821, - "$ctl.user.daw1.3.bd": 3926392944, - "$ctl.user.daw1.3.bd.mode": 496332341, - "$ctl.user.daw1.3.bd.name": 3796573725, - "$ctl.user.daw1.3.bd.$fname": 3860626455, - "$ctl.user.daw1.3.bd.1": 4029991889, - "$ctl.user.daw1.3.bd.2": 3243905651, - "$ctl.user.daw1.3.bd.3": 1933120333, - "$ctl.user.daw1.4": 965675063, - "$ctl.user.daw1.4.bu": 3287896169, - "$ctl.user.daw1.4.bu.mode": 3502871697, - "$ctl.user.daw1.4.bu.name": 2214544665, - "$ctl.user.daw1.4.bu.$fname": 2456494401, - "$ctl.user.daw1.4.bu.1": 1130930941, - "$ctl.user.daw1.4.bu.2": 1827027839, - "$ctl.user.daw1.4.bu.3": 2993482305, - "$ctl.user.daw1.4.bd": 1616978685, - "$ctl.user.daw1.4.bd.mode": 3821838268, - "$ctl.user.daw1.4.bd.name": 2157375492, - "$ctl.user.daw1.4.bd.$fname": 3553460526, - "$ctl.user.daw1.4.bd.1": 1367014936, - "$ctl.user.daw1.4.bd.2": 2273830234, - "$ctl.user.daw1.4.bd.3": 2989050476, - "$ctl.user.daw2": 3486478035, - "$ctl.user.daw2.1": 2350972516, - "$ctl.user.daw2.1.bu": 233383976, - "$ctl.user.daw2.1.bu.mode": 1271934955, - "$ctl.user.daw2.1.bu.name": 2936438899, - "$ctl.user.daw2.1.bu.$fname": 1238857996, - "$ctl.user.daw2.1.bu.1": 426720839, - "$ctl.user.daw2.1.bu.2": 3894376469, - "$ctl.user.daw2.1.bu.3": 1031636395, - "$ctl.user.daw2.1.bd": 1736511332, - "$ctl.user.daw2.1.bd.mode": 431828499, - "$ctl.user.daw2.1.bd.name": 2768649611, - "$ctl.user.daw2.1.bd.$fname": 2154460652, - "$ctl.user.daw2.1.bd.1": 745245663, - "$ctl.user.daw2.1.bd.2": 3958846621, - "$ctl.user.daw2.1.bd.3": 1937363747, - "$ctl.user.daw2.2": 833107999, - "$ctl.user.daw2.2.bu": 2182239605, - "$ctl.user.daw2.2.bu.mode": 918615447, - "$ctl.user.daw2.2.bu.name": 3884623279, - "$ctl.user.daw2.2.bu.$fname": 1590151581, - "$ctl.user.daw2.2.bu.1": 3911129043, - "$ctl.user.daw2.2.bu.2": 111390065, - "$ctl.user.daw2.2.bu.3": 1495093327, - "$ctl.user.daw2.2.bd": 3732545041, - "$ctl.user.daw2.2.bd.mode": 1064545131, - "$ctl.user.daw2.2.bd.name": 3735722995, - "$ctl.user.daw2.2.bd.$fname": 4219942519, - "$ctl.user.daw2.2.bd.1": 4061339079, - "$ctl.user.daw2.2.bd.2": 630957973, - "$ctl.user.daw2.2.bd.3": 1304516139, - "$ctl.user.daw2.3": 3615289674, - "$ctl.user.daw2.3.bu": 2225131447, - "$ctl.user.daw2.3.bu.mode": 2549335429, - "$ctl.user.daw2.3.bu.name": 213743117, - "$ctl.user.daw2.3.bu.$fname": 391303103, - "$ctl.user.daw2.3.bu.1": 3310638017, - "$ctl.user.daw2.3.bu.2": 4222512195, - "$ctl.user.daw2.3.bu.3": 2119179133, - "$ctl.user.daw2.3.bd": 3937986851, - "$ctl.user.daw2.3.bd.mode": 350910662, - "$ctl.user.daw2.3.bd.name": 2686544046, - "$ctl.user.daw2.3.bd.$fname": 1110145442, - "$ctl.user.daw2.3.bd.1": 658265778, - "$ctl.user.daw2.3.bd.2": 4044513184, - "$ctl.user.daw2.3.bd.3": 1855462918, - "$ctl.user.daw2.4": 2265195952, - "$ctl.user.daw2.4.bu": 4112821756, - "$ctl.user.daw2.4.bu.mode": 3636243611, - "$ctl.user.daw2.4.bu.name": 1007090755, - "$ctl.user.daw2.4.bu.$fname": 1050787916, - "$ctl.user.daw2.4.bu.1": 2339032663, - "$ctl.user.daw2.4.bu.2": 3036153349, - "$ctl.user.daw2.4.bu.3": 2860057019, - "$ctl.user.daw2.4.bd": 1535937296, - "$ctl.user.daw2.4.bd.mode": 2813960293, - "$ctl.user.daw2.4.bd.name": 1819193581, - "$ctl.user.daw2.4.bd.$fname": 861846623, - "$ctl.user.daw2.4.bd.1": 1515786913, - "$ctl.user.daw2.4.bd.2": 2505423971, - "$ctl.user.daw2.4.bd.3": 3724364637, - "$ctl.user.daw3": 1968449581, - "$ctl.user.daw3.1": 1549257898, - "$ctl.user.daw3.1.bu": 1322588686, - "$ctl.user.daw3.1.bu.mode": 4138036479, - "$ctl.user.daw3.1.bu.name": 2136718663, - "$ctl.user.daw3.1.bu.$fname": 3046819501, - "$ctl.user.daw3.1.bu.1": 1229065995, - "$ctl.user.daw3.1.bu.2": 273466649, - "$ctl.user.daw3.1.bu.3": 273531559, - "$ctl.user.daw3.1.bd": 3946659218, - "$ctl.user.daw3.1.bd.mode": 3068275081, - "$ctl.user.daw3.1.bd.name": 61594017, - "$ctl.user.daw3.1.bd.$fname": 3681030241, - "$ctl.user.daw3.1.bd.1": 3293054949, - "$ctl.user.daw3.1.bd.2": 2763706743, - "$ctl.user.daw3.1.bd.3": 3577336905, - "$ctl.user.daw3.2": 294404515, - "$ctl.user.daw3.2.bu": 3065047401, - "$ctl.user.daw3.2.bu.mode": 1751768022, - "$ctl.user.daw3.2.bu.name": 3080645726, - "$ctl.user.daw3.2.bu.$fname": 2045868421, - "$ctl.user.daw3.2.bu.1": 453574178, - "$ctl.user.daw3.2.bu.2": 1317401648, - "$ctl.user.daw3.2.bu.3": 638398902, - "$ctl.user.daw3.2.bd": 488157693, - "$ctl.user.daw3.2.bd.mode": 4025262896, - "$ctl.user.daw3.2.bd.name": 1396110104, - "$ctl.user.daw3.2.bd.$fname": 3591281410, - "$ctl.user.daw3.2.bd.1": 2107310300, - "$ctl.user.daw3.2.bd.2": 1109911422, - "$ctl.user.daw3.2.bd.3": 575227976, - "$ctl.user.daw3.3": 3078060782, - "$ctl.user.daw3.3.bu": 3149882298, - "$ctl.user.daw3.3.bu.mode": 1299235385, - "$ctl.user.daw3.3.bu.name": 305861041, - "$ctl.user.daw3.3.bu.$fname": 3601991215, - "$ctl.user.daw3.3.bu.1": 3218519029, - "$ctl.user.daw3.3.bu.2": 4046199655, - "$ctl.user.daw3.3.bu.3": 1137863769, - "$ctl.user.daw3.3.bd": 1431776550, - "$ctl.user.daw3.3.bd.mode": 1567493370, - "$ctl.user.daw3.3.bd.name": 4238548290, - "$ctl.user.daw3.3.bd.$fname": 697887666, - "$ctl.user.daw3.3.bd.1": 3401232182, - "$ctl.user.daw3.3.bd.2": 227812612, - "$ctl.user.daw3.3.bd.3": 722887330, - "$ctl.user.daw3.4": 1727804505, - "$ctl.user.daw3.4.bu": 4290142855, - "$ctl.user.daw3.4.bu.mode": 3402237086, - "$ctl.user.daw3.4.bu.name": 1400837142, - "$ctl.user.daw3.4.bu.$fname": 3136855522, - "$ctl.user.daw3.4.bu.1": 2098636378, - "$ctl.user.daw3.4.bu.2": 2593660696, - "$ctl.user.daw3.4.bu.3": 3306315438, - "$ctl.user.daw3.4.bd": 1708035987, - "$ctl.user.daw3.4.bd.mode": 752663983, - "$ctl.user.daw3.4.bd.name": 2376535447, - "$ctl.user.daw3.4.bd.$fname": 1411179937, - "$ctl.user.daw3.4.bd.1": 977448795, - "$ctl.user.daw3.4.bd.2": 113251785, - "$ctl.user.daw3.4.bd.3": 1597925367, - "$ctl.user.daw4": 455826528, - "$ctl.user.daw4.1": 3348163107, - "$ctl.user.daw4.1.bu": 20997670, - "$ctl.user.daw4.1.bu.mode": 905733012, - "$ctl.user.daw4.1.bu.name": 3913724844, - "$ctl.user.daw4.1.bu.$fname": 2502306520, - "$ctl.user.daw4.1.bu.1": 3903653344, - "$ctl.user.daw4.1.bu.2": 139837298, - "$ctl.user.daw4.1.bu.3": 1481555572, - "$ctl.user.daw4.1.bd": 1529385658, - "$ctl.user.daw4.1.bd.mode": 1959878378, - "$ctl.user.daw4.1.bd.name": 3919212242, - "$ctl.user.daw4.1.bd.$fname": 1249037515, - "$ctl.user.daw4.1.bd.1": 3879161990, - "$ctl.user.daw4.1.bd.2": 411793844, - "$ctl.user.daw4.1.bd.3": 456328242, - "$ctl.user.daw4.2": 1830093678, - "$ctl.user.daw4.2.bu": 2144304054, - "$ctl.user.daw4.2.bu.mode": 2034373239, - "$ctl.user.daw4.2.bu.name": 3698918031, - "$ctl.user.daw4.2.bu.$fname": 2626923527, - "$ctl.user.daw4.2.bu.1": 3952013491, - "$ctl.user.daw4.2.bu.2": 358610833, - "$ctl.user.daw4.2.bu.3": 192985135, - "$ctl.user.daw4.2.bd": 2741482154, - "$ctl.user.daw4.2.bd.mode": 2317067652, - "$ctl.user.daw4.2.bd.name": 3645945148, - "$ctl.user.daw4.2.bd.$fname": 2405439584, - "$ctl.user.daw4.2.bd.1": 4151128944, - "$ctl.user.daw4.2.bd.2": 809609954, - "$ctl.user.daw4.2.bd.3": 141097668, - "$ctl.user.daw4.3": 753703127, - "$ctl.user.daw4.3.bu": 2659533901, - "$ctl.user.daw4.3.bu.mode": 1411899207, - "$ctl.user.daw4.3.bu.name": 81628927, - "$ctl.user.daw4.3.bu.$fname": 2355769137, - "$ctl.user.daw4.3.bu.1": 3250732259, - "$ctl.user.daw4.3.bu.2": 3991700257, - "$ctl.user.daw4.3.bu.3": 912688287, - "$ctl.user.daw4.3.bd": 4204604249, - "$ctl.user.daw4.3.bd.mode": 1563112897, - "$ctl.user.daw4.3.bd.name": 4235560361, - "$ctl.user.daw4.3.bd.$fname": 3984395174, - "$ctl.user.daw4.3.bd.1": 3403563917, - "$ctl.user.daw4.3.bd.2": 226786479, - "$ctl.user.daw4.3.bd.3": 719489809, - "$ctl.user.daw4.4": 3530600962, - "$ctl.user.daw4.4.bu": 777245402, - "$ctl.user.daw4.4.bu.mode": 2935282922, - "$ctl.user.daw4.4.bu.name": 641674450, - "$ctl.user.daw4.4.bu.$fname": 464716920, - "$ctl.user.daw4.4.bu.1": 2712320646, - "$ctl.user.daw4.4.bu.2": 3747095476, - "$ctl.user.daw4.4.bu.3": 1431732786, - "$ctl.user.daw4.4.bd": 2453400646, - "$ctl.user.daw4.4.bd.mode": 905034505, - "$ctl.user.daw4.4.bd.name": 3198642977, - "$ctl.user.daw4.4.bd.$fname": 3352833619, - "$ctl.user.daw4.4.bd.1": 143547749, - "$ctl.user.daw4.4.bd.2": 3485497079, - "$ctl.user.daw4.4.bd.3": 1335496905, - "$ctl.user.1": 2705401629, - "$ctl.user.1.1": 4136108299, - "$ctl.user.1.1.led": 441555711, - "$ctl.user.1.1.col": 1005986822, - "$ctl.user.1.1.enc": 2380365125, - "$ctl.user.1.1.enc.mode": 2040495052, - "$ctl.user.1.1.enc.name": 74585544, - "$ctl.user.1.1.enc.$fname": 4032990038, - "$ctl.user.1.1.enc.1": 2361650396, - "$ctl.user.1.1.enc.2": 3163782665, - "$ctl.user.1.1.enc.3": 3929414138, - "$ctl.user.1.1.bu": 2245820862, - "$ctl.user.1.1.bu.mode": 3011347627, - "$ctl.user.1.1.bu.name": 3388771802, - "$ctl.user.1.1.bu.$fname": 3960531497, - "$ctl.user.1.1.bu.1": 544056258, - "$ctl.user.1.1.bu.2": 1886501953, - "$ctl.user.1.1.bu.3": 3223909612, - "$ctl.user.1.1.bd": 1136937160, - "$ctl.user.1.1.bd.mode": 1363160426, - "$ctl.user.1.1.bd.name": 93737300, - "$ctl.user.1.1.bd.$fname": 1212225406, - "$ctl.user.1.1.bd.1": 2462510349, - "$ctl.user.1.1.bd.2": 2627827094, - "$ctl.user.1.1.bd.3": 3825950251, - "$ctl.user.1.2": 3397044521, - "$ctl.user.1.2.led": 36457409, - "$ctl.user.1.2.col": 1451506412, - "$ctl.user.1.2.enc": 1987114387, - "$ctl.user.1.2.enc.mode": 2398566038, - "$ctl.user.1.2.enc.name": 2970899346, - "$ctl.user.1.2.enc.$fname": 4075202816, - "$ctl.user.1.2.enc.1": 2371111794, - "$ctl.user.1.2.enc.2": 3288594975, - "$ctl.user.1.2.enc.3": 440770020, - "$ctl.user.1.2.bu": 2622265406, - "$ctl.user.1.2.bu.mode": 2982922337, - "$ctl.user.1.2.bu.name": 3220588068, - "$ctl.user.1.2.bu.$fname": 4000095919, - "$ctl.user.1.2.bu.1": 612212216, - "$ctl.user.1.2.bu.2": 2132913387, - "$ctl.user.1.2.bu.3": 2977498198, - "$ctl.user.1.2.bd": 3392453498, - "$ctl.user.1.2.bd.mode": 2225675676, - "$ctl.user.1.2.bd.name": 1176707593, - "$ctl.user.1.2.bd.$fname": 2242089114, - "$ctl.user.1.2.bd.1": 305660155, - "$ctl.user.1.2.bd.2": 2455527528, - "$ctl.user.1.2.bd.3": 3325973469, - "$ctl.user.1.3": 2860102807, - "$ctl.user.1.3.led": 377115091, - "$ctl.user.1.3.col": 1939105802, - "$ctl.user.1.3.enc": 2597833017, - "$ctl.user.1.3.enc.mode": 3762480365, - "$ctl.user.1.3.enc.name": 3748798907, - "$ctl.user.1.3.enc.$fname": 783674230, - "$ctl.user.1.3.enc.1": 1902682984, - "$ctl.user.1.3.enc.2": 2951722197, - "$ctl.user.1.3.enc.3": 19685550, - "$ctl.user.1.3.bu": 1409066147, - "$ctl.user.1.3.bu.mode": 2224156345, - "$ctl.user.1.3.bu.name": 1976038604, - "$ctl.user.1.3.bu.$fname": 2994500406, - "$ctl.user.1.3.bu.1": 241042158, - "$ctl.user.1.3.bu.2": 2254719925, - "$ctl.user.1.3.bu.3": 3528788032, - "$ctl.user.1.3.bd": 2179218426, - "$ctl.user.1.3.bd.mode": 527732698, - "$ctl.user.1.3.bd.name": 1019326443, - "$ctl.user.1.3.bd.$fname": 2040798888, - "$ctl.user.1.3.bd.1": 1653089881, - "$ctl.user.1.3.bd.2": 3792453322, - "$ctl.user.1.3.bd.3": 378435487, - "$ctl.user.1.4": 3644215112, - "$ctl.user.1.4.led": 571479109, - "$ctl.user.1.4.col": 1149949264, - "$ctl.user.1.4.enc": 2729443927, - "$ctl.user.1.4.enc.mode": 3256655874, - "$ctl.user.1.4.enc.name": 389603186, - "$ctl.user.1.4.enc.$fname": 4086284104, - "$ctl.user.1.4.enc.1": 2012561998, - "$ctl.user.1.4.enc.2": 2820190651, - "$ctl.user.1.4.enc.3": 4278412232, - "$ctl.user.1.4.bu": 3664547285, - "$ctl.user.1.4.bu.mode": 14150, - "$ctl.user.1.4.bu.name": 1770110717, - "$ctl.user.1.4.bu.$fname": 4173341770, - "$ctl.user.1.4.bu.1": 501159684, - "$ctl.user.1.4.bu.2": 2008692319, - "$ctl.user.1.4.bu.3": 3102211466, - "$ctl.user.1.4.bd": 2555662975, - "$ctl.user.1.4.bd.mode": 566098192, - "$ctl.user.1.4.bd.name": 3468728789, - "$ctl.user.1.4.bd.$fname": 1346460158, - "$ctl.user.1.4.bd.1": 2727673975, - "$ctl.user.1.4.bd.2": 2696564588, - "$ctl.user.1.4.bd.3": 3756025537, - "$ctl.user.2": 3106154860, - "$ctl.user.2.1": 3103689535, - "$ctl.user.2.1.led": 2577668603, - "$ctl.user.2.1.col": 2698370095, - "$ctl.user.2.1.enc": 4072461912, - "$ctl.user.2.1.enc.mode": 2336646496, - "$ctl.user.2.1.enc.name": 2283656894, - "$ctl.user.2.1.enc.$fname": 2931750849, - "$ctl.user.2.1.enc.1": 4115633737, - "$ctl.user.2.1.enc.2": 3153340188, - "$ctl.user.2.1.enc.3": 2358342503, - "$ctl.user.2.1.bu": 1202954170, - "$ctl.user.2.1.bu.mode": 1996962675, - "$ctl.user.2.1.bu.name": 2409437458, - "$ctl.user.2.1.bu.$fname": 3518065665, - "$ctl.user.2.1.bu.1": 1227860555, - "$ctl.user.2.1.bu.2": 548713304, - "$ctl.user.2.1.bu.3": 3487996909, - "$ctl.user.2.1.bd": 827055804, - "$ctl.user.2.1.bd.mode": 630713308, - "$ctl.user.2.1.bd.name": 3317844243, - "$ctl.user.2.1.bd.$fname": 711488117, - "$ctl.user.2.1.bd.1": 1888385048, - "$ctl.user.2.1.bd.2": 4161853707, - "$ctl.user.2.1.bd.3": 2827494710, - "$ctl.user.2.2": 2024042797, - "$ctl.user.2.2.led": 3545884753, - "$ctl.user.2.2.col": 2850264377, - "$ctl.user.2.2.enc": 4182535330, - "$ctl.user.2.2.enc.mode": 73700554, - "$ctl.user.2.2.enc.name": 1825962872, - "$ctl.user.2.2.enc.$fname": 2107701147, - "$ctl.user.2.2.enc.1": 937416355, - "$ctl.user.2.2.enc.2": 4049896822, - "$ctl.user.2.2.enc.3": 2678134029, - "$ctl.user.2.2.bu": 2932051514, - "$ctl.user.2.2.bu.mode": 2423516393, - "$ctl.user.2.2.bu.name": 1338657116, - "$ctl.user.2.2.bu.$fname": 1560588327, - "$ctl.user.2.2.bu.1": 1044386541, - "$ctl.user.2.2.bu.2": 375671158, - "$ctl.user.2.2.bu.3": 3661008203, - "$ctl.user.2.2.bd": 140229374, - "$ctl.user.2.2.bd.mode": 3833565726, - "$ctl.user.2.2.bd.name": 3162664407, - "$ctl.user.2.2.bd.$fname": 738384812, - "$ctl.user.2.2.bd.1": 837114482, - "$ctl.user.2.2.bd.2": 829032849, - "$ctl.user.2.2.bd.3": 3878767836, - "$ctl.user.2.3": 2818752147, - "$ctl.user.2.3.led": 2859585663, - "$ctl.user.2.3.col": 2922619779, - "$ctl.user.2.3.enc": 187350284, - "$ctl.user.2.3.enc.mode": 1641407199, - "$ctl.user.2.3.enc.name": 3432924949, - "$ctl.user.2.3.enc.$fname": 2023374211, - "$ctl.user.2.3.enc.1": 544910613, - "$ctl.user.2.3.enc.2": 3751591336, - "$ctl.user.2.3.enc.3": 2977913435, - "$ctl.user.2.3.bu": 366202047, - "$ctl.user.2.3.bu.mode": 347852287, - "$ctl.user.2.3.bu.name": 1396354070, - "$ctl.user.2.3.bu.$fname": 1951324109, - "$ctl.user.2.3.bu.1": 1699523015, - "$ctl.user.2.3.bu.2": 4015170140, - "$ctl.user.2.3.bu.3": 2974330641, - "$ctl.user.2.3.bd": 1869347198, - "$ctl.user.2.3.bd.mode": 3243007684, - "$ctl.user.2.3.bd.name": 4092444353, - "$ctl.user.2.3.bd.$fname": 583795730, - "$ctl.user.2.3.bd.1": 1492458276, - "$ctl.user.2.3.bd.2": 194658943, - "$ctl.user.2.3.bd.3": 3170972778, - "$ctl.user.2.4": 3618498372, - "$ctl.user.2.4.led": 2717767893, - "$ctl.user.2.4.col": 3084765501, - "$ctl.user.2.4.enc": 381186966, - "$ctl.user.2.4.enc.mode": 1437864985, - "$ctl.user.2.4.enc.name": 1943440159, - "$ctl.user.2.4.enc.$fname": 2661573970, - "$ctl.user.2.4.enc.1": 403164495, - "$ctl.user.2.4.enc.2": 3893378050, - "$ctl.user.2.4.enc.3": 3129727969, - "$ctl.user.2.4.bu": 3974344153, - "$ctl.user.2.4.bu.mode": 1269328081, - "$ctl.user.2.4.bu.name": 4132814434, - "$ctl.user.2.4.bu.$fname": 2941794545, - "$ctl.user.2.4.bu.1": 702319673, - "$ctl.user.2.4.bu.2": 733467306, - "$ctl.user.2.4.bu.3": 3974137535, - "$ctl.user.2.4.bd": 3598444515, - "$ctl.user.2.4.bd.mode": 439625236, - "$ctl.user.2.4.bd.name": 2777547665, - "$ctl.user.2.4.bd.$fname": 2497070429, - "$ctl.user.2.4.bd.1": 1477857182, - "$ctl.user.2.4.bd.2": 4254857413, - "$ctl.user.2.4.bd.3": 3407656496, - "$ctl.user.3": 3795971801, - "$ctl.user.3.1": 2679897157, - "$ctl.user.3.1.led": 260324835, - "$ctl.user.3.1.col": 185852581, - "$ctl.user.3.1.enc": 3450413862, - "$ctl.user.3.1.enc.mode": 779241748, - "$ctl.user.3.1.enc.name": 4088412820, - "$ctl.user.3.1.enc.$fname": 3676496312, - "$ctl.user.3.1.enc.1": 3407300991, - "$ctl.user.3.1.enc.2": 2096519890, - "$ctl.user.3.1.enc.3": 659929809, - "$ctl.user.3.1.bu": 107359888, - "$ctl.user.3.1.bu.mode": 3773736454, - "$ctl.user.3.1.bu.name": 2756714808, - "$ctl.user.3.1.bu.$fname": 831429263, - "$ctl.user.3.1.bu.1": 2594836873, - "$ctl.user.3.1.bu.2": 2583972570, - "$ctl.user.3.1.bu.3": 1587446799, - "$ctl.user.3.1.bd": 3377359942, - "$ctl.user.3.1.bd.mode": 4122484017, - "$ctl.user.3.1.bd.name": 3038900098, - "$ctl.user.3.1.bd.$fname": 361292573, - "$ctl.user.3.1.bd.1": 3237511960, - "$ctl.user.3.1.bd.2": 1937039883, - "$ctl.user.3.1.bd.3": 893637686, - "$ctl.user.3.2": 2022897159, - "$ctl.user.3.2.led": 628723577, - "$ctl.user.3.2.col": 443956111, - "$ctl.user.3.2.enc": 3602450904, - "$ctl.user.3.2.enc.mode": 288783310, - "$ctl.user.3.2.enc.name": 2823648582, - "$ctl.user.3.2.enc.$fname": 4027517266, - "$ctl.user.3.2.enc.1": 3244767945, - "$ctl.user.3.2.enc.2": 2280024476, - "$ctl.user.3.2.enc.3": 811969511, - "$ctl.user.3.2.bu": 4067826960, - "$ctl.user.3.2.bu.mode": 2913108428, - "$ctl.user.3.2.bu.name": 2279331058, - "$ctl.user.3.2.bu.$fname": 207931309, - "$ctl.user.3.2.bu.1": 3082427907, - "$ctl.user.3.2.bu.2": 2452893504, - "$ctl.user.3.2.bu.3": 1047407797, - "$ctl.user.3.2.bd": 2690510804, - "$ctl.user.3.2.bd.mode": 4078944190, - "$ctl.user.3.2.bd.name": 3152170405, - "$ctl.user.3.2.bd.$fname": 1705197682, - "$ctl.user.3.2.bd.1": 2468335986, - "$ctl.user.3.2.bd.2": 3262747281, - "$ctl.user.3.2.bd.3": 103336924, - "$ctl.user.3.3": 1716153, - "$ctl.user.3.3.led": 550608927, - "$ctl.user.3.3.col": 4282786977, - "$ctl.user.3.3.enc": 3138533922, - "$ctl.user.3.3.enc.mode": 2329198795, - "$ctl.user.3.3.enc.name": 2055592349, - "$ctl.user.3.3.enc.$fname": 615586708, - "$ctl.user.3.3.enc.1": 3493015843, - "$ctl.user.3.3.enc.2": 2145042934, - "$ctl.user.3.3.enc.3": 1463735181, - "$ctl.user.3.3.bu": 3670409621, - "$ctl.user.3.3.bu.mode": 2375839, - "$ctl.user.3.3.bu.name": 1767510948, - "$ctl.user.3.3.bu.$fname": 4174712867, - "$ctl.user.3.3.bu.1": 2961643373, - "$ctl.user.3.3.bu.2": 2153919990, - "$ctl.user.3.3.bu.3": 1346371019, - "$ctl.user.3.3.bd": 2293139540, - "$ctl.user.3.3.bd.mode": 708927532, - "$ctl.user.3.3.bd.name": 2664339447, - "$ctl.user.3.3.bd.$fname": 2114517896, - "$ctl.user.3.3.bd.1": 1517283948, - "$ctl.user.3.3.bd.2": 887716215, - "$ctl.user.3.3.bd.3": 4223188290, - "$ctl.user.3.4": 3549196926, - "$ctl.user.3.4.led": 366336117, - "$ctl.user.3.4.col": 822846091, - "$ctl.user.3.4.enc": 3227535124, - "$ctl.user.3.4.enc.mode": 282885661, - "$ctl.user.3.4.enc.name": 1094005607, - "$ctl.user.3.4.enc.$fname": 2112970059, - "$ctl.user.3.4.enc.1": 3267362189, - "$ctl.user.3.4.enc.2": 2391668288, - "$ctl.user.3.4.enc.3": 1678483235, - "$ctl.user.3.4.bu": 2983606499, - "$ctl.user.3.4.bu.mode": 1261172256, - "$ctl.user.3.4.bu.name": 2341136901, - "$ctl.user.3.4.bu.$fname": 1755272761, - "$ctl.user.3.4.bu.1": 2696308807, - "$ctl.user.3.4.bu.2": 2730223836, - "$ctl.user.3.4.bu.3": 1442641297, - "$ctl.user.3.4.bd": 1790867161, - "$ctl.user.3.4.bd.mode": 442328877, - "$ctl.user.3.4.bd.name": 605206614, - "$ctl.user.3.4.bd.$fname": 3438779341, - "$ctl.user.3.4.bd.1": 3514580262, - "$ctl.user.3.4.bd.2": 1993876541, - "$ctl.user.3.4.bd.3": 834721800, - "$ctl.user.4": 169553270, - "$ctl.user.4.1": 3648594253, - "$ctl.user.4.1.led": 130654943, - "$ctl.user.4.1.col": 360647136, - "$ctl.user.4.1.enc": 159524399, - "$ctl.user.4.1.enc.mode": 3265364053, - "$ctl.user.4.1.enc.name": 55442189, - "$ctl.user.4.1.enc.$fname": 388817337, - "$ctl.user.4.1.enc.1": 4071234230, - "$ctl.user.4.1.enc.2": 1163479523, - "$ctl.user.4.1.enc.3": 1873725696, - "$ctl.user.4.1.bu": 1928028568, - "$ctl.user.4.1.bu.mode": 3564280090, - "$ctl.user.4.1.bu.name": 1582271033, - "$ctl.user.4.1.bu.$fname": 1922200238, - "$ctl.user.4.1.bu.1": 2760167028, - "$ctl.user.4.1.bu.2": 1281326831, - "$ctl.user.4.1.bu.3": 473529594, - "$ctl.user.4.1.bd": 2262025102, - "$ctl.user.4.1.bd.mode": 1920452823, - "$ctl.user.4.1.bd.name": 103196556, - "$ctl.user.4.1.bd.$fname": 732617948, - "$ctl.user.4.1.bd.1": 1774952935, - "$ctl.user.4.1.bd.2": 3878140540, - "$ctl.user.4.1.bd.3": 3112629361, - "$ctl.user.4.2": 393583135, - "$ctl.user.4.2.led": 891351457, - "$ctl.user.4.2.col": 103636278, - "$ctl.user.4.2.enc": 49427789, - "$ctl.user.4.2.enc.mode": 3314426827, - "$ctl.user.4.2.enc.name": 192988035, - "$ctl.user.4.2.enc.$fname": 525706735, - "$ctl.user.4.2.enc.1": 1706900, - "$ctl.user.4.2.enc.2": 938034369, - "$ctl.user.4.2.enc.3": 1721683490, - "$ctl.user.4.2.bu": 1499165464, - "$ctl.user.4.2.bu.mode": 184278772, - "$ctl.user.4.2.bu.name": 1063147919, - "$ctl.user.4.2.bu.$fname": 2312056416, - "$ctl.user.4.2.bu.1": 2943674642, - "$ctl.user.4.2.bu.2": 1433364529, - "$ctl.user.4.2.bu.3": 321482300, - "$ctl.user.4.2.bd": 4249047052, - "$ctl.user.4.2.bd.mode": 1665551157, - "$ctl.user.4.2.bd.name": 4061152526, - "$ctl.user.4.2.bd.$fname": 1504642698, - "$ctl.user.4.2.bd.1": 3248267933, - "$ctl.user.4.2.bd.2": 1108781446, - "$ctl.user.4.2.bd.3": 4271222715, - "$ctl.user.4.3": 1567944097, - "$ctl.user.4.3.led": 4158204339, - "$ctl.user.4.3.col": 3680307284, - "$ctl.user.4.3.enc": 4265820675, - "$ctl.user.4.3.enc.mode": 2229339997, - "$ctl.user.4.3.enc.name": 2646247970, - "$ctl.user.4.3.enc.$fname": 3691533329, - "$ctl.user.4.3.enc.1": 3211657538, - "$ctl.user.4.3.enc.2": 9812623, - "$ctl.user.4.3.enc.3": 1475338228, - "$ctl.user.4.3.bu": 2701868701, - "$ctl.user.4.3.bu.mode": 2000618054, - "$ctl.user.4.3.bu.name": 1684601725, - "$ctl.user.4.3.bu.$fname": 3937405642, - "$ctl.user.4.3.bu.1": 2225222128, - "$ctl.user.4.3.bu.2": 2214409043, - "$ctl.user.4.3.bu.3": 882584414, - "$ctl.user.4.3.bd": 1156818828, - "$ctl.user.4.3.bd.mode": 3763086055, - "$ctl.user.4.3.bd.name": 3601989788, - "$ctl.user.4.3.bd.$fname": 3084287532, - "$ctl.user.4.3.bd.1": 810314547, - "$ctl.user.4.3.bd.2": 631698384, - "$ctl.user.4.3.bd.3": 4077247909, - "$ctl.user.4.4": 204585734, - "$ctl.user.4.4.led": 43318821, - "$ctl.user.4.4.col": 895362298, - "$ctl.user.4.4.enc": 3882969185, - "$ctl.user.4.4.enc.mode": 330683803, - "$ctl.user.4.4.enc.name": 2357534323, - "$ctl.user.4.4.enc.$fname": 3863033823, - "$ctl.user.4.4.enc.1": 3499808864, - "$ctl.user.4.4.enc.2": 392742829, - "$ctl.user.4.4.enc.3": 1092406102, - "$ctl.user.4.4.bu": 393958555, - "$ctl.user.4.4.bu.mode": 137390702, - "$ctl.user.4.4.bu.name": 59368432, - "$ctl.user.4.4.bu.$fname": 2226298594, - "$ctl.user.4.4.bu.1": 3294832702, - "$ctl.user.4.4.bu.2": 1145119077, - "$ctl.user.4.4.bu.3": 4233768336, - "$ctl.user.4.4.bd": 895727921, - "$ctl.user.4.4.bd.mode": 3027398610, - "$ctl.user.4.4.bd.name": 2934165496, - "$ctl.user.4.4.bd.$fname": 4290919675, - "$ctl.user.4.4.bd.1": 824530281, - "$ctl.user.4.4.bd.2": 868808378, - "$ctl.user.4.4.bd.3": 3839492783, - "$ctl.user.5": 3532266851, - "$ctl.user.5.1": 3494396257, - "$ctl.user.5.1.led": 1048062857, - "$ctl.user.5.1.col": 3357442715, - "$ctl.user.5.1.enc": 405252321, - "$ctl.user.5.1.enc.mode": 998634263, - "$ctl.user.5.1.enc.name": 4086656109, - "$ctl.user.5.1.enc.$fname": 2859533875, - "$ctl.user.5.1.enc.1": 452827104, - "$ctl.user.5.1.enc.2": 3863990573, - "$ctl.user.5.1.enc.3": 3153872598, - "$ctl.user.5.1.bu": 924608804, - "$ctl.user.5.1.bu.mode": 539672727, - "$ctl.user.5.1.bu.name": 587031763, - "$ctl.user.5.1.bu.$fname": 3441838497, - "$ctl.user.5.1.bu.1": 2133685258, - "$ctl.user.5.1.bu.2": 2983187865, - "$ctl.user.5.1.bu.3": 4142342532, - "$ctl.user.5.1.bd": 2583954274, - "$ctl.user.5.1.bd.mode": 1020860326, - "$ctl.user.5.1.bd.name": 2389916367, - "$ctl.user.5.1.bd.$fname": 485070783, - "$ctl.user.5.1.bd.1": 1900486421, - "$ctl.user.5.1.bd.2": 3211472462, - "$ctl.user.5.1.bd.3": 290293155, - "$ctl.user.5.2": 155621299, - "$ctl.user.5.2.led": 1414168119, - "$ctl.user.5.2.col": 2806831285, - "$ctl.user.5.2.enc": 840406091, - "$ctl.user.5.2.enc.mode": 1160256989, - "$ctl.user.5.2.enc.name": 3174161627, - "$ctl.user.5.2.enc.$fname": 3437966201, - "$ctl.user.5.2.enc.1": 1538119770, - "$ctl.user.5.2.enc.2": 476045191, - "$ctl.user.5.2.enc.3": 3421255164, - "$ctl.user.5.2.bu": 590107300, - "$ctl.user.5.2.bu.mode": 618895137, - "$ctl.user.5.2.bu.name": 717535673, - "$ctl.user.5.2.bu.$fname": 3972758051, - "$ctl.user.5.2.bu.1": 2736619676, - "$ctl.user.5.2.bu.2": 2694832647, - "$ctl.user.5.2.bu.3": 3759610418, - "$ctl.user.5.2.bd": 286533088, - "$ctl.user.5.2.bd.mode": 2583740092, - "$ctl.user.5.2.bd.name": 3793969737, - "$ctl.user.5.2.bd.$fname": 1987305662, - "$ctl.user.5.2.bd.1": 1591217103, - "$ctl.user.5.2.bd.2": 3604628820, - "$ctl.user.5.2.bd.3": 568103241, - "$ctl.user.5.3": 816057869, - "$ctl.user.5.3.led": 1220023917, - "$ctl.user.5.3.col": 4164716095, - "$ctl.user.5.3.enc": 4193371237, - "$ctl.user.5.3.enc.mode": 2465428590, - "$ctl.user.5.3.enc.name": 2962611140, - "$ctl.user.5.3.enc.$fname": 176068607, - "$ctl.user.5.3.enc.1": 926580476, - "$ctl.user.5.3.enc.2": 4039063593, - "$ctl.user.5.3.enc.3": 2688965978, - "$ctl.user.5.3.bu": 1782332457, - "$ctl.user.5.3.bu.mode": 3660262523, - "$ctl.user.5.3.bu.name": 1671745263, - "$ctl.user.5.3.bu.$fname": 203765344, - "$ctl.user.5.3.bu.1": 1661615350, - "$ctl.user.5.3.bu.2": 3853395053, - "$ctl.user.5.3.bu.3": 318691288, - "$ctl.user.5.3.bd": 1478758240, - "$ctl.user.5.3.bd.mode": 2863499542, - "$ctl.user.5.3.bd.name": 2688461567, - "$ctl.user.5.3.bd.$fname": 2836730320, - "$ctl.user.5.3.bd.1": 1858594849, - "$ctl.user.5.3.bd.2": 3337250722, - "$ctl.user.5.3.bd.3": 164392727, - "$ctl.user.5.4": 50462034, - "$ctl.user.5.4.led": 984003307, - "$ctl.user.5.4.col": 3602817033, - "$ctl.user.5.4.enc": 44420271, - "$ctl.user.5.4.enc.mode": 1949421425, - "$ctl.user.5.4.enc.name": 2719890599, - "$ctl.user.5.4.enc.$fname": 1998382499, - "$ctl.user.5.4.enc.1": 740269110, - "$ctl.user.5.4.enc.2": 4227362147, - "$ctl.user.5.4.enc.3": 2790337152, - "$ctl.user.5.4.bu": 3779878607, - "$ctl.user.5.4.bu.mode": 3193440754, - "$ctl.user.5.4.bu.name": 3548523201, - "$ctl.user.5.4.bu.$fname": 2838033739, - "$ctl.user.5.4.bu.1": 2692925976, - "$ctl.user.5.4.bu.2": 2816514827, - "$ctl.user.5.4.bu.3": 3637396278, - "$ctl.user.5.4.bd": 976484581, - "$ctl.user.5.4.bd.mode": 3261677349, - "$ctl.user.5.4.bd.name": 602087178, - "$ctl.user.5.4.bd.$fname": 1399022450, - "$ctl.user.5.4.bd.1": 1488247547, - "$ctl.user.5.4.bd.2": 179860072, - "$ctl.user.5.4.bd.3": 3187575261, - "$ctl.user.6": 1417672634, - "$ctl.user.6.1": 765874861, - "$ctl.user.6.1.led": 986037875, - "$ctl.user.6.1.col": 1239597460, - "$ctl.user.6.1.enc": 2394278339, - "$ctl.user.6.1.enc.mode": 2387143493, - "$ctl.user.6.1.enc.name": 539121929, - "$ctl.user.6.1.enc.$fname": 2372972108, - "$ctl.user.6.1.enc.1": 2757140226, - "$ctl.user.6.1.enc.2": 1538106959, - "$ctl.user.6.1.enc.3": 847933876, - "$ctl.user.6.1.bu": 2668507192, - "$ctl.user.6.1.bu.mode": 4169601089, - "$ctl.user.6.1.bu.name": 1738637700, - "$ctl.user.6.1.bu.$fname": 3081237263, - "$ctl.user.6.1.bu.1": 2776718640, - "$ctl.user.6.1.bu.2": 2653088915, - "$ctl.user.6.1.bu.3": 1517634206, - "$ctl.user.6.1.bd": 2997260526, - "$ctl.user.6.1.bd.mode": 381127424, - "$ctl.user.6.1.bd.name": 2704588906, - "$ctl.user.6.1.bd.$fname": 2504990105, - "$ctl.user.6.1.bd.1": 1773110865, - "$ctl.user.6.1.bd.2": 968083250, - "$ctl.user.6.1.bd.3": 4143650055, - "$ctl.user.6.2": 1799912639, - "$ctl.user.6.2.led": 584346853, - "$ctl.user.6.2.col": 1422999610, - "$ctl.user.6.2.enc": 2200305889, - "$ctl.user.6.2.enc.mode": 1015398171, - "$ctl.user.6.2.enc.name": 1452617031, - "$ctl.user.6.2.enc.$fname": 3010556594, - "$ctl.user.6.2.enc.1": 2919645152, - "$ctl.user.6.2.enc.2": 2067626285, - "$ctl.user.6.2.enc.3": 695901910, - "$ctl.user.6.2.bu": 92160440, - "$ctl.user.6.2.bu.mode": 2159570347, - "$ctl.user.6.2.bu.name": 3760308954, - "$ctl.user.6.2.bu.$fname": 3507132201, - "$ctl.user.6.2.bu.1": 3631289214, - "$ctl.user.6.2.bu.2": 1483951269, - "$ctl.user.6.2.bu.3": 673547472, - "$ctl.user.6.2.bd": 689335980, - "$ctl.user.6.2.bd.mode": 1210124561, - "$ctl.user.6.2.bd.name": 2273529897, - "$ctl.user.6.2.bd.$fname": 160711070, - "$ctl.user.6.2.bd.1": 3264775887, - "$ctl.user.6.2.bd.2": 1914363476, - "$ctl.user.6.2.bd.3": 915546185, - "$ctl.user.6.3": 155716353, - "$ctl.user.6.3.led": 915207735, - "$ctl.user.6.3.col": 3888202136, - "$ctl.user.6.3.enc": 3141481799, - "$ctl.user.6.3.enc.mode": 2914443453, - "$ctl.user.6.3.enc.name": 709301550, - "$ctl.user.6.3.enc.$fname": 132251452, - "$ctl.user.6.3.enc.1": 3520214558, - "$ctl.user.6.3.enc.2": 2138160299, - "$ctl.user.6.3.enc.3": 1427364056, - "$ctl.user.6.3.bu": 3442367805, - "$ctl.user.6.3.bu.mode": 4017860834, - "$ctl.user.6.3.bu.name": 2871821256, - "$ctl.user.6.3.bu.$fname": 2465418891, - "$ctl.user.6.3.bu.1": 3751682140, - "$ctl.user.6.3.bu.2": 1782661063, - "$ctl.user.6.3.bu.3": 374796786, - "$ctl.user.6.3.bd": 4039543340, - "$ctl.user.6.3.bd.mode": 3744203075, - "$ctl.user.6.3.bd.name": 2006071015, - "$ctl.user.6.3.bd.$fname": 3685524504, - "$ctl.user.6.3.bd.1": 1539874733, - "$ctl.user.6.3.bd.2": 871018550, - "$ctl.user.6.3.bd.3": 4240551435, - "$ctl.user.6.4": 1616157798, - "$ctl.user.6.4.led": 1327055321, - "$ctl.user.6.4.col": 649737838, - "$ctl.user.6.4.enc": 2716697509, - "$ctl.user.6.4.enc.mode": 1489701742, - "$ctl.user.6.4.enc.name": 141416132, - "$ctl.user.6.4.enc.$fname": 4105626367, - "$ctl.user.6.4.enc.1": 3745430844, - "$ctl.user.6.4.enc.2": 2563026025, - "$ctl.user.6.4.enc.3": 1212214170, - "$ctl.user.6.4.bu": 1134441979, - "$ctl.user.6.4.bu.mode": 3979138834, - "$ctl.user.6.4.bu.name": 2575026867, - "$ctl.user.6.4.bu.$fname": 862467311, - "$ctl.user.6.4.bu.1": 2831617274, - "$ctl.user.6.4.bu.2": 2697811369, - "$ctl.user.6.4.bu.3": 1473117812, - "$ctl.user.6.4.bd": 1630968785, - "$ctl.user.6.4.bd.mode": 474826809, - "$ctl.user.6.4.bd.name": 1230437973, - "$ctl.user.6.4.bd.$fname": 2946979618, - "$ctl.user.6.4.bd.1": 1721842139, - "$ctl.user.6.4.bd.2": 1040001864, - "$ctl.user.6.4.bd.3": 4070953853, - "$ctl.user.7": 1838741388, - "$ctl.user.7.1": 198210058, - "$ctl.user.7.1.led": 100171001, - "$ctl.user.7.1.col": 1072565021, - "$ctl.user.7.1.enc": 1224643945, - "$ctl.user.7.1.enc.mode": 200579249, - "$ctl.user.7.1.enc.name": 1561895895, - "$ctl.user.7.1.enc.$fname": 1994389850, - "$ctl.user.7.1.enc.1": 1917234040, - "$ctl.user.7.1.enc.2": 3049757189, - "$ctl.user.7.1.enc.3": 3847355902, - "$ctl.user.7.1.bu": 1918679247, - "$ctl.user.7.1.bu.mode": 2409069610, - "$ctl.user.7.1.bu.name": 300581865, - "$ctl.user.7.1.bu.$fname": 3461017651, - "$ctl.user.7.1.bu.1": 281177650, - "$ctl.user.7.1.bu.2": 2460016465, - "$ctl.user.7.1.bu.3": 3322846364, - "$ctl.user.7.1.bd": 1584723633, - "$ctl.user.7.1.bd.mode": 2182229308, - "$ctl.user.7.1.bd.name": 3383505534, - "$ctl.user.7.1.bd.$fname": 666137813, - "$ctl.user.7.1.bd.1": 1100301443, - "$ctl.user.7.1.bd.2": 1729692608, - "$ctl.user.7.1.bd.3": 2710162229, - "$ctl.user.7.2": 3453119576, - "$ctl.user.7.2.led": 510676311, - "$ctl.user.7.2.col": 1224733751, - "$ctl.user.7.2.enc": 1376723187, - "$ctl.user.7.2.enc.mode": 2773705067, - "$ctl.user.7.2.enc.name": 2975911510, - "$ctl.user.7.2.enc.$fname": 1948958964, - "$ctl.user.7.2.enc.1": 1754680274, - "$ctl.user.7.2.enc.2": 2562137215, - "$ctl.user.7.2.enc.3": 3999430916, - "$ctl.user.7.2.bu": 1542235983, - "$ctl.user.7.2.bu.mode": 1986932272, - "$ctl.user.7.2.bu.name": 2750133411, - "$ctl.user.7.2.bu.$fname": 3196990257, - "$ctl.user.7.2.bu.1": 265455636, - "$ctl.user.7.2.bu.2": 2245052047, - "$ctl.user.7.2.bu.3": 3537800538, - "$ctl.user.7.2.bd": 939817523, - "$ctl.user.7.2.bd.mode": 3676380686, - "$ctl.user.7.2.bd.name": 2563456935, - "$ctl.user.7.2.bd.$fname": 3936494807, - "$ctl.user.7.2.bd.1": 2311330901, - "$ctl.user.7.2.bd.2": 3119133582, - "$ctl.user.7.2.bd.3": 4005251811, - "$ctl.user.7.3": 1473558910, - "$ctl.user.7.3.led": 221791629, - "$ctl.user.7.3.col": 705672081, - "$ctl.user.7.3.enc": 493538877, - "$ctl.user.7.3.enc.mode": 1153445555, - "$ctl.user.7.3.enc.name": 1130818318, - "$ctl.user.7.3.enc.$fname": 1536670986, - "$ctl.user.7.3.enc.1": 1210151908, - "$ctl.user.7.3.enc.2": 2434917041, - "$ctl.user.7.3.enc.3": 3113629042, - "$ctl.user.7.3.bu": 1123847114, - "$ctl.user.7.3.bu.mode": 884341230, - "$ctl.user.7.3.bu.name": 3465281552, - "$ctl.user.7.3.bu.$fname": 263217890, - "$ctl.user.7.3.bu.1": 480619598, - "$ctl.user.7.3.bu.2": 1946334485, - "$ctl.user.7.3.bu.3": 3165429472, - "$ctl.user.7.3.bd": 521469619, - "$ctl.user.7.3.bd.mode": 3934825308, - "$ctl.user.7.3.bd.name": 2711335017, - "$ctl.user.7.3.bd.$fname": 3786143733, - "$ctl.user.7.3.bd.1": 1016343823, - "$ctl.user.7.3.bd.2": 1813650580, - "$ctl.user.7.3.bd.3": 2626368137, - "$ctl.user.7.4": 668395705, - "$ctl.user.7.4.led": 41656091, - "$ctl.user.7.4.col": 1394686859, - "$ctl.user.7.4.enc": 876386967, - "$ctl.user.7.4.enc.mode": 1477725250, - "$ctl.user.7.4.enc.name": 2683396333, - "$ctl.user.7.4.enc.$fname": 2603085132, - "$ctl.user.7.4.enc.1": 922013582, - "$ctl.user.7.4.enc.2": 2051987195, - "$ctl.user.7.4.enc.3": 3496558856, - "$ctl.user.7.4.bu": 478981924, - "$ctl.user.7.4.bu.mode": 793029727, - "$ctl.user.7.4.bu.name": 755710731, - "$ctl.user.7.4.bu.$fname": 3826103609, - "$ctl.user.7.4.bu.1": 183340544, - "$ctl.user.7.4.bu.2": 2333064387, - "$ctl.user.7.4.bu.3": 3450279086, - "$ctl.user.7.4.bd": 4272221454, - "$ctl.user.7.4.bd.mode": 2879874049, - "$ctl.user.7.4.bd.name": 3661952306, - "$ctl.user.7.4.bd.$fname": 572470262, - "$ctl.user.7.4.bd.1": 834363601, - "$ctl.user.7.4.bd.2": 1681385394, - "$ctl.user.7.4.bd.3": 2759257991, - "$ctl.user.8": 896974713, - "$ctl.user.8.1": 1620677182, - "$ctl.user.8.1.led": 2715358803, - "$ctl.user.8.1.col": 973937849, - "$ctl.user.8.1.enc": 2207930806, - "$ctl.user.8.1.enc.mode": 2534916945, - "$ctl.user.8.1.enc.name": 933933821, - "$ctl.user.8.1.enc.$fname": 391148152, - "$ctl.user.8.1.enc.1": 1517424751, - "$ctl.user.8.1.enc.2": 382198050, - "$ctl.user.8.1.enc.3": 3882725825, - "$ctl.user.8.1.bu": 3355678875, - "$ctl.user.8.1.bu.mode": 694222014, - "$ctl.user.8.1.bu.name": 571167360, - "$ctl.user.8.1.bu.$fname": 1759619826, - "$ctl.user.8.1.bu.1": 1155752533, - "$ctl.user.8.1.bu.2": 515965326, - "$ctl.user.8.1.bu.3": 3520705763, - "$ctl.user.8.1.bd": 2288727653, - "$ctl.user.8.1.bd.mode": 4264068266, - "$ctl.user.8.1.bd.name": 3396959584, - "$ctl.user.8.1.bd.$fname": 572033204, - "$ctl.user.8.1.bd.1": 2300922436, - "$ctl.user.8.1.bd.2": 2135431583, - "$ctl.user.8.1.bd.3": 963517642, - "$ctl.user.8.2": 924150284, - "$ctl.user.8.2.led": 3124225493, - "$ctl.user.8.2.col": 476021167, - "$ctl.user.8.2.enc": 2653589804, - "$ctl.user.8.2.enc.mode": 456748478, - "$ctl.user.8.2.enc.name": 463603623, - "$ctl.user.8.2.enc.$fname": 862351762, - "$ctl.user.8.2.enc.1": 2634134069, - "$ctl.user.8.2.enc.2": 1278714056, - "$ctl.user.8.2.enc.3": 4202558651, - "$ctl.user.8.2.bu": 821266203, - "$ctl.user.8.2.bu.mode": 1916549252, - "$ctl.user.8.2.bu.name": 4202829658, - "$ctl.user.8.2.bu.$fname": 1722185392, - "$ctl.user.8.2.bu.1": 1140004787, - "$ctl.user.8.2.bu.2": 301021264, - "$ctl.user.8.2.bu.3": 3735701029, - "$ctl.user.8.2.bd": 1633379303, - "$ctl.user.8.2.bd.mode": 4099659844, - "$ctl.user.8.2.bd.name": 3246281473, - "$ctl.user.8.2.bd.$fname": 657407062, - "$ctl.user.8.2.bd.1": 2777905682, - "$ctl.user.8.2.bd.2": 1259989809, - "$ctl.user.8.2.bd.3": 496997180, - "$ctl.user.8.3": 1099810250, - "$ctl.user.8.3.led": 2982766463, - "$ctl.user.8.3.col": 2305759557, - "$ctl.user.8.3.enc": 2170503874, - "$ctl.user.8.3.enc.mode": 3129501002, - "$ctl.user.8.3.enc.name": 2661959303, - "$ctl.user.8.3.enc.$fname": 3472683254, - "$ctl.user.8.3.enc.1": 1808148931, - "$ctl.user.8.3.enc.2": 764508822, - "$ctl.user.8.3.enc.3": 3674905325, - "$ctl.user.8.3.bu": 2581820822, - "$ctl.user.8.3.bu.mode": 227848810, - "$ctl.user.8.3.bu.name": 3793857972, - "$ctl.user.8.3.bu.$fname": 1287950323, - "$ctl.user.8.3.bu.1": 2970001753, - "$ctl.user.8.3.bu.2": 1491251146, - "$ctl.user.8.3.bu.3": 264373919, - "$ctl.user.8.3.bd": 3393933927, - "$ctl.user.8.3.bd.mode": 3635686682, - "$ctl.user.8.3.bd.name": 3528336363, - "$ctl.user.8.3.bd.$fname": 4200916452, - "$ctl.user.8.3.bd.1": 3265519928, - "$ctl.user.8.3.bd.2": 1086947371, - "$ctl.user.8.3.bd.3": 4293866390, - "$ctl.user.8.4": 2450079493, - "$ctl.user.8.4.led": 2799374673, - "$ctl.user.8.4.col": 795745707, - "$ctl.user.8.4.enc": 2276113976, - "$ctl.user.8.4.enc.mode": 3445755822, - "$ctl.user.8.4.enc.name": 1292494455, - "$ctl.user.8.4.enc.$fname": 1733471330, - "$ctl.user.8.4.enc.1": 1585546537, - "$ctl.user.8.4.enc.2": 314097148, - "$ctl.user.8.4.enc.3": 3825162119, - "$ctl.user.8.4.bu": 1926473112, - "$ctl.user.8.4.bu.mode": 3563561258, - "$ctl.user.8.4.bu.name": 1572241481, - "$ctl.user.8.4.bu.$fname": 1920663230, - "$ctl.user.8.4.bu.1": 788844135, - "$ctl.user.8.4.bu.2": 652181244, - "$ctl.user.8.4.bu.3": 4055465201, - "$ctl.user.8.4.bd": 691749090, - "$ctl.user.8.4.bd.mode": 2150587328, - "$ctl.user.8.4.bd.name": 2138625317, - "$ctl.user.8.4.bd.$fname": 1099541081, - "$ctl.user.8.4.bd.1": 3082208982, - "$ctl.user.8.4.bd.2": 935042637, - "$ctl.user.8.4.bd.3": 150855800, - "$ctl.user.9": 2247712275, - "$ctl.user.9.1": 763694442, - "$ctl.user.9.1.led": 832868289, - "$ctl.user.9.1.col": 1588701318, - "$ctl.user.9.1.enc": 2481105577, - "$ctl.user.9.1.enc.mode": 2733440333, - "$ctl.user.9.1.enc.name": 3570410743, - "$ctl.user.9.1.enc.$fname": 4202190950, - "$ctl.user.9.1.enc.1": 1782759608, - "$ctl.user.9.1.enc.2": 2802550597, - "$ctl.user.9.1.enc.3": 4153283390, - "$ctl.user.9.1.bu": 3159881071, - "$ctl.user.9.1.bu.mode": 2169376894, - "$ctl.user.9.1.bu.name": 930107196, - "$ctl.user.9.1.bu.$fname": 4143002375, - "$ctl.user.9.1.bu.1": 3766413815, - "$ctl.user.9.1.bu.2": 2300862700, - "$ctl.user.9.1.bu.3": 1066039361, - "$ctl.user.9.1.bd": 3166680977, - "$ctl.user.9.1.bd.mode": 3369427746, - "$ctl.user.9.1.bd.name": 2122006748, - "$ctl.user.9.1.bd.$fname": 1593813627, - "$ctl.user.9.1.bd.1": 3125389798, - "$ctl.user.9.1.bd.2": 2946801917, - "$ctl.user.9.1.bd.3": 1761458376, - "$ctl.user.9.2": 67740664, - "$ctl.user.9.2.led": 1151622911, - "$ctl.user.9.2.col": 2107883120, - "$ctl.user.9.2.enc": 2329076019, - "$ctl.user.9.2.enc.mode": 1347106451, - "$ctl.user.9.2.enc.name": 186174341, - "$ctl.user.9.2.enc.$fname": 522367180, - "$ctl.user.9.2.enc.1": 1945264402, - "$ctl.user.9.2.enc.2": 3290126783, - "$ctl.user.9.2.enc.3": 4001250884, - "$ctl.user.9.2.bu": 635963119, - "$ctl.user.9.2.bu.mode": 1359398504, - "$ctl.user.9.2.bu.name": 259251586, - "$ctl.user.9.2.bu.$fname": 978733329, - "$ctl.user.9.2.bu.1": 4084113364, - "$ctl.user.9.2.bu.2": 1089781839, - "$ctl.user.9.2.bu.3": 2411378970, - "$ctl.user.9.2.bd": 2521815507, - "$ctl.user.9.2.bd.mode": 1931754497, - "$ctl.user.9.2.bd.name": 3734897773, - "$ctl.user.9.2.bd.$fname": 1169474234, - "$ctl.user.9.2.bd.1": 3982522296, - "$ctl.user.9.2.bd.2": 2000539819, - "$ctl.user.9.2.bd.3": 694607382, - "$ctl.user.9.3": 904092126, - "$ctl.user.9.3.led": 1837893461, - "$ctl.user.9.3.col": 2161354154, - "$ctl.user.9.3.enc": 2014745469, - "$ctl.user.9.3.enc.mode": 968394465, - "$ctl.user.9.3.enc.name": 2636064877, - "$ctl.user.9.3.enc.$fname": 3308251688, - "$ctl.user.9.3.enc.1": 989190436, - "$ctl.user.9.3.enc.2": 2253266929, - "$ctl.user.9.3.enc.3": 3689544370, - "$ctl.user.9.3.bu": 2365048938, - "$ctl.user.9.3.bu.mode": 1697423197, - "$ctl.user.9.3.bu.name": 4157726408, - "$ctl.user.9.3.bu.$fname": 934717035, - "$ctl.user.9.3.bu.1": 3798083635, - "$ctl.user.9.3.bu.2": 1829123792, - "$ctl.user.9.3.bu.3": 866679461, - "$ctl.user.9.3.bd": 4250901331, - "$ctl.user.9.3.bd.mode": 1330373659, - "$ctl.user.9.3.bd.name": 1443809971, - "$ctl.user.9.3.bd.$fname": 914299596, - "$ctl.user.9.3.bd.1": 3327148690, - "$ctl.user.9.3.bd.2": 2655914417, - "$ctl.user.9.3.bd.3": 1381420988, - "$ctl.user.9.4": 1572712729, - "$ctl.user.9.4.led": 719303139, - "$ctl.user.9.4.col": 1327331524, - "$ctl.user.9.4.enc": 1862840279, - "$ctl.user.9.4.enc.mode": 2857160503, - "$ctl.user.9.4.enc.name": 376005883, - "$ctl.user.9.4.enc.$fname": 673202846, - "$ctl.user.9.4.enc.1": 1151898830, - "$ctl.user.9.4.enc.2": 2069546043, - "$ctl.user.9.4.enc.3": 3537720904, - "$ctl.user.9.4.bu": 1720183428, - "$ctl.user.9.4.bu.mode": 3011204080, - "$ctl.user.9.4.bu.name": 1794183299, - "$ctl.user.9.4.bu.$fname": 2100557472, - "$ctl.user.9.4.bu.1": 3492894149, - "$ctl.user.9.4.bu.2": 2139883166, - "$ctl.user.9.4.bu.3": 1227550867, - "$ctl.user.9.4.bd": 1559211182, - "$ctl.user.9.4.bd.mode": 107649113, - "$ctl.user.9.4.bd.name": 2484598369, - "$ctl.user.9.4.bd.$fname": 3675943510, - "$ctl.user.9.4.bd.1": 2841060916, - "$ctl.user.9.4.bd.2": 2874942639, - "$ctl.user.9.4.bd.3": 1834167482, - "$ctl.user.10": 1242920334, - "$ctl.user.10.1": 4043878643, - "$ctl.user.10.1.led": 1492168966, - "$ctl.user.10.1.col": 435291466, - "$ctl.user.10.1.enc": 3674927137, - "$ctl.user.10.1.enc.mode": 1881265903, - "$ctl.user.10.1.enc.name": 2105688021, - "$ctl.user.10.1.enc.$fname": 2876407036, - "$ctl.user.10.1.enc.1": 566790239, - "$ctl.user.10.1.enc.2": 835661401, - "$ctl.user.10.1.enc.3": 2198656115, - "$ctl.user.10.1.bu": 4079436396, - "$ctl.user.10.1.bu.mode": 1532035527, - "$ctl.user.10.1.bu.name": 3608944411, - "$ctl.user.10.1.bu.$fname": 3211955582, - "$ctl.user.10.1.bu.1": 4175849562, - "$ctl.user.10.1.bu.2": 824316481, - "$ctl.user.10.1.bu.3": 777501419, - "$ctl.user.10.1.bd": 590311296, - "$ctl.user.10.1.bd.mode": 2437833229, - "$ctl.user.10.1.bd.name": 849282477, - "$ctl.user.10.1.bd.$fname": 70918148, - "$ctl.user.10.1.bd.1": 1601292509, - "$ctl.user.10.1.bd.2": 3043496615, - "$ctl.user.10.1.bd.3": 3002579834, - "$ctl.user.10.2": 417706088, - "$ctl.user.10.2.led": 63239435, - "$ctl.user.10.2.col": 701507957, - "$ctl.user.10.2.enc": 800031804, - "$ctl.user.10.2.enc.mode": 3349481044, - "$ctl.user.10.2.enc.name": 1342426962, - "$ctl.user.10.2.enc.$fname": 4098653068, - "$ctl.user.10.2.enc.1": 3973620818, - "$ctl.user.10.2.enc.2": 1386953308, - "$ctl.user.10.2.enc.3": 2446127222, - "$ctl.user.10.2.bu": 3423862377, - "$ctl.user.10.2.bu.mode": 1624504941, - "$ctl.user.10.2.bu.name": 3684324123, - "$ctl.user.10.2.bu.$fname": 3589327375, - "$ctl.user.10.2.bu.1": 148986967, - "$ctl.user.10.2.bu.2": 3510261316, - "$ctl.user.10.2.bu.3": 2828236526, - "$ctl.user.10.2.bd": 3025908637, - "$ctl.user.10.2.bd.mode": 165652019, - "$ctl.user.10.2.bd.name": 3206605077, - "$ctl.user.10.2.bd.$fname": 2402285461, - "$ctl.user.10.2.bd.1": 977972416, - "$ctl.user.10.2.bd.2": 212020906, - "$ctl.user.10.2.bd.3": 3824953207, - "$ctl.user.10.3": 1337959349, - "$ctl.user.10.3.led": 926725836, - "$ctl.user.10.3.col": 2932396255, - "$ctl.user.10.3.enc": 1134203671, - "$ctl.user.10.3.enc.mode": 2087955875, - "$ctl.user.10.3.enc.name": 3026480274, - "$ctl.user.10.3.enc.$fname": 1505847910, - "$ctl.user.10.3.enc.1": 954116505, - "$ctl.user.10.3.enc.2": 551231775, - "$ctl.user.10.3.enc.3": 3818545605, - "$ctl.user.10.3.bu": 1933724675, - "$ctl.user.10.3.bu.mode": 4105408977, - "$ctl.user.10.3.bu.name": 4173385473, - "$ctl.user.10.3.bu.$fname": 3071548776, - "$ctl.user.10.3.bu.1": 2029113165, - "$ctl.user.10.3.bu.2": 2971011886, - "$ctl.user.10.3.bu.3": 2926429316, - "$ctl.user.10.3.bd": 2739546423, - "$ctl.user.10.3.bd.mode": 3602076167, - "$ctl.user.10.3.bd.name": 2325149139, - "$ctl.user.10.3.bd.$fname": 2547757118, - "$ctl.user.10.3.bd.1": 3748028362, - "$ctl.user.10.3.bd.2": 897416096, - "$ctl.user.10.3.bd.3": 853652717, - "$ctl.user.10.4": 1737974748, - "$ctl.user.10.4.led": 2183215814, - "$ctl.user.10.4.col": 99116250, - "$ctl.user.10.4.enc": 2634831634, - "$ctl.user.10.4.enc.mode": 1373802543, - "$ctl.user.10.4.enc.name": 1223066282, - "$ctl.user.10.4.enc.$fname": 244277703, - "$ctl.user.10.4.enc.1": 3754702236, - "$ctl.user.10.4.enc.2": 2046278930, - "$ctl.user.10.4.enc.3": 986738136, - "$ctl.user.10.4.bu": 3955202076, - "$ctl.user.10.4.bu.mode": 406269965, - "$ctl.user.10.4.bu.name": 122026151, - "$ctl.user.10.4.bu.$fname": 63204939, - "$ctl.user.10.4.bu.1": 1099305802, - "$ctl.user.10.4.bu.2": 1883488081, - "$ctl.user.10.4.bu.3": 4036235419, - "$ctl.user.10.4.bd": 2495061296, - "$ctl.user.10.4.bd.mode": 3777535447, - "$ctl.user.10.4.bd.name": 623175189, - "$ctl.user.10.4.bd.$fname": 1617170869, - "$ctl.user.10.4.bd.1": 368276429, - "$ctl.user.10.4.bd.2": 1157916599, - "$ctl.user.10.4.bd.3": 3303936234, - "$ctl.user.11": 1932748129, - "$ctl.user.11.1": 2792730247, - "$ctl.user.11.1.led": 365775111, - "$ctl.user.11.1.col": 346122455, - "$ctl.user.11.1.enc": 3532558892, - "$ctl.user.11.1.enc.mode": 1675545521, - "$ctl.user.11.1.enc.name": 3120170623, - "$ctl.user.11.1.enc.$fname": 1854430020, - "$ctl.user.11.1.enc.1": 2324665250, - "$ctl.user.11.1.enc.2": 3119131692, - "$ctl.user.11.1.enc.3": 3935164006, - "$ctl.user.11.1.bu": 820242319, - "$ctl.user.11.1.bu.mode": 1792055947, - "$ctl.user.11.1.bu.name": 3617080889, - "$ctl.user.11.1.bu.$fname": 3342641165, - "$ctl.user.11.1.bu.1": 1924229569, - "$ctl.user.11.1.bu.2": 1063940314, - "$ctl.user.11.1.bu.3": 895705136, - "$ctl.user.11.1.bd": 1166790347, - "$ctl.user.11.1.bd.mode": 4237210389, - "$ctl.user.11.1.bd.name": 3016968791, - "$ctl.user.11.1.bd.$fname": 2578687671, - "$ctl.user.11.1.bd.1": 3508189790, - "$ctl.user.11.1.bd.2": 2144540532, - "$ctl.user.11.1.bd.3": 1976310433, - "$ctl.user.11.2": 1327079444, - "$ctl.user.11.2.led": 2313739528, - "$ctl.user.11.2.col": 2820070550, - "$ctl.user.11.2.enc": 3931625063, - "$ctl.user.11.2.enc.mode": 4184442015, - "$ctl.user.11.2.enc.name": 2390646493, - "$ctl.user.11.2.enc.$fname": 2319584849, - "$ctl.user.11.2.enc.1": 2999033737, - "$ctl.user.11.2.enc.2": 2717403215, - "$ctl.user.11.2.enc.3": 1115677333, - "$ctl.user.11.2.bu": 1087853490, - "$ctl.user.11.2.bu.mode": 1951201457, - "$ctl.user.11.2.bu.name": 3792061453, - "$ctl.user.11.2.bu.$fname": 3720253960, - "$ctl.user.11.2.bu.1": 2190888388, - "$ctl.user.11.2.bu.2": 3480356055, - "$ctl.user.11.2.bu.3": 2772945933, - "$ctl.user.11.2.bd": 3581895374, - "$ctl.user.11.2.bd.mode": 2635208987, - "$ctl.user.11.2.bd.name": 4199637051, - "$ctl.user.11.2.bd.$fname": 1412765874, - "$ctl.user.11.2.bd.1": 3240210011, - "$ctl.user.11.2.bd.2": 4021822321, - "$ctl.user.11.2.bd.3": 1709692580, - "$ctl.user.11.3": 427777057, - "$ctl.user.11.3.led": 2538542473, - "$ctl.user.11.3.col": 954263124, - "$ctl.user.11.3.enc": 1735556414, - "$ctl.user.11.3.enc.mode": 3424020960, - "$ctl.user.11.3.enc.name": 3048397531, - "$ctl.user.11.3.enc.$fname": 492231292, - "$ctl.user.11.3.enc.1": 1974858656, - "$ctl.user.11.3.enc.2": 3406675406, - "$ctl.user.11.3.enc.3": 2305279284, - "$ctl.user.11.3.bu": 1983174880, - "$ctl.user.11.3.bu.mode": 3097639777, - "$ctl.user.11.3.bu.name": 1274461610, - "$ctl.user.11.3.bu.$fname": 2209460965, - "$ctl.user.11.3.bu.1": 1971794742, - "$ctl.user.11.3.bu.2": 3250880469, - "$ctl.user.11.3.bu.3": 1909022847, - "$ctl.user.11.3.bd": 2727125452, - "$ctl.user.11.3.bd.mode": 1121114279, - "$ctl.user.11.3.bd.name": 836815356, - "$ctl.user.11.3.bd.$fname": 1286240443, - "$ctl.user.11.3.bd.1": 3423916729, - "$ctl.user.11.3.bd.2": 576260419, - "$ctl.user.11.3.bd.3": 1918260758, - "$ctl.user.11.4": 841475920, - "$ctl.user.11.4.led": 55396757, - "$ctl.user.11.4.col": 651242073, - "$ctl.user.11.4.enc": 99066153, - "$ctl.user.11.4.enc.mode": 1905059146, - "$ctl.user.11.4.enc.name": 1714889916, - "$ctl.user.11.4.enc.$fname": 1171986124, - "$ctl.user.11.4.enc.1": 926646231, - "$ctl.user.11.4.enc.2": 245127617, - "$ctl.user.11.4.enc.3": 3857699131, - "$ctl.user.11.4.bu": 3738966982, - "$ctl.user.11.4.bu.mode": 1980286488, - "$ctl.user.11.4.bu.name": 4201279098, - "$ctl.user.11.4.bu.$fname": 3980288222, - "$ctl.user.11.4.bu.1": 3976798640, - "$ctl.user.11.4.bu.2": 2855024875, - "$ctl.user.11.4.bu.3": 2052565057, - "$ctl.user.11.4.bd": 2587105018, - "$ctl.user.11.4.bd.mode": 2971576830, - "$ctl.user.11.4.bd.name": 3947937740, - "$ctl.user.11.4.bd.$fname": 2890254836, - "$ctl.user.11.4.bd.1": 1752991239, - "$ctl.user.11.4.bd.2": 971459453, - "$ctl.user.11.4.bd.3": 164258512, - "$ctl.user.12": 2600642471, - "$ctl.user.12.1": 3492773801, - "$ctl.user.12.1.led": 259072372, - "$ctl.user.12.1.col": 792095032, - "$ctl.user.12.1.enc": 2950737827, - "$ctl.user.12.1.enc.mode": 2346891402, - "$ctl.user.12.1.enc.name": 2126547953, - "$ctl.user.12.1.enc.$fname": 3421817661, - "$ctl.user.12.1.enc.1": 3443050029, - "$ctl.user.12.1.enc.2": 2358571083, - "$ctl.user.12.1.enc.3": 670339761, - "$ctl.user.12.1.bu": 3964125079, - "$ctl.user.12.1.bu.mode": 3632619354, - "$ctl.user.12.1.bu.name": 885994378, - "$ctl.user.12.1.bu.$fname": 2389966158, - "$ctl.user.12.1.bu.1": 3935149097, - "$ctl.user.12.1.bu.2": 2634782370, - "$ctl.user.12.1.bu.3": 3347855384, - "$ctl.user.12.1.bd": 2528080995, - "$ctl.user.12.1.bd.mode": 561496212, - "$ctl.user.12.1.bd.name": 388767856, - "$ctl.user.12.1.bd.$fname": 1183588920, - "$ctl.user.12.1.bd.1": 1811672230, - "$ctl.user.12.1.bd.2": 1014755164, - "$ctl.user.12.1.bd.3": 3336956041, - "$ctl.user.12.2": 3316961010, - "$ctl.user.12.2.led": 3451227490, - "$ctl.user.12.2.col": 183526652, - "$ctl.user.12.2.enc": 849701402, - "$ctl.user.12.2.enc.mode": 552692800, - "$ctl.user.12.2.enc.name": 2955372558, - "$ctl.user.12.2.enc.$fname": 3751959430, - "$ctl.user.12.2.enc.1": 1781074324, - "$ctl.user.12.2.enc.2": 3662729082, - "$ctl.user.12.2.enc.3": 3128220416, - "$ctl.user.12.2.bu": 3499361175, - "$ctl.user.12.2.bu.mode": 2466599183, - "$ctl.user.12.2.bu.name": 3494842751, - "$ctl.user.12.2.bu.$fname": 2549348667, - "$ctl.user.12.2.bu.1": 641837097, - "$ctl.user.12.2.bu.2": 1405375138, - "$ctl.user.12.2.bu.3": 197098520, - "$ctl.user.12.2.bd": 1341927523, - "$ctl.user.12.2.bd.mode": 1761056681, - "$ctl.user.12.2.bd.name": 715927589, - "$ctl.user.12.2.bd.$fname": 3691811429, - "$ctl.user.12.2.bd.1": 850659494, - "$ctl.user.12.2.bd.2": 2284835676, - "$ctl.user.12.2.bd.3": 3761405065, - "$ctl.user.12.3": 2464539935, - "$ctl.user.12.3.led": 3252998453, - "$ctl.user.12.3.col": 94956401, - "$ctl.user.12.3.enc": 2604989433, - "$ctl.user.12.3.enc.mode": 735752520, - "$ctl.user.12.3.enc.name": 3193494262, - "$ctl.user.12.3.enc.$fname": 2374559382, - "$ctl.user.12.3.enc.1": 2699961607, - "$ctl.user.12.3.enc.2": 2744499697, - "$ctl.user.12.3.enc.3": 1362259211, - "$ctl.user.12.3.bu": 3806479178, - "$ctl.user.12.3.bu.mode": 3859562978, - "$ctl.user.12.3.bu.name": 3381311328, - "$ctl.user.12.3.bu.$fname": 3327114718, - "$ctl.user.12.3.bu.1": 3751395036, - "$ctl.user.12.3.bu.2": 840700943, - "$ctl.user.12.3.bu.3": 127781573, - "$ctl.user.12.3.bd": 863680086, - "$ctl.user.12.3.bd.mode": 3640452040, - "$ctl.user.12.3.bd.name": 3831515834, - "$ctl.user.12.3.bd.$fname": 556302361, - "$ctl.user.12.3.bd.1": 1663811155, - "$ctl.user.12.3.bd.2": 2376995753, - "$ctl.user.12.3.bd.3": 54815356, - "$ctl.user.12.4": 1215338086, - "$ctl.user.12.4.led": 2585853277, - "$ctl.user.12.4.col": 4153452401, - "$ctl.user.12.4.enc": 4274132880, - "$ctl.user.12.4.enc.mode": 581016760, - "$ctl.user.12.4.enc.name": 1978090310, - "$ctl.user.12.4.enc.$fname": 3684376522, - "$ctl.user.12.4.enc.1": 493640078, - "$ctl.user.12.4.enc.2": 906846688, - "$ctl.user.12.4.enc.3": 1589125274, - "$ctl.user.12.4.bu": 2988390215, - "$ctl.user.12.4.bu.mode": 1489725674, - "$ctl.user.12.4.bu.name": 3540592680, - "$ctl.user.12.4.bu.$fname": 3352167115, - "$ctl.user.12.4.bu.1": 1885231833, - "$ctl.user.12.4.bu.2": 2933530674, - "$ctl.user.12.4.bu.3": 1994374856, - "$ctl.user.12.4.bd": 3333915219, - "$ctl.user.12.4.bd.mode": 2524540096, - "$ctl.user.12.4.bd.name": 1038252898, - "$ctl.user.12.4.bd.$fname": 10887393, - "$ctl.user.12.4.bd.1": 3823749718, - "$ctl.user.12.4.bd.2": 242223020, - "$ctl.user.12.4.bd.3": 914345593, - "$ctl.user.13": 3950734938, - "$ctl.user.13.1": 2721607074, - "$ctl.user.13.1.led": 2501342560, - "$ctl.user.13.1.col": 2993637994, - "$ctl.user.13.1.enc": 3875521291, - "$ctl.user.13.1.enc.mode": 2050625401, - "$ctl.user.13.1.enc.name": 1324218095, - "$ctl.user.13.1.enc.$fname": 1151693653, - "$ctl.user.13.1.enc.1": 366180677, - "$ctl.user.13.1.enc.2": 805589171, - "$ctl.user.13.1.enc.3": 2228728345, - "$ctl.user.13.1.bu": 1642909165, - "$ctl.user.13.1.bu.mode": 3170591224, - "$ctl.user.13.1.bu.name": 2277679676, - "$ctl.user.13.1.bu.$fname": 1670012930, - "$ctl.user.13.1.bu.1": 1656705699, - "$ctl.user.13.1.bu.2": 2673641512, - "$ctl.user.13.1.bu.3": 3308339602, - "$ctl.user.13.1.bd": 3025447673, - "$ctl.user.13.1.bd.mode": 2767859426, - "$ctl.user.13.1.bd.name": 511231061, - "$ctl.user.13.1.bd.$fname": 738879276, - "$ctl.user.13.1.bd.1": 4132232748, - "$ctl.user.13.1.bd.2": 513867222, - "$ctl.user.13.1.bd.3": 1153316611, - "$ctl.user.13.2": 1379202297, - "$ctl.user.13.2.led": 4202478066, - "$ctl.user.13.2.col": 3096247926, - "$ctl.user.13.2.enc": 428803872, - "$ctl.user.13.2.enc.mode": 1336907601, - "$ctl.user.13.2.enc.name": 191447007, - "$ctl.user.13.2.enc.$fname": 1538007640, - "$ctl.user.13.2.enc.1": 59737470, - "$ctl.user.13.2.enc.2": 1089105040, - "$ctl.user.13.2.enc.3": 2743975402, - "$ctl.user.13.2.bu": 2787785197, - "$ctl.user.13.2.bu.mode": 3598411574, - "$ctl.user.13.2.bu.name": 3527616808, - "$ctl.user.13.2.bu.$fname": 2047500087, - "$ctl.user.13.2.bu.1": 1348089507, - "$ctl.user.13.2.bu.2": 2531138600, - "$ctl.user.13.2.bu.3": 2711989650, - "$ctl.user.13.2.bd": 2095202041, - "$ctl.user.13.2.bd.mode": 4118422720, - "$ctl.user.13.2.bd.name": 3774367262, - "$ctl.user.13.2.bd.$fname": 2794088545, - "$ctl.user.13.2.bd.1": 4056797740, - "$ctl.user.13.2.bd.2": 1117129174, - "$ctl.user.13.2.bd.3": 1293546243, - "$ctl.user.13.3": 377743116, - "$ctl.user.13.3.led": 763690175, - "$ctl.user.13.3.col": 1225567217, - "$ctl.user.13.3.enc": 66558693, - "$ctl.user.13.3.enc.mode": 244868144, - "$ctl.user.13.3.enc.name": 3836717489, - "$ctl.user.13.3.enc.$fname": 3675494961, - "$ctl.user.13.3.enc.1": 958520123, - "$ctl.user.13.3.enc.2": 106423517, - "$ctl.user.13.3.enc.3": 3994918359, - "$ctl.user.13.3.bu": 1059845475, - "$ctl.user.13.3.bu.mode": 1679793156, - "$ctl.user.13.3.bu.name": 3932472740, - "$ctl.user.13.3.bu.$fname": 3158323104, - "$ctl.user.13.3.bu.1": 2373538285, - "$ctl.user.13.3.bu.2": 3251789966, - "$ctl.user.13.3.bu.3": 2751168996, - "$ctl.user.13.3.bd": 3821256343, - "$ctl.user.13.3.bd.mode": 4029647290, - "$ctl.user.13.3.bd.name": 2097335486, - "$ctl.user.13.3.bd.$fname": 2705315334, - "$ctl.user.13.3.bd.1": 3336746602, - "$ctl.user.13.3.bd.2": 4052428032, - "$ctl.user.13.3.bd.3": 1935946317, - "$ctl.user.13.4": 913746053, - "$ctl.user.13.4.led": 2464641164, - "$ctl.user.13.4.col": 2563194828, - "$ctl.user.13.4.enc": 3331751674, - "$ctl.user.13.4.enc.mode": 2886564886, - "$ctl.user.13.4.enc.name": 3576363620, - "$ctl.user.13.4.enc.$fname": 2554757185, - "$ctl.user.13.4.enc.1": 3046614836, - "$ctl.user.13.4.enc.2": 2648850650, - "$ctl.user.13.4.enc.3": 1726343584, - "$ctl.user.13.4.bu": 702873958, - "$ctl.user.13.4.bu.mode": 2845632245, - "$ctl.user.13.4.bu.name": 1860594189, - "$ctl.user.13.4.bu.$fname": 2629973107, - "$ctl.user.13.4.bu.1": 714540560, - "$ctl.user.13.4.bu.2": 1595823243, - "$ctl.user.13.4.bu.3": 111513057, - "$ctl.user.13.4.bd": 1451029146, - "$ctl.user.13.4.bd.mode": 2998024731, - "$ctl.user.13.4.bd.name": 1368692762, - "$ctl.user.13.4.bd.$fname": 1338092153, - "$ctl.user.13.4.bd.1": 741255783, - "$ctl.user.13.4.bd.2": 2125803805, - "$ctl.user.13.4.bd.3": 2252111472, - "$ctl.user.14": 77493640, - "$ctl.user.14.1": 3506934534, - "$ctl.user.14.1.led": 3941448966, - "$ctl.user.14.1.col": 934345034, - "$ctl.user.14.1.enc": 97723425, - "$ctl.user.14.1.enc.mode": 2611075986, - "$ctl.user.14.1.enc.name": 2483161064, - "$ctl.user.14.1.enc.$fname": 4045384204, - "$ctl.user.14.1.enc.1": 3606774879, - "$ctl.user.14.1.enc.2": 2088688217, - "$ctl.user.14.1.enc.3": 675893363, - "$ctl.user.14.1.bu": 1050631785, - "$ctl.user.14.1.bu.mode": 2228476618, - "$ctl.user.14.1.bu.name": 3483010382, - "$ctl.user.14.1.bu.$fname": 4059066164, - "$ctl.user.14.1.bu.1": 2406267991, - "$ctl.user.14.1.bu.2": 3266246212, - "$ctl.user.14.1.bu.3": 2715735790, - "$ctl.user.14.1.bd": 3785823133, - "$ctl.user.14.1.bd.mode": 2111818256, - "$ctl.user.14.1.bd.name": 3005287312, - "$ctl.user.14.1.bd.$fname": 3945796154, - "$ctl.user.14.1.bd.1": 3372174528, - "$ctl.user.14.1.bd.2": 4058943146, - "$ctl.user.14.1.bd.3": 1903216503, - "$ctl.user.14.2": 2028063701, - "$ctl.user.14.2.led": 963148064, - "$ctl.user.14.2.col": 3189978480, - "$ctl.user.14.2.enc": 3911422012, - "$ctl.user.14.2.enc.mode": 3827638494, - "$ctl.user.14.2.enc.name": 3783541224, - "$ctl.user.14.2.enc.$fname": 3894720380, - "$ctl.user.14.2.enc.1": 3546277970, - "$ctl.user.14.2.enc.2": 1899482716, - "$ctl.user.14.2.enc.3": 3545511030, - "$ctl.user.14.2.bu": 847880809, - "$ctl.user.14.2.bu.mode": 1599363890, - "$ctl.user.14.2.bu.name": 2065336101, - "$ctl.user.14.2.bu.$fname": 997222728, - "$ctl.user.14.2.bu.1": 1909639255, - "$ctl.user.14.2.bu.2": 1031385668, - "$ctl.user.14.2.bu.3": 907942638, - "$ctl.user.14.2.bd": 1178718109, - "$ctl.user.14.2.bd.mode": 3579802092, - "$ctl.user.14.2.bd.name": 2258700587, - "$ctl.user.14.2.bd.$fname": 3232787266, - "$ctl.user.14.2.bd.1": 3496569024, - "$ctl.user.14.2.bd.2": 2114876074, - "$ctl.user.14.2.bd.3": 1990286199, - "$ctl.user.14.3": 801179080, - "$ctl.user.14.3.led": 3420695281, - "$ctl.user.14.3.col": 2258648287, - "$ctl.user.14.3.enc": 2957176599, - "$ctl.user.14.3.enc.mode": 1727215594, - "$ctl.user.14.3.enc.name": 31724872, - "$ctl.user.14.3.enc.$fname": 4291093846, - "$ctl.user.14.3.enc.1": 3427093913, - "$ctl.user.14.3.enc.2": 2352915743, - "$ctl.user.14.3.enc.3": 674694597, - "$ctl.user.14.3.bu": 1290174470, - "$ctl.user.14.3.bu.mode": 4012966414, - "$ctl.user.14.3.bu.name": 1816277174, - "$ctl.user.14.3.bu.$fname": 2257986434, - "$ctl.user.14.3.bu.1": 4272872304, - "$ctl.user.14.3.bu.2": 1265424171, - "$ctl.user.14.3.bu.3": 3916101761, - "$ctl.user.14.3.bd": 697185594, - "$ctl.user.14.3.bd.mode": 1513516648, - "$ctl.user.14.3.bd.name": 1311298468, - "$ctl.user.14.3.bd.$fname": 2136853804, - "$ctl.user.14.3.bd.1": 1159539655, - "$ctl.user.14.3.bd.2": 2614800317, - "$ctl.user.14.3.bd.3": 2579802384, - "$ctl.user.14.4": 1201013833, - "$ctl.user.14.4.led": 3977660145, - "$ctl.user.14.4.col": 693217503, - "$ctl.user.14.4.enc": 3180612370, - "$ctl.user.14.4.enc.mode": 1700967990, - "$ctl.user.14.4.enc.name": 1097214937, - "$ctl.user.14.4.enc.$fname": 2951389196, - "$ctl.user.14.4.enc.1": 3734323612, - "$ctl.user.14.4.enc.2": 1961134354, - "$ctl.user.14.4.enc.3": 535001560, - "$ctl.user.14.4.bu": 3337597980, - "$ctl.user.14.4.bu.mode": 4223072031, - "$ctl.user.14.4.bu.name": 835075424, - "$ctl.user.14.4.bu.$fname": 4198805382, - "$ctl.user.14.4.bu.1": 2233251658, - "$ctl.user.14.4.bu.2": 3261637457, - "$ctl.user.14.4.bu.3": 1645948059, - "$ctl.user.14.4.bd": 2985771312, - "$ctl.user.14.4.bd.mode": 2141739253, - "$ctl.user.14.4.bd.name": 329599410, - "$ctl.user.14.4.bd.$fname": 4075009244, - "$ctl.user.14.4.bd.1": 3501782989, - "$ctl.user.14.4.bd.2": 564847543, - "$ctl.user.14.4.bd.3": 565628138, - "$ctl.user.15": 3430702622, - "$ctl.user.15.1": 2690842562, - "$ctl.user.15.1.led": 904098999, - "$ctl.user.15.1.col": 1450924705, - "$ctl.user.15.1.enc": 1605071368, - "$ctl.user.15.1.enc.mode": 410683067, - "$ctl.user.15.1.enc.name": 2969737641, - "$ctl.user.15.1.enc.$fname": 3596471027, - "$ctl.user.15.1.enc.1": 2099759126, - "$ctl.user.15.1.enc.2": 3702522360, - "$ctl.user.15.1.enc.3": 2016149746, - "$ctl.user.15.1.bu": 507574091, - "$ctl.user.15.1.bu.mode": 4221104666, - "$ctl.user.15.1.bu.name": 4138689149, - "$ctl.user.15.1.bu.$fname": 3748096009, - "$ctl.user.15.1.bu.1": 1486059893, - "$ctl.user.15.1.bu.2": 520642966, - "$ctl.user.15.1.bu.3": 1501915852, - "$ctl.user.15.1.bd": 78152719, - "$ctl.user.15.1.bd.mode": 3329749460, - "$ctl.user.15.1.bd.name": 3401314083, - "$ctl.user.15.1.bd.$fname": 3559430467, - "$ctl.user.15.1.bd.1": 3925390578, - "$ctl.user.15.1.bd.2": 3128239848, - "$ctl.user.15.1.bd.3": 2498367573, - "$ctl.user.15.2": 2824822553, - "$ctl.user.15.2.led": 675358214, - "$ctl.user.15.2.col": 2701190898, - "$ctl.user.15.2.enc": 2701843953, - "$ctl.user.15.2.enc.mode": 4248821325, - "$ctl.user.15.2.enc.name": 2090595875, - "$ctl.user.15.2.enc.$fname": 1012859192, - "$ctl.user.15.2.enc.1": 2608028687, - "$ctl.user.15.2.enc.2": 3108410825, - "$ctl.user.15.2.enc.3": 2335282371, - "$ctl.user.15.2.bu": 577145665, - "$ctl.user.15.2.bu.mode": 1275810898, - "$ctl.user.15.2.bu.name": 1847544285, - "$ctl.user.15.2.bu.$fname": 1089305347, - "$ctl.user.15.2.bu.1": 672523599, - "$ctl.user.15.2.bu.2": 1637993884, - "$ctl.user.15.2.bu.3": 4280417990, - "$ctl.user.15.2.bd": 1409150981, - "$ctl.user.15.2.bd.mode": 535458968, - "$ctl.user.15.2.bd.name": 1446506519, - "$ctl.user.15.2.bd.$fname": 162467273, - "$ctl.user.15.2.bd.1": 783425784, - "$ctl.user.15.2.bd.2": 2251406050, - "$ctl.user.15.2.bd.3": 2210243631, - "$ctl.user.15.3": 3629732460, - "$ctl.user.15.3.led": 1410399729, - "$ctl.user.15.3.col": 2991088840, - "$ctl.user.15.3.enc": 3563797826, - "$ctl.user.15.3.enc.mode": 4093937605, - "$ctl.user.15.3.enc.name": 1024741115, - "$ctl.user.15.3.enc.$fname": 3657755720, - "$ctl.user.15.3.enc.1": 2293119788, - "$ctl.user.15.3.enc.2": 3087770274, - "$ctl.user.15.3.enc.3": 3966371848, - "$ctl.user.15.3.bu": 3639616842, - "$ctl.user.15.3.bu.mode": 3242999768, - "$ctl.user.15.3.bu.name": 1321924444, - "$ctl.user.15.3.bu.$fname": 680517026, - "$ctl.user.15.3.bu.1": 3585966300, - "$ctl.user.15.3.bu.2": 2623418895, - "$ctl.user.15.3.bu.3": 2620364997, - "$ctl.user.15.3.bd": 2807534678, - "$ctl.user.15.3.bd.mode": 2755435010, - "$ctl.user.15.3.bd.name": 765483778, - "$ctl.user.15.3.bd.$fname": 4251470988, - "$ctl.user.15.3.bd.1": 1867414611, - "$ctl.user.15.3.bd.2": 396318121, - "$ctl.user.15.3.bd.3": 398461052, - "$ctl.user.15.4": 542185381, - "$ctl.user.15.4.led": 2852887013, - "$ctl.user.15.4.col": 573251795, - "$ctl.user.15.4.enc": 1582471435, - "$ctl.user.15.4.enc.mode": 3799628834, - "$ctl.user.15.4.enc.name": 1018043096, - "$ctl.user.15.4.enc.$fname": 2868729789, - "$ctl.user.15.4.enc.1": 1048284997, - "$ctl.user.15.4.enc.2": 100542131, - "$ctl.user.15.4.enc.3": 3737771033, - "$ctl.user.15.4.bu": 2391849332, - "$ctl.user.15.4.bu.mode": 1371923279, - "$ctl.user.15.4.bu.name": 3291702463, - "$ctl.user.15.4.bu.$fname": 4027172731, - "$ctl.user.15.4.bu.1": 1078156450, - "$ctl.user.15.4.bu.2": 2177015337, - "$ctl.user.15.4.bu.3": 2982227187, - "$ctl.user.15.4.bd": 2449031224, - "$ctl.user.15.4.bd.mode": 3321358697, - "$ctl.user.15.4.bd.name": 792220261, - "$ctl.user.15.4.bd.$fname": 181593637, - "$ctl.user.15.4.bd.1": 78792741, - "$ctl.user.15.4.bd.2": 842107279, - "$ctl.user.15.4.bd.3": 1647365186, - "$ctl.user.16": 645019780, - "$ctl.user.16.1": 551878047, - "$ctl.user.16.1.led": 2379384983, - "$ctl.user.16.1.col": 1789932726, - "$ctl.user.16.1.enc": 1159021246, - "$ctl.user.16.1.enc.mode": 830886332, - "$ctl.user.16.1.enc.name": 3567438782, - "$ctl.user.16.1.enc.$fname": 2586427862, - "$ctl.user.16.1.enc.1": 940761888, - "$ctl.user.16.1.enc.2": 566549838, - "$ctl.user.16.1.enc.3": 3804702132, - "$ctl.user.16.1.bu": 3659580981, - "$ctl.user.16.1.bu.mode": 699440057, - "$ctl.user.16.1.bu.name": 3301562075, - "$ctl.user.16.1.bu.$fname": 3433904562, - "$ctl.user.16.1.bu.1": 3563383179, - "$ctl.user.16.1.bu.2": 2598867216, - "$ctl.user.16.1.bu.3": 2645572026, - "$ctl.user.16.1.bd": 2832790385, - "$ctl.user.16.1.bd.mode": 2142157171, - "$ctl.user.16.1.bd.name": 614562433, - "$ctl.user.16.1.bd.$fname": 244034540, - "$ctl.user.16.1.bd.1": 1842824500, - "$ctl.user.16.1.bd.2": 379623070, - "$ctl.user.16.1.bd.3": 420429611, - "$ctl.user.16.2": 582967004, - "$ctl.user.16.2.led": 2935354348, - "$ctl.user.16.2.col": 1372946593, - "$ctl.user.16.2.enc": 2850356951, - "$ctl.user.16.2.enc.mode": 1011571748, - "$ctl.user.16.2.enc.name": 3846997754, - "$ctl.user.16.2.enc.$fname": 1578133157, - "$ctl.user.16.2.enc.1": 1917724505, - "$ctl.user.16.2.enc.2": 3799368031, - "$ctl.user.16.2.enc.3": 38955397, - "$ctl.user.16.2.bu": 2919017016, - "$ctl.user.16.2.bu.mode": 2554418021, - "$ctl.user.16.2.bu.name": 441164473, - "$ctl.user.16.2.bu.$fname": 875506108, - "$ctl.user.16.2.bu.1": 3199272334, - "$ctl.user.16.2.bu.2": 2069277933, - "$ctl.user.16.2.bu.3": 2838306231, - "$ctl.user.16.2.bd": 1751388020, - "$ctl.user.16.2.bd.mode": 993146978, - "$ctl.user.16.2.bd.name": 35625903, - "$ctl.user.16.2.bd.$fname": 1041076134, - "$ctl.user.16.2.bd.1": 2588344625, - "$ctl.user.16.2.bd.2": 1788664475, - "$ctl.user.16.2.bd.3": 952271662, - "$ctl.user.16.3": 3587807273, - "$ctl.user.16.3.led": 4156697824, - "$ctl.user.16.3.col": 489521955, - "$ctl.user.16.3.enc": 2168797755, - "$ctl.user.16.3.enc.mode": 1294187100, - "$ctl.user.16.3.enc.name": 1404815922, - "$ctl.user.16.3.enc.$fname": 15067438, - "$ctl.user.16.3.enc.1": 2072597077, - "$ctl.user.16.3.enc.2": 3643832387, - "$ctl.user.16.3.enc.3": 731187785, - "$ctl.user.16.3.bu": 4214750503, - "$ctl.user.16.3.bu.mode": 1462205828, - "$ctl.user.16.3.bu.name": 1532822078, - "$ctl.user.16.3.bu.$fname": 1870258010, - "$ctl.user.16.3.bu.1": 4184627705, - "$ctl.user.16.3.bu.2": 768301330, - "$ctl.user.16.3.bu.3": 939035048, - "$ctl.user.16.3.bd": 667907635, - "$ctl.user.16.3.bd.mode": 341151546, - "$ctl.user.16.3.bd.name": 1042159624, - "$ctl.user.16.3.bd.$fname": 1411023024, - "$ctl.user.16.3.bd.1": 1524346486, - "$ctl.user.16.3.bd.2": 2911382924, - "$ctl.user.16.3.bd.3": 3076991577, - "$ctl.user.16.4": 4156397416, - "$ctl.user.16.4.led": 3908733178, - "$ctl.user.16.4.col": 3293986595, - "$ctl.user.16.4.enc": 1535673941, - "$ctl.user.16.4.enc.mode": 3249145181, - "$ctl.user.16.4.enc.name": 4201474899, - "$ctl.user.16.4.enc.$fname": 571693872, - "$ctl.user.16.4.enc.1": 2700150347, - "$ctl.user.16.4.enc.2": 3100175405, - "$ctl.user.16.4.enc.3": 4222565959, - "$ctl.user.16.4.bu": 500748576, - "$ctl.user.16.4.bu.mode": 2544551797, - "$ctl.user.16.4.bu.name": 214859699, - "$ctl.user.16.4.bu.$fname": 176808697, - "$ctl.user.16.4.bu.1": 782530038, - "$ctl.user.16.4.bu.2": 3810886933, - "$ctl.user.16.4.bu.3": 1118330303, - "$ctl.user.16.4.bd": 40985100, - "$ctl.user.16.4.bd.mode": 466290331, - "$ctl.user.16.4.bd.name": 731410061, - "$ctl.user.16.4.bd.$fname": 1235377615, - "$ctl.user.16.4.bd.1": 674577017, - "$ctl.user.16.4.bd.2": 3535315331, - "$ctl.user.16.4.bd.3": 3526995542, - "$ctl.user.U1": 1777175730, - "$ctl.user.U1.1": 2102861640, - "$ctl.user.U1.1.led": 1472060499, - "$ctl.user.U1.1.col": 2943442705, - "$ctl.user.U1.1.bu": 1895242529, - "$ctl.user.U1.1.bu.mode": 4270250412, - "$ctl.user.U1.1.bu.name": 2855478620, - "$ctl.user.U1.1.bu.$fname": 3968429936, - "$ctl.user.U1.2": 3613148627, - "$ctl.user.U1.2.led": 2056462320, - "$ctl.user.U1.2.col": 3702743782, - "$ctl.user.U1.2.bu": 2399942436, - "$ctl.user.U1.2.bu.mode": 259392, - "$ctl.user.U1.2.bu.name": 4105536872, - "$ctl.user.U1.2.bu.$fname": 3842749212, - "$ctl.user.U1.3": 424884358, - "$ctl.user.U1.3.led": 1788587068, - "$ctl.user.U1.3.col": 1228560552, - "$ctl.user.U1.3.bu": 3232120147, - "$ctl.user.U1.3.bu.mode": 3395670205, - "$ctl.user.U1.3.bu.name": 1168025099, - "$ctl.user.U1.3.bu.$fname": 1030912233, - "$ctl.user.U1.4": 56097151, - "$ctl.user.U1.4.led": 3580711006, - "$ctl.user.U1.4.col": 3654327464, - "$ctl.user.U1.4.bu": 3879651670, - "$ctl.user.U1.4.bu.mode": 4293057310, - "$ctl.user.U1.4.bu.name": 3391122948, - "$ctl.user.U1.4.bu.$fname": 2784247167, - "$ctl.user.U2": 855386984, - "$ctl.user.U2.1": 1480291922, - "$ctl.user.U2.1.led": 1485142175, - "$ctl.user.U2.1.col": 2681555402, - "$ctl.user.U2.1.bu": 3316546138, - "$ctl.user.U2.1.bu.mode": 1773029056, - "$ctl.user.U2.1.bu.name": 1545132622, - "$ctl.user.U2.1.bu.$fname": 2279460881, - "$ctl.user.U2.2": 3630028553, - "$ctl.user.U2.2.led": 2707088491, - "$ctl.user.U2.2.col": 518726734, - "$ctl.user.U2.2.bu": 3226209882, - "$ctl.user.U2.2.bu.mode": 4029561687, - "$ctl.user.U2.2.bu.name": 3550008477, - "$ctl.user.U2.2.bu.$fname": 3411932976, - "$ctl.user.U2.3": 541402364, - "$ctl.user.U2.3.led": 919792753, - "$ctl.user.U2.3.col": 4096950124, - "$ctl.user.U2.3.bu": 3543008008, - "$ctl.user.U2.3.bu.mode": 2703456992, - "$ctl.user.U2.3.bu.name": 756663451, - "$ctl.user.U2.3.bu.$fname": 494220890, - "$ctl.user.U2.4": 1080172181, - "$ctl.user.U2.4.led": 4155869437, - "$ctl.user.U2.4.col": 2472885100, - "$ctl.user.U2.4.bu": 1447507717, - "$ctl.user.U2.4.bu.mode": 1670572314, - "$ctl.user.U2.4.bu.name": 3734475594, - "$ctl.user.U2.4.bu.$fname": 3337815310, - "$ctl.user.U3": 1523946363, - "$ctl.user.U3.1": 2336458619, - "$ctl.user.U3.1.led": 4063493157, - "$ctl.user.U3.1.col": 333889812, - "$ctl.user.U3.1.bu": 3371598519, - "$ctl.user.U3.1.bu.mode": 4031331500, - "$ctl.user.U3.1.bu.name": 2107314780, - "$ctl.user.U3.1.bu.$fname": 2367161456, - "$ctl.user.U3.2": 3647587808, - "$ctl.user.U3.2.led": 1773158432, - "$ctl.user.U3.2.col": 794395929, - "$ctl.user.U3.2.bu": 1611308720, - "$ctl.user.U3.2.bu.mode": 2345418658, - "$ctl.user.U3.2.bu.name": 336367452, - "$ctl.user.U3.2.bu.$fname": 966802776, - "$ctl.user.U3.3": 391089645, - "$ctl.user.U3.3.led": 490604716, - "$ctl.user.U3.3.col": 17051783, - "$ctl.user.U3.3.bu": 665800933, - "$ctl.user.U3.3.bu.mode": 2315182896, - "$ctl.user.U3.3.bu.name": 3756763060, - "$ctl.user.U3.3.bu.$fname": 443479306, - "$ctl.user.U3.4": 4117466532, - "$ctl.user.U3.4.led": 3196841298, - "$ctl.user.U3.4.col": 1476097159, - "$ctl.user.U3.4.bu": 1099865320, - "$ctl.user.U3.4.bu.mode": 1167047916, - "$ctl.user.U3.4.bu.name": 2288874872, - "$ctl.user.U3.4.bu.$fname": 2565916987, - "$ctl.user.U4": 2203615790, - "$ctl.user.U4.1": 2697274574, - "$ctl.user.U4.1.led": 3910198434, - "$ctl.user.U4.1.col": 1723712685, - "$ctl.user.U4.1.bu": 1235118257, - "$ctl.user.U4.1.bu.mode": 955307497, - "$ctl.user.U4.1.bu.name": 1659471986, - "$ctl.user.U4.1.bu.$fname": 725574704, - "$ctl.user.U4.2": 4008263149, - "$ctl.user.U4.2.led": 1932763216, - "$ctl.user.U4.2.col": 1355325585, - "$ctl.user.U4.2.bu": 796458122, - "$ctl.user.U4.2.bu.mode": 4151606853, - "$ctl.user.U4.2.bu.name": 4202901170, - "$ctl.user.U4.2.bu.$fname": 3469182366, - "$ctl.user.U4.3": 1102804448, - "$ctl.user.U4.3.led": 295100, - "$ctl.user.U4.3.col": 2132466908, - "$ctl.user.U4.3.bu": 1167288919, - "$ctl.user.U4.3.bu.mode": 463317853, - "$ctl.user.U4.3.bu.name": 2249640805, - "$ctl.user.U4.3.bu.$fname": 3386621665, - "$ctl.user.U4.4": 534442385, - "$ctl.user.U4.4.led": 4264610986, - "$ctl.user.U4.4.col": 3610810647, - "$ctl.user.U4.4.bu": 1601085008, - "$ctl.user.U4.4.bu.mode": 1579203432, - "$ctl.user.U4.4.bu.name": 1502118979, - "$ctl.user.U4.4.bu.$fname": 3110324498, - "$ctl.user.MM": 3041389860, - "$ctl.user.MM.1": 3517007233, - "$ctl.user.MM.1.led": 1305626675, - "$ctl.user.MM.1.col": 3961862238, - "$ctl.user.MM.1.bu": 756054973, - "$ctl.user.MM.1.bu.mode": 2665341852, - "$ctl.user.MM.1.bu.name": 2555432898, - "$ctl.user.MM.1.bu.$fname": 3197108445, - "$ctl.user.MM.2": 2218985114, - "$ctl.user.MM.2.led": 1911458748, - "$ctl.user.MM.2.col": 1818451058, - "$ctl.user.MM.2.bu": 1343547325, - "$ctl.user.MM.2.bu.mode": 3227344621, - "$ctl.user.MM.2.bu.name": 1120965787, - "$ctl.user.MM.2.bu.$fname": 2567959183, - "$ctl.user.MM.3": 1146442407, - "$ctl.user.MM.3.led": 593775216, - "$ctl.user.MM.3.col": 2177756571, - "$ctl.user.MM.3.bu": 2499382260, - "$ctl.user.MM.3.bu.mode": 2624971820, - "$ctl.user.MM.3.bu.name": 2137215708, - "$ctl.user.MM.3.bu.$fname": 983149563, - "$ctl.user.MM.4": 117527390, - "$ctl.user.MM.4.led": 2172255843, - "$ctl.user.MM.4.col": 2822603184, - "$ctl.user.MM.4.bu": 1853380596, - "$ctl.user.MM.4.bu.mode": 2415255980, - "$ctl.user.MM.4.bu.name": 2112057926, - "$ctl.user.MM.4.bu.$fname": 2904147634, - "$ctl.user.D1": 1517712783, - "$ctl.user.D1.1": 3506964255, - "$ctl.user.D1.1.led": 46275846, - "$ctl.user.D1.1.col": 2216728906, - "$ctl.user.D1.1.bu": 2026962540, - "$ctl.user.D1.1.bu.mode": 2161163979, - "$ctl.user.D1.1.bu.name": 4221320237, - "$ctl.user.D1.1.bu.$fname": 905071204, - "$ctl.user.D1.2": 2028357212, - "$ctl.user.D1.2.led": 438688011, - "$ctl.user.D1.2.col": 2137363829, - "$ctl.user.D1.2.bu": 801915497, - "$ctl.user.D1.2.bu.mode": 4216575342, - "$ctl.user.D1.2.bu.name": 4145696039, - "$ctl.user.D1.2.bu.$fname": 527462226, - "$ctl.user.D1.3": 801050025, - "$ctl.user.D1.3.led": 1299335921, - "$ctl.user.D1.3.col": 2436750559, - "$ctl.user.D1.3.bu": 4154974211, - "$ctl.user.D1.3.bu.mode": 2469654822, - "$ctl.user.D1.3.bu.name": 541089176, - "$ctl.user.D1.3.bu.$fname": 2727634780, - "$ctl.user.D1.4": 1201147368, - "$ctl.user.D1.4.led": 2395645638, - "$ctl.user.D1.4.col": 2284210394, - "$ctl.user.D1.4.bu": 1902728220, - "$ctl.user.D1.4.bu.mode": 666291979, - "$ctl.user.D1.4.bu.name": 1573257353, - "$ctl.user.D1.4.bu.$fname": 1044660015, - "$ctl.user.D2": 2878280741, - "$ctl.user.D2.1": 469808636, - "$ctl.user.D2.1.led": 664690410, - "$ctl.user.D2.1.col": 760534826, - "$ctl.user.D2.1.bu": 2001679241, - "$ctl.user.D2.1.bu.mode": 1673002779, - "$ctl.user.D2.1.bu.name": 3722847908, - "$ctl.user.D2.1.bu.$fname": 136632450, - "$ctl.user.D2.2": 3970149567, - "$ctl.user.D2.2.led": 2877334328, - "$ctl.user.D2.2.col": 3984034862, - "$ctl.user.D2.2.bu": 3412737929, - "$ctl.user.D2.2.bu.mode": 3241688063, - "$ctl.user.D2.2.bu.name": 3563475756, - "$ctl.user.D2.2.bu.$fname": 3634668184, - "$ctl.user.D2.3": 2750721874, - "$ctl.user.D2.3.led": 2016686996, - "$ctl.user.D2.3.col": 1539809535, - "$ctl.user.D2.3.bu": 1480486088, - "$ctl.user.D2.3.bu.mode": 1690028862, - "$ctl.user.D2.3.bu.name": 1996619914, - "$ctl.user.D2.3.bu.$fname": 1725750765, - "$ctl.user.D2.4": 3835813907, - "$ctl.user.D2.4.led": 1198925703, - "$ctl.user.D2.4.col": 94712996, - "$ctl.user.D2.4.bu": 4244568261, - "$ctl.user.D2.4.bu.mode": 3123362230, - "$ctl.user.D2.4.bu.name": 2877264194, - "$ctl.user.D2.4.bu.$fname": 4149947248, - "$ctl.user.D3": 3289519411, - "$ctl.user.D3.1": 1017567923, - "$ctl.user.D3.1.led": 1975042777, - "$ctl.user.D3.1.col": 2935616483, - "$ctl.user.D3.1.bu": 2206148579, - "$ctl.user.D3.1.bu.mode": 1750050182, - "$ctl.user.D3.1.bu.name": 2866068428, - "$ctl.user.D3.1.bu.$fname": 4023429431, - "$ctl.user.D3.2": 223118376, - "$ctl.user.D3.2.led": 4074602070, - "$ctl.user.D3.2.col": 1263005720, - "$ctl.user.D3.2.bu": 1833700326, - "$ctl.user.D3.2.bu.mode": 2093785128, - "$ctl.user.D3.2.bu.name": 240552048, - "$ctl.user.D3.2.bu.$fname": 2974972596, - "$ctl.user.D3.3": 3277991285, - "$ctl.user.D3.3.led": 2538909622, - "$ctl.user.D3.3.col": 432083958, - "$ctl.user.D3.3.bu": 2848585937, - "$ctl.user.D3.3.bu.mode": 2604990810, - "$ctl.user.D3.3.bu.name": 2337620468, - "$ctl.user.D3.3.bu.$fname": 2544097931, - "$ctl.user.D3.4": 67648668, - "$ctl.user.D3.4.led": 1980304376, - "$ctl.user.D3.4.col": 3130032123, - "$ctl.user.D3.4.bu": 1302818004, - "$ctl.user.D3.4.bu.mode": 96617574, - "$ctl.user.D3.4.bu.name": 383222766, - "$ctl.user.D3.4.bu.$fname": 1193630378, - "$ctl.user.D4": 2347752422, - "$ctl.user.D4.1": 4001901064, - "$ctl.user.D4.1.led": 1361419997, - "$ctl.user.D4.1.col": 3971584913, - "$ctl.user.D4.1.bu": 1722728572, - "$ctl.user.D4.1.bu.mode": 893569895, - "$ctl.user.D4.1.bu.name": 2588573137, - "$ctl.user.D4.1.bu.$fname": 3019910421, - "$ctl.user.D4.2": 1980512403, - "$ctl.user.D4.2.led": 1261122217, - "$ctl.user.D4.2.col": 887814021, - "$ctl.user.D4.2.bu": 147074172, - "$ctl.user.D4.2.bu.mode": 79899991, - "$ctl.user.D4.2.bu.name": 4006218125, - "$ctl.user.D4.2.bu.$fname": 3732952217, - "$ctl.user.D4.3": 713980742, - "$ctl.user.D4.3.led": 406013614, - "$ctl.user.D4.3.col": 2742173642, - "$ctl.user.D4.3.bu": 1928208051, - "$ctl.user.D4.3.bu.mode": 3100745534, - "$ctl.user.D4.3.bu.name": 1279420534, - "$ctl.user.D4.3.bu.$fname": 704524884, - "$ctl.user.D4.4": 303557695, - "$ctl.user.D4.4.led": 3436546772, - "$ctl.user.D4.4.col": 3038303178, - "$ctl.user.D4.4.bu": 2089200268, - "$ctl.user.D4.4.bu.mode": 3830754275, - "$ctl.user.D4.4.bu.name": 2663936639, - "$ctl.user.D4.4.bu.$fname": 1954951642, - "$ctl.user.cuser": 49111518, - "$ctl.user.cuser.1": 1317784062, - "$ctl.user.cuser.2": 453177724, - "$ctl.user.cuser.3": 1256035914, - "$ctl.gpio": 4977656, - "$ctl.gpio.1": 3183093883, - "$ctl.gpio.1.mode": 3579355855, - "$ctl.gpio.1.$state": 1684458551, - "$ctl.gpio.1.gpstate": 2519332111, - "$ctl.gpio.2": 196356481, - "$ctl.gpio.2.mode": 3062335628, - "$ctl.gpio.2.$state": 1540037166, - "$ctl.gpio.2.gpstate": 174073967, - "$ctl.gpio.3": 812530378, - "$ctl.gpio.3.mode": 1837852556, - "$ctl.gpio.3.$state": 774574957, - "$ctl.gpio.3.gpstate": 939559088, - "$ctl.gpio.4": 1080591576, - "$ctl.gpio.4.mode": 3264998732, - "$ctl.gpio.4.$state": 3439547335, - "$ctl.gpio.4.gpstate": 2326291110, - "$ctl.safes": 8697854, - "$ctl.safes.ch": 2916586016, - "$ctl.safes.aux": 3812244872, - "$ctl.safes.bus": 1380306702, - "$ctl.safes.main": 204043483, - "$ctl.safes.mtx": 42634108, - "$ctl.safes.dca": 2474035494, - "$ctl.safes.mute": 4042312692, - "$ctl.safes.fx": 3661615237, - "$ctl.safes.source": 718618862, - "$ctl.safes.source.LCL": 935641043, - "$ctl.safes.source.AUX": 3483045239, - "$ctl.safes.source.A": 908941596, - "$ctl.safes.source.B": 493048227, - "$ctl.safes.source.C": 3527625334, - "$ctl.safes.source.SC": 3320393549, - "$ctl.safes.source.USB": 1643875838, - "$ctl.safes.source.CRD": 2471209693, - "$ctl.safes.source.MOD": 721866681, - "$ctl.safes.source.PLAY": 3434174634, - "$ctl.safes.source.AES": 422132767, - "$ctl.safes.source.USR": 311767028, - "$ctl.safes.source.OSC": 3645627690, - "$ctl.safes.output": 4274969543, - "$ctl.safes.output.LCL": 2650866249, - "$ctl.safes.output.AUX": 1945356285, - "$ctl.safes.output.A": 3359030604, - "$ctl.safes.output.B": 2220583795, - "$ctl.safes.output.C": 2760028592, - "$ctl.safes.output.SC": 1184208171, - "$ctl.safes.output.USB": 234633963, - "$ctl.safes.output.CRD": 405865569, - "$ctl.safes.output.MOD": 3301531740, - "$ctl.safes.output.REC": 3185384400, - "$ctl.safes.output.AES": 3842681399, - "$ctl.safes.area": 2815472904, - "$ctl.safes.area.LEFT": 2366186543, - "$ctl.safes.area.CENTER": 3406128549, - "$ctl.safes.area.RIGHT": 3718720343, - "$ctl.safes.area.COMPACT": 284577182, - "$ctl.safes.area.RACK": 3451151424, - "$ctl.safes.area.EXTERN": 866341024, - "$ctl.safes.area.VIRTUAL": 3738111258, - "$ctl.safes.custom": 3775928461, - "$ctl.safes.setup": 3051324332, - "$ctl.daw": 3742876226, - "$ctl.daw.on": 1018243541, - "$ctl.daw.conn": 1314684724, - "$ctl.daw.emul": 3848803968, - "$ctl.daw.config": 1114643625, - "$ctl.daw.ccup": 2920626340, - "$ctl.daw.disjog": 2678384434, - "$ctl.daw.preset": 2301514029, - "$ctl.daw.$on": 3203378859, - "$ctl.daw.$bpage": 2519815583, - "$ctl.daw.$btntouch": 19776838, - "$ctl.daw.$btnvpot": 2002524610, - "$ctl.daw.$btnrecrdy": 1118746920, - "$ctl.daw.$btnauto": 4241473031, - "$ctl.daw.$btnvsel": 2244857407, - "$ctl.daw.$btninsert": 363583848, - "$ctl.midi": 2638816476, - "$ctl.midi.enchctl": 3609202224, - "$ctl.midi.enfxctl": 1888666506, - "$ctl.midi.encustctl": 2664373175, - "$ctl.midi.ensysex": 1816266267, - "$ctl.midi.enmidicc": 1563206655, - "$ctl.midi.enscenes": 3542956959, - "$ctl.midi.enshowctl": 1564814541, - "$ctl.midi.enscenetx": 2499669349, - "$ctl.osc": 2917282964, - "$ctl.osc.ronly": 2628157039, - "$ctl.lib": 4177705494, - "$ctl.lib.$scenes": 3956751847, - "$ctl.lib.$actidx": 3171550884, - "$ctl.lib.$active": 3748267746, - "$ctl.lib.$actshow": 784915714, - "$ctl.lib.$action": 4167938589, - "$ctl.lib.$actionidx": 2804920671, - "$ctl.$globals": 4071721177, - "$ctl.$globals.fdrsel": 3952316376, - "$ctl.$globals.fdrres": 1239135768, - "$ctl.$globals.fdrspd": 3298556480, - "$ctl.$globals.mousetchdis": 4238351538, - "$ctl.$globals.mousespd": 2838490277, - "$ctl.$globals.tapflash": 3493975440, - "$ctl.$globals.srcdisp": 3247848939, - "$ctl.$globals.lockmtr": 2892494585, - "$ctl.$globals.showscene": 3183252077, - "$ctl.$globals.cf_load": 294038807, - "$ctl.$globals.cf_upd": 3558628902, - "$ctl.$globals.usewheel": 4061091572, - "$ctl.$globals.timefmt": 3069795642, - "$ctl.$globals.datefmt": 1751676330, - "$ctl.$globals.filesort": 3967445937, - "$ctl.$globals.$noautosave": 3475079678, - "$ctl.$globals.$savenow": 723856736, - "$globals": 3613341250, - "$globals.clkrate": 2424532093, - "$globals.clksrc": 424292474, - "$globals.startmute": 1501443486, - "$globals.usbacfg": 3920714657, - "$globals.sccfg": 117339429, - "$globals.harmt": 3371004, - "$globals.harmt.a": 2868858802, - "$globals.harmt.b": 2200164093, - "$globals.harmt.c": 1343872232, - "$globals.custsync": 3928365358, - "$globals.custsync.a": 1851705831, - "$globals.custsync.b": 2604110233, - "$globals.custsync.c": 3182466715 -} \ No newline at end of file diff --git a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/App.xaml b/DigiMixer/DigiMixer.BehringerWing.WingExplorer/App.xaml deleted file mode 100644 index eca7f1df..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/App.xaml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - - - - - diff --git a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/App.xaml.cs b/DigiMixer/DigiMixer.BehringerWing.WingExplorer/App.xaml.cs deleted file mode 100644 index 7ab8d795..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/App.xaml.cs +++ /dev/null @@ -1,10 +0,0 @@ -using System.Windows; - -namespace DigiMixer.BehringerWing.WingExplorer; -/// -/// Interaction logic for App.xaml -/// -public partial class App : Application -{ -} - diff --git a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/AssemblyInfo.cs b/DigiMixer/DigiMixer.BehringerWing.WingExplorer/AssemblyInfo.cs deleted file mode 100644 index b0ec8275..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/AssemblyInfo.cs +++ /dev/null @@ -1,10 +0,0 @@ -using System.Windows; - -[assembly: ThemeInfo( - ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located - //(used if a resource is not found in the page, - // or application resource dictionaries) - ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located - //(used if a resource is not found in the page, - // app, or any theme specific resource dictionaries) -)] diff --git a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/DigiMixer.BehringerWing.WingExplorer.csproj b/DigiMixer/DigiMixer.BehringerWing.WingExplorer/DigiMixer.BehringerWing.WingExplorer.csproj deleted file mode 100644 index 75a51bd3..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/DigiMixer.BehringerWing.WingExplorer.csproj +++ /dev/null @@ -1,16 +0,0 @@ - - - - WinExe - net9.0-windows - enable - enable - true - - - - - - - - diff --git a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/ExplorerPanel.xaml b/DigiMixer/DigiMixer.BehringerWing.WingExplorer/ExplorerPanel.xaml deleted file mode 100644 index 481ee8d9..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/ExplorerPanel.xaml +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/ExplorerPanel.xaml.cs b/DigiMixer/DigiMixer.BehringerWing.WingExplorer/ExplorerPanel.xaml.cs deleted file mode 100644 index c360bc0f..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/ExplorerPanel.xaml.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System.Windows.Controls; - -namespace DigiMixer.BehringerWing.WingExplorer; -/// -/// Interaction logic for ExplorerPanel.xaml -/// -public partial class ExplorerPanel : UserControl -{ - public ExplorerPanel() - { - InitializeComponent(); - } -} diff --git a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/ExplorerViewModel.cs b/DigiMixer/DigiMixer.BehringerWing.WingExplorer/ExplorerViewModel.cs deleted file mode 100644 index 8c844a5e..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/ExplorerViewModel.cs +++ /dev/null @@ -1,15 +0,0 @@ -using JonSkeet.CoreAppUtil; -using System.Collections.ObjectModel; - -namespace DigiMixer.BehringerWing.WingExplorer; - -public class ExplorerViewModel : ViewModelBase -{ - public ObservableCollection RootNodes { get; } = new(); - - public void SetRoot(MixerTreeNode node) - { - RootNodes.Clear(); - RootNodes.Add(node); - } -} diff --git a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/MainWindow.xaml b/DigiMixer/DigiMixer.BehringerWing.WingExplorer/MainWindow.xaml deleted file mode 100644 index c33f4f83..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/MainWindow.xaml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - diff --git a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/MainWindow.xaml.cs b/DigiMixer/DigiMixer.BehringerWing.WingExplorer/MainWindow.xaml.cs deleted file mode 100644 index 366502a3..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/MainWindow.xaml.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System.Windows; - -namespace DigiMixer.BehringerWing.WingExplorer; -/// -/// Interaction logic for MainWindow.xaml -/// -public partial class MainWindow : Window -{ - public MainWindow() - { - InitializeComponent(); - DataContext = new MainWindowViewModel(); - } -} \ No newline at end of file diff --git a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/MainWindowViewModel.cs b/DigiMixer/DigiMixer.BehringerWing.WingExplorer/MainWindowViewModel.cs deleted file mode 100644 index eefad14b..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/MainWindowViewModel.cs +++ /dev/null @@ -1,209 +0,0 @@ -using DigiMixer.BehringerWing.Core; -using JonSkeet.CoreAppUtil; -using JonSkeet.WpfUtil; -using Microsoft.Extensions.Logging.Abstractions; -using System.Collections.Concurrent; - -namespace DigiMixer.BehringerWing.WingExplorer; - -public class MainWindowViewModel : ViewModelBase -{ - private object? currentVm; - - public MixerDetailsViewModel MixerDetails { get; } - public ProgressViewModel Progress { get; } - public ExplorerViewModel Explorer { get; } - - public bool MixerDetailsVisible => currentVm is MixerDetailsViewModel; - public bool ProgressVisible => currentVm is ProgressViewModel; - public bool ExplorerVisible => currentVm is ExplorerViewModel; - - private bool dataLoaded; - public bool DataLoaded - { - get => dataLoaded; - set => SetProperty(ref dataLoaded, value); - } - - public MainWindowViewModel() - { - MixerDetails = new() { ConnectCommand = ActionCommand.FromAction(Connect) }; - Progress = new() { DisplayCommand = ActionCommand.FromAction(DisplayExplorer).WithCanExecuteProperty(this, nameof(DataLoaded)) }; - Explorer = new(); - SetViewModel(MixerDetails); - } - - internal void SetViewModel(object vm) - { - currentVm = vm; - RaisePropertyChanged(nameof(MixerDetailsVisible)); - RaisePropertyChanged(nameof(ProgressVisible)); - RaisePropertyChanged(nameof(ExplorerVisible)); - } - - private async Task Connect() - { - SetViewModel(Progress); - try - { - Explorer.SetRoot(await LoadData(MixerDetails.IPAddress, MixerDetails.Port)); - } - catch (Exception e) - { - Dialogs.ShowErrorDialog("Error loading data", e.Message); - // The user will basically just have to close the dialog at this point. - return; - } - - DataLoaded = true; - } - - private void DisplayExplorer() - { - SetViewModel(Explorer); - } - - private async Task LoadData(string address, ushort port) - { - uint? currentNodeHash = null; - - ConcurrentDictionary definitions = new(); - ConcurrentDictionary values = new(); - - bool loadingDefinitions = true; - var tcs = new TaskCompletionSource(); - Stack pendingDefinitionRequests = new(); - var client = new WingClient(NullLogger.Instance, address, port); - client.AudioEngineTokenReceived += HandleToken; - await client.Connect(default); - client.Start(); - - await client.SendAudioEngineTokens([WingToken.RootNode, WingToken.DefinitionRequest], default); - await tcs.Task; - client.Dispose(); - return CreateTree(definitions, values); - - void HandleToken(object? sender, WingToken token) - { - switch (token.Type) - { - case WingTokenType.NodeHash: - currentNodeHash = token.NodeHash; - break; - case WingTokenType.NodeDefinition: - WingNodeDefinition nodeDefinition = token.NodeDefinition; - if (definitions.TryAdd(nodeDefinition.NodeHash, nodeDefinition)) - { - if (nodeDefinition.Flags == 0) - { - pendingDefinitionRequests.Push(nodeDefinition.NodeHash); - Progress.PendingNodeDefinitionCount = pendingDefinitionRequests.Count; - } - Progress.NodeDefinitionCount++; - } - break; - case WingTokenType.FalseOffZero: - case WingTokenType.TrueOnOne: - case WingTokenType.Int16: - case WingTokenType.String: - case WingTokenType.Int32: - case WingTokenType.Float32: - case WingTokenType.RawFloat32: - case WingTokenType.Step: - case WingTokenType.Toggle: - if (currentNodeHash is uint nodeHash) - { - if (values.TryAdd(nodeHash, token)) - { - Progress.NodeDataCount++; - } - } - currentNodeHash = null; - break; - case WingTokenType.EndOfRequest: - if (loadingDefinitions) - { - if (pendingDefinitionRequests.TryPop(out uint nextHash)) - { - // TODO: Make all of this properly asynchronous. This is horrible at the moment. - client.SendAudioEngineTokens([WingToken.ForNodeHash(nextHash), WingToken.DefinitionRequest], default); - Progress.PendingNodeDefinitionCount = pendingDefinitionRequests.Count; - } - else - { - loadingDefinitions = false; - client.SendAudioEngineTokens([WingToken.RootNode, WingToken.DataRequest], default).Ignore(); - } - } - else - { - DataLoaded = true; - tcs.SetResult(); - } - break; - } - } - } - - public MixerTreeNode CreateTree(IReadOnlyDictionary definitions, IReadOnlyDictionary values) - { - var names = new Dictionary(); - var fullNames = new Dictionary(); - var fields = definitions.Where(pair => !pair.Value.IsNode); - var nodes = definitions.Where(pair => pair.Value.IsNode).ToDictionary(); - - nodes[0] = WingNodeDefinition.Root; - names[0] = "Root"; - fullNames[0] = "Root"; - foreach (var definition in definitions.Values) - { - names[definition.NodeHash] = EmptyToNull(definition.Name) ?? EmptyToNull(definition.LongName) ?? definition.NodeIndex.ToString(); - } - - foreach (var definition in definitions.Values) - { - PopulateFullName(definition); - } - - var treeNodes = nodes.ToDictionary(pair => pair.Key, pair => new MixerTreeNode(pair.Value, fullNames[pair.Key], names[pair.Key])); - var treeFields = definitions.Where(pair => !pair.Value.IsNode).Select(pair => new MixerTreeField(pair.Value, values.GetValueOrDefault(pair.Key), fullNames[pair.Key], names[pair.Key])).ToList(); - - // Add nodes to their parents - foreach (var pair in treeNodes) - { - var definition = pair.Value.Definition; - if (definition.NodeHash != 0) - { - var parent = treeNodes[definition.ParentHash]; - parent.Children.Add(pair.Value); - } - } - // Add fields to their parents - foreach (var field in treeFields) - { - treeNodes[field.Definition.ParentHash].Fields.Add(field); - } - - foreach (var node in treeNodes.Values) - { - node.SortAllChildren(); - } - - // Done. We only need to return the root - everything else should now be in place. - return treeNodes[0]; - - string PopulateFullName(WingNodeDefinition definition) - { - if (fullNames.TryGetValue(definition.NodeHash, out var existing)) - { - return existing; - } - string name = names[definition.NodeHash]; - string fullName = definition.ParentHash == 0 ? name : $"{PopulateFullName(nodes[definition.ParentHash])}.{name}"; - fullNames[definition.NodeHash] = fullName; - return fullName; - } - - string? EmptyToNull(string text) => text == "" ? null : text; - } -} diff --git a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/MixerDetailsPanel.xaml b/DigiMixer/DigiMixer.BehringerWing.WingExplorer/MixerDetailsPanel.xaml deleted file mode 100644 index d1c1e808..00000000 --- a/DigiMixer/DigiMixer.BehringerWing.WingExplorer/MixerDetailsPanel.xaml +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - - - - - - - - - - - - -

    - -

    MIDI Status: @status

    -

    Input ports detected: @inputDevices

    -

    Output ports detected: @outputDevices

    - -

    - Log: -

      - @foreach (var message in @messages) - { -
    • @message
    • - } -
    -

    diff --git a/Drums/VDrumExplorer.Blazor/Pages/Midi.razor.cs b/Drums/VDrumExplorer.Blazor/Pages/Midi.razor.cs deleted file mode 100644 index 4c62744a..00000000 --- a/Drums/VDrumExplorer.Blazor/Pages/Midi.razor.cs +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using Microsoft.AspNetCore.Components; -using Microsoft.Extensions.Logging; -using Microsoft.Extensions.Logging.Abstractions; -using Microsoft.JSInterop; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using VDrumExplorer.Blazor.WebMidi; -using VDrumExplorer.Model; -using VDrumExplorer.Model.Device; -using VDrumExplorer.Model.Midi; - -namespace VDrumExplorer.Blazor.Pages -{ - public partial class Midi - { - [Inject] - public IJSRuntime JSRuntime { get; set; } - - private string status = ""; - private string inputDevices = "MIDI not initialized"; - private string outputDevices = "MIDI not initialized"; - private List messages = new List(); - private ILogger logger; - - public Midi() - { - logger = new SimpleLogger(Log); - } - - private async Task MaybeInitializeMidi() - { - if (MidiDevices.Manager is object) - { - return true; - } - try - { - MidiDevices.Manager = await WebMidiManager.InitializeAsync(JSRuntime); - status = "Initialized"; - return true; - } - catch (Exception e) - { - status = $"Initialization failed: {e.Message}"; - return false; - } - } - - private async Task ListKits() - { - if (!await MaybeInitializeMidi()) - { - return; - } - - inputDevices = string.Join(", ", MidiDevices.ListInputDevices().Select(device => $"{device.SystemDeviceId} ({device.Name})")); - outputDevices = string.Join(", ", MidiDevices.ListOutputDevices().Select(device => $"{device.SystemDeviceId} ({device.Name})")); - - Log("Detecting Roland devices (this can take a few seconds)"); - var client = await MidiDevices.DetectSingleRolandMidiClientAsync(logger, ModuleSchema.KnownSchemas.Keys); - if (client is object) - { - await Task.Yield(); - var schema = ModuleSchema.KnownSchemas[client.Identifier].Value; - Log($"Listing {schema.Identifier.Name} kits:"); - var deviceController = new DeviceController(client, NullLogger.Instance); - for (int i = 1; i <= schema.Kits; i++) - { - var name = await deviceController.LoadKitNameAsync(i, CancellationToken.None); - Log($"Kit {i}: {name}"); - } - } - } - - private void Log(string message) - { - messages.Add($"{DateTime.UtcNow:HH:mm:ss.fff} {message}"); - StateHasChanged(); - } - } -} diff --git a/Drums/VDrumExplorer.Blazor/Program.cs b/Drums/VDrumExplorer.Blazor/Program.cs deleted file mode 100644 index fbaf821a..00000000 --- a/Drums/VDrumExplorer.Blazor/Program.cs +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using System; -using System.Net.Http; -using System.Collections.Generic; -using System.Threading.Tasks; -using System.Text; -using Microsoft.AspNetCore.Components.WebAssembly.Hosting; -using Microsoft.Extensions.Configuration; -using Microsoft.Extensions.DependencyInjection; -using Microsoft.Extensions.Logging; - -namespace VDrumExplorer.Blazor -{ - public class Program - { - public static async Task Main(string[] args) - { - var builder = WebAssemblyHostBuilder.CreateDefault(args); - builder.RootComponents.Add("app"); - - builder.Services.AddTransient(sp => new HttpClient { BaseAddress = new Uri(builder.HostEnvironment.BaseAddress) }); - - await builder.Build().RunAsync(); - } - } -} diff --git a/Drums/VDrumExplorer.Blazor/PromiseHandler.cs b/Drums/VDrumExplorer.Blazor/PromiseHandler.cs deleted file mode 100644 index 15048c3d..00000000 --- a/Drums/VDrumExplorer.Blazor/PromiseHandler.cs +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using Microsoft.JSInterop; -using System; -using System.Threading.Tasks; - -namespace VDrumExplorer.Blazor -{ - public class PromiseHandler : IDisposable - { - public DotNetObjectReference Proxy { get; } - private readonly TaskCompletionSource tcs; - - public PromiseHandler() - { - Proxy = DotNetObjectReference.Create(this); - tcs = new TaskCompletionSource(); - } - - [JSInvokable] - public void Success() => - tcs.TrySetResult(0); - - [JSInvokable] - public void Failure(string message) => - tcs.TrySetException(new Exception(message)); - - public Task Task => tcs.Task; - - public void Dispose() => Proxy.Dispose(); - } -} diff --git a/Drums/VDrumExplorer.Blazor/Shared/MainLayout.razor b/Drums/VDrumExplorer.Blazor/Shared/MainLayout.razor deleted file mode 100644 index 667f582b..00000000 --- a/Drums/VDrumExplorer.Blazor/Shared/MainLayout.razor +++ /dev/null @@ -1,7 +0,0 @@ -@inherits LayoutComponentBase - -
    -
    - @Body -
    -
    diff --git a/Drums/VDrumExplorer.Blazor/SimpleLogger.cs b/Drums/VDrumExplorer.Blazor/SimpleLogger.cs deleted file mode 100644 index 4aa0f30b..00000000 --- a/Drums/VDrumExplorer.Blazor/SimpleLogger.cs +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using Microsoft.Extensions.Logging; -using System; - -namespace VDrumExplorer.Blazor -{ - internal class SimpleLogger : ILogger - { - private Action action; - - public SimpleLogger(Action action) => this.action = action; - - public IDisposable BeginScope(TState state) => NoOpDisposable.Instance; - - public bool IsEnabled(LogLevel logLevel) => true; - - public void Log(LogLevel logLevel, EventId eventId, TState state, Exception exception, Func formatter) - { - action(formatter(state, exception)); - } - - private class NoOpDisposable : IDisposable - { - internal static NoOpDisposable Instance { get; } = new NoOpDisposable(); - private NoOpDisposable() { } - - public void Dispose() { } - } - } -} diff --git a/Drums/VDrumExplorer.Blazor/VDrumExplorer.Blazor.csproj b/Drums/VDrumExplorer.Blazor/VDrumExplorer.Blazor.csproj deleted file mode 100644 index 02a5c0fb..00000000 --- a/Drums/VDrumExplorer.Blazor/VDrumExplorer.Blazor.csproj +++ /dev/null @@ -1,19 +0,0 @@ - - - - netstandard2.1 - 3.0 - - - - - - - - - - - - - - diff --git a/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiInput.cs b/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiInput.cs deleted file mode 100644 index 3e8c2176..00000000 --- a/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiInput.cs +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using System; -using VDrumExplorer.Model.Midi; - -namespace VDrumExplorer.Blazor.WebMidi -{ - internal class WebMidiInput : IMidiInput - { - private WebMidiInputProxy proxy; - - public event EventHandler MessageReceived; - - internal WebMidiInput(WebMidiInputProxy proxy) - { - this.proxy = proxy; - proxy.MessageReceived += HandleMessageReceived; - } - - public void Dispose() - { - proxy.MessageReceived -= HandleMessageReceived; - } - - private void HandleMessageReceived(object sender, MidiMessage message) => - MessageReceived?.Invoke(this, message); - } -} diff --git a/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiInputProxy.cs b/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiInputProxy.cs deleted file mode 100644 index 6e258f0f..00000000 --- a/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiInputProxy.cs +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using Microsoft.JSInterop; -using System; -using System.Threading.Tasks; -using VDrumExplorer.Model.Midi; - -namespace VDrumExplorer.Blazor.WebMidi -{ - /// - /// A proxy to the JavaScript MIDI input. - /// A single instance of this is created per input port, - /// and then multiple WebMidiInput instances wrap it. - /// This ends up with multiple layers of indirection, but makes it easier - /// to manage the event subscriptions. - /// - internal class WebMidiInputProxy : IDisposable - { - private DotNetObjectReference objectProxy; - private string id; - - internal event EventHandler MessageReceived; - - internal WebMidiInputProxy(string id) - { - objectProxy = DotNetObjectReference.Create(this); - this.id = id; - } - - internal async Task Listen(IJSRuntime runtime) - { - await runtime.InvokeVoidAsync("midi.addMessageHandler", id, objectProxy); - } - - [JSInvokable] - public void OnMessageReceived(WebMidiMessage message) => - MessageReceived?.Invoke(this, message.ToMidiMessage()); - - public void Dispose() => objectProxy.Dispose(); - } -} diff --git a/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiManager.cs b/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiManager.cs deleted file mode 100644 index 8586e9e2..00000000 --- a/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiManager.cs +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using Microsoft.JSInterop; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using VDrumExplorer.Model.Midi; - -namespace VDrumExplorer.Blazor.WebMidi -{ - public class WebMidiManager : IMidiManager - { - private static readonly TimeSpan Timeout = TimeSpan.FromSeconds(3); - - private Dictionary inputs; - private Dictionary outputs; - - internal WebMidiManager(Dictionary inputs, - Dictionary outputs) - { - this.inputs = inputs; - this.outputs = outputs; - } - - // TODO: Protect against multiple instantiation calls. - public static async Task InitializeAsync(IJSRuntime runtime) - { - var handler = new PromiseHandler(); - await runtime.InvokeAsync("midi.initialize", Timeout, handler.Proxy); - await handler.Task; - - var inputs = (await runtime.InvokeAsync>("midi.getInputPorts", Timeout)) - .Select(input => input.ToMidiInputDevice()) - .ToDictionary(input => input, input => new WebMidiInputProxy(input.SystemDeviceId)); - - var outputs = (await runtime.InvokeAsync>("midi.getOutputPorts", Timeout)) - .Select(output => output.ToMidiOutputDevice()) - .ToDictionary(input => input, input => new WebMidiOutput(runtime, input.SystemDeviceId)); - - foreach (var proxy in inputs.Values) - { - await proxy.Listen(runtime); - } - - return new WebMidiManager(inputs, outputs); - } - - public IEnumerable ListInputDevices() => inputs.Keys; - - public IEnumerable ListOutputDevices() => outputs.Keys; - - public Task OpenInputAsync(MidiInputDevice input) => - Task.FromResult((IMidiInput) new WebMidiInput(inputs[input])); - - public Task OpenOutputAsync(MidiOutputDevice output) => - Task.FromResult((IMidiOutput) outputs[output]); - } -} diff --git a/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiMessage.cs b/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiMessage.cs deleted file mode 100644 index 73694a3c..00000000 --- a/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiMessage.cs +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using System.Text.Json.Serialization; -using VDrumExplorer.Model.Midi; - -namespace VDrumExplorer.Blazor.WebMidi -{ - /// - /// MIDI message representation used for JS interop. - /// - internal class WebMidiMessage - { - [JsonPropertyName("data")] - public byte[] Data { get; set; } - - [JsonPropertyName("timestamp")] - public double Timestamp { get; set; } - - public static WebMidiMessage FromMidiMessage(MidiMessage message) => - new WebMidiMessage { Data = message.Data, Timestamp = (double) message.Timestamp }; - - public MidiMessage ToMidiMessage() => - new MidiMessage(Data, (long) Timestamp); - } -} diff --git a/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiOutput.cs b/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiOutput.cs deleted file mode 100644 index 671bcd12..00000000 --- a/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiOutput.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using Microsoft.JSInterop; -using VDrumExplorer.Model.Midi; - -namespace VDrumExplorer.Blazor.WebMidi -{ - internal class WebMidiOutput : IMidiOutput - { - private readonly IJSRuntime runtime; - private readonly string port; - - internal WebMidiOutput(IJSRuntime runtime, string port) - { - this.runtime = runtime; - this.port = port; - } - - public void Send(MidiMessage message) - { - // Note that we're not waiting for this to complete. That's okay, as it's - // expected to be "fire and forget" anyway. - runtime.InvokeVoidAsync("midi.sendMessage", port, message.Data); - } - - public void Dispose() - { - } - } -} diff --git a/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiPort.cs b/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiPort.cs deleted file mode 100644 index 28d17677..00000000 --- a/Drums/VDrumExplorer.Blazor/WebMidi/WebMidiPort.cs +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright 2020 Jon Skeet. All rights reserved. -// Use of this source code is governed by the Apache License 2.0, -// as found in the LICENSE.txt file. - -using System.Text.Json.Serialization; -using VDrumExplorer.Model.Midi; - -namespace VDrumExplorer.Blazor.WebMidi -{ - /// - /// MIDI port representation used for interop. - /// - internal class WebMidiPort - { - [JsonPropertyName("id")] - public string Id { get; set; } - - [JsonPropertyName("name")] - public string Name { get; set; } - - [JsonPropertyName("manufacturer")] - public string Manufacturer { get; set; } - - internal MidiInputDevice ToMidiInputDevice() => new MidiInputDevice(Id, Name, Manufacturer); - internal MidiOutputDevice ToMidiOutputDevice() => new MidiOutputDevice(Id, Name, Manufacturer); - } -} diff --git a/Drums/VDrumExplorer.Blazor/_Imports.razor b/Drums/VDrumExplorer.Blazor/_Imports.razor deleted file mode 100644 index 85468e17..00000000 --- a/Drums/VDrumExplorer.Blazor/_Imports.razor +++ /dev/null @@ -1,9 +0,0 @@ -@using System.Net.Http -@using System.Net.Http.Json -@using Microsoft.AspNetCore.Components.Forms -@using Microsoft.AspNetCore.Components.Routing -@using Microsoft.AspNetCore.Components.Web -@using Microsoft.AspNetCore.Components.WebAssembly.Http -@using Microsoft.JSInterop -@using VDrumExplorer.Blazor -@using VDrumExplorer.Blazor.Shared diff --git a/Drums/VDrumExplorer.Blazor/wwwroot/base64.js b/Drums/VDrumExplorer.Blazor/wwwroot/base64.js deleted file mode 100644 index b6e5b80f..00000000 --- a/Drums/VDrumExplorer.Blazor/wwwroot/base64.js +++ /dev/null @@ -1,110 +0,0 @@ -// This file is adapted from the byte-base64 library: -// https://github.com/enepomnyaschih/byte-base64 -// (It would be just included as a client library, but I couldn't get that to work...) - -/* -MIT License - -Copyright (c) 2020 Egor Nepomnyaschih - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. -*/ - -var base64abc = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "+", "/"]; -var base64codes = [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 62, 255, 255, 255, 63, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 255, 255, 255, 0, 255, 255, 255, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 255, 255, 255, 255, 255, 255, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51]; - -function getBase64Code(charCode) { - if (charCode >= base64codes.length) { - throw new Error("Unable to parse base64 string."); - } - - var code = base64codes[charCode]; - - if (code === 255) { - throw new Error("Unable to parse base64 string."); - } - - return code; -} - -function bytesToBase64(bytes) { - var result = '', - i, - l = bytes.length; - - for (i = 2; i < l; i += 3) { - result += base64abc[bytes[i - 2] >> 2]; - result += base64abc[(bytes[i - 2] & 0x03) << 4 | bytes[i - 1] >> 4]; - result += base64abc[(bytes[i - 1] & 0x0F) << 2 | bytes[i] >> 6]; - result += base64abc[bytes[i] & 0x3F]; - } - - if (i === l + 1) { - // 1 octet yet to write - result += base64abc[bytes[i - 2] >> 2]; - result += base64abc[(bytes[i - 2] & 0x03) << 4]; - result += "=="; - } - - if (i === l) { - // 2 octets yet to write - result += base64abc[bytes[i - 2] >> 2]; - result += base64abc[(bytes[i - 2] & 0x03) << 4 | bytes[i - 1] >> 4]; - result += base64abc[(bytes[i - 1] & 0x0F) << 2]; - result += "="; - } - - return result; -} - -function base64ToBytes(str) { - if (str.length % 4 !== 0) { - throw new Error("Unable to parse base64 string."); - } - - var index = str.indexOf("="); - - if (index !== -1 && index < str.length - 2) { - throw new Error("Unable to parse base64 string."); - } - - var missingOctets = str.endsWith("==") ? 2 : str.endsWith("=") ? 1 : 0, - n = str.length, - result = new Uint8Array(3 * (n / 4)), - buffer; - - for (var i = 0, j = 0; i < n; i += 4, j += 3) { - buffer = getBase64Code(str.charCodeAt(i)) << 18 | getBase64Code(str.charCodeAt(i + 1)) << 12 | getBase64Code(str.charCodeAt(i + 2)) << 6 | getBase64Code(str.charCodeAt(i + 3)); - result[j] = buffer >> 16; - result[j + 1] = buffer >> 8 & 0xFF; - result[j + 2] = buffer & 0xFF; - } - - return result.subarray(0, result.length - missingOctets); -} - -function base64encode(str) { - var encoder = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : new TextEncoder(); - return bytesToBase64(encoder.encode(str)); -} - -function base64decode(str) { - var decoder = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : new TextDecoder(); - return decoder.decode(base64ToBytes(str)); -} diff --git a/Drums/VDrumExplorer.Blazor/wwwroot/css/app.css b/Drums/VDrumExplorer.Blazor/wwwroot/css/app.css deleted file mode 100644 index 4e4425c9..00000000 --- a/Drums/VDrumExplorer.Blazor/wwwroot/css/app.css +++ /dev/null @@ -1,183 +0,0 @@ -@import url('http://github.com/open-iconic/font/css/open-iconic-bootstrap.min.css'); - -html, body { - font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; -} - -a, .btn-link { - color: #0366d6; -} - -.btn-primary { - color: #fff; - background-color: #1b6ec2; - border-color: #1861ac; -} - -app { - position: relative; - display: flex; - flex-direction: column; -} - -.top-row { - height: 3.5rem; - display: flex; - align-items: center; -} - -.main { - flex: 1; -} - - .main .top-row { - background-color: #f7f7f7; - border-bottom: 1px solid #d6d5d5; - justify-content: flex-end; - } - - .main .top-row > a, .main .top-row .btn-link { - white-space: nowrap; - margin-left: 1.5rem; - } - -.main .top-row a:first-child { - overflow: hidden; - text-overflow: ellipsis; -} - -.sidebar { - background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%); -} - - .sidebar .top-row { - background-color: rgba(0,0,0,0.4); - } - - .sidebar .navbar-brand { - font-size: 1.1rem; - } - - .sidebar .oi { - width: 2rem; - font-size: 1.1rem; - vertical-align: text-top; - top: -2px; - } - - .sidebar .nav-item { - font-size: 0.9rem; - padding-bottom: 0.5rem; - } - - .sidebar .nav-item:first-of-type { - padding-top: 1rem; - } - - .sidebar .nav-item:last-of-type { - padding-bottom: 1rem; - } - - .sidebar .nav-item a { - color: #d7d7d7; - border-radius: 4px; - height: 3rem; - display: flex; - align-items: center; - line-height: 3rem; - } - - .sidebar .nav-item a.active { - background-color: rgba(255,255,255,0.25); - color: white; - } - - .sidebar .nav-item a:hover { - background-color: rgba(255,255,255,0.1); - color: white; - } - -.content { - padding-top: 1.1rem; -} - -.navbar-toggler { - background-color: rgba(255, 255, 255, 0.1); -} - -.valid.modified:not([type=checkbox]) { - outline: 1px solid #26b050; -} - -.invalid { - outline: 1px solid red; -} - -.validation-message { - color: red; -} - -#blazor-error-ui { - background: lightyellow; - bottom: 0; - box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2); - display: none; - left: 0; - padding: 0.6rem 1.25rem 0.7rem 1.25rem; - position: fixed; - width: 100%; - z-index: 1000; -} - -#blazor-error-ui .dismiss { - cursor: pointer; - position: absolute; - right: 0.75rem; - top: 0.5rem; -} - -@media (max-width: 767.98px) { - .main .top-row:not(.auth) { - display: none; - } - - .main .top-row.auth { - justify-content: space-between; - } - - .main .top-row a, .main .top-row .btn-link { - margin-left: 0; - } -} - -@media (min-width: 768px) { - app { - flex-direction: row; - } - - .sidebar { - width: 250px; - height: 100vh; - position: sticky; - top: 0; - } - - .main .top-row { - position: sticky; - top: 0; - } - - .main > div { - padding-left: 2rem !important; - padding-right: 1.5rem !important; - } - - .navbar-toggler { - display: none; - } - - .sidebar .collapse { - /* Never collapse the sidebar for wide screens */ - display: block; - } -} diff --git a/Drums/VDrumExplorer.Blazor/wwwroot/css/bootstrap/bootstrap.min.css b/Drums/VDrumExplorer.Blazor/wwwroot/css/bootstrap/bootstrap.min.css deleted file mode 100644 index 92e3fe87..00000000 --- a/Drums/VDrumExplorer.Blazor/wwwroot/css/bootstrap/bootstrap.min.css +++ /dev/null @@ -1,7 +0,0 @@ -/*! - * Bootstrap v4.3.1 (https://getbootstrap.com/) - * Copyright 2011-2019 The Bootstrap Authors - * Copyright 2011-2019 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */:root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#007bff;--secondary:#6c757d;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-weight:500;line-height:1.2}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.h4,h4{font-size:1.5rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem;font-weight:300;line-height:1.2}.display-2{font-size:5.5rem;font-weight:300;line-height:1.2}.display-3{font-size:4.5rem;font-weight:300;line-height:1.2}.display-4{font-size:3.5rem;font-weight:300;line-height:1.2}hr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}.small,small{font-size:80%;font-weight:400}.mark,mark{padding:.2em;background-color:#fcf8e3}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer{display:block;font-size:80%;color:#6c757d}.blockquote-footer::before{content:"\2014\00A0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#6c757d}code{font-size:87.5%;color:#e83e8c;word-break:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-first{-ms-flex-order:-1;order:-1}.order-last{-ms-flex-order:13;order:13}.order-0{-ms-flex-order:0;order:0}.order-1{-ms-flex-order:1;order:1}.order-2{-ms-flex-order:2;order:2}.order-3{-ms-flex-order:3;order:3}.order-4{-ms-flex-order:4;order:4}.order-5{-ms-flex-order:5;order:5}.order-6{-ms-flex-order:6;order:6}.order-7{-ms-flex-order:7;order:7}.order-8{-ms-flex-order:8;order:8}.order-9{-ms-flex-order:9;order:9}.order-10{-ms-flex-order:10;order:10}.order-11{-ms-flex-order:11;order:11}.order-12{-ms-flex-order:12;order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-sm-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-sm-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-sm-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-sm-first{-ms-flex-order:-1;order:-1}.order-sm-last{-ms-flex-order:13;order:13}.order-sm-0{-ms-flex-order:0;order:0}.order-sm-1{-ms-flex-order:1;order:1}.order-sm-2{-ms-flex-order:2;order:2}.order-sm-3{-ms-flex-order:3;order:3}.order-sm-4{-ms-flex-order:4;order:4}.order-sm-5{-ms-flex-order:5;order:5}.order-sm-6{-ms-flex-order:6;order:6}.order-sm-7{-ms-flex-order:7;order:7}.order-sm-8{-ms-flex-order:8;order:8}.order-sm-9{-ms-flex-order:9;order:9}.order-sm-10{-ms-flex-order:10;order:10}.order-sm-11{-ms-flex-order:11;order:11}.order-sm-12{-ms-flex-order:12;order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-md-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-md-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-md-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-md-first{-ms-flex-order:-1;order:-1}.order-md-last{-ms-flex-order:13;order:13}.order-md-0{-ms-flex-order:0;order:0}.order-md-1{-ms-flex-order:1;order:1}.order-md-2{-ms-flex-order:2;order:2}.order-md-3{-ms-flex-order:3;order:3}.order-md-4{-ms-flex-order:4;order:4}.order-md-5{-ms-flex-order:5;order:5}.order-md-6{-ms-flex-order:6;order:6}.order-md-7{-ms-flex-order:7;order:7}.order-md-8{-ms-flex-order:8;order:8}.order-md-9{-ms-flex-order:9;order:9}.order-md-10{-ms-flex-order:10;order:10}.order-md-11{-ms-flex-order:11;order:11}.order-md-12{-ms-flex-order:12;order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-lg-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-lg-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-lg-first{-ms-flex-order:-1;order:-1}.order-lg-last{-ms-flex-order:13;order:13}.order-lg-0{-ms-flex-order:0;order:0}.order-lg-1{-ms-flex-order:1;order:1}.order-lg-2{-ms-flex-order:2;order:2}.order-lg-3{-ms-flex-order:3;order:3}.order-lg-4{-ms-flex-order:4;order:4}.order-lg-5{-ms-flex-order:5;order:5}.order-lg-6{-ms-flex-order:6;order:6}.order-lg-7{-ms-flex-order:7;order:7}.order-lg-8{-ms-flex-order:8;order:8}.order-lg-9{-ms-flex-order:9;order:9}.order-lg-10{-ms-flex-order:10;order:10}.order-lg-11{-ms-flex-order:11;order:11}.order-lg-12{-ms-flex-order:12;order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-xl-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-xl-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-xl-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-xl-first{-ms-flex-order:-1;order:-1}.order-xl-last{-ms-flex-order:13;order:13}.order-xl-0{-ms-flex-order:0;order:0}.order-xl-1{-ms-flex-order:1;order:1}.order-xl-2{-ms-flex-order:2;order:2}.order-xl-3{-ms-flex-order:3;order:3}.order-xl-4{-ms-flex-order:4;order:4}.order-xl-5{-ms-flex-order:5;order:5}.order-xl-6{-ms-flex-order:6;order:6}.order-xl-7{-ms-flex-order:7;order:7}.order-xl-8{-ms-flex-order:8;order:8}.order-xl-9{-ms-flex-order:9;order:9}.order-xl-10{-ms-flex-order:10;order:10}.order-xl-11{-ms-flex-order:11;order:11}.order-xl-12{-ms-flex-order:12;order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered{border:1px solid #dee2e6}.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover{background-color:#9fcdff}.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover{background-color:#c8cbcf}.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover{background-color:#b1dfbb}.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover{background-color:#abdde5}.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover{background-color:#ffe8a1}.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover{background-color:#f1b0b7}.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover{background-color:#ececf6}.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover{background-color:#b9bbbe}.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th{background-color:rgba(0,0,0,.075)}.table-hover .table-active:hover{background-color:rgba(0,0,0,.075)}.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:rgba(255,255,255,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:rgba(255,255,255,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::-webkit-input-placeholder{color:#6c757d;opacity:1}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control:-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding-top:.375rem;padding-bottom:.375rem;margin-bottom:0;line-height:1.5;color:#212529;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size]{height:auto}textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:center right calc(.375em + .1875rem);background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-control.is-valid~.valid-feedback,.form-control.is-valid~.valid-tooltip,.was-validated .form-control:valid~.valid-feedback,.was-validated .form-control:valid~.valid-tooltip{display:block}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc((1em + .75rem) * 3 / 4 + 1.75rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-select.is-valid~.valid-feedback,.custom-select.is-valid~.valid-tooltip,.was-validated .custom-select:valid~.valid-feedback,.was-validated .custom-select:valid~.valid-tooltip{display:block}.form-control-file.is-valid~.valid-feedback,.form-control-file.is-valid~.valid-tooltip,.was-validated .form-control-file:valid~.valid-feedback,.was-validated .form-control-file:valid~.valid-tooltip{display:block}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label::before,.was-validated .custom-control-input:valid~.custom-control-label::before{border-color:#28a745}.custom-control-input.is-valid~.valid-feedback,.custom-control-input.is-valid~.valid-tooltip,.was-validated .custom-control-input:valid~.valid-feedback,.was-validated .custom-control-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid:checked~.custom-control-label::before,.was-validated .custom-control-input:valid:checked~.custom-control-label::before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label::before,.was-validated .custom-control-input:valid:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label::before,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label::before{border-color:#28a745}.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid~.valid-feedback,.custom-file-input.is-valid~.valid-tooltip,.was-validated .custom-file-input:valid~.valid-feedback,.was-validated .custom-file-input:valid~.valid-tooltip{display:block}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E");background-repeat:no-repeat;background-position:center right calc(.375em + .1875rem);background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-control.is-invalid~.invalid-feedback,.form-control.is-invalid~.invalid-tooltip,.was-validated .form-control:invalid~.invalid-feedback,.was-validated .form-control:invalid~.invalid-tooltip{display:block}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc((1em + .75rem) * 3 / 4 + 1.75rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-select.is-invalid~.invalid-feedback,.custom-select.is-invalid~.invalid-tooltip,.was-validated .custom-select:invalid~.invalid-feedback,.was-validated .custom-select:invalid~.invalid-tooltip{display:block}.form-control-file.is-invalid~.invalid-feedback,.form-control-file.is-invalid~.invalid-tooltip,.was-validated .form-control-file:invalid~.invalid-feedback,.was-validated .form-control-file:invalid~.invalid-tooltip{display:block}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label::before,.was-validated .custom-control-input:invalid~.custom-control-label::before{border-color:#dc3545}.custom-control-input.is-invalid~.invalid-feedback,.custom-control-input.is-invalid~.invalid-tooltip,.was-validated .custom-control-input:invalid~.invalid-feedback,.was-validated .custom-control-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid:checked~.custom-control-label::before,.was-validated .custom-control-input:invalid:checked~.custom-control-label::before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label::before{border-color:#dc3545}.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid~.invalid-feedback,.custom-file-input.is-invalid~.invalid-tooltip,.was-validated .custom-file-input:invalid~.invalid-feedback,.was-validated .custom-file-input:invalid~.invalid-tooltip{display:block}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap;-ms-flex-align:center;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;margin-bottom:0}.form-inline .form-group{display:-ms-flexbox;display:flex;-ms-flex:0 0 auto;flex:0 0 auto;-ms-flex-flow:row wrap;flex-flow:row wrap;-ms-flex-align:center;align-items:center;margin-bottom:0}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;-ms-flex-negative:0;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:transparent;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:transparent}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:transparent}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:transparent}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:transparent}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:transparent}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:transparent}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:transparent}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:transparent}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-toggle::after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropleft .dropdown-toggle::after{display:none}.dropleft .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty::after{margin-left:0}.dropleft .dropdown-toggle::before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;-ms-flex:1 1 auto;flex:1 1 auto}.btn-group-vertical>.btn:hover,.btn-group>.btn:hover{z-index:1}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus{z-index:1}.btn-toolbar{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:start;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropright .dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after{margin-left:0}.dropleft .dropdown-toggle-split::before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:center;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio],.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:stretch;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;width:1%;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label::after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:-ms-flexbox;display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:-ms-inline-flexbox;display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;z-index:-1;opacity:0}.custom-control-input:checked~.custom-control-label::before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label::before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label::before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label::before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label::before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;pointer-events:none;content:"";background-color:#fff;border:#adb5bd solid 1px}.custom-control-label::after{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:"";background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label::before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label::before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label::before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label::after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-transform .15s ease-in-out;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-transform .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label::after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label::after{background-color:#fff;-webkit-transform:translateX(.75rem);transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{position:relative;display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);margin-bottom:0}.custom-file-input{position:relative;z-index:2;width:100%;height:calc(1.5em + .75rem + 2px);margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label::after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]::after{content:attr(data-browse)}.custom-file-label{position:absolute;top:0;right:0;left:0;z-index:1;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label::after{position:absolute;top:0;right:0;bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);padding:.375rem .75rem;line-height:1.5;color:#495057;content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:calc(1rem + .4rem);padding:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:transparent;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px;background-color:#dee2e6;border-radius:1rem}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label::before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label::before,.custom-file-label,.custom-select{transition:none}}.nav{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;padding:.5rem 1rem}.navbar>.container,.navbar>.container-fluid{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{-ms-flex-preferred-size:100%;flex-basis:100%;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat center center;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-md .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand{color:rgba(0,0,0,.9)}.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a{color:rgba(0,0,0,.9)}.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:rgba(255,255,255,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,.5);border-color:rgba(255,255,255,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:rgba(255,255,255,.5)}.navbar-dark .navbar-text a{color:#fff}.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{-ms-flex:1 1 auto;flex:1 1 auto;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-right:-.625rem;margin-bottom:-.75rem;margin-left:-.625rem;border-bottom:0}.card-header-pills{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img{width:100%;border-radius:calc(.25rem - 1px)}.card-img-top{width:100%;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img-bottom{width:100%;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{-ms-flex-flow:row wrap;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{display:-ms-flexbox;display:flex;-ms-flex:1 0 0%;flex:1 0 0%;-ms-flex-direction:column;flex-direction:column;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group>.card{-ms-flex:1 0 0%;flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{-webkit-column-count:3;-moz-column-count:3;column-count:3;-webkit-column-gap:1.25rem;-moz-column-gap:1.25rem;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:first-of-type) .card-header:first-child{border-radius:0}.accordion>.card:not(:first-of-type):not(:last-of-type){border-bottom:0;border-radius:0}.accordion>.card:first-of-type{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:last-of-type{border-top-left-radius:0;border-top-right-radius:0}.accordion>.card .card-header{margin-bottom:-1px}.breadcrumb{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item::before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:underline}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:-ms-flexbox;display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:2;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:1;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@-webkit-keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}.progress{display:-ms-flexbox;display:flex;height:1rem;overflow:hidden;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:progress-bar-stripes 1s linear infinite;animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{-webkit-animation:none;animation:none}}.media{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start}.media-body{-ms-flex:1;flex:1}.list-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;margin-bottom:-1px;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-horizontal{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal .list-group-item:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{margin-right:0;border-top-right-radius:.25rem;border-bottom-right-radius:.25rem;border-bottom-left-radius:0}@media (min-width:576px){.list-group-horizontal-sm{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-sm .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal-sm .list-group-item:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{margin-right:0;border-top-right-radius:.25rem;border-bottom-right-radius:.25rem;border-bottom-left-radius:0}}@media (min-width:768px){.list-group-horizontal-md{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-md .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal-md .list-group-item:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{margin-right:0;border-top-right-radius:.25rem;border-bottom-right-radius:.25rem;border-bottom-left-radius:0}}@media (min-width:992px){.list-group-horizontal-lg{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-lg .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal-lg .list-group-item:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{margin-right:0;border-top-right-radius:.25rem;border-bottom-right-radius:.25rem;border-bottom-left-radius:0}}@media (min-width:1200px){.list-group-horizontal-xl{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xl .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal-xl .list-group-item:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{margin-right:0;border-top-right-radius:.25rem;border-bottom-right-radius:.25rem;border-bottom-left-radius:0}}.list-group-flush .list-group-item{border-right:0;border-left:0;border-radius:0}.list-group-flush .list-group-item:last-child{margin-bottom:-1px}.list-group-flush:first-child .list-group-item:first-child{border-top:0}.list-group-flush:last-child .list-group-item:last-child{margin-bottom:0;border-bottom:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:transparent;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:rgba(255,255,255,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:rgba(255,255,255,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translate(0,-50px);transform:translate(0,-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{-webkit-transform:none;transform:none}.modal-dialog-scrollable{display:-ms-flexbox;display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{-ms-flex-negative:0;flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered::before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable::before{content:none}.modal-content{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:justify;justify-content:space-between;padding:1rem 1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:.3rem;border-top-right-radius:.3rem}.modal-header .close{padding:1rem 1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem}.modal-footer{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end;padding:1rem;border-top:1px solid #dee2e6;border-bottom-right-radius:.3rem;border-bottom-left-radius:.3rem}.modal-footer>:not(:first-child){margin-left:.25rem}.modal-footer>:not(:last-child){margin-right:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered::before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow::before,.bs-tooltip-top .arrow::before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow::before,.bs-tooltip-right .arrow::before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow::before,.bs-tooltip-bottom .arrow::before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow::before,.bs-tooltip-left .arrow::before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{position:absolute;top:0;left:0;z-index:1060;display:block;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .arrow{position:absolute;display:block;width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow::after,.popover .arrow::before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc((.5rem + 1px) * -1)}.bs-popover-auto[x-placement^=top]>.arrow::before,.bs-popover-top>.arrow::before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow::after,.bs-popover-top>.arrow::after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc((.5rem + 1px) * -1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow::before,.bs-popover-right>.arrow::before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow::after,.bs-popover-right>.arrow::after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc((.5rem + 1px) * -1)}.bs-popover-auto[x-placement^=bottom]>.arrow::before,.bs-popover-bottom>.arrow::before{top:0;border-width:0 .5rem .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow::after,.bs-popover-bottom>.arrow::after{top:1px;border-width:0 .5rem .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc((.5rem + 1px) * -1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow::before,.bs-popover-left>.arrow::before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow::after,.bs-popover-left>.arrow::after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{-ms-touch-action:pan-y;touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){-webkit-transform:translateX(100%);transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){-webkit-transform:translateX(-100%);transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;-webkit-transform:none;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:0s .6s opacity}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:content-box;-ms-flex:0 1 auto;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@-webkit-keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid currentColor;border-right-color:transparent;border-radius:50%;-webkit-animation:spinner-border .75s linear infinite;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@-webkit-keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1}}@keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;-webkit-animation:spinner-grow .75s linear infinite;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important;border-top-right-radius:.25rem!important}.rounded-right{border-top-right-radius:.25rem!important;border-bottom-right-radius:.25rem!important}.rounded-bottom{border-bottom-right-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix::after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive::before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9::before{padding-top:42.857143%}.embed-responsive-16by9::before{padding-top:56.25%}.embed-responsive-4by3::before{padding-top:75%}.embed-responsive-1by1::before{padding-top:100%}.flex-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}@media (min-width:576px){.flex-sm-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-sm-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-sm-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-sm-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-sm-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-sm-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:768px){.flex-md-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-md-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-md-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-md-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-md-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-md-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-md-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-md-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-md-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-md-center{-ms-flex-align:center!important;align-items:center!important}.align-items-md-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-lg-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-lg-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-lg-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-lg-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-lg-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-lg-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-lg-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-lg-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-lg-center{-ms-flex-align:center!important;align-items:center!important}.align-items-lg-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-xl-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xl-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-xl-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-xl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-xl-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-xl-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xl-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xl-center{-ms-flex-align:center!important;align-items:center!important}.align-items-xl-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;position:sticky!important}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}@supports ((position:-webkit-sticky) or (position:sticky)){.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:rgba(0,0,0,0)}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:rgba(255,255,255,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,::after,::before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]::after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}body{min-width:992px!important}.container{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}} -/*# sourceMappingURL=bootstrap.min.css.map */ \ No newline at end of file diff --git a/Drums/VDrumExplorer.Blazor/wwwroot/css/bootstrap/bootstrap.min.css.map b/Drums/VDrumExplorer.Blazor/wwwroot/css/bootstrap/bootstrap.min.css.map deleted file mode 100644 index 1e9cb78a..00000000 --- a/Drums/VDrumExplorer.Blazor/wwwroot/css/bootstrap/bootstrap.min.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../scss/bootstrap.scss","../../scss/_root.scss","../../scss/_reboot.scss","dist/css/bootstrap.css","../../scss/vendor/_rfs.scss","bootstrap.css","../../scss/mixins/_hover.scss","../../scss/_type.scss","../../scss/mixins/_lists.scss","../../scss/_images.scss","../../scss/mixins/_image.scss","../../scss/mixins/_border-radius.scss","../../scss/_code.scss","../../scss/_grid.scss","../../scss/mixins/_grid.scss","../../scss/mixins/_breakpoints.scss","../../scss/mixins/_grid-framework.scss","../../scss/_tables.scss","../../scss/mixins/_table-row.scss","../../scss/_forms.scss","../../scss/mixins/_transition.scss","../../scss/mixins/_forms.scss","../../scss/mixins/_gradients.scss","../../scss/_buttons.scss","../../scss/mixins/_buttons.scss","../../scss/_transitions.scss","../../scss/_dropdown.scss","../../scss/mixins/_caret.scss","../../scss/mixins/_nav-divider.scss","../../scss/_button-group.scss","../../scss/_input-group.scss","../../scss/_custom-forms.scss","../../scss/_nav.scss","../../scss/_navbar.scss","../../scss/_card.scss","../../scss/_breadcrumb.scss","../../scss/_pagination.scss","../../scss/mixins/_pagination.scss","../../scss/_badge.scss","../../scss/mixins/_badge.scss","../../scss/_jumbotron.scss","../../scss/_alert.scss","../../scss/mixins/_alert.scss","../../scss/_progress.scss","../../scss/_media.scss","../../scss/_list-group.scss","../../scss/mixins/_list-group.scss","../../scss/_close.scss","../../scss/_toasts.scss","../../scss/_modal.scss","../../scss/_tooltip.scss","../../scss/mixins/_reset-text.scss","../../scss/_popover.scss","../../scss/_carousel.scss","../../scss/mixins/_clearfix.scss","../../scss/_spinners.scss","../../scss/utilities/_align.scss","../../scss/mixins/_background-variant.scss","../../scss/utilities/_background.scss","../../scss/utilities/_borders.scss","../../scss/utilities/_display.scss","../../scss/utilities/_embed.scss","../../scss/utilities/_flex.scss","../../scss/utilities/_float.scss","../../scss/utilities/_overflow.scss","../../scss/utilities/_position.scss","../../scss/utilities/_screenreaders.scss","../../scss/mixins/_screen-reader.scss","../../scss/utilities/_shadows.scss","../../scss/utilities/_sizing.scss","../../scss/utilities/_stretched-link.scss","../../scss/utilities/_spacing.scss","../../scss/utilities/_text.scss","../../scss/mixins/_text-truncate.scss","../../scss/mixins/_text-emphasis.scss","../../scss/mixins/_text-hide.scss","../../scss/utilities/_visibility.scss","../../scss/_print.scss"],"names":[],"mappings":"AAAA;;;;;ACAA,MAGI,OAAA,QAAA,SAAA,QAAA,SAAA,QAAA,OAAA,QAAA,MAAA,QAAA,SAAA,QAAA,SAAA,QAAA,QAAA,QAAA,OAAA,QAAA,OAAA,QAAA,QAAA,KAAA,OAAA,QAAA,YAAA,QAIA,UAAA,QAAA,YAAA,QAAA,UAAA,QAAA,OAAA,QAAA,UAAA,QAAA,SAAA,QAAA,QAAA,QAAA,OAAA,QAIA,gBAAA,EAAA,gBAAA,MAAA,gBAAA,MAAA,gBAAA,MAAA,gBAAA,OAKF,yBAAA,aAAA,CAAA,kBAAA,CAAA,UAAA,CAAA,MAAA,CAAA,gBAAA,CAAA,KAAA,CAAA,WAAA,CAAA,UAAA,CAAA,mBAAA,CAAA,gBAAA,CAAA,iBAAA,CAAA,mBACA,wBAAA,cAAA,CAAA,KAAA,CAAA,MAAA,CAAA,QAAA,CAAA,iBAAA,CAAA,aAAA,CAAA,UCCF,ECqBA,QADA,SDjBE,WAAA,WAGF,KACE,YAAA,WACA,YAAA,KACA,yBAAA,KACA,4BAAA,YAMF,QAAA,MAAA,WAAA,OAAA,OAAA,OAAA,OAAA,KAAA,IAAA,QACE,QAAA,MAUF,KACE,OAAA,EACA,YAAA,aAAA,CAAA,kBAAA,CAAA,UAAA,CAAA,MAAA,CAAA,gBAAA,CAAA,KAAA,CAAA,WAAA,CAAA,UAAA,CAAA,mBAAA,CAAA,gBAAA,CAAA,iBAAA,CAAA,mBEgFI,UAAA,KF9EJ,YAAA,IACA,YAAA,IACA,MAAA,QACA,WAAA,KACA,iBAAA,KGYF,sBHHE,QAAA,YASF,GACE,WAAA,YACA,OAAA,EACA,SAAA,QAaF,GAAA,GAAA,GAAA,GAAA,GAAA,GACE,WAAA,EACA,cAAA,MAOF,EACE,WAAA,EACA,cAAA,KCZF,0BDuBA,YAEE,gBAAA,UACA,wBAAA,UAAA,OAAA,gBAAA,UAAA,OACA,OAAA,KACA,cAAA,EACA,iCAAA,KAAA,yBAAA,KAGF,QACE,cAAA,KACA,WAAA,OACA,YAAA,QCjBF,GDoBA,GCrBA,GDwBE,WAAA,EACA,cAAA,KAGF,MCpBA,MACA,MAFA,MDyBE,cAAA,EAGF,GACE,YAAA,IAGF,GACE,cAAA,MACA,YAAA,EAGF,WACE,OAAA,EAAA,EAAA,KAGF,ECrBA,ODuBE,YAAA,OAGF,MEpFI,UAAA,IF6FJ,IC1BA,ID4BE,SAAA,SE/FE,UAAA,IFiGF,YAAA,EACA,eAAA,SAGF,IAAM,OAAA,OACN,IAAM,IAAA,MAON,EACE,MAAA,QACA,gBAAA,KACA,iBAAA,YI5KA,QJ+KE,MAAA,QACA,gBAAA,UAUJ,8BACE,MAAA,QACA,gBAAA,KIxLA,oCAAA,oCJ2LE,MAAA,QACA,gBAAA,KANJ,oCAUI,QAAA,EC5BJ,KACA,IDoCA,ICnCA,KDuCE,YAAA,cAAA,CAAA,KAAA,CAAA,MAAA,CAAA,QAAA,CAAA,iBAAA,CAAA,aAAA,CAAA,UErJE,UAAA,IFyJJ,IAEE,WAAA,EAEA,cAAA,KAEA,SAAA,KAQF,OAEE,OAAA,EAAA,EAAA,KAQF,IACE,eAAA,OACA,aAAA,KAGF,IAGE,SAAA,OACA,eAAA,OAQF,MACE,gBAAA,SAGF,QACE,YAAA,OACA,eAAA,OACA,MAAA,QACA,WAAA,KACA,aAAA,OAGF,GAGE,WAAA,QAQF,MAEE,QAAA,aACA,cAAA,MAMF,OAEE,cAAA,EAOF,aACE,QAAA,IAAA,OACA,QAAA,IAAA,KAAA,yBCvEF,OD0EA,MCxEA,SADA,OAEA,SD4EE,OAAA,EACA,YAAA,QEtPE,UAAA,QFwPF,YAAA,QAGF,OC1EA,MD4EE,SAAA,QAGF,OC1EA,OD4EE,eAAA,KAMF,OACE,UAAA,OC1EF,cACA,aACA,cD+EA,OAIE,mBAAA,OC9EF,6BACA,4BACA,6BDiFE,sBAKI,OAAA,QCjFN,gCACA,+BACA,gCDqFA,yBAIE,QAAA,EACA,aAAA,KCpFF,qBDuFA,kBAEE,WAAA,WACA,QAAA,EAIF,iBCvFA,2BACA,kBAFA,iBDiGE,mBAAA,QAGF,SACE,SAAA,KAEA,OAAA,SAGF,SAME,UAAA,EAEA,QAAA,EACA,OAAA,EACA,OAAA,EAKF,OACE,QAAA,MACA,MAAA,KACA,UAAA,KACA,QAAA,EACA,cAAA,MElSI,UAAA,OFoSJ,YAAA,QACA,MAAA,QACA,YAAA,OAGF,SACE,eAAA,SGtGF,yCFGA,yCDyGE,OAAA,KGvGF,cH+GE,eAAA,KACA,mBAAA,KG3GF,yCHmHE,mBAAA,KAQF,6BACE,KAAA,QACA,mBAAA,OAOF,OACE,QAAA,aAGF,QACE,QAAA,UACA,OAAA,QAGF,SACE,QAAA,KGxHF,SH8HE,QAAA,eCvHF,IAAK,IAAK,IAAK,IAAK,IAAK,IIpWzB,GAAA,GAAA,GAAA,GAAA,GAAA,GAEE,cAAA,MAEA,YAAA,IACA,YAAA,IAIF,IAAA,GHgHM,UAAA,OG/GN,IAAA,GH+GM,UAAA,KG9GN,IAAA,GH8GM,UAAA,QG7GN,IAAA,GH6GM,UAAA,OG5GN,IAAA,GH4GM,UAAA,QG3GN,IAAA,GH2GM,UAAA,KGzGN,MHyGM,UAAA,QGvGJ,YAAA,IAIF,WHmGM,UAAA,KGjGJ,YAAA,IACA,YAAA,IAEF,WH8FM,UAAA,OG5FJ,YAAA,IACA,YAAA,IAEF,WHyFM,UAAA,OGvFJ,YAAA,IACA,YAAA,IAEF,WHoFM,UAAA,OGlFJ,YAAA,IACA,YAAA,ILyBF,GKhBE,WAAA,KACA,cAAA,KACA,OAAA,EACA,WAAA,IAAA,MAAA,eJmXF,OI3WA,MHMI,UAAA,IGHF,YAAA,IJ8WF,MI3WA,KAEE,QAAA,KACA,iBAAA,QAQF,eC/EE,aAAA,EACA,WAAA,KDmFF,aCpFE,aAAA,EACA,WAAA,KDsFF,kBACE,QAAA,aADF,mCAII,aAAA,MAUJ,YHjCI,UAAA,IGmCF,eAAA,UAIF,YACE,cAAA,KHeI,UAAA,QGXN,mBACE,QAAA,MH7CE,UAAA,IG+CF,MAAA,QAHF,2BAMI,QAAA,aEnHJ,WCIE,UAAA,KAGA,OAAA,KDDF,eACE,QAAA,OACA,iBAAA,KACA,OAAA,IAAA,MAAA,QEXE,cAAA,ODMF,UAAA,KAGA,OAAA,KDcF,QAEE,QAAA,aAGF,YACE,cAAA,MACA,YAAA,EAGF,gBLkCI,UAAA,IKhCF,MAAA,QGvCF,KRuEI,UAAA,MQrEF,MAAA,QACA,WAAA,WAGA,OACE,MAAA,QAKJ,IACE,QAAA,MAAA,MR0DE,UAAA,MQxDF,MAAA,KACA,iBAAA,QDZE,cAAA,MCQJ,QASI,QAAA,ERkDA,UAAA,KQhDA,YAAA,IVyMJ,IUlME,QAAA,MRyCE,UAAA,MQvCF,MAAA,QAHF,SR0CI,UAAA,QQlCA,MAAA,QACA,WAAA,OAKJ,gBACE,WAAA,MACA,WAAA,OCzCA,WCAA,MAAA,KACA,cAAA,KACA,aAAA,KACA,aAAA,KACA,YAAA,KCmDE,yBFvDF,WCYI,UAAA,OC2CF,yBFvDF,WCYI,UAAA,OC2CF,yBFvDF,WCYI,UAAA,OC2CF,0BFvDF,WCYI,UAAA,QDAJ,iBCZA,MAAA,KACA,cAAA,KACA,aAAA,KACA,aAAA,KACA,YAAA,KDkBA,KCJA,QAAA,YAAA,QAAA,KACA,cAAA,KAAA,UAAA,KACA,aAAA,MACA,YAAA,MDOA,YACE,aAAA,EACA,YAAA,EAFF,iBVyjBF,0BUnjBM,cAAA,EACA,aAAA,EGjCJ,KAAA,OAAA,QAAA,QAAA,QAAA,OAAA,OAAA,OAAA,OAAA,OAAA,OAAA,OAAA,ObylBF,UAEqJ,QAAvI,UAAmG,WAAY,WAAY,WAAhH,UAAW,UAAW,UAAW,UAAW,UAAW,UAAW,UAAW,UACtG,aAFqJ,QAAvI,UAAmG,WAAY,WAAY,WAAhH,UAAW,UAAW,UAAW,UAAW,UAAW,UAAW,UAAW,UACtG,aAFkJ,QAAvI,UAAmG,WAAY,WAAY,WAAhH,UAAW,UAAW,UAAW,UAAW,UAAW,UAAW,UAAW,UACnG,aAEqJ,QAAvI,UAAmG,WAAY,WAAY,WAAhH,UAAW,UAAW,UAAW,UAAW,UAAW,UAAW,UAAW,UACtG,aa5lBI,SAAA,SACA,MAAA,KACA,cAAA,KACA,aAAA,KAmBE,KACE,wBAAA,EAAA,WAAA,EACA,kBAAA,EAAA,UAAA,EACA,UAAA,KAEF,UACE,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KACA,MAAA,KACA,UAAA,KAIA,OFFN,SAAA,EAAA,EAAA,UAAA,KAAA,EAAA,EAAA,UAIA,UAAA,UEFM,OFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,OFFN,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IAIA,UAAA,IEFM,OFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,OFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,OFFN,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IAIA,UAAA,IEFM,OFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,OFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,OFFN,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IAIA,UAAA,IEFM,QFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,QFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,QFFN,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAIA,UAAA,KEGI,aAAwB,eAAA,GAAA,MAAA,GAExB,YAAuB,eAAA,GAAA,MAAA,GAGrB,SAAwB,eAAA,EAAA,MAAA,EAAxB,SAAwB,eAAA,EAAA,MAAA,EAAxB,SAAwB,eAAA,EAAA,MAAA,EAAxB,SAAwB,eAAA,EAAA,MAAA,EAAxB,SAAwB,eAAA,EAAA,MAAA,EAAxB,SAAwB,eAAA,EAAA,MAAA,EAAxB,SAAwB,eAAA,EAAA,MAAA,EAAxB,SAAwB,eAAA,EAAA,MAAA,EAAxB,SAAwB,eAAA,EAAA,MAAA,EAAxB,SAAwB,eAAA,EAAA,MAAA,EAAxB,UAAwB,eAAA,GAAA,MAAA,GAAxB,UAAwB,eAAA,GAAA,MAAA,GAAxB,UAAwB,eAAA,GAAA,MAAA,GAMtB,UFTR,YAAA,UESQ,UFTR,YAAA,WESQ,UFTR,YAAA,IESQ,UFTR,YAAA,WESQ,UFTR,YAAA,WESQ,UFTR,YAAA,IESQ,UFTR,YAAA,WESQ,UFTR,YAAA,WESQ,UFTR,YAAA,IESQ,WFTR,YAAA,WESQ,WFTR,YAAA,WCWE,yBC9BE,QACE,wBAAA,EAAA,WAAA,EACA,kBAAA,EAAA,UAAA,EACA,UAAA,KAEF,aACE,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KACA,MAAA,KACA,UAAA,KAIA,UFFN,SAAA,EAAA,EAAA,UAAA,KAAA,EAAA,EAAA,UAIA,UAAA,UEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IAIA,UAAA,IEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IAIA,UAAA,IEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IAIA,UAAA,IEFM,WFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,WFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,WFFN,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAIA,UAAA,KEGI,gBAAwB,eAAA,GAAA,MAAA,GAExB,eAAuB,eAAA,GAAA,MAAA,GAGrB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,aAAwB,eAAA,GAAA,MAAA,GAAxB,aAAwB,eAAA,GAAA,MAAA,GAAxB,aAAwB,eAAA,GAAA,MAAA,GAMtB,aFTR,YAAA,EESQ,aFTR,YAAA,UESQ,aFTR,YAAA,WESQ,aFTR,YAAA,IESQ,aFTR,YAAA,WESQ,aFTR,YAAA,WESQ,aFTR,YAAA,IESQ,aFTR,YAAA,WESQ,aFTR,YAAA,WESQ,aFTR,YAAA,IESQ,cFTR,YAAA,WESQ,cFTR,YAAA,YCWE,yBC9BE,QACE,wBAAA,EAAA,WAAA,EACA,kBAAA,EAAA,UAAA,EACA,UAAA,KAEF,aACE,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KACA,MAAA,KACA,UAAA,KAIA,UFFN,SAAA,EAAA,EAAA,UAAA,KAAA,EAAA,EAAA,UAIA,UAAA,UEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IAIA,UAAA,IEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IAIA,UAAA,IEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IAIA,UAAA,IEFM,WFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,WFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,WFFN,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAIA,UAAA,KEGI,gBAAwB,eAAA,GAAA,MAAA,GAExB,eAAuB,eAAA,GAAA,MAAA,GAGrB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,aAAwB,eAAA,GAAA,MAAA,GAAxB,aAAwB,eAAA,GAAA,MAAA,GAAxB,aAAwB,eAAA,GAAA,MAAA,GAMtB,aFTR,YAAA,EESQ,aFTR,YAAA,UESQ,aFTR,YAAA,WESQ,aFTR,YAAA,IESQ,aFTR,YAAA,WESQ,aFTR,YAAA,WESQ,aFTR,YAAA,IESQ,aFTR,YAAA,WESQ,aFTR,YAAA,WESQ,aFTR,YAAA,IESQ,cFTR,YAAA,WESQ,cFTR,YAAA,YCWE,yBC9BE,QACE,wBAAA,EAAA,WAAA,EACA,kBAAA,EAAA,UAAA,EACA,UAAA,KAEF,aACE,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KACA,MAAA,KACA,UAAA,KAIA,UFFN,SAAA,EAAA,EAAA,UAAA,KAAA,EAAA,EAAA,UAIA,UAAA,UEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IAIA,UAAA,IEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IAIA,UAAA,IEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IAIA,UAAA,IEFM,WFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,WFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,WFFN,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAIA,UAAA,KEGI,gBAAwB,eAAA,GAAA,MAAA,GAExB,eAAuB,eAAA,GAAA,MAAA,GAGrB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,aAAwB,eAAA,GAAA,MAAA,GAAxB,aAAwB,eAAA,GAAA,MAAA,GAAxB,aAAwB,eAAA,GAAA,MAAA,GAMtB,aFTR,YAAA,EESQ,aFTR,YAAA,UESQ,aFTR,YAAA,WESQ,aFTR,YAAA,IESQ,aFTR,YAAA,WESQ,aFTR,YAAA,WESQ,aFTR,YAAA,IESQ,aFTR,YAAA,WESQ,aFTR,YAAA,WESQ,aFTR,YAAA,IESQ,cFTR,YAAA,WESQ,cFTR,YAAA,YCWE,0BC9BE,QACE,wBAAA,EAAA,WAAA,EACA,kBAAA,EAAA,UAAA,EACA,UAAA,KAEF,aACE,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KACA,MAAA,KACA,UAAA,KAIA,UFFN,SAAA,EAAA,EAAA,UAAA,KAAA,EAAA,EAAA,UAIA,UAAA,UEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IAIA,UAAA,IEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IAIA,UAAA,IEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,UFFN,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IAIA,UAAA,IEFM,WFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,WFFN,SAAA,EAAA,EAAA,WAAA,KAAA,EAAA,EAAA,WAIA,UAAA,WEFM,WFFN,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAIA,UAAA,KEGI,gBAAwB,eAAA,GAAA,MAAA,GAExB,eAAuB,eAAA,GAAA,MAAA,GAGrB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,YAAwB,eAAA,EAAA,MAAA,EAAxB,aAAwB,eAAA,GAAA,MAAA,GAAxB,aAAwB,eAAA,GAAA,MAAA,GAAxB,aAAwB,eAAA,GAAA,MAAA,GAMtB,aFTR,YAAA,EESQ,aFTR,YAAA,UESQ,aFTR,YAAA,WESQ,aFTR,YAAA,IESQ,aFTR,YAAA,WESQ,aFTR,YAAA,WESQ,aFTR,YAAA,IESQ,aFTR,YAAA,WESQ,aFTR,YAAA,WESQ,aFTR,YAAA,IESQ,cFTR,YAAA,WESQ,cFTR,YAAA,YG7CF,OACE,MAAA,KACA,cAAA,KACA,MAAA,Qdy+CF,Uc5+CA,UAQI,QAAA,OACA,eAAA,IACA,WAAA,IAAA,MAAA,QAVJ,gBAcI,eAAA,OACA,cAAA,IAAA,MAAA,QAfJ,mBAmBI,WAAA,IAAA,MAAA,Qdy+CJ,ach+CA,aAGI,QAAA,MASJ,gBACE,OAAA,IAAA,MAAA,Qd49CF,mBc79CA,mBAKI,OAAA,IAAA,MAAA,Qd69CJ,yBcl+CA,yBAWM,oBAAA,Id89CN,8BAFA,qBcv9CA,qBdw9CA,2Bcn9CI,OAAA,EAQJ,yCAEI,iBAAA,gBX/DF,4BW2EI,MAAA,QACA,iBAAA,iBCnFJ,ef+hDF,kBADA,kBe1hDM,iBAAA,QfkiDN,2BAFA,kBepiDE,kBfqiDF,wBezhDQ,aAAA,QZLN,kCYiBM,iBAAA,QALN,qCf4hDF,qCenhDU,iBAAA,QA5BR,iBfqjDF,oBADA,oBehjDM,iBAAA,QfwjDN,6BAFA,oBe1jDE,oBf2jDF,0Be/iDQ,aAAA,QZLN,oCYiBM,iBAAA,QALN,uCfkjDF,uCeziDU,iBAAA,QA5BR,ef2kDF,kBADA,kBetkDM,iBAAA,Qf8kDN,2BAFA,kBehlDE,kBfilDF,wBerkDQ,aAAA,QZLN,kCYiBM,iBAAA,QALN,qCfwkDF,qCe/jDU,iBAAA,QA5BR,YfimDF,eADA,ee5lDM,iBAAA,QfomDN,wBAFA,eetmDE,efumDF,qBe3lDQ,aAAA,QZLN,+BYiBM,iBAAA,QALN,kCf8lDF,kCerlDU,iBAAA,QA5BR,efunDF,kBADA,kBelnDM,iBAAA,Qf0nDN,2BAFA,kBe5nDE,kBf6nDF,wBejnDQ,aAAA,QZLN,kCYiBM,iBAAA,QALN,qCfonDF,qCe3mDU,iBAAA,QA5BR,cf6oDF,iBADA,iBexoDM,iBAAA,QfgpDN,0BAFA,iBelpDE,iBfmpDF,uBevoDQ,aAAA,QZLN,iCYiBM,iBAAA,QALN,oCf0oDF,oCejoDU,iBAAA,QA5BR,afmqDF,gBADA,gBe9pDM,iBAAA,QfsqDN,yBAFA,gBexqDE,gBfyqDF,sBe7pDQ,aAAA,QZLN,gCYiBM,iBAAA,QALN,mCfgqDF,mCevpDU,iBAAA,QA5BR,YfyrDF,eADA,eeprDM,iBAAA,Qf4rDN,wBAFA,ee9rDE,ef+rDF,qBenrDQ,aAAA,QZLN,+BYiBM,iBAAA,QALN,kCfsrDF,kCe7qDU,iBAAA,QA5BR,cf+sDF,iBADA,iBe1sDM,iBAAA,iBZGJ,iCYiBM,iBAAA,iBALN,oCfqsDF,oCe5rDU,iBAAA,iBD8EV,sBAGM,MAAA,KACA,iBAAA,QACA,aAAA,QALN,uBAWM,MAAA,QACA,iBAAA,QACA,aAAA,QAKN,YACE,MAAA,KACA,iBAAA,QdgnDF,eclnDA,edmnDA,qBc5mDI,aAAA,QAPJ,2BAWI,OAAA,EAXJ,oDAgBM,iBAAA,sBXrIJ,uCW4IM,MAAA,KACA,iBAAA,uBFhFJ,4BEiGA,qBAEI,QAAA,MACA,MAAA,KACA,WAAA,KACA,2BAAA,MALH,qCASK,OAAA,GF1GN,4BEiGA,qBAEI,QAAA,MACA,MAAA,KACA,WAAA,KACA,2BAAA,MALH,qCASK,OAAA,GF1GN,4BEiGA,qBAEI,QAAA,MACA,MAAA,KACA,WAAA,KACA,2BAAA,MALH,qCASK,OAAA,GF1GN,6BEiGA,qBAEI,QAAA,MACA,MAAA,KACA,WAAA,KACA,2BAAA,MALH,qCASK,OAAA,GAdV,kBAOQ,QAAA,MACA,MAAA,KACA,WAAA,KACA,2BAAA,MAVR,kCAcU,OAAA,EE7KV,cACE,QAAA,MACA,MAAA,KACA,OAAA,2BACA,QAAA,QAAA,OfqHI,UAAA,KelHJ,YAAA,IACA,YAAA,IACA,MAAA,QACA,iBAAA,KACA,gBAAA,YACA,OAAA,IAAA,MAAA,QRbE,cAAA,OSCE,WAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,YAKF,uCDLJ,cCMM,WAAA,MDNN,0BAsBI,iBAAA,YACA,OAAA,EEhBF,oBACE,MAAA,QACA,iBAAA,KACA,aAAA,QACA,QAAA,EAKE,WAAA,EAAA,EAAA,EAAA,MAAA,oBFhBN,yCA+BI,MAAA,QAEA,QAAA,EAjCJ,gCA+BI,MAAA,QAEA,QAAA,EAjCJ,oCA+BI,MAAA,QAEA,QAAA,EAjCJ,qCA+BI,MAAA,QAEA,QAAA,EAjCJ,2BA+BI,MAAA,QAEA,QAAA,EAjCJ,uBAAA,wBA2CI,iBAAA,QAEA,QAAA,EAIJ,qCAOI,MAAA,QACA,iBAAA,KAKJ,mBhBm0DA,oBgBj0DE,QAAA,MACA,MAAA,KAUF,gBACE,YAAA,oBACA,eAAA,oBACA,cAAA,EfZE,UAAA,QecF,YAAA,IAGF,mBACE,YAAA,kBACA,eAAA,kBfoCI,UAAA,QelCJ,YAAA,IAGF,mBACE,YAAA,mBACA,eAAA,mBf6BI,UAAA,Qe3BJ,YAAA,IASF,wBACE,QAAA,MACA,MAAA,KACA,YAAA,QACA,eAAA,QACA,cAAA,EACA,YAAA,IACA,MAAA,QACA,iBAAA,YACA,OAAA,MAAA,YACA,aAAA,IAAA,EAVF,wCAAA,wCAcI,cAAA,EACA,aAAA,EAYJ,iBACE,OAAA,0BACA,QAAA,OAAA,MfXI,UAAA,QeaJ,YAAA,IRvIE,cAAA,MQ2IJ,iBACE,OAAA,yBACA,QAAA,MAAA,KfnBI,UAAA,QeqBJ,YAAA,IR/IE,cAAA,MQoJJ,8BAAA,0BAGI,OAAA,KAIJ,sBACE,OAAA,KAQF,YACE,cAAA,KAGF,WACE,QAAA,MACA,WAAA,OAQF,UACE,QAAA,YAAA,QAAA,KACA,cAAA,KAAA,UAAA,KACA,aAAA,KACA,YAAA,KAJF,ehBwyDA,wBgBhyDI,cAAA,IACA,aAAA,IASJ,YACE,SAAA,SACA,QAAA,MACA,aAAA,QAGF,kBACE,SAAA,SACA,WAAA,MACA,YAAA,SAHF,6CAMI,MAAA,QAIJ,kBACE,cAAA,EAGF,mBACE,QAAA,mBAAA,QAAA,YACA,eAAA,OAAA,YAAA,OACA,aAAA,EACA,aAAA,OAJF,qCAQI,SAAA,OACA,WAAA,EACA,aAAA,SACA,YAAA,EE3MF,gBACE,QAAA,KACA,MAAA,KACA,WAAA,OjBwCA,UAAA,IiBtCA,MAAA,QAGF,eACE,SAAA,SACA,IAAA,KACA,QAAA,EACA,QAAA,KACA,UAAA,KACA,QAAA,OAAA,MACA,WAAA,MjBmFE,UAAA,QiBjFF,YAAA,IACA,MAAA,KACA,iBAAA,mBV3CA,cAAA,OUgDA,uBAAA,mCAEE,aAAA,QAGE,cAAA,qBACA,iBAAA,2OACA,kBAAA,UACA,oBAAA,OAAA,MAAA,wBACA,gBAAA,sBAAA,sBATJ,6BAAA,yCAaI,aAAA,QACA,WAAA,EAAA,EAAA,EAAA,MAAA,oBlB2+D6C,uCACrD,sCkB1/DI,mDlBy/DJ,kDkBt+DQ,QAAA,MAOJ,2CAAA,+BAGI,cAAA,qBACA,oBAAA,IAAA,wBAAA,MAAA,wBAMJ,wBAAA,oCAEE,aAAA,QAGE,cAAA,uCACA,WAAA,0JAAA,UAAA,MAAA,OAAA,MAAA,CAAA,IAAA,IAAA,CAAA,2OAAA,KAAA,UAAA,OAAA,MAAA,OAAA,CAAA,sBAAA,sBANJ,8BAAA,0CAUI,aAAA,QACA,WAAA,EAAA,EAAA,EAAA,MAAA,oBlBg+D8C,wCACtD,uCkB5+DI,oDlB2+DJ,mDkB39DQ,QAAA,MlBi+DkD,4CAC1D,2CkB39DI,wDlB09DJ,uDkBt9DQ,QAAA,MAMJ,6CAAA,yDAGI,MAAA,QlBu9DiD,2CACzD,0CkB39DI,uDlB09DJ,sDkBl9DQ,QAAA,MAMJ,qDAAA,iEAGI,MAAA,QAHJ,6DAAA,yEAMM,aAAA,QlBo9DmD,+CAC7D,8CkB39DI,2DlB09DJ,0DkB98DQ,QAAA,MAZJ,qEAAA,iFAiBM,aAAA,QCnJN,iBAAA,QDkIA,mEAAA,+EAwBM,WAAA,EAAA,EAAA,EAAA,MAAA,oBAxBN,iFAAA,6FA4BM,aAAA,QAQN,+CAAA,2DAGI,aAAA,QlB08DkD,4CAC1D,2CkB98DI,wDlB68DJ,uDkBr8DQ,QAAA,MARJ,qDAAA,iEAaM,aAAA,QACA,WAAA,EAAA,EAAA,EAAA,MAAA,oBA7JR,kBACE,QAAA,KACA,MAAA,KACA,WAAA,OjBwCA,UAAA,IiBtCA,MAAA,QAGF,iBACE,SAAA,SACA,IAAA,KACA,QAAA,EACA,QAAA,KACA,UAAA,KACA,QAAA,OAAA,MACA,WAAA,MjBmFE,UAAA,QiBjFF,YAAA,IACA,MAAA,KACA,iBAAA,mBV3CA,cAAA,OUgDA,yBAAA,qCAEE,aAAA,QAGE,cAAA,qBACA,iBAAA,qRACA,kBAAA,UACA,oBAAA,OAAA,MAAA,wBACA,gBAAA,sBAAA,sBATJ,+BAAA,2CAaI,aAAA,QACA,WAAA,EAAA,EAAA,EAAA,MAAA,oBlBsmEiD,2CACzD,0CkBrnEI,uDlBonEJ,sDkBjmEQ,QAAA,MAOJ,6CAAA,iCAGI,cAAA,qBACA,oBAAA,IAAA,wBAAA,MAAA,wBAMJ,0BAAA,sCAEE,aAAA,QAGE,cAAA,uCACA,WAAA,0JAAA,UAAA,MAAA,OAAA,MAAA,CAAA,IAAA,IAAA,CAAA,qRAAA,KAAA,UAAA,OAAA,MAAA,OAAA,CAAA,sBAAA,sBANJ,gCAAA,4CAUI,aAAA,QACA,WAAA,EAAA,EAAA,EAAA,MAAA,oBlB2lEkD,4CAC1D,2CkBvmEI,wDlBsmEJ,uDkBtlEQ,QAAA,MlB4lEsD,gDAC9D,+CkBtlEI,4DlBqlEJ,2DkBjlEQ,QAAA,MAMJ,+CAAA,2DAGI,MAAA,QlBklEqD,+CAC7D,8CkBtlEI,2DlBqlEJ,0DkB7kEQ,QAAA,MAMJ,uDAAA,mEAGI,MAAA,QAHJ,+DAAA,2EAMM,aAAA,QlB+kEuD,mDACjE,kDkBtlEI,+DlBqlEJ,8DkBzkEQ,QAAA,MAZJ,uEAAA,mFAiBM,aAAA,QCnJN,iBAAA,QDkIA,qEAAA,iFAwBM,WAAA,EAAA,EAAA,EAAA,MAAA,oBAxBN,mFAAA,+FA4BM,aAAA,QAQN,iDAAA,6DAGI,aAAA,QlBqkEsD,gDAC9D,+CkBzkEI,4DlBwkEJ,2DkBhkEQ,QAAA,MARJ,uDAAA,mEAaM,aAAA,QACA,WAAA,EAAA,EAAA,EAAA,MAAA,oBFuEV,aACE,QAAA,YAAA,QAAA,KACA,cAAA,IAAA,KAAA,UAAA,IAAA,KACA,eAAA,OAAA,YAAA,OAHF,yBASI,MAAA,KJ9MA,yBIqMJ,mBAeM,QAAA,YAAA,QAAA,KACA,eAAA,OAAA,YAAA,OACA,cAAA,OAAA,gBAAA,OACA,cAAA,EAlBN,yBAuBM,QAAA,YAAA,QAAA,KACA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KACA,cAAA,IAAA,KAAA,UAAA,IAAA,KACA,eAAA,OAAA,YAAA,OACA,cAAA,EA3BN,2BAgCM,QAAA,aACA,MAAA,KACA,eAAA,OAlCN,qCAuCM,QAAA,ahBigEJ,4BgBxiEF,0BA4CM,MAAA,KA5CN,yBAkDM,QAAA,YAAA,QAAA,KACA,eAAA,OAAA,YAAA,OACA,cAAA,OAAA,gBAAA,OACA,MAAA,KACA,aAAA,EAtDN,+BAyDM,SAAA,SACA,kBAAA,EAAA,YAAA,EACA,WAAA,EACA,aAAA,OACA,YAAA,EA7DN,6BAiEM,eAAA,OAAA,YAAA,OACA,cAAA,OAAA,gBAAA,OAlEN,mCAqEM,cAAA,GIhUN,KACE,QAAA,aAEA,YAAA,IACA,MAAA,QACA,WAAA,OACA,eAAA,OACA,oBAAA,KAAA,iBAAA,KAAA,gBAAA,KAAA,YAAA,KACA,iBAAA,YACA,OAAA,IAAA,MAAA,YCsFA,QAAA,QAAA,OpB0BI,UAAA,KoBxBJ,YAAA,IblGE,cAAA,OSCE,WAAA,MAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,YAKF,uCGLJ,KHMM,WAAA,MdAJ,WiBQE,MAAA,QACA,gBAAA,KAfJ,WAAA,WAoBI,QAAA,EACA,WAAA,EAAA,EAAA,EAAA,MAAA,oBArBJ,cAAA,cA2BI,QAAA,IAeJ,epBi0EA,wBoB/zEE,eAAA,KASA,aCrDA,MAAA,KFAE,iBAAA,QEEF,aAAA,QlBIA,mBkBAE,MAAA,KFNA,iBAAA,QEQA,aAAA,QAGF,mBAAA,mBAMI,WAAA,EAAA,EAAA,EAAA,MAAA,oBAKJ,sBAAA,sBAEE,MAAA,KACA,iBAAA,QACA,aAAA,QAOF,kDAAA,kDrBq2EF,mCqBl2EI,MAAA,KACA,iBAAA,QAIA,aAAA,QAEA,wDAAA,wDrBk2EJ,yCqB71EQ,WAAA,EAAA,EAAA,EAAA,MAAA,oBDKN,eCrDA,MAAA,KFAE,iBAAA,QEEF,aAAA,QlBIA,qBkBAE,MAAA,KFNA,iBAAA,QEQA,aAAA,QAGF,qBAAA,qBAMI,WAAA,EAAA,EAAA,EAAA,MAAA,qBAKJ,wBAAA,wBAEE,MAAA,KACA,iBAAA,QACA,aAAA,QAOF,oDAAA,oDrBu4EF,qCqBp4EI,MAAA,KACA,iBAAA,QAIA,aAAA,QAEA,0DAAA,0DrBo4EJ,2CqB/3EQ,WAAA,EAAA,EAAA,EAAA,MAAA,qBDKN,aCrDA,MAAA,KFAE,iBAAA,QEEF,aAAA,QlBIA,mBkBAE,MAAA,KFNA,iBAAA,QEQA,aAAA,QAGF,mBAAA,mBAMI,WAAA,EAAA,EAAA,EAAA,MAAA,mBAKJ,sBAAA,sBAEE,MAAA,KACA,iBAAA,QACA,aAAA,QAOF,kDAAA,kDrBy6EF,mCqBt6EI,MAAA,KACA,iBAAA,QAIA,aAAA,QAEA,wDAAA,wDrBs6EJ,yCqBj6EQ,WAAA,EAAA,EAAA,EAAA,MAAA,mBDKN,UCrDA,MAAA,KFAE,iBAAA,QEEF,aAAA,QlBIA,gBkBAE,MAAA,KFNA,iBAAA,QEQA,aAAA,QAGF,gBAAA,gBAMI,WAAA,EAAA,EAAA,EAAA,MAAA,oBAKJ,mBAAA,mBAEE,MAAA,KACA,iBAAA,QACA,aAAA,QAOF,+CAAA,+CrB28EF,gCqBx8EI,MAAA,KACA,iBAAA,QAIA,aAAA,QAEA,qDAAA,qDrBw8EJ,sCqBn8EQ,WAAA,EAAA,EAAA,EAAA,MAAA,oBDKN,aCrDA,MAAA,QFAE,iBAAA,QEEF,aAAA,QlBIA,mBkBAE,MAAA,QFNA,iBAAA,QEQA,aAAA,QAGF,mBAAA,mBAMI,WAAA,EAAA,EAAA,EAAA,MAAA,oBAKJ,sBAAA,sBAEE,MAAA,QACA,iBAAA,QACA,aAAA,QAOF,kDAAA,kDrB6+EF,mCqB1+EI,MAAA,QACA,iBAAA,QAIA,aAAA,QAEA,wDAAA,wDrB0+EJ,yCqBr+EQ,WAAA,EAAA,EAAA,EAAA,MAAA,oBDKN,YCrDA,MAAA,KFAE,iBAAA,QEEF,aAAA,QlBIA,kBkBAE,MAAA,KFNA,iBAAA,QEQA,aAAA,QAGF,kBAAA,kBAMI,WAAA,EAAA,EAAA,EAAA,MAAA,mBAKJ,qBAAA,qBAEE,MAAA,KACA,iBAAA,QACA,aAAA,QAOF,iDAAA,iDrB+gFF,kCqB5gFI,MAAA,KACA,iBAAA,QAIA,aAAA,QAEA,uDAAA,uDrB4gFJ,wCqBvgFQ,WAAA,EAAA,EAAA,EAAA,MAAA,mBDKN,WCrDA,MAAA,QFAE,iBAAA,QEEF,aAAA,QlBIA,iBkBAE,MAAA,QFNA,iBAAA,QEQA,aAAA,QAGF,iBAAA,iBAMI,WAAA,EAAA,EAAA,EAAA,MAAA,qBAKJ,oBAAA,oBAEE,MAAA,QACA,iBAAA,QACA,aAAA,QAOF,gDAAA,gDrBijFF,iCqB9iFI,MAAA,QACA,iBAAA,QAIA,aAAA,QAEA,sDAAA,sDrB8iFJ,uCqBziFQ,WAAA,EAAA,EAAA,EAAA,MAAA,qBDKN,UCrDA,MAAA,KFAE,iBAAA,QEEF,aAAA,QlBIA,gBkBAE,MAAA,KFNA,iBAAA,QEQA,aAAA,QAGF,gBAAA,gBAMI,WAAA,EAAA,EAAA,EAAA,MAAA,kBAKJ,mBAAA,mBAEE,MAAA,KACA,iBAAA,QACA,aAAA,QAOF,+CAAA,+CrBmlFF,gCqBhlFI,MAAA,KACA,iBAAA,QAIA,aAAA,QAEA,qDAAA,qDrBglFJ,sCqB3kFQ,WAAA,EAAA,EAAA,EAAA,MAAA,kBDWN,qBCJA,MAAA,QACA,aAAA,QlBlDA,2BkBqDE,MAAA,KACA,iBAAA,QACA,aAAA,QAGF,2BAAA,2BAEE,WAAA,EAAA,EAAA,EAAA,MAAA,mBAGF,8BAAA,8BAEE,MAAA,QACA,iBAAA,YAGF,0DAAA,0DrBykFF,2CqBtkFI,MAAA,KACA,iBAAA,QACA,aAAA,QAEA,gEAAA,gErBykFJ,iDqBpkFQ,WAAA,EAAA,EAAA,EAAA,MAAA,mBD5BN,uBCJA,MAAA,QACA,aAAA,QlBlDA,6BkBqDE,MAAA,KACA,iBAAA,QACA,aAAA,QAGF,6BAAA,6BAEE,WAAA,EAAA,EAAA,EAAA,MAAA,qBAGF,gCAAA,gCAEE,MAAA,QACA,iBAAA,YAGF,4DAAA,4DrBymFF,6CqBtmFI,MAAA,KACA,iBAAA,QACA,aAAA,QAEA,kEAAA,kErBymFJ,mDqBpmFQ,WAAA,EAAA,EAAA,EAAA,MAAA,qBD5BN,qBCJA,MAAA,QACA,aAAA,QlBlDA,2BkBqDE,MAAA,KACA,iBAAA,QACA,aAAA,QAGF,2BAAA,2BAEE,WAAA,EAAA,EAAA,EAAA,MAAA,mBAGF,8BAAA,8BAEE,MAAA,QACA,iBAAA,YAGF,0DAAA,0DrByoFF,2CqBtoFI,MAAA,KACA,iBAAA,QACA,aAAA,QAEA,gEAAA,gErByoFJ,iDqBpoFQ,WAAA,EAAA,EAAA,EAAA,MAAA,mBD5BN,kBCJA,MAAA,QACA,aAAA,QlBlDA,wBkBqDE,MAAA,KACA,iBAAA,QACA,aAAA,QAGF,wBAAA,wBAEE,WAAA,EAAA,EAAA,EAAA,MAAA,oBAGF,2BAAA,2BAEE,MAAA,QACA,iBAAA,YAGF,uDAAA,uDrByqFF,wCqBtqFI,MAAA,KACA,iBAAA,QACA,aAAA,QAEA,6DAAA,6DrByqFJ,8CqBpqFQ,WAAA,EAAA,EAAA,EAAA,MAAA,oBD5BN,qBCJA,MAAA,QACA,aAAA,QlBlDA,2BkBqDE,MAAA,QACA,iBAAA,QACA,aAAA,QAGF,2BAAA,2BAEE,WAAA,EAAA,EAAA,EAAA,MAAA,mBAGF,8BAAA,8BAEE,MAAA,QACA,iBAAA,YAGF,0DAAA,0DrBysFF,2CqBtsFI,MAAA,QACA,iBAAA,QACA,aAAA,QAEA,gEAAA,gErBysFJ,iDqBpsFQ,WAAA,EAAA,EAAA,EAAA,MAAA,mBD5BN,oBCJA,MAAA,QACA,aAAA,QlBlDA,0BkBqDE,MAAA,KACA,iBAAA,QACA,aAAA,QAGF,0BAAA,0BAEE,WAAA,EAAA,EAAA,EAAA,MAAA,mBAGF,6BAAA,6BAEE,MAAA,QACA,iBAAA,YAGF,yDAAA,yDrByuFF,0CqBtuFI,MAAA,KACA,iBAAA,QACA,aAAA,QAEA,+DAAA,+DrByuFJ,gDqBpuFQ,WAAA,EAAA,EAAA,EAAA,MAAA,mBD5BN,mBCJA,MAAA,QACA,aAAA,QlBlDA,yBkBqDE,MAAA,QACA,iBAAA,QACA,aAAA,QAGF,yBAAA,yBAEE,WAAA,EAAA,EAAA,EAAA,MAAA,qBAGF,4BAAA,4BAEE,MAAA,QACA,iBAAA,YAGF,wDAAA,wDrBywFF,yCqBtwFI,MAAA,QACA,iBAAA,QACA,aAAA,QAEA,8DAAA,8DrBywFJ,+CqBpwFQ,WAAA,EAAA,EAAA,EAAA,MAAA,qBD5BN,kBCJA,MAAA,QACA,aAAA,QlBlDA,wBkBqDE,MAAA,KACA,iBAAA,QACA,aAAA,QAGF,wBAAA,wBAEE,WAAA,EAAA,EAAA,EAAA,MAAA,kBAGF,2BAAA,2BAEE,MAAA,QACA,iBAAA,YAGF,uDAAA,uDrByyFF,wCqBtyFI,MAAA,KACA,iBAAA,QACA,aAAA,QAEA,6DAAA,6DrByyFJ,8CqBpyFQ,WAAA,EAAA,EAAA,EAAA,MAAA,kBDjBR,UACE,YAAA,IACA,MAAA,QACA,gBAAA,KjBnEA,gBiBsEE,MAAA,QACA,gBAAA,UAPJ,gBAAA,gBAYI,gBAAA,UACA,WAAA,KAbJ,mBAAA,mBAkBI,MAAA,QACA,eAAA,KAWJ,mBAAA,QCLE,QAAA,MAAA,KpB0BI,UAAA,QoBxBJ,YAAA,IblGE,cAAA,MYyGJ,mBAAA,QCTE,QAAA,OAAA,MpB0BI,UAAA,QoBxBJ,YAAA,IblGE,cAAA,MYkHJ,WACE,QAAA,MACA,MAAA,KAFF,sBAMI,WAAA,MpBszFJ,6BADA,4BoBhzFA,6BAII,MAAA,KEtIJ,MLMM,WAAA,QAAA,KAAA,OAKF,uCKXJ,MLYM,WAAA,MKZN,iBAII,QAAA,EAIJ,qBAEI,QAAA,KAIJ,YACE,SAAA,SACA,OAAA,EACA,SAAA,OLXI,WAAA,OAAA,KAAA,KAKF,uCKGJ,YLFM,WAAA,MjB48FN,UACA,UAFA,WuBt9FA,QAIE,SAAA,SAGF,iBACE,YAAA,OCoBE,wBACE,QAAA,aACA,YAAA,OACA,eAAA,OACA,QAAA,GAhCJ,WAAA,KAAA,MACA,aAAA,KAAA,MAAA,YACA,cAAA,EACA,YAAA,KAAA,MAAA,YAqDE,8BACE,YAAA,ED1CN,eACE,SAAA,SACA,IAAA,KACA,KAAA,EACA,QAAA,KACA,QAAA,KACA,MAAA,KACA,UAAA,MACA,QAAA,MAAA,EACA,OAAA,QAAA,EAAA,EtBsGI,UAAA,KsBpGJ,MAAA,QACA,WAAA,KACA,WAAA,KACA,iBAAA,KACA,gBAAA,YACA,OAAA,IAAA,MAAA,gBf3BE,cAAA,OeoCA,oBACE,MAAA,KACA,KAAA,EAGF,qBACE,MAAA,EACA,KAAA,KXYF,yBWnBA,uBACE,MAAA,KACA,KAAA,EAGF,wBACE,MAAA,EACA,KAAA,MXYF,yBWnBA,uBACE,MAAA,KACA,KAAA,EAGF,wBACE,MAAA,EACA,KAAA,MXYF,yBWnBA,uBACE,MAAA,KACA,KAAA,EAGF,wBACE,MAAA,EACA,KAAA,MXYF,0BWnBA,uBACE,MAAA,KACA,KAAA,EAGF,wBACE,MAAA,EACA,KAAA,MAON,uBAEI,IAAA,KACA,OAAA,KACA,WAAA,EACA,cAAA,QC/BA,gCACE,QAAA,aACA,YAAA,OACA,eAAA,OACA,QAAA,GAzBJ,WAAA,EACA,aAAA,KAAA,MAAA,YACA,cAAA,KAAA,MACA,YAAA,KAAA,MAAA,YA8CE,sCACE,YAAA,EDUN,0BAEI,IAAA,EACA,MAAA,KACA,KAAA,KACA,WAAA,EACA,YAAA,QC7CA,mCACE,QAAA,aACA,YAAA,OACA,eAAA,OACA,QAAA,GAlBJ,WAAA,KAAA,MAAA,YACA,aAAA,EACA,cAAA,KAAA,MAAA,YACA,YAAA,KAAA,MAuCE,yCACE,YAAA,EA7BF,mCDmDE,eAAA,EAKN,yBAEI,IAAA,EACA,MAAA,KACA,KAAA,KACA,WAAA,EACA,aAAA,QC9DA,kCACE,QAAA,aACA,YAAA,OACA,eAAA,OACA,QAAA,GAJF,kCAgBI,QAAA,KAGF,mCACE,QAAA,aACA,aAAA,OACA,eAAA,OACA,QAAA,GA9BN,WAAA,KAAA,MAAA,YACA,aAAA,KAAA,MACA,cAAA,KAAA,MAAA,YAiCE,wCACE,YAAA,EAVA,mCDiDA,eAAA,EAON,oCAAA,kCAAA,mCAAA,iCAKI,MAAA,KACA,OAAA,KAKJ,kBE9GE,OAAA,EACA,OAAA,MAAA,EACA,SAAA,OACA,WAAA,IAAA,MAAA,QFkHF,eACE,QAAA,MACA,MAAA,KACA,QAAA,OAAA,OACA,MAAA,KACA,YAAA,IACA,MAAA,QACA,WAAA,QACA,YAAA,OACA,iBAAA,YACA,OAAA,EpBpHA,qBAAA,qBoBmIE,MAAA,QACA,gBAAA,KJ9IA,iBAAA,QIoHJ,sBAAA,sBAgCI,MAAA,KACA,gBAAA,KJrJA,iBAAA,QIoHJ,wBAAA,wBAuCI,MAAA,QACA,eAAA,KACA,iBAAA,YAQJ,oBACE,QAAA,MAIF,iBACE,QAAA,MACA,QAAA,MAAA,OACA,cAAA,EtBpDI,UAAA,QsBsDJ,MAAA,QACA,YAAA,OAIF,oBACE,QAAA,MACA,QAAA,OAAA,OACA,MAAA,QG1LF,W1B4sGA,oB0B1sGE,SAAA,SACA,QAAA,mBAAA,QAAA,YACA,eAAA,O1BgtGF,yB0BptGA,gBAOI,SAAA,SACA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,K1BmtGJ,+BGltGE,sBuBII,QAAA,E1BqtGN,gCADA,gCADA,+B0BhuGA,uBAAA,uBAAA,sBAkBM,QAAA,EAMN,aACE,QAAA,YAAA,QAAA,KACA,cAAA,KAAA,UAAA,KACA,cAAA,MAAA,gBAAA,WAHF,0BAMI,MAAA,K1BstGJ,wC0BltGA,kCAII,YAAA,K1BmtGJ,4C0BvtGA,uDlBhBI,wBAAA,EACA,2BAAA,ER4uGJ,6C0B7tGA,kClBFI,uBAAA,EACA,0BAAA,EkBgCJ,uBACE,cAAA,SACA,aAAA,SAFF,8B1B0sGA,yCADA,sC0BlsGI,YAAA,EAGF,yCACE,aAAA,EAIJ,0CAAA,+BACE,cAAA,QACA,aAAA,QAGF,0CAAA,+BACE,cAAA,OACA,aAAA,OAoBF,oBACE,mBAAA,OAAA,eAAA,OACA,eAAA,MAAA,YAAA,WACA,cAAA,OAAA,gBAAA,OAHF,yB1B4rGA,+B0BrrGI,MAAA,K1B0rGJ,iD0BjsGA,2CAYI,WAAA,K1B0rGJ,qD0BtsGA,gElBlFI,2BAAA,EACA,0BAAA,ER6xGJ,sD0B5sGA,2ClBhGI,uBAAA,EACA,wBAAA,EkBuIJ,uB1B0qGA,kC0BvqGI,cAAA,E1B4qGJ,4C0B/qGA,yC1BirGA,uDADA,oD0BzqGM,SAAA,SACA,KAAA,cACA,eAAA,KCzJN,aACE,SAAA,SACA,QAAA,YAAA,QAAA,KACA,cAAA,KAAA,UAAA,KACA,eAAA,QAAA,YAAA,QACA,MAAA,K3Bg1GF,0BADA,4B2Bp1GA,2B3Bm1GA,qC2Bx0GI,SAAA,SACA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAGA,MAAA,GACA,cAAA,E3Bw1GJ,uCADA,yCADA,wCADA,yCADA,2CADA,0CAJA,wCADA,0C2B91GA,yC3Bk2GA,kDADA,oDADA,mD2B30GM,YAAA,K3By1GN,sEADA,kC2B72GA,iCA6BI,QAAA,EA7BJ,mDAkCI,QAAA,E3Bq1GJ,6C2Bv3GA,4CnBeI,wBAAA,EACA,2BAAA,ER62GJ,8C2B73GA,6CnB6BI,uBAAA,EACA,0BAAA,EmB9BJ,0BA8CI,QAAA,YAAA,QAAA,KACA,eAAA,OAAA,YAAA,OA/CJ,8D3B04GA,qEQ33GI,wBAAA,EACA,2BAAA,EmBhBJ,+DnB6BI,uBAAA,EACA,0BAAA,ERu3GJ,oB2Bv1GA,qBAEE,QAAA,YAAA,QAAA,K3B21GF,yB2B71GA,0BAQI,SAAA,SACA,QAAA,E3B01GJ,+B2Bn2GA,gCAYM,QAAA,E3B+1GN,8BACA,2CAEA,2CADA,wD2B72GA,+B3Bw2GA,4CAEA,4CADA,yD2Br1GI,YAAA,KAIJ,qBAAuB,aAAA,KACvB,oBAAsB,YAAA,KAQtB,kBACE,QAAA,YAAA,QAAA,KACA,eAAA,OAAA,YAAA,OACA,QAAA,QAAA,OACA,cAAA,E1BsBI,UAAA,K0BpBJ,YAAA,IACA,YAAA,IACA,MAAA,QACA,WAAA,OACA,YAAA,OACA,iBAAA,QACA,OAAA,IAAA,MAAA,QnB5GE,cAAA,OR48GJ,uC2B52GA,oCAkBI,WAAA,E3B+1GJ,+B2Br1GA,4CAEE,OAAA,yB3Bw1GF,+B2Br1GA,8B3By1GA,yCAFA,sDACA,0CAFA,uD2Bh1GE,QAAA,MAAA,K1BbI,UAAA,Q0BeJ,YAAA,InBzIE,cAAA,MRk+GJ,+B2Br1GA,4CAEE,OAAA,0B3Bw1GF,+B2Br1GA,8B3By1GA,yCAFA,sDACA,0CAFA,uD2Bh1GE,QAAA,OAAA,M1B9BI,UAAA,Q0BgCJ,YAAA,InB1JE,cAAA,MmB8JJ,+B3Bq1GA,+B2Bn1GE,cAAA,Q3B21GF,wFACA,+EAHA,uDACA,oE2B/0GA,uC3B60GA,oDQx+GI,wBAAA,EACA,2BAAA,EmBmKJ,sC3B80GA,mDAGA,qEACA,kFAHA,yDACA,sEQt+GI,uBAAA,EACA,0BAAA,EoB3BJ,gBACE,SAAA,SACA,QAAA,MACA,WAAA,OACA,aAAA,OAGF,uBACE,QAAA,mBAAA,QAAA,YACA,aAAA,KAGF,sBACE,SAAA,SACA,QAAA,GACA,QAAA,EAHF,4DAMI,MAAA,KACA,aAAA,QTtBA,iBAAA,QSeJ,0DAiBM,WAAA,EAAA,EAAA,EAAA,MAAA,oBAjBN,wEAsBI,aAAA,QAtBJ,0EA0BI,MAAA,KACA,iBAAA,QACA,aAAA,QA5BJ,qDAkCM,MAAA,QAlCN,6DAqCQ,iBAAA,QAUR,sBACE,SAAA,SACA,cAAA,EACA,eAAA,IAHF,8BAOI,SAAA,SACA,IAAA,OACA,KAAA,QACA,QAAA,MACA,MAAA,KACA,OAAA,KACA,eAAA,KACA,QAAA,GACA,iBAAA,KACA,OAAA,QAAA,MAAA,IAhBJ,6BAsBI,SAAA,SACA,IAAA,OACA,KAAA,QACA,QAAA,MACA,MAAA,KACA,OAAA,KACA,QAAA,GACA,WAAA,UAAA,GAAA,CAAA,IAAA,IASJ,+CpBrGI,cAAA,OoBqGJ,4EAOM,iBAAA,4LAPN,mFAaM,aAAA,QTjHF,iBAAA,QSoGJ,kFAkBM,iBAAA,yIAlBN,sFAwBM,iBAAA,mBAxBN,4FA2BM,iBAAA,mBASN,4CAGI,cAAA,IAHJ,yEAQM,iBAAA,sIARN,mFAcM,iBAAA,mBAUN,eACE,aAAA,QADF,6CAKM,KAAA,SACA,MAAA,QACA,eAAA,IAEA,cAAA,MATN,4CAaM,IAAA,mBACA,KAAA,qBACA,MAAA,iBACA,OAAA,iBACA,iBAAA,QAEA,cAAA,MXnLA,WAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,WAAA,CAAA,kBAAA,KAAA,YAAA,WAAA,UAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,YAAA,WAAA,UAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,WAAA,CAAA,kBAAA,KAAA,YAKF,uCW2JJ,4CX1JM,WAAA,MW0JN,0EA0BM,iBAAA,KACA,kBAAA,mBAAA,UAAA,mBA3BN,oFAiCM,iBAAA,mBAYN,eACE,QAAA,aACA,MAAA,KACA,OAAA,2BACA,QAAA,QAAA,QAAA,QAAA,O3BxFI,UAAA,K2B2FJ,YAAA,IACA,YAAA,IACA,MAAA,QACA,eAAA,OACA,WAAA,0JAAA,UAAA,MAAA,OAAA,MAAA,CAAA,IAAA,KACA,iBAAA,KACA,OAAA,IAAA,MAAA,QpB3NE,cAAA,OoB8NF,mBAAA,KAAA,gBAAA,KAAA,WAAA,KAhBF,qBAmBI,aAAA,QACA,QAAA,EAIE,WAAA,EAAA,EAAA,EAAA,MAAA,oBAxBN,gCAiCM,MAAA,QACA,iBAAA,KAlCN,yBAAA,qCAwCI,OAAA,KACA,cAAA,OACA,iBAAA,KA1CJ,wBA8CI,MAAA,QACA,iBAAA,QA/CJ,2BAoDI,QAAA,KAIJ,kBACE,OAAA,0BACA,YAAA,OACA,eAAA,OACA,aAAA,M3BhJI,UAAA,Q2BoJN,kBACE,OAAA,yBACA,YAAA,MACA,eAAA,MACA,aAAA,K3BxJI,UAAA,Q2BiKN,aACE,SAAA,SACA,QAAA,aACA,MAAA,KACA,OAAA,2BACA,cAAA,EAGF,mBACE,SAAA,SACA,QAAA,EACA,MAAA,KACA,OAAA,2BACA,OAAA,EACA,QAAA,EANF,4CASI,aAAA,QACA,WAAA,EAAA,EAAA,EAAA,MAAA,oBAVJ,+CAcI,iBAAA,QAdJ,sDAmBM,QAAA,SAnBN,0DAwBI,QAAA,kBAIJ,mBACE,SAAA,SACA,IAAA,EACA,MAAA,EACA,KAAA,EACA,QAAA,EACA,OAAA,2BACA,QAAA,QAAA,OAEA,YAAA,IACA,YAAA,IACA,MAAA,QACA,iBAAA,KACA,OAAA,IAAA,MAAA,QpB5UE,cAAA,OoB+TJ,0BAkBI,SAAA,SACA,IAAA,EACA,MAAA,EACA,OAAA,EACA,QAAA,EACA,QAAA,MACA,OAAA,qBACA,QAAA,QAAA,OACA,YAAA,IACA,MAAA,QACA,QAAA,ST1VA,iBAAA,QS4VA,YAAA,QpB7VA,cAAA,EAAA,OAAA,OAAA,EoBwWJ,cACE,MAAA,KACA,OAAA,mBACA,QAAA,EACA,iBAAA,YACA,mBAAA,KAAA,gBAAA,KAAA,WAAA,KALF,oBAQI,QAAA,EARJ,0CAY8B,WAAA,EAAA,EAAA,EAAA,IAAA,IAAA,CAAA,EAAA,EAAA,EAAA,MAAA,oBAZ9B,sCAa8B,WAAA,EAAA,EAAA,EAAA,IAAA,IAAA,CAAA,EAAA,EAAA,EAAA,MAAA,oBAb9B,+BAc8B,WAAA,EAAA,EAAA,EAAA,IAAA,IAAA,CAAA,EAAA,EAAA,EAAA,MAAA,oBAd9B,gCAkBI,OAAA,EAlBJ,oCAsBI,MAAA,KACA,OAAA,KACA,WAAA,QT/XA,iBAAA,QSiYA,OAAA,EpBlYA,cAAA,KSCE,WAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,YWqYF,mBAAA,KAAA,WAAA,KXhYA,uCWkWJ,oCXjWM,WAAA,MWiWN,2CTvWI,iBAAA,QSuWJ,6CAsCI,MAAA,KACA,OAAA,MACA,MAAA,YACA,OAAA,QACA,iBAAA,QACA,aAAA,YpBnZA,cAAA,KoBwWJ,gCAiDI,MAAA,KACA,OAAA,KTzZA,iBAAA,QS2ZA,OAAA,EpB5ZA,cAAA,KSCE,WAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,YW+ZF,gBAAA,KAAA,WAAA,KX1ZA,uCWkWJ,gCXjWM,WAAA,MWiWN,uCTvWI,iBAAA,QSuWJ,gCAgEI,MAAA,KACA,OAAA,MACA,MAAA,YACA,OAAA,QACA,iBAAA,QACA,aAAA,YpB7aA,cAAA,KoBwWJ,yBA2EI,MAAA,KACA,OAAA,KACA,WAAA,EACA,aAAA,MACA,YAAA,MTtbA,iBAAA,QSwbA,OAAA,EpBzbA,cAAA,KSCE,WAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,YW4bF,WAAA,KXvbA,uCWkWJ,yBXjWM,WAAA,MWiWN,gCTvWI,iBAAA,QSuWJ,yBA6FI,MAAA,KACA,OAAA,MACA,MAAA,YACA,OAAA,QACA,iBAAA,YACA,aAAA,YACA,aAAA,MAnGJ,8BAwGI,iBAAA,QpBhdA,cAAA,KoBwWJ,8BA6GI,aAAA,KACA,iBAAA,QpBtdA,cAAA,KoBwWJ,6CAoHM,iBAAA,QApHN,sDAwHM,OAAA,QAxHN,yCA4HM,iBAAA,QA5HN,yCAgIM,OAAA,QAhIN,kCAoIM,iBAAA,QAKN,8B5Bi9GA,mBACA,eiBl8HM,WAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,YAKF,uCW2eJ,8B5Bw9GE,mBACA,eiBn8HI,WAAA,MYPN,KACE,QAAA,YAAA,QAAA,KACA,cAAA,KAAA,UAAA,KACA,aAAA,EACA,cAAA,EACA,WAAA,KAGF,UACE,QAAA,MACA,QAAA,MAAA,K1BCA,gBAAA,gB0BEE,gBAAA,KALJ,mBAUI,MAAA,QACA,eAAA,KACA,OAAA,QAQJ,UACE,cAAA,IAAA,MAAA,QADF,oBAII,cAAA,KAJJ,oBAQI,OAAA,IAAA,MAAA,YrB3BA,uBAAA,OACA,wBAAA,OLCF,0BAAA,0B0B6BI,aAAA,QAAA,QAAA,QAZN,6BAgBM,MAAA,QACA,iBAAA,YACA,aAAA,Y7Bm9HN,mC6Br+HA,2BAwBI,MAAA,QACA,iBAAA,KACA,aAAA,QAAA,QAAA,KA1BJ,yBA+BI,WAAA,KrBlDA,uBAAA,EACA,wBAAA,EqB4DJ,qBrBtEI,cAAA,OqBsEJ,4B7B48HA,2B6Br8HI,MAAA,KACA,iBAAA,QASJ,oBAEI,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KACA,WAAA,OAIJ,yBAEI,wBAAA,EAAA,WAAA,EACA,kBAAA,EAAA,UAAA,EACA,WAAA,OASJ,uBAEI,QAAA,KAFJ,qBAKI,QAAA,MCpGJ,QACE,SAAA,SACA,QAAA,YAAA,QAAA,KACA,cAAA,KAAA,UAAA,KACA,eAAA,OAAA,YAAA,OACA,cAAA,QAAA,gBAAA,cACA,QAAA,MAAA,KANF,mB9B+iIA,yB8BniII,QAAA,YAAA,QAAA,KACA,cAAA,KAAA,UAAA,KACA,eAAA,OAAA,YAAA,OACA,cAAA,QAAA,gBAAA,cASJ,cACE,QAAA,aACA,YAAA,SACA,eAAA,SACA,aAAA,K7BkFI,UAAA,Q6BhFJ,YAAA,QACA,YAAA,O3BhCA,oBAAA,oB2BmCE,gBAAA,KASJ,YACE,QAAA,YAAA,QAAA,KACA,mBAAA,OAAA,eAAA,OACA,aAAA,EACA,cAAA,EACA,WAAA,KALF,sBAQI,cAAA,EACA,aAAA,EATJ,2BAaI,SAAA,OACA,MAAA,KASJ,aACE,QAAA,aACA,YAAA,MACA,eAAA,MAYF,iBACE,wBAAA,KAAA,WAAA,KACA,kBAAA,EAAA,UAAA,EAGA,eAAA,OAAA,YAAA,OAIF,gBACE,QAAA,OAAA,O7BmBI,UAAA,Q6BjBJ,YAAA,EACA,iBAAA,YACA,OAAA,IAAA,MAAA,YtB3GE,cAAA,OLWF,sBAAA,sB2BoGE,gBAAA,KAMJ,qBACE,QAAA,aACA,MAAA,MACA,OAAA,MACA,eAAA,OACA,QAAA,GACA,WAAA,UAAA,OAAA,OACA,gBAAA,KAAA,KlBxDE,4BkBkEC,6B9B0gIH,mC8BtgIQ,cAAA,EACA,aAAA,GlBpFN,yBkB+EA,kBAUI,cAAA,IAAA,OAAA,UAAA,IAAA,OACA,cAAA,MAAA,gBAAA,WAXH,8BAcK,mBAAA,IAAA,eAAA,IAdL,6CAiBO,SAAA,SAjBP,wCAqBO,cAAA,MACA,aAAA,MAtBP,6B9BmiIH,mC8BtgIQ,cAAA,OAAA,UAAA,OA7BL,mCAiCK,QAAA,sBAAA,QAAA,eAGA,wBAAA,KAAA,WAAA,KApCL,kCAwCK,QAAA,MlB1GN,4BkBkEC,6B9BojIH,mC8BhjIQ,cAAA,EACA,aAAA,GlBpFN,yBkB+EA,kBAUI,cAAA,IAAA,OAAA,UAAA,IAAA,OACA,cAAA,MAAA,gBAAA,WAXH,8BAcK,mBAAA,IAAA,eAAA,IAdL,6CAiBO,SAAA,SAjBP,wCAqBO,cAAA,MACA,aAAA,MAtBP,6B9B6kIH,mC8BhjIQ,cAAA,OAAA,UAAA,OA7BL,mCAiCK,QAAA,sBAAA,QAAA,eAGA,wBAAA,KAAA,WAAA,KApCL,kCAwCK,QAAA,MlB1GN,4BkBkEC,6B9B8lIH,mC8B1lIQ,cAAA,EACA,aAAA,GlBpFN,yBkB+EA,kBAUI,cAAA,IAAA,OAAA,UAAA,IAAA,OACA,cAAA,MAAA,gBAAA,WAXH,8BAcK,mBAAA,IAAA,eAAA,IAdL,6CAiBO,SAAA,SAjBP,wCAqBO,cAAA,MACA,aAAA,MAtBP,6B9BunIH,mC8B1lIQ,cAAA,OAAA,UAAA,OA7BL,mCAiCK,QAAA,sBAAA,QAAA,eAGA,wBAAA,KAAA,WAAA,KApCL,kCAwCK,QAAA,MlB1GN,6BkBkEC,6B9BwoIH,mC8BpoIQ,cAAA,EACA,aAAA,GlBpFN,0BkB+EA,kBAUI,cAAA,IAAA,OAAA,UAAA,IAAA,OACA,cAAA,MAAA,gBAAA,WAXH,8BAcK,mBAAA,IAAA,eAAA,IAdL,6CAiBO,SAAA,SAjBP,wCAqBO,cAAA,MACA,aAAA,MAtBP,6B9BiqIH,mC8BpoIQ,cAAA,OAAA,UAAA,OA7BL,mCAiCK,QAAA,sBAAA,QAAA,eAGA,wBAAA,KAAA,WAAA,KApCL,kCAwCK,QAAA,MA7CV,eAeQ,cAAA,IAAA,OAAA,UAAA,IAAA,OACA,cAAA,MAAA,gBAAA,WAhBR,0B9B6rIA,gC8BprIU,cAAA,EACA,aAAA,EAVV,2BAmBU,mBAAA,IAAA,eAAA,IAnBV,0CAsBY,SAAA,SAtBZ,qCA0BY,cAAA,MACA,aAAA,MA3BZ,0B9BitIA,gC8B/qIU,cAAA,OAAA,UAAA,OAlCV,gCAsCU,QAAA,sBAAA,QAAA,eAGA,wBAAA,KAAA,WAAA,KAzCV,+BA6CU,QAAA,KAaV,4BAEI,MAAA,e3BlLF,kCAAA,kC2BqLI,MAAA,eALN,oCAWM,MAAA,e3B3LJ,0CAAA,0C2B8LM,MAAA,eAdR,6CAkBQ,MAAA,e9B0qIR,4CAEA,2CADA,yC8B7rIA,0CA0BM,MAAA,eA1BN,8BA+BI,MAAA,eACA,aAAA,eAhCJ,mCAoCI,iBAAA,uOApCJ,2BAwCI,MAAA,eAxCJ,6BA0CM,MAAA,e3B1NJ,mCAAA,mC2B6NM,MAAA,eAOR,2BAEI,MAAA,K3BtOF,iCAAA,iC2ByOI,MAAA,KALN,mCAWM,MAAA,qB3B/OJ,yCAAA,yC2BkPM,MAAA,sBAdR,4CAkBQ,MAAA,sB9BsqIR,2CAEA,0CADA,wC8BzrIA,yCA0BM,MAAA,KA1BN,6BA+BI,MAAA,qBACA,aAAA,qBAhCJ,kCAoCI,iBAAA,6OApCJ,0BAwCI,MAAA,qBAxCJ,4BA0CM,MAAA,K3B9QJ,kCAAA,kC2BiRM,MAAA,KC7RR,MACE,SAAA,SACA,QAAA,YAAA,QAAA,KACA,mBAAA,OAAA,eAAA,OACA,UAAA,EACA,UAAA,WACA,iBAAA,KACA,gBAAA,WACA,OAAA,IAAA,MAAA,iBvBPE,cAAA,OuBDJ,SAYI,aAAA,EACA,YAAA,EAbJ,2DvBUI,uBAAA,OACA,wBAAA,OuBXJ,yDvBwBI,2BAAA,OACA,0BAAA,OuBIJ,WAGE,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KACA,QAAA,QAIF,YACE,cAAA,OAGF,eACE,WAAA,SACA,cAAA,EAGF,sBACE,cAAA,E5BvCA,iB4B4CE,gBAAA,KAFJ,sBAMI,YAAA,QAQJ,aACE,QAAA,OAAA,QACA,cAAA,EAEA,iBAAA,gBACA,cAAA,IAAA,MAAA,iBALF,yBvB/DI,cAAA,mBAAA,mBAAA,EAAA,EuB+DJ,sDAaM,WAAA,EAKN,aACE,QAAA,OAAA,QACA,iBAAA,gBACA,WAAA,IAAA,MAAA,iBAHF,wBvBjFI,cAAA,EAAA,EAAA,mBAAA,mBuBgGJ,kBACE,aAAA,SACA,cAAA,QACA,YAAA,SACA,cAAA,EAGF,mBACE,aAAA,SACA,YAAA,SAIF,kBACE,SAAA,SACA,IAAA,EACA,MAAA,EACA,OAAA,EACA,KAAA,EACA,QAAA,QAGF,UACE,MAAA,KvBvHE,cAAA,mBuB4HJ,cACE,MAAA,KvBpHE,uBAAA,mBACA,wBAAA,mBuBuHJ,iBACE,MAAA,KvB3GE,2BAAA,mBACA,0BAAA,mBuBiHJ,WACE,QAAA,YAAA,QAAA,KACA,mBAAA,OAAA,eAAA,OAFF,iBAKI,cAAA,KnBvFA,yBmBkFJ,WASI,cAAA,IAAA,KAAA,UAAA,IAAA,KACA,aAAA,MACA,YAAA,MAXJ,iBAcM,QAAA,YAAA,QAAA,KAEA,SAAA,EAAA,EAAA,GAAA,KAAA,EAAA,EAAA,GACA,mBAAA,OAAA,eAAA,OACA,aAAA,KACA,cAAA,EACA,YAAA,MAUN,YACE,QAAA,YAAA,QAAA,KACA,mBAAA,OAAA,eAAA,OAFF,kBAOI,cAAA,KnBvHA,yBmBgHJ,YAWI,cAAA,IAAA,KAAA,UAAA,IAAA,KAXJ,kBAgBM,SAAA,EAAA,EAAA,GAAA,KAAA,EAAA,EAAA,GACA,cAAA,EAjBN,wBAoBQ,YAAA,EACA,YAAA,EArBR,mCvBvJI,wBAAA,EACA,2BAAA,ERqmJF,gD+B/8IF,iDAgCY,wBAAA,E/Bm7IV,gD+Bn9IF,oDAqCY,2BAAA,EArCZ,oCvBzII,uBAAA,EACA,0BAAA,ERmmJF,iD+B39IF,kDA+CY,uBAAA,E/Bg7IV,iD+B/9IF,qDAoDY,0BAAA,GAaZ,oBAEI,cAAA,OnBnLA,yBmBiLJ,cAMI,qBAAA,EAAA,kBAAA,EAAA,aAAA,EACA,mBAAA,QAAA,gBAAA,QAAA,WAAA,QACA,QAAA,EACA,OAAA,EATJ,oBAYM,QAAA,aACA,MAAA,MAUN,iBAEI,SAAA,OAFJ,8DvB/PI,cAAA,EuB+PJ,wDAUQ,cAAA,EvBzQJ,cAAA,EuB+PJ,+BAgBM,cAAA,EvBxPF,2BAAA,EACA,0BAAA,EuBuOJ,8BvBtPI,uBAAA,EACA,wBAAA,EuBqPJ,8BAyBM,cAAA,KC7RN,YACE,QAAA,YAAA,QAAA,KACA,cAAA,KAAA,UAAA,KACA,QAAA,OAAA,KACA,cAAA,KACA,WAAA,KACA,iBAAA,QxBDE,cAAA,OwBKJ,kCAGI,aAAA,MAHJ,0CAMM,QAAA,aACA,cAAA,MACA,MAAA,QACA,QAAA,IATN,gDAoBI,gBAAA,UApBJ,gDAwBI,gBAAA,KAxBJ,wBA4BI,MAAA,QCtCJ,YACE,QAAA,YAAA,QAAA,K5BGA,aAAA,EACA,WAAA,KGAE,cAAA,OyBCJ,WACE,SAAA,SACA,QAAA,MACA,QAAA,MAAA,OACA,YAAA,KACA,YAAA,KACA,MAAA,QACA,iBAAA,KACA,OAAA,IAAA,MAAA,QARF,iBAWI,QAAA,EACA,MAAA,QACA,gBAAA,KACA,iBAAA,QACA,aAAA,QAfJ,iBAmBI,QAAA,EACA,QAAA,EACA,WAAA,EAAA,EAAA,EAAA,MAAA,oBAIJ,kCAGM,YAAA,EzBCF,uBAAA,OACA,0BAAA,OyBLJ,iCzBVI,wBAAA,OACA,2BAAA,OyBSJ,6BAcI,QAAA,EACA,MAAA,KACA,iBAAA,QACA,aAAA,QAjBJ,+BAqBI,MAAA,QACA,eAAA,KAEA,OAAA,KACA,iBAAA,KACA,aAAA,QCtDF,0BACE,QAAA,OAAA,OjC2HE,UAAA,QiCzHF,YAAA,IAKE,iD1BwBF,uBAAA,MACA,0BAAA,M0BpBE,gD1BKF,wBAAA,MACA,2BAAA,M0BnBF,0BACE,QAAA,OAAA,MjC2HE,UAAA,QiCzHF,YAAA,IAKE,iD1BwBF,uBAAA,MACA,0BAAA,M0BpBE,gD1BKF,wBAAA,MACA,2BAAA,M2BjBJ,OACE,QAAA,aACA,QAAA,MAAA,KlCiEE,UAAA,IkC/DF,YAAA,IACA,YAAA,EACA,WAAA,OACA,YAAA,OACA,eAAA,S3BRE,cAAA,OSCE,WAAA,MAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,YAKF,uCkBNJ,OlBOM,WAAA,MdIJ,cAAA,cgCGI,gBAAA,KAdN,aAoBI,QAAA,KAKJ,YACE,SAAA,SACA,IAAA,KAOF,YACE,cAAA,KACA,aAAA,K3BpCE,cAAA,M2B6CF,eCjDA,MAAA,KACA,iBAAA,QjCcA,sBAAA,sBiCVI,MAAA,KACA,iBAAA,QAHI,sBAAA,sBAQJ,QAAA,EACA,WAAA,EAAA,EAAA,EAAA,MAAA,mBDqCJ,iBCjDA,MAAA,KACA,iBAAA,QjCcA,wBAAA,wBiCVI,MAAA,KACA,iBAAA,QAHI,wBAAA,wBAQJ,QAAA,EACA,WAAA,EAAA,EAAA,EAAA,MAAA,qBDqCJ,eCjDA,MAAA,KACA,iBAAA,QjCcA,sBAAA,sBiCVI,MAAA,KACA,iBAAA,QAHI,sBAAA,sBAQJ,QAAA,EACA,WAAA,EAAA,EAAA,EAAA,MAAA,mBDqCJ,YCjDA,MAAA,KACA,iBAAA,QjCcA,mBAAA,mBiCVI,MAAA,KACA,iBAAA,QAHI,mBAAA,mBAQJ,QAAA,EACA,WAAA,EAAA,EAAA,EAAA,MAAA,oBDqCJ,eCjDA,MAAA,QACA,iBAAA,QjCcA,sBAAA,sBiCVI,MAAA,QACA,iBAAA,QAHI,sBAAA,sBAQJ,QAAA,EACA,WAAA,EAAA,EAAA,EAAA,MAAA,mBDqCJ,cCjDA,MAAA,KACA,iBAAA,QjCcA,qBAAA,qBiCVI,MAAA,KACA,iBAAA,QAHI,qBAAA,qBAQJ,QAAA,EACA,WAAA,EAAA,EAAA,EAAA,MAAA,mBDqCJ,aCjDA,MAAA,QACA,iBAAA,QjCcA,oBAAA,oBiCVI,MAAA,QACA,iBAAA,QAHI,oBAAA,oBAQJ,QAAA,EACA,WAAA,EAAA,EAAA,EAAA,MAAA,qBDqCJ,YCjDA,MAAA,KACA,iBAAA,QjCcA,mBAAA,mBiCVI,MAAA,KACA,iBAAA,QAHI,mBAAA,mBAQJ,QAAA,EACA,WAAA,EAAA,EAAA,EAAA,MAAA,kBCbN,WACE,QAAA,KAAA,KACA,cAAA,KAEA,iBAAA,Q7BCE,cAAA,MIuDA,yByB5DJ,WAQI,QAAA,KAAA,MAIJ,iBACE,cAAA,EACA,aAAA,E7BTE,cAAA,E8BDJ,OACE,SAAA,SACA,QAAA,OAAA,QACA,cAAA,KACA,OAAA,IAAA,MAAA,Y9BHE,cAAA,O8BQJ,eAEE,MAAA,QAIF,YACE,YAAA,IAQF,mBACE,cAAA,KADF,0BAKI,SAAA,SACA,IAAA,EACA,MAAA,EACA,QAAA,OAAA,QACA,MAAA,QAUF,eC9CA,MAAA,QpBKE,iBAAA,QoBHF,aAAA,QAEA,kBACE,iBAAA,QAGF,2BACE,MAAA,QDqCF,iBC9CA,MAAA,QpBKE,iBAAA,QoBHF,aAAA,QAEA,oBACE,iBAAA,QAGF,6BACE,MAAA,QDqCF,eC9CA,MAAA,QpBKE,iBAAA,QoBHF,aAAA,QAEA,kBACE,iBAAA,QAGF,2BACE,MAAA,QDqCF,YC9CA,MAAA,QpBKE,iBAAA,QoBHF,aAAA,QAEA,eACE,iBAAA,QAGF,wBACE,MAAA,QDqCF,eC9CA,MAAA,QpBKE,iBAAA,QoBHF,aAAA,QAEA,kBACE,iBAAA,QAGF,2BACE,MAAA,QDqCF,cC9CA,MAAA,QpBKE,iBAAA,QoBHF,aAAA,QAEA,iBACE,iBAAA,QAGF,0BACE,MAAA,QDqCF,aC9CA,MAAA,QpBKE,iBAAA,QoBHF,aAAA,QAEA,gBACE,iBAAA,QAGF,yBACE,MAAA,QDqCF,YC9CA,MAAA,QpBKE,iBAAA,QoBHF,aAAA,QAEA,eACE,iBAAA,QAGF,wBACE,MAAA,QCRF,wCACE,KAAO,oBAAA,KAAA,EACP,GAAK,oBAAA,EAAA,GAFP,gCACE,KAAO,oBAAA,KAAA,EACP,GAAK,oBAAA,EAAA,GAIT,UACE,QAAA,YAAA,QAAA,KACA,OAAA,KACA,SAAA,OvCoHI,UAAA,OuClHJ,iBAAA,QhCRE,cAAA,OgCaJ,cACE,QAAA,YAAA,QAAA,KACA,mBAAA,OAAA,eAAA,OACA,cAAA,OAAA,gBAAA,OACA,MAAA,KACA,WAAA,OACA,YAAA,OACA,iBAAA,QvBnBI,WAAA,MAAA,IAAA,KAKF,uCuBOJ,cvBNM,WAAA,MuBiBN,sBrBcE,iBAAA,iKqBZA,gBAAA,KAAA,KAIA,uBACE,kBAAA,qBAAA,GAAA,OAAA,SAAA,UAAA,qBAAA,GAAA,OAAA,SAEA,uCAHF,uBAII,kBAAA,KAAA,UAAA,MCvCN,OACE,QAAA,YAAA,QAAA,KACA,eAAA,MAAA,YAAA,WAGF,YACE,SAAA,EAAA,KAAA,ECFF,YACE,QAAA,YAAA,QAAA,KACA,mBAAA,OAAA,eAAA,OAGA,aAAA,EACA,cAAA,EASF,wBACE,MAAA,KACA,MAAA,QACA,WAAA,QvCNA,8BAAA,8BuCUE,QAAA,EACA,MAAA,QACA,gBAAA,KACA,iBAAA,QAVJ,+BAcI,MAAA,QACA,iBAAA,QASJ,iBACE,SAAA,SACA,QAAA,MACA,QAAA,OAAA,QAEA,cAAA,KAEA,iBAAA,KACA,OAAA,IAAA,MAAA,iBARF,6BlC7BI,uBAAA,OACA,wBAAA,OkC4BJ,4BAeI,cAAA,ElC9BA,2BAAA,OACA,0BAAA,OkCcJ,0BAAA,0BAqBI,MAAA,QACA,eAAA,KACA,iBAAA,KAvBJ,wBA4BI,QAAA,EACA,MAAA,KACA,iBAAA,QACA,aAAA,QAaA,uBACE,mBAAA,IAAA,eAAA,IADF,wCAII,aAAA,KACA,cAAA,EALJ,oDlCpDA,uBAAA,OACA,0BAAA,OAYA,wBAAA,EkCuCA,mDAaM,aAAA,ElC/EN,wBAAA,OACA,2BAAA,OAsCA,0BAAA,EIAA,yB8B2BA,0BACE,mBAAA,IAAA,eAAA,IADF,2CAII,aAAA,KACA,cAAA,EALJ,uDlCpDA,uBAAA,OACA,0BAAA,OAYA,wBAAA,EkCuCA,sDAaM,aAAA,ElC/EN,wBAAA,OACA,2BAAA,OAsCA,0BAAA,GIAA,yB8B2BA,0BACE,mBAAA,IAAA,eAAA,IADF,2CAII,aAAA,KACA,cAAA,EALJ,uDlCpDA,uBAAA,OACA,0BAAA,OAYA,wBAAA,EkCuCA,sDAaM,aAAA,ElC/EN,wBAAA,OACA,2BAAA,OAsCA,0BAAA,GIAA,yB8B2BA,0BACE,mBAAA,IAAA,eAAA,IADF,2CAII,aAAA,KACA,cAAA,EALJ,uDlCpDA,uBAAA,OACA,0BAAA,OAYA,wBAAA,EkCuCA,sDAaM,aAAA,ElC/EN,wBAAA,OACA,2BAAA,OAsCA,0BAAA,GIAA,0B8B2BA,0BACE,mBAAA,IAAA,eAAA,IADF,2CAII,aAAA,KACA,cAAA,EALJ,uDlCpDA,uBAAA,OACA,0BAAA,OAYA,wBAAA,EkCuCA,sDAaM,aAAA,ElC/EN,wBAAA,OACA,2BAAA,OAsCA,0BAAA,GkCuDJ,mCAEI,aAAA,EACA,YAAA,ElCjHA,cAAA,EkC8GJ,8CAOM,cAAA,KAPN,2DAaM,WAAA,EAbN,yDAmBM,cAAA,EACA,cAAA,ECpIJ,yBACE,MAAA,QACA,iBAAA,QxCWF,sDAAA,sDwCPM,MAAA,QACA,iBAAA,QAPN,uDAWM,MAAA,KACA,iBAAA,QACA,aAAA,QAbN,2BACE,MAAA,QACA,iBAAA,QxCWF,wDAAA,wDwCPM,MAAA,QACA,iBAAA,QAPN,yDAWM,MAAA,KACA,iBAAA,QACA,aAAA,QAbN,yBACE,MAAA,QACA,iBAAA,QxCWF,sDAAA,sDwCPM,MAAA,QACA,iBAAA,QAPN,uDAWM,MAAA,KACA,iBAAA,QACA,aAAA,QAbN,sBACE,MAAA,QACA,iBAAA,QxCWF,mDAAA,mDwCPM,MAAA,QACA,iBAAA,QAPN,oDAWM,MAAA,KACA,iBAAA,QACA,aAAA,QAbN,yBACE,MAAA,QACA,iBAAA,QxCWF,sDAAA,sDwCPM,MAAA,QACA,iBAAA,QAPN,uDAWM,MAAA,KACA,iBAAA,QACA,aAAA,QAbN,wBACE,MAAA,QACA,iBAAA,QxCWF,qDAAA,qDwCPM,MAAA,QACA,iBAAA,QAPN,sDAWM,MAAA,KACA,iBAAA,QACA,aAAA,QAbN,uBACE,MAAA,QACA,iBAAA,QxCWF,oDAAA,oDwCPM,MAAA,QACA,iBAAA,QAPN,qDAWM,MAAA,KACA,iBAAA,QACA,aAAA,QAbN,sBACE,MAAA,QACA,iBAAA,QxCWF,mDAAA,mDwCPM,MAAA,QACA,iBAAA,QAPN,oDAWM,MAAA,KACA,iBAAA,QACA,aAAA,QChBR,OACE,MAAA,M3C8HI,UAAA,O2C5HJ,YAAA,IACA,YAAA,EACA,MAAA,KACA,YAAA,EAAA,IAAA,EAAA,KACA,QAAA,GzCKA,ayCDE,MAAA,KACA,gBAAA,KzCIF,2CAAA,2CyCCI,QAAA,IAWN,aACE,QAAA,EACA,iBAAA,YACA,OAAA,EACA,mBAAA,KAAA,gBAAA,KAAA,WAAA,KAMF,iBACE,eAAA,KCvCF,OACE,UAAA,MACA,SAAA,O5C6HI,UAAA,Q4C1HJ,iBAAA,sBACA,gBAAA,YACA,OAAA,IAAA,MAAA,eACA,WAAA,EAAA,OAAA,OAAA,eACA,wBAAA,WAAA,gBAAA,WACA,QAAA,ErCLE,cAAA,OqCLJ,wBAcI,cAAA,OAdJ,eAkBI,QAAA,EAlBJ,YAsBI,QAAA,MACA,QAAA,EAvBJ,YA2BI,QAAA,KAIJ,cACE,QAAA,YAAA,QAAA,KACA,eAAA,OAAA,YAAA,OACA,QAAA,OAAA,OACA,MAAA,QACA,iBAAA,sBACA,gBAAA,YACA,cAAA,IAAA,MAAA,gBAGF,YACE,QAAA,OCpCF,YAEE,SAAA,OAFF,mBAKI,WAAA,OACA,WAAA,KAKJ,OACE,SAAA,MACA,IAAA,EACA,KAAA,EACA,QAAA,KACA,QAAA,KACA,MAAA,KACA,OAAA,KACA,SAAA,OAGA,QAAA,EAOF,cACE,SAAA,SACA,MAAA,KACA,OAAA,MAEA,eAAA,KAGA,0B7BrCI,WAAA,kBAAA,IAAA,SAAA,WAAA,UAAA,IAAA,SAAA,WAAA,UAAA,IAAA,QAAA,CAAA,kBAAA,IAAA,S6BuCF,kBAAA,mBAAA,UAAA,mB7BlCA,uC6BgCF,0B7B/BI,WAAA,M6BmCJ,0BACE,kBAAA,KAAA,UAAA,KAIJ,yBACE,QAAA,YAAA,QAAA,KACA,WAAA,kBAFF,wCAKI,WAAA,mBACA,SAAA,O9CulLJ,uC8C7lLA,uCAWI,kBAAA,EAAA,YAAA,EAXJ,qCAeI,WAAA,KAIJ,uBACE,QAAA,YAAA,QAAA,KACA,eAAA,OAAA,YAAA,OACA,WAAA,kBAHF,+BAOI,QAAA,MACA,OAAA,mBACA,QAAA,GATJ,+CAcI,mBAAA,OAAA,eAAA,OACA,cAAA,OAAA,gBAAA,OACA,OAAA,KAhBJ,8DAmBM,WAAA,KAnBN,uDAuBM,QAAA,KAMN,eACE,SAAA,SACA,QAAA,YAAA,QAAA,KACA,mBAAA,OAAA,eAAA,OACA,MAAA,KAGA,eAAA,KACA,iBAAA,KACA,gBAAA,YACA,OAAA,IAAA,MAAA,etCzGE,cAAA,MsC6GF,QAAA,EAIF,gBACE,SAAA,MACA,IAAA,EACA,KAAA,EACA,QAAA,KACA,MAAA,MACA,OAAA,MACA,iBAAA,KAPF,qBAUW,QAAA,EAVX,qBAWW,QAAA,GAKX,cACE,QAAA,YAAA,QAAA,KACA,eAAA,MAAA,YAAA,WACA,cAAA,QAAA,gBAAA,cACA,QAAA,KAAA,KACA,cAAA,IAAA,MAAA,QtC7HE,uBAAA,MACA,wBAAA,MsCuHJ,qBASI,QAAA,KAAA,KAEA,OAAA,MAAA,MAAA,MAAA,KAKJ,aACE,cAAA,EACA,YAAA,IAKF,YACE,SAAA,SAGA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KACA,QAAA,KAIF,cACE,QAAA,YAAA,QAAA,KACA,eAAA,OAAA,YAAA,OACA,cAAA,IAAA,gBAAA,SACA,QAAA,KACA,WAAA,IAAA,MAAA,QtC/IE,2BAAA,MACA,0BAAA,MsCyIJ,iCASyB,YAAA,OATzB,gCAUwB,aAAA,OAIxB,yBACE,SAAA,SACA,IAAA,QACA,MAAA,KACA,OAAA,KACA,SAAA,OlC7HE,yBkCzBJ,cA6JI,UAAA,MACA,OAAA,QAAA,KA7IJ,yBAiJI,WAAA,oBAjJJ,wCAoJM,WAAA,qBAjIN,uBAsII,WAAA,oBAtIJ,+BAyIM,OAAA,qBAQJ,UAAY,UAAA,OlC5JV,yBkCgKF,U9CglLA,U8C9kLE,UAAA,OlClKA,0BkCuKF,UAAY,UAAA,QClOd,SACE,SAAA,SACA,QAAA,KACA,QAAA,MACA,OAAA,ECJA,YAAA,aAAA,CAAA,kBAAA,CAAA,UAAA,CAAA,MAAA,CAAA,gBAAA,CAAA,KAAA,CAAA,WAAA,CAAA,UAAA,CAAA,mBAAA,CAAA,gBAAA,CAAA,iBAAA,CAAA,mBAEA,WAAA,OACA,YAAA,IACA,YAAA,IACA,WAAA,KACA,WAAA,MACA,gBAAA,KACA,YAAA,KACA,eAAA,KACA,eAAA,OACA,WAAA,OACA,aAAA,OACA,YAAA,OACA,WAAA,K/CgHI,UAAA,Q8CpHJ,UAAA,WACA,QAAA,EAXF,cAaW,QAAA,GAbX,gBAgBI,SAAA,SACA,QAAA,MACA,MAAA,MACA,OAAA,MAnBJ,wBAsBM,SAAA,SACA,QAAA,GACA,aAAA,YACA,aAAA,MAKN,mCAAA,gBACE,QAAA,MAAA,EADF,0CAAA,uBAII,OAAA,EAJJ,kDAAA,+BAOM,IAAA,EACA,aAAA,MAAA,MAAA,EACA,iBAAA,KAKN,qCAAA,kBACE,QAAA,EAAA,MADF,4CAAA,yBAII,KAAA,EACA,MAAA,MACA,OAAA,MANJ,oDAAA,iCASM,MAAA,EACA,aAAA,MAAA,MAAA,MAAA,EACA,mBAAA,KAKN,sCAAA,mBACE,QAAA,MAAA,EADF,6CAAA,0BAII,IAAA,EAJJ,qDAAA,kCAOM,OAAA,EACA,aAAA,EAAA,MAAA,MACA,oBAAA,KAKN,oCAAA,iBACE,QAAA,EAAA,MADF,2CAAA,wBAII,MAAA,EACA,MAAA,MACA,OAAA,MANJ,mDAAA,gCASM,KAAA,EACA,aAAA,MAAA,EAAA,MAAA,MACA,kBAAA,KAqBN,eACE,UAAA,MACA,QAAA,OAAA,MACA,MAAA,KACA,WAAA,OACA,iBAAA,KvC3GE,cAAA,OyCLJ,SACE,SAAA,SACA,IAAA,EACA,KAAA,EACA,QAAA,KACA,QAAA,MACA,UAAA,MDLA,YAAA,aAAA,CAAA,kBAAA,CAAA,UAAA,CAAA,MAAA,CAAA,gBAAA,CAAA,KAAA,CAAA,WAAA,CAAA,UAAA,CAAA,mBAAA,CAAA,gBAAA,CAAA,iBAAA,CAAA,mBAEA,WAAA,OACA,YAAA,IACA,YAAA,IACA,WAAA,KACA,WAAA,MACA,gBAAA,KACA,YAAA,KACA,eAAA,KACA,eAAA,OACA,WAAA,OACA,aAAA,OACA,YAAA,OACA,WAAA,K/CgHI,UAAA,QgDnHJ,UAAA,WACA,iBAAA,KACA,gBAAA,YACA,OAAA,IAAA,MAAA,ezCVE,cAAA,MyCLJ,gBAoBI,SAAA,SACA,QAAA,MACA,MAAA,KACA,OAAA,MACA,OAAA,EAAA,MAxBJ,uBAAA,wBA4BM,SAAA,SACA,QAAA,MACA,QAAA,GACA,aAAA,YACA,aAAA,MAKN,mCAAA,gBACE,cAAA,MADF,0CAAA,uBAII,OAAA,yBAJJ,kDAAA,+BAOM,OAAA,EACA,aAAA,MAAA,MAAA,EACA,iBAAA,gBATN,iDAAA,8BAaM,OAAA,IACA,aAAA,MAAA,MAAA,EACA,iBAAA,KAKN,qCAAA,kBACE,YAAA,MADF,4CAAA,yBAII,KAAA,yBACA,MAAA,MACA,OAAA,KACA,OAAA,MAAA,EAPJ,oDAAA,iCAUM,KAAA,EACA,aAAA,MAAA,MAAA,MAAA,EACA,mBAAA,gBAZN,mDAAA,gCAgBM,KAAA,IACA,aAAA,MAAA,MAAA,MAAA,EACA,mBAAA,KAKN,sCAAA,mBACE,WAAA,MADF,6CAAA,0BAII,IAAA,yBAJJ,qDAAA,kCAOM,IAAA,EACA,aAAA,EAAA,MAAA,MAAA,MACA,oBAAA,gBATN,oDAAA,iCAaM,IAAA,IACA,aAAA,EAAA,MAAA,MAAA,MACA,oBAAA,KAfN,8DAAA,2CAqBI,SAAA,SACA,IAAA,EACA,KAAA,IACA,QAAA,MACA,MAAA,KACA,YAAA,OACA,QAAA,GACA,cAAA,IAAA,MAAA,QAIJ,oCAAA,iBACE,aAAA,MADF,2CAAA,wBAII,MAAA,yBACA,MAAA,MACA,OAAA,KACA,OAAA,MAAA,EAPJ,mDAAA,gCAUM,MAAA,EACA,aAAA,MAAA,EAAA,MAAA,MACA,kBAAA,gBAZN,kDAAA,+BAgBM,MAAA,IACA,aAAA,MAAA,EAAA,MAAA,MACA,kBAAA,KAsBN,gBACE,QAAA,MAAA,OACA,cAAA,EhD3BI,UAAA,KgD8BJ,iBAAA,QACA,cAAA,IAAA,MAAA,QzChJE,uBAAA,kBACA,wBAAA,kByCyIJ,sBAWI,QAAA,KAIJ,cACE,QAAA,MAAA,OACA,MAAA,QC5JF,UACE,SAAA,SAGF,wBACE,iBAAA,MAAA,aAAA,MAGF,gBACE,SAAA,SACA,MAAA,KACA,SAAA,OCvBA,uBACE,QAAA,MACA,MAAA,KACA,QAAA,GDwBJ,eACE,SAAA,SACA,QAAA,KACA,MAAA,KACA,MAAA,KACA,aAAA,MACA,4BAAA,OAAA,oBAAA,OjC5BI,WAAA,kBAAA,IAAA,YAAA,WAAA,UAAA,IAAA,YAAA,WAAA,UAAA,IAAA,WAAA,CAAA,kBAAA,IAAA,YAKF,uCiCiBJ,ejChBM,WAAA,MjBomMN,oBACA,oBkD3kMA,sBAGE,QAAA,MlD6kMF,4BkD1kMA,6CAEE,kBAAA,iBAAA,UAAA,iBlD8kMF,2BkD3kMA,8CAEE,kBAAA,kBAAA,UAAA,kBAQF,8BAEI,QAAA,EACA,oBAAA,QACA,kBAAA,KAAA,UAAA,KlD0kMJ,sDACA,uDkD/kMA,qCAUI,QAAA,EACA,QAAA,EAXJ,0ClDqlMA,2CkDrkMI,QAAA,EACA,QAAA,EjCtEE,WAAA,GAAA,IAAA,QAKF,uCiCgDJ,0ClD6lME,2CiB5oMI,WAAA,MjBkpMN,uBkDxkMA,uBAEE,SAAA,SACA,IAAA,EACA,OAAA,EACA,QAAA,EAEA,QAAA,YAAA,QAAA,KACA,eAAA,OAAA,YAAA,OACA,cAAA,OAAA,gBAAA,OACA,MAAA,IACA,MAAA,KACA,WAAA,OACA,QAAA,GjC7FI,WAAA,QAAA,KAAA,KAKF,uCjBuqMF,uBkD5lMF,uBjC1EM,WAAA,MjB6qMN,6BADA,6BGxqME,6BAAA,6B+CwFE,MAAA,KACA,gBAAA,KACA,QAAA,EACA,QAAA,GAGJ,uBACE,KAAA,EAKF,uBACE,MAAA,ElDolMF,4BkD7kMA,4BAEE,QAAA,aACA,MAAA,KACA,OAAA,KACA,WAAA,UAAA,GAAA,CAAA,KAAA,KAEF,4BACE,iBAAA,kLAEF,4BACE,iBAAA,kLASF,qBACE,SAAA,SACA,MAAA,EACA,OAAA,EACA,KAAA,EACA,QAAA,GACA,QAAA,YAAA,QAAA,KACA,cAAA,OAAA,gBAAA,OACA,aAAA,EAEA,aAAA,IACA,YAAA,IACA,WAAA,KAZF,wBAeI,WAAA,YACA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KACA,MAAA,KACA,OAAA,IACA,aAAA,IACA,YAAA,IACA,YAAA,OACA,OAAA,QACA,iBAAA,KACA,gBAAA,YAEA,WAAA,KAAA,MAAA,YACA,cAAA,KAAA,MAAA,YACA,QAAA,GjCtKE,WAAA,QAAA,IAAA,KAKF,uCiCqIJ,wBjCpIM,WAAA,MiCoIN,6BAiCI,QAAA,EASJ,kBACE,SAAA,SACA,MAAA,IACA,OAAA,KACA,KAAA,IACA,QAAA,GACA,YAAA,KACA,eAAA,KACA,MAAA,KACA,WAAA,OE/LF,kCACE,GAAK,kBAAA,eAAA,UAAA,gBADP,0BACE,GAAK,kBAAA,eAAA,UAAA,gBAGP,gBACE,QAAA,aACA,MAAA,KACA,OAAA,KACA,eAAA,YACA,OAAA,MAAA,MAAA,aACA,mBAAA,YAEA,cAAA,IACA,kBAAA,eAAA,KAAA,OAAA,SAAA,UAAA,eAAA,KAAA,OAAA,SAGF,mBACE,MAAA,KACA,OAAA,KACA,aAAA,KAOF,gCACE,GACE,kBAAA,SAAA,UAAA,SAEF,IACE,QAAA,GALJ,wBACE,GACE,kBAAA,SAAA,UAAA,SAEF,IACE,QAAA,GAIJ,cACE,QAAA,aACA,MAAA,KACA,OAAA,KACA,eAAA,YACA,iBAAA,aAEA,cAAA,IACA,QAAA,EACA,kBAAA,aAAA,KAAA,OAAA,SAAA,UAAA,aAAA,KAAA,OAAA,SAGF,iBACE,MAAA,KACA,OAAA,KCnDF,gBAAqB,eAAA,mBACrB,WAAqB,eAAA,cACrB,cAAqB,eAAA,iBACrB,cAAqB,eAAA,iBACrB,mBAAqB,eAAA,sBACrB,gBAAqB,eAAA,mBCFnB,YACE,iBAAA,kBnDUF,mBAAA,mBHm2MF,wBADA,wBsDv2MM,iBAAA,kBANJ,cACE,iBAAA,kBnDUF,qBAAA,qBH62MF,0BADA,0BsDj3MM,iBAAA,kBANJ,YACE,iBAAA,kBnDUF,mBAAA,mBHu3MF,wBADA,wBsD33MM,iBAAA,kBANJ,SACE,iBAAA,kBnDUF,gBAAA,gBHi4MF,qBADA,qBsDr4MM,iBAAA,kBANJ,YACE,iBAAA,kBnDUF,mBAAA,mBH24MF,wBADA,wBsD/4MM,iBAAA,kBANJ,WACE,iBAAA,kBnDUF,kBAAA,kBHq5MF,uBADA,uBsDz5MM,iBAAA,kBANJ,UACE,iBAAA,kBnDUF,iBAAA,iBH+5MF,sBADA,sBsDn6MM,iBAAA,kBANJ,SACE,iBAAA,kBnDUF,gBAAA,gBHy6MF,qBADA,qBsD76MM,iBAAA,kBCCN,UACE,iBAAA,eAGF,gBACE,iBAAA,sBCXF,QAAkB,OAAA,IAAA,MAAA,kBAClB,YAAkB,WAAA,IAAA,MAAA,kBAClB,cAAkB,aAAA,IAAA,MAAA,kBAClB,eAAkB,cAAA,IAAA,MAAA,kBAClB,aAAkB,YAAA,IAAA,MAAA,kBAElB,UAAmB,OAAA,YACnB,cAAmB,WAAA,YACnB,gBAAmB,aAAA,YACnB,iBAAmB,cAAA,YACnB,eAAmB,YAAA,YAGjB,gBACE,aAAA,kBADF,kBACE,aAAA,kBADF,gBACE,aAAA,kBADF,aACE,aAAA,kBADF,gBACE,aAAA,kBADF,eACE,aAAA,kBADF,cACE,aAAA,kBADF,aACE,aAAA,kBAIJ,cACE,aAAA,eAOF,YACE,cAAA,gBAGF,SACE,cAAA,iBAGF,aACE,uBAAA,iBACA,wBAAA,iBAGF,eACE,wBAAA,iBACA,2BAAA,iBAGF,gBACE,2BAAA,iBACA,0BAAA,iBAGF,cACE,uBAAA,iBACA,0BAAA,iBAGF,YACE,cAAA,gBAGF,gBACE,cAAA,cAGF,cACE,cAAA,gBAGF,WACE,cAAA,YLxEA,iBACE,QAAA,MACA,MAAA,KACA,QAAA,GMOE,QAAwB,QAAA,eAAxB,UAAwB,QAAA,iBAAxB,gBAAwB,QAAA,uBAAxB,SAAwB,QAAA,gBAAxB,SAAwB,QAAA,gBAAxB,aAAwB,QAAA,oBAAxB,cAAwB,QAAA,qBAAxB,QAAwB,QAAA,sBAAA,QAAA,eAAxB,eAAwB,QAAA,6BAAA,QAAA,sB7CiD1B,yB6CjDE,WAAwB,QAAA,eAAxB,aAAwB,QAAA,iBAAxB,mBAAwB,QAAA,uBAAxB,YAAwB,QAAA,gBAAxB,YAAwB,QAAA,gBAAxB,gBAAwB,QAAA,oBAAxB,iBAAwB,QAAA,qBAAxB,WAAwB,QAAA,sBAAA,QAAA,eAAxB,kBAAwB,QAAA,6BAAA,QAAA,uB7CiD1B,yB6CjDE,WAAwB,QAAA,eAAxB,aAAwB,QAAA,iBAAxB,mBAAwB,QAAA,uBAAxB,YAAwB,QAAA,gBAAxB,YAAwB,QAAA,gBAAxB,gBAAwB,QAAA,oBAAxB,iBAAwB,QAAA,qBAAxB,WAAwB,QAAA,sBAAA,QAAA,eAAxB,kBAAwB,QAAA,6BAAA,QAAA,uB7CiD1B,yB6CjDE,WAAwB,QAAA,eAAxB,aAAwB,QAAA,iBAAxB,mBAAwB,QAAA,uBAAxB,YAAwB,QAAA,gBAAxB,YAAwB,QAAA,gBAAxB,gBAAwB,QAAA,oBAAxB,iBAAwB,QAAA,qBAAxB,WAAwB,QAAA,sBAAA,QAAA,eAAxB,kBAAwB,QAAA,6BAAA,QAAA,uB7CiD1B,0B6CjDE,WAAwB,QAAA,eAAxB,aAAwB,QAAA,iBAAxB,mBAAwB,QAAA,uBAAxB,YAAwB,QAAA,gBAAxB,YAAwB,QAAA,gBAAxB,gBAAwB,QAAA,oBAAxB,iBAAwB,QAAA,qBAAxB,WAAwB,QAAA,sBAAA,QAAA,eAAxB,kBAAwB,QAAA,6BAAA,QAAA,uBAU9B,aAEI,cAAqB,QAAA,eAArB,gBAAqB,QAAA,iBAArB,sBAAqB,QAAA,uBAArB,eAAqB,QAAA,gBAArB,eAAqB,QAAA,gBAArB,mBAAqB,QAAA,oBAArB,oBAAqB,QAAA,qBAArB,cAAqB,QAAA,sBAAA,QAAA,eAArB,qBAAqB,QAAA,6BAAA,QAAA,uBCrBzB,kBACE,SAAA,SACA,QAAA,MACA,MAAA,KACA,QAAA,EACA,SAAA,OALF,0BAQI,QAAA,MACA,QAAA,GATJ,yC1DsxNA,wBADA,yBAEA,yBACA,wB0DvwNI,SAAA,SACA,IAAA,EACA,OAAA,EACA,KAAA,EACA,MAAA,KACA,OAAA,KACA,OAAA,EAQF,gCAEI,YAAA,WAFJ,gCAEI,YAAA,OAFJ,+BAEI,YAAA,IAFJ,+BAEI,YAAA,KCzBF,UAAgC,mBAAA,cAAA,eAAA,cAChC,aAAgC,mBAAA,iBAAA,eAAA,iBAChC,kBAAgC,mBAAA,sBAAA,eAAA,sBAChC,qBAAgC,mBAAA,yBAAA,eAAA,yBAEhC,WAA8B,cAAA,eAAA,UAAA,eAC9B,aAA8B,cAAA,iBAAA,UAAA,iBAC9B,mBAA8B,cAAA,uBAAA,UAAA,uBAC9B,WAA8B,SAAA,EAAA,EAAA,eAAA,KAAA,EAAA,EAAA,eAC9B,aAA8B,kBAAA,YAAA,UAAA,YAC9B,aAA8B,kBAAA,YAAA,UAAA,YAC9B,eAA8B,kBAAA,YAAA,YAAA,YAC9B,eAA8B,kBAAA,YAAA,YAAA,YAE9B,uBAAoC,cAAA,gBAAA,gBAAA,qBACpC,qBAAoC,cAAA,cAAA,gBAAA,mBACpC,wBAAoC,cAAA,iBAAA,gBAAA,iBACpC,yBAAoC,cAAA,kBAAA,gBAAA,wBACpC,wBAAoC,cAAA,qBAAA,gBAAA,uBAEpC,mBAAiC,eAAA,gBAAA,YAAA,qBACjC,iBAAiC,eAAA,cAAA,YAAA,mBACjC,oBAAiC,eAAA,iBAAA,YAAA,iBACjC,sBAAiC,eAAA,mBAAA,YAAA,mBACjC,qBAAiC,eAAA,kBAAA,YAAA,kBAEjC,qBAAkC,mBAAA,gBAAA,cAAA,qBAClC,mBAAkC,mBAAA,cAAA,cAAA,mBAClC,sBAAkC,mBAAA,iBAAA,cAAA,iBAClC,uBAAkC,mBAAA,kBAAA,cAAA,wBAClC,sBAAkC,mBAAA,qBAAA,cAAA,uBAClC,uBAAkC,mBAAA,kBAAA,cAAA,kBAElC,iBAAgC,oBAAA,eAAA,WAAA,eAChC,kBAAgC,oBAAA,gBAAA,WAAA,qBAChC,gBAAgC,oBAAA,cAAA,WAAA,mBAChC,mBAAgC,oBAAA,iBAAA,WAAA,iBAChC,qBAAgC,oBAAA,mBAAA,WAAA,mBAChC,oBAAgC,oBAAA,kBAAA,WAAA,kB/CYhC,yB+ClDA,aAAgC,mBAAA,cAAA,eAAA,cAChC,gBAAgC,mBAAA,iBAAA,eAAA,iBAChC,qBAAgC,mBAAA,sBAAA,eAAA,sBAChC,wBAAgC,mBAAA,yBAAA,eAAA,yBAEhC,cAA8B,cAAA,eAAA,UAAA,eAC9B,gBAA8B,cAAA,iBAAA,UAAA,iBAC9B,sBAA8B,cAAA,uBAAA,UAAA,uBAC9B,cAA8B,SAAA,EAAA,EAAA,eAAA,KAAA,EAAA,EAAA,eAC9B,gBAA8B,kBAAA,YAAA,UAAA,YAC9B,gBAA8B,kBAAA,YAAA,UAAA,YAC9B,kBAA8B,kBAAA,YAAA,YAAA,YAC9B,kBAA8B,kBAAA,YAAA,YAAA,YAE9B,0BAAoC,cAAA,gBAAA,gBAAA,qBACpC,wBAAoC,cAAA,cAAA,gBAAA,mBACpC,2BAAoC,cAAA,iBAAA,gBAAA,iBACpC,4BAAoC,cAAA,kBAAA,gBAAA,wBACpC,2BAAoC,cAAA,qBAAA,gBAAA,uBAEpC,sBAAiC,eAAA,gBAAA,YAAA,qBACjC,oBAAiC,eAAA,cAAA,YAAA,mBACjC,uBAAiC,eAAA,iBAAA,YAAA,iBACjC,yBAAiC,eAAA,mBAAA,YAAA,mBACjC,wBAAiC,eAAA,kBAAA,YAAA,kBAEjC,wBAAkC,mBAAA,gBAAA,cAAA,qBAClC,sBAAkC,mBAAA,cAAA,cAAA,mBAClC,yBAAkC,mBAAA,iBAAA,cAAA,iBAClC,0BAAkC,mBAAA,kBAAA,cAAA,wBAClC,yBAAkC,mBAAA,qBAAA,cAAA,uBAClC,0BAAkC,mBAAA,kBAAA,cAAA,kBAElC,oBAAgC,oBAAA,eAAA,WAAA,eAChC,qBAAgC,oBAAA,gBAAA,WAAA,qBAChC,mBAAgC,oBAAA,cAAA,WAAA,mBAChC,sBAAgC,oBAAA,iBAAA,WAAA,iBAChC,wBAAgC,oBAAA,mBAAA,WAAA,mBAChC,uBAAgC,oBAAA,kBAAA,WAAA,mB/CYhC,yB+ClDA,aAAgC,mBAAA,cAAA,eAAA,cAChC,gBAAgC,mBAAA,iBAAA,eAAA,iBAChC,qBAAgC,mBAAA,sBAAA,eAAA,sBAChC,wBAAgC,mBAAA,yBAAA,eAAA,yBAEhC,cAA8B,cAAA,eAAA,UAAA,eAC9B,gBAA8B,cAAA,iBAAA,UAAA,iBAC9B,sBAA8B,cAAA,uBAAA,UAAA,uBAC9B,cAA8B,SAAA,EAAA,EAAA,eAAA,KAAA,EAAA,EAAA,eAC9B,gBAA8B,kBAAA,YAAA,UAAA,YAC9B,gBAA8B,kBAAA,YAAA,UAAA,YAC9B,kBAA8B,kBAAA,YAAA,YAAA,YAC9B,kBAA8B,kBAAA,YAAA,YAAA,YAE9B,0BAAoC,cAAA,gBAAA,gBAAA,qBACpC,wBAAoC,cAAA,cAAA,gBAAA,mBACpC,2BAAoC,cAAA,iBAAA,gBAAA,iBACpC,4BAAoC,cAAA,kBAAA,gBAAA,wBACpC,2BAAoC,cAAA,qBAAA,gBAAA,uBAEpC,sBAAiC,eAAA,gBAAA,YAAA,qBACjC,oBAAiC,eAAA,cAAA,YAAA,mBACjC,uBAAiC,eAAA,iBAAA,YAAA,iBACjC,yBAAiC,eAAA,mBAAA,YAAA,mBACjC,wBAAiC,eAAA,kBAAA,YAAA,kBAEjC,wBAAkC,mBAAA,gBAAA,cAAA,qBAClC,sBAAkC,mBAAA,cAAA,cAAA,mBAClC,yBAAkC,mBAAA,iBAAA,cAAA,iBAClC,0BAAkC,mBAAA,kBAAA,cAAA,wBAClC,yBAAkC,mBAAA,qBAAA,cAAA,uBAClC,0BAAkC,mBAAA,kBAAA,cAAA,kBAElC,oBAAgC,oBAAA,eAAA,WAAA,eAChC,qBAAgC,oBAAA,gBAAA,WAAA,qBAChC,mBAAgC,oBAAA,cAAA,WAAA,mBAChC,sBAAgC,oBAAA,iBAAA,WAAA,iBAChC,wBAAgC,oBAAA,mBAAA,WAAA,mBAChC,uBAAgC,oBAAA,kBAAA,WAAA,mB/CYhC,yB+ClDA,aAAgC,mBAAA,cAAA,eAAA,cAChC,gBAAgC,mBAAA,iBAAA,eAAA,iBAChC,qBAAgC,mBAAA,sBAAA,eAAA,sBAChC,wBAAgC,mBAAA,yBAAA,eAAA,yBAEhC,cAA8B,cAAA,eAAA,UAAA,eAC9B,gBAA8B,cAAA,iBAAA,UAAA,iBAC9B,sBAA8B,cAAA,uBAAA,UAAA,uBAC9B,cAA8B,SAAA,EAAA,EAAA,eAAA,KAAA,EAAA,EAAA,eAC9B,gBAA8B,kBAAA,YAAA,UAAA,YAC9B,gBAA8B,kBAAA,YAAA,UAAA,YAC9B,kBAA8B,kBAAA,YAAA,YAAA,YAC9B,kBAA8B,kBAAA,YAAA,YAAA,YAE9B,0BAAoC,cAAA,gBAAA,gBAAA,qBACpC,wBAAoC,cAAA,cAAA,gBAAA,mBACpC,2BAAoC,cAAA,iBAAA,gBAAA,iBACpC,4BAAoC,cAAA,kBAAA,gBAAA,wBACpC,2BAAoC,cAAA,qBAAA,gBAAA,uBAEpC,sBAAiC,eAAA,gBAAA,YAAA,qBACjC,oBAAiC,eAAA,cAAA,YAAA,mBACjC,uBAAiC,eAAA,iBAAA,YAAA,iBACjC,yBAAiC,eAAA,mBAAA,YAAA,mBACjC,wBAAiC,eAAA,kBAAA,YAAA,kBAEjC,wBAAkC,mBAAA,gBAAA,cAAA,qBAClC,sBAAkC,mBAAA,cAAA,cAAA,mBAClC,yBAAkC,mBAAA,iBAAA,cAAA,iBAClC,0BAAkC,mBAAA,kBAAA,cAAA,wBAClC,yBAAkC,mBAAA,qBAAA,cAAA,uBAClC,0BAAkC,mBAAA,kBAAA,cAAA,kBAElC,oBAAgC,oBAAA,eAAA,WAAA,eAChC,qBAAgC,oBAAA,gBAAA,WAAA,qBAChC,mBAAgC,oBAAA,cAAA,WAAA,mBAChC,sBAAgC,oBAAA,iBAAA,WAAA,iBAChC,wBAAgC,oBAAA,mBAAA,WAAA,mBAChC,uBAAgC,oBAAA,kBAAA,WAAA,mB/CYhC,0B+ClDA,aAAgC,mBAAA,cAAA,eAAA,cAChC,gBAAgC,mBAAA,iBAAA,eAAA,iBAChC,qBAAgC,mBAAA,sBAAA,eAAA,sBAChC,wBAAgC,mBAAA,yBAAA,eAAA,yBAEhC,cAA8B,cAAA,eAAA,UAAA,eAC9B,gBAA8B,cAAA,iBAAA,UAAA,iBAC9B,sBAA8B,cAAA,uBAAA,UAAA,uBAC9B,cAA8B,SAAA,EAAA,EAAA,eAAA,KAAA,EAAA,EAAA,eAC9B,gBAA8B,kBAAA,YAAA,UAAA,YAC9B,gBAA8B,kBAAA,YAAA,UAAA,YAC9B,kBAA8B,kBAAA,YAAA,YAAA,YAC9B,kBAA8B,kBAAA,YAAA,YAAA,YAE9B,0BAAoC,cAAA,gBAAA,gBAAA,qBACpC,wBAAoC,cAAA,cAAA,gBAAA,mBACpC,2BAAoC,cAAA,iBAAA,gBAAA,iBACpC,4BAAoC,cAAA,kBAAA,gBAAA,wBACpC,2BAAoC,cAAA,qBAAA,gBAAA,uBAEpC,sBAAiC,eAAA,gBAAA,YAAA,qBACjC,oBAAiC,eAAA,cAAA,YAAA,mBACjC,uBAAiC,eAAA,iBAAA,YAAA,iBACjC,yBAAiC,eAAA,mBAAA,YAAA,mBACjC,wBAAiC,eAAA,kBAAA,YAAA,kBAEjC,wBAAkC,mBAAA,gBAAA,cAAA,qBAClC,sBAAkC,mBAAA,cAAA,cAAA,mBAClC,yBAAkC,mBAAA,iBAAA,cAAA,iBAClC,0BAAkC,mBAAA,kBAAA,cAAA,wBAClC,yBAAkC,mBAAA,qBAAA,cAAA,uBAClC,0BAAkC,mBAAA,kBAAA,cAAA,kBAElC,oBAAgC,oBAAA,eAAA,WAAA,eAChC,qBAAgC,oBAAA,gBAAA,WAAA,qBAChC,mBAAgC,oBAAA,cAAA,WAAA,mBAChC,sBAAgC,oBAAA,iBAAA,WAAA,iBAChC,wBAAgC,oBAAA,mBAAA,WAAA,mBAChC,uBAAgC,oBAAA,kBAAA,WAAA,mBC1ChC,YAAwB,MAAA,eACxB,aAAwB,MAAA,gBACxB,YAAwB,MAAA,ehDoDxB,yBgDtDA,eAAwB,MAAA,eACxB,gBAAwB,MAAA,gBACxB,eAAwB,MAAA,gBhDoDxB,yBgDtDA,eAAwB,MAAA,eACxB,gBAAwB,MAAA,gBACxB,eAAwB,MAAA,gBhDoDxB,yBgDtDA,eAAwB,MAAA,eACxB,gBAAwB,MAAA,gBACxB,eAAwB,MAAA,gBhDoDxB,0BgDtDA,eAAwB,MAAA,eACxB,gBAAwB,MAAA,gBACxB,eAAwB,MAAA,gBCL1B,eAAsB,SAAA,eAAtB,iBAAsB,SAAA,iBCCtB,iBAAyB,SAAA,iBAAzB,mBAAyB,SAAA,mBAAzB,mBAAyB,SAAA,mBAAzB,gBAAyB,SAAA,gBAAzB,iBAAyB,SAAA,yBAAA,SAAA,iBAK3B,WACE,SAAA,MACA,IAAA,EACA,MAAA,EACA,KAAA,EACA,QAAA,KAGF,cACE,SAAA,MACA,MAAA,EACA,OAAA,EACA,KAAA,EACA,QAAA,KAI4B,2DAD9B,YAEI,SAAA,eAAA,SAAA,OACA,IAAA,EACA,QAAA,MCzBJ,SCEE,SAAA,SACA,MAAA,IACA,OAAA,IACA,QAAA,EACA,SAAA,OACA,KAAA,cACA,YAAA,OACA,OAAA,EAUA,0BAAA,yBAEE,SAAA,OACA,MAAA,KACA,OAAA,KACA,SAAA,QACA,KAAA,KACA,YAAA,OC5BJ,WAAa,WAAA,EAAA,QAAA,OAAA,2BACb,QAAU,WAAA,EAAA,MAAA,KAAA,0BACV,WAAa,WAAA,EAAA,KAAA,KAAA,2BACb,aAAe,WAAA,eCCX,MAAuB,MAAA,cAAvB,MAAuB,MAAA,cAAvB,MAAuB,MAAA,cAAvB,OAAuB,MAAA,eAAvB,QAAuB,MAAA,eAAvB,MAAuB,OAAA,cAAvB,MAAuB,OAAA,cAAvB,MAAuB,OAAA,cAAvB,OAAuB,OAAA,eAAvB,QAAuB,OAAA,eAI3B,QAAU,UAAA,eACV,QAAU,WAAA,eAIV,YAAc,UAAA,gBACd,YAAc,WAAA,gBAEd,QAAU,MAAA,gBACV,QAAU,OAAA,gBCfV,uBAEI,SAAA,SACA,IAAA,EACA,MAAA,EACA,OAAA,EACA,KAAA,EACA,QAAA,EAEA,eAAA,KACA,QAAA,GAEA,iBAAA,cCNI,KAAgC,OAAA,YAChC,MpEsuPR,MoEpuPU,WAAA,YAEF,MpEuuPR,MoEruPU,aAAA,YAEF,MpEwuPR,MoEtuPU,cAAA,YAEF,MpEyuPR,MoEvuPU,YAAA,YAfF,KAAgC,OAAA,iBAChC,MpE8vPR,MoE5vPU,WAAA,iBAEF,MpE+vPR,MoE7vPU,aAAA,iBAEF,MpEgwPR,MoE9vPU,cAAA,iBAEF,MpEiwPR,MoE/vPU,YAAA,iBAfF,KAAgC,OAAA,gBAChC,MpEsxPR,MoEpxPU,WAAA,gBAEF,MpEuxPR,MoErxPU,aAAA,gBAEF,MpEwxPR,MoEtxPU,cAAA,gBAEF,MpEyxPR,MoEvxPU,YAAA,gBAfF,KAAgC,OAAA,eAChC,MpE8yPR,MoE5yPU,WAAA,eAEF,MpE+yPR,MoE7yPU,aAAA,eAEF,MpEgzPR,MoE9yPU,cAAA,eAEF,MpEizPR,MoE/yPU,YAAA,eAfF,KAAgC,OAAA,iBAChC,MpEs0PR,MoEp0PU,WAAA,iBAEF,MpEu0PR,MoEr0PU,aAAA,iBAEF,MpEw0PR,MoEt0PU,cAAA,iBAEF,MpEy0PR,MoEv0PU,YAAA,iBAfF,KAAgC,OAAA,eAChC,MpE81PR,MoE51PU,WAAA,eAEF,MpE+1PR,MoE71PU,aAAA,eAEF,MpEg2PR,MoE91PU,cAAA,eAEF,MpEi2PR,MoE/1PU,YAAA,eAfF,KAAgC,QAAA,YAChC,MpEs3PR,MoEp3PU,YAAA,YAEF,MpEu3PR,MoEr3PU,cAAA,YAEF,MpEw3PR,MoEt3PU,eAAA,YAEF,MpEy3PR,MoEv3PU,aAAA,YAfF,KAAgC,QAAA,iBAChC,MpE84PR,MoE54PU,YAAA,iBAEF,MpE+4PR,MoE74PU,cAAA,iBAEF,MpEg5PR,MoE94PU,eAAA,iBAEF,MpEi5PR,MoE/4PU,aAAA,iBAfF,KAAgC,QAAA,gBAChC,MpEs6PR,MoEp6PU,YAAA,gBAEF,MpEu6PR,MoEr6PU,cAAA,gBAEF,MpEw6PR,MoEt6PU,eAAA,gBAEF,MpEy6PR,MoEv6PU,aAAA,gBAfF,KAAgC,QAAA,eAChC,MpE87PR,MoE57PU,YAAA,eAEF,MpE+7PR,MoE77PU,cAAA,eAEF,MpEg8PR,MoE97PU,eAAA,eAEF,MpEi8PR,MoE/7PU,aAAA,eAfF,KAAgC,QAAA,iBAChC,MpEs9PR,MoEp9PU,YAAA,iBAEF,MpEu9PR,MoEr9PU,cAAA,iBAEF,MpEw9PR,MoEt9PU,eAAA,iBAEF,MpEy9PR,MoEv9PU,aAAA,iBAfF,KAAgC,QAAA,eAChC,MpE8+PR,MoE5+PU,YAAA,eAEF,MpE++PR,MoE7+PU,cAAA,eAEF,MpEg/PR,MoE9+PU,eAAA,eAEF,MpEi/PR,MoE/+PU,aAAA,eAQF,MAAwB,OAAA,kBACxB,OpE++PR,OoE7+PU,WAAA,kBAEF,OpEg/PR,OoE9+PU,aAAA,kBAEF,OpEi/PR,OoE/+PU,cAAA,kBAEF,OpEk/PR,OoEh/PU,YAAA,kBAfF,MAAwB,OAAA,iBACxB,OpEugQR,OoErgQU,WAAA,iBAEF,OpEwgQR,OoEtgQU,aAAA,iBAEF,OpEygQR,OoEvgQU,cAAA,iBAEF,OpE0gQR,OoExgQU,YAAA,iBAfF,MAAwB,OAAA,gBACxB,OpE+hQR,OoE7hQU,WAAA,gBAEF,OpEgiQR,OoE9hQU,aAAA,gBAEF,OpEiiQR,OoE/hQU,cAAA,gBAEF,OpEkiQR,OoEhiQU,YAAA,gBAfF,MAAwB,OAAA,kBACxB,OpEujQR,OoErjQU,WAAA,kBAEF,OpEwjQR,OoEtjQU,aAAA,kBAEF,OpEyjQR,OoEvjQU,cAAA,kBAEF,OpE0jQR,OoExjQU,YAAA,kBAfF,MAAwB,OAAA,gBACxB,OpE+kQR,OoE7kQU,WAAA,gBAEF,OpEglQR,OoE9kQU,aAAA,gBAEF,OpEilQR,OoE/kQU,cAAA,gBAEF,OpEklQR,OoEhlQU,YAAA,gBAMN,QAAmB,OAAA,eACnB,SpEklQJ,SoEhlQM,WAAA,eAEF,SpEmlQJ,SoEjlQM,aAAA,eAEF,SpEolQJ,SoEllQM,cAAA,eAEF,SpEqlQJ,SoEnlQM,YAAA,exDTF,yBwDlDI,QAAgC,OAAA,YAChC,SpEspQN,SoEppQQ,WAAA,YAEF,SpEspQN,SoEppQQ,aAAA,YAEF,SpEspQN,SoEppQQ,cAAA,YAEF,SpEspQN,SoEppQQ,YAAA,YAfF,QAAgC,OAAA,iBAChC,SpEyqQN,SoEvqQQ,WAAA,iBAEF,SpEyqQN,SoEvqQQ,aAAA,iBAEF,SpEyqQN,SoEvqQQ,cAAA,iBAEF,SpEyqQN,SoEvqQQ,YAAA,iBAfF,QAAgC,OAAA,gBAChC,SpE4rQN,SoE1rQQ,WAAA,gBAEF,SpE4rQN,SoE1rQQ,aAAA,gBAEF,SpE4rQN,SoE1rQQ,cAAA,gBAEF,SpE4rQN,SoE1rQQ,YAAA,gBAfF,QAAgC,OAAA,eAChC,SpE+sQN,SoE7sQQ,WAAA,eAEF,SpE+sQN,SoE7sQQ,aAAA,eAEF,SpE+sQN,SoE7sQQ,cAAA,eAEF,SpE+sQN,SoE7sQQ,YAAA,eAfF,QAAgC,OAAA,iBAChC,SpEkuQN,SoEhuQQ,WAAA,iBAEF,SpEkuQN,SoEhuQQ,aAAA,iBAEF,SpEkuQN,SoEhuQQ,cAAA,iBAEF,SpEkuQN,SoEhuQQ,YAAA,iBAfF,QAAgC,OAAA,eAChC,SpEqvQN,SoEnvQQ,WAAA,eAEF,SpEqvQN,SoEnvQQ,aAAA,eAEF,SpEqvQN,SoEnvQQ,cAAA,eAEF,SpEqvQN,SoEnvQQ,YAAA,eAfF,QAAgC,QAAA,YAChC,SpEwwQN,SoEtwQQ,YAAA,YAEF,SpEwwQN,SoEtwQQ,cAAA,YAEF,SpEwwQN,SoEtwQQ,eAAA,YAEF,SpEwwQN,SoEtwQQ,aAAA,YAfF,QAAgC,QAAA,iBAChC,SpE2xQN,SoEzxQQ,YAAA,iBAEF,SpE2xQN,SoEzxQQ,cAAA,iBAEF,SpE2xQN,SoEzxQQ,eAAA,iBAEF,SpE2xQN,SoEzxQQ,aAAA,iBAfF,QAAgC,QAAA,gBAChC,SpE8yQN,SoE5yQQ,YAAA,gBAEF,SpE8yQN,SoE5yQQ,cAAA,gBAEF,SpE8yQN,SoE5yQQ,eAAA,gBAEF,SpE8yQN,SoE5yQQ,aAAA,gBAfF,QAAgC,QAAA,eAChC,SpEi0QN,SoE/zQQ,YAAA,eAEF,SpEi0QN,SoE/zQQ,cAAA,eAEF,SpEi0QN,SoE/zQQ,eAAA,eAEF,SpEi0QN,SoE/zQQ,aAAA,eAfF,QAAgC,QAAA,iBAChC,SpEo1QN,SoEl1QQ,YAAA,iBAEF,SpEo1QN,SoEl1QQ,cAAA,iBAEF,SpEo1QN,SoEl1QQ,eAAA,iBAEF,SpEo1QN,SoEl1QQ,aAAA,iBAfF,QAAgC,QAAA,eAChC,SpEu2QN,SoEr2QQ,YAAA,eAEF,SpEu2QN,SoEr2QQ,cAAA,eAEF,SpEu2QN,SoEr2QQ,eAAA,eAEF,SpEu2QN,SoEr2QQ,aAAA,eAQF,SAAwB,OAAA,kBACxB,UpEm2QN,UoEj2QQ,WAAA,kBAEF,UpEm2QN,UoEj2QQ,aAAA,kBAEF,UpEm2QN,UoEj2QQ,cAAA,kBAEF,UpEm2QN,UoEj2QQ,YAAA,kBAfF,SAAwB,OAAA,iBACxB,UpEs3QN,UoEp3QQ,WAAA,iBAEF,UpEs3QN,UoEp3QQ,aAAA,iBAEF,UpEs3QN,UoEp3QQ,cAAA,iBAEF,UpEs3QN,UoEp3QQ,YAAA,iBAfF,SAAwB,OAAA,gBACxB,UpEy4QN,UoEv4QQ,WAAA,gBAEF,UpEy4QN,UoEv4QQ,aAAA,gBAEF,UpEy4QN,UoEv4QQ,cAAA,gBAEF,UpEy4QN,UoEv4QQ,YAAA,gBAfF,SAAwB,OAAA,kBACxB,UpE45QN,UoE15QQ,WAAA,kBAEF,UpE45QN,UoE15QQ,aAAA,kBAEF,UpE45QN,UoE15QQ,cAAA,kBAEF,UpE45QN,UoE15QQ,YAAA,kBAfF,SAAwB,OAAA,gBACxB,UpE+6QN,UoE76QQ,WAAA,gBAEF,UpE+6QN,UoE76QQ,aAAA,gBAEF,UpE+6QN,UoE76QQ,cAAA,gBAEF,UpE+6QN,UoE76QQ,YAAA,gBAMN,WAAmB,OAAA,eACnB,YpE66QF,YoE36QI,WAAA,eAEF,YpE66QF,YoE36QI,aAAA,eAEF,YpE66QF,YoE36QI,cAAA,eAEF,YpE66QF,YoE36QI,YAAA,gBxDTF,yBwDlDI,QAAgC,OAAA,YAChC,SpE++QN,SoE7+QQ,WAAA,YAEF,SpE++QN,SoE7+QQ,aAAA,YAEF,SpE++QN,SoE7+QQ,cAAA,YAEF,SpE++QN,SoE7+QQ,YAAA,YAfF,QAAgC,OAAA,iBAChC,SpEkgRN,SoEhgRQ,WAAA,iBAEF,SpEkgRN,SoEhgRQ,aAAA,iBAEF,SpEkgRN,SoEhgRQ,cAAA,iBAEF,SpEkgRN,SoEhgRQ,YAAA,iBAfF,QAAgC,OAAA,gBAChC,SpEqhRN,SoEnhRQ,WAAA,gBAEF,SpEqhRN,SoEnhRQ,aAAA,gBAEF,SpEqhRN,SoEnhRQ,cAAA,gBAEF,SpEqhRN,SoEnhRQ,YAAA,gBAfF,QAAgC,OAAA,eAChC,SpEwiRN,SoEtiRQ,WAAA,eAEF,SpEwiRN,SoEtiRQ,aAAA,eAEF,SpEwiRN,SoEtiRQ,cAAA,eAEF,SpEwiRN,SoEtiRQ,YAAA,eAfF,QAAgC,OAAA,iBAChC,SpE2jRN,SoEzjRQ,WAAA,iBAEF,SpE2jRN,SoEzjRQ,aAAA,iBAEF,SpE2jRN,SoEzjRQ,cAAA,iBAEF,SpE2jRN,SoEzjRQ,YAAA,iBAfF,QAAgC,OAAA,eAChC,SpE8kRN,SoE5kRQ,WAAA,eAEF,SpE8kRN,SoE5kRQ,aAAA,eAEF,SpE8kRN,SoE5kRQ,cAAA,eAEF,SpE8kRN,SoE5kRQ,YAAA,eAfF,QAAgC,QAAA,YAChC,SpEimRN,SoE/lRQ,YAAA,YAEF,SpEimRN,SoE/lRQ,cAAA,YAEF,SpEimRN,SoE/lRQ,eAAA,YAEF,SpEimRN,SoE/lRQ,aAAA,YAfF,QAAgC,QAAA,iBAChC,SpEonRN,SoElnRQ,YAAA,iBAEF,SpEonRN,SoElnRQ,cAAA,iBAEF,SpEonRN,SoElnRQ,eAAA,iBAEF,SpEonRN,SoElnRQ,aAAA,iBAfF,QAAgC,QAAA,gBAChC,SpEuoRN,SoEroRQ,YAAA,gBAEF,SpEuoRN,SoEroRQ,cAAA,gBAEF,SpEuoRN,SoEroRQ,eAAA,gBAEF,SpEuoRN,SoEroRQ,aAAA,gBAfF,QAAgC,QAAA,eAChC,SpE0pRN,SoExpRQ,YAAA,eAEF,SpE0pRN,SoExpRQ,cAAA,eAEF,SpE0pRN,SoExpRQ,eAAA,eAEF,SpE0pRN,SoExpRQ,aAAA,eAfF,QAAgC,QAAA,iBAChC,SpE6qRN,SoE3qRQ,YAAA,iBAEF,SpE6qRN,SoE3qRQ,cAAA,iBAEF,SpE6qRN,SoE3qRQ,eAAA,iBAEF,SpE6qRN,SoE3qRQ,aAAA,iBAfF,QAAgC,QAAA,eAChC,SpEgsRN,SoE9rRQ,YAAA,eAEF,SpEgsRN,SoE9rRQ,cAAA,eAEF,SpEgsRN,SoE9rRQ,eAAA,eAEF,SpEgsRN,SoE9rRQ,aAAA,eAQF,SAAwB,OAAA,kBACxB,UpE4rRN,UoE1rRQ,WAAA,kBAEF,UpE4rRN,UoE1rRQ,aAAA,kBAEF,UpE4rRN,UoE1rRQ,cAAA,kBAEF,UpE4rRN,UoE1rRQ,YAAA,kBAfF,SAAwB,OAAA,iBACxB,UpE+sRN,UoE7sRQ,WAAA,iBAEF,UpE+sRN,UoE7sRQ,aAAA,iBAEF,UpE+sRN,UoE7sRQ,cAAA,iBAEF,UpE+sRN,UoE7sRQ,YAAA,iBAfF,SAAwB,OAAA,gBACxB,UpEkuRN,UoEhuRQ,WAAA,gBAEF,UpEkuRN,UoEhuRQ,aAAA,gBAEF,UpEkuRN,UoEhuRQ,cAAA,gBAEF,UpEkuRN,UoEhuRQ,YAAA,gBAfF,SAAwB,OAAA,kBACxB,UpEqvRN,UoEnvRQ,WAAA,kBAEF,UpEqvRN,UoEnvRQ,aAAA,kBAEF,UpEqvRN,UoEnvRQ,cAAA,kBAEF,UpEqvRN,UoEnvRQ,YAAA,kBAfF,SAAwB,OAAA,gBACxB,UpEwwRN,UoEtwRQ,WAAA,gBAEF,UpEwwRN,UoEtwRQ,aAAA,gBAEF,UpEwwRN,UoEtwRQ,cAAA,gBAEF,UpEwwRN,UoEtwRQ,YAAA,gBAMN,WAAmB,OAAA,eACnB,YpEswRF,YoEpwRI,WAAA,eAEF,YpEswRF,YoEpwRI,aAAA,eAEF,YpEswRF,YoEpwRI,cAAA,eAEF,YpEswRF,YoEpwRI,YAAA,gBxDTF,yBwDlDI,QAAgC,OAAA,YAChC,SpEw0RN,SoEt0RQ,WAAA,YAEF,SpEw0RN,SoEt0RQ,aAAA,YAEF,SpEw0RN,SoEt0RQ,cAAA,YAEF,SpEw0RN,SoEt0RQ,YAAA,YAfF,QAAgC,OAAA,iBAChC,SpE21RN,SoEz1RQ,WAAA,iBAEF,SpE21RN,SoEz1RQ,aAAA,iBAEF,SpE21RN,SoEz1RQ,cAAA,iBAEF,SpE21RN,SoEz1RQ,YAAA,iBAfF,QAAgC,OAAA,gBAChC,SpE82RN,SoE52RQ,WAAA,gBAEF,SpE82RN,SoE52RQ,aAAA,gBAEF,SpE82RN,SoE52RQ,cAAA,gBAEF,SpE82RN,SoE52RQ,YAAA,gBAfF,QAAgC,OAAA,eAChC,SpEi4RN,SoE/3RQ,WAAA,eAEF,SpEi4RN,SoE/3RQ,aAAA,eAEF,SpEi4RN,SoE/3RQ,cAAA,eAEF,SpEi4RN,SoE/3RQ,YAAA,eAfF,QAAgC,OAAA,iBAChC,SpEo5RN,SoEl5RQ,WAAA,iBAEF,SpEo5RN,SoEl5RQ,aAAA,iBAEF,SpEo5RN,SoEl5RQ,cAAA,iBAEF,SpEo5RN,SoEl5RQ,YAAA,iBAfF,QAAgC,OAAA,eAChC,SpEu6RN,SoEr6RQ,WAAA,eAEF,SpEu6RN,SoEr6RQ,aAAA,eAEF,SpEu6RN,SoEr6RQ,cAAA,eAEF,SpEu6RN,SoEr6RQ,YAAA,eAfF,QAAgC,QAAA,YAChC,SpE07RN,SoEx7RQ,YAAA,YAEF,SpE07RN,SoEx7RQ,cAAA,YAEF,SpE07RN,SoEx7RQ,eAAA,YAEF,SpE07RN,SoEx7RQ,aAAA,YAfF,QAAgC,QAAA,iBAChC,SpE68RN,SoE38RQ,YAAA,iBAEF,SpE68RN,SoE38RQ,cAAA,iBAEF,SpE68RN,SoE38RQ,eAAA,iBAEF,SpE68RN,SoE38RQ,aAAA,iBAfF,QAAgC,QAAA,gBAChC,SpEg+RN,SoE99RQ,YAAA,gBAEF,SpEg+RN,SoE99RQ,cAAA,gBAEF,SpEg+RN,SoE99RQ,eAAA,gBAEF,SpEg+RN,SoE99RQ,aAAA,gBAfF,QAAgC,QAAA,eAChC,SpEm/RN,SoEj/RQ,YAAA,eAEF,SpEm/RN,SoEj/RQ,cAAA,eAEF,SpEm/RN,SoEj/RQ,eAAA,eAEF,SpEm/RN,SoEj/RQ,aAAA,eAfF,QAAgC,QAAA,iBAChC,SpEsgSN,SoEpgSQ,YAAA,iBAEF,SpEsgSN,SoEpgSQ,cAAA,iBAEF,SpEsgSN,SoEpgSQ,eAAA,iBAEF,SpEsgSN,SoEpgSQ,aAAA,iBAfF,QAAgC,QAAA,eAChC,SpEyhSN,SoEvhSQ,YAAA,eAEF,SpEyhSN,SoEvhSQ,cAAA,eAEF,SpEyhSN,SoEvhSQ,eAAA,eAEF,SpEyhSN,SoEvhSQ,aAAA,eAQF,SAAwB,OAAA,kBACxB,UpEqhSN,UoEnhSQ,WAAA,kBAEF,UpEqhSN,UoEnhSQ,aAAA,kBAEF,UpEqhSN,UoEnhSQ,cAAA,kBAEF,UpEqhSN,UoEnhSQ,YAAA,kBAfF,SAAwB,OAAA,iBACxB,UpEwiSN,UoEtiSQ,WAAA,iBAEF,UpEwiSN,UoEtiSQ,aAAA,iBAEF,UpEwiSN,UoEtiSQ,cAAA,iBAEF,UpEwiSN,UoEtiSQ,YAAA,iBAfF,SAAwB,OAAA,gBACxB,UpE2jSN,UoEzjSQ,WAAA,gBAEF,UpE2jSN,UoEzjSQ,aAAA,gBAEF,UpE2jSN,UoEzjSQ,cAAA,gBAEF,UpE2jSN,UoEzjSQ,YAAA,gBAfF,SAAwB,OAAA,kBACxB,UpE8kSN,UoE5kSQ,WAAA,kBAEF,UpE8kSN,UoE5kSQ,aAAA,kBAEF,UpE8kSN,UoE5kSQ,cAAA,kBAEF,UpE8kSN,UoE5kSQ,YAAA,kBAfF,SAAwB,OAAA,gBACxB,UpEimSN,UoE/lSQ,WAAA,gBAEF,UpEimSN,UoE/lSQ,aAAA,gBAEF,UpEimSN,UoE/lSQ,cAAA,gBAEF,UpEimSN,UoE/lSQ,YAAA,gBAMN,WAAmB,OAAA,eACnB,YpE+lSF,YoE7lSI,WAAA,eAEF,YpE+lSF,YoE7lSI,aAAA,eAEF,YpE+lSF,YoE7lSI,cAAA,eAEF,YpE+lSF,YoE7lSI,YAAA,gBxDTF,0BwDlDI,QAAgC,OAAA,YAChC,SpEiqSN,SoE/pSQ,WAAA,YAEF,SpEiqSN,SoE/pSQ,aAAA,YAEF,SpEiqSN,SoE/pSQ,cAAA,YAEF,SpEiqSN,SoE/pSQ,YAAA,YAfF,QAAgC,OAAA,iBAChC,SpEorSN,SoElrSQ,WAAA,iBAEF,SpEorSN,SoElrSQ,aAAA,iBAEF,SpEorSN,SoElrSQ,cAAA,iBAEF,SpEorSN,SoElrSQ,YAAA,iBAfF,QAAgC,OAAA,gBAChC,SpEusSN,SoErsSQ,WAAA,gBAEF,SpEusSN,SoErsSQ,aAAA,gBAEF,SpEusSN,SoErsSQ,cAAA,gBAEF,SpEusSN,SoErsSQ,YAAA,gBAfF,QAAgC,OAAA,eAChC,SpE0tSN,SoExtSQ,WAAA,eAEF,SpE0tSN,SoExtSQ,aAAA,eAEF,SpE0tSN,SoExtSQ,cAAA,eAEF,SpE0tSN,SoExtSQ,YAAA,eAfF,QAAgC,OAAA,iBAChC,SpE6uSN,SoE3uSQ,WAAA,iBAEF,SpE6uSN,SoE3uSQ,aAAA,iBAEF,SpE6uSN,SoE3uSQ,cAAA,iBAEF,SpE6uSN,SoE3uSQ,YAAA,iBAfF,QAAgC,OAAA,eAChC,SpEgwSN,SoE9vSQ,WAAA,eAEF,SpEgwSN,SoE9vSQ,aAAA,eAEF,SpEgwSN,SoE9vSQ,cAAA,eAEF,SpEgwSN,SoE9vSQ,YAAA,eAfF,QAAgC,QAAA,YAChC,SpEmxSN,SoEjxSQ,YAAA,YAEF,SpEmxSN,SoEjxSQ,cAAA,YAEF,SpEmxSN,SoEjxSQ,eAAA,YAEF,SpEmxSN,SoEjxSQ,aAAA,YAfF,QAAgC,QAAA,iBAChC,SpEsySN,SoEpySQ,YAAA,iBAEF,SpEsySN,SoEpySQ,cAAA,iBAEF,SpEsySN,SoEpySQ,eAAA,iBAEF,SpEsySN,SoEpySQ,aAAA,iBAfF,QAAgC,QAAA,gBAChC,SpEyzSN,SoEvzSQ,YAAA,gBAEF,SpEyzSN,SoEvzSQ,cAAA,gBAEF,SpEyzSN,SoEvzSQ,eAAA,gBAEF,SpEyzSN,SoEvzSQ,aAAA,gBAfF,QAAgC,QAAA,eAChC,SpE40SN,SoE10SQ,YAAA,eAEF,SpE40SN,SoE10SQ,cAAA,eAEF,SpE40SN,SoE10SQ,eAAA,eAEF,SpE40SN,SoE10SQ,aAAA,eAfF,QAAgC,QAAA,iBAChC,SpE+1SN,SoE71SQ,YAAA,iBAEF,SpE+1SN,SoE71SQ,cAAA,iBAEF,SpE+1SN,SoE71SQ,eAAA,iBAEF,SpE+1SN,SoE71SQ,aAAA,iBAfF,QAAgC,QAAA,eAChC,SpEk3SN,SoEh3SQ,YAAA,eAEF,SpEk3SN,SoEh3SQ,cAAA,eAEF,SpEk3SN,SoEh3SQ,eAAA,eAEF,SpEk3SN,SoEh3SQ,aAAA,eAQF,SAAwB,OAAA,kBACxB,UpE82SN,UoE52SQ,WAAA,kBAEF,UpE82SN,UoE52SQ,aAAA,kBAEF,UpE82SN,UoE52SQ,cAAA,kBAEF,UpE82SN,UoE52SQ,YAAA,kBAfF,SAAwB,OAAA,iBACxB,UpEi4SN,UoE/3SQ,WAAA,iBAEF,UpEi4SN,UoE/3SQ,aAAA,iBAEF,UpEi4SN,UoE/3SQ,cAAA,iBAEF,UpEi4SN,UoE/3SQ,YAAA,iBAfF,SAAwB,OAAA,gBACxB,UpEo5SN,UoEl5SQ,WAAA,gBAEF,UpEo5SN,UoEl5SQ,aAAA,gBAEF,UpEo5SN,UoEl5SQ,cAAA,gBAEF,UpEo5SN,UoEl5SQ,YAAA,gBAfF,SAAwB,OAAA,kBACxB,UpEu6SN,UoEr6SQ,WAAA,kBAEF,UpEu6SN,UoEr6SQ,aAAA,kBAEF,UpEu6SN,UoEr6SQ,cAAA,kBAEF,UpEu6SN,UoEr6SQ,YAAA,kBAfF,SAAwB,OAAA,gBACxB,UpE07SN,UoEx7SQ,WAAA,gBAEF,UpE07SN,UoEx7SQ,aAAA,gBAEF,UpE07SN,UoEx7SQ,cAAA,gBAEF,UpE07SN,UoEx7SQ,YAAA,gBAMN,WAAmB,OAAA,eACnB,YpEw7SF,YoEt7SI,WAAA,eAEF,YpEw7SF,YoEt7SI,aAAA,eAEF,YpEw7SF,YoEt7SI,cAAA,eAEF,YpEw7SF,YoEt7SI,YAAA,gBC/DN,gBAAkB,YAAA,cAAA,CAAA,KAAA,CAAA,MAAA,CAAA,QAAA,CAAA,iBAAA,CAAA,aAAA,CAAA,oBAIlB,cAAiB,WAAA,kBACjB,WAAiB,YAAA,iBACjB,aAAiB,YAAA,iBACjB,eCTE,SAAA,OACA,cAAA,SACA,YAAA,ODeE,WAAwB,WAAA,eACxB,YAAwB,WAAA,gBACxB,aAAwB,WAAA,iBzDqCxB,yByDvCA,cAAwB,WAAA,eACxB,eAAwB,WAAA,gBACxB,gBAAwB,WAAA,kBzDqCxB,yByDvCA,cAAwB,WAAA,eACxB,eAAwB,WAAA,gBACxB,gBAAwB,WAAA,kBzDqCxB,yByDvCA,cAAwB,WAAA,eACxB,eAAwB,WAAA,gBACxB,gBAAwB,WAAA,kBzDqCxB,0ByDvCA,cAAwB,WAAA,eACxB,eAAwB,WAAA,gBACxB,gBAAwB,WAAA,kBAM5B,gBAAmB,eAAA,oBACnB,gBAAmB,eAAA,oBACnB,iBAAmB,eAAA,qBAInB,mBAAuB,YAAA,cACvB,qBAAuB,YAAA,kBACvB,oBAAuB,YAAA,cACvB,kBAAuB,YAAA,cACvB,oBAAuB,YAAA,iBACvB,aAAuB,WAAA,iBAIvB,YAAc,MAAA,eEvCZ,cACE,MAAA,kBpEUF,qBAAA,qBoELM,MAAA,kBANN,gBACE,MAAA,kBpEUF,uBAAA,uBoELM,MAAA,kBANN,cACE,MAAA,kBpEUF,qBAAA,qBoELM,MAAA,kBANN,WACE,MAAA,kBpEUF,kBAAA,kBoELM,MAAA,kBANN,cACE,MAAA,kBpEUF,qBAAA,qBoELM,MAAA,kBANN,aACE,MAAA,kBpEUF,oBAAA,oBoELM,MAAA,kBANN,YACE,MAAA,kBpEUF,mBAAA,mBoELM,MAAA,kBANN,WACE,MAAA,kBpEUF,kBAAA,kBoELM,MAAA,kBFuCR,WAAa,MAAA,kBACb,YAAc,MAAA,kBAEd,eAAiB,MAAA,yBACjB,eAAiB,MAAA,+BAIjB,WGvDE,KAAA,CAAA,CAAA,EAAA,EACA,MAAA,YACA,YAAA,KACA,iBAAA,YACA,OAAA,EHuDF,sBAAwB,gBAAA,eAExB,YACE,WAAA,qBACA,cAAA,qBAKF,YAAc,MAAA,kBIjEd,SACE,WAAA,kBAGF,WACE,WAAA,iBCAA,a3EOF,ECwtTE,QADA,S0ExtTI,YAAA,eAEA,WAAA,eAGF,YAEI,gBAAA,UASJ,mBACE,QAAA,KAAA,YAAA,I3E+LN,I2EhLM,YAAA,mB1EusTJ,W0ErsTE,IAEE,OAAA,IAAA,MAAA,QACA,kBAAA,MAQF,MACE,QAAA,mB1EisTJ,I0E9rTE,GAEE,kBAAA,M1EgsTJ,GACA,G0E9rTE,EAGE,QAAA,EACA,OAAA,EAGF,G1E4rTF,G0E1rTI,iBAAA,MAQF,MACE,KAAA,G3E5CN,K2E+CM,UAAA,gBhEvFJ,WgE0FI,UAAA,gB5C9EN,Q4CmFM,QAAA,KvC/FN,OuCkGM,OAAA,IAAA,MAAA,K5DnGN,O4DuGM,gBAAA,mBADF,U1EsrTF,U0EjrTM,iBAAA,e1EqrTN,mBcxvTF,mB4D0EQ,OAAA,IAAA,MAAA,kB5DWR,Y4DNM,MAAA,Q1EkrTJ,wBAFA,eetyTA,efuyTA,qB0E3qTM,aAAA,Q5DlBR,sB4DuBM,MAAA,QACA,aAAA","sourcesContent":["/*!\n * Bootstrap v4.3.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 The Bootstrap Authors\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n@import \"functions\";\n@import \"variables\";\n@import \"mixins\";\n@import \"root\";\n@import \"reboot\";\n@import \"type\";\n@import \"images\";\n@import \"code\";\n@import \"grid\";\n@import \"tables\";\n@import \"forms\";\n@import \"buttons\";\n@import \"transitions\";\n@import \"dropdown\";\n@import \"button-group\";\n@import \"input-group\";\n@import \"custom-forms\";\n@import \"nav\";\n@import \"navbar\";\n@import \"card\";\n@import \"breadcrumb\";\n@import \"pagination\";\n@import \"badge\";\n@import \"jumbotron\";\n@import \"alert\";\n@import \"progress\";\n@import \"media\";\n@import \"list-group\";\n@import \"close\";\n@import \"toasts\";\n@import \"modal\";\n@import \"tooltip\";\n@import \"popover\";\n@import \"carousel\";\n@import \"spinners\";\n@import \"utilities\";\n@import \"print\";\n",":root {\n // Custom variable values only support SassScript inside `#{}`.\n @each $color, $value in $colors {\n --#{$color}: #{$value};\n }\n\n @each $color, $value in $theme-colors {\n --#{$color}: #{$value};\n }\n\n @each $bp, $value in $grid-breakpoints {\n --breakpoint-#{$bp}: #{$value};\n }\n\n // Use `inspect` for lists so that quoted items keep the quotes.\n // See https://github.com/sass/sass/issues/2383#issuecomment-336349172\n --font-family-sans-serif: #{inspect($font-family-sans-serif)};\n --font-family-monospace: #{inspect($font-family-monospace)};\n}\n","// stylelint-disable at-rule-no-vendor-prefix, declaration-no-important, selector-no-qualifying-type, property-no-vendor-prefix\n\n// Reboot\n//\n// Normalization of HTML elements, manually forked from Normalize.css to remove\n// styles targeting irrelevant browsers while applying new styles.\n//\n// Normalize is licensed MIT. https://github.com/necolas/normalize.css\n\n\n// Document\n//\n// 1. Change from `box-sizing: content-box` so that `width` is not affected by `padding` or `border`.\n// 2. Change the default font family in all browsers.\n// 3. Correct the line height in all browsers.\n// 4. Prevent adjustments of font size after orientation changes in IE on Windows Phone and in iOS.\n// 5. Change the default tap highlight to be completely transparent in iOS.\n\n*,\n*::before,\n*::after {\n box-sizing: border-box; // 1\n}\n\nhtml {\n font-family: sans-serif; // 2\n line-height: 1.15; // 3\n -webkit-text-size-adjust: 100%; // 4\n -webkit-tap-highlight-color: rgba($black, 0); // 5\n}\n\n// Shim for \"new\" HTML5 structural elements to display correctly (IE10, older browsers)\n// TODO: remove in v5\n// stylelint-disable-next-line selector-list-comma-newline-after\narticle, aside, figcaption, figure, footer, header, hgroup, main, nav, section {\n display: block;\n}\n\n// Body\n//\n// 1. Remove the margin in all browsers.\n// 2. As a best practice, apply a default `background-color`.\n// 3. Set an explicit initial text-align value so that we can later use\n// the `inherit` value on things like `` elements.\n\nbody {\n margin: 0; // 1\n font-family: $font-family-base;\n @include font-size($font-size-base);\n font-weight: $font-weight-base;\n line-height: $line-height-base;\n color: $body-color;\n text-align: left; // 3\n background-color: $body-bg; // 2\n}\n\n// Suppress the focus outline on elements that cannot be accessed via keyboard.\n// This prevents an unwanted focus outline from appearing around elements that\n// might still respond to pointer events.\n//\n// Credit: https://github.com/suitcss/base\n[tabindex=\"-1\"]:focus {\n outline: 0 !important;\n}\n\n\n// Content grouping\n//\n// 1. Add the correct box sizing in Firefox.\n// 2. Show the overflow in Edge and IE.\n\nhr {\n box-sizing: content-box; // 1\n height: 0; // 1\n overflow: visible; // 2\n}\n\n\n//\n// Typography\n//\n\n// Remove top margins from headings\n//\n// By default, `

    `-`

    ` all receive top and bottom margins. We nuke the top\n// margin for easier control within type scales as it avoids margin collapsing.\n// stylelint-disable-next-line selector-list-comma-newline-after\nh1, h2, h3, h4, h5, h6 {\n margin-top: 0;\n margin-bottom: $headings-margin-bottom;\n}\n\n// Reset margins on paragraphs\n//\n// Similarly, the top margin on `

    `s get reset. However, we also reset the\n// bottom margin to use `rem` units instead of `em`.\np {\n margin-top: 0;\n margin-bottom: $paragraph-margin-bottom;\n}\n\n// Abbreviations\n//\n// 1. Duplicate behavior to the data-* attribute for our tooltip plugin\n// 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n// 3. Add explicit cursor to indicate changed behavior.\n// 4. Remove the bottom border in Firefox 39-.\n// 5. Prevent the text-decoration to be skipped.\n\nabbr[title],\nabbr[data-original-title] { // 1\n text-decoration: underline; // 2\n text-decoration: underline dotted; // 2\n cursor: help; // 3\n border-bottom: 0; // 4\n text-decoration-skip-ink: none; // 5\n}\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: $dt-font-weight;\n}\n\ndd {\n margin-bottom: .5rem;\n margin-left: 0; // Undo browser default\n}\n\nblockquote {\n margin: 0 0 1rem;\n}\n\nb,\nstrong {\n font-weight: $font-weight-bolder; // Add the correct font weight in Chrome, Edge, and Safari\n}\n\nsmall {\n @include font-size(80%); // Add the correct font size in all browsers\n}\n\n//\n// Prevent `sub` and `sup` elements from affecting the line height in\n// all browsers.\n//\n\nsub,\nsup {\n position: relative;\n @include font-size(75%);\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub { bottom: -.25em; }\nsup { top: -.5em; }\n\n\n//\n// Links\n//\n\na {\n color: $link-color;\n text-decoration: $link-decoration;\n background-color: transparent; // Remove the gray background on active links in IE 10.\n\n @include hover {\n color: $link-hover-color;\n text-decoration: $link-hover-decoration;\n }\n}\n\n// And undo these styles for placeholder links/named anchors (without href)\n// which have not been made explicitly keyboard-focusable (without tabindex).\n// It would be more straightforward to just use a[href] in previous block, but that\n// causes specificity issues in many other styles that are too complex to fix.\n// See https://github.com/twbs/bootstrap/issues/19402\n\na:not([href]):not([tabindex]) {\n color: inherit;\n text-decoration: none;\n\n @include hover-focus {\n color: inherit;\n text-decoration: none;\n }\n\n &:focus {\n outline: 0;\n }\n}\n\n\n//\n// Code\n//\n\npre,\ncode,\nkbd,\nsamp {\n font-family: $font-family-monospace;\n @include font-size(1em); // Correct the odd `em` font sizing in all browsers.\n}\n\npre {\n // Remove browser default top margin\n margin-top: 0;\n // Reset browser default of `1em` to use `rem`s\n margin-bottom: 1rem;\n // Don't allow content to break outside\n overflow: auto;\n}\n\n\n//\n// Figures\n//\n\nfigure {\n // Apply a consistent margin strategy (matches our type styles).\n margin: 0 0 1rem;\n}\n\n\n//\n// Images and content\n//\n\nimg {\n vertical-align: middle;\n border-style: none; // Remove the border on images inside links in IE 10-.\n}\n\nsvg {\n // Workaround for the SVG overflow bug in IE10/11 is still required.\n // See https://github.com/twbs/bootstrap/issues/26878\n overflow: hidden;\n vertical-align: middle;\n}\n\n\n//\n// Tables\n//\n\ntable {\n border-collapse: collapse; // Prevent double borders\n}\n\ncaption {\n padding-top: $table-cell-padding;\n padding-bottom: $table-cell-padding;\n color: $table-caption-color;\n text-align: left;\n caption-side: bottom;\n}\n\nth {\n // Matches default `` alignment by inheriting from the ``, or the\n // closest parent with a set `text-align`.\n text-align: inherit;\n}\n\n\n//\n// Forms\n//\n\nlabel {\n // Allow labels to use `margin` for spacing.\n display: inline-block;\n margin-bottom: $label-margin-bottom;\n}\n\n// Remove the default `border-radius` that macOS Chrome adds.\n//\n// Details at https://github.com/twbs/bootstrap/issues/24093\nbutton {\n // stylelint-disable-next-line property-blacklist\n border-radius: 0;\n}\n\n// Work around a Firefox/IE bug where the transparent `button` background\n// results in a loss of the default `button` focus styles.\n//\n// Credit: https://github.com/suitcss/base/\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0; // Remove the margin in Firefox and Safari\n font-family: inherit;\n @include font-size(inherit);\n line-height: inherit;\n}\n\nbutton,\ninput {\n overflow: visible; // Show the overflow in Edge\n}\n\nbutton,\nselect {\n text-transform: none; // Remove the inheritance of text transform in Firefox\n}\n\n// Remove the inheritance of word-wrap in Safari.\n//\n// Details at https://github.com/twbs/bootstrap/issues/24990\nselect {\n word-wrap: normal;\n}\n\n\n// 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`\n// controls in Android 4.\n// 2. Correct the inability to style clickable types in iOS and Safari.\nbutton,\n[type=\"button\"], // 1\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button; // 2\n}\n\n// Opinionated: add \"hand\" cursor to non-disabled button elements.\n@if $enable-pointer-cursor-for-buttons {\n button,\n [type=\"button\"],\n [type=\"reset\"],\n [type=\"submit\"] {\n &:not(:disabled) {\n cursor: pointer;\n }\n }\n}\n\n// Remove inner border and padding from Firefox, but don't restore the outline like Normalize.\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n box-sizing: border-box; // 1. Add the correct box sizing in IE 10-\n padding: 0; // 2. Remove the padding in IE 10-\n}\n\n\ninput[type=\"date\"],\ninput[type=\"time\"],\ninput[type=\"datetime-local\"],\ninput[type=\"month\"] {\n // Remove the default appearance of temporal inputs to avoid a Mobile Safari\n // bug where setting a custom line-height prevents text from being vertically\n // centered within the input.\n // See https://bugs.webkit.org/show_bug.cgi?id=139848\n // and https://github.com/twbs/bootstrap/issues/11266\n -webkit-appearance: listbox;\n}\n\ntextarea {\n overflow: auto; // Remove the default vertical scrollbar in IE.\n // Textareas should really only resize vertically so they don't break their (horizontal) containers.\n resize: vertical;\n}\n\nfieldset {\n // Browsers set a default `min-width: min-content;` on fieldsets,\n // unlike e.g. `

    `s, which have `min-width: 0;` by default.\n // So we reset that to ensure fieldsets behave more like a standard block element.\n // See https://github.com/twbs/bootstrap/issues/12359\n // and https://html.spec.whatwg.org/multipage/#the-fieldset-and-legend-elements\n min-width: 0;\n // Reset the default outline behavior of fieldsets so they don't affect page layout.\n padding: 0;\n margin: 0;\n border: 0;\n}\n\n// 1. Correct the text wrapping in Edge and IE.\n// 2. Correct the color inheritance from `fieldset` elements in IE.\nlegend {\n display: block;\n width: 100%;\n max-width: 100%; // 1\n padding: 0;\n margin-bottom: .5rem;\n @include font-size(1.5rem);\n line-height: inherit;\n color: inherit; // 2\n white-space: normal; // 1\n}\n\nprogress {\n vertical-align: baseline; // Add the correct vertical alignment in Chrome, Firefox, and Opera.\n}\n\n// Correct the cursor style of increment and decrement buttons in Chrome.\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n // This overrides the extra rounded corners on search inputs in iOS so that our\n // `.form-control` class can properly style them. Note that this cannot simply\n // be added to `.form-control` as it's not specific enough. For details, see\n // https://github.com/twbs/bootstrap/issues/11586.\n outline-offset: -2px; // 2. Correct the outline style in Safari.\n -webkit-appearance: none;\n}\n\n//\n// Remove the inner padding in Chrome and Safari on macOS.\n//\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n//\n// 1. Correct the inability to style clickable types in iOS and Safari.\n// 2. Change font properties to `inherit` in Safari.\n//\n\n::-webkit-file-upload-button {\n font: inherit; // 2\n -webkit-appearance: button; // 1\n}\n\n//\n// Correct element displays\n//\n\noutput {\n display: inline-block;\n}\n\nsummary {\n display: list-item; // Add the correct display in all browsers\n cursor: pointer;\n}\n\ntemplate {\n display: none; // Add the correct display in IE\n}\n\n// Always hide an element with the `hidden` HTML attribute (from PureCSS).\n// Needed for proper display in IE 10-.\n[hidden] {\n display: none !important;\n}\n","/*!\n * Bootstrap v4.3.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 The Bootstrap Authors\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n:root {\n --blue: #007bff;\n --indigo: #6610f2;\n --purple: #6f42c1;\n --pink: #e83e8c;\n --red: #dc3545;\n --orange: #fd7e14;\n --yellow: #ffc107;\n --green: #28a745;\n --teal: #20c997;\n --cyan: #17a2b8;\n --white: #fff;\n --gray: #6c757d;\n --gray-dark: #343a40;\n --primary: #007bff;\n --secondary: #6c757d;\n --success: #28a745;\n --info: #17a2b8;\n --warning: #ffc107;\n --danger: #dc3545;\n --light: #f8f9fa;\n --dark: #343a40;\n --breakpoint-xs: 0;\n --breakpoint-sm: 576px;\n --breakpoint-md: 768px;\n --breakpoint-lg: 992px;\n --breakpoint-xl: 1200px;\n --font-family-sans-serif: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\nhtml {\n font-family: sans-serif;\n line-height: 1.15;\n -webkit-text-size-adjust: 100%;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\narticle, aside, figcaption, figure, footer, header, hgroup, main, nav, section {\n display: block;\n}\n\nbody {\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #212529;\n text-align: left;\n background-color: #fff;\n}\n\n[tabindex=\"-1\"]:focus {\n outline: 0 !important;\n}\n\nhr {\n box-sizing: content-box;\n height: 0;\n overflow: visible;\n}\n\nh1, h2, h3, h4, h5, h6 {\n margin-top: 0;\n margin-bottom: 0.5rem;\n}\n\np {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nabbr[title],\nabbr[data-original-title] {\n text-decoration: underline;\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n cursor: help;\n border-bottom: 0;\n -webkit-text-decoration-skip-ink: none;\n text-decoration-skip-ink: none;\n}\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: 700;\n}\n\ndd {\n margin-bottom: .5rem;\n margin-left: 0;\n}\n\nblockquote {\n margin: 0 0 1rem;\n}\n\nb,\nstrong {\n font-weight: bolder;\n}\n\nsmall {\n font-size: 80%;\n}\n\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -.25em;\n}\n\nsup {\n top: -.5em;\n}\n\na {\n color: #007bff;\n text-decoration: none;\n background-color: transparent;\n}\n\na:hover {\n color: #0056b3;\n text-decoration: underline;\n}\n\na:not([href]):not([tabindex]) {\n color: inherit;\n text-decoration: none;\n}\n\na:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {\n color: inherit;\n text-decoration: none;\n}\n\na:not([href]):not([tabindex]):focus {\n outline: 0;\n}\n\npre,\ncode,\nkbd,\nsamp {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n font-size: 1em;\n}\n\npre {\n margin-top: 0;\n margin-bottom: 1rem;\n overflow: auto;\n}\n\nfigure {\n margin: 0 0 1rem;\n}\n\nimg {\n vertical-align: middle;\n border-style: none;\n}\n\nsvg {\n overflow: hidden;\n vertical-align: middle;\n}\n\ntable {\n border-collapse: collapse;\n}\n\ncaption {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n color: #6c757d;\n text-align: left;\n caption-side: bottom;\n}\n\nth {\n text-align: inherit;\n}\n\nlabel {\n display: inline-block;\n margin-bottom: 0.5rem;\n}\n\nbutton {\n border-radius: 0;\n}\n\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\nbutton,\ninput {\n overflow: visible;\n}\n\nbutton,\nselect {\n text-transform: none;\n}\n\nselect {\n word-wrap: normal;\n}\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\nbutton:not(:disabled),\n[type=\"button\"]:not(:disabled),\n[type=\"reset\"]:not(:disabled),\n[type=\"submit\"]:not(:disabled) {\n cursor: pointer;\n}\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n box-sizing: border-box;\n padding: 0;\n}\n\ninput[type=\"date\"],\ninput[type=\"time\"],\ninput[type=\"datetime-local\"],\ninput[type=\"month\"] {\n -webkit-appearance: listbox;\n}\n\ntextarea {\n overflow: auto;\n resize: vertical;\n}\n\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n max-width: 100%;\n padding: 0;\n margin-bottom: .5rem;\n font-size: 1.5rem;\n line-height: inherit;\n color: inherit;\n white-space: normal;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n outline-offset: -2px;\n -webkit-appearance: none;\n}\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-file-upload-button {\n font: inherit;\n -webkit-appearance: button;\n}\n\noutput {\n display: inline-block;\n}\n\nsummary {\n display: list-item;\n cursor: pointer;\n}\n\ntemplate {\n display: none;\n}\n\n[hidden] {\n display: none !important;\n}\n\nh1, h2, h3, h4, h5, h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n margin-bottom: 0.5rem;\n font-weight: 500;\n line-height: 1.2;\n}\n\nh1, .h1 {\n font-size: 2.5rem;\n}\n\nh2, .h2 {\n font-size: 2rem;\n}\n\nh3, .h3 {\n font-size: 1.75rem;\n}\n\nh4, .h4 {\n font-size: 1.5rem;\n}\n\nh5, .h5 {\n font-size: 1.25rem;\n}\n\nh6, .h6 {\n font-size: 1rem;\n}\n\n.lead {\n font-size: 1.25rem;\n font-weight: 300;\n}\n\n.display-1 {\n font-size: 6rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-2 {\n font-size: 5.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-3 {\n font-size: 4.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-4 {\n font-size: 3.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\nhr {\n margin-top: 1rem;\n margin-bottom: 1rem;\n border: 0;\n border-top: 1px solid rgba(0, 0, 0, 0.1);\n}\n\nsmall,\n.small {\n font-size: 80%;\n font-weight: 400;\n}\n\nmark,\n.mark {\n padding: 0.2em;\n background-color: #fcf8e3;\n}\n\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline-item {\n display: inline-block;\n}\n\n.list-inline-item:not(:last-child) {\n margin-right: 0.5rem;\n}\n\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\n\n.blockquote {\n margin-bottom: 1rem;\n font-size: 1.25rem;\n}\n\n.blockquote-footer {\n display: block;\n font-size: 80%;\n color: #6c757d;\n}\n\n.blockquote-footer::before {\n content: \"\\2014\\00A0\";\n}\n\n.img-fluid {\n max-width: 100%;\n height: auto;\n}\n\n.img-thumbnail {\n padding: 0.25rem;\n background-color: #fff;\n border: 1px solid #dee2e6;\n border-radius: 0.25rem;\n max-width: 100%;\n height: auto;\n}\n\n.figure {\n display: inline-block;\n}\n\n.figure-img {\n margin-bottom: 0.5rem;\n line-height: 1;\n}\n\n.figure-caption {\n font-size: 90%;\n color: #6c757d;\n}\n\ncode {\n font-size: 87.5%;\n color: #e83e8c;\n word-break: break-word;\n}\n\na > code {\n color: inherit;\n}\n\nkbd {\n padding: 0.2rem 0.4rem;\n font-size: 87.5%;\n color: #fff;\n background-color: #212529;\n border-radius: 0.2rem;\n}\n\nkbd kbd {\n padding: 0;\n font-size: 100%;\n font-weight: 700;\n}\n\npre {\n display: block;\n font-size: 87.5%;\n color: #212529;\n}\n\npre code {\n font-size: inherit;\n color: inherit;\n word-break: normal;\n}\n\n.pre-scrollable {\n max-height: 340px;\n overflow-y: scroll;\n}\n\n.container {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n@media (min-width: 576px) {\n .container {\n max-width: 540px;\n }\n}\n\n@media (min-width: 768px) {\n .container {\n max-width: 720px;\n }\n}\n\n@media (min-width: 992px) {\n .container {\n max-width: 960px;\n }\n}\n\n@media (min-width: 1200px) {\n .container {\n max-width: 1140px;\n }\n}\n\n.container-fluid {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n.row {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n margin-right: -15px;\n margin-left: -15px;\n}\n\n.no-gutters {\n margin-right: 0;\n margin-left: 0;\n}\n\n.no-gutters > .col,\n.no-gutters > [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n}\n\n.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,\n.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,\n.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,\n.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,\n.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,\n.col-xl-auto {\n position: relative;\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n}\n\n.col {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n}\n\n.col-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n}\n\n.col-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n}\n\n.col-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n}\n\n.col-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n}\n\n.col-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n}\n\n.col-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n}\n\n.col-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n}\n\n.col-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n}\n\n.col-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n}\n\n.col-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n}\n\n.col-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n}\n\n.col-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n}\n\n.col-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n}\n\n.order-first {\n -ms-flex-order: -1;\n order: -1;\n}\n\n.order-last {\n -ms-flex-order: 13;\n order: 13;\n}\n\n.order-0 {\n -ms-flex-order: 0;\n order: 0;\n}\n\n.order-1 {\n -ms-flex-order: 1;\n order: 1;\n}\n\n.order-2 {\n -ms-flex-order: 2;\n order: 2;\n}\n\n.order-3 {\n -ms-flex-order: 3;\n order: 3;\n}\n\n.order-4 {\n -ms-flex-order: 4;\n order: 4;\n}\n\n.order-5 {\n -ms-flex-order: 5;\n order: 5;\n}\n\n.order-6 {\n -ms-flex-order: 6;\n order: 6;\n}\n\n.order-7 {\n -ms-flex-order: 7;\n order: 7;\n}\n\n.order-8 {\n -ms-flex-order: 8;\n order: 8;\n}\n\n.order-9 {\n -ms-flex-order: 9;\n order: 9;\n}\n\n.order-10 {\n -ms-flex-order: 10;\n order: 10;\n}\n\n.order-11 {\n -ms-flex-order: 11;\n order: 11;\n}\n\n.order-12 {\n -ms-flex-order: 12;\n order: 12;\n}\n\n.offset-1 {\n margin-left: 8.333333%;\n}\n\n.offset-2 {\n margin-left: 16.666667%;\n}\n\n.offset-3 {\n margin-left: 25%;\n}\n\n.offset-4 {\n margin-left: 33.333333%;\n}\n\n.offset-5 {\n margin-left: 41.666667%;\n}\n\n.offset-6 {\n margin-left: 50%;\n}\n\n.offset-7 {\n margin-left: 58.333333%;\n}\n\n.offset-8 {\n margin-left: 66.666667%;\n}\n\n.offset-9 {\n margin-left: 75%;\n}\n\n.offset-10 {\n margin-left: 83.333333%;\n}\n\n.offset-11 {\n margin-left: 91.666667%;\n}\n\n@media (min-width: 576px) {\n .col-sm {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-sm-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-sm-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-sm-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-sm-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-sm-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-sm-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-sm-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-sm-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-sm-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-sm-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-sm-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-sm-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-sm-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-sm-first {\n -ms-flex-order: -1;\n order: -1;\n }\n .order-sm-last {\n -ms-flex-order: 13;\n order: 13;\n }\n .order-sm-0 {\n -ms-flex-order: 0;\n order: 0;\n }\n .order-sm-1 {\n -ms-flex-order: 1;\n order: 1;\n }\n .order-sm-2 {\n -ms-flex-order: 2;\n order: 2;\n }\n .order-sm-3 {\n -ms-flex-order: 3;\n order: 3;\n }\n .order-sm-4 {\n -ms-flex-order: 4;\n order: 4;\n }\n .order-sm-5 {\n -ms-flex-order: 5;\n order: 5;\n }\n .order-sm-6 {\n -ms-flex-order: 6;\n order: 6;\n }\n .order-sm-7 {\n -ms-flex-order: 7;\n order: 7;\n }\n .order-sm-8 {\n -ms-flex-order: 8;\n order: 8;\n }\n .order-sm-9 {\n -ms-flex-order: 9;\n order: 9;\n }\n .order-sm-10 {\n -ms-flex-order: 10;\n order: 10;\n }\n .order-sm-11 {\n -ms-flex-order: 11;\n order: 11;\n }\n .order-sm-12 {\n -ms-flex-order: 12;\n order: 12;\n }\n .offset-sm-0 {\n margin-left: 0;\n }\n .offset-sm-1 {\n margin-left: 8.333333%;\n }\n .offset-sm-2 {\n margin-left: 16.666667%;\n }\n .offset-sm-3 {\n margin-left: 25%;\n }\n .offset-sm-4 {\n margin-left: 33.333333%;\n }\n .offset-sm-5 {\n margin-left: 41.666667%;\n }\n .offset-sm-6 {\n margin-left: 50%;\n }\n .offset-sm-7 {\n margin-left: 58.333333%;\n }\n .offset-sm-8 {\n margin-left: 66.666667%;\n }\n .offset-sm-9 {\n margin-left: 75%;\n }\n .offset-sm-10 {\n margin-left: 83.333333%;\n }\n .offset-sm-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 768px) {\n .col-md {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-md-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-md-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-md-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-md-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-md-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-md-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-md-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-md-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-md-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-md-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-md-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-md-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-md-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-md-first {\n -ms-flex-order: -1;\n order: -1;\n }\n .order-md-last {\n -ms-flex-order: 13;\n order: 13;\n }\n .order-md-0 {\n -ms-flex-order: 0;\n order: 0;\n }\n .order-md-1 {\n -ms-flex-order: 1;\n order: 1;\n }\n .order-md-2 {\n -ms-flex-order: 2;\n order: 2;\n }\n .order-md-3 {\n -ms-flex-order: 3;\n order: 3;\n }\n .order-md-4 {\n -ms-flex-order: 4;\n order: 4;\n }\n .order-md-5 {\n -ms-flex-order: 5;\n order: 5;\n }\n .order-md-6 {\n -ms-flex-order: 6;\n order: 6;\n }\n .order-md-7 {\n -ms-flex-order: 7;\n order: 7;\n }\n .order-md-8 {\n -ms-flex-order: 8;\n order: 8;\n }\n .order-md-9 {\n -ms-flex-order: 9;\n order: 9;\n }\n .order-md-10 {\n -ms-flex-order: 10;\n order: 10;\n }\n .order-md-11 {\n -ms-flex-order: 11;\n order: 11;\n }\n .order-md-12 {\n -ms-flex-order: 12;\n order: 12;\n }\n .offset-md-0 {\n margin-left: 0;\n }\n .offset-md-1 {\n margin-left: 8.333333%;\n }\n .offset-md-2 {\n margin-left: 16.666667%;\n }\n .offset-md-3 {\n margin-left: 25%;\n }\n .offset-md-4 {\n margin-left: 33.333333%;\n }\n .offset-md-5 {\n margin-left: 41.666667%;\n }\n .offset-md-6 {\n margin-left: 50%;\n }\n .offset-md-7 {\n margin-left: 58.333333%;\n }\n .offset-md-8 {\n margin-left: 66.666667%;\n }\n .offset-md-9 {\n margin-left: 75%;\n }\n .offset-md-10 {\n margin-left: 83.333333%;\n }\n .offset-md-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 992px) {\n .col-lg {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-lg-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-lg-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-lg-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-lg-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-lg-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-lg-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-lg-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-lg-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-lg-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-lg-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-lg-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-lg-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-lg-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-lg-first {\n -ms-flex-order: -1;\n order: -1;\n }\n .order-lg-last {\n -ms-flex-order: 13;\n order: 13;\n }\n .order-lg-0 {\n -ms-flex-order: 0;\n order: 0;\n }\n .order-lg-1 {\n -ms-flex-order: 1;\n order: 1;\n }\n .order-lg-2 {\n -ms-flex-order: 2;\n order: 2;\n }\n .order-lg-3 {\n -ms-flex-order: 3;\n order: 3;\n }\n .order-lg-4 {\n -ms-flex-order: 4;\n order: 4;\n }\n .order-lg-5 {\n -ms-flex-order: 5;\n order: 5;\n }\n .order-lg-6 {\n -ms-flex-order: 6;\n order: 6;\n }\n .order-lg-7 {\n -ms-flex-order: 7;\n order: 7;\n }\n .order-lg-8 {\n -ms-flex-order: 8;\n order: 8;\n }\n .order-lg-9 {\n -ms-flex-order: 9;\n order: 9;\n }\n .order-lg-10 {\n -ms-flex-order: 10;\n order: 10;\n }\n .order-lg-11 {\n -ms-flex-order: 11;\n order: 11;\n }\n .order-lg-12 {\n -ms-flex-order: 12;\n order: 12;\n }\n .offset-lg-0 {\n margin-left: 0;\n }\n .offset-lg-1 {\n margin-left: 8.333333%;\n }\n .offset-lg-2 {\n margin-left: 16.666667%;\n }\n .offset-lg-3 {\n margin-left: 25%;\n }\n .offset-lg-4 {\n margin-left: 33.333333%;\n }\n .offset-lg-5 {\n margin-left: 41.666667%;\n }\n .offset-lg-6 {\n margin-left: 50%;\n }\n .offset-lg-7 {\n margin-left: 58.333333%;\n }\n .offset-lg-8 {\n margin-left: 66.666667%;\n }\n .offset-lg-9 {\n margin-left: 75%;\n }\n .offset-lg-10 {\n margin-left: 83.333333%;\n }\n .offset-lg-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 1200px) {\n .col-xl {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-xl-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-xl-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-xl-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-xl-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-xl-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-xl-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-xl-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-xl-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-xl-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-xl-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-xl-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-xl-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-xl-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-xl-first {\n -ms-flex-order: -1;\n order: -1;\n }\n .order-xl-last {\n -ms-flex-order: 13;\n order: 13;\n }\n .order-xl-0 {\n -ms-flex-order: 0;\n order: 0;\n }\n .order-xl-1 {\n -ms-flex-order: 1;\n order: 1;\n }\n .order-xl-2 {\n -ms-flex-order: 2;\n order: 2;\n }\n .order-xl-3 {\n -ms-flex-order: 3;\n order: 3;\n }\n .order-xl-4 {\n -ms-flex-order: 4;\n order: 4;\n }\n .order-xl-5 {\n -ms-flex-order: 5;\n order: 5;\n }\n .order-xl-6 {\n -ms-flex-order: 6;\n order: 6;\n }\n .order-xl-7 {\n -ms-flex-order: 7;\n order: 7;\n }\n .order-xl-8 {\n -ms-flex-order: 8;\n order: 8;\n }\n .order-xl-9 {\n -ms-flex-order: 9;\n order: 9;\n }\n .order-xl-10 {\n -ms-flex-order: 10;\n order: 10;\n }\n .order-xl-11 {\n -ms-flex-order: 11;\n order: 11;\n }\n .order-xl-12 {\n -ms-flex-order: 12;\n order: 12;\n }\n .offset-xl-0 {\n margin-left: 0;\n }\n .offset-xl-1 {\n margin-left: 8.333333%;\n }\n .offset-xl-2 {\n margin-left: 16.666667%;\n }\n .offset-xl-3 {\n margin-left: 25%;\n }\n .offset-xl-4 {\n margin-left: 33.333333%;\n }\n .offset-xl-5 {\n margin-left: 41.666667%;\n }\n .offset-xl-6 {\n margin-left: 50%;\n }\n .offset-xl-7 {\n margin-left: 58.333333%;\n }\n .offset-xl-8 {\n margin-left: 66.666667%;\n }\n .offset-xl-9 {\n margin-left: 75%;\n }\n .offset-xl-10 {\n margin-left: 83.333333%;\n }\n .offset-xl-11 {\n margin-left: 91.666667%;\n }\n}\n\n.table {\n width: 100%;\n margin-bottom: 1rem;\n color: #212529;\n}\n\n.table th,\n.table td {\n padding: 0.75rem;\n vertical-align: top;\n border-top: 1px solid #dee2e6;\n}\n\n.table thead th {\n vertical-align: bottom;\n border-bottom: 2px solid #dee2e6;\n}\n\n.table tbody + tbody {\n border-top: 2px solid #dee2e6;\n}\n\n.table-sm th,\n.table-sm td {\n padding: 0.3rem;\n}\n\n.table-bordered {\n border: 1px solid #dee2e6;\n}\n\n.table-bordered th,\n.table-bordered td {\n border: 1px solid #dee2e6;\n}\n\n.table-bordered thead th,\n.table-bordered thead td {\n border-bottom-width: 2px;\n}\n\n.table-borderless th,\n.table-borderless td,\n.table-borderless thead th,\n.table-borderless tbody + tbody {\n border: 0;\n}\n\n.table-striped tbody tr:nth-of-type(odd) {\n background-color: rgba(0, 0, 0, 0.05);\n}\n\n.table-hover tbody tr:hover {\n color: #212529;\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table-primary,\n.table-primary > th,\n.table-primary > td {\n background-color: #b8daff;\n}\n\n.table-primary th,\n.table-primary td,\n.table-primary thead th,\n.table-primary tbody + tbody {\n border-color: #7abaff;\n}\n\n.table-hover .table-primary:hover {\n background-color: #9fcdff;\n}\n\n.table-hover .table-primary:hover > td,\n.table-hover .table-primary:hover > th {\n background-color: #9fcdff;\n}\n\n.table-secondary,\n.table-secondary > th,\n.table-secondary > td {\n background-color: #d6d8db;\n}\n\n.table-secondary th,\n.table-secondary td,\n.table-secondary thead th,\n.table-secondary tbody + tbody {\n border-color: #b3b7bb;\n}\n\n.table-hover .table-secondary:hover {\n background-color: #c8cbcf;\n}\n\n.table-hover .table-secondary:hover > td,\n.table-hover .table-secondary:hover > th {\n background-color: #c8cbcf;\n}\n\n.table-success,\n.table-success > th,\n.table-success > td {\n background-color: #c3e6cb;\n}\n\n.table-success th,\n.table-success td,\n.table-success thead th,\n.table-success tbody + tbody {\n border-color: #8fd19e;\n}\n\n.table-hover .table-success:hover {\n background-color: #b1dfbb;\n}\n\n.table-hover .table-success:hover > td,\n.table-hover .table-success:hover > th {\n background-color: #b1dfbb;\n}\n\n.table-info,\n.table-info > th,\n.table-info > td {\n background-color: #bee5eb;\n}\n\n.table-info th,\n.table-info td,\n.table-info thead th,\n.table-info tbody + tbody {\n border-color: #86cfda;\n}\n\n.table-hover .table-info:hover {\n background-color: #abdde5;\n}\n\n.table-hover .table-info:hover > td,\n.table-hover .table-info:hover > th {\n background-color: #abdde5;\n}\n\n.table-warning,\n.table-warning > th,\n.table-warning > td {\n background-color: #ffeeba;\n}\n\n.table-warning th,\n.table-warning td,\n.table-warning thead th,\n.table-warning tbody + tbody {\n border-color: #ffdf7e;\n}\n\n.table-hover .table-warning:hover {\n background-color: #ffe8a1;\n}\n\n.table-hover .table-warning:hover > td,\n.table-hover .table-warning:hover > th {\n background-color: #ffe8a1;\n}\n\n.table-danger,\n.table-danger > th,\n.table-danger > td {\n background-color: #f5c6cb;\n}\n\n.table-danger th,\n.table-danger td,\n.table-danger thead th,\n.table-danger tbody + tbody {\n border-color: #ed969e;\n}\n\n.table-hover .table-danger:hover {\n background-color: #f1b0b7;\n}\n\n.table-hover .table-danger:hover > td,\n.table-hover .table-danger:hover > th {\n background-color: #f1b0b7;\n}\n\n.table-light,\n.table-light > th,\n.table-light > td {\n background-color: #fdfdfe;\n}\n\n.table-light th,\n.table-light td,\n.table-light thead th,\n.table-light tbody + tbody {\n border-color: #fbfcfc;\n}\n\n.table-hover .table-light:hover {\n background-color: #ececf6;\n}\n\n.table-hover .table-light:hover > td,\n.table-hover .table-light:hover > th {\n background-color: #ececf6;\n}\n\n.table-dark,\n.table-dark > th,\n.table-dark > td {\n background-color: #c6c8ca;\n}\n\n.table-dark th,\n.table-dark td,\n.table-dark thead th,\n.table-dark tbody + tbody {\n border-color: #95999c;\n}\n\n.table-hover .table-dark:hover {\n background-color: #b9bbbe;\n}\n\n.table-hover .table-dark:hover > td,\n.table-hover .table-dark:hover > th {\n background-color: #b9bbbe;\n}\n\n.table-active,\n.table-active > th,\n.table-active > td {\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table-hover .table-active:hover {\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table-hover .table-active:hover > td,\n.table-hover .table-active:hover > th {\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table .thead-dark th {\n color: #fff;\n background-color: #343a40;\n border-color: #454d55;\n}\n\n.table .thead-light th {\n color: #495057;\n background-color: #e9ecef;\n border-color: #dee2e6;\n}\n\n.table-dark {\n color: #fff;\n background-color: #343a40;\n}\n\n.table-dark th,\n.table-dark td,\n.table-dark thead th {\n border-color: #454d55;\n}\n\n.table-dark.table-bordered {\n border: 0;\n}\n\n.table-dark.table-striped tbody tr:nth-of-type(odd) {\n background-color: rgba(255, 255, 255, 0.05);\n}\n\n.table-dark.table-hover tbody tr:hover {\n color: #fff;\n background-color: rgba(255, 255, 255, 0.075);\n}\n\n@media (max-width: 575.98px) {\n .table-responsive-sm {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n .table-responsive-sm > .table-bordered {\n border: 0;\n }\n}\n\n@media (max-width: 767.98px) {\n .table-responsive-md {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n .table-responsive-md > .table-bordered {\n border: 0;\n }\n}\n\n@media (max-width: 991.98px) {\n .table-responsive-lg {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n .table-responsive-lg > .table-bordered {\n border: 0;\n }\n}\n\n@media (max-width: 1199.98px) {\n .table-responsive-xl {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n .table-responsive-xl > .table-bordered {\n border: 0;\n }\n}\n\n.table-responsive {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n.table-responsive > .table-bordered {\n border: 0;\n}\n\n.form-control {\n display: block;\n width: 100%;\n height: calc(1.5em + 0.75rem + 2px);\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .form-control {\n transition: none;\n }\n}\n\n.form-control::-ms-expand {\n background-color: transparent;\n border: 0;\n}\n\n.form-control:focus {\n color: #495057;\n background-color: #fff;\n border-color: #80bdff;\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.form-control::-webkit-input-placeholder {\n color: #6c757d;\n opacity: 1;\n}\n\n.form-control::-moz-placeholder {\n color: #6c757d;\n opacity: 1;\n}\n\n.form-control:-ms-input-placeholder {\n color: #6c757d;\n opacity: 1;\n}\n\n.form-control::-ms-input-placeholder {\n color: #6c757d;\n opacity: 1;\n}\n\n.form-control::placeholder {\n color: #6c757d;\n opacity: 1;\n}\n\n.form-control:disabled, .form-control[readonly] {\n background-color: #e9ecef;\n opacity: 1;\n}\n\nselect.form-control:focus::-ms-value {\n color: #495057;\n background-color: #fff;\n}\n\n.form-control-file,\n.form-control-range {\n display: block;\n width: 100%;\n}\n\n.col-form-label {\n padding-top: calc(0.375rem + 1px);\n padding-bottom: calc(0.375rem + 1px);\n margin-bottom: 0;\n font-size: inherit;\n line-height: 1.5;\n}\n\n.col-form-label-lg {\n padding-top: calc(0.5rem + 1px);\n padding-bottom: calc(0.5rem + 1px);\n font-size: 1.25rem;\n line-height: 1.5;\n}\n\n.col-form-label-sm {\n padding-top: calc(0.25rem + 1px);\n padding-bottom: calc(0.25rem + 1px);\n font-size: 0.875rem;\n line-height: 1.5;\n}\n\n.form-control-plaintext {\n display: block;\n width: 100%;\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n margin-bottom: 0;\n line-height: 1.5;\n color: #212529;\n background-color: transparent;\n border: solid transparent;\n border-width: 1px 0;\n}\n\n.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {\n padding-right: 0;\n padding-left: 0;\n}\n\n.form-control-sm {\n height: calc(1.5em + 0.5rem + 2px);\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n border-radius: 0.2rem;\n}\n\n.form-control-lg {\n height: calc(1.5em + 1rem + 2px);\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n line-height: 1.5;\n border-radius: 0.3rem;\n}\n\nselect.form-control[size], select.form-control[multiple] {\n height: auto;\n}\n\ntextarea.form-control {\n height: auto;\n}\n\n.form-group {\n margin-bottom: 1rem;\n}\n\n.form-text {\n display: block;\n margin-top: 0.25rem;\n}\n\n.form-row {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n margin-right: -5px;\n margin-left: -5px;\n}\n\n.form-row > .col,\n.form-row > [class*=\"col-\"] {\n padding-right: 5px;\n padding-left: 5px;\n}\n\n.form-check {\n position: relative;\n display: block;\n padding-left: 1.25rem;\n}\n\n.form-check-input {\n position: absolute;\n margin-top: 0.3rem;\n margin-left: -1.25rem;\n}\n\n.form-check-input:disabled ~ .form-check-label {\n color: #6c757d;\n}\n\n.form-check-label {\n margin-bottom: 0;\n}\n\n.form-check-inline {\n display: -ms-inline-flexbox;\n display: inline-flex;\n -ms-flex-align: center;\n align-items: center;\n padding-left: 0;\n margin-right: 0.75rem;\n}\n\n.form-check-inline .form-check-input {\n position: static;\n margin-top: 0;\n margin-right: 0.3125rem;\n margin-left: 0;\n}\n\n.valid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 80%;\n color: #28a745;\n}\n\n.valid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: .1rem;\n font-size: 0.875rem;\n line-height: 1.5;\n color: #fff;\n background-color: rgba(40, 167, 69, 0.9);\n border-radius: 0.25rem;\n}\n\n.was-validated .form-control:valid, .form-control.is-valid {\n border-color: #28a745;\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%208%208'%3e%3cpath%20fill='%2328a745'%20d='M2.3%206.73L.6%204.53c-.4-1.04.46-1.4%201.1-.8l1.1%201.4%203.4-3.8c.6-.63%201.6-.27%201.2.7l-4%204.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e/");\n background-repeat: no-repeat;\n background-position: center right calc(0.375em + 0.1875rem);\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n\n.was-validated .form-control:valid:focus, .form-control.is-valid:focus {\n border-color: #28a745;\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.was-validated .form-control:valid ~ .valid-feedback,\n.was-validated .form-control:valid ~ .valid-tooltip, .form-control.is-valid ~ .valid-feedback,\n.form-control.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated textarea.form-control:valid, textarea.form-control.is-valid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n\n.was-validated .custom-select:valid, .custom-select.is-valid {\n border-color: #28a745;\n padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);\n background: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%204%205'%3e%3cpath%20fill='%23343a40'%20d='M2%200L0%202h4zm0%205L0%203h4z'/%3e%3c/svg%3e/") no-repeat right 0.75rem center/8px 10px, url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%208%208'%3e%3cpath%20fill='%2328a745'%20d='M2.3%206.73L.6%204.53c-.4-1.04.46-1.4%201.1-.8l1.1%201.4%203.4-3.8c.6-.63%201.6-.27%201.2.7l-4%204.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e/") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n\n.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {\n border-color: #28a745;\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.was-validated .custom-select:valid ~ .valid-feedback,\n.was-validated .custom-select:valid ~ .valid-tooltip, .custom-select.is-valid ~ .valid-feedback,\n.custom-select.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .form-control-file:valid ~ .valid-feedback,\n.was-validated .form-control-file:valid ~ .valid-tooltip, .form-control-file.is-valid ~ .valid-feedback,\n.form-control-file.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {\n color: #28a745;\n}\n\n.was-validated .form-check-input:valid ~ .valid-feedback,\n.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,\n.form-check-input.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {\n color: #28a745;\n}\n\n.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {\n border-color: #28a745;\n}\n\n.was-validated .custom-control-input:valid ~ .valid-feedback,\n.was-validated .custom-control-input:valid ~ .valid-tooltip, .custom-control-input.is-valid ~ .valid-feedback,\n.custom-control-input.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {\n border-color: #34ce57;\n background-color: #34ce57;\n}\n\n.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {\n border-color: #28a745;\n}\n\n.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {\n border-color: #28a745;\n}\n\n.was-validated .custom-file-input:valid ~ .valid-feedback,\n.was-validated .custom-file-input:valid ~ .valid-tooltip, .custom-file-input.is-valid ~ .valid-feedback,\n.custom-file-input.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {\n border-color: #28a745;\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.invalid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 80%;\n color: #dc3545;\n}\n\n.invalid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: .1rem;\n font-size: 0.875rem;\n line-height: 1.5;\n color: #fff;\n background-color: rgba(220, 53, 69, 0.9);\n border-radius: 0.25rem;\n}\n\n.was-validated .form-control:invalid, .form-control.is-invalid {\n border-color: #dc3545;\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='%23dc3545'%20viewBox='-2%20-2%207%207'%3e%3cpath%20stroke='%23dc3545'%20d='M0%200l3%203m0-3L0%203'/%3e%3ccircle%20r='.5'/%3e%3ccircle%20cx='3'%20r='.5'/%3e%3ccircle%20cy='3'%20r='.5'/%3e%3ccircle%20cx='3'%20cy='3'%20r='.5'/%3e%3c/svg%3E/");\n background-repeat: no-repeat;\n background-position: center right calc(0.375em + 0.1875rem);\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n\n.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {\n border-color: #dc3545;\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.was-validated .form-control:invalid ~ .invalid-feedback,\n.was-validated .form-control:invalid ~ .invalid-tooltip, .form-control.is-invalid ~ .invalid-feedback,\n.form-control.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n\n.was-validated .custom-select:invalid, .custom-select.is-invalid {\n border-color: #dc3545;\n padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);\n background: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%204%205'%3e%3cpath%20fill='%23343a40'%20d='M2%200L0%202h4zm0%205L0%203h4z'/%3e%3c/svg%3e/") no-repeat right 0.75rem center/8px 10px, url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='%23dc3545'%20viewBox='-2%20-2%207%207'%3e%3cpath%20stroke='%23dc3545'%20d='M0%200l3%203m0-3L0%203'/%3e%3ccircle%20r='.5'/%3e%3ccircle%20cx='3'%20r='.5'/%3e%3ccircle%20cy='3'%20r='.5'/%3e%3ccircle%20cx='3'%20cy='3'%20r='.5'/%3e%3c/svg%3E/") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n\n.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {\n border-color: #dc3545;\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.was-validated .custom-select:invalid ~ .invalid-feedback,\n.was-validated .custom-select:invalid ~ .invalid-tooltip, .custom-select.is-invalid ~ .invalid-feedback,\n.custom-select.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .form-control-file:invalid ~ .invalid-feedback,\n.was-validated .form-control-file:invalid ~ .invalid-tooltip, .form-control-file.is-invalid ~ .invalid-feedback,\n.form-control-file.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {\n color: #dc3545;\n}\n\n.was-validated .form-check-input:invalid ~ .invalid-feedback,\n.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,\n.form-check-input.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {\n color: #dc3545;\n}\n\n.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {\n border-color: #dc3545;\n}\n\n.was-validated .custom-control-input:invalid ~ .invalid-feedback,\n.was-validated .custom-control-input:invalid ~ .invalid-tooltip, .custom-control-input.is-invalid ~ .invalid-feedback,\n.custom-control-input.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {\n border-color: #e4606d;\n background-color: #e4606d;\n}\n\n.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {\n border-color: #dc3545;\n}\n\n.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {\n border-color: #dc3545;\n}\n\n.was-validated .custom-file-input:invalid ~ .invalid-feedback,\n.was-validated .custom-file-input:invalid ~ .invalid-tooltip, .custom-file-input.is-invalid ~ .invalid-feedback,\n.custom-file-input.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {\n border-color: #dc3545;\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.form-inline {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-flow: row wrap;\n flex-flow: row wrap;\n -ms-flex-align: center;\n align-items: center;\n}\n\n.form-inline .form-check {\n width: 100%;\n}\n\n@media (min-width: 576px) {\n .form-inline label {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: center;\n justify-content: center;\n margin-bottom: 0;\n }\n .form-inline .form-group {\n display: -ms-flexbox;\n display: flex;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n -ms-flex-flow: row wrap;\n flex-flow: row wrap;\n -ms-flex-align: center;\n align-items: center;\n margin-bottom: 0;\n }\n .form-inline .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .form-inline .form-control-plaintext {\n display: inline-block;\n }\n .form-inline .input-group,\n .form-inline .custom-select {\n width: auto;\n }\n .form-inline .form-check {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: center;\n justify-content: center;\n width: auto;\n padding-left: 0;\n }\n .form-inline .form-check-input {\n position: relative;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n margin-top: 0;\n margin-right: 0.25rem;\n margin-left: 0;\n }\n .form-inline .custom-control {\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: center;\n justify-content: center;\n }\n .form-inline .custom-control-label {\n margin-bottom: 0;\n }\n}\n\n.btn {\n display: inline-block;\n font-weight: 400;\n color: #212529;\n text-align: center;\n vertical-align: middle;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n background-color: transparent;\n border: 1px solid transparent;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n line-height: 1.5;\n border-radius: 0.25rem;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .btn {\n transition: none;\n }\n}\n\n.btn:hover {\n color: #212529;\n text-decoration: none;\n}\n\n.btn:focus, .btn.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.btn.disabled, .btn:disabled {\n opacity: 0.65;\n}\n\na.btn.disabled,\nfieldset:disabled a.btn {\n pointer-events: none;\n}\n\n.btn-primary {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-primary:hover {\n color: #fff;\n background-color: #0069d9;\n border-color: #0062cc;\n}\n\n.btn-primary:focus, .btn-primary.focus {\n box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n}\n\n.btn-primary.disabled, .btn-primary:disabled {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,\n.show > .btn-primary.dropdown-toggle {\n color: #fff;\n background-color: #0062cc;\n border-color: #005cbf;\n}\n\n.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-primary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n}\n\n.btn-secondary {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-secondary:hover {\n color: #fff;\n background-color: #5a6268;\n border-color: #545b62;\n}\n\n.btn-secondary:focus, .btn-secondary.focus {\n box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n}\n\n.btn-secondary.disabled, .btn-secondary:disabled {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,\n.show > .btn-secondary.dropdown-toggle {\n color: #fff;\n background-color: #545b62;\n border-color: #4e555b;\n}\n\n.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-secondary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n}\n\n.btn-success {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-success:hover {\n color: #fff;\n background-color: #218838;\n border-color: #1e7e34;\n}\n\n.btn-success:focus, .btn-success.focus {\n box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n}\n\n.btn-success.disabled, .btn-success:disabled {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active,\n.show > .btn-success.dropdown-toggle {\n color: #fff;\n background-color: #1e7e34;\n border-color: #1c7430;\n}\n\n.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus,\n.show > .btn-success.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n}\n\n.btn-info {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-info:hover {\n color: #fff;\n background-color: #138496;\n border-color: #117a8b;\n}\n\n.btn-info:focus, .btn-info.focus {\n box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n}\n\n.btn-info.disabled, .btn-info:disabled {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active,\n.show > .btn-info.dropdown-toggle {\n color: #fff;\n background-color: #117a8b;\n border-color: #10707f;\n}\n\n.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus,\n.show > .btn-info.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n}\n\n.btn-warning {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-warning:hover {\n color: #212529;\n background-color: #e0a800;\n border-color: #d39e00;\n}\n\n.btn-warning:focus, .btn-warning.focus {\n box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n}\n\n.btn-warning.disabled, .btn-warning:disabled {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active,\n.show > .btn-warning.dropdown-toggle {\n color: #212529;\n background-color: #d39e00;\n border-color: #c69500;\n}\n\n.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus,\n.show > .btn-warning.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n}\n\n.btn-danger {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-danger:hover {\n color: #fff;\n background-color: #c82333;\n border-color: #bd2130;\n}\n\n.btn-danger:focus, .btn-danger.focus {\n box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n}\n\n.btn-danger.disabled, .btn-danger:disabled {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active,\n.show > .btn-danger.dropdown-toggle {\n color: #fff;\n background-color: #bd2130;\n border-color: #b21f2d;\n}\n\n.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus,\n.show > .btn-danger.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n}\n\n.btn-light {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-light:hover {\n color: #212529;\n background-color: #e2e6ea;\n border-color: #dae0e5;\n}\n\n.btn-light:focus, .btn-light.focus {\n box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);\n}\n\n.btn-light.disabled, .btn-light:disabled {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active,\n.show > .btn-light.dropdown-toggle {\n color: #212529;\n background-color: #dae0e5;\n border-color: #d3d9df;\n}\n\n.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus,\n.show > .btn-light.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);\n}\n\n.btn-dark {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-dark:hover {\n color: #fff;\n background-color: #23272b;\n border-color: #1d2124;\n}\n\n.btn-dark:focus, .btn-dark.focus {\n box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);\n}\n\n.btn-dark.disabled, .btn-dark:disabled {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,\n.show > .btn-dark.dropdown-toggle {\n color: #fff;\n background-color: #1d2124;\n border-color: #171a1d;\n}\n\n.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus,\n.show > .btn-dark.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);\n}\n\n.btn-outline-primary {\n color: #007bff;\n border-color: #007bff;\n}\n\n.btn-outline-primary:hover {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-outline-primary:focus, .btn-outline-primary.focus {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.btn-outline-primary.disabled, .btn-outline-primary:disabled {\n color: #007bff;\n background-color: transparent;\n}\n\n.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active,\n.show > .btn-outline-primary.dropdown-toggle {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-primary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.btn-outline-secondary {\n color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-outline-secondary:hover {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-outline-secondary:focus, .btn-outline-secondary.focus {\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {\n color: #6c757d;\n background-color: transparent;\n}\n\n.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active,\n.show > .btn-outline-secondary.dropdown-toggle {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-secondary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.btn-outline-success {\n color: #28a745;\n border-color: #28a745;\n}\n\n.btn-outline-success:hover {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-outline-success:focus, .btn-outline-success.focus {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.btn-outline-success.disabled, .btn-outline-success:disabled {\n color: #28a745;\n background-color: transparent;\n}\n\n.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active,\n.show > .btn-outline-success.dropdown-toggle {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-success.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.btn-outline-info {\n color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-outline-info:hover {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-outline-info:focus, .btn-outline-info.focus {\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.btn-outline-info.disabled, .btn-outline-info:disabled {\n color: #17a2b8;\n background-color: transparent;\n}\n\n.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active,\n.show > .btn-outline-info.dropdown-toggle {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-info.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.btn-outline-warning {\n color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-outline-warning:hover {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-outline-warning:focus, .btn-outline-warning.focus {\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.btn-outline-warning.disabled, .btn-outline-warning:disabled {\n color: #ffc107;\n background-color: transparent;\n}\n\n.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active,\n.show > .btn-outline-warning.dropdown-toggle {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-warning.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.btn-outline-danger {\n color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-outline-danger:hover {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-outline-danger:focus, .btn-outline-danger.focus {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.btn-outline-danger.disabled, .btn-outline-danger:disabled {\n color: #dc3545;\n background-color: transparent;\n}\n\n.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active,\n.show > .btn-outline-danger.dropdown-toggle {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-danger.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.btn-outline-light {\n color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-outline-light:hover {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-outline-light:focus, .btn-outline-light.focus {\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.btn-outline-light.disabled, .btn-outline-light:disabled {\n color: #f8f9fa;\n background-color: transparent;\n}\n\n.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active,\n.show > .btn-outline-light.dropdown-toggle {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-light.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.btn-outline-dark {\n color: #343a40;\n border-color: #343a40;\n}\n\n.btn-outline-dark:hover {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-outline-dark:focus, .btn-outline-dark.focus {\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.btn-outline-dark.disabled, .btn-outline-dark:disabled {\n color: #343a40;\n background-color: transparent;\n}\n\n.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active,\n.show > .btn-outline-dark.dropdown-toggle {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-dark.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.btn-link {\n font-weight: 400;\n color: #007bff;\n text-decoration: none;\n}\n\n.btn-link:hover {\n color: #0056b3;\n text-decoration: underline;\n}\n\n.btn-link:focus, .btn-link.focus {\n text-decoration: underline;\n box-shadow: none;\n}\n\n.btn-link:disabled, .btn-link.disabled {\n color: #6c757d;\n pointer-events: none;\n}\n\n.btn-lg, .btn-group-lg > .btn {\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n line-height: 1.5;\n border-radius: 0.3rem;\n}\n\n.btn-sm, .btn-group-sm > .btn {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n border-radius: 0.2rem;\n}\n\n.btn-block {\n display: block;\n width: 100%;\n}\n\n.btn-block + .btn-block {\n margin-top: 0.5rem;\n}\n\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n width: 100%;\n}\n\n.fade {\n transition: opacity 0.15s linear;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .fade {\n transition: none;\n }\n}\n\n.fade:not(.show) {\n opacity: 0;\n}\n\n.collapse:not(.show) {\n display: none;\n}\n\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n transition: height 0.35s ease;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .collapsing {\n transition: none;\n }\n}\n\n.dropup,\n.dropright,\n.dropdown,\n.dropleft {\n position: relative;\n}\n\n.dropdown-toggle {\n white-space: nowrap;\n}\n\n.dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid;\n border-right: 0.3em solid transparent;\n border-bottom: 0;\n border-left: 0.3em solid transparent;\n}\n\n.dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n display: none;\n float: left;\n min-width: 10rem;\n padding: 0.5rem 0;\n margin: 0.125rem 0 0;\n font-size: 1rem;\n color: #212529;\n text-align: left;\n list-style: none;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 0.25rem;\n}\n\n.dropdown-menu-left {\n right: auto;\n left: 0;\n}\n\n.dropdown-menu-right {\n right: 0;\n left: auto;\n}\n\n@media (min-width: 576px) {\n .dropdown-menu-sm-left {\n right: auto;\n left: 0;\n }\n .dropdown-menu-sm-right {\n right: 0;\n left: auto;\n }\n}\n\n@media (min-width: 768px) {\n .dropdown-menu-md-left {\n right: auto;\n left: 0;\n }\n .dropdown-menu-md-right {\n right: 0;\n left: auto;\n }\n}\n\n@media (min-width: 992px) {\n .dropdown-menu-lg-left {\n right: auto;\n left: 0;\n }\n .dropdown-menu-lg-right {\n right: 0;\n left: auto;\n }\n}\n\n@media (min-width: 1200px) {\n .dropdown-menu-xl-left {\n right: auto;\n left: 0;\n }\n .dropdown-menu-xl-right {\n right: 0;\n left: auto;\n }\n}\n\n.dropup .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-top: 0;\n margin-bottom: 0.125rem;\n}\n\n.dropup .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0;\n border-right: 0.3em solid transparent;\n border-bottom: 0.3em solid;\n border-left: 0.3em solid transparent;\n}\n\n.dropup .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropright .dropdown-menu {\n top: 0;\n right: auto;\n left: 100%;\n margin-top: 0;\n margin-left: 0.125rem;\n}\n\n.dropright .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0;\n border-bottom: 0.3em solid transparent;\n border-left: 0.3em solid;\n}\n\n.dropright .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropright .dropdown-toggle::after {\n vertical-align: 0;\n}\n\n.dropleft .dropdown-menu {\n top: 0;\n right: 100%;\n left: auto;\n margin-top: 0;\n margin-right: 0.125rem;\n}\n\n.dropleft .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n}\n\n.dropleft .dropdown-toggle::after {\n display: none;\n}\n\n.dropleft .dropdown-toggle::before {\n display: inline-block;\n margin-right: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0.3em solid;\n border-bottom: 0.3em solid transparent;\n}\n\n.dropleft .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropleft .dropdown-toggle::before {\n vertical-align: 0;\n}\n\n.dropdown-menu[x-placement^=\"top\"], .dropdown-menu[x-placement^=\"right\"], .dropdown-menu[x-placement^=\"bottom\"], .dropdown-menu[x-placement^=\"left\"] {\n right: auto;\n bottom: auto;\n}\n\n.dropdown-divider {\n height: 0;\n margin: 0.5rem 0;\n overflow: hidden;\n border-top: 1px solid #e9ecef;\n}\n\n.dropdown-item {\n display: block;\n width: 100%;\n padding: 0.25rem 1.5rem;\n clear: both;\n font-weight: 400;\n color: #212529;\n text-align: inherit;\n white-space: nowrap;\n background-color: transparent;\n border: 0;\n}\n\n.dropdown-item:hover, .dropdown-item:focus {\n color: #16181b;\n text-decoration: none;\n background-color: #f8f9fa;\n}\n\n.dropdown-item.active, .dropdown-item:active {\n color: #fff;\n text-decoration: none;\n background-color: #007bff;\n}\n\n.dropdown-item.disabled, .dropdown-item:disabled {\n color: #6c757d;\n pointer-events: none;\n background-color: transparent;\n}\n\n.dropdown-menu.show {\n display: block;\n}\n\n.dropdown-header {\n display: block;\n padding: 0.5rem 1.5rem;\n margin-bottom: 0;\n font-size: 0.875rem;\n color: #6c757d;\n white-space: nowrap;\n}\n\n.dropdown-item-text {\n display: block;\n padding: 0.25rem 1.5rem;\n color: #212529;\n}\n\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: -ms-inline-flexbox;\n display: inline-flex;\n vertical-align: middle;\n}\n\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n}\n\n.btn-group > .btn:hover,\n.btn-group-vertical > .btn:hover {\n z-index: 1;\n}\n\n.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,\n.btn-group-vertical > .btn:focus,\n.btn-group-vertical > .btn:active,\n.btn-group-vertical > .btn.active {\n z-index: 1;\n}\n\n.btn-toolbar {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-pack: start;\n justify-content: flex-start;\n}\n\n.btn-toolbar .input-group {\n width: auto;\n}\n\n.btn-group > .btn:not(:first-child),\n.btn-group > .btn-group:not(:first-child) {\n margin-left: -1px;\n}\n\n.btn-group > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group > .btn-group:not(:last-child) > .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.btn-group > .btn:not(:first-child),\n.btn-group > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.dropdown-toggle-split {\n padding-right: 0.5625rem;\n padding-left: 0.5625rem;\n}\n\n.dropdown-toggle-split::after,\n.dropup .dropdown-toggle-split::after,\n.dropright .dropdown-toggle-split::after {\n margin-left: 0;\n}\n\n.dropleft .dropdown-toggle-split::before {\n margin-right: 0;\n}\n\n.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {\n padding-right: 0.375rem;\n padding-left: 0.375rem;\n}\n\n.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {\n padding-right: 0.75rem;\n padding-left: 0.75rem;\n}\n\n.btn-group-vertical {\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-align: start;\n align-items: flex-start;\n -ms-flex-pack: center;\n justify-content: center;\n}\n\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group {\n width: 100%;\n}\n\n.btn-group-vertical > .btn:not(:first-child),\n.btn-group-vertical > .btn-group:not(:first-child) {\n margin-top: -1px;\n}\n\n.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group-vertical > .btn-group:not(:last-child) > .btn {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.btn-group-vertical > .btn:not(:first-child),\n.btn-group-vertical > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.btn-group-toggle > .btn,\n.btn-group-toggle > .btn-group > .btn {\n margin-bottom: 0;\n}\n\n.btn-group-toggle > .btn input[type=\"radio\"],\n.btn-group-toggle > .btn input[type=\"checkbox\"],\n.btn-group-toggle > .btn-group > .btn input[type=\"radio\"],\n.btn-group-toggle > .btn-group > .btn input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n\n.input-group {\n position: relative;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-align: stretch;\n align-items: stretch;\n width: 100%;\n}\n\n.input-group > .form-control,\n.input-group > .form-control-plaintext,\n.input-group > .custom-select,\n.input-group > .custom-file {\n position: relative;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n width: 1%;\n margin-bottom: 0;\n}\n\n.input-group > .form-control + .form-control,\n.input-group > .form-control + .custom-select,\n.input-group > .form-control + .custom-file,\n.input-group > .form-control-plaintext + .form-control,\n.input-group > .form-control-plaintext + .custom-select,\n.input-group > .form-control-plaintext + .custom-file,\n.input-group > .custom-select + .form-control,\n.input-group > .custom-select + .custom-select,\n.input-group > .custom-select + .custom-file,\n.input-group > .custom-file + .form-control,\n.input-group > .custom-file + .custom-select,\n.input-group > .custom-file + .custom-file {\n margin-left: -1px;\n}\n\n.input-group > .form-control:focus,\n.input-group > .custom-select:focus,\n.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {\n z-index: 3;\n}\n\n.input-group > .custom-file .custom-file-input:focus {\n z-index: 4;\n}\n\n.input-group > .form-control:not(:last-child),\n.input-group > .custom-select:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.input-group > .form-control:not(:first-child),\n.input-group > .custom-select:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.input-group > .custom-file {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center;\n}\n\n.input-group > .custom-file:not(:last-child) .custom-file-label,\n.input-group > .custom-file:not(:last-child) .custom-file-label::after {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.input-group > .custom-file:not(:first-child) .custom-file-label {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.input-group-prepend,\n.input-group-append {\n display: -ms-flexbox;\n display: flex;\n}\n\n.input-group-prepend .btn,\n.input-group-append .btn {\n position: relative;\n z-index: 2;\n}\n\n.input-group-prepend .btn:focus,\n.input-group-append .btn:focus {\n z-index: 3;\n}\n\n.input-group-prepend .btn + .btn,\n.input-group-prepend .btn + .input-group-text,\n.input-group-prepend .input-group-text + .input-group-text,\n.input-group-prepend .input-group-text + .btn,\n.input-group-append .btn + .btn,\n.input-group-append .btn + .input-group-text,\n.input-group-append .input-group-text + .input-group-text,\n.input-group-append .input-group-text + .btn {\n margin-left: -1px;\n}\n\n.input-group-prepend {\n margin-right: -1px;\n}\n\n.input-group-append {\n margin-left: -1px;\n}\n\n.input-group-text {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center;\n padding: 0.375rem 0.75rem;\n margin-bottom: 0;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n text-align: center;\n white-space: nowrap;\n background-color: #e9ecef;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n}\n\n.input-group-text input[type=\"radio\"],\n.input-group-text input[type=\"checkbox\"] {\n margin-top: 0;\n}\n\n.input-group-lg > .form-control:not(textarea),\n.input-group-lg > .custom-select {\n height: calc(1.5em + 1rem + 2px);\n}\n\n.input-group-lg > .form-control,\n.input-group-lg > .custom-select,\n.input-group-lg > .input-group-prepend > .input-group-text,\n.input-group-lg > .input-group-append > .input-group-text,\n.input-group-lg > .input-group-prepend > .btn,\n.input-group-lg > .input-group-append > .btn {\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n line-height: 1.5;\n border-radius: 0.3rem;\n}\n\n.input-group-sm > .form-control:not(textarea),\n.input-group-sm > .custom-select {\n height: calc(1.5em + 0.5rem + 2px);\n}\n\n.input-group-sm > .form-control,\n.input-group-sm > .custom-select,\n.input-group-sm > .input-group-prepend > .input-group-text,\n.input-group-sm > .input-group-append > .input-group-text,\n.input-group-sm > .input-group-prepend > .btn,\n.input-group-sm > .input-group-append > .btn {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n border-radius: 0.2rem;\n}\n\n.input-group-lg > .custom-select,\n.input-group-sm > .custom-select {\n padding-right: 1.75rem;\n}\n\n.input-group > .input-group-prepend > .btn,\n.input-group > .input-group-prepend > .input-group-text,\n.input-group > .input-group-append:not(:last-child) > .btn,\n.input-group > .input-group-append:not(:last-child) > .input-group-text,\n.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.input-group > .input-group-append > .btn,\n.input-group > .input-group-append > .input-group-text,\n.input-group > .input-group-prepend:not(:first-child) > .btn,\n.input-group > .input-group-prepend:not(:first-child) > .input-group-text,\n.input-group > .input-group-prepend:first-child > .btn:not(:first-child),\n.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.custom-control {\n position: relative;\n display: block;\n min-height: 1.5rem;\n padding-left: 1.5rem;\n}\n\n.custom-control-inline {\n display: -ms-inline-flexbox;\n display: inline-flex;\n margin-right: 1rem;\n}\n\n.custom-control-input {\n position: absolute;\n z-index: -1;\n opacity: 0;\n}\n\n.custom-control-input:checked ~ .custom-control-label::before {\n color: #fff;\n border-color: #007bff;\n background-color: #007bff;\n}\n\n.custom-control-input:focus ~ .custom-control-label::before {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {\n border-color: #80bdff;\n}\n\n.custom-control-input:not(:disabled):active ~ .custom-control-label::before {\n color: #fff;\n background-color: #b3d7ff;\n border-color: #b3d7ff;\n}\n\n.custom-control-input:disabled ~ .custom-control-label {\n color: #6c757d;\n}\n\n.custom-control-input:disabled ~ .custom-control-label::before {\n background-color: #e9ecef;\n}\n\n.custom-control-label {\n position: relative;\n margin-bottom: 0;\n vertical-align: top;\n}\n\n.custom-control-label::before {\n position: absolute;\n top: 0.25rem;\n left: -1.5rem;\n display: block;\n width: 1rem;\n height: 1rem;\n pointer-events: none;\n content: \"\";\n background-color: #fff;\n border: #adb5bd solid 1px;\n}\n\n.custom-control-label::after {\n position: absolute;\n top: 0.25rem;\n left: -1.5rem;\n display: block;\n width: 1rem;\n height: 1rem;\n content: \"\";\n background: no-repeat 50% / 50% 50%;\n}\n\n.custom-checkbox .custom-control-label::before {\n border-radius: 0.25rem;\n}\n\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%208%208'%3e%3cpath%20fill='%23fff'%20d='M6.564.75l-3.59%203.612-1.538-1.55L0%204.26%202.974%207.25%208%202.193z'/%3e%3c/svg%3e/");\n}\n\n.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {\n border-color: #007bff;\n background-color: #007bff;\n}\n\n.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%204%204'%3e%3cpath%20stroke='%23fff'%20d='M0%202h4'/%3e%3c/svg%3e/");\n}\n\n.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-radio .custom-control-label::before {\n border-radius: 50%;\n}\n\n.custom-radio .custom-control-input:checked ~ .custom-control-label::after {\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='-4%20-4%208%208'%3e%3ccircle%20r='3'%20fill='%23fff'/%3e%3c/svg%3e/");\n}\n\n.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-switch {\n padding-left: 2.25rem;\n}\n\n.custom-switch .custom-control-label::before {\n left: -2.25rem;\n width: 1.75rem;\n pointer-events: all;\n border-radius: 0.5rem;\n}\n\n.custom-switch .custom-control-label::after {\n top: calc(0.25rem + 2px);\n left: calc(-2.25rem + 2px);\n width: calc(1rem - 4px);\n height: calc(1rem - 4px);\n background-color: #adb5bd;\n border-radius: 0.5rem;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out;\n transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-switch .custom-control-label::after {\n transition: none;\n }\n}\n\n.custom-switch .custom-control-input:checked ~ .custom-control-label::after {\n background-color: #fff;\n -webkit-transform: translateX(0.75rem);\n transform: translateX(0.75rem);\n}\n\n.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-select {\n display: inline-block;\n width: 100%;\n height: calc(1.5em + 0.75rem + 2px);\n padding: 0.375rem 1.75rem 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n vertical-align: middle;\n background: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%204%205'%3e%3cpath%20fill='%23343a40'%20d='M2%200L0%202h4zm0%205L0%203h4z'/%3e%3c/svg%3e/") no-repeat right 0.75rem center/8px 10px;\n background-color: #fff;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n\n.custom-select:focus {\n border-color: #80bdff;\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-select:focus::-ms-value {\n color: #495057;\n background-color: #fff;\n}\n\n.custom-select[multiple], .custom-select[size]:not([size=\"1\"]) {\n height: auto;\n padding-right: 0.75rem;\n background-image: none;\n}\n\n.custom-select:disabled {\n color: #6c757d;\n background-color: #e9ecef;\n}\n\n.custom-select::-ms-expand {\n display: none;\n}\n\n.custom-select-sm {\n height: calc(1.5em + 0.5rem + 2px);\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n padding-left: 0.5rem;\n font-size: 0.875rem;\n}\n\n.custom-select-lg {\n height: calc(1.5em + 1rem + 2px);\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n padding-left: 1rem;\n font-size: 1.25rem;\n}\n\n.custom-file {\n position: relative;\n display: inline-block;\n width: 100%;\n height: calc(1.5em + 0.75rem + 2px);\n margin-bottom: 0;\n}\n\n.custom-file-input {\n position: relative;\n z-index: 2;\n width: 100%;\n height: calc(1.5em + 0.75rem + 2px);\n margin: 0;\n opacity: 0;\n}\n\n.custom-file-input:focus ~ .custom-file-label {\n border-color: #80bdff;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-file-input:disabled ~ .custom-file-label {\n background-color: #e9ecef;\n}\n\n.custom-file-input:lang(en) ~ .custom-file-label::after {\n content: \"Browse\";\n}\n\n.custom-file-input ~ .custom-file-label[data-browse]::after {\n content: attr(data-browse);\n}\n\n.custom-file-label {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1;\n height: calc(1.5em + 0.75rem + 2px);\n padding: 0.375rem 0.75rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n background-color: #fff;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n}\n\n.custom-file-label::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n z-index: 3;\n display: block;\n height: calc(1.5em + 0.75rem);\n padding: 0.375rem 0.75rem;\n line-height: 1.5;\n color: #495057;\n content: \"Browse\";\n background-color: #e9ecef;\n border-left: inherit;\n border-radius: 0 0.25rem 0.25rem 0;\n}\n\n.custom-range {\n width: 100%;\n height: calc(1rem + 0.4rem);\n padding: 0;\n background-color: transparent;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n\n.custom-range:focus {\n outline: none;\n}\n\n.custom-range:focus::-webkit-slider-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-range:focus::-moz-range-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-range:focus::-ms-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-range::-moz-focus-outer {\n border: 0;\n}\n\n.custom-range::-webkit-slider-thumb {\n width: 1rem;\n height: 1rem;\n margin-top: -0.25rem;\n background-color: #007bff;\n border: 0;\n border-radius: 1rem;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n -webkit-appearance: none;\n appearance: none;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-range::-webkit-slider-thumb {\n transition: none;\n }\n}\n\n.custom-range::-webkit-slider-thumb:active {\n background-color: #b3d7ff;\n}\n\n.custom-range::-webkit-slider-runnable-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: #dee2e6;\n border-color: transparent;\n border-radius: 1rem;\n}\n\n.custom-range::-moz-range-thumb {\n width: 1rem;\n height: 1rem;\n background-color: #007bff;\n border: 0;\n border-radius: 1rem;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n -moz-appearance: none;\n appearance: none;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-range::-moz-range-thumb {\n transition: none;\n }\n}\n\n.custom-range::-moz-range-thumb:active {\n background-color: #b3d7ff;\n}\n\n.custom-range::-moz-range-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: #dee2e6;\n border-color: transparent;\n border-radius: 1rem;\n}\n\n.custom-range::-ms-thumb {\n width: 1rem;\n height: 1rem;\n margin-top: 0;\n margin-right: 0.2rem;\n margin-left: 0.2rem;\n background-color: #007bff;\n border: 0;\n border-radius: 1rem;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n appearance: none;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-range::-ms-thumb {\n transition: none;\n }\n}\n\n.custom-range::-ms-thumb:active {\n background-color: #b3d7ff;\n}\n\n.custom-range::-ms-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: transparent;\n border-color: transparent;\n border-width: 0.5rem;\n}\n\n.custom-range::-ms-fill-lower {\n background-color: #dee2e6;\n border-radius: 1rem;\n}\n\n.custom-range::-ms-fill-upper {\n margin-right: 15px;\n background-color: #dee2e6;\n border-radius: 1rem;\n}\n\n.custom-range:disabled::-webkit-slider-thumb {\n background-color: #adb5bd;\n}\n\n.custom-range:disabled::-webkit-slider-runnable-track {\n cursor: default;\n}\n\n.custom-range:disabled::-moz-range-thumb {\n background-color: #adb5bd;\n}\n\n.custom-range:disabled::-moz-range-track {\n cursor: default;\n}\n\n.custom-range:disabled::-ms-thumb {\n background-color: #adb5bd;\n}\n\n.custom-control-label::before,\n.custom-file-label,\n.custom-select {\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-control-label::before,\n .custom-file-label,\n .custom-select {\n transition: none;\n }\n}\n\n.nav {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n\n.nav-link {\n display: block;\n padding: 0.5rem 1rem;\n}\n\n.nav-link:hover, .nav-link:focus {\n text-decoration: none;\n}\n\n.nav-link.disabled {\n color: #6c757d;\n pointer-events: none;\n cursor: default;\n}\n\n.nav-tabs {\n border-bottom: 1px solid #dee2e6;\n}\n\n.nav-tabs .nav-item {\n margin-bottom: -1px;\n}\n\n.nav-tabs .nav-link {\n border: 1px solid transparent;\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n\n.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {\n border-color: #e9ecef #e9ecef #dee2e6;\n}\n\n.nav-tabs .nav-link.disabled {\n color: #6c757d;\n background-color: transparent;\n border-color: transparent;\n}\n\n.nav-tabs .nav-link.active,\n.nav-tabs .nav-item.show .nav-link {\n color: #495057;\n background-color: #fff;\n border-color: #dee2e6 #dee2e6 #fff;\n}\n\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.nav-pills .nav-link {\n border-radius: 0.25rem;\n}\n\n.nav-pills .nav-link.active,\n.nav-pills .show > .nav-link {\n color: #fff;\n background-color: #007bff;\n}\n\n.nav-fill .nav-item {\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n text-align: center;\n}\n\n.nav-justified .nav-item {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n text-align: center;\n}\n\n.tab-content > .tab-pane {\n display: none;\n}\n\n.tab-content > .active {\n display: block;\n}\n\n.navbar {\n position: relative;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: justify;\n justify-content: space-between;\n padding: 0.5rem 1rem;\n}\n\n.navbar > .container,\n.navbar > .container-fluid {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: justify;\n justify-content: space-between;\n}\n\n.navbar-brand {\n display: inline-block;\n padding-top: 0.3125rem;\n padding-bottom: 0.3125rem;\n margin-right: 1rem;\n font-size: 1.25rem;\n line-height: inherit;\n white-space: nowrap;\n}\n\n.navbar-brand:hover, .navbar-brand:focus {\n text-decoration: none;\n}\n\n.navbar-nav {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n\n.navbar-nav .nav-link {\n padding-right: 0;\n padding-left: 0;\n}\n\n.navbar-nav .dropdown-menu {\n position: static;\n float: none;\n}\n\n.navbar-text {\n display: inline-block;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n.navbar-collapse {\n -ms-flex-preferred-size: 100%;\n flex-basis: 100%;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-align: center;\n align-items: center;\n}\n\n.navbar-toggler {\n padding: 0.25rem 0.75rem;\n font-size: 1.25rem;\n line-height: 1;\n background-color: transparent;\n border: 1px solid transparent;\n border-radius: 0.25rem;\n}\n\n.navbar-toggler:hover, .navbar-toggler:focus {\n text-decoration: none;\n}\n\n.navbar-toggler-icon {\n display: inline-block;\n width: 1.5em;\n height: 1.5em;\n vertical-align: middle;\n content: \"\";\n background: no-repeat center center;\n background-size: 100% 100%;\n}\n\n@media (max-width: 575.98px) {\n .navbar-expand-sm > .container,\n .navbar-expand-sm > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 576px) {\n .navbar-expand-sm {\n -ms-flex-flow: row nowrap;\n flex-flow: row nowrap;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-sm .navbar-nav {\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-sm .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-sm .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-sm > .container,\n .navbar-expand-sm > .container-fluid {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n }\n .navbar-expand-sm .navbar-collapse {\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-sm .navbar-toggler {\n display: none;\n }\n}\n\n@media (max-width: 767.98px) {\n .navbar-expand-md > .container,\n .navbar-expand-md > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 768px) {\n .navbar-expand-md {\n -ms-flex-flow: row nowrap;\n flex-flow: row nowrap;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-md .navbar-nav {\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-md .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-md .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-md > .container,\n .navbar-expand-md > .container-fluid {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n }\n .navbar-expand-md .navbar-collapse {\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-md .navbar-toggler {\n display: none;\n }\n}\n\n@media (max-width: 991.98px) {\n .navbar-expand-lg > .container,\n .navbar-expand-lg > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 992px) {\n .navbar-expand-lg {\n -ms-flex-flow: row nowrap;\n flex-flow: row nowrap;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-lg .navbar-nav {\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-lg .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-lg .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-lg > .container,\n .navbar-expand-lg > .container-fluid {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n }\n .navbar-expand-lg .navbar-collapse {\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-lg .navbar-toggler {\n display: none;\n }\n}\n\n@media (max-width: 1199.98px) {\n .navbar-expand-xl > .container,\n .navbar-expand-xl > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 1200px) {\n .navbar-expand-xl {\n -ms-flex-flow: row nowrap;\n flex-flow: row nowrap;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-xl .navbar-nav {\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-xl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xl .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-xl > .container,\n .navbar-expand-xl > .container-fluid {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n }\n .navbar-expand-xl .navbar-collapse {\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-xl .navbar-toggler {\n display: none;\n }\n}\n\n.navbar-expand {\n -ms-flex-flow: row nowrap;\n flex-flow: row nowrap;\n -ms-flex-pack: start;\n justify-content: flex-start;\n}\n\n.navbar-expand > .container,\n.navbar-expand > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n}\n\n.navbar-expand .navbar-nav {\n -ms-flex-direction: row;\n flex-direction: row;\n}\n\n.navbar-expand .navbar-nav .dropdown-menu {\n position: absolute;\n}\n\n.navbar-expand .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n}\n\n.navbar-expand > .container,\n.navbar-expand > .container-fluid {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n}\n\n.navbar-expand .navbar-collapse {\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n}\n\n.navbar-expand .navbar-toggler {\n display: none;\n}\n\n.navbar-light .navbar-brand {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-nav .nav-link {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {\n color: rgba(0, 0, 0, 0.7);\n}\n\n.navbar-light .navbar-nav .nav-link.disabled {\n color: rgba(0, 0, 0, 0.3);\n}\n\n.navbar-light .navbar-nav .show > .nav-link,\n.navbar-light .navbar-nav .active > .nav-link,\n.navbar-light .navbar-nav .nav-link.show,\n.navbar-light .navbar-nav .nav-link.active {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-toggler {\n color: rgba(0, 0, 0, 0.5);\n border-color: rgba(0, 0, 0, 0.1);\n}\n\n.navbar-light .navbar-toggler-icon {\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20viewBox='0%200%2030%2030'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20stroke='rgba(0,%200,%200,%200.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n\n.navbar-light .navbar-text {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.navbar-light .navbar-text a {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-dark .navbar-brand {\n color: #fff;\n}\n\n.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {\n color: #fff;\n}\n\n.navbar-dark .navbar-nav .nav-link {\n color: rgba(255, 255, 255, 0.5);\n}\n\n.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {\n color: rgba(255, 255, 255, 0.75);\n}\n\n.navbar-dark .navbar-nav .nav-link.disabled {\n color: rgba(255, 255, 255, 0.25);\n}\n\n.navbar-dark .navbar-nav .show > .nav-link,\n.navbar-dark .navbar-nav .active > .nav-link,\n.navbar-dark .navbar-nav .nav-link.show,\n.navbar-dark .navbar-nav .nav-link.active {\n color: #fff;\n}\n\n.navbar-dark .navbar-toggler {\n color: rgba(255, 255, 255, 0.5);\n border-color: rgba(255, 255, 255, 0.1);\n}\n\n.navbar-dark .navbar-toggler-icon {\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20viewBox='0%200%2030%2030'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20stroke='rgba(255,%20255,%20255,%200.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n\n.navbar-dark .navbar-text {\n color: rgba(255, 255, 255, 0.5);\n}\n\n.navbar-dark .navbar-text a {\n color: #fff;\n}\n\n.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {\n color: #fff;\n}\n\n.card {\n position: relative;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n min-width: 0;\n word-wrap: break-word;\n background-color: #fff;\n background-clip: border-box;\n border: 1px solid rgba(0, 0, 0, 0.125);\n border-radius: 0.25rem;\n}\n\n.card > hr {\n margin-right: 0;\n margin-left: 0;\n}\n\n.card > .list-group:first-child .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n\n.card > .list-group:last-child .list-group-item:last-child {\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.card-body {\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n padding: 1.25rem;\n}\n\n.card-title {\n margin-bottom: 0.75rem;\n}\n\n.card-subtitle {\n margin-top: -0.375rem;\n margin-bottom: 0;\n}\n\n.card-text:last-child {\n margin-bottom: 0;\n}\n\n.card-link:hover {\n text-decoration: none;\n}\n\n.card-link + .card-link {\n margin-left: 1.25rem;\n}\n\n.card-header {\n padding: 0.75rem 1.25rem;\n margin-bottom: 0;\n background-color: rgba(0, 0, 0, 0.03);\n border-bottom: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.card-header:first-child {\n border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;\n}\n\n.card-header + .list-group .list-group-item:first-child {\n border-top: 0;\n}\n\n.card-footer {\n padding: 0.75rem 1.25rem;\n background-color: rgba(0, 0, 0, 0.03);\n border-top: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.card-footer:last-child {\n border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);\n}\n\n.card-header-tabs {\n margin-right: -0.625rem;\n margin-bottom: -0.75rem;\n margin-left: -0.625rem;\n border-bottom: 0;\n}\n\n.card-header-pills {\n margin-right: -0.625rem;\n margin-left: -0.625rem;\n}\n\n.card-img-overlay {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: 1.25rem;\n}\n\n.card-img {\n width: 100%;\n border-radius: calc(0.25rem - 1px);\n}\n\n.card-img-top {\n width: 100%;\n border-top-left-radius: calc(0.25rem - 1px);\n border-top-right-radius: calc(0.25rem - 1px);\n}\n\n.card-img-bottom {\n width: 100%;\n border-bottom-right-radius: calc(0.25rem - 1px);\n border-bottom-left-radius: calc(0.25rem - 1px);\n}\n\n.card-deck {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n}\n\n.card-deck .card {\n margin-bottom: 15px;\n}\n\n@media (min-width: 576px) {\n .card-deck {\n -ms-flex-flow: row wrap;\n flex-flow: row wrap;\n margin-right: -15px;\n margin-left: -15px;\n }\n .card-deck .card {\n display: -ms-flexbox;\n display: flex;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n -ms-flex-direction: column;\n flex-direction: column;\n margin-right: 15px;\n margin-bottom: 0;\n margin-left: 15px;\n }\n}\n\n.card-group {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n}\n\n.card-group > .card {\n margin-bottom: 15px;\n}\n\n@media (min-width: 576px) {\n .card-group {\n -ms-flex-flow: row wrap;\n flex-flow: row wrap;\n }\n .card-group > .card {\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n margin-bottom: 0;\n }\n .card-group > .card + .card {\n margin-left: 0;\n border-left: 0;\n }\n .card-group > .card:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:last-child) .card-img-top,\n .card-group > .card:not(:last-child) .card-header {\n border-top-right-radius: 0;\n }\n .card-group > .card:not(:last-child) .card-img-bottom,\n .card-group > .card:not(:last-child) .card-footer {\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n .card-group > .card:not(:first-child) .card-img-top,\n .card-group > .card:not(:first-child) .card-header {\n border-top-left-radius: 0;\n }\n .card-group > .card:not(:first-child) .card-img-bottom,\n .card-group > .card:not(:first-child) .card-footer {\n border-bottom-left-radius: 0;\n }\n}\n\n.card-columns .card {\n margin-bottom: 0.75rem;\n}\n\n@media (min-width: 576px) {\n .card-columns {\n -webkit-column-count: 3;\n -moz-column-count: 3;\n column-count: 3;\n -webkit-column-gap: 1.25rem;\n -moz-column-gap: 1.25rem;\n column-gap: 1.25rem;\n orphans: 1;\n widows: 1;\n }\n .card-columns .card {\n display: inline-block;\n width: 100%;\n }\n}\n\n.accordion > .card {\n overflow: hidden;\n}\n\n.accordion > .card:not(:first-of-type) .card-header:first-child {\n border-radius: 0;\n}\n\n.accordion > .card:not(:first-of-type):not(:last-of-type) {\n border-bottom: 0;\n border-radius: 0;\n}\n\n.accordion > .card:first-of-type {\n border-bottom: 0;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.accordion > .card:last-of-type {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.accordion > .card .card-header {\n margin-bottom: -1px;\n}\n\n.breadcrumb {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n padding: 0.75rem 1rem;\n margin-bottom: 1rem;\n list-style: none;\n background-color: #e9ecef;\n border-radius: 0.25rem;\n}\n\n.breadcrumb-item + .breadcrumb-item {\n padding-left: 0.5rem;\n}\n\n.breadcrumb-item + .breadcrumb-item::before {\n display: inline-block;\n padding-right: 0.5rem;\n color: #6c757d;\n content: \"/\";\n}\n\n.breadcrumb-item + .breadcrumb-item:hover::before {\n text-decoration: underline;\n}\n\n.breadcrumb-item + .breadcrumb-item:hover::before {\n text-decoration: none;\n}\n\n.breadcrumb-item.active {\n color: #6c757d;\n}\n\n.pagination {\n display: -ms-flexbox;\n display: flex;\n padding-left: 0;\n list-style: none;\n border-radius: 0.25rem;\n}\n\n.page-link {\n position: relative;\n display: block;\n padding: 0.5rem 0.75rem;\n margin-left: -1px;\n line-height: 1.25;\n color: #007bff;\n background-color: #fff;\n border: 1px solid #dee2e6;\n}\n\n.page-link:hover {\n z-index: 2;\n color: #0056b3;\n text-decoration: none;\n background-color: #e9ecef;\n border-color: #dee2e6;\n}\n\n.page-link:focus {\n z-index: 2;\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.page-item:first-child .page-link {\n margin-left: 0;\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.page-item:last-child .page-link {\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n}\n\n.page-item.active .page-link {\n z-index: 1;\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.page-item.disabled .page-link {\n color: #6c757d;\n pointer-events: none;\n cursor: auto;\n background-color: #fff;\n border-color: #dee2e6;\n}\n\n.pagination-lg .page-link {\n padding: 0.75rem 1.5rem;\n font-size: 1.25rem;\n line-height: 1.5;\n}\n\n.pagination-lg .page-item:first-child .page-link {\n border-top-left-radius: 0.3rem;\n border-bottom-left-radius: 0.3rem;\n}\n\n.pagination-lg .page-item:last-child .page-link {\n border-top-right-radius: 0.3rem;\n border-bottom-right-radius: 0.3rem;\n}\n\n.pagination-sm .page-link {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n}\n\n.pagination-sm .page-item:first-child .page-link {\n border-top-left-radius: 0.2rem;\n border-bottom-left-radius: 0.2rem;\n}\n\n.pagination-sm .page-item:last-child .page-link {\n border-top-right-radius: 0.2rem;\n border-bottom-right-radius: 0.2rem;\n}\n\n.badge {\n display: inline-block;\n padding: 0.25em 0.4em;\n font-size: 75%;\n font-weight: 700;\n line-height: 1;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: 0.25rem;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .badge {\n transition: none;\n }\n}\n\na.badge:hover, a.badge:focus {\n text-decoration: none;\n}\n\n.badge:empty {\n display: none;\n}\n\n.btn .badge {\n position: relative;\n top: -1px;\n}\n\n.badge-pill {\n padding-right: 0.6em;\n padding-left: 0.6em;\n border-radius: 10rem;\n}\n\n.badge-primary {\n color: #fff;\n background-color: #007bff;\n}\n\na.badge-primary:hover, a.badge-primary:focus {\n color: #fff;\n background-color: #0062cc;\n}\n\na.badge-primary:focus, a.badge-primary.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.badge-secondary {\n color: #fff;\n background-color: #6c757d;\n}\n\na.badge-secondary:hover, a.badge-secondary:focus {\n color: #fff;\n background-color: #545b62;\n}\n\na.badge-secondary:focus, a.badge-secondary.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.badge-success {\n color: #fff;\n background-color: #28a745;\n}\n\na.badge-success:hover, a.badge-success:focus {\n color: #fff;\n background-color: #1e7e34;\n}\n\na.badge-success:focus, a.badge-success.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.badge-info {\n color: #fff;\n background-color: #17a2b8;\n}\n\na.badge-info:hover, a.badge-info:focus {\n color: #fff;\n background-color: #117a8b;\n}\n\na.badge-info:focus, a.badge-info.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.badge-warning {\n color: #212529;\n background-color: #ffc107;\n}\n\na.badge-warning:hover, a.badge-warning:focus {\n color: #212529;\n background-color: #d39e00;\n}\n\na.badge-warning:focus, a.badge-warning.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.badge-danger {\n color: #fff;\n background-color: #dc3545;\n}\n\na.badge-danger:hover, a.badge-danger:focus {\n color: #fff;\n background-color: #bd2130;\n}\n\na.badge-danger:focus, a.badge-danger.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.badge-light {\n color: #212529;\n background-color: #f8f9fa;\n}\n\na.badge-light:hover, a.badge-light:focus {\n color: #212529;\n background-color: #dae0e5;\n}\n\na.badge-light:focus, a.badge-light.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.badge-dark {\n color: #fff;\n background-color: #343a40;\n}\n\na.badge-dark:hover, a.badge-dark:focus {\n color: #fff;\n background-color: #1d2124;\n}\n\na.badge-dark:focus, a.badge-dark.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.jumbotron {\n padding: 2rem 1rem;\n margin-bottom: 2rem;\n background-color: #e9ecef;\n border-radius: 0.3rem;\n}\n\n@media (min-width: 576px) {\n .jumbotron {\n padding: 4rem 2rem;\n }\n}\n\n.jumbotron-fluid {\n padding-right: 0;\n padding-left: 0;\n border-radius: 0;\n}\n\n.alert {\n position: relative;\n padding: 0.75rem 1.25rem;\n margin-bottom: 1rem;\n border: 1px solid transparent;\n border-radius: 0.25rem;\n}\n\n.alert-heading {\n color: inherit;\n}\n\n.alert-link {\n font-weight: 700;\n}\n\n.alert-dismissible {\n padding-right: 4rem;\n}\n\n.alert-dismissible .close {\n position: absolute;\n top: 0;\n right: 0;\n padding: 0.75rem 1.25rem;\n color: inherit;\n}\n\n.alert-primary {\n color: #004085;\n background-color: #cce5ff;\n border-color: #b8daff;\n}\n\n.alert-primary hr {\n border-top-color: #9fcdff;\n}\n\n.alert-primary .alert-link {\n color: #002752;\n}\n\n.alert-secondary {\n color: #383d41;\n background-color: #e2e3e5;\n border-color: #d6d8db;\n}\n\n.alert-secondary hr {\n border-top-color: #c8cbcf;\n}\n\n.alert-secondary .alert-link {\n color: #202326;\n}\n\n.alert-success {\n color: #155724;\n background-color: #d4edda;\n border-color: #c3e6cb;\n}\n\n.alert-success hr {\n border-top-color: #b1dfbb;\n}\n\n.alert-success .alert-link {\n color: #0b2e13;\n}\n\n.alert-info {\n color: #0c5460;\n background-color: #d1ecf1;\n border-color: #bee5eb;\n}\n\n.alert-info hr {\n border-top-color: #abdde5;\n}\n\n.alert-info .alert-link {\n color: #062c33;\n}\n\n.alert-warning {\n color: #856404;\n background-color: #fff3cd;\n border-color: #ffeeba;\n}\n\n.alert-warning hr {\n border-top-color: #ffe8a1;\n}\n\n.alert-warning .alert-link {\n color: #533f03;\n}\n\n.alert-danger {\n color: #721c24;\n background-color: #f8d7da;\n border-color: #f5c6cb;\n}\n\n.alert-danger hr {\n border-top-color: #f1b0b7;\n}\n\n.alert-danger .alert-link {\n color: #491217;\n}\n\n.alert-light {\n color: #818182;\n background-color: #fefefe;\n border-color: #fdfdfe;\n}\n\n.alert-light hr {\n border-top-color: #ececf6;\n}\n\n.alert-light .alert-link {\n color: #686868;\n}\n\n.alert-dark {\n color: #1b1e21;\n background-color: #d6d8d9;\n border-color: #c6c8ca;\n}\n\n.alert-dark hr {\n border-top-color: #b9bbbe;\n}\n\n.alert-dark .alert-link {\n color: #040505;\n}\n\n@-webkit-keyframes progress-bar-stripes {\n from {\n background-position: 1rem 0;\n }\n to {\n background-position: 0 0;\n }\n}\n\n@keyframes progress-bar-stripes {\n from {\n background-position: 1rem 0;\n }\n to {\n background-position: 0 0;\n }\n}\n\n.progress {\n display: -ms-flexbox;\n display: flex;\n height: 1rem;\n overflow: hidden;\n font-size: 0.75rem;\n background-color: #e9ecef;\n border-radius: 0.25rem;\n}\n\n.progress-bar {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-pack: center;\n justify-content: center;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n background-color: #007bff;\n transition: width 0.6s ease;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .progress-bar {\n transition: none;\n }\n}\n\n.progress-bar-striped {\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: 1rem 1rem;\n}\n\n.progress-bar-animated {\n -webkit-animation: progress-bar-stripes 1s linear infinite;\n animation: progress-bar-stripes 1s linear infinite;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .progress-bar-animated {\n -webkit-animation: none;\n animation: none;\n }\n}\n\n.media {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: start;\n align-items: flex-start;\n}\n\n.media-body {\n -ms-flex: 1;\n flex: 1;\n}\n\n.list-group {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n}\n\n.list-group-item-action {\n width: 100%;\n color: #495057;\n text-align: inherit;\n}\n\n.list-group-item-action:hover, .list-group-item-action:focus {\n z-index: 1;\n color: #495057;\n text-decoration: none;\n background-color: #f8f9fa;\n}\n\n.list-group-item-action:active {\n color: #212529;\n background-color: #e9ecef;\n}\n\n.list-group-item {\n position: relative;\n display: block;\n padding: 0.75rem 1.25rem;\n margin-bottom: -1px;\n background-color: #fff;\n border: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n\n.list-group-item:last-child {\n margin-bottom: 0;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.list-group-item.disabled, .list-group-item:disabled {\n color: #6c757d;\n pointer-events: none;\n background-color: #fff;\n}\n\n.list-group-item.active {\n z-index: 2;\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.list-group-horizontal {\n -ms-flex-direction: row;\n flex-direction: row;\n}\n\n.list-group-horizontal .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n}\n\n.list-group-horizontal .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n}\n\n.list-group-horizontal .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n}\n\n@media (min-width: 576px) {\n .list-group-horizontal-sm {\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-sm .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n }\n .list-group-horizontal-sm .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-sm .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n}\n\n@media (min-width: 768px) {\n .list-group-horizontal-md {\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-md .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n }\n .list-group-horizontal-md .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-md .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n}\n\n@media (min-width: 992px) {\n .list-group-horizontal-lg {\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-lg .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n }\n .list-group-horizontal-lg .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-lg .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n}\n\n@media (min-width: 1200px) {\n .list-group-horizontal-xl {\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-xl .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n }\n .list-group-horizontal-xl .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-xl .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n}\n\n.list-group-flush .list-group-item {\n border-right: 0;\n border-left: 0;\n border-radius: 0;\n}\n\n.list-group-flush .list-group-item:last-child {\n margin-bottom: -1px;\n}\n\n.list-group-flush:first-child .list-group-item:first-child {\n border-top: 0;\n}\n\n.list-group-flush:last-child .list-group-item:last-child {\n margin-bottom: 0;\n border-bottom: 0;\n}\n\n.list-group-item-primary {\n color: #004085;\n background-color: #b8daff;\n}\n\n.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {\n color: #004085;\n background-color: #9fcdff;\n}\n\n.list-group-item-primary.list-group-item-action.active {\n color: #fff;\n background-color: #004085;\n border-color: #004085;\n}\n\n.list-group-item-secondary {\n color: #383d41;\n background-color: #d6d8db;\n}\n\n.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {\n color: #383d41;\n background-color: #c8cbcf;\n}\n\n.list-group-item-secondary.list-group-item-action.active {\n color: #fff;\n background-color: #383d41;\n border-color: #383d41;\n}\n\n.list-group-item-success {\n color: #155724;\n background-color: #c3e6cb;\n}\n\n.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {\n color: #155724;\n background-color: #b1dfbb;\n}\n\n.list-group-item-success.list-group-item-action.active {\n color: #fff;\n background-color: #155724;\n border-color: #155724;\n}\n\n.list-group-item-info {\n color: #0c5460;\n background-color: #bee5eb;\n}\n\n.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {\n color: #0c5460;\n background-color: #abdde5;\n}\n\n.list-group-item-info.list-group-item-action.active {\n color: #fff;\n background-color: #0c5460;\n border-color: #0c5460;\n}\n\n.list-group-item-warning {\n color: #856404;\n background-color: #ffeeba;\n}\n\n.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {\n color: #856404;\n background-color: #ffe8a1;\n}\n\n.list-group-item-warning.list-group-item-action.active {\n color: #fff;\n background-color: #856404;\n border-color: #856404;\n}\n\n.list-group-item-danger {\n color: #721c24;\n background-color: #f5c6cb;\n}\n\n.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {\n color: #721c24;\n background-color: #f1b0b7;\n}\n\n.list-group-item-danger.list-group-item-action.active {\n color: #fff;\n background-color: #721c24;\n border-color: #721c24;\n}\n\n.list-group-item-light {\n color: #818182;\n background-color: #fdfdfe;\n}\n\n.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {\n color: #818182;\n background-color: #ececf6;\n}\n\n.list-group-item-light.list-group-item-action.active {\n color: #fff;\n background-color: #818182;\n border-color: #818182;\n}\n\n.list-group-item-dark {\n color: #1b1e21;\n background-color: #c6c8ca;\n}\n\n.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {\n color: #1b1e21;\n background-color: #b9bbbe;\n}\n\n.list-group-item-dark.list-group-item-action.active {\n color: #fff;\n background-color: #1b1e21;\n border-color: #1b1e21;\n}\n\n.close {\n float: right;\n font-size: 1.5rem;\n font-weight: 700;\n line-height: 1;\n color: #000;\n text-shadow: 0 1px 0 #fff;\n opacity: .5;\n}\n\n.close:hover {\n color: #000;\n text-decoration: none;\n}\n\n.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {\n opacity: .75;\n}\n\nbutton.close {\n padding: 0;\n background-color: transparent;\n border: 0;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n\na.close.disabled {\n pointer-events: none;\n}\n\n.toast {\n max-width: 350px;\n overflow: hidden;\n font-size: 0.875rem;\n background-color: rgba(255, 255, 255, 0.85);\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.1);\n box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);\n -webkit-backdrop-filter: blur(10px);\n backdrop-filter: blur(10px);\n opacity: 0;\n border-radius: 0.25rem;\n}\n\n.toast:not(:last-child) {\n margin-bottom: 0.75rem;\n}\n\n.toast.showing {\n opacity: 1;\n}\n\n.toast.show {\n display: block;\n opacity: 1;\n}\n\n.toast.hide {\n display: none;\n}\n\n.toast-header {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center;\n padding: 0.25rem 0.75rem;\n color: #6c757d;\n background-color: rgba(255, 255, 255, 0.85);\n background-clip: padding-box;\n border-bottom: 1px solid rgba(0, 0, 0, 0.05);\n}\n\n.toast-body {\n padding: 0.75rem;\n}\n\n.modal-open {\n overflow: hidden;\n}\n\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n\n.modal {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1050;\n display: none;\n width: 100%;\n height: 100%;\n overflow: hidden;\n outline: 0;\n}\n\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 0.5rem;\n pointer-events: none;\n}\n\n.modal.fade .modal-dialog {\n transition: -webkit-transform 0.3s ease-out;\n transition: transform 0.3s ease-out;\n transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;\n -webkit-transform: translate(0, -50px);\n transform: translate(0, -50px);\n}\n\n@media (prefers-reduced-motion: reduce) {\n .modal.fade .modal-dialog {\n transition: none;\n }\n}\n\n.modal.show .modal-dialog {\n -webkit-transform: none;\n transform: none;\n}\n\n.modal-dialog-scrollable {\n display: -ms-flexbox;\n display: flex;\n max-height: calc(100% - 1rem);\n}\n\n.modal-dialog-scrollable .modal-content {\n max-height: calc(100vh - 1rem);\n overflow: hidden;\n}\n\n.modal-dialog-scrollable .modal-header,\n.modal-dialog-scrollable .modal-footer {\n -ms-flex-negative: 0;\n flex-shrink: 0;\n}\n\n.modal-dialog-scrollable .modal-body {\n overflow-y: auto;\n}\n\n.modal-dialog-centered {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center;\n min-height: calc(100% - 1rem);\n}\n\n.modal-dialog-centered::before {\n display: block;\n height: calc(100vh - 1rem);\n content: \"\";\n}\n\n.modal-dialog-centered.modal-dialog-scrollable {\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-pack: center;\n justify-content: center;\n height: 100%;\n}\n\n.modal-dialog-centered.modal-dialog-scrollable .modal-content {\n max-height: none;\n}\n\n.modal-dialog-centered.modal-dialog-scrollable::before {\n content: none;\n}\n\n.modal-content {\n position: relative;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n width: 100%;\n pointer-events: auto;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 0.3rem;\n outline: 0;\n}\n\n.modal-backdrop {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1040;\n width: 100vw;\n height: 100vh;\n background-color: #000;\n}\n\n.modal-backdrop.fade {\n opacity: 0;\n}\n\n.modal-backdrop.show {\n opacity: 0.5;\n}\n\n.modal-header {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: start;\n align-items: flex-start;\n -ms-flex-pack: justify;\n justify-content: space-between;\n padding: 1rem 1rem;\n border-bottom: 1px solid #dee2e6;\n border-top-left-radius: 0.3rem;\n border-top-right-radius: 0.3rem;\n}\n\n.modal-header .close {\n padding: 1rem 1rem;\n margin: -1rem -1rem -1rem auto;\n}\n\n.modal-title {\n margin-bottom: 0;\n line-height: 1.5;\n}\n\n.modal-body {\n position: relative;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n padding: 1rem;\n}\n\n.modal-footer {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: end;\n justify-content: flex-end;\n padding: 1rem;\n border-top: 1px solid #dee2e6;\n border-bottom-right-radius: 0.3rem;\n border-bottom-left-radius: 0.3rem;\n}\n\n.modal-footer > :not(:first-child) {\n margin-left: .25rem;\n}\n\n.modal-footer > :not(:last-child) {\n margin-right: .25rem;\n}\n\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n\n@media (min-width: 576px) {\n .modal-dialog {\n max-width: 500px;\n margin: 1.75rem auto;\n }\n .modal-dialog-scrollable {\n max-height: calc(100% - 3.5rem);\n }\n .modal-dialog-scrollable .modal-content {\n max-height: calc(100vh - 3.5rem);\n }\n .modal-dialog-centered {\n min-height: calc(100% - 3.5rem);\n }\n .modal-dialog-centered::before {\n height: calc(100vh - 3.5rem);\n }\n .modal-sm {\n max-width: 300px;\n }\n}\n\n@media (min-width: 992px) {\n .modal-lg,\n .modal-xl {\n max-width: 800px;\n }\n}\n\n@media (min-width: 1200px) {\n .modal-xl {\n max-width: 1140px;\n }\n}\n\n.tooltip {\n position: absolute;\n z-index: 1070;\n display: block;\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n white-space: normal;\n line-break: auto;\n font-size: 0.875rem;\n word-wrap: break-word;\n opacity: 0;\n}\n\n.tooltip.show {\n opacity: 0.9;\n}\n\n.tooltip .arrow {\n position: absolute;\n display: block;\n width: 0.8rem;\n height: 0.4rem;\n}\n\n.tooltip .arrow::before {\n position: absolute;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n}\n\n.bs-tooltip-top, .bs-tooltip-auto[x-placement^=\"top\"] {\n padding: 0.4rem 0;\n}\n\n.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^=\"top\"] .arrow {\n bottom: 0;\n}\n\n.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^=\"top\"] .arrow::before {\n top: 0;\n border-width: 0.4rem 0.4rem 0;\n border-top-color: #000;\n}\n\n.bs-tooltip-right, .bs-tooltip-auto[x-placement^=\"right\"] {\n padding: 0 0.4rem;\n}\n\n.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^=\"right\"] .arrow {\n left: 0;\n width: 0.4rem;\n height: 0.8rem;\n}\n\n.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^=\"right\"] .arrow::before {\n right: 0;\n border-width: 0.4rem 0.4rem 0.4rem 0;\n border-right-color: #000;\n}\n\n.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^=\"bottom\"] {\n padding: 0.4rem 0;\n}\n\n.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^=\"bottom\"] .arrow {\n top: 0;\n}\n\n.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^=\"bottom\"] .arrow::before {\n bottom: 0;\n border-width: 0 0.4rem 0.4rem;\n border-bottom-color: #000;\n}\n\n.bs-tooltip-left, .bs-tooltip-auto[x-placement^=\"left\"] {\n padding: 0 0.4rem;\n}\n\n.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^=\"left\"] .arrow {\n right: 0;\n width: 0.4rem;\n height: 0.8rem;\n}\n\n.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^=\"left\"] .arrow::before {\n left: 0;\n border-width: 0.4rem 0 0.4rem 0.4rem;\n border-left-color: #000;\n}\n\n.tooltip-inner {\n max-width: 200px;\n padding: 0.25rem 0.5rem;\n color: #fff;\n text-align: center;\n background-color: #000;\n border-radius: 0.25rem;\n}\n\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1060;\n display: block;\n max-width: 276px;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n white-space: normal;\n line-break: auto;\n font-size: 0.875rem;\n word-wrap: break-word;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 0.3rem;\n}\n\n.popover .arrow {\n position: absolute;\n display: block;\n width: 1rem;\n height: 0.5rem;\n margin: 0 0.3rem;\n}\n\n.popover .arrow::before, .popover .arrow::after {\n position: absolute;\n display: block;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n}\n\n.bs-popover-top, .bs-popover-auto[x-placement^=\"top\"] {\n margin-bottom: 0.5rem;\n}\n\n.bs-popover-top > .arrow, .bs-popover-auto[x-placement^=\"top\"] > .arrow {\n bottom: calc((0.5rem + 1px) * -1);\n}\n\n.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^=\"top\"] > .arrow::before {\n bottom: 0;\n border-width: 0.5rem 0.5rem 0;\n border-top-color: rgba(0, 0, 0, 0.25);\n}\n\n.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^=\"top\"] > .arrow::after {\n bottom: 1px;\n border-width: 0.5rem 0.5rem 0;\n border-top-color: #fff;\n}\n\n.bs-popover-right, .bs-popover-auto[x-placement^=\"right\"] {\n margin-left: 0.5rem;\n}\n\n.bs-popover-right > .arrow, .bs-popover-auto[x-placement^=\"right\"] > .arrow {\n left: calc((0.5rem + 1px) * -1);\n width: 0.5rem;\n height: 1rem;\n margin: 0.3rem 0;\n}\n\n.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^=\"right\"] > .arrow::before {\n left: 0;\n border-width: 0.5rem 0.5rem 0.5rem 0;\n border-right-color: rgba(0, 0, 0, 0.25);\n}\n\n.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^=\"right\"] > .arrow::after {\n left: 1px;\n border-width: 0.5rem 0.5rem 0.5rem 0;\n border-right-color: #fff;\n}\n\n.bs-popover-bottom, .bs-popover-auto[x-placement^=\"bottom\"] {\n margin-top: 0.5rem;\n}\n\n.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^=\"bottom\"] > .arrow {\n top: calc((0.5rem + 1px) * -1);\n}\n\n.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^=\"bottom\"] > .arrow::before {\n top: 0;\n border-width: 0 0.5rem 0.5rem 0.5rem;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n}\n\n.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^=\"bottom\"] > .arrow::after {\n top: 1px;\n border-width: 0 0.5rem 0.5rem 0.5rem;\n border-bottom-color: #fff;\n}\n\n.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^=\"bottom\"] .popover-header::before {\n position: absolute;\n top: 0;\n left: 50%;\n display: block;\n width: 1rem;\n margin-left: -0.5rem;\n content: \"\";\n border-bottom: 1px solid #f7f7f7;\n}\n\n.bs-popover-left, .bs-popover-auto[x-placement^=\"left\"] {\n margin-right: 0.5rem;\n}\n\n.bs-popover-left > .arrow, .bs-popover-auto[x-placement^=\"left\"] > .arrow {\n right: calc((0.5rem + 1px) * -1);\n width: 0.5rem;\n height: 1rem;\n margin: 0.3rem 0;\n}\n\n.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^=\"left\"] > .arrow::before {\n right: 0;\n border-width: 0.5rem 0 0.5rem 0.5rem;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n\n.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^=\"left\"] > .arrow::after {\n right: 1px;\n border-width: 0.5rem 0 0.5rem 0.5rem;\n border-left-color: #fff;\n}\n\n.popover-header {\n padding: 0.5rem 0.75rem;\n margin-bottom: 0;\n font-size: 1rem;\n background-color: #f7f7f7;\n border-bottom: 1px solid #ebebeb;\n border-top-left-radius: calc(0.3rem - 1px);\n border-top-right-radius: calc(0.3rem - 1px);\n}\n\n.popover-header:empty {\n display: none;\n}\n\n.popover-body {\n padding: 0.5rem 0.75rem;\n color: #212529;\n}\n\n.carousel {\n position: relative;\n}\n\n.carousel.pointer-event {\n -ms-touch-action: pan-y;\n touch-action: pan-y;\n}\n\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n\n.carousel-inner::after {\n display: block;\n clear: both;\n content: \"\";\n}\n\n.carousel-item {\n position: relative;\n display: none;\n float: left;\n width: 100%;\n margin-right: -100%;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n transition: -webkit-transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .carousel-item {\n transition: none;\n }\n}\n\n.carousel-item.active,\n.carousel-item-next,\n.carousel-item-prev {\n display: block;\n}\n\n.carousel-item-next:not(.carousel-item-left),\n.active.carousel-item-right {\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n}\n\n.carousel-item-prev:not(.carousel-item-right),\n.active.carousel-item-left {\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n}\n\n.carousel-fade .carousel-item {\n opacity: 0;\n transition-property: opacity;\n -webkit-transform: none;\n transform: none;\n}\n\n.carousel-fade .carousel-item.active,\n.carousel-fade .carousel-item-next.carousel-item-left,\n.carousel-fade .carousel-item-prev.carousel-item-right {\n z-index: 1;\n opacity: 1;\n}\n\n.carousel-fade .active.carousel-item-left,\n.carousel-fade .active.carousel-item-right {\n z-index: 0;\n opacity: 0;\n transition: 0s 0.6s opacity;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .carousel-fade .active.carousel-item-left,\n .carousel-fade .active.carousel-item-right {\n transition: none;\n }\n}\n\n.carousel-control-prev,\n.carousel-control-next {\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: 1;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: center;\n justify-content: center;\n width: 15%;\n color: #fff;\n text-align: center;\n opacity: 0.5;\n transition: opacity 0.15s ease;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .carousel-control-prev,\n .carousel-control-next {\n transition: none;\n }\n}\n\n.carousel-control-prev:hover, .carousel-control-prev:focus,\n.carousel-control-next:hover,\n.carousel-control-next:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n opacity: 0.9;\n}\n\n.carousel-control-prev {\n left: 0;\n}\n\n.carousel-control-next {\n right: 0;\n}\n\n.carousel-control-prev-icon,\n.carousel-control-next-icon {\n display: inline-block;\n width: 20px;\n height: 20px;\n background: no-repeat 50% / 100% 100%;\n}\n\n.carousel-control-prev-icon {\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='%23fff'%20viewBox='0%200%208%208'%3e%3cpath%20d='M5.25%200l-4%204%204%204%201.5-1.5-2.5-2.5%202.5-2.5-1.5-1.5z'/%3e%3c/svg%3e/");\n}\n\n.carousel-control-next-icon {\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='%23fff'%20viewBox='0%200%208%208'%3e%3cpath%20d='M2.75%200l-1.5%201.5%202.5%202.5-2.5%202.5%201.5%201.5%204-4-4-4z'/%3e%3c/svg%3e/");\n}\n\n.carousel-indicators {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 15;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: center;\n justify-content: center;\n padding-left: 0;\n margin-right: 15%;\n margin-left: 15%;\n list-style: none;\n}\n\n.carousel-indicators li {\n box-sizing: content-box;\n -ms-flex: 0 1 auto;\n flex: 0 1 auto;\n width: 30px;\n height: 3px;\n margin-right: 3px;\n margin-left: 3px;\n text-indent: -999px;\n cursor: pointer;\n background-color: #fff;\n background-clip: padding-box;\n border-top: 10px solid transparent;\n border-bottom: 10px solid transparent;\n opacity: .5;\n transition: opacity 0.6s ease;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .carousel-indicators li {\n transition: none;\n }\n}\n\n.carousel-indicators .active {\n opacity: 1;\n}\n\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 20px;\n left: 15%;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: #fff;\n text-align: center;\n}\n\n@-webkit-keyframes spinner-border {\n to {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n@keyframes spinner-border {\n to {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n.spinner-border {\n display: inline-block;\n width: 2rem;\n height: 2rem;\n vertical-align: text-bottom;\n border: 0.25em solid currentColor;\n border-right-color: transparent;\n border-radius: 50%;\n -webkit-animation: spinner-border .75s linear infinite;\n animation: spinner-border .75s linear infinite;\n}\n\n.spinner-border-sm {\n width: 1rem;\n height: 1rem;\n border-width: 0.2em;\n}\n\n@-webkit-keyframes spinner-grow {\n 0% {\n -webkit-transform: scale(0);\n transform: scale(0);\n }\n 50% {\n opacity: 1;\n }\n}\n\n@keyframes spinner-grow {\n 0% {\n -webkit-transform: scale(0);\n transform: scale(0);\n }\n 50% {\n opacity: 1;\n }\n}\n\n.spinner-grow {\n display: inline-block;\n width: 2rem;\n height: 2rem;\n vertical-align: text-bottom;\n background-color: currentColor;\n border-radius: 50%;\n opacity: 0;\n -webkit-animation: spinner-grow .75s linear infinite;\n animation: spinner-grow .75s linear infinite;\n}\n\n.spinner-grow-sm {\n width: 1rem;\n height: 1rem;\n}\n\n.align-baseline {\n vertical-align: baseline !important;\n}\n\n.align-top {\n vertical-align: top !important;\n}\n\n.align-middle {\n vertical-align: middle !important;\n}\n\n.align-bottom {\n vertical-align: bottom !important;\n}\n\n.align-text-bottom {\n vertical-align: text-bottom !important;\n}\n\n.align-text-top {\n vertical-align: text-top !important;\n}\n\n.bg-primary {\n background-color: #007bff !important;\n}\n\na.bg-primary:hover, a.bg-primary:focus,\nbutton.bg-primary:hover,\nbutton.bg-primary:focus {\n background-color: #0062cc !important;\n}\n\n.bg-secondary {\n background-color: #6c757d !important;\n}\n\na.bg-secondary:hover, a.bg-secondary:focus,\nbutton.bg-secondary:hover,\nbutton.bg-secondary:focus {\n background-color: #545b62 !important;\n}\n\n.bg-success {\n background-color: #28a745 !important;\n}\n\na.bg-success:hover, a.bg-success:focus,\nbutton.bg-success:hover,\nbutton.bg-success:focus {\n background-color: #1e7e34 !important;\n}\n\n.bg-info {\n background-color: #17a2b8 !important;\n}\n\na.bg-info:hover, a.bg-info:focus,\nbutton.bg-info:hover,\nbutton.bg-info:focus {\n background-color: #117a8b !important;\n}\n\n.bg-warning {\n background-color: #ffc107 !important;\n}\n\na.bg-warning:hover, a.bg-warning:focus,\nbutton.bg-warning:hover,\nbutton.bg-warning:focus {\n background-color: #d39e00 !important;\n}\n\n.bg-danger {\n background-color: #dc3545 !important;\n}\n\na.bg-danger:hover, a.bg-danger:focus,\nbutton.bg-danger:hover,\nbutton.bg-danger:focus {\n background-color: #bd2130 !important;\n}\n\n.bg-light {\n background-color: #f8f9fa !important;\n}\n\na.bg-light:hover, a.bg-light:focus,\nbutton.bg-light:hover,\nbutton.bg-light:focus {\n background-color: #dae0e5 !important;\n}\n\n.bg-dark {\n background-color: #343a40 !important;\n}\n\na.bg-dark:hover, a.bg-dark:focus,\nbutton.bg-dark:hover,\nbutton.bg-dark:focus {\n background-color: #1d2124 !important;\n}\n\n.bg-white {\n background-color: #fff !important;\n}\n\n.bg-transparent {\n background-color: transparent !important;\n}\n\n.border {\n border: 1px solid #dee2e6 !important;\n}\n\n.border-top {\n border-top: 1px solid #dee2e6 !important;\n}\n\n.border-right {\n border-right: 1px solid #dee2e6 !important;\n}\n\n.border-bottom {\n border-bottom: 1px solid #dee2e6 !important;\n}\n\n.border-left {\n border-left: 1px solid #dee2e6 !important;\n}\n\n.border-0 {\n border: 0 !important;\n}\n\n.border-top-0 {\n border-top: 0 !important;\n}\n\n.border-right-0 {\n border-right: 0 !important;\n}\n\n.border-bottom-0 {\n border-bottom: 0 !important;\n}\n\n.border-left-0 {\n border-left: 0 !important;\n}\n\n.border-primary {\n border-color: #007bff !important;\n}\n\n.border-secondary {\n border-color: #6c757d !important;\n}\n\n.border-success {\n border-color: #28a745 !important;\n}\n\n.border-info {\n border-color: #17a2b8 !important;\n}\n\n.border-warning {\n border-color: #ffc107 !important;\n}\n\n.border-danger {\n border-color: #dc3545 !important;\n}\n\n.border-light {\n border-color: #f8f9fa !important;\n}\n\n.border-dark {\n border-color: #343a40 !important;\n}\n\n.border-white {\n border-color: #fff !important;\n}\n\n.rounded-sm {\n border-radius: 0.2rem !important;\n}\n\n.rounded {\n border-radius: 0.25rem !important;\n}\n\n.rounded-top {\n border-top-left-radius: 0.25rem !important;\n border-top-right-radius: 0.25rem !important;\n}\n\n.rounded-right {\n border-top-right-radius: 0.25rem !important;\n border-bottom-right-radius: 0.25rem !important;\n}\n\n.rounded-bottom {\n border-bottom-right-radius: 0.25rem !important;\n border-bottom-left-radius: 0.25rem !important;\n}\n\n.rounded-left {\n border-top-left-radius: 0.25rem !important;\n border-bottom-left-radius: 0.25rem !important;\n}\n\n.rounded-lg {\n border-radius: 0.3rem !important;\n}\n\n.rounded-circle {\n border-radius: 50% !important;\n}\n\n.rounded-pill {\n border-radius: 50rem !important;\n}\n\n.rounded-0 {\n border-radius: 0 !important;\n}\n\n.clearfix::after {\n display: block;\n clear: both;\n content: \"\";\n}\n\n.d-none {\n display: none !important;\n}\n\n.d-inline {\n display: inline !important;\n}\n\n.d-inline-block {\n display: inline-block !important;\n}\n\n.d-block {\n display: block !important;\n}\n\n.d-table {\n display: table !important;\n}\n\n.d-table-row {\n display: table-row !important;\n}\n\n.d-table-cell {\n display: table-cell !important;\n}\n\n.d-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n}\n\n.d-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n}\n\n@media (min-width: 576px) {\n .d-sm-none {\n display: none !important;\n }\n .d-sm-inline {\n display: inline !important;\n }\n .d-sm-inline-block {\n display: inline-block !important;\n }\n .d-sm-block {\n display: block !important;\n }\n .d-sm-table {\n display: table !important;\n }\n .d-sm-table-row {\n display: table-row !important;\n }\n .d-sm-table-cell {\n display: table-cell !important;\n }\n .d-sm-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-sm-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 768px) {\n .d-md-none {\n display: none !important;\n }\n .d-md-inline {\n display: inline !important;\n }\n .d-md-inline-block {\n display: inline-block !important;\n }\n .d-md-block {\n display: block !important;\n }\n .d-md-table {\n display: table !important;\n }\n .d-md-table-row {\n display: table-row !important;\n }\n .d-md-table-cell {\n display: table-cell !important;\n }\n .d-md-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-md-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 992px) {\n .d-lg-none {\n display: none !important;\n }\n .d-lg-inline {\n display: inline !important;\n }\n .d-lg-inline-block {\n display: inline-block !important;\n }\n .d-lg-block {\n display: block !important;\n }\n .d-lg-table {\n display: table !important;\n }\n .d-lg-table-row {\n display: table-row !important;\n }\n .d-lg-table-cell {\n display: table-cell !important;\n }\n .d-lg-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-lg-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 1200px) {\n .d-xl-none {\n display: none !important;\n }\n .d-xl-inline {\n display: inline !important;\n }\n .d-xl-inline-block {\n display: inline-block !important;\n }\n .d-xl-block {\n display: block !important;\n }\n .d-xl-table {\n display: table !important;\n }\n .d-xl-table-row {\n display: table-row !important;\n }\n .d-xl-table-cell {\n display: table-cell !important;\n }\n .d-xl-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-xl-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n@media print {\n .d-print-none {\n display: none !important;\n }\n .d-print-inline {\n display: inline !important;\n }\n .d-print-inline-block {\n display: inline-block !important;\n }\n .d-print-block {\n display: block !important;\n }\n .d-print-table {\n display: table !important;\n }\n .d-print-table-row {\n display: table-row !important;\n }\n .d-print-table-cell {\n display: table-cell !important;\n }\n .d-print-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-print-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n.embed-responsive {\n position: relative;\n display: block;\n width: 100%;\n padding: 0;\n overflow: hidden;\n}\n\n.embed-responsive::before {\n display: block;\n content: \"\";\n}\n\n.embed-responsive .embed-responsive-item,\n.embed-responsive iframe,\n.embed-responsive embed,\n.embed-responsive object,\n.embed-responsive video {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: 0;\n}\n\n.embed-responsive-21by9::before {\n padding-top: 42.857143%;\n}\n\n.embed-responsive-16by9::before {\n padding-top: 56.25%;\n}\n\n.embed-responsive-4by3::before {\n padding-top: 75%;\n}\n\n.embed-responsive-1by1::before {\n padding-top: 100%;\n}\n\n.flex-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n}\n\n.flex-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n}\n\n.flex-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n}\n\n.flex-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n}\n\n.flex-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n}\n\n.flex-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n}\n\n.flex-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n}\n\n.flex-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n}\n\n.flex-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n}\n\n.flex-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n}\n\n.flex-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n}\n\n.flex-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n}\n\n.justify-content-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n}\n\n.justify-content-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n}\n\n.justify-content-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n}\n\n.justify-content-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n}\n\n.justify-content-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n}\n\n.align-items-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n}\n\n.align-items-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n}\n\n.align-items-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n}\n\n.align-items-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n}\n\n.align-items-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n}\n\n.align-content-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n}\n\n.align-content-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n}\n\n.align-content-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n}\n\n.align-content-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n}\n\n.align-content-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n}\n\n.align-content-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n}\n\n.align-self-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n}\n\n.align-self-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n}\n\n.align-self-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n}\n\n.align-self-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n}\n\n.align-self-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n}\n\n.align-self-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n}\n\n@media (min-width: 576px) {\n .flex-sm-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-sm-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-sm-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-sm-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-sm-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-sm-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-sm-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .flex-sm-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-sm-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-sm-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-sm-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-sm-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .justify-content-sm-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-sm-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-sm-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-sm-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-sm-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .align-items-sm-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-sm-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-sm-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-sm-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-sm-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-sm-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-sm-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-sm-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-sm-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-sm-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-sm-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-sm-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-sm-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-sm-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-sm-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-sm-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-sm-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 768px) {\n .flex-md-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-md-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-md-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-md-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-md-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-md-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-md-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .flex-md-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-md-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-md-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-md-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-md-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .justify-content-md-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-md-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-md-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-md-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-md-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .align-items-md-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-md-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-md-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-md-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-md-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-md-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-md-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-md-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-md-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-md-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-md-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-md-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-md-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-md-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-md-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-md-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-md-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 992px) {\n .flex-lg-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-lg-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-lg-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-lg-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-lg-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-lg-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-lg-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .flex-lg-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-lg-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-lg-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-lg-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-lg-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .justify-content-lg-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-lg-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-lg-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-lg-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-lg-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .align-items-lg-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-lg-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-lg-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-lg-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-lg-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-lg-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-lg-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-lg-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-lg-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-lg-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-lg-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-lg-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-lg-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-lg-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-lg-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-lg-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-lg-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 1200px) {\n .flex-xl-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-xl-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-xl-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-xl-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-xl-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-xl-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-xl-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .flex-xl-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-xl-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-xl-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-xl-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-xl-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .justify-content-xl-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-xl-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-xl-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-xl-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-xl-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .align-items-xl-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-xl-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-xl-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-xl-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-xl-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-xl-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-xl-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-xl-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-xl-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-xl-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-xl-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-xl-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-xl-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-xl-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-xl-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-xl-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-xl-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n}\n\n.float-left {\n float: left !important;\n}\n\n.float-right {\n float: right !important;\n}\n\n.float-none {\n float: none !important;\n}\n\n@media (min-width: 576px) {\n .float-sm-left {\n float: left !important;\n }\n .float-sm-right {\n float: right !important;\n }\n .float-sm-none {\n float: none !important;\n }\n}\n\n@media (min-width: 768px) {\n .float-md-left {\n float: left !important;\n }\n .float-md-right {\n float: right !important;\n }\n .float-md-none {\n float: none !important;\n }\n}\n\n@media (min-width: 992px) {\n .float-lg-left {\n float: left !important;\n }\n .float-lg-right {\n float: right !important;\n }\n .float-lg-none {\n float: none !important;\n }\n}\n\n@media (min-width: 1200px) {\n .float-xl-left {\n float: left !important;\n }\n .float-xl-right {\n float: right !important;\n }\n .float-xl-none {\n float: none !important;\n }\n}\n\n.overflow-auto {\n overflow: auto !important;\n}\n\n.overflow-hidden {\n overflow: hidden !important;\n}\n\n.position-static {\n position: static !important;\n}\n\n.position-relative {\n position: relative !important;\n}\n\n.position-absolute {\n position: absolute !important;\n}\n\n.position-fixed {\n position: fixed !important;\n}\n\n.position-sticky {\n position: -webkit-sticky !important;\n position: sticky !important;\n}\n\n.fixed-top {\n position: fixed;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n\n.fixed-bottom {\n position: fixed;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1030;\n}\n\n@supports ((position: -webkit-sticky) or (position: sticky)) {\n .sticky-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n}\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n}\n\n.sr-only-focusable:active, .sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n overflow: visible;\n clip: auto;\n white-space: normal;\n}\n\n.shadow-sm {\n box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;\n}\n\n.shadow {\n box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;\n}\n\n.shadow-lg {\n box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;\n}\n\n.shadow-none {\n box-shadow: none !important;\n}\n\n.w-25 {\n width: 25% !important;\n}\n\n.w-50 {\n width: 50% !important;\n}\n\n.w-75 {\n width: 75% !important;\n}\n\n.w-100 {\n width: 100% !important;\n}\n\n.w-auto {\n width: auto !important;\n}\n\n.h-25 {\n height: 25% !important;\n}\n\n.h-50 {\n height: 50% !important;\n}\n\n.h-75 {\n height: 75% !important;\n}\n\n.h-100 {\n height: 100% !important;\n}\n\n.h-auto {\n height: auto !important;\n}\n\n.mw-100 {\n max-width: 100% !important;\n}\n\n.mh-100 {\n max-height: 100% !important;\n}\n\n.min-vw-100 {\n min-width: 100vw !important;\n}\n\n.min-vh-100 {\n min-height: 100vh !important;\n}\n\n.vw-100 {\n width: 100vw !important;\n}\n\n.vh-100 {\n height: 100vh !important;\n}\n\n.stretched-link::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n pointer-events: auto;\n content: \"\";\n background-color: rgba(0, 0, 0, 0);\n}\n\n.m-0 {\n margin: 0 !important;\n}\n\n.mt-0,\n.my-0 {\n margin-top: 0 !important;\n}\n\n.mr-0,\n.mx-0 {\n margin-right: 0 !important;\n}\n\n.mb-0,\n.my-0 {\n margin-bottom: 0 !important;\n}\n\n.ml-0,\n.mx-0 {\n margin-left: 0 !important;\n}\n\n.m-1 {\n margin: 0.25rem !important;\n}\n\n.mt-1,\n.my-1 {\n margin-top: 0.25rem !important;\n}\n\n.mr-1,\n.mx-1 {\n margin-right: 0.25rem !important;\n}\n\n.mb-1,\n.my-1 {\n margin-bottom: 0.25rem !important;\n}\n\n.ml-1,\n.mx-1 {\n margin-left: 0.25rem !important;\n}\n\n.m-2 {\n margin: 0.5rem !important;\n}\n\n.mt-2,\n.my-2 {\n margin-top: 0.5rem !important;\n}\n\n.mr-2,\n.mx-2 {\n margin-right: 0.5rem !important;\n}\n\n.mb-2,\n.my-2 {\n margin-bottom: 0.5rem !important;\n}\n\n.ml-2,\n.mx-2 {\n margin-left: 0.5rem !important;\n}\n\n.m-3 {\n margin: 1rem !important;\n}\n\n.mt-3,\n.my-3 {\n margin-top: 1rem !important;\n}\n\n.mr-3,\n.mx-3 {\n margin-right: 1rem !important;\n}\n\n.mb-3,\n.my-3 {\n margin-bottom: 1rem !important;\n}\n\n.ml-3,\n.mx-3 {\n margin-left: 1rem !important;\n}\n\n.m-4 {\n margin: 1.5rem !important;\n}\n\n.mt-4,\n.my-4 {\n margin-top: 1.5rem !important;\n}\n\n.mr-4,\n.mx-4 {\n margin-right: 1.5rem !important;\n}\n\n.mb-4,\n.my-4 {\n margin-bottom: 1.5rem !important;\n}\n\n.ml-4,\n.mx-4 {\n margin-left: 1.5rem !important;\n}\n\n.m-5 {\n margin: 3rem !important;\n}\n\n.mt-5,\n.my-5 {\n margin-top: 3rem !important;\n}\n\n.mr-5,\n.mx-5 {\n margin-right: 3rem !important;\n}\n\n.mb-5,\n.my-5 {\n margin-bottom: 3rem !important;\n}\n\n.ml-5,\n.mx-5 {\n margin-left: 3rem !important;\n}\n\n.p-0 {\n padding: 0 !important;\n}\n\n.pt-0,\n.py-0 {\n padding-top: 0 !important;\n}\n\n.pr-0,\n.px-0 {\n padding-right: 0 !important;\n}\n\n.pb-0,\n.py-0 {\n padding-bottom: 0 !important;\n}\n\n.pl-0,\n.px-0 {\n padding-left: 0 !important;\n}\n\n.p-1 {\n padding: 0.25rem !important;\n}\n\n.pt-1,\n.py-1 {\n padding-top: 0.25rem !important;\n}\n\n.pr-1,\n.px-1 {\n padding-right: 0.25rem !important;\n}\n\n.pb-1,\n.py-1 {\n padding-bottom: 0.25rem !important;\n}\n\n.pl-1,\n.px-1 {\n padding-left: 0.25rem !important;\n}\n\n.p-2 {\n padding: 0.5rem !important;\n}\n\n.pt-2,\n.py-2 {\n padding-top: 0.5rem !important;\n}\n\n.pr-2,\n.px-2 {\n padding-right: 0.5rem !important;\n}\n\n.pb-2,\n.py-2 {\n padding-bottom: 0.5rem !important;\n}\n\n.pl-2,\n.px-2 {\n padding-left: 0.5rem !important;\n}\n\n.p-3 {\n padding: 1rem !important;\n}\n\n.pt-3,\n.py-3 {\n padding-top: 1rem !important;\n}\n\n.pr-3,\n.px-3 {\n padding-right: 1rem !important;\n}\n\n.pb-3,\n.py-3 {\n padding-bottom: 1rem !important;\n}\n\n.pl-3,\n.px-3 {\n padding-left: 1rem !important;\n}\n\n.p-4 {\n padding: 1.5rem !important;\n}\n\n.pt-4,\n.py-4 {\n padding-top: 1.5rem !important;\n}\n\n.pr-4,\n.px-4 {\n padding-right: 1.5rem !important;\n}\n\n.pb-4,\n.py-4 {\n padding-bottom: 1.5rem !important;\n}\n\n.pl-4,\n.px-4 {\n padding-left: 1.5rem !important;\n}\n\n.p-5 {\n padding: 3rem !important;\n}\n\n.pt-5,\n.py-5 {\n padding-top: 3rem !important;\n}\n\n.pr-5,\n.px-5 {\n padding-right: 3rem !important;\n}\n\n.pb-5,\n.py-5 {\n padding-bottom: 3rem !important;\n}\n\n.pl-5,\n.px-5 {\n padding-left: 3rem !important;\n}\n\n.m-n1 {\n margin: -0.25rem !important;\n}\n\n.mt-n1,\n.my-n1 {\n margin-top: -0.25rem !important;\n}\n\n.mr-n1,\n.mx-n1 {\n margin-right: -0.25rem !important;\n}\n\n.mb-n1,\n.my-n1 {\n margin-bottom: -0.25rem !important;\n}\n\n.ml-n1,\n.mx-n1 {\n margin-left: -0.25rem !important;\n}\n\n.m-n2 {\n margin: -0.5rem !important;\n}\n\n.mt-n2,\n.my-n2 {\n margin-top: -0.5rem !important;\n}\n\n.mr-n2,\n.mx-n2 {\n margin-right: -0.5rem !important;\n}\n\n.mb-n2,\n.my-n2 {\n margin-bottom: -0.5rem !important;\n}\n\n.ml-n2,\n.mx-n2 {\n margin-left: -0.5rem !important;\n}\n\n.m-n3 {\n margin: -1rem !important;\n}\n\n.mt-n3,\n.my-n3 {\n margin-top: -1rem !important;\n}\n\n.mr-n3,\n.mx-n3 {\n margin-right: -1rem !important;\n}\n\n.mb-n3,\n.my-n3 {\n margin-bottom: -1rem !important;\n}\n\n.ml-n3,\n.mx-n3 {\n margin-left: -1rem !important;\n}\n\n.m-n4 {\n margin: -1.5rem !important;\n}\n\n.mt-n4,\n.my-n4 {\n margin-top: -1.5rem !important;\n}\n\n.mr-n4,\n.mx-n4 {\n margin-right: -1.5rem !important;\n}\n\n.mb-n4,\n.my-n4 {\n margin-bottom: -1.5rem !important;\n}\n\n.ml-n4,\n.mx-n4 {\n margin-left: -1.5rem !important;\n}\n\n.m-n5 {\n margin: -3rem !important;\n}\n\n.mt-n5,\n.my-n5 {\n margin-top: -3rem !important;\n}\n\n.mr-n5,\n.mx-n5 {\n margin-right: -3rem !important;\n}\n\n.mb-n5,\n.my-n5 {\n margin-bottom: -3rem !important;\n}\n\n.ml-n5,\n.mx-n5 {\n margin-left: -3rem !important;\n}\n\n.m-auto {\n margin: auto !important;\n}\n\n.mt-auto,\n.my-auto {\n margin-top: auto !important;\n}\n\n.mr-auto,\n.mx-auto {\n margin-right: auto !important;\n}\n\n.mb-auto,\n.my-auto {\n margin-bottom: auto !important;\n}\n\n.ml-auto,\n.mx-auto {\n margin-left: auto !important;\n}\n\n@media (min-width: 576px) {\n .m-sm-0 {\n margin: 0 !important;\n }\n .mt-sm-0,\n .my-sm-0 {\n margin-top: 0 !important;\n }\n .mr-sm-0,\n .mx-sm-0 {\n margin-right: 0 !important;\n }\n .mb-sm-0,\n .my-sm-0 {\n margin-bottom: 0 !important;\n }\n .ml-sm-0,\n .mx-sm-0 {\n margin-left: 0 !important;\n }\n .m-sm-1 {\n margin: 0.25rem !important;\n }\n .mt-sm-1,\n .my-sm-1 {\n margin-top: 0.25rem !important;\n }\n .mr-sm-1,\n .mx-sm-1 {\n margin-right: 0.25rem !important;\n }\n .mb-sm-1,\n .my-sm-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-sm-1,\n .mx-sm-1 {\n margin-left: 0.25rem !important;\n }\n .m-sm-2 {\n margin: 0.5rem !important;\n }\n .mt-sm-2,\n .my-sm-2 {\n margin-top: 0.5rem !important;\n }\n .mr-sm-2,\n .mx-sm-2 {\n margin-right: 0.5rem !important;\n }\n .mb-sm-2,\n .my-sm-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-sm-2,\n .mx-sm-2 {\n margin-left: 0.5rem !important;\n }\n .m-sm-3 {\n margin: 1rem !important;\n }\n .mt-sm-3,\n .my-sm-3 {\n margin-top: 1rem !important;\n }\n .mr-sm-3,\n .mx-sm-3 {\n margin-right: 1rem !important;\n }\n .mb-sm-3,\n .my-sm-3 {\n margin-bottom: 1rem !important;\n }\n .ml-sm-3,\n .mx-sm-3 {\n margin-left: 1rem !important;\n }\n .m-sm-4 {\n margin: 1.5rem !important;\n }\n .mt-sm-4,\n .my-sm-4 {\n margin-top: 1.5rem !important;\n }\n .mr-sm-4,\n .mx-sm-4 {\n margin-right: 1.5rem !important;\n }\n .mb-sm-4,\n .my-sm-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-sm-4,\n .mx-sm-4 {\n margin-left: 1.5rem !important;\n }\n .m-sm-5 {\n margin: 3rem !important;\n }\n .mt-sm-5,\n .my-sm-5 {\n margin-top: 3rem !important;\n }\n .mr-sm-5,\n .mx-sm-5 {\n margin-right: 3rem !important;\n }\n .mb-sm-5,\n .my-sm-5 {\n margin-bottom: 3rem !important;\n }\n .ml-sm-5,\n .mx-sm-5 {\n margin-left: 3rem !important;\n }\n .p-sm-0 {\n padding: 0 !important;\n }\n .pt-sm-0,\n .py-sm-0 {\n padding-top: 0 !important;\n }\n .pr-sm-0,\n .px-sm-0 {\n padding-right: 0 !important;\n }\n .pb-sm-0,\n .py-sm-0 {\n padding-bottom: 0 !important;\n }\n .pl-sm-0,\n .px-sm-0 {\n padding-left: 0 !important;\n }\n .p-sm-1 {\n padding: 0.25rem !important;\n }\n .pt-sm-1,\n .py-sm-1 {\n padding-top: 0.25rem !important;\n }\n .pr-sm-1,\n .px-sm-1 {\n padding-right: 0.25rem !important;\n }\n .pb-sm-1,\n .py-sm-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-sm-1,\n .px-sm-1 {\n padding-left: 0.25rem !important;\n }\n .p-sm-2 {\n padding: 0.5rem !important;\n }\n .pt-sm-2,\n .py-sm-2 {\n padding-top: 0.5rem !important;\n }\n .pr-sm-2,\n .px-sm-2 {\n padding-right: 0.5rem !important;\n }\n .pb-sm-2,\n .py-sm-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-sm-2,\n .px-sm-2 {\n padding-left: 0.5rem !important;\n }\n .p-sm-3 {\n padding: 1rem !important;\n }\n .pt-sm-3,\n .py-sm-3 {\n padding-top: 1rem !important;\n }\n .pr-sm-3,\n .px-sm-3 {\n padding-right: 1rem !important;\n }\n .pb-sm-3,\n .py-sm-3 {\n padding-bottom: 1rem !important;\n }\n .pl-sm-3,\n .px-sm-3 {\n padding-left: 1rem !important;\n }\n .p-sm-4 {\n padding: 1.5rem !important;\n }\n .pt-sm-4,\n .py-sm-4 {\n padding-top: 1.5rem !important;\n }\n .pr-sm-4,\n .px-sm-4 {\n padding-right: 1.5rem !important;\n }\n .pb-sm-4,\n .py-sm-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-sm-4,\n .px-sm-4 {\n padding-left: 1.5rem !important;\n }\n .p-sm-5 {\n padding: 3rem !important;\n }\n .pt-sm-5,\n .py-sm-5 {\n padding-top: 3rem !important;\n }\n .pr-sm-5,\n .px-sm-5 {\n padding-right: 3rem !important;\n }\n .pb-sm-5,\n .py-sm-5 {\n padding-bottom: 3rem !important;\n }\n .pl-sm-5,\n .px-sm-5 {\n padding-left: 3rem !important;\n }\n .m-sm-n1 {\n margin: -0.25rem !important;\n }\n .mt-sm-n1,\n .my-sm-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-sm-n1,\n .mx-sm-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-sm-n1,\n .my-sm-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-sm-n1,\n .mx-sm-n1 {\n margin-left: -0.25rem !important;\n }\n .m-sm-n2 {\n margin: -0.5rem !important;\n }\n .mt-sm-n2,\n .my-sm-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-sm-n2,\n .mx-sm-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-sm-n2,\n .my-sm-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-sm-n2,\n .mx-sm-n2 {\n margin-left: -0.5rem !important;\n }\n .m-sm-n3 {\n margin: -1rem !important;\n }\n .mt-sm-n3,\n .my-sm-n3 {\n margin-top: -1rem !important;\n }\n .mr-sm-n3,\n .mx-sm-n3 {\n margin-right: -1rem !important;\n }\n .mb-sm-n3,\n .my-sm-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-sm-n3,\n .mx-sm-n3 {\n margin-left: -1rem !important;\n }\n .m-sm-n4 {\n margin: -1.5rem !important;\n }\n .mt-sm-n4,\n .my-sm-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-sm-n4,\n .mx-sm-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-sm-n4,\n .my-sm-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-sm-n4,\n .mx-sm-n4 {\n margin-left: -1.5rem !important;\n }\n .m-sm-n5 {\n margin: -3rem !important;\n }\n .mt-sm-n5,\n .my-sm-n5 {\n margin-top: -3rem !important;\n }\n .mr-sm-n5,\n .mx-sm-n5 {\n margin-right: -3rem !important;\n }\n .mb-sm-n5,\n .my-sm-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-sm-n5,\n .mx-sm-n5 {\n margin-left: -3rem !important;\n }\n .m-sm-auto {\n margin: auto !important;\n }\n .mt-sm-auto,\n .my-sm-auto {\n margin-top: auto !important;\n }\n .mr-sm-auto,\n .mx-sm-auto {\n margin-right: auto !important;\n }\n .mb-sm-auto,\n .my-sm-auto {\n margin-bottom: auto !important;\n }\n .ml-sm-auto,\n .mx-sm-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 768px) {\n .m-md-0 {\n margin: 0 !important;\n }\n .mt-md-0,\n .my-md-0 {\n margin-top: 0 !important;\n }\n .mr-md-0,\n .mx-md-0 {\n margin-right: 0 !important;\n }\n .mb-md-0,\n .my-md-0 {\n margin-bottom: 0 !important;\n }\n .ml-md-0,\n .mx-md-0 {\n margin-left: 0 !important;\n }\n .m-md-1 {\n margin: 0.25rem !important;\n }\n .mt-md-1,\n .my-md-1 {\n margin-top: 0.25rem !important;\n }\n .mr-md-1,\n .mx-md-1 {\n margin-right: 0.25rem !important;\n }\n .mb-md-1,\n .my-md-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-md-1,\n .mx-md-1 {\n margin-left: 0.25rem !important;\n }\n .m-md-2 {\n margin: 0.5rem !important;\n }\n .mt-md-2,\n .my-md-2 {\n margin-top: 0.5rem !important;\n }\n .mr-md-2,\n .mx-md-2 {\n margin-right: 0.5rem !important;\n }\n .mb-md-2,\n .my-md-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-md-2,\n .mx-md-2 {\n margin-left: 0.5rem !important;\n }\n .m-md-3 {\n margin: 1rem !important;\n }\n .mt-md-3,\n .my-md-3 {\n margin-top: 1rem !important;\n }\n .mr-md-3,\n .mx-md-3 {\n margin-right: 1rem !important;\n }\n .mb-md-3,\n .my-md-3 {\n margin-bottom: 1rem !important;\n }\n .ml-md-3,\n .mx-md-3 {\n margin-left: 1rem !important;\n }\n .m-md-4 {\n margin: 1.5rem !important;\n }\n .mt-md-4,\n .my-md-4 {\n margin-top: 1.5rem !important;\n }\n .mr-md-4,\n .mx-md-4 {\n margin-right: 1.5rem !important;\n }\n .mb-md-4,\n .my-md-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-md-4,\n .mx-md-4 {\n margin-left: 1.5rem !important;\n }\n .m-md-5 {\n margin: 3rem !important;\n }\n .mt-md-5,\n .my-md-5 {\n margin-top: 3rem !important;\n }\n .mr-md-5,\n .mx-md-5 {\n margin-right: 3rem !important;\n }\n .mb-md-5,\n .my-md-5 {\n margin-bottom: 3rem !important;\n }\n .ml-md-5,\n .mx-md-5 {\n margin-left: 3rem !important;\n }\n .p-md-0 {\n padding: 0 !important;\n }\n .pt-md-0,\n .py-md-0 {\n padding-top: 0 !important;\n }\n .pr-md-0,\n .px-md-0 {\n padding-right: 0 !important;\n }\n .pb-md-0,\n .py-md-0 {\n padding-bottom: 0 !important;\n }\n .pl-md-0,\n .px-md-0 {\n padding-left: 0 !important;\n }\n .p-md-1 {\n padding: 0.25rem !important;\n }\n .pt-md-1,\n .py-md-1 {\n padding-top: 0.25rem !important;\n }\n .pr-md-1,\n .px-md-1 {\n padding-right: 0.25rem !important;\n }\n .pb-md-1,\n .py-md-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-md-1,\n .px-md-1 {\n padding-left: 0.25rem !important;\n }\n .p-md-2 {\n padding: 0.5rem !important;\n }\n .pt-md-2,\n .py-md-2 {\n padding-top: 0.5rem !important;\n }\n .pr-md-2,\n .px-md-2 {\n padding-right: 0.5rem !important;\n }\n .pb-md-2,\n .py-md-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-md-2,\n .px-md-2 {\n padding-left: 0.5rem !important;\n }\n .p-md-3 {\n padding: 1rem !important;\n }\n .pt-md-3,\n .py-md-3 {\n padding-top: 1rem !important;\n }\n .pr-md-3,\n .px-md-3 {\n padding-right: 1rem !important;\n }\n .pb-md-3,\n .py-md-3 {\n padding-bottom: 1rem !important;\n }\n .pl-md-3,\n .px-md-3 {\n padding-left: 1rem !important;\n }\n .p-md-4 {\n padding: 1.5rem !important;\n }\n .pt-md-4,\n .py-md-4 {\n padding-top: 1.5rem !important;\n }\n .pr-md-4,\n .px-md-4 {\n padding-right: 1.5rem !important;\n }\n .pb-md-4,\n .py-md-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-md-4,\n .px-md-4 {\n padding-left: 1.5rem !important;\n }\n .p-md-5 {\n padding: 3rem !important;\n }\n .pt-md-5,\n .py-md-5 {\n padding-top: 3rem !important;\n }\n .pr-md-5,\n .px-md-5 {\n padding-right: 3rem !important;\n }\n .pb-md-5,\n .py-md-5 {\n padding-bottom: 3rem !important;\n }\n .pl-md-5,\n .px-md-5 {\n padding-left: 3rem !important;\n }\n .m-md-n1 {\n margin: -0.25rem !important;\n }\n .mt-md-n1,\n .my-md-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-md-n1,\n .mx-md-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-md-n1,\n .my-md-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-md-n1,\n .mx-md-n1 {\n margin-left: -0.25rem !important;\n }\n .m-md-n2 {\n margin: -0.5rem !important;\n }\n .mt-md-n2,\n .my-md-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-md-n2,\n .mx-md-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-md-n2,\n .my-md-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-md-n2,\n .mx-md-n2 {\n margin-left: -0.5rem !important;\n }\n .m-md-n3 {\n margin: -1rem !important;\n }\n .mt-md-n3,\n .my-md-n3 {\n margin-top: -1rem !important;\n }\n .mr-md-n3,\n .mx-md-n3 {\n margin-right: -1rem !important;\n }\n .mb-md-n3,\n .my-md-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-md-n3,\n .mx-md-n3 {\n margin-left: -1rem !important;\n }\n .m-md-n4 {\n margin: -1.5rem !important;\n }\n .mt-md-n4,\n .my-md-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-md-n4,\n .mx-md-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-md-n4,\n .my-md-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-md-n4,\n .mx-md-n4 {\n margin-left: -1.5rem !important;\n }\n .m-md-n5 {\n margin: -3rem !important;\n }\n .mt-md-n5,\n .my-md-n5 {\n margin-top: -3rem !important;\n }\n .mr-md-n5,\n .mx-md-n5 {\n margin-right: -3rem !important;\n }\n .mb-md-n5,\n .my-md-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-md-n5,\n .mx-md-n5 {\n margin-left: -3rem !important;\n }\n .m-md-auto {\n margin: auto !important;\n }\n .mt-md-auto,\n .my-md-auto {\n margin-top: auto !important;\n }\n .mr-md-auto,\n .mx-md-auto {\n margin-right: auto !important;\n }\n .mb-md-auto,\n .my-md-auto {\n margin-bottom: auto !important;\n }\n .ml-md-auto,\n .mx-md-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 992px) {\n .m-lg-0 {\n margin: 0 !important;\n }\n .mt-lg-0,\n .my-lg-0 {\n margin-top: 0 !important;\n }\n .mr-lg-0,\n .mx-lg-0 {\n margin-right: 0 !important;\n }\n .mb-lg-0,\n .my-lg-0 {\n margin-bottom: 0 !important;\n }\n .ml-lg-0,\n .mx-lg-0 {\n margin-left: 0 !important;\n }\n .m-lg-1 {\n margin: 0.25rem !important;\n }\n .mt-lg-1,\n .my-lg-1 {\n margin-top: 0.25rem !important;\n }\n .mr-lg-1,\n .mx-lg-1 {\n margin-right: 0.25rem !important;\n }\n .mb-lg-1,\n .my-lg-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-lg-1,\n .mx-lg-1 {\n margin-left: 0.25rem !important;\n }\n .m-lg-2 {\n margin: 0.5rem !important;\n }\n .mt-lg-2,\n .my-lg-2 {\n margin-top: 0.5rem !important;\n }\n .mr-lg-2,\n .mx-lg-2 {\n margin-right: 0.5rem !important;\n }\n .mb-lg-2,\n .my-lg-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-lg-2,\n .mx-lg-2 {\n margin-left: 0.5rem !important;\n }\n .m-lg-3 {\n margin: 1rem !important;\n }\n .mt-lg-3,\n .my-lg-3 {\n margin-top: 1rem !important;\n }\n .mr-lg-3,\n .mx-lg-3 {\n margin-right: 1rem !important;\n }\n .mb-lg-3,\n .my-lg-3 {\n margin-bottom: 1rem !important;\n }\n .ml-lg-3,\n .mx-lg-3 {\n margin-left: 1rem !important;\n }\n .m-lg-4 {\n margin: 1.5rem !important;\n }\n .mt-lg-4,\n .my-lg-4 {\n margin-top: 1.5rem !important;\n }\n .mr-lg-4,\n .mx-lg-4 {\n margin-right: 1.5rem !important;\n }\n .mb-lg-4,\n .my-lg-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-lg-4,\n .mx-lg-4 {\n margin-left: 1.5rem !important;\n }\n .m-lg-5 {\n margin: 3rem !important;\n }\n .mt-lg-5,\n .my-lg-5 {\n margin-top: 3rem !important;\n }\n .mr-lg-5,\n .mx-lg-5 {\n margin-right: 3rem !important;\n }\n .mb-lg-5,\n .my-lg-5 {\n margin-bottom: 3rem !important;\n }\n .ml-lg-5,\n .mx-lg-5 {\n margin-left: 3rem !important;\n }\n .p-lg-0 {\n padding: 0 !important;\n }\n .pt-lg-0,\n .py-lg-0 {\n padding-top: 0 !important;\n }\n .pr-lg-0,\n .px-lg-0 {\n padding-right: 0 !important;\n }\n .pb-lg-0,\n .py-lg-0 {\n padding-bottom: 0 !important;\n }\n .pl-lg-0,\n .px-lg-0 {\n padding-left: 0 !important;\n }\n .p-lg-1 {\n padding: 0.25rem !important;\n }\n .pt-lg-1,\n .py-lg-1 {\n padding-top: 0.25rem !important;\n }\n .pr-lg-1,\n .px-lg-1 {\n padding-right: 0.25rem !important;\n }\n .pb-lg-1,\n .py-lg-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-lg-1,\n .px-lg-1 {\n padding-left: 0.25rem !important;\n }\n .p-lg-2 {\n padding: 0.5rem !important;\n }\n .pt-lg-2,\n .py-lg-2 {\n padding-top: 0.5rem !important;\n }\n .pr-lg-2,\n .px-lg-2 {\n padding-right: 0.5rem !important;\n }\n .pb-lg-2,\n .py-lg-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-lg-2,\n .px-lg-2 {\n padding-left: 0.5rem !important;\n }\n .p-lg-3 {\n padding: 1rem !important;\n }\n .pt-lg-3,\n .py-lg-3 {\n padding-top: 1rem !important;\n }\n .pr-lg-3,\n .px-lg-3 {\n padding-right: 1rem !important;\n }\n .pb-lg-3,\n .py-lg-3 {\n padding-bottom: 1rem !important;\n }\n .pl-lg-3,\n .px-lg-3 {\n padding-left: 1rem !important;\n }\n .p-lg-4 {\n padding: 1.5rem !important;\n }\n .pt-lg-4,\n .py-lg-4 {\n padding-top: 1.5rem !important;\n }\n .pr-lg-4,\n .px-lg-4 {\n padding-right: 1.5rem !important;\n }\n .pb-lg-4,\n .py-lg-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-lg-4,\n .px-lg-4 {\n padding-left: 1.5rem !important;\n }\n .p-lg-5 {\n padding: 3rem !important;\n }\n .pt-lg-5,\n .py-lg-5 {\n padding-top: 3rem !important;\n }\n .pr-lg-5,\n .px-lg-5 {\n padding-right: 3rem !important;\n }\n .pb-lg-5,\n .py-lg-5 {\n padding-bottom: 3rem !important;\n }\n .pl-lg-5,\n .px-lg-5 {\n padding-left: 3rem !important;\n }\n .m-lg-n1 {\n margin: -0.25rem !important;\n }\n .mt-lg-n1,\n .my-lg-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-lg-n1,\n .mx-lg-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-lg-n1,\n .my-lg-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-lg-n1,\n .mx-lg-n1 {\n margin-left: -0.25rem !important;\n }\n .m-lg-n2 {\n margin: -0.5rem !important;\n }\n .mt-lg-n2,\n .my-lg-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-lg-n2,\n .mx-lg-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-lg-n2,\n .my-lg-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-lg-n2,\n .mx-lg-n2 {\n margin-left: -0.5rem !important;\n }\n .m-lg-n3 {\n margin: -1rem !important;\n }\n .mt-lg-n3,\n .my-lg-n3 {\n margin-top: -1rem !important;\n }\n .mr-lg-n3,\n .mx-lg-n3 {\n margin-right: -1rem !important;\n }\n .mb-lg-n3,\n .my-lg-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-lg-n3,\n .mx-lg-n3 {\n margin-left: -1rem !important;\n }\n .m-lg-n4 {\n margin: -1.5rem !important;\n }\n .mt-lg-n4,\n .my-lg-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-lg-n4,\n .mx-lg-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-lg-n4,\n .my-lg-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-lg-n4,\n .mx-lg-n4 {\n margin-left: -1.5rem !important;\n }\n .m-lg-n5 {\n margin: -3rem !important;\n }\n .mt-lg-n5,\n .my-lg-n5 {\n margin-top: -3rem !important;\n }\n .mr-lg-n5,\n .mx-lg-n5 {\n margin-right: -3rem !important;\n }\n .mb-lg-n5,\n .my-lg-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-lg-n5,\n .mx-lg-n5 {\n margin-left: -3rem !important;\n }\n .m-lg-auto {\n margin: auto !important;\n }\n .mt-lg-auto,\n .my-lg-auto {\n margin-top: auto !important;\n }\n .mr-lg-auto,\n .mx-lg-auto {\n margin-right: auto !important;\n }\n .mb-lg-auto,\n .my-lg-auto {\n margin-bottom: auto !important;\n }\n .ml-lg-auto,\n .mx-lg-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 1200px) {\n .m-xl-0 {\n margin: 0 !important;\n }\n .mt-xl-0,\n .my-xl-0 {\n margin-top: 0 !important;\n }\n .mr-xl-0,\n .mx-xl-0 {\n margin-right: 0 !important;\n }\n .mb-xl-0,\n .my-xl-0 {\n margin-bottom: 0 !important;\n }\n .ml-xl-0,\n .mx-xl-0 {\n margin-left: 0 !important;\n }\n .m-xl-1 {\n margin: 0.25rem !important;\n }\n .mt-xl-1,\n .my-xl-1 {\n margin-top: 0.25rem !important;\n }\n .mr-xl-1,\n .mx-xl-1 {\n margin-right: 0.25rem !important;\n }\n .mb-xl-1,\n .my-xl-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-xl-1,\n .mx-xl-1 {\n margin-left: 0.25rem !important;\n }\n .m-xl-2 {\n margin: 0.5rem !important;\n }\n .mt-xl-2,\n .my-xl-2 {\n margin-top: 0.5rem !important;\n }\n .mr-xl-2,\n .mx-xl-2 {\n margin-right: 0.5rem !important;\n }\n .mb-xl-2,\n .my-xl-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-xl-2,\n .mx-xl-2 {\n margin-left: 0.5rem !important;\n }\n .m-xl-3 {\n margin: 1rem !important;\n }\n .mt-xl-3,\n .my-xl-3 {\n margin-top: 1rem !important;\n }\n .mr-xl-3,\n .mx-xl-3 {\n margin-right: 1rem !important;\n }\n .mb-xl-3,\n .my-xl-3 {\n margin-bottom: 1rem !important;\n }\n .ml-xl-3,\n .mx-xl-3 {\n margin-left: 1rem !important;\n }\n .m-xl-4 {\n margin: 1.5rem !important;\n }\n .mt-xl-4,\n .my-xl-4 {\n margin-top: 1.5rem !important;\n }\n .mr-xl-4,\n .mx-xl-4 {\n margin-right: 1.5rem !important;\n }\n .mb-xl-4,\n .my-xl-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-xl-4,\n .mx-xl-4 {\n margin-left: 1.5rem !important;\n }\n .m-xl-5 {\n margin: 3rem !important;\n }\n .mt-xl-5,\n .my-xl-5 {\n margin-top: 3rem !important;\n }\n .mr-xl-5,\n .mx-xl-5 {\n margin-right: 3rem !important;\n }\n .mb-xl-5,\n .my-xl-5 {\n margin-bottom: 3rem !important;\n }\n .ml-xl-5,\n .mx-xl-5 {\n margin-left: 3rem !important;\n }\n .p-xl-0 {\n padding: 0 !important;\n }\n .pt-xl-0,\n .py-xl-0 {\n padding-top: 0 !important;\n }\n .pr-xl-0,\n .px-xl-0 {\n padding-right: 0 !important;\n }\n .pb-xl-0,\n .py-xl-0 {\n padding-bottom: 0 !important;\n }\n .pl-xl-0,\n .px-xl-0 {\n padding-left: 0 !important;\n }\n .p-xl-1 {\n padding: 0.25rem !important;\n }\n .pt-xl-1,\n .py-xl-1 {\n padding-top: 0.25rem !important;\n }\n .pr-xl-1,\n .px-xl-1 {\n padding-right: 0.25rem !important;\n }\n .pb-xl-1,\n .py-xl-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-xl-1,\n .px-xl-1 {\n padding-left: 0.25rem !important;\n }\n .p-xl-2 {\n padding: 0.5rem !important;\n }\n .pt-xl-2,\n .py-xl-2 {\n padding-top: 0.5rem !important;\n }\n .pr-xl-2,\n .px-xl-2 {\n padding-right: 0.5rem !important;\n }\n .pb-xl-2,\n .py-xl-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-xl-2,\n .px-xl-2 {\n padding-left: 0.5rem !important;\n }\n .p-xl-3 {\n padding: 1rem !important;\n }\n .pt-xl-3,\n .py-xl-3 {\n padding-top: 1rem !important;\n }\n .pr-xl-3,\n .px-xl-3 {\n padding-right: 1rem !important;\n }\n .pb-xl-3,\n .py-xl-3 {\n padding-bottom: 1rem !important;\n }\n .pl-xl-3,\n .px-xl-3 {\n padding-left: 1rem !important;\n }\n .p-xl-4 {\n padding: 1.5rem !important;\n }\n .pt-xl-4,\n .py-xl-4 {\n padding-top: 1.5rem !important;\n }\n .pr-xl-4,\n .px-xl-4 {\n padding-right: 1.5rem !important;\n }\n .pb-xl-4,\n .py-xl-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-xl-4,\n .px-xl-4 {\n padding-left: 1.5rem !important;\n }\n .p-xl-5 {\n padding: 3rem !important;\n }\n .pt-xl-5,\n .py-xl-5 {\n padding-top: 3rem !important;\n }\n .pr-xl-5,\n .px-xl-5 {\n padding-right: 3rem !important;\n }\n .pb-xl-5,\n .py-xl-5 {\n padding-bottom: 3rem !important;\n }\n .pl-xl-5,\n .px-xl-5 {\n padding-left: 3rem !important;\n }\n .m-xl-n1 {\n margin: -0.25rem !important;\n }\n .mt-xl-n1,\n .my-xl-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-xl-n1,\n .mx-xl-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-xl-n1,\n .my-xl-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-xl-n1,\n .mx-xl-n1 {\n margin-left: -0.25rem !important;\n }\n .m-xl-n2 {\n margin: -0.5rem !important;\n }\n .mt-xl-n2,\n .my-xl-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-xl-n2,\n .mx-xl-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-xl-n2,\n .my-xl-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-xl-n2,\n .mx-xl-n2 {\n margin-left: -0.5rem !important;\n }\n .m-xl-n3 {\n margin: -1rem !important;\n }\n .mt-xl-n3,\n .my-xl-n3 {\n margin-top: -1rem !important;\n }\n .mr-xl-n3,\n .mx-xl-n3 {\n margin-right: -1rem !important;\n }\n .mb-xl-n3,\n .my-xl-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-xl-n3,\n .mx-xl-n3 {\n margin-left: -1rem !important;\n }\n .m-xl-n4 {\n margin: -1.5rem !important;\n }\n .mt-xl-n4,\n .my-xl-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-xl-n4,\n .mx-xl-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-xl-n4,\n .my-xl-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-xl-n4,\n .mx-xl-n4 {\n margin-left: -1.5rem !important;\n }\n .m-xl-n5 {\n margin: -3rem !important;\n }\n .mt-xl-n5,\n .my-xl-n5 {\n margin-top: -3rem !important;\n }\n .mr-xl-n5,\n .mx-xl-n5 {\n margin-right: -3rem !important;\n }\n .mb-xl-n5,\n .my-xl-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-xl-n5,\n .mx-xl-n5 {\n margin-left: -3rem !important;\n }\n .m-xl-auto {\n margin: auto !important;\n }\n .mt-xl-auto,\n .my-xl-auto {\n margin-top: auto !important;\n }\n .mr-xl-auto,\n .mx-xl-auto {\n margin-right: auto !important;\n }\n .mb-xl-auto,\n .my-xl-auto {\n margin-bottom: auto !important;\n }\n .ml-xl-auto,\n .mx-xl-auto {\n margin-left: auto !important;\n }\n}\n\n.text-monospace {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace !important;\n}\n\n.text-justify {\n text-align: justify !important;\n}\n\n.text-wrap {\n white-space: normal !important;\n}\n\n.text-nowrap {\n white-space: nowrap !important;\n}\n\n.text-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.text-left {\n text-align: left !important;\n}\n\n.text-right {\n text-align: right !important;\n}\n\n.text-center {\n text-align: center !important;\n}\n\n@media (min-width: 576px) {\n .text-sm-left {\n text-align: left !important;\n }\n .text-sm-right {\n text-align: right !important;\n }\n .text-sm-center {\n text-align: center !important;\n }\n}\n\n@media (min-width: 768px) {\n .text-md-left {\n text-align: left !important;\n }\n .text-md-right {\n text-align: right !important;\n }\n .text-md-center {\n text-align: center !important;\n }\n}\n\n@media (min-width: 992px) {\n .text-lg-left {\n text-align: left !important;\n }\n .text-lg-right {\n text-align: right !important;\n }\n .text-lg-center {\n text-align: center !important;\n }\n}\n\n@media (min-width: 1200px) {\n .text-xl-left {\n text-align: left !important;\n }\n .text-xl-right {\n text-align: right !important;\n }\n .text-xl-center {\n text-align: center !important;\n }\n}\n\n.text-lowercase {\n text-transform: lowercase !important;\n}\n\n.text-uppercase {\n text-transform: uppercase !important;\n}\n\n.text-capitalize {\n text-transform: capitalize !important;\n}\n\n.font-weight-light {\n font-weight: 300 !important;\n}\n\n.font-weight-lighter {\n font-weight: lighter !important;\n}\n\n.font-weight-normal {\n font-weight: 400 !important;\n}\n\n.font-weight-bold {\n font-weight: 700 !important;\n}\n\n.font-weight-bolder {\n font-weight: bolder !important;\n}\n\n.font-italic {\n font-style: italic !important;\n}\n\n.text-white {\n color: #fff !important;\n}\n\n.text-primary {\n color: #007bff !important;\n}\n\na.text-primary:hover, a.text-primary:focus {\n color: #0056b3 !important;\n}\n\n.text-secondary {\n color: #6c757d !important;\n}\n\na.text-secondary:hover, a.text-secondary:focus {\n color: #494f54 !important;\n}\n\n.text-success {\n color: #28a745 !important;\n}\n\na.text-success:hover, a.text-success:focus {\n color: #19692c !important;\n}\n\n.text-info {\n color: #17a2b8 !important;\n}\n\na.text-info:hover, a.text-info:focus {\n color: #0f6674 !important;\n}\n\n.text-warning {\n color: #ffc107 !important;\n}\n\na.text-warning:hover, a.text-warning:focus {\n color: #ba8b00 !important;\n}\n\n.text-danger {\n color: #dc3545 !important;\n}\n\na.text-danger:hover, a.text-danger:focus {\n color: #a71d2a !important;\n}\n\n.text-light {\n color: #f8f9fa !important;\n}\n\na.text-light:hover, a.text-light:focus {\n color: #cbd3da !important;\n}\n\n.text-dark {\n color: #343a40 !important;\n}\n\na.text-dark:hover, a.text-dark:focus {\n color: #121416 !important;\n}\n\n.text-body {\n color: #212529 !important;\n}\n\n.text-muted {\n color: #6c757d !important;\n}\n\n.text-black-50 {\n color: rgba(0, 0, 0, 0.5) !important;\n}\n\n.text-white-50 {\n color: rgba(255, 255, 255, 0.5) !important;\n}\n\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n\n.text-decoration-none {\n text-decoration: none !important;\n}\n\n.text-break {\n word-break: break-word !important;\n overflow-wrap: break-word !important;\n}\n\n.text-reset {\n color: inherit !important;\n}\n\n.visible {\n visibility: visible !important;\n}\n\n.invisible {\n visibility: hidden !important;\n}\n\n@media print {\n *,\n *::before,\n *::after {\n text-shadow: none !important;\n box-shadow: none !important;\n }\n a:not(.btn) {\n text-decoration: underline;\n }\n abbr[title]::after {\n content: \" (\" attr(title) \")\";\n }\n pre {\n white-space: pre-wrap !important;\n }\n pre,\n blockquote {\n border: 1px solid #adb5bd;\n page-break-inside: avoid;\n }\n thead {\n display: table-header-group;\n }\n tr,\n img {\n page-break-inside: avoid;\n }\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n h2,\n h3 {\n page-break-after: avoid;\n }\n @page {\n size: a3;\n }\n body {\n min-width: 992px !important;\n }\n .container {\n min-width: 992px !important;\n }\n .navbar {\n display: none;\n }\n .badge {\n border: 1px solid #000;\n }\n .table {\n border-collapse: collapse !important;\n }\n .table td,\n .table th {\n background-color: #fff !important;\n }\n .table-bordered th,\n .table-bordered td {\n border: 1px solid #dee2e6 !important;\n }\n .table-dark {\n color: inherit;\n }\n .table-dark th,\n .table-dark td,\n .table-dark thead th,\n .table-dark tbody + tbody {\n border-color: #dee2e6;\n }\n .table .thead-dark th {\n color: inherit;\n border-color: #dee2e6;\n }\n}\n/*# sourceMappingURL=bootstrap.css.map */","// stylelint-disable property-blacklist, scss/dollar-variable-default\n\n// SCSS RFS mixin\n//\n// Automated font-resizing\n//\n// See https://github.com/twbs/rfs\n\n// Configuration\n\n// Base font size\n$rfs-base-font-size: 1.25rem !default;\n$rfs-font-size-unit: rem !default;\n\n// Breakpoint at where font-size starts decreasing if screen width is smaller\n$rfs-breakpoint: 1200px !default;\n$rfs-breakpoint-unit: px !default;\n\n// Resize font-size based on screen height and width\n$rfs-two-dimensional: false !default;\n\n// Factor of decrease\n$rfs-factor: 10 !default;\n\n@if type-of($rfs-factor) != \"number\" or $rfs-factor <= 1 {\n @error \"`#{$rfs-factor}` is not a valid $rfs-factor, it must be greater than 1.\";\n}\n\n// Generate enable or disable classes. Possibilities: false, \"enable\" or \"disable\"\n$rfs-class: false !default;\n\n// 1 rem = $rfs-rem-value px\n$rfs-rem-value: 16 !default;\n\n// Safari iframe resize bug: https://github.com/twbs/rfs/issues/14\n$rfs-safari-iframe-resize-bug-fix: false !default;\n\n// Disable RFS by setting $enable-responsive-font-sizes to false\n$enable-responsive-font-sizes: true !default;\n\n// Cache $rfs-base-font-size unit\n$rfs-base-font-size-unit: unit($rfs-base-font-size);\n\n// Remove px-unit from $rfs-base-font-size for calculations\n@if $rfs-base-font-size-unit == \"px\" {\n $rfs-base-font-size: $rfs-base-font-size / ($rfs-base-font-size * 0 + 1);\n}\n@else if $rfs-base-font-size-unit == \"rem\" {\n $rfs-base-font-size: $rfs-base-font-size / ($rfs-base-font-size * 0 + 1 / $rfs-rem-value);\n}\n\n// Cache $rfs-breakpoint unit to prevent multiple calls\n$rfs-breakpoint-unit-cache: unit($rfs-breakpoint);\n\n// Remove unit from $rfs-breakpoint for calculations\n@if $rfs-breakpoint-unit-cache == \"px\" {\n $rfs-breakpoint: $rfs-breakpoint / ($rfs-breakpoint * 0 + 1);\n}\n@else if $rfs-breakpoint-unit-cache == \"rem\" or $rfs-breakpoint-unit-cache == \"em\" {\n $rfs-breakpoint: $rfs-breakpoint / ($rfs-breakpoint * 0 + 1 / $rfs-rem-value);\n}\n\n// Responsive font-size mixin\n@mixin rfs($fs, $important: false) {\n // Cache $fs unit\n $fs-unit: if(type-of($fs) == \"number\", unit($fs), false);\n\n // Add !important suffix if needed\n $rfs-suffix: if($important, \" !important\", \"\");\n\n // If $fs isn't a number (like inherit) or $fs has a unit (not px or rem, like 1.5em) or $ is 0, just print the value\n @if not $fs-unit or $fs-unit != \"\" and $fs-unit != \"px\" and $fs-unit != \"rem\" or $fs == 0 {\n font-size: #{$fs}#{$rfs-suffix};\n }\n @else {\n // Variables for storing static and fluid rescaling\n $rfs-static: null;\n $rfs-fluid: null;\n\n // Remove px-unit from $fs for calculations\n @if $fs-unit == \"px\" {\n $fs: $fs / ($fs * 0 + 1);\n }\n @else if $fs-unit == \"rem\" {\n $fs: $fs / ($fs * 0 + 1 / $rfs-rem-value);\n }\n\n // Set default font-size\n @if $rfs-font-size-unit == rem {\n $rfs-static: #{$fs / $rfs-rem-value}rem#{$rfs-suffix};\n }\n @else if $rfs-font-size-unit == px {\n $rfs-static: #{$fs}px#{$rfs-suffix};\n }\n @else {\n @error \"`#{$rfs-font-size-unit}` is not a valid unit for $rfs-font-size-unit. Use `px` or `rem`.\";\n }\n\n // Only add media query if font-size is bigger as the minimum font-size\n // If $rfs-factor == 1, no rescaling will take place\n @if $fs > $rfs-base-font-size and $enable-responsive-font-sizes {\n $min-width: null;\n $variable-unit: null;\n\n // Calculate minimum font-size for given font-size\n $fs-min: $rfs-base-font-size + ($fs - $rfs-base-font-size) / $rfs-factor;\n\n // Calculate difference between given font-size and minimum font-size for given font-size\n $fs-diff: $fs - $fs-min;\n\n // Base font-size formatting\n // No need to check if the unit is valid, because we did that before\n $min-width: if($rfs-font-size-unit == rem, #{$fs-min / $rfs-rem-value}rem, #{$fs-min}px);\n\n // If two-dimensional, use smallest of screen width and height\n $variable-unit: if($rfs-two-dimensional, vmin, vw);\n\n // Calculate the variable width between 0 and $rfs-breakpoint\n $variable-width: #{$fs-diff * 100 / $rfs-breakpoint}#{$variable-unit};\n\n // Set the calculated font-size.\n $rfs-fluid: calc(#{$min-width} + #{$variable-width}) #{$rfs-suffix};\n }\n\n // Rendering\n @if $rfs-fluid == null {\n // Only render static font-size if no fluid font-size is available\n font-size: $rfs-static;\n }\n @else {\n $mq-value: null;\n\n // RFS breakpoint formatting\n @if $rfs-breakpoint-unit == em or $rfs-breakpoint-unit == rem {\n $mq-value: #{$rfs-breakpoint / $rfs-rem-value}#{$rfs-breakpoint-unit};\n }\n @else if $rfs-breakpoint-unit == px {\n $mq-value: #{$rfs-breakpoint}px;\n }\n @else {\n @error \"`#{$rfs-breakpoint-unit}` is not a valid unit for $rfs-breakpoint-unit. Use `px`, `em` or `rem`.\";\n }\n\n @if $rfs-class == \"disable\" {\n // Adding an extra class increases specificity,\n // which prevents the media query to override the font size\n &,\n .disable-responsive-font-size &,\n &.disable-responsive-font-size {\n font-size: $rfs-static;\n }\n }\n @else {\n font-size: $rfs-static;\n }\n\n @if $rfs-two-dimensional {\n @media (max-width: #{$mq-value}), (max-height: #{$mq-value}) {\n @if $rfs-class == \"enable\" {\n .enable-responsive-font-size &,\n &.enable-responsive-font-size {\n font-size: $rfs-fluid;\n }\n }\n @else {\n font-size: $rfs-fluid;\n }\n\n @if $rfs-safari-iframe-resize-bug-fix {\n // stylelint-disable-next-line length-zero-no-unit\n min-width: 0vw;\n }\n }\n }\n @else {\n @media (max-width: #{$mq-value}) {\n @if $rfs-class == \"enable\" {\n .enable-responsive-font-size &,\n &.enable-responsive-font-size {\n font-size: $rfs-fluid;\n }\n }\n @else {\n font-size: $rfs-fluid;\n }\n\n @if $rfs-safari-iframe-resize-bug-fix {\n // stylelint-disable-next-line length-zero-no-unit\n min-width: 0vw;\n }\n }\n }\n }\n }\n}\n\n// The font-size & responsive-font-size mixin uses RFS to rescale font sizes\n@mixin font-size($fs, $important: false) {\n @include rfs($fs, $important);\n}\n\n@mixin responsive-font-size($fs, $important: false) {\n @include rfs($fs, $important);\n}\n","/*!\n * Bootstrap v4.3.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 The Bootstrap Authors\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n:root {\n --blue: #007bff;\n --indigo: #6610f2;\n --purple: #6f42c1;\n --pink: #e83e8c;\n --red: #dc3545;\n --orange: #fd7e14;\n --yellow: #ffc107;\n --green: #28a745;\n --teal: #20c997;\n --cyan: #17a2b8;\n --white: #fff;\n --gray: #6c757d;\n --gray-dark: #343a40;\n --primary: #007bff;\n --secondary: #6c757d;\n --success: #28a745;\n --info: #17a2b8;\n --warning: #ffc107;\n --danger: #dc3545;\n --light: #f8f9fa;\n --dark: #343a40;\n --breakpoint-xs: 0;\n --breakpoint-sm: 576px;\n --breakpoint-md: 768px;\n --breakpoint-lg: 992px;\n --breakpoint-xl: 1200px;\n --font-family-sans-serif: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\nhtml {\n font-family: sans-serif;\n line-height: 1.15;\n -webkit-text-size-adjust: 100%;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\narticle, aside, figcaption, figure, footer, header, hgroup, main, nav, section {\n display: block;\n}\n\nbody {\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #212529;\n text-align: left;\n background-color: #fff;\n}\n\n[tabindex=\"-1\"]:focus {\n outline: 0 !important;\n}\n\nhr {\n box-sizing: content-box;\n height: 0;\n overflow: visible;\n}\n\nh1, h2, h3, h4, h5, h6 {\n margin-top: 0;\n margin-bottom: 0.5rem;\n}\n\np {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nabbr[title],\nabbr[data-original-title] {\n text-decoration: underline;\n text-decoration: underline dotted;\n cursor: help;\n border-bottom: 0;\n text-decoration-skip-ink: none;\n}\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: 700;\n}\n\ndd {\n margin-bottom: .5rem;\n margin-left: 0;\n}\n\nblockquote {\n margin: 0 0 1rem;\n}\n\nb,\nstrong {\n font-weight: bolder;\n}\n\nsmall {\n font-size: 80%;\n}\n\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -.25em;\n}\n\nsup {\n top: -.5em;\n}\n\na {\n color: #007bff;\n text-decoration: none;\n background-color: transparent;\n}\n\na:hover {\n color: #0056b3;\n text-decoration: underline;\n}\n\na:not([href]):not([tabindex]) {\n color: inherit;\n text-decoration: none;\n}\n\na:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {\n color: inherit;\n text-decoration: none;\n}\n\na:not([href]):not([tabindex]):focus {\n outline: 0;\n}\n\npre,\ncode,\nkbd,\nsamp {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n font-size: 1em;\n}\n\npre {\n margin-top: 0;\n margin-bottom: 1rem;\n overflow: auto;\n}\n\nfigure {\n margin: 0 0 1rem;\n}\n\nimg {\n vertical-align: middle;\n border-style: none;\n}\n\nsvg {\n overflow: hidden;\n vertical-align: middle;\n}\n\ntable {\n border-collapse: collapse;\n}\n\ncaption {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n color: #6c757d;\n text-align: left;\n caption-side: bottom;\n}\n\nth {\n text-align: inherit;\n}\n\nlabel {\n display: inline-block;\n margin-bottom: 0.5rem;\n}\n\nbutton {\n border-radius: 0;\n}\n\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\nbutton,\ninput {\n overflow: visible;\n}\n\nbutton,\nselect {\n text-transform: none;\n}\n\nselect {\n word-wrap: normal;\n}\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\nbutton:not(:disabled),\n[type=\"button\"]:not(:disabled),\n[type=\"reset\"]:not(:disabled),\n[type=\"submit\"]:not(:disabled) {\n cursor: pointer;\n}\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n box-sizing: border-box;\n padding: 0;\n}\n\ninput[type=\"date\"],\ninput[type=\"time\"],\ninput[type=\"datetime-local\"],\ninput[type=\"month\"] {\n -webkit-appearance: listbox;\n}\n\ntextarea {\n overflow: auto;\n resize: vertical;\n}\n\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n max-width: 100%;\n padding: 0;\n margin-bottom: .5rem;\n font-size: 1.5rem;\n line-height: inherit;\n color: inherit;\n white-space: normal;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n outline-offset: -2px;\n -webkit-appearance: none;\n}\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-file-upload-button {\n font: inherit;\n -webkit-appearance: button;\n}\n\noutput {\n display: inline-block;\n}\n\nsummary {\n display: list-item;\n cursor: pointer;\n}\n\ntemplate {\n display: none;\n}\n\n[hidden] {\n display: none !important;\n}\n\nh1, h2, h3, h4, h5, h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n margin-bottom: 0.5rem;\n font-weight: 500;\n line-height: 1.2;\n}\n\nh1, .h1 {\n font-size: 2.5rem;\n}\n\nh2, .h2 {\n font-size: 2rem;\n}\n\nh3, .h3 {\n font-size: 1.75rem;\n}\n\nh4, .h4 {\n font-size: 1.5rem;\n}\n\nh5, .h5 {\n font-size: 1.25rem;\n}\n\nh6, .h6 {\n font-size: 1rem;\n}\n\n.lead {\n font-size: 1.25rem;\n font-weight: 300;\n}\n\n.display-1 {\n font-size: 6rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-2 {\n font-size: 5.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-3 {\n font-size: 4.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-4 {\n font-size: 3.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\nhr {\n margin-top: 1rem;\n margin-bottom: 1rem;\n border: 0;\n border-top: 1px solid rgba(0, 0, 0, 0.1);\n}\n\nsmall,\n.small {\n font-size: 80%;\n font-weight: 400;\n}\n\nmark,\n.mark {\n padding: 0.2em;\n background-color: #fcf8e3;\n}\n\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline-item {\n display: inline-block;\n}\n\n.list-inline-item:not(:last-child) {\n margin-right: 0.5rem;\n}\n\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\n\n.blockquote {\n margin-bottom: 1rem;\n font-size: 1.25rem;\n}\n\n.blockquote-footer {\n display: block;\n font-size: 80%;\n color: #6c757d;\n}\n\n.blockquote-footer::before {\n content: \"\\2014\\00A0\";\n}\n\n.img-fluid {\n max-width: 100%;\n height: auto;\n}\n\n.img-thumbnail {\n padding: 0.25rem;\n background-color: #fff;\n border: 1px solid #dee2e6;\n border-radius: 0.25rem;\n max-width: 100%;\n height: auto;\n}\n\n.figure {\n display: inline-block;\n}\n\n.figure-img {\n margin-bottom: 0.5rem;\n line-height: 1;\n}\n\n.figure-caption {\n font-size: 90%;\n color: #6c757d;\n}\n\ncode {\n font-size: 87.5%;\n color: #e83e8c;\n word-break: break-word;\n}\n\na > code {\n color: inherit;\n}\n\nkbd {\n padding: 0.2rem 0.4rem;\n font-size: 87.5%;\n color: #fff;\n background-color: #212529;\n border-radius: 0.2rem;\n}\n\nkbd kbd {\n padding: 0;\n font-size: 100%;\n font-weight: 700;\n}\n\npre {\n display: block;\n font-size: 87.5%;\n color: #212529;\n}\n\npre code {\n font-size: inherit;\n color: inherit;\n word-break: normal;\n}\n\n.pre-scrollable {\n max-height: 340px;\n overflow-y: scroll;\n}\n\n.container {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n@media (min-width: 576px) {\n .container {\n max-width: 540px;\n }\n}\n\n@media (min-width: 768px) {\n .container {\n max-width: 720px;\n }\n}\n\n@media (min-width: 992px) {\n .container {\n max-width: 960px;\n }\n}\n\n@media (min-width: 1200px) {\n .container {\n max-width: 1140px;\n }\n}\n\n.container-fluid {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n.row {\n display: flex;\n flex-wrap: wrap;\n margin-right: -15px;\n margin-left: -15px;\n}\n\n.no-gutters {\n margin-right: 0;\n margin-left: 0;\n}\n\n.no-gutters > .col,\n.no-gutters > [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n}\n\n.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,\n.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,\n.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,\n.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,\n.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,\n.col-xl-auto {\n position: relative;\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n}\n\n.col {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n}\n\n.col-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n}\n\n.col-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n}\n\n.col-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n}\n\n.col-3 {\n flex: 0 0 25%;\n max-width: 25%;\n}\n\n.col-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n}\n\n.col-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n}\n\n.col-6 {\n flex: 0 0 50%;\n max-width: 50%;\n}\n\n.col-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n}\n\n.col-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n}\n\n.col-9 {\n flex: 0 0 75%;\n max-width: 75%;\n}\n\n.col-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n}\n\n.col-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n}\n\n.col-12 {\n flex: 0 0 100%;\n max-width: 100%;\n}\n\n.order-first {\n order: -1;\n}\n\n.order-last {\n order: 13;\n}\n\n.order-0 {\n order: 0;\n}\n\n.order-1 {\n order: 1;\n}\n\n.order-2 {\n order: 2;\n}\n\n.order-3 {\n order: 3;\n}\n\n.order-4 {\n order: 4;\n}\n\n.order-5 {\n order: 5;\n}\n\n.order-6 {\n order: 6;\n}\n\n.order-7 {\n order: 7;\n}\n\n.order-8 {\n order: 8;\n}\n\n.order-9 {\n order: 9;\n}\n\n.order-10 {\n order: 10;\n}\n\n.order-11 {\n order: 11;\n}\n\n.order-12 {\n order: 12;\n}\n\n.offset-1 {\n margin-left: 8.333333%;\n}\n\n.offset-2 {\n margin-left: 16.666667%;\n}\n\n.offset-3 {\n margin-left: 25%;\n}\n\n.offset-4 {\n margin-left: 33.333333%;\n}\n\n.offset-5 {\n margin-left: 41.666667%;\n}\n\n.offset-6 {\n margin-left: 50%;\n}\n\n.offset-7 {\n margin-left: 58.333333%;\n}\n\n.offset-8 {\n margin-left: 66.666667%;\n}\n\n.offset-9 {\n margin-left: 75%;\n}\n\n.offset-10 {\n margin-left: 83.333333%;\n}\n\n.offset-11 {\n margin-left: 91.666667%;\n}\n\n@media (min-width: 576px) {\n .col-sm {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-sm-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-sm-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-sm-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-sm-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-sm-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-sm-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-sm-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-sm-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-sm-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-sm-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-sm-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-sm-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-sm-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-sm-first {\n order: -1;\n }\n .order-sm-last {\n order: 13;\n }\n .order-sm-0 {\n order: 0;\n }\n .order-sm-1 {\n order: 1;\n }\n .order-sm-2 {\n order: 2;\n }\n .order-sm-3 {\n order: 3;\n }\n .order-sm-4 {\n order: 4;\n }\n .order-sm-5 {\n order: 5;\n }\n .order-sm-6 {\n order: 6;\n }\n .order-sm-7 {\n order: 7;\n }\n .order-sm-8 {\n order: 8;\n }\n .order-sm-9 {\n order: 9;\n }\n .order-sm-10 {\n order: 10;\n }\n .order-sm-11 {\n order: 11;\n }\n .order-sm-12 {\n order: 12;\n }\n .offset-sm-0 {\n margin-left: 0;\n }\n .offset-sm-1 {\n margin-left: 8.333333%;\n }\n .offset-sm-2 {\n margin-left: 16.666667%;\n }\n .offset-sm-3 {\n margin-left: 25%;\n }\n .offset-sm-4 {\n margin-left: 33.333333%;\n }\n .offset-sm-5 {\n margin-left: 41.666667%;\n }\n .offset-sm-6 {\n margin-left: 50%;\n }\n .offset-sm-7 {\n margin-left: 58.333333%;\n }\n .offset-sm-8 {\n margin-left: 66.666667%;\n }\n .offset-sm-9 {\n margin-left: 75%;\n }\n .offset-sm-10 {\n margin-left: 83.333333%;\n }\n .offset-sm-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 768px) {\n .col-md {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-md-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-md-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-md-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-md-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-md-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-md-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-md-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-md-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-md-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-md-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-md-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-md-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-md-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-md-first {\n order: -1;\n }\n .order-md-last {\n order: 13;\n }\n .order-md-0 {\n order: 0;\n }\n .order-md-1 {\n order: 1;\n }\n .order-md-2 {\n order: 2;\n }\n .order-md-3 {\n order: 3;\n }\n .order-md-4 {\n order: 4;\n }\n .order-md-5 {\n order: 5;\n }\n .order-md-6 {\n order: 6;\n }\n .order-md-7 {\n order: 7;\n }\n .order-md-8 {\n order: 8;\n }\n .order-md-9 {\n order: 9;\n }\n .order-md-10 {\n order: 10;\n }\n .order-md-11 {\n order: 11;\n }\n .order-md-12 {\n order: 12;\n }\n .offset-md-0 {\n margin-left: 0;\n }\n .offset-md-1 {\n margin-left: 8.333333%;\n }\n .offset-md-2 {\n margin-left: 16.666667%;\n }\n .offset-md-3 {\n margin-left: 25%;\n }\n .offset-md-4 {\n margin-left: 33.333333%;\n }\n .offset-md-5 {\n margin-left: 41.666667%;\n }\n .offset-md-6 {\n margin-left: 50%;\n }\n .offset-md-7 {\n margin-left: 58.333333%;\n }\n .offset-md-8 {\n margin-left: 66.666667%;\n }\n .offset-md-9 {\n margin-left: 75%;\n }\n .offset-md-10 {\n margin-left: 83.333333%;\n }\n .offset-md-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 992px) {\n .col-lg {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-lg-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-lg-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-lg-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-lg-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-lg-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-lg-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-lg-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-lg-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-lg-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-lg-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-lg-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-lg-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-lg-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-lg-first {\n order: -1;\n }\n .order-lg-last {\n order: 13;\n }\n .order-lg-0 {\n order: 0;\n }\n .order-lg-1 {\n order: 1;\n }\n .order-lg-2 {\n order: 2;\n }\n .order-lg-3 {\n order: 3;\n }\n .order-lg-4 {\n order: 4;\n }\n .order-lg-5 {\n order: 5;\n }\n .order-lg-6 {\n order: 6;\n }\n .order-lg-7 {\n order: 7;\n }\n .order-lg-8 {\n order: 8;\n }\n .order-lg-9 {\n order: 9;\n }\n .order-lg-10 {\n order: 10;\n }\n .order-lg-11 {\n order: 11;\n }\n .order-lg-12 {\n order: 12;\n }\n .offset-lg-0 {\n margin-left: 0;\n }\n .offset-lg-1 {\n margin-left: 8.333333%;\n }\n .offset-lg-2 {\n margin-left: 16.666667%;\n }\n .offset-lg-3 {\n margin-left: 25%;\n }\n .offset-lg-4 {\n margin-left: 33.333333%;\n }\n .offset-lg-5 {\n margin-left: 41.666667%;\n }\n .offset-lg-6 {\n margin-left: 50%;\n }\n .offset-lg-7 {\n margin-left: 58.333333%;\n }\n .offset-lg-8 {\n margin-left: 66.666667%;\n }\n .offset-lg-9 {\n margin-left: 75%;\n }\n .offset-lg-10 {\n margin-left: 83.333333%;\n }\n .offset-lg-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 1200px) {\n .col-xl {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-xl-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-xl-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-xl-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-xl-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-xl-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-xl-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-xl-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-xl-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-xl-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-xl-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-xl-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-xl-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-xl-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-xl-first {\n order: -1;\n }\n .order-xl-last {\n order: 13;\n }\n .order-xl-0 {\n order: 0;\n }\n .order-xl-1 {\n order: 1;\n }\n .order-xl-2 {\n order: 2;\n }\n .order-xl-3 {\n order: 3;\n }\n .order-xl-4 {\n order: 4;\n }\n .order-xl-5 {\n order: 5;\n }\n .order-xl-6 {\n order: 6;\n }\n .order-xl-7 {\n order: 7;\n }\n .order-xl-8 {\n order: 8;\n }\n .order-xl-9 {\n order: 9;\n }\n .order-xl-10 {\n order: 10;\n }\n .order-xl-11 {\n order: 11;\n }\n .order-xl-12 {\n order: 12;\n }\n .offset-xl-0 {\n margin-left: 0;\n }\n .offset-xl-1 {\n margin-left: 8.333333%;\n }\n .offset-xl-2 {\n margin-left: 16.666667%;\n }\n .offset-xl-3 {\n margin-left: 25%;\n }\n .offset-xl-4 {\n margin-left: 33.333333%;\n }\n .offset-xl-5 {\n margin-left: 41.666667%;\n }\n .offset-xl-6 {\n margin-left: 50%;\n }\n .offset-xl-7 {\n margin-left: 58.333333%;\n }\n .offset-xl-8 {\n margin-left: 66.666667%;\n }\n .offset-xl-9 {\n margin-left: 75%;\n }\n .offset-xl-10 {\n margin-left: 83.333333%;\n }\n .offset-xl-11 {\n margin-left: 91.666667%;\n }\n}\n\n.table {\n width: 100%;\n margin-bottom: 1rem;\n color: #212529;\n}\n\n.table th,\n.table td {\n padding: 0.75rem;\n vertical-align: top;\n border-top: 1px solid #dee2e6;\n}\n\n.table thead th {\n vertical-align: bottom;\n border-bottom: 2px solid #dee2e6;\n}\n\n.table tbody + tbody {\n border-top: 2px solid #dee2e6;\n}\n\n.table-sm th,\n.table-sm td {\n padding: 0.3rem;\n}\n\n.table-bordered {\n border: 1px solid #dee2e6;\n}\n\n.table-bordered th,\n.table-bordered td {\n border: 1px solid #dee2e6;\n}\n\n.table-bordered thead th,\n.table-bordered thead td {\n border-bottom-width: 2px;\n}\n\n.table-borderless th,\n.table-borderless td,\n.table-borderless thead th,\n.table-borderless tbody + tbody {\n border: 0;\n}\n\n.table-striped tbody tr:nth-of-type(odd) {\n background-color: rgba(0, 0, 0, 0.05);\n}\n\n.table-hover tbody tr:hover {\n color: #212529;\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table-primary,\n.table-primary > th,\n.table-primary > td {\n background-color: #b8daff;\n}\n\n.table-primary th,\n.table-primary td,\n.table-primary thead th,\n.table-primary tbody + tbody {\n border-color: #7abaff;\n}\n\n.table-hover .table-primary:hover {\n background-color: #9fcdff;\n}\n\n.table-hover .table-primary:hover > td,\n.table-hover .table-primary:hover > th {\n background-color: #9fcdff;\n}\n\n.table-secondary,\n.table-secondary > th,\n.table-secondary > td {\n background-color: #d6d8db;\n}\n\n.table-secondary th,\n.table-secondary td,\n.table-secondary thead th,\n.table-secondary tbody + tbody {\n border-color: #b3b7bb;\n}\n\n.table-hover .table-secondary:hover {\n background-color: #c8cbcf;\n}\n\n.table-hover .table-secondary:hover > td,\n.table-hover .table-secondary:hover > th {\n background-color: #c8cbcf;\n}\n\n.table-success,\n.table-success > th,\n.table-success > td {\n background-color: #c3e6cb;\n}\n\n.table-success th,\n.table-success td,\n.table-success thead th,\n.table-success tbody + tbody {\n border-color: #8fd19e;\n}\n\n.table-hover .table-success:hover {\n background-color: #b1dfbb;\n}\n\n.table-hover .table-success:hover > td,\n.table-hover .table-success:hover > th {\n background-color: #b1dfbb;\n}\n\n.table-info,\n.table-info > th,\n.table-info > td {\n background-color: #bee5eb;\n}\n\n.table-info th,\n.table-info td,\n.table-info thead th,\n.table-info tbody + tbody {\n border-color: #86cfda;\n}\n\n.table-hover .table-info:hover {\n background-color: #abdde5;\n}\n\n.table-hover .table-info:hover > td,\n.table-hover .table-info:hover > th {\n background-color: #abdde5;\n}\n\n.table-warning,\n.table-warning > th,\n.table-warning > td {\n background-color: #ffeeba;\n}\n\n.table-warning th,\n.table-warning td,\n.table-warning thead th,\n.table-warning tbody + tbody {\n border-color: #ffdf7e;\n}\n\n.table-hover .table-warning:hover {\n background-color: #ffe8a1;\n}\n\n.table-hover .table-warning:hover > td,\n.table-hover .table-warning:hover > th {\n background-color: #ffe8a1;\n}\n\n.table-danger,\n.table-danger > th,\n.table-danger > td {\n background-color: #f5c6cb;\n}\n\n.table-danger th,\n.table-danger td,\n.table-danger thead th,\n.table-danger tbody + tbody {\n border-color: #ed969e;\n}\n\n.table-hover .table-danger:hover {\n background-color: #f1b0b7;\n}\n\n.table-hover .table-danger:hover > td,\n.table-hover .table-danger:hover > th {\n background-color: #f1b0b7;\n}\n\n.table-light,\n.table-light > th,\n.table-light > td {\n background-color: #fdfdfe;\n}\n\n.table-light th,\n.table-light td,\n.table-light thead th,\n.table-light tbody + tbody {\n border-color: #fbfcfc;\n}\n\n.table-hover .table-light:hover {\n background-color: #ececf6;\n}\n\n.table-hover .table-light:hover > td,\n.table-hover .table-light:hover > th {\n background-color: #ececf6;\n}\n\n.table-dark,\n.table-dark > th,\n.table-dark > td {\n background-color: #c6c8ca;\n}\n\n.table-dark th,\n.table-dark td,\n.table-dark thead th,\n.table-dark tbody + tbody {\n border-color: #95999c;\n}\n\n.table-hover .table-dark:hover {\n background-color: #b9bbbe;\n}\n\n.table-hover .table-dark:hover > td,\n.table-hover .table-dark:hover > th {\n background-color: #b9bbbe;\n}\n\n.table-active,\n.table-active > th,\n.table-active > td {\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table-hover .table-active:hover {\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table-hover .table-active:hover > td,\n.table-hover .table-active:hover > th {\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table .thead-dark th {\n color: #fff;\n background-color: #343a40;\n border-color: #454d55;\n}\n\n.table .thead-light th {\n color: #495057;\n background-color: #e9ecef;\n border-color: #dee2e6;\n}\n\n.table-dark {\n color: #fff;\n background-color: #343a40;\n}\n\n.table-dark th,\n.table-dark td,\n.table-dark thead th {\n border-color: #454d55;\n}\n\n.table-dark.table-bordered {\n border: 0;\n}\n\n.table-dark.table-striped tbody tr:nth-of-type(odd) {\n background-color: rgba(255, 255, 255, 0.05);\n}\n\n.table-dark.table-hover tbody tr:hover {\n color: #fff;\n background-color: rgba(255, 255, 255, 0.075);\n}\n\n@media (max-width: 575.98px) {\n .table-responsive-sm {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n .table-responsive-sm > .table-bordered {\n border: 0;\n }\n}\n\n@media (max-width: 767.98px) {\n .table-responsive-md {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n .table-responsive-md > .table-bordered {\n border: 0;\n }\n}\n\n@media (max-width: 991.98px) {\n .table-responsive-lg {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n .table-responsive-lg > .table-bordered {\n border: 0;\n }\n}\n\n@media (max-width: 1199.98px) {\n .table-responsive-xl {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n .table-responsive-xl > .table-bordered {\n border: 0;\n }\n}\n\n.table-responsive {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n.table-responsive > .table-bordered {\n border: 0;\n}\n\n.form-control {\n display: block;\n width: 100%;\n height: calc(1.5em + 0.75rem + 2px);\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .form-control {\n transition: none;\n }\n}\n\n.form-control::-ms-expand {\n background-color: transparent;\n border: 0;\n}\n\n.form-control:focus {\n color: #495057;\n background-color: #fff;\n border-color: #80bdff;\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.form-control::placeholder {\n color: #6c757d;\n opacity: 1;\n}\n\n.form-control:disabled, .form-control[readonly] {\n background-color: #e9ecef;\n opacity: 1;\n}\n\nselect.form-control:focus::-ms-value {\n color: #495057;\n background-color: #fff;\n}\n\n.form-control-file,\n.form-control-range {\n display: block;\n width: 100%;\n}\n\n.col-form-label {\n padding-top: calc(0.375rem + 1px);\n padding-bottom: calc(0.375rem + 1px);\n margin-bottom: 0;\n font-size: inherit;\n line-height: 1.5;\n}\n\n.col-form-label-lg {\n padding-top: calc(0.5rem + 1px);\n padding-bottom: calc(0.5rem + 1px);\n font-size: 1.25rem;\n line-height: 1.5;\n}\n\n.col-form-label-sm {\n padding-top: calc(0.25rem + 1px);\n padding-bottom: calc(0.25rem + 1px);\n font-size: 0.875rem;\n line-height: 1.5;\n}\n\n.form-control-plaintext {\n display: block;\n width: 100%;\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n margin-bottom: 0;\n line-height: 1.5;\n color: #212529;\n background-color: transparent;\n border: solid transparent;\n border-width: 1px 0;\n}\n\n.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {\n padding-right: 0;\n padding-left: 0;\n}\n\n.form-control-sm {\n height: calc(1.5em + 0.5rem + 2px);\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n border-radius: 0.2rem;\n}\n\n.form-control-lg {\n height: calc(1.5em + 1rem + 2px);\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n line-height: 1.5;\n border-radius: 0.3rem;\n}\n\nselect.form-control[size], select.form-control[multiple] {\n height: auto;\n}\n\ntextarea.form-control {\n height: auto;\n}\n\n.form-group {\n margin-bottom: 1rem;\n}\n\n.form-text {\n display: block;\n margin-top: 0.25rem;\n}\n\n.form-row {\n display: flex;\n flex-wrap: wrap;\n margin-right: -5px;\n margin-left: -5px;\n}\n\n.form-row > .col,\n.form-row > [class*=\"col-\"] {\n padding-right: 5px;\n padding-left: 5px;\n}\n\n.form-check {\n position: relative;\n display: block;\n padding-left: 1.25rem;\n}\n\n.form-check-input {\n position: absolute;\n margin-top: 0.3rem;\n margin-left: -1.25rem;\n}\n\n.form-check-input:disabled ~ .form-check-label {\n color: #6c757d;\n}\n\n.form-check-label {\n margin-bottom: 0;\n}\n\n.form-check-inline {\n display: inline-flex;\n align-items: center;\n padding-left: 0;\n margin-right: 0.75rem;\n}\n\n.form-check-inline .form-check-input {\n position: static;\n margin-top: 0;\n margin-right: 0.3125rem;\n margin-left: 0;\n}\n\n.valid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 80%;\n color: #28a745;\n}\n\n.valid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: .1rem;\n font-size: 0.875rem;\n line-height: 1.5;\n color: #fff;\n background-color: rgba(40, 167, 69, 0.9);\n border-radius: 0.25rem;\n}\n\n.was-validated .form-control:valid, .form-control.is-valid {\n border-color: #28a745;\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%208%208'%3e%3cpath%20fill='%2328a745'%20d='M2.3%206.73L.6%204.53c-.4-1.04.46-1.4%201.1-.8l1.1%201.4%203.4-3.8c.6-.63%201.6-.27%201.2.7l-4%204.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e/");\n background-repeat: no-repeat;\n background-position: center right calc(0.375em + 0.1875rem);\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n\n.was-validated .form-control:valid:focus, .form-control.is-valid:focus {\n border-color: #28a745;\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.was-validated .form-control:valid ~ .valid-feedback,\n.was-validated .form-control:valid ~ .valid-tooltip, .form-control.is-valid ~ .valid-feedback,\n.form-control.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated textarea.form-control:valid, textarea.form-control.is-valid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n\n.was-validated .custom-select:valid, .custom-select.is-valid {\n border-color: #28a745;\n padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);\n background: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%204%205'%3e%3cpath%20fill='%23343a40'%20d='M2%200L0%202h4zm0%205L0%203h4z'/%3e%3c/svg%3e/") no-repeat right 0.75rem center/8px 10px, url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%208%208'%3e%3cpath%20fill='%2328a745'%20d='M2.3%206.73L.6%204.53c-.4-1.04.46-1.4%201.1-.8l1.1%201.4%203.4-3.8c.6-.63%201.6-.27%201.2.7l-4%204.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e/") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n\n.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {\n border-color: #28a745;\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.was-validated .custom-select:valid ~ .valid-feedback,\n.was-validated .custom-select:valid ~ .valid-tooltip, .custom-select.is-valid ~ .valid-feedback,\n.custom-select.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .form-control-file:valid ~ .valid-feedback,\n.was-validated .form-control-file:valid ~ .valid-tooltip, .form-control-file.is-valid ~ .valid-feedback,\n.form-control-file.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {\n color: #28a745;\n}\n\n.was-validated .form-check-input:valid ~ .valid-feedback,\n.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,\n.form-check-input.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {\n color: #28a745;\n}\n\n.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {\n border-color: #28a745;\n}\n\n.was-validated .custom-control-input:valid ~ .valid-feedback,\n.was-validated .custom-control-input:valid ~ .valid-tooltip, .custom-control-input.is-valid ~ .valid-feedback,\n.custom-control-input.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {\n border-color: #34ce57;\n background-color: #34ce57;\n}\n\n.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {\n border-color: #28a745;\n}\n\n.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {\n border-color: #28a745;\n}\n\n.was-validated .custom-file-input:valid ~ .valid-feedback,\n.was-validated .custom-file-input:valid ~ .valid-tooltip, .custom-file-input.is-valid ~ .valid-feedback,\n.custom-file-input.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {\n border-color: #28a745;\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.invalid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 80%;\n color: #dc3545;\n}\n\n.invalid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: .1rem;\n font-size: 0.875rem;\n line-height: 1.5;\n color: #fff;\n background-color: rgba(220, 53, 69, 0.9);\n border-radius: 0.25rem;\n}\n\n.was-validated .form-control:invalid, .form-control.is-invalid {\n border-color: #dc3545;\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='%23dc3545'%20viewBox='-2%20-2%207%207'%3e%3cpath%20stroke='%23dc3545'%20d='M0%200l3%203m0-3L0%203'/%3e%3ccircle%20r='.5'/%3e%3ccircle%20cx='3'%20r='.5'/%3e%3ccircle%20cy='3'%20r='.5'/%3e%3ccircle%20cx='3'%20cy='3'%20r='.5'/%3e%3c/svg%3E/");\n background-repeat: no-repeat;\n background-position: center right calc(0.375em + 0.1875rem);\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n\n.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {\n border-color: #dc3545;\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.was-validated .form-control:invalid ~ .invalid-feedback,\n.was-validated .form-control:invalid ~ .invalid-tooltip, .form-control.is-invalid ~ .invalid-feedback,\n.form-control.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n\n.was-validated .custom-select:invalid, .custom-select.is-invalid {\n border-color: #dc3545;\n padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);\n background: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%204%205'%3e%3cpath%20fill='%23343a40'%20d='M2%200L0%202h4zm0%205L0%203h4z'/%3e%3c/svg%3e/") no-repeat right 0.75rem center/8px 10px, url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='%23dc3545'%20viewBox='-2%20-2%207%207'%3e%3cpath%20stroke='%23dc3545'%20d='M0%200l3%203m0-3L0%203'/%3e%3ccircle%20r='.5'/%3e%3ccircle%20cx='3'%20r='.5'/%3e%3ccircle%20cy='3'%20r='.5'/%3e%3ccircle%20cx='3'%20cy='3'%20r='.5'/%3e%3c/svg%3E/") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n\n.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {\n border-color: #dc3545;\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.was-validated .custom-select:invalid ~ .invalid-feedback,\n.was-validated .custom-select:invalid ~ .invalid-tooltip, .custom-select.is-invalid ~ .invalid-feedback,\n.custom-select.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .form-control-file:invalid ~ .invalid-feedback,\n.was-validated .form-control-file:invalid ~ .invalid-tooltip, .form-control-file.is-invalid ~ .invalid-feedback,\n.form-control-file.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {\n color: #dc3545;\n}\n\n.was-validated .form-check-input:invalid ~ .invalid-feedback,\n.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,\n.form-check-input.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {\n color: #dc3545;\n}\n\n.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {\n border-color: #dc3545;\n}\n\n.was-validated .custom-control-input:invalid ~ .invalid-feedback,\n.was-validated .custom-control-input:invalid ~ .invalid-tooltip, .custom-control-input.is-invalid ~ .invalid-feedback,\n.custom-control-input.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {\n border-color: #e4606d;\n background-color: #e4606d;\n}\n\n.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {\n border-color: #dc3545;\n}\n\n.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {\n border-color: #dc3545;\n}\n\n.was-validated .custom-file-input:invalid ~ .invalid-feedback,\n.was-validated .custom-file-input:invalid ~ .invalid-tooltip, .custom-file-input.is-invalid ~ .invalid-feedback,\n.custom-file-input.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {\n border-color: #dc3545;\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.form-inline {\n display: flex;\n flex-flow: row wrap;\n align-items: center;\n}\n\n.form-inline .form-check {\n width: 100%;\n}\n\n@media (min-width: 576px) {\n .form-inline label {\n display: flex;\n align-items: center;\n justify-content: center;\n margin-bottom: 0;\n }\n .form-inline .form-group {\n display: flex;\n flex: 0 0 auto;\n flex-flow: row wrap;\n align-items: center;\n margin-bottom: 0;\n }\n .form-inline .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .form-inline .form-control-plaintext {\n display: inline-block;\n }\n .form-inline .input-group,\n .form-inline .custom-select {\n width: auto;\n }\n .form-inline .form-check {\n display: flex;\n align-items: center;\n justify-content: center;\n width: auto;\n padding-left: 0;\n }\n .form-inline .form-check-input {\n position: relative;\n flex-shrink: 0;\n margin-top: 0;\n margin-right: 0.25rem;\n margin-left: 0;\n }\n .form-inline .custom-control {\n align-items: center;\n justify-content: center;\n }\n .form-inline .custom-control-label {\n margin-bottom: 0;\n }\n}\n\n.btn {\n display: inline-block;\n font-weight: 400;\n color: #212529;\n text-align: center;\n vertical-align: middle;\n user-select: none;\n background-color: transparent;\n border: 1px solid transparent;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n line-height: 1.5;\n border-radius: 0.25rem;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .btn {\n transition: none;\n }\n}\n\n.btn:hover {\n color: #212529;\n text-decoration: none;\n}\n\n.btn:focus, .btn.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.btn.disabled, .btn:disabled {\n opacity: 0.65;\n}\n\na.btn.disabled,\nfieldset:disabled a.btn {\n pointer-events: none;\n}\n\n.btn-primary {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-primary:hover {\n color: #fff;\n background-color: #0069d9;\n border-color: #0062cc;\n}\n\n.btn-primary:focus, .btn-primary.focus {\n box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n}\n\n.btn-primary.disabled, .btn-primary:disabled {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,\n.show > .btn-primary.dropdown-toggle {\n color: #fff;\n background-color: #0062cc;\n border-color: #005cbf;\n}\n\n.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-primary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n}\n\n.btn-secondary {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-secondary:hover {\n color: #fff;\n background-color: #5a6268;\n border-color: #545b62;\n}\n\n.btn-secondary:focus, .btn-secondary.focus {\n box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n}\n\n.btn-secondary.disabled, .btn-secondary:disabled {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,\n.show > .btn-secondary.dropdown-toggle {\n color: #fff;\n background-color: #545b62;\n border-color: #4e555b;\n}\n\n.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-secondary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n}\n\n.btn-success {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-success:hover {\n color: #fff;\n background-color: #218838;\n border-color: #1e7e34;\n}\n\n.btn-success:focus, .btn-success.focus {\n box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n}\n\n.btn-success.disabled, .btn-success:disabled {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active,\n.show > .btn-success.dropdown-toggle {\n color: #fff;\n background-color: #1e7e34;\n border-color: #1c7430;\n}\n\n.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus,\n.show > .btn-success.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n}\n\n.btn-info {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-info:hover {\n color: #fff;\n background-color: #138496;\n border-color: #117a8b;\n}\n\n.btn-info:focus, .btn-info.focus {\n box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n}\n\n.btn-info.disabled, .btn-info:disabled {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active,\n.show > .btn-info.dropdown-toggle {\n color: #fff;\n background-color: #117a8b;\n border-color: #10707f;\n}\n\n.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus,\n.show > .btn-info.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n}\n\n.btn-warning {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-warning:hover {\n color: #212529;\n background-color: #e0a800;\n border-color: #d39e00;\n}\n\n.btn-warning:focus, .btn-warning.focus {\n box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n}\n\n.btn-warning.disabled, .btn-warning:disabled {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active,\n.show > .btn-warning.dropdown-toggle {\n color: #212529;\n background-color: #d39e00;\n border-color: #c69500;\n}\n\n.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus,\n.show > .btn-warning.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n}\n\n.btn-danger {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-danger:hover {\n color: #fff;\n background-color: #c82333;\n border-color: #bd2130;\n}\n\n.btn-danger:focus, .btn-danger.focus {\n box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n}\n\n.btn-danger.disabled, .btn-danger:disabled {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active,\n.show > .btn-danger.dropdown-toggle {\n color: #fff;\n background-color: #bd2130;\n border-color: #b21f2d;\n}\n\n.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus,\n.show > .btn-danger.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n}\n\n.btn-light {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-light:hover {\n color: #212529;\n background-color: #e2e6ea;\n border-color: #dae0e5;\n}\n\n.btn-light:focus, .btn-light.focus {\n box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);\n}\n\n.btn-light.disabled, .btn-light:disabled {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active,\n.show > .btn-light.dropdown-toggle {\n color: #212529;\n background-color: #dae0e5;\n border-color: #d3d9df;\n}\n\n.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus,\n.show > .btn-light.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);\n}\n\n.btn-dark {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-dark:hover {\n color: #fff;\n background-color: #23272b;\n border-color: #1d2124;\n}\n\n.btn-dark:focus, .btn-dark.focus {\n box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);\n}\n\n.btn-dark.disabled, .btn-dark:disabled {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,\n.show > .btn-dark.dropdown-toggle {\n color: #fff;\n background-color: #1d2124;\n border-color: #171a1d;\n}\n\n.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus,\n.show > .btn-dark.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);\n}\n\n.btn-outline-primary {\n color: #007bff;\n border-color: #007bff;\n}\n\n.btn-outline-primary:hover {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-outline-primary:focus, .btn-outline-primary.focus {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.btn-outline-primary.disabled, .btn-outline-primary:disabled {\n color: #007bff;\n background-color: transparent;\n}\n\n.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active,\n.show > .btn-outline-primary.dropdown-toggle {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-primary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.btn-outline-secondary {\n color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-outline-secondary:hover {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-outline-secondary:focus, .btn-outline-secondary.focus {\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {\n color: #6c757d;\n background-color: transparent;\n}\n\n.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active,\n.show > .btn-outline-secondary.dropdown-toggle {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-secondary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.btn-outline-success {\n color: #28a745;\n border-color: #28a745;\n}\n\n.btn-outline-success:hover {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-outline-success:focus, .btn-outline-success.focus {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.btn-outline-success.disabled, .btn-outline-success:disabled {\n color: #28a745;\n background-color: transparent;\n}\n\n.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active,\n.show > .btn-outline-success.dropdown-toggle {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-success.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.btn-outline-info {\n color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-outline-info:hover {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-outline-info:focus, .btn-outline-info.focus {\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.btn-outline-info.disabled, .btn-outline-info:disabled {\n color: #17a2b8;\n background-color: transparent;\n}\n\n.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active,\n.show > .btn-outline-info.dropdown-toggle {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-info.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.btn-outline-warning {\n color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-outline-warning:hover {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-outline-warning:focus, .btn-outline-warning.focus {\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.btn-outline-warning.disabled, .btn-outline-warning:disabled {\n color: #ffc107;\n background-color: transparent;\n}\n\n.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active,\n.show > .btn-outline-warning.dropdown-toggle {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-warning.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.btn-outline-danger {\n color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-outline-danger:hover {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-outline-danger:focus, .btn-outline-danger.focus {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.btn-outline-danger.disabled, .btn-outline-danger:disabled {\n color: #dc3545;\n background-color: transparent;\n}\n\n.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active,\n.show > .btn-outline-danger.dropdown-toggle {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-danger.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.btn-outline-light {\n color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-outline-light:hover {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-outline-light:focus, .btn-outline-light.focus {\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.btn-outline-light.disabled, .btn-outline-light:disabled {\n color: #f8f9fa;\n background-color: transparent;\n}\n\n.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active,\n.show > .btn-outline-light.dropdown-toggle {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-light.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.btn-outline-dark {\n color: #343a40;\n border-color: #343a40;\n}\n\n.btn-outline-dark:hover {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-outline-dark:focus, .btn-outline-dark.focus {\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.btn-outline-dark.disabled, .btn-outline-dark:disabled {\n color: #343a40;\n background-color: transparent;\n}\n\n.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active,\n.show > .btn-outline-dark.dropdown-toggle {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-dark.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.btn-link {\n font-weight: 400;\n color: #007bff;\n text-decoration: none;\n}\n\n.btn-link:hover {\n color: #0056b3;\n text-decoration: underline;\n}\n\n.btn-link:focus, .btn-link.focus {\n text-decoration: underline;\n box-shadow: none;\n}\n\n.btn-link:disabled, .btn-link.disabled {\n color: #6c757d;\n pointer-events: none;\n}\n\n.btn-lg, .btn-group-lg > .btn {\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n line-height: 1.5;\n border-radius: 0.3rem;\n}\n\n.btn-sm, .btn-group-sm > .btn {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n border-radius: 0.2rem;\n}\n\n.btn-block {\n display: block;\n width: 100%;\n}\n\n.btn-block + .btn-block {\n margin-top: 0.5rem;\n}\n\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n width: 100%;\n}\n\n.fade {\n transition: opacity 0.15s linear;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .fade {\n transition: none;\n }\n}\n\n.fade:not(.show) {\n opacity: 0;\n}\n\n.collapse:not(.show) {\n display: none;\n}\n\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n transition: height 0.35s ease;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .collapsing {\n transition: none;\n }\n}\n\n.dropup,\n.dropright,\n.dropdown,\n.dropleft {\n position: relative;\n}\n\n.dropdown-toggle {\n white-space: nowrap;\n}\n\n.dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid;\n border-right: 0.3em solid transparent;\n border-bottom: 0;\n border-left: 0.3em solid transparent;\n}\n\n.dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n display: none;\n float: left;\n min-width: 10rem;\n padding: 0.5rem 0;\n margin: 0.125rem 0 0;\n font-size: 1rem;\n color: #212529;\n text-align: left;\n list-style: none;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 0.25rem;\n}\n\n.dropdown-menu-left {\n right: auto;\n left: 0;\n}\n\n.dropdown-menu-right {\n right: 0;\n left: auto;\n}\n\n@media (min-width: 576px) {\n .dropdown-menu-sm-left {\n right: auto;\n left: 0;\n }\n .dropdown-menu-sm-right {\n right: 0;\n left: auto;\n }\n}\n\n@media (min-width: 768px) {\n .dropdown-menu-md-left {\n right: auto;\n left: 0;\n }\n .dropdown-menu-md-right {\n right: 0;\n left: auto;\n }\n}\n\n@media (min-width: 992px) {\n .dropdown-menu-lg-left {\n right: auto;\n left: 0;\n }\n .dropdown-menu-lg-right {\n right: 0;\n left: auto;\n }\n}\n\n@media (min-width: 1200px) {\n .dropdown-menu-xl-left {\n right: auto;\n left: 0;\n }\n .dropdown-menu-xl-right {\n right: 0;\n left: auto;\n }\n}\n\n.dropup .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-top: 0;\n margin-bottom: 0.125rem;\n}\n\n.dropup .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0;\n border-right: 0.3em solid transparent;\n border-bottom: 0.3em solid;\n border-left: 0.3em solid transparent;\n}\n\n.dropup .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropright .dropdown-menu {\n top: 0;\n right: auto;\n left: 100%;\n margin-top: 0;\n margin-left: 0.125rem;\n}\n\n.dropright .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0;\n border-bottom: 0.3em solid transparent;\n border-left: 0.3em solid;\n}\n\n.dropright .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropright .dropdown-toggle::after {\n vertical-align: 0;\n}\n\n.dropleft .dropdown-menu {\n top: 0;\n right: 100%;\n left: auto;\n margin-top: 0;\n margin-right: 0.125rem;\n}\n\n.dropleft .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n}\n\n.dropleft .dropdown-toggle::after {\n display: none;\n}\n\n.dropleft .dropdown-toggle::before {\n display: inline-block;\n margin-right: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0.3em solid;\n border-bottom: 0.3em solid transparent;\n}\n\n.dropleft .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropleft .dropdown-toggle::before {\n vertical-align: 0;\n}\n\n.dropdown-menu[x-placement^=\"top\"], .dropdown-menu[x-placement^=\"right\"], .dropdown-menu[x-placement^=\"bottom\"], .dropdown-menu[x-placement^=\"left\"] {\n right: auto;\n bottom: auto;\n}\n\n.dropdown-divider {\n height: 0;\n margin: 0.5rem 0;\n overflow: hidden;\n border-top: 1px solid #e9ecef;\n}\n\n.dropdown-item {\n display: block;\n width: 100%;\n padding: 0.25rem 1.5rem;\n clear: both;\n font-weight: 400;\n color: #212529;\n text-align: inherit;\n white-space: nowrap;\n background-color: transparent;\n border: 0;\n}\n\n.dropdown-item:hover, .dropdown-item:focus {\n color: #16181b;\n text-decoration: none;\n background-color: #f8f9fa;\n}\n\n.dropdown-item.active, .dropdown-item:active {\n color: #fff;\n text-decoration: none;\n background-color: #007bff;\n}\n\n.dropdown-item.disabled, .dropdown-item:disabled {\n color: #6c757d;\n pointer-events: none;\n background-color: transparent;\n}\n\n.dropdown-menu.show {\n display: block;\n}\n\n.dropdown-header {\n display: block;\n padding: 0.5rem 1.5rem;\n margin-bottom: 0;\n font-size: 0.875rem;\n color: #6c757d;\n white-space: nowrap;\n}\n\n.dropdown-item-text {\n display: block;\n padding: 0.25rem 1.5rem;\n color: #212529;\n}\n\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-flex;\n vertical-align: middle;\n}\n\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n flex: 1 1 auto;\n}\n\n.btn-group > .btn:hover,\n.btn-group-vertical > .btn:hover {\n z-index: 1;\n}\n\n.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,\n.btn-group-vertical > .btn:focus,\n.btn-group-vertical > .btn:active,\n.btn-group-vertical > .btn.active {\n z-index: 1;\n}\n\n.btn-toolbar {\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-start;\n}\n\n.btn-toolbar .input-group {\n width: auto;\n}\n\n.btn-group > .btn:not(:first-child),\n.btn-group > .btn-group:not(:first-child) {\n margin-left: -1px;\n}\n\n.btn-group > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group > .btn-group:not(:last-child) > .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.btn-group > .btn:not(:first-child),\n.btn-group > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.dropdown-toggle-split {\n padding-right: 0.5625rem;\n padding-left: 0.5625rem;\n}\n\n.dropdown-toggle-split::after,\n.dropup .dropdown-toggle-split::after,\n.dropright .dropdown-toggle-split::after {\n margin-left: 0;\n}\n\n.dropleft .dropdown-toggle-split::before {\n margin-right: 0;\n}\n\n.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {\n padding-right: 0.375rem;\n padding-left: 0.375rem;\n}\n\n.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {\n padding-right: 0.75rem;\n padding-left: 0.75rem;\n}\n\n.btn-group-vertical {\n flex-direction: column;\n align-items: flex-start;\n justify-content: center;\n}\n\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group {\n width: 100%;\n}\n\n.btn-group-vertical > .btn:not(:first-child),\n.btn-group-vertical > .btn-group:not(:first-child) {\n margin-top: -1px;\n}\n\n.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group-vertical > .btn-group:not(:last-child) > .btn {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.btn-group-vertical > .btn:not(:first-child),\n.btn-group-vertical > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.btn-group-toggle > .btn,\n.btn-group-toggle > .btn-group > .btn {\n margin-bottom: 0;\n}\n\n.btn-group-toggle > .btn input[type=\"radio\"],\n.btn-group-toggle > .btn input[type=\"checkbox\"],\n.btn-group-toggle > .btn-group > .btn input[type=\"radio\"],\n.btn-group-toggle > .btn-group > .btn input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n\n.input-group {\n position: relative;\n display: flex;\n flex-wrap: wrap;\n align-items: stretch;\n width: 100%;\n}\n\n.input-group > .form-control,\n.input-group > .form-control-plaintext,\n.input-group > .custom-select,\n.input-group > .custom-file {\n position: relative;\n flex: 1 1 auto;\n width: 1%;\n margin-bottom: 0;\n}\n\n.input-group > .form-control + .form-control,\n.input-group > .form-control + .custom-select,\n.input-group > .form-control + .custom-file,\n.input-group > .form-control-plaintext + .form-control,\n.input-group > .form-control-plaintext + .custom-select,\n.input-group > .form-control-plaintext + .custom-file,\n.input-group > .custom-select + .form-control,\n.input-group > .custom-select + .custom-select,\n.input-group > .custom-select + .custom-file,\n.input-group > .custom-file + .form-control,\n.input-group > .custom-file + .custom-select,\n.input-group > .custom-file + .custom-file {\n margin-left: -1px;\n}\n\n.input-group > .form-control:focus,\n.input-group > .custom-select:focus,\n.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {\n z-index: 3;\n}\n\n.input-group > .custom-file .custom-file-input:focus {\n z-index: 4;\n}\n\n.input-group > .form-control:not(:last-child),\n.input-group > .custom-select:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.input-group > .form-control:not(:first-child),\n.input-group > .custom-select:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.input-group > .custom-file {\n display: flex;\n align-items: center;\n}\n\n.input-group > .custom-file:not(:last-child) .custom-file-label,\n.input-group > .custom-file:not(:last-child) .custom-file-label::after {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.input-group > .custom-file:not(:first-child) .custom-file-label {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.input-group-prepend,\n.input-group-append {\n display: flex;\n}\n\n.input-group-prepend .btn,\n.input-group-append .btn {\n position: relative;\n z-index: 2;\n}\n\n.input-group-prepend .btn:focus,\n.input-group-append .btn:focus {\n z-index: 3;\n}\n\n.input-group-prepend .btn + .btn,\n.input-group-prepend .btn + .input-group-text,\n.input-group-prepend .input-group-text + .input-group-text,\n.input-group-prepend .input-group-text + .btn,\n.input-group-append .btn + .btn,\n.input-group-append .btn + .input-group-text,\n.input-group-append .input-group-text + .input-group-text,\n.input-group-append .input-group-text + .btn {\n margin-left: -1px;\n}\n\n.input-group-prepend {\n margin-right: -1px;\n}\n\n.input-group-append {\n margin-left: -1px;\n}\n\n.input-group-text {\n display: flex;\n align-items: center;\n padding: 0.375rem 0.75rem;\n margin-bottom: 0;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n text-align: center;\n white-space: nowrap;\n background-color: #e9ecef;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n}\n\n.input-group-text input[type=\"radio\"],\n.input-group-text input[type=\"checkbox\"] {\n margin-top: 0;\n}\n\n.input-group-lg > .form-control:not(textarea),\n.input-group-lg > .custom-select {\n height: calc(1.5em + 1rem + 2px);\n}\n\n.input-group-lg > .form-control,\n.input-group-lg > .custom-select,\n.input-group-lg > .input-group-prepend > .input-group-text,\n.input-group-lg > .input-group-append > .input-group-text,\n.input-group-lg > .input-group-prepend > .btn,\n.input-group-lg > .input-group-append > .btn {\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n line-height: 1.5;\n border-radius: 0.3rem;\n}\n\n.input-group-sm > .form-control:not(textarea),\n.input-group-sm > .custom-select {\n height: calc(1.5em + 0.5rem + 2px);\n}\n\n.input-group-sm > .form-control,\n.input-group-sm > .custom-select,\n.input-group-sm > .input-group-prepend > .input-group-text,\n.input-group-sm > .input-group-append > .input-group-text,\n.input-group-sm > .input-group-prepend > .btn,\n.input-group-sm > .input-group-append > .btn {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n border-radius: 0.2rem;\n}\n\n.input-group-lg > .custom-select,\n.input-group-sm > .custom-select {\n padding-right: 1.75rem;\n}\n\n.input-group > .input-group-prepend > .btn,\n.input-group > .input-group-prepend > .input-group-text,\n.input-group > .input-group-append:not(:last-child) > .btn,\n.input-group > .input-group-append:not(:last-child) > .input-group-text,\n.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.input-group > .input-group-append > .btn,\n.input-group > .input-group-append > .input-group-text,\n.input-group > .input-group-prepend:not(:first-child) > .btn,\n.input-group > .input-group-prepend:not(:first-child) > .input-group-text,\n.input-group > .input-group-prepend:first-child > .btn:not(:first-child),\n.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.custom-control {\n position: relative;\n display: block;\n min-height: 1.5rem;\n padding-left: 1.5rem;\n}\n\n.custom-control-inline {\n display: inline-flex;\n margin-right: 1rem;\n}\n\n.custom-control-input {\n position: absolute;\n z-index: -1;\n opacity: 0;\n}\n\n.custom-control-input:checked ~ .custom-control-label::before {\n color: #fff;\n border-color: #007bff;\n background-color: #007bff;\n}\n\n.custom-control-input:focus ~ .custom-control-label::before {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {\n border-color: #80bdff;\n}\n\n.custom-control-input:not(:disabled):active ~ .custom-control-label::before {\n color: #fff;\n background-color: #b3d7ff;\n border-color: #b3d7ff;\n}\n\n.custom-control-input:disabled ~ .custom-control-label {\n color: #6c757d;\n}\n\n.custom-control-input:disabled ~ .custom-control-label::before {\n background-color: #e9ecef;\n}\n\n.custom-control-label {\n position: relative;\n margin-bottom: 0;\n vertical-align: top;\n}\n\n.custom-control-label::before {\n position: absolute;\n top: 0.25rem;\n left: -1.5rem;\n display: block;\n width: 1rem;\n height: 1rem;\n pointer-events: none;\n content: \"\";\n background-color: #fff;\n border: #adb5bd solid 1px;\n}\n\n.custom-control-label::after {\n position: absolute;\n top: 0.25rem;\n left: -1.5rem;\n display: block;\n width: 1rem;\n height: 1rem;\n content: \"\";\n background: no-repeat 50% / 50% 50%;\n}\n\n.custom-checkbox .custom-control-label::before {\n border-radius: 0.25rem;\n}\n\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%208%208'%3e%3cpath%20fill='%23fff'%20d='M6.564.75l-3.59%203.612-1.538-1.55L0%204.26%202.974%207.25%208%202.193z'/%3e%3c/svg%3e/");\n}\n\n.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {\n border-color: #007bff;\n background-color: #007bff;\n}\n\n.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%204%204'%3e%3cpath%20stroke='%23fff'%20d='M0%202h4'/%3e%3c/svg%3e/");\n}\n\n.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-radio .custom-control-label::before {\n border-radius: 50%;\n}\n\n.custom-radio .custom-control-input:checked ~ .custom-control-label::after {\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='-4%20-4%208%208'%3e%3ccircle%20r='3'%20fill='%23fff'/%3e%3c/svg%3e/");\n}\n\n.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-switch {\n padding-left: 2.25rem;\n}\n\n.custom-switch .custom-control-label::before {\n left: -2.25rem;\n width: 1.75rem;\n pointer-events: all;\n border-radius: 0.5rem;\n}\n\n.custom-switch .custom-control-label::after {\n top: calc(0.25rem + 2px);\n left: calc(-2.25rem + 2px);\n width: calc(1rem - 4px);\n height: calc(1rem - 4px);\n background-color: #adb5bd;\n border-radius: 0.5rem;\n transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-switch .custom-control-label::after {\n transition: none;\n }\n}\n\n.custom-switch .custom-control-input:checked ~ .custom-control-label::after {\n background-color: #fff;\n transform: translateX(0.75rem);\n}\n\n.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-select {\n display: inline-block;\n width: 100%;\n height: calc(1.5em + 0.75rem + 2px);\n padding: 0.375rem 1.75rem 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n vertical-align: middle;\n background: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%204%205'%3e%3cpath%20fill='%23343a40'%20d='M2%200L0%202h4zm0%205L0%203h4z'/%3e%3c/svg%3e/") no-repeat right 0.75rem center/8px 10px;\n background-color: #fff;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n appearance: none;\n}\n\n.custom-select:focus {\n border-color: #80bdff;\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-select:focus::-ms-value {\n color: #495057;\n background-color: #fff;\n}\n\n.custom-select[multiple], .custom-select[size]:not([size=\"1\"]) {\n height: auto;\n padding-right: 0.75rem;\n background-image: none;\n}\n\n.custom-select:disabled {\n color: #6c757d;\n background-color: #e9ecef;\n}\n\n.custom-select::-ms-expand {\n display: none;\n}\n\n.custom-select-sm {\n height: calc(1.5em + 0.5rem + 2px);\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n padding-left: 0.5rem;\n font-size: 0.875rem;\n}\n\n.custom-select-lg {\n height: calc(1.5em + 1rem + 2px);\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n padding-left: 1rem;\n font-size: 1.25rem;\n}\n\n.custom-file {\n position: relative;\n display: inline-block;\n width: 100%;\n height: calc(1.5em + 0.75rem + 2px);\n margin-bottom: 0;\n}\n\n.custom-file-input {\n position: relative;\n z-index: 2;\n width: 100%;\n height: calc(1.5em + 0.75rem + 2px);\n margin: 0;\n opacity: 0;\n}\n\n.custom-file-input:focus ~ .custom-file-label {\n border-color: #80bdff;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-file-input:disabled ~ .custom-file-label {\n background-color: #e9ecef;\n}\n\n.custom-file-input:lang(en) ~ .custom-file-label::after {\n content: \"Browse\";\n}\n\n.custom-file-input ~ .custom-file-label[data-browse]::after {\n content: attr(data-browse);\n}\n\n.custom-file-label {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1;\n height: calc(1.5em + 0.75rem + 2px);\n padding: 0.375rem 0.75rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n background-color: #fff;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n}\n\n.custom-file-label::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n z-index: 3;\n display: block;\n height: calc(1.5em + 0.75rem);\n padding: 0.375rem 0.75rem;\n line-height: 1.5;\n color: #495057;\n content: \"Browse\";\n background-color: #e9ecef;\n border-left: inherit;\n border-radius: 0 0.25rem 0.25rem 0;\n}\n\n.custom-range {\n width: 100%;\n height: calc(1rem + 0.4rem);\n padding: 0;\n background-color: transparent;\n appearance: none;\n}\n\n.custom-range:focus {\n outline: none;\n}\n\n.custom-range:focus::-webkit-slider-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-range:focus::-moz-range-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-range:focus::-ms-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-range::-moz-focus-outer {\n border: 0;\n}\n\n.custom-range::-webkit-slider-thumb {\n width: 1rem;\n height: 1rem;\n margin-top: -0.25rem;\n background-color: #007bff;\n border: 0;\n border-radius: 1rem;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n appearance: none;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-range::-webkit-slider-thumb {\n transition: none;\n }\n}\n\n.custom-range::-webkit-slider-thumb:active {\n background-color: #b3d7ff;\n}\n\n.custom-range::-webkit-slider-runnable-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: #dee2e6;\n border-color: transparent;\n border-radius: 1rem;\n}\n\n.custom-range::-moz-range-thumb {\n width: 1rem;\n height: 1rem;\n background-color: #007bff;\n border: 0;\n border-radius: 1rem;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n appearance: none;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-range::-moz-range-thumb {\n transition: none;\n }\n}\n\n.custom-range::-moz-range-thumb:active {\n background-color: #b3d7ff;\n}\n\n.custom-range::-moz-range-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: #dee2e6;\n border-color: transparent;\n border-radius: 1rem;\n}\n\n.custom-range::-ms-thumb {\n width: 1rem;\n height: 1rem;\n margin-top: 0;\n margin-right: 0.2rem;\n margin-left: 0.2rem;\n background-color: #007bff;\n border: 0;\n border-radius: 1rem;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n appearance: none;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-range::-ms-thumb {\n transition: none;\n }\n}\n\n.custom-range::-ms-thumb:active {\n background-color: #b3d7ff;\n}\n\n.custom-range::-ms-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: transparent;\n border-color: transparent;\n border-width: 0.5rem;\n}\n\n.custom-range::-ms-fill-lower {\n background-color: #dee2e6;\n border-radius: 1rem;\n}\n\n.custom-range::-ms-fill-upper {\n margin-right: 15px;\n background-color: #dee2e6;\n border-radius: 1rem;\n}\n\n.custom-range:disabled::-webkit-slider-thumb {\n background-color: #adb5bd;\n}\n\n.custom-range:disabled::-webkit-slider-runnable-track {\n cursor: default;\n}\n\n.custom-range:disabled::-moz-range-thumb {\n background-color: #adb5bd;\n}\n\n.custom-range:disabled::-moz-range-track {\n cursor: default;\n}\n\n.custom-range:disabled::-ms-thumb {\n background-color: #adb5bd;\n}\n\n.custom-control-label::before,\n.custom-file-label,\n.custom-select {\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-control-label::before,\n .custom-file-label,\n .custom-select {\n transition: none;\n }\n}\n\n.nav {\n display: flex;\n flex-wrap: wrap;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n\n.nav-link {\n display: block;\n padding: 0.5rem 1rem;\n}\n\n.nav-link:hover, .nav-link:focus {\n text-decoration: none;\n}\n\n.nav-link.disabled {\n color: #6c757d;\n pointer-events: none;\n cursor: default;\n}\n\n.nav-tabs {\n border-bottom: 1px solid #dee2e6;\n}\n\n.nav-tabs .nav-item {\n margin-bottom: -1px;\n}\n\n.nav-tabs .nav-link {\n border: 1px solid transparent;\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n\n.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {\n border-color: #e9ecef #e9ecef #dee2e6;\n}\n\n.nav-tabs .nav-link.disabled {\n color: #6c757d;\n background-color: transparent;\n border-color: transparent;\n}\n\n.nav-tabs .nav-link.active,\n.nav-tabs .nav-item.show .nav-link {\n color: #495057;\n background-color: #fff;\n border-color: #dee2e6 #dee2e6 #fff;\n}\n\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.nav-pills .nav-link {\n border-radius: 0.25rem;\n}\n\n.nav-pills .nav-link.active,\n.nav-pills .show > .nav-link {\n color: #fff;\n background-color: #007bff;\n}\n\n.nav-fill .nav-item {\n flex: 1 1 auto;\n text-align: center;\n}\n\n.nav-justified .nav-item {\n flex-basis: 0;\n flex-grow: 1;\n text-align: center;\n}\n\n.tab-content > .tab-pane {\n display: none;\n}\n\n.tab-content > .active {\n display: block;\n}\n\n.navbar {\n position: relative;\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n padding: 0.5rem 1rem;\n}\n\n.navbar > .container,\n.navbar > .container-fluid {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n}\n\n.navbar-brand {\n display: inline-block;\n padding-top: 0.3125rem;\n padding-bottom: 0.3125rem;\n margin-right: 1rem;\n font-size: 1.25rem;\n line-height: inherit;\n white-space: nowrap;\n}\n\n.navbar-brand:hover, .navbar-brand:focus {\n text-decoration: none;\n}\n\n.navbar-nav {\n display: flex;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n\n.navbar-nav .nav-link {\n padding-right: 0;\n padding-left: 0;\n}\n\n.navbar-nav .dropdown-menu {\n position: static;\n float: none;\n}\n\n.navbar-text {\n display: inline-block;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n.navbar-collapse {\n flex-basis: 100%;\n flex-grow: 1;\n align-items: center;\n}\n\n.navbar-toggler {\n padding: 0.25rem 0.75rem;\n font-size: 1.25rem;\n line-height: 1;\n background-color: transparent;\n border: 1px solid transparent;\n border-radius: 0.25rem;\n}\n\n.navbar-toggler:hover, .navbar-toggler:focus {\n text-decoration: none;\n}\n\n.navbar-toggler-icon {\n display: inline-block;\n width: 1.5em;\n height: 1.5em;\n vertical-align: middle;\n content: \"\";\n background: no-repeat center center;\n background-size: 100% 100%;\n}\n\n@media (max-width: 575.98px) {\n .navbar-expand-sm > .container,\n .navbar-expand-sm > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 576px) {\n .navbar-expand-sm {\n flex-flow: row nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-sm .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-sm .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-sm .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-sm > .container,\n .navbar-expand-sm > .container-fluid {\n flex-wrap: nowrap;\n }\n .navbar-expand-sm .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-sm .navbar-toggler {\n display: none;\n }\n}\n\n@media (max-width: 767.98px) {\n .navbar-expand-md > .container,\n .navbar-expand-md > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 768px) {\n .navbar-expand-md {\n flex-flow: row nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-md .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-md .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-md .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-md > .container,\n .navbar-expand-md > .container-fluid {\n flex-wrap: nowrap;\n }\n .navbar-expand-md .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-md .navbar-toggler {\n display: none;\n }\n}\n\n@media (max-width: 991.98px) {\n .navbar-expand-lg > .container,\n .navbar-expand-lg > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 992px) {\n .navbar-expand-lg {\n flex-flow: row nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-lg .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-lg .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-lg .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-lg > .container,\n .navbar-expand-lg > .container-fluid {\n flex-wrap: nowrap;\n }\n .navbar-expand-lg .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-lg .navbar-toggler {\n display: none;\n }\n}\n\n@media (max-width: 1199.98px) {\n .navbar-expand-xl > .container,\n .navbar-expand-xl > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 1200px) {\n .navbar-expand-xl {\n flex-flow: row nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-xl .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-xl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xl .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-xl > .container,\n .navbar-expand-xl > .container-fluid {\n flex-wrap: nowrap;\n }\n .navbar-expand-xl .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-xl .navbar-toggler {\n display: none;\n }\n}\n\n.navbar-expand {\n flex-flow: row nowrap;\n justify-content: flex-start;\n}\n\n.navbar-expand > .container,\n.navbar-expand > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n}\n\n.navbar-expand .navbar-nav {\n flex-direction: row;\n}\n\n.navbar-expand .navbar-nav .dropdown-menu {\n position: absolute;\n}\n\n.navbar-expand .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n}\n\n.navbar-expand > .container,\n.navbar-expand > .container-fluid {\n flex-wrap: nowrap;\n}\n\n.navbar-expand .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n}\n\n.navbar-expand .navbar-toggler {\n display: none;\n}\n\n.navbar-light .navbar-brand {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-nav .nav-link {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {\n color: rgba(0, 0, 0, 0.7);\n}\n\n.navbar-light .navbar-nav .nav-link.disabled {\n color: rgba(0, 0, 0, 0.3);\n}\n\n.navbar-light .navbar-nav .show > .nav-link,\n.navbar-light .navbar-nav .active > .nav-link,\n.navbar-light .navbar-nav .nav-link.show,\n.navbar-light .navbar-nav .nav-link.active {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-toggler {\n color: rgba(0, 0, 0, 0.5);\n border-color: rgba(0, 0, 0, 0.1);\n}\n\n.navbar-light .navbar-toggler-icon {\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20viewBox='0%200%2030%2030'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20stroke='rgba(0,%200,%200,%200.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n\n.navbar-light .navbar-text {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.navbar-light .navbar-text a {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-dark .navbar-brand {\n color: #fff;\n}\n\n.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {\n color: #fff;\n}\n\n.navbar-dark .navbar-nav .nav-link {\n color: rgba(255, 255, 255, 0.5);\n}\n\n.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {\n color: rgba(255, 255, 255, 0.75);\n}\n\n.navbar-dark .navbar-nav .nav-link.disabled {\n color: rgba(255, 255, 255, 0.25);\n}\n\n.navbar-dark .navbar-nav .show > .nav-link,\n.navbar-dark .navbar-nav .active > .nav-link,\n.navbar-dark .navbar-nav .nav-link.show,\n.navbar-dark .navbar-nav .nav-link.active {\n color: #fff;\n}\n\n.navbar-dark .navbar-toggler {\n color: rgba(255, 255, 255, 0.5);\n border-color: rgba(255, 255, 255, 0.1);\n}\n\n.navbar-dark .navbar-toggler-icon {\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20viewBox='0%200%2030%2030'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20stroke='rgba(255,%20255,%20255,%200.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n\n.navbar-dark .navbar-text {\n color: rgba(255, 255, 255, 0.5);\n}\n\n.navbar-dark .navbar-text a {\n color: #fff;\n}\n\n.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {\n color: #fff;\n}\n\n.card {\n position: relative;\n display: flex;\n flex-direction: column;\n min-width: 0;\n word-wrap: break-word;\n background-color: #fff;\n background-clip: border-box;\n border: 1px solid rgba(0, 0, 0, 0.125);\n border-radius: 0.25rem;\n}\n\n.card > hr {\n margin-right: 0;\n margin-left: 0;\n}\n\n.card > .list-group:first-child .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n\n.card > .list-group:last-child .list-group-item:last-child {\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.card-body {\n flex: 1 1 auto;\n padding: 1.25rem;\n}\n\n.card-title {\n margin-bottom: 0.75rem;\n}\n\n.card-subtitle {\n margin-top: -0.375rem;\n margin-bottom: 0;\n}\n\n.card-text:last-child {\n margin-bottom: 0;\n}\n\n.card-link:hover {\n text-decoration: none;\n}\n\n.card-link + .card-link {\n margin-left: 1.25rem;\n}\n\n.card-header {\n padding: 0.75rem 1.25rem;\n margin-bottom: 0;\n background-color: rgba(0, 0, 0, 0.03);\n border-bottom: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.card-header:first-child {\n border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;\n}\n\n.card-header + .list-group .list-group-item:first-child {\n border-top: 0;\n}\n\n.card-footer {\n padding: 0.75rem 1.25rem;\n background-color: rgba(0, 0, 0, 0.03);\n border-top: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.card-footer:last-child {\n border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);\n}\n\n.card-header-tabs {\n margin-right: -0.625rem;\n margin-bottom: -0.75rem;\n margin-left: -0.625rem;\n border-bottom: 0;\n}\n\n.card-header-pills {\n margin-right: -0.625rem;\n margin-left: -0.625rem;\n}\n\n.card-img-overlay {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: 1.25rem;\n}\n\n.card-img {\n width: 100%;\n border-radius: calc(0.25rem - 1px);\n}\n\n.card-img-top {\n width: 100%;\n border-top-left-radius: calc(0.25rem - 1px);\n border-top-right-radius: calc(0.25rem - 1px);\n}\n\n.card-img-bottom {\n width: 100%;\n border-bottom-right-radius: calc(0.25rem - 1px);\n border-bottom-left-radius: calc(0.25rem - 1px);\n}\n\n.card-deck {\n display: flex;\n flex-direction: column;\n}\n\n.card-deck .card {\n margin-bottom: 15px;\n}\n\n@media (min-width: 576px) {\n .card-deck {\n flex-flow: row wrap;\n margin-right: -15px;\n margin-left: -15px;\n }\n .card-deck .card {\n display: flex;\n flex: 1 0 0%;\n flex-direction: column;\n margin-right: 15px;\n margin-bottom: 0;\n margin-left: 15px;\n }\n}\n\n.card-group {\n display: flex;\n flex-direction: column;\n}\n\n.card-group > .card {\n margin-bottom: 15px;\n}\n\n@media (min-width: 576px) {\n .card-group {\n flex-flow: row wrap;\n }\n .card-group > .card {\n flex: 1 0 0%;\n margin-bottom: 0;\n }\n .card-group > .card + .card {\n margin-left: 0;\n border-left: 0;\n }\n .card-group > .card:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:last-child) .card-img-top,\n .card-group > .card:not(:last-child) .card-header {\n border-top-right-radius: 0;\n }\n .card-group > .card:not(:last-child) .card-img-bottom,\n .card-group > .card:not(:last-child) .card-footer {\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n .card-group > .card:not(:first-child) .card-img-top,\n .card-group > .card:not(:first-child) .card-header {\n border-top-left-radius: 0;\n }\n .card-group > .card:not(:first-child) .card-img-bottom,\n .card-group > .card:not(:first-child) .card-footer {\n border-bottom-left-radius: 0;\n }\n}\n\n.card-columns .card {\n margin-bottom: 0.75rem;\n}\n\n@media (min-width: 576px) {\n .card-columns {\n column-count: 3;\n column-gap: 1.25rem;\n orphans: 1;\n widows: 1;\n }\n .card-columns .card {\n display: inline-block;\n width: 100%;\n }\n}\n\n.accordion > .card {\n overflow: hidden;\n}\n\n.accordion > .card:not(:first-of-type) .card-header:first-child {\n border-radius: 0;\n}\n\n.accordion > .card:not(:first-of-type):not(:last-of-type) {\n border-bottom: 0;\n border-radius: 0;\n}\n\n.accordion > .card:first-of-type {\n border-bottom: 0;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.accordion > .card:last-of-type {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.accordion > .card .card-header {\n margin-bottom: -1px;\n}\n\n.breadcrumb {\n display: flex;\n flex-wrap: wrap;\n padding: 0.75rem 1rem;\n margin-bottom: 1rem;\n list-style: none;\n background-color: #e9ecef;\n border-radius: 0.25rem;\n}\n\n.breadcrumb-item + .breadcrumb-item {\n padding-left: 0.5rem;\n}\n\n.breadcrumb-item + .breadcrumb-item::before {\n display: inline-block;\n padding-right: 0.5rem;\n color: #6c757d;\n content: \"/\";\n}\n\n.breadcrumb-item + .breadcrumb-item:hover::before {\n text-decoration: underline;\n}\n\n.breadcrumb-item + .breadcrumb-item:hover::before {\n text-decoration: none;\n}\n\n.breadcrumb-item.active {\n color: #6c757d;\n}\n\n.pagination {\n display: flex;\n padding-left: 0;\n list-style: none;\n border-radius: 0.25rem;\n}\n\n.page-link {\n position: relative;\n display: block;\n padding: 0.5rem 0.75rem;\n margin-left: -1px;\n line-height: 1.25;\n color: #007bff;\n background-color: #fff;\n border: 1px solid #dee2e6;\n}\n\n.page-link:hover {\n z-index: 2;\n color: #0056b3;\n text-decoration: none;\n background-color: #e9ecef;\n border-color: #dee2e6;\n}\n\n.page-link:focus {\n z-index: 2;\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.page-item:first-child .page-link {\n margin-left: 0;\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.page-item:last-child .page-link {\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n}\n\n.page-item.active .page-link {\n z-index: 1;\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.page-item.disabled .page-link {\n color: #6c757d;\n pointer-events: none;\n cursor: auto;\n background-color: #fff;\n border-color: #dee2e6;\n}\n\n.pagination-lg .page-link {\n padding: 0.75rem 1.5rem;\n font-size: 1.25rem;\n line-height: 1.5;\n}\n\n.pagination-lg .page-item:first-child .page-link {\n border-top-left-radius: 0.3rem;\n border-bottom-left-radius: 0.3rem;\n}\n\n.pagination-lg .page-item:last-child .page-link {\n border-top-right-radius: 0.3rem;\n border-bottom-right-radius: 0.3rem;\n}\n\n.pagination-sm .page-link {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n}\n\n.pagination-sm .page-item:first-child .page-link {\n border-top-left-radius: 0.2rem;\n border-bottom-left-radius: 0.2rem;\n}\n\n.pagination-sm .page-item:last-child .page-link {\n border-top-right-radius: 0.2rem;\n border-bottom-right-radius: 0.2rem;\n}\n\n.badge {\n display: inline-block;\n padding: 0.25em 0.4em;\n font-size: 75%;\n font-weight: 700;\n line-height: 1;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: 0.25rem;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .badge {\n transition: none;\n }\n}\n\na.badge:hover, a.badge:focus {\n text-decoration: none;\n}\n\n.badge:empty {\n display: none;\n}\n\n.btn .badge {\n position: relative;\n top: -1px;\n}\n\n.badge-pill {\n padding-right: 0.6em;\n padding-left: 0.6em;\n border-radius: 10rem;\n}\n\n.badge-primary {\n color: #fff;\n background-color: #007bff;\n}\n\na.badge-primary:hover, a.badge-primary:focus {\n color: #fff;\n background-color: #0062cc;\n}\n\na.badge-primary:focus, a.badge-primary.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.badge-secondary {\n color: #fff;\n background-color: #6c757d;\n}\n\na.badge-secondary:hover, a.badge-secondary:focus {\n color: #fff;\n background-color: #545b62;\n}\n\na.badge-secondary:focus, a.badge-secondary.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.badge-success {\n color: #fff;\n background-color: #28a745;\n}\n\na.badge-success:hover, a.badge-success:focus {\n color: #fff;\n background-color: #1e7e34;\n}\n\na.badge-success:focus, a.badge-success.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.badge-info {\n color: #fff;\n background-color: #17a2b8;\n}\n\na.badge-info:hover, a.badge-info:focus {\n color: #fff;\n background-color: #117a8b;\n}\n\na.badge-info:focus, a.badge-info.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.badge-warning {\n color: #212529;\n background-color: #ffc107;\n}\n\na.badge-warning:hover, a.badge-warning:focus {\n color: #212529;\n background-color: #d39e00;\n}\n\na.badge-warning:focus, a.badge-warning.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.badge-danger {\n color: #fff;\n background-color: #dc3545;\n}\n\na.badge-danger:hover, a.badge-danger:focus {\n color: #fff;\n background-color: #bd2130;\n}\n\na.badge-danger:focus, a.badge-danger.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.badge-light {\n color: #212529;\n background-color: #f8f9fa;\n}\n\na.badge-light:hover, a.badge-light:focus {\n color: #212529;\n background-color: #dae0e5;\n}\n\na.badge-light:focus, a.badge-light.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.badge-dark {\n color: #fff;\n background-color: #343a40;\n}\n\na.badge-dark:hover, a.badge-dark:focus {\n color: #fff;\n background-color: #1d2124;\n}\n\na.badge-dark:focus, a.badge-dark.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.jumbotron {\n padding: 2rem 1rem;\n margin-bottom: 2rem;\n background-color: #e9ecef;\n border-radius: 0.3rem;\n}\n\n@media (min-width: 576px) {\n .jumbotron {\n padding: 4rem 2rem;\n }\n}\n\n.jumbotron-fluid {\n padding-right: 0;\n padding-left: 0;\n border-radius: 0;\n}\n\n.alert {\n position: relative;\n padding: 0.75rem 1.25rem;\n margin-bottom: 1rem;\n border: 1px solid transparent;\n border-radius: 0.25rem;\n}\n\n.alert-heading {\n color: inherit;\n}\n\n.alert-link {\n font-weight: 700;\n}\n\n.alert-dismissible {\n padding-right: 4rem;\n}\n\n.alert-dismissible .close {\n position: absolute;\n top: 0;\n right: 0;\n padding: 0.75rem 1.25rem;\n color: inherit;\n}\n\n.alert-primary {\n color: #004085;\n background-color: #cce5ff;\n border-color: #b8daff;\n}\n\n.alert-primary hr {\n border-top-color: #9fcdff;\n}\n\n.alert-primary .alert-link {\n color: #002752;\n}\n\n.alert-secondary {\n color: #383d41;\n background-color: #e2e3e5;\n border-color: #d6d8db;\n}\n\n.alert-secondary hr {\n border-top-color: #c8cbcf;\n}\n\n.alert-secondary .alert-link {\n color: #202326;\n}\n\n.alert-success {\n color: #155724;\n background-color: #d4edda;\n border-color: #c3e6cb;\n}\n\n.alert-success hr {\n border-top-color: #b1dfbb;\n}\n\n.alert-success .alert-link {\n color: #0b2e13;\n}\n\n.alert-info {\n color: #0c5460;\n background-color: #d1ecf1;\n border-color: #bee5eb;\n}\n\n.alert-info hr {\n border-top-color: #abdde5;\n}\n\n.alert-info .alert-link {\n color: #062c33;\n}\n\n.alert-warning {\n color: #856404;\n background-color: #fff3cd;\n border-color: #ffeeba;\n}\n\n.alert-warning hr {\n border-top-color: #ffe8a1;\n}\n\n.alert-warning .alert-link {\n color: #533f03;\n}\n\n.alert-danger {\n color: #721c24;\n background-color: #f8d7da;\n border-color: #f5c6cb;\n}\n\n.alert-danger hr {\n border-top-color: #f1b0b7;\n}\n\n.alert-danger .alert-link {\n color: #491217;\n}\n\n.alert-light {\n color: #818182;\n background-color: #fefefe;\n border-color: #fdfdfe;\n}\n\n.alert-light hr {\n border-top-color: #ececf6;\n}\n\n.alert-light .alert-link {\n color: #686868;\n}\n\n.alert-dark {\n color: #1b1e21;\n background-color: #d6d8d9;\n border-color: #c6c8ca;\n}\n\n.alert-dark hr {\n border-top-color: #b9bbbe;\n}\n\n.alert-dark .alert-link {\n color: #040505;\n}\n\n@keyframes progress-bar-stripes {\n from {\n background-position: 1rem 0;\n }\n to {\n background-position: 0 0;\n }\n}\n\n.progress {\n display: flex;\n height: 1rem;\n overflow: hidden;\n font-size: 0.75rem;\n background-color: #e9ecef;\n border-radius: 0.25rem;\n}\n\n.progress-bar {\n display: flex;\n flex-direction: column;\n justify-content: center;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n background-color: #007bff;\n transition: width 0.6s ease;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .progress-bar {\n transition: none;\n }\n}\n\n.progress-bar-striped {\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: 1rem 1rem;\n}\n\n.progress-bar-animated {\n animation: progress-bar-stripes 1s linear infinite;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .progress-bar-animated {\n animation: none;\n }\n}\n\n.media {\n display: flex;\n align-items: flex-start;\n}\n\n.media-body {\n flex: 1;\n}\n\n.list-group {\n display: flex;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n}\n\n.list-group-item-action {\n width: 100%;\n color: #495057;\n text-align: inherit;\n}\n\n.list-group-item-action:hover, .list-group-item-action:focus {\n z-index: 1;\n color: #495057;\n text-decoration: none;\n background-color: #f8f9fa;\n}\n\n.list-group-item-action:active {\n color: #212529;\n background-color: #e9ecef;\n}\n\n.list-group-item {\n position: relative;\n display: block;\n padding: 0.75rem 1.25rem;\n margin-bottom: -1px;\n background-color: #fff;\n border: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n\n.list-group-item:last-child {\n margin-bottom: 0;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.list-group-item.disabled, .list-group-item:disabled {\n color: #6c757d;\n pointer-events: none;\n background-color: #fff;\n}\n\n.list-group-item.active {\n z-index: 2;\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.list-group-horizontal {\n flex-direction: row;\n}\n\n.list-group-horizontal .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n}\n\n.list-group-horizontal .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n}\n\n.list-group-horizontal .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n}\n\n@media (min-width: 576px) {\n .list-group-horizontal-sm {\n flex-direction: row;\n }\n .list-group-horizontal-sm .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n }\n .list-group-horizontal-sm .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-sm .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n}\n\n@media (min-width: 768px) {\n .list-group-horizontal-md {\n flex-direction: row;\n }\n .list-group-horizontal-md .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n }\n .list-group-horizontal-md .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-md .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n}\n\n@media (min-width: 992px) {\n .list-group-horizontal-lg {\n flex-direction: row;\n }\n .list-group-horizontal-lg .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n }\n .list-group-horizontal-lg .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-lg .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n}\n\n@media (min-width: 1200px) {\n .list-group-horizontal-xl {\n flex-direction: row;\n }\n .list-group-horizontal-xl .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n }\n .list-group-horizontal-xl .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-xl .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n}\n\n.list-group-flush .list-group-item {\n border-right: 0;\n border-left: 0;\n border-radius: 0;\n}\n\n.list-group-flush .list-group-item:last-child {\n margin-bottom: -1px;\n}\n\n.list-group-flush:first-child .list-group-item:first-child {\n border-top: 0;\n}\n\n.list-group-flush:last-child .list-group-item:last-child {\n margin-bottom: 0;\n border-bottom: 0;\n}\n\n.list-group-item-primary {\n color: #004085;\n background-color: #b8daff;\n}\n\n.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {\n color: #004085;\n background-color: #9fcdff;\n}\n\n.list-group-item-primary.list-group-item-action.active {\n color: #fff;\n background-color: #004085;\n border-color: #004085;\n}\n\n.list-group-item-secondary {\n color: #383d41;\n background-color: #d6d8db;\n}\n\n.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {\n color: #383d41;\n background-color: #c8cbcf;\n}\n\n.list-group-item-secondary.list-group-item-action.active {\n color: #fff;\n background-color: #383d41;\n border-color: #383d41;\n}\n\n.list-group-item-success {\n color: #155724;\n background-color: #c3e6cb;\n}\n\n.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {\n color: #155724;\n background-color: #b1dfbb;\n}\n\n.list-group-item-success.list-group-item-action.active {\n color: #fff;\n background-color: #155724;\n border-color: #155724;\n}\n\n.list-group-item-info {\n color: #0c5460;\n background-color: #bee5eb;\n}\n\n.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {\n color: #0c5460;\n background-color: #abdde5;\n}\n\n.list-group-item-info.list-group-item-action.active {\n color: #fff;\n background-color: #0c5460;\n border-color: #0c5460;\n}\n\n.list-group-item-warning {\n color: #856404;\n background-color: #ffeeba;\n}\n\n.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {\n color: #856404;\n background-color: #ffe8a1;\n}\n\n.list-group-item-warning.list-group-item-action.active {\n color: #fff;\n background-color: #856404;\n border-color: #856404;\n}\n\n.list-group-item-danger {\n color: #721c24;\n background-color: #f5c6cb;\n}\n\n.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {\n color: #721c24;\n background-color: #f1b0b7;\n}\n\n.list-group-item-danger.list-group-item-action.active {\n color: #fff;\n background-color: #721c24;\n border-color: #721c24;\n}\n\n.list-group-item-light {\n color: #818182;\n background-color: #fdfdfe;\n}\n\n.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {\n color: #818182;\n background-color: #ececf6;\n}\n\n.list-group-item-light.list-group-item-action.active {\n color: #fff;\n background-color: #818182;\n border-color: #818182;\n}\n\n.list-group-item-dark {\n color: #1b1e21;\n background-color: #c6c8ca;\n}\n\n.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {\n color: #1b1e21;\n background-color: #b9bbbe;\n}\n\n.list-group-item-dark.list-group-item-action.active {\n color: #fff;\n background-color: #1b1e21;\n border-color: #1b1e21;\n}\n\n.close {\n float: right;\n font-size: 1.5rem;\n font-weight: 700;\n line-height: 1;\n color: #000;\n text-shadow: 0 1px 0 #fff;\n opacity: .5;\n}\n\n.close:hover {\n color: #000;\n text-decoration: none;\n}\n\n.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {\n opacity: .75;\n}\n\nbutton.close {\n padding: 0;\n background-color: transparent;\n border: 0;\n appearance: none;\n}\n\na.close.disabled {\n pointer-events: none;\n}\n\n.toast {\n max-width: 350px;\n overflow: hidden;\n font-size: 0.875rem;\n background-color: rgba(255, 255, 255, 0.85);\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.1);\n box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);\n backdrop-filter: blur(10px);\n opacity: 0;\n border-radius: 0.25rem;\n}\n\n.toast:not(:last-child) {\n margin-bottom: 0.75rem;\n}\n\n.toast.showing {\n opacity: 1;\n}\n\n.toast.show {\n display: block;\n opacity: 1;\n}\n\n.toast.hide {\n display: none;\n}\n\n.toast-header {\n display: flex;\n align-items: center;\n padding: 0.25rem 0.75rem;\n color: #6c757d;\n background-color: rgba(255, 255, 255, 0.85);\n background-clip: padding-box;\n border-bottom: 1px solid rgba(0, 0, 0, 0.05);\n}\n\n.toast-body {\n padding: 0.75rem;\n}\n\n.modal-open {\n overflow: hidden;\n}\n\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n\n.modal {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1050;\n display: none;\n width: 100%;\n height: 100%;\n overflow: hidden;\n outline: 0;\n}\n\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 0.5rem;\n pointer-events: none;\n}\n\n.modal.fade .modal-dialog {\n transition: transform 0.3s ease-out;\n transform: translate(0, -50px);\n}\n\n@media (prefers-reduced-motion: reduce) {\n .modal.fade .modal-dialog {\n transition: none;\n }\n}\n\n.modal.show .modal-dialog {\n transform: none;\n}\n\n.modal-dialog-scrollable {\n display: flex;\n max-height: calc(100% - 1rem);\n}\n\n.modal-dialog-scrollable .modal-content {\n max-height: calc(100vh - 1rem);\n overflow: hidden;\n}\n\n.modal-dialog-scrollable .modal-header,\n.modal-dialog-scrollable .modal-footer {\n flex-shrink: 0;\n}\n\n.modal-dialog-scrollable .modal-body {\n overflow-y: auto;\n}\n\n.modal-dialog-centered {\n display: flex;\n align-items: center;\n min-height: calc(100% - 1rem);\n}\n\n.modal-dialog-centered::before {\n display: block;\n height: calc(100vh - 1rem);\n content: \"\";\n}\n\n.modal-dialog-centered.modal-dialog-scrollable {\n flex-direction: column;\n justify-content: center;\n height: 100%;\n}\n\n.modal-dialog-centered.modal-dialog-scrollable .modal-content {\n max-height: none;\n}\n\n.modal-dialog-centered.modal-dialog-scrollable::before {\n content: none;\n}\n\n.modal-content {\n position: relative;\n display: flex;\n flex-direction: column;\n width: 100%;\n pointer-events: auto;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 0.3rem;\n outline: 0;\n}\n\n.modal-backdrop {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1040;\n width: 100vw;\n height: 100vh;\n background-color: #000;\n}\n\n.modal-backdrop.fade {\n opacity: 0;\n}\n\n.modal-backdrop.show {\n opacity: 0.5;\n}\n\n.modal-header {\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n padding: 1rem 1rem;\n border-bottom: 1px solid #dee2e6;\n border-top-left-radius: 0.3rem;\n border-top-right-radius: 0.3rem;\n}\n\n.modal-header .close {\n padding: 1rem 1rem;\n margin: -1rem -1rem -1rem auto;\n}\n\n.modal-title {\n margin-bottom: 0;\n line-height: 1.5;\n}\n\n.modal-body {\n position: relative;\n flex: 1 1 auto;\n padding: 1rem;\n}\n\n.modal-footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n padding: 1rem;\n border-top: 1px solid #dee2e6;\n border-bottom-right-radius: 0.3rem;\n border-bottom-left-radius: 0.3rem;\n}\n\n.modal-footer > :not(:first-child) {\n margin-left: .25rem;\n}\n\n.modal-footer > :not(:last-child) {\n margin-right: .25rem;\n}\n\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n\n@media (min-width: 576px) {\n .modal-dialog {\n max-width: 500px;\n margin: 1.75rem auto;\n }\n .modal-dialog-scrollable {\n max-height: calc(100% - 3.5rem);\n }\n .modal-dialog-scrollable .modal-content {\n max-height: calc(100vh - 3.5rem);\n }\n .modal-dialog-centered {\n min-height: calc(100% - 3.5rem);\n }\n .modal-dialog-centered::before {\n height: calc(100vh - 3.5rem);\n }\n .modal-sm {\n max-width: 300px;\n }\n}\n\n@media (min-width: 992px) {\n .modal-lg,\n .modal-xl {\n max-width: 800px;\n }\n}\n\n@media (min-width: 1200px) {\n .modal-xl {\n max-width: 1140px;\n }\n}\n\n.tooltip {\n position: absolute;\n z-index: 1070;\n display: block;\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n white-space: normal;\n line-break: auto;\n font-size: 0.875rem;\n word-wrap: break-word;\n opacity: 0;\n}\n\n.tooltip.show {\n opacity: 0.9;\n}\n\n.tooltip .arrow {\n position: absolute;\n display: block;\n width: 0.8rem;\n height: 0.4rem;\n}\n\n.tooltip .arrow::before {\n position: absolute;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n}\n\n.bs-tooltip-top, .bs-tooltip-auto[x-placement^=\"top\"] {\n padding: 0.4rem 0;\n}\n\n.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^=\"top\"] .arrow {\n bottom: 0;\n}\n\n.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^=\"top\"] .arrow::before {\n top: 0;\n border-width: 0.4rem 0.4rem 0;\n border-top-color: #000;\n}\n\n.bs-tooltip-right, .bs-tooltip-auto[x-placement^=\"right\"] {\n padding: 0 0.4rem;\n}\n\n.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^=\"right\"] .arrow {\n left: 0;\n width: 0.4rem;\n height: 0.8rem;\n}\n\n.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^=\"right\"] .arrow::before {\n right: 0;\n border-width: 0.4rem 0.4rem 0.4rem 0;\n border-right-color: #000;\n}\n\n.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^=\"bottom\"] {\n padding: 0.4rem 0;\n}\n\n.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^=\"bottom\"] .arrow {\n top: 0;\n}\n\n.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^=\"bottom\"] .arrow::before {\n bottom: 0;\n border-width: 0 0.4rem 0.4rem;\n border-bottom-color: #000;\n}\n\n.bs-tooltip-left, .bs-tooltip-auto[x-placement^=\"left\"] {\n padding: 0 0.4rem;\n}\n\n.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^=\"left\"] .arrow {\n right: 0;\n width: 0.4rem;\n height: 0.8rem;\n}\n\n.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^=\"left\"] .arrow::before {\n left: 0;\n border-width: 0.4rem 0 0.4rem 0.4rem;\n border-left-color: #000;\n}\n\n.tooltip-inner {\n max-width: 200px;\n padding: 0.25rem 0.5rem;\n color: #fff;\n text-align: center;\n background-color: #000;\n border-radius: 0.25rem;\n}\n\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1060;\n display: block;\n max-width: 276px;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n white-space: normal;\n line-break: auto;\n font-size: 0.875rem;\n word-wrap: break-word;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 0.3rem;\n}\n\n.popover .arrow {\n position: absolute;\n display: block;\n width: 1rem;\n height: 0.5rem;\n margin: 0 0.3rem;\n}\n\n.popover .arrow::before, .popover .arrow::after {\n position: absolute;\n display: block;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n}\n\n.bs-popover-top, .bs-popover-auto[x-placement^=\"top\"] {\n margin-bottom: 0.5rem;\n}\n\n.bs-popover-top > .arrow, .bs-popover-auto[x-placement^=\"top\"] > .arrow {\n bottom: calc((0.5rem + 1px) * -1);\n}\n\n.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^=\"top\"] > .arrow::before {\n bottom: 0;\n border-width: 0.5rem 0.5rem 0;\n border-top-color: rgba(0, 0, 0, 0.25);\n}\n\n.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^=\"top\"] > .arrow::after {\n bottom: 1px;\n border-width: 0.5rem 0.5rem 0;\n border-top-color: #fff;\n}\n\n.bs-popover-right, .bs-popover-auto[x-placement^=\"right\"] {\n margin-left: 0.5rem;\n}\n\n.bs-popover-right > .arrow, .bs-popover-auto[x-placement^=\"right\"] > .arrow {\n left: calc((0.5rem + 1px) * -1);\n width: 0.5rem;\n height: 1rem;\n margin: 0.3rem 0;\n}\n\n.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^=\"right\"] > .arrow::before {\n left: 0;\n border-width: 0.5rem 0.5rem 0.5rem 0;\n border-right-color: rgba(0, 0, 0, 0.25);\n}\n\n.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^=\"right\"] > .arrow::after {\n left: 1px;\n border-width: 0.5rem 0.5rem 0.5rem 0;\n border-right-color: #fff;\n}\n\n.bs-popover-bottom, .bs-popover-auto[x-placement^=\"bottom\"] {\n margin-top: 0.5rem;\n}\n\n.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^=\"bottom\"] > .arrow {\n top: calc((0.5rem + 1px) * -1);\n}\n\n.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^=\"bottom\"] > .arrow::before {\n top: 0;\n border-width: 0 0.5rem 0.5rem 0.5rem;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n}\n\n.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^=\"bottom\"] > .arrow::after {\n top: 1px;\n border-width: 0 0.5rem 0.5rem 0.5rem;\n border-bottom-color: #fff;\n}\n\n.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^=\"bottom\"] .popover-header::before {\n position: absolute;\n top: 0;\n left: 50%;\n display: block;\n width: 1rem;\n margin-left: -0.5rem;\n content: \"\";\n border-bottom: 1px solid #f7f7f7;\n}\n\n.bs-popover-left, .bs-popover-auto[x-placement^=\"left\"] {\n margin-right: 0.5rem;\n}\n\n.bs-popover-left > .arrow, .bs-popover-auto[x-placement^=\"left\"] > .arrow {\n right: calc((0.5rem + 1px) * -1);\n width: 0.5rem;\n height: 1rem;\n margin: 0.3rem 0;\n}\n\n.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^=\"left\"] > .arrow::before {\n right: 0;\n border-width: 0.5rem 0 0.5rem 0.5rem;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n\n.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^=\"left\"] > .arrow::after {\n right: 1px;\n border-width: 0.5rem 0 0.5rem 0.5rem;\n border-left-color: #fff;\n}\n\n.popover-header {\n padding: 0.5rem 0.75rem;\n margin-bottom: 0;\n font-size: 1rem;\n background-color: #f7f7f7;\n border-bottom: 1px solid #ebebeb;\n border-top-left-radius: calc(0.3rem - 1px);\n border-top-right-radius: calc(0.3rem - 1px);\n}\n\n.popover-header:empty {\n display: none;\n}\n\n.popover-body {\n padding: 0.5rem 0.75rem;\n color: #212529;\n}\n\n.carousel {\n position: relative;\n}\n\n.carousel.pointer-event {\n touch-action: pan-y;\n}\n\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n\n.carousel-inner::after {\n display: block;\n clear: both;\n content: \"\";\n}\n\n.carousel-item {\n position: relative;\n display: none;\n float: left;\n width: 100%;\n margin-right: -100%;\n backface-visibility: hidden;\n transition: transform 0.6s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .carousel-item {\n transition: none;\n }\n}\n\n.carousel-item.active,\n.carousel-item-next,\n.carousel-item-prev {\n display: block;\n}\n\n.carousel-item-next:not(.carousel-item-left),\n.active.carousel-item-right {\n transform: translateX(100%);\n}\n\n.carousel-item-prev:not(.carousel-item-right),\n.active.carousel-item-left {\n transform: translateX(-100%);\n}\n\n.carousel-fade .carousel-item {\n opacity: 0;\n transition-property: opacity;\n transform: none;\n}\n\n.carousel-fade .carousel-item.active,\n.carousel-fade .carousel-item-next.carousel-item-left,\n.carousel-fade .carousel-item-prev.carousel-item-right {\n z-index: 1;\n opacity: 1;\n}\n\n.carousel-fade .active.carousel-item-left,\n.carousel-fade .active.carousel-item-right {\n z-index: 0;\n opacity: 0;\n transition: 0s 0.6s opacity;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .carousel-fade .active.carousel-item-left,\n .carousel-fade .active.carousel-item-right {\n transition: none;\n }\n}\n\n.carousel-control-prev,\n.carousel-control-next {\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 15%;\n color: #fff;\n text-align: center;\n opacity: 0.5;\n transition: opacity 0.15s ease;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .carousel-control-prev,\n .carousel-control-next {\n transition: none;\n }\n}\n\n.carousel-control-prev:hover, .carousel-control-prev:focus,\n.carousel-control-next:hover,\n.carousel-control-next:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n opacity: 0.9;\n}\n\n.carousel-control-prev {\n left: 0;\n}\n\n.carousel-control-next {\n right: 0;\n}\n\n.carousel-control-prev-icon,\n.carousel-control-next-icon {\n display: inline-block;\n width: 20px;\n height: 20px;\n background: no-repeat 50% / 100% 100%;\n}\n\n.carousel-control-prev-icon {\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='%23fff'%20viewBox='0%200%208%208'%3e%3cpath%20d='M5.25%200l-4%204%204%204%201.5-1.5-2.5-2.5%202.5-2.5-1.5-1.5z'/%3e%3c/svg%3e/");\n}\n\n.carousel-control-next-icon {\n background-image: url(http://github.com/%22data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='%23fff'%20viewBox='0%200%208%208'%3e%3cpath%20d='M2.75%200l-1.5%201.5%202.5%202.5-2.5%202.5%201.5%201.5%204-4-4-4z'/%3e%3c/svg%3e/");\n}\n\n.carousel-indicators {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 15;\n display: flex;\n justify-content: center;\n padding-left: 0;\n margin-right: 15%;\n margin-left: 15%;\n list-style: none;\n}\n\n.carousel-indicators li {\n box-sizing: content-box;\n flex: 0 1 auto;\n width: 30px;\n height: 3px;\n margin-right: 3px;\n margin-left: 3px;\n text-indent: -999px;\n cursor: pointer;\n background-color: #fff;\n background-clip: padding-box;\n border-top: 10px solid transparent;\n border-bottom: 10px solid transparent;\n opacity: .5;\n transition: opacity 0.6s ease;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .carousel-indicators li {\n transition: none;\n }\n}\n\n.carousel-indicators .active {\n opacity: 1;\n}\n\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 20px;\n left: 15%;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: #fff;\n text-align: center;\n}\n\n@keyframes spinner-border {\n to {\n transform: rotate(360deg);\n }\n}\n\n.spinner-border {\n display: inline-block;\n width: 2rem;\n height: 2rem;\n vertical-align: text-bottom;\n border: 0.25em solid currentColor;\n border-right-color: transparent;\n border-radius: 50%;\n animation: spinner-border .75s linear infinite;\n}\n\n.spinner-border-sm {\n width: 1rem;\n height: 1rem;\n border-width: 0.2em;\n}\n\n@keyframes spinner-grow {\n 0% {\n transform: scale(0);\n }\n 50% {\n opacity: 1;\n }\n}\n\n.spinner-grow {\n display: inline-block;\n width: 2rem;\n height: 2rem;\n vertical-align: text-bottom;\n background-color: currentColor;\n border-radius: 50%;\n opacity: 0;\n animation: spinner-grow .75s linear infinite;\n}\n\n.spinner-grow-sm {\n width: 1rem;\n height: 1rem;\n}\n\n.align-baseline {\n vertical-align: baseline !important;\n}\n\n.align-top {\n vertical-align: top !important;\n}\n\n.align-middle {\n vertical-align: middle !important;\n}\n\n.align-bottom {\n vertical-align: bottom !important;\n}\n\n.align-text-bottom {\n vertical-align: text-bottom !important;\n}\n\n.align-text-top {\n vertical-align: text-top !important;\n}\n\n.bg-primary {\n background-color: #007bff !important;\n}\n\na.bg-primary:hover, a.bg-primary:focus,\nbutton.bg-primary:hover,\nbutton.bg-primary:focus {\n background-color: #0062cc !important;\n}\n\n.bg-secondary {\n background-color: #6c757d !important;\n}\n\na.bg-secondary:hover, a.bg-secondary:focus,\nbutton.bg-secondary:hover,\nbutton.bg-secondary:focus {\n background-color: #545b62 !important;\n}\n\n.bg-success {\n background-color: #28a745 !important;\n}\n\na.bg-success:hover, a.bg-success:focus,\nbutton.bg-success:hover,\nbutton.bg-success:focus {\n background-color: #1e7e34 !important;\n}\n\n.bg-info {\n background-color: #17a2b8 !important;\n}\n\na.bg-info:hover, a.bg-info:focus,\nbutton.bg-info:hover,\nbutton.bg-info:focus {\n background-color: #117a8b !important;\n}\n\n.bg-warning {\n background-color: #ffc107 !important;\n}\n\na.bg-warning:hover, a.bg-warning:focus,\nbutton.bg-warning:hover,\nbutton.bg-warning:focus {\n background-color: #d39e00 !important;\n}\n\n.bg-danger {\n background-color: #dc3545 !important;\n}\n\na.bg-danger:hover, a.bg-danger:focus,\nbutton.bg-danger:hover,\nbutton.bg-danger:focus {\n background-color: #bd2130 !important;\n}\n\n.bg-light {\n background-color: #f8f9fa !important;\n}\n\na.bg-light:hover, a.bg-light:focus,\nbutton.bg-light:hover,\nbutton.bg-light:focus {\n background-color: #dae0e5 !important;\n}\n\n.bg-dark {\n background-color: #343a40 !important;\n}\n\na.bg-dark:hover, a.bg-dark:focus,\nbutton.bg-dark:hover,\nbutton.bg-dark:focus {\n background-color: #1d2124 !important;\n}\n\n.bg-white {\n background-color: #fff !important;\n}\n\n.bg-transparent {\n background-color: transparent !important;\n}\n\n.border {\n border: 1px solid #dee2e6 !important;\n}\n\n.border-top {\n border-top: 1px solid #dee2e6 !important;\n}\n\n.border-right {\n border-right: 1px solid #dee2e6 !important;\n}\n\n.border-bottom {\n border-bottom: 1px solid #dee2e6 !important;\n}\n\n.border-left {\n border-left: 1px solid #dee2e6 !important;\n}\n\n.border-0 {\n border: 0 !important;\n}\n\n.border-top-0 {\n border-top: 0 !important;\n}\n\n.border-right-0 {\n border-right: 0 !important;\n}\n\n.border-bottom-0 {\n border-bottom: 0 !important;\n}\n\n.border-left-0 {\n border-left: 0 !important;\n}\n\n.border-primary {\n border-color: #007bff !important;\n}\n\n.border-secondary {\n border-color: #6c757d !important;\n}\n\n.border-success {\n border-color: #28a745 !important;\n}\n\n.border-info {\n border-color: #17a2b8 !important;\n}\n\n.border-warning {\n border-color: #ffc107 !important;\n}\n\n.border-danger {\n border-color: #dc3545 !important;\n}\n\n.border-light {\n border-color: #f8f9fa !important;\n}\n\n.border-dark {\n border-color: #343a40 !important;\n}\n\n.border-white {\n border-color: #fff !important;\n}\n\n.rounded-sm {\n border-radius: 0.2rem !important;\n}\n\n.rounded {\n border-radius: 0.25rem !important;\n}\n\n.rounded-top {\n border-top-left-radius: 0.25rem !important;\n border-top-right-radius: 0.25rem !important;\n}\n\n.rounded-right {\n border-top-right-radius: 0.25rem !important;\n border-bottom-right-radius: 0.25rem !important;\n}\n\n.rounded-bottom {\n border-bottom-right-radius: 0.25rem !important;\n border-bottom-left-radius: 0.25rem !important;\n}\n\n.rounded-left {\n border-top-left-radius: 0.25rem !important;\n border-bottom-left-radius: 0.25rem !important;\n}\n\n.rounded-lg {\n border-radius: 0.3rem !important;\n}\n\n.rounded-circle {\n border-radius: 50% !important;\n}\n\n.rounded-pill {\n border-radius: 50rem !important;\n}\n\n.rounded-0 {\n border-radius: 0 !important;\n}\n\n.clearfix::after {\n display: block;\n clear: both;\n content: \"\";\n}\n\n.d-none {\n display: none !important;\n}\n\n.d-inline {\n display: inline !important;\n}\n\n.d-inline-block {\n display: inline-block !important;\n}\n\n.d-block {\n display: block !important;\n}\n\n.d-table {\n display: table !important;\n}\n\n.d-table-row {\n display: table-row !important;\n}\n\n.d-table-cell {\n display: table-cell !important;\n}\n\n.d-flex {\n display: flex !important;\n}\n\n.d-inline-flex {\n display: inline-flex !important;\n}\n\n@media (min-width: 576px) {\n .d-sm-none {\n display: none !important;\n }\n .d-sm-inline {\n display: inline !important;\n }\n .d-sm-inline-block {\n display: inline-block !important;\n }\n .d-sm-block {\n display: block !important;\n }\n .d-sm-table {\n display: table !important;\n }\n .d-sm-table-row {\n display: table-row !important;\n }\n .d-sm-table-cell {\n display: table-cell !important;\n }\n .d-sm-flex {\n display: flex !important;\n }\n .d-sm-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 768px) {\n .d-md-none {\n display: none !important;\n }\n .d-md-inline {\n display: inline !important;\n }\n .d-md-inline-block {\n display: inline-block !important;\n }\n .d-md-block {\n display: block !important;\n }\n .d-md-table {\n display: table !important;\n }\n .d-md-table-row {\n display: table-row !important;\n }\n .d-md-table-cell {\n display: table-cell !important;\n }\n .d-md-flex {\n display: flex !important;\n }\n .d-md-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 992px) {\n .d-lg-none {\n display: none !important;\n }\n .d-lg-inline {\n display: inline !important;\n }\n .d-lg-inline-block {\n display: inline-block !important;\n }\n .d-lg-block {\n display: block !important;\n }\n .d-lg-table {\n display: table !important;\n }\n .d-lg-table-row {\n display: table-row !important;\n }\n .d-lg-table-cell {\n display: table-cell !important;\n }\n .d-lg-flex {\n display: flex !important;\n }\n .d-lg-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 1200px) {\n .d-xl-none {\n display: none !important;\n }\n .d-xl-inline {\n display: inline !important;\n }\n .d-xl-inline-block {\n display: inline-block !important;\n }\n .d-xl-block {\n display: block !important;\n }\n .d-xl-table {\n display: table !important;\n }\n .d-xl-table-row {\n display: table-row !important;\n }\n .d-xl-table-cell {\n display: table-cell !important;\n }\n .d-xl-flex {\n display: flex !important;\n }\n .d-xl-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media print {\n .d-print-none {\n display: none !important;\n }\n .d-print-inline {\n display: inline !important;\n }\n .d-print-inline-block {\n display: inline-block !important;\n }\n .d-print-block {\n display: block !important;\n }\n .d-print-table {\n display: table !important;\n }\n .d-print-table-row {\n display: table-row !important;\n }\n .d-print-table-cell {\n display: table-cell !important;\n }\n .d-print-flex {\n display: flex !important;\n }\n .d-print-inline-flex {\n display: inline-flex !important;\n }\n}\n\n.embed-responsive {\n position: relative;\n display: block;\n width: 100%;\n padding: 0;\n overflow: hidden;\n}\n\n.embed-responsive::before {\n display: block;\n content: \"\";\n}\n\n.embed-responsive .embed-responsive-item,\n.embed-responsive iframe,\n.embed-responsive embed,\n.embed-responsive object,\n.embed-responsive video {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: 0;\n}\n\n.embed-responsive-21by9::before {\n padding-top: 42.857143%;\n}\n\n.embed-responsive-16by9::before {\n padding-top: 56.25%;\n}\n\n.embed-responsive-4by3::before {\n padding-top: 75%;\n}\n\n.embed-responsive-1by1::before {\n padding-top: 100%;\n}\n\n.flex-row {\n flex-direction: row !important;\n}\n\n.flex-column {\n flex-direction: column !important;\n}\n\n.flex-row-reverse {\n flex-direction: row-reverse !important;\n}\n\n.flex-column-reverse {\n flex-direction: column-reverse !important;\n}\n\n.flex-wrap {\n flex-wrap: wrap !important;\n}\n\n.flex-nowrap {\n flex-wrap: nowrap !important;\n}\n\n.flex-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n}\n\n.flex-fill {\n flex: 1 1 auto !important;\n}\n\n.flex-grow-0 {\n flex-grow: 0 !important;\n}\n\n.flex-grow-1 {\n flex-grow: 1 !important;\n}\n\n.flex-shrink-0 {\n flex-shrink: 0 !important;\n}\n\n.flex-shrink-1 {\n flex-shrink: 1 !important;\n}\n\n.justify-content-start {\n justify-content: flex-start !important;\n}\n\n.justify-content-end {\n justify-content: flex-end !important;\n}\n\n.justify-content-center {\n justify-content: center !important;\n}\n\n.justify-content-between {\n justify-content: space-between !important;\n}\n\n.justify-content-around {\n justify-content: space-around !important;\n}\n\n.align-items-start {\n align-items: flex-start !important;\n}\n\n.align-items-end {\n align-items: flex-end !important;\n}\n\n.align-items-center {\n align-items: center !important;\n}\n\n.align-items-baseline {\n align-items: baseline !important;\n}\n\n.align-items-stretch {\n align-items: stretch !important;\n}\n\n.align-content-start {\n align-content: flex-start !important;\n}\n\n.align-content-end {\n align-content: flex-end !important;\n}\n\n.align-content-center {\n align-content: center !important;\n}\n\n.align-content-between {\n align-content: space-between !important;\n}\n\n.align-content-around {\n align-content: space-around !important;\n}\n\n.align-content-stretch {\n align-content: stretch !important;\n}\n\n.align-self-auto {\n align-self: auto !important;\n}\n\n.align-self-start {\n align-self: flex-start !important;\n}\n\n.align-self-end {\n align-self: flex-end !important;\n}\n\n.align-self-center {\n align-self: center !important;\n}\n\n.align-self-baseline {\n align-self: baseline !important;\n}\n\n.align-self-stretch {\n align-self: stretch !important;\n}\n\n@media (min-width: 576px) {\n .flex-sm-row {\n flex-direction: row !important;\n }\n .flex-sm-column {\n flex-direction: column !important;\n }\n .flex-sm-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-sm-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-sm-wrap {\n flex-wrap: wrap !important;\n }\n .flex-sm-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-sm-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .flex-sm-fill {\n flex: 1 1 auto !important;\n }\n .flex-sm-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-sm-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-sm-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-sm-shrink-1 {\n flex-shrink: 1 !important;\n }\n .justify-content-sm-start {\n justify-content: flex-start !important;\n }\n .justify-content-sm-end {\n justify-content: flex-end !important;\n }\n .justify-content-sm-center {\n justify-content: center !important;\n }\n .justify-content-sm-between {\n justify-content: space-between !important;\n }\n .justify-content-sm-around {\n justify-content: space-around !important;\n }\n .align-items-sm-start {\n align-items: flex-start !important;\n }\n .align-items-sm-end {\n align-items: flex-end !important;\n }\n .align-items-sm-center {\n align-items: center !important;\n }\n .align-items-sm-baseline {\n align-items: baseline !important;\n }\n .align-items-sm-stretch {\n align-items: stretch !important;\n }\n .align-content-sm-start {\n align-content: flex-start !important;\n }\n .align-content-sm-end {\n align-content: flex-end !important;\n }\n .align-content-sm-center {\n align-content: center !important;\n }\n .align-content-sm-between {\n align-content: space-between !important;\n }\n .align-content-sm-around {\n align-content: space-around !important;\n }\n .align-content-sm-stretch {\n align-content: stretch !important;\n }\n .align-self-sm-auto {\n align-self: auto !important;\n }\n .align-self-sm-start {\n align-self: flex-start !important;\n }\n .align-self-sm-end {\n align-self: flex-end !important;\n }\n .align-self-sm-center {\n align-self: center !important;\n }\n .align-self-sm-baseline {\n align-self: baseline !important;\n }\n .align-self-sm-stretch {\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 768px) {\n .flex-md-row {\n flex-direction: row !important;\n }\n .flex-md-column {\n flex-direction: column !important;\n }\n .flex-md-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-md-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-md-wrap {\n flex-wrap: wrap !important;\n }\n .flex-md-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-md-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .flex-md-fill {\n flex: 1 1 auto !important;\n }\n .flex-md-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-md-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-md-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-md-shrink-1 {\n flex-shrink: 1 !important;\n }\n .justify-content-md-start {\n justify-content: flex-start !important;\n }\n .justify-content-md-end {\n justify-content: flex-end !important;\n }\n .justify-content-md-center {\n justify-content: center !important;\n }\n .justify-content-md-between {\n justify-content: space-between !important;\n }\n .justify-content-md-around {\n justify-content: space-around !important;\n }\n .align-items-md-start {\n align-items: flex-start !important;\n }\n .align-items-md-end {\n align-items: flex-end !important;\n }\n .align-items-md-center {\n align-items: center !important;\n }\n .align-items-md-baseline {\n align-items: baseline !important;\n }\n .align-items-md-stretch {\n align-items: stretch !important;\n }\n .align-content-md-start {\n align-content: flex-start !important;\n }\n .align-content-md-end {\n align-content: flex-end !important;\n }\n .align-content-md-center {\n align-content: center !important;\n }\n .align-content-md-between {\n align-content: space-between !important;\n }\n .align-content-md-around {\n align-content: space-around !important;\n }\n .align-content-md-stretch {\n align-content: stretch !important;\n }\n .align-self-md-auto {\n align-self: auto !important;\n }\n .align-self-md-start {\n align-self: flex-start !important;\n }\n .align-self-md-end {\n align-self: flex-end !important;\n }\n .align-self-md-center {\n align-self: center !important;\n }\n .align-self-md-baseline {\n align-self: baseline !important;\n }\n .align-self-md-stretch {\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 992px) {\n .flex-lg-row {\n flex-direction: row !important;\n }\n .flex-lg-column {\n flex-direction: column !important;\n }\n .flex-lg-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-lg-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-lg-wrap {\n flex-wrap: wrap !important;\n }\n .flex-lg-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-lg-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .flex-lg-fill {\n flex: 1 1 auto !important;\n }\n .flex-lg-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-lg-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-lg-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-lg-shrink-1 {\n flex-shrink: 1 !important;\n }\n .justify-content-lg-start {\n justify-content: flex-start !important;\n }\n .justify-content-lg-end {\n justify-content: flex-end !important;\n }\n .justify-content-lg-center {\n justify-content: center !important;\n }\n .justify-content-lg-between {\n justify-content: space-between !important;\n }\n .justify-content-lg-around {\n justify-content: space-around !important;\n }\n .align-items-lg-start {\n align-items: flex-start !important;\n }\n .align-items-lg-end {\n align-items: flex-end !important;\n }\n .align-items-lg-center {\n align-items: center !important;\n }\n .align-items-lg-baseline {\n align-items: baseline !important;\n }\n .align-items-lg-stretch {\n align-items: stretch !important;\n }\n .align-content-lg-start {\n align-content: flex-start !important;\n }\n .align-content-lg-end {\n align-content: flex-end !important;\n }\n .align-content-lg-center {\n align-content: center !important;\n }\n .align-content-lg-between {\n align-content: space-between !important;\n }\n .align-content-lg-around {\n align-content: space-around !important;\n }\n .align-content-lg-stretch {\n align-content: stretch !important;\n }\n .align-self-lg-auto {\n align-self: auto !important;\n }\n .align-self-lg-start {\n align-self: flex-start !important;\n }\n .align-self-lg-end {\n align-self: flex-end !important;\n }\n .align-self-lg-center {\n align-self: center !important;\n }\n .align-self-lg-baseline {\n align-self: baseline !important;\n }\n .align-self-lg-stretch {\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 1200px) {\n .flex-xl-row {\n flex-direction: row !important;\n }\n .flex-xl-column {\n flex-direction: column !important;\n }\n .flex-xl-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-xl-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-xl-wrap {\n flex-wrap: wrap !important;\n }\n .flex-xl-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-xl-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .flex-xl-fill {\n flex: 1 1 auto !important;\n }\n .flex-xl-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-xl-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-xl-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-xl-shrink-1 {\n flex-shrink: 1 !important;\n }\n .justify-content-xl-start {\n justify-content: flex-start !important;\n }\n .justify-content-xl-end {\n justify-content: flex-end !important;\n }\n .justify-content-xl-center {\n justify-content: center !important;\n }\n .justify-content-xl-between {\n justify-content: space-between !important;\n }\n .justify-content-xl-around {\n justify-content: space-around !important;\n }\n .align-items-xl-start {\n align-items: flex-start !important;\n }\n .align-items-xl-end {\n align-items: flex-end !important;\n }\n .align-items-xl-center {\n align-items: center !important;\n }\n .align-items-xl-baseline {\n align-items: baseline !important;\n }\n .align-items-xl-stretch {\n align-items: stretch !important;\n }\n .align-content-xl-start {\n align-content: flex-start !important;\n }\n .align-content-xl-end {\n align-content: flex-end !important;\n }\n .align-content-xl-center {\n align-content: center !important;\n }\n .align-content-xl-between {\n align-content: space-between !important;\n }\n .align-content-xl-around {\n align-content: space-around !important;\n }\n .align-content-xl-stretch {\n align-content: stretch !important;\n }\n .align-self-xl-auto {\n align-self: auto !important;\n }\n .align-self-xl-start {\n align-self: flex-start !important;\n }\n .align-self-xl-end {\n align-self: flex-end !important;\n }\n .align-self-xl-center {\n align-self: center !important;\n }\n .align-self-xl-baseline {\n align-self: baseline !important;\n }\n .align-self-xl-stretch {\n align-self: stretch !important;\n }\n}\n\n.float-left {\n float: left !important;\n}\n\n.float-right {\n float: right !important;\n}\n\n.float-none {\n float: none !important;\n}\n\n@media (min-width: 576px) {\n .float-sm-left {\n float: left !important;\n }\n .float-sm-right {\n float: right !important;\n }\n .float-sm-none {\n float: none !important;\n }\n}\n\n@media (min-width: 768px) {\n .float-md-left {\n float: left !important;\n }\n .float-md-right {\n float: right !important;\n }\n .float-md-none {\n float: none !important;\n }\n}\n\n@media (min-width: 992px) {\n .float-lg-left {\n float: left !important;\n }\n .float-lg-right {\n float: right !important;\n }\n .float-lg-none {\n float: none !important;\n }\n}\n\n@media (min-width: 1200px) {\n .float-xl-left {\n float: left !important;\n }\n .float-xl-right {\n float: right !important;\n }\n .float-xl-none {\n float: none !important;\n }\n}\n\n.overflow-auto {\n overflow: auto !important;\n}\n\n.overflow-hidden {\n overflow: hidden !important;\n}\n\n.position-static {\n position: static !important;\n}\n\n.position-relative {\n position: relative !important;\n}\n\n.position-absolute {\n position: absolute !important;\n}\n\n.position-fixed {\n position: fixed !important;\n}\n\n.position-sticky {\n position: sticky !important;\n}\n\n.fixed-top {\n position: fixed;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n\n.fixed-bottom {\n position: fixed;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1030;\n}\n\n@supports (position: sticky) {\n .sticky-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n}\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n}\n\n.sr-only-focusable:active, .sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n overflow: visible;\n clip: auto;\n white-space: normal;\n}\n\n.shadow-sm {\n box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;\n}\n\n.shadow {\n box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;\n}\n\n.shadow-lg {\n box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;\n}\n\n.shadow-none {\n box-shadow: none !important;\n}\n\n.w-25 {\n width: 25% !important;\n}\n\n.w-50 {\n width: 50% !important;\n}\n\n.w-75 {\n width: 75% !important;\n}\n\n.w-100 {\n width: 100% !important;\n}\n\n.w-auto {\n width: auto !important;\n}\n\n.h-25 {\n height: 25% !important;\n}\n\n.h-50 {\n height: 50% !important;\n}\n\n.h-75 {\n height: 75% !important;\n}\n\n.h-100 {\n height: 100% !important;\n}\n\n.h-auto {\n height: auto !important;\n}\n\n.mw-100 {\n max-width: 100% !important;\n}\n\n.mh-100 {\n max-height: 100% !important;\n}\n\n.min-vw-100 {\n min-width: 100vw !important;\n}\n\n.min-vh-100 {\n min-height: 100vh !important;\n}\n\n.vw-100 {\n width: 100vw !important;\n}\n\n.vh-100 {\n height: 100vh !important;\n}\n\n.stretched-link::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n pointer-events: auto;\n content: \"\";\n background-color: rgba(0, 0, 0, 0);\n}\n\n.m-0 {\n margin: 0 !important;\n}\n\n.mt-0,\n.my-0 {\n margin-top: 0 !important;\n}\n\n.mr-0,\n.mx-0 {\n margin-right: 0 !important;\n}\n\n.mb-0,\n.my-0 {\n margin-bottom: 0 !important;\n}\n\n.ml-0,\n.mx-0 {\n margin-left: 0 !important;\n}\n\n.m-1 {\n margin: 0.25rem !important;\n}\n\n.mt-1,\n.my-1 {\n margin-top: 0.25rem !important;\n}\n\n.mr-1,\n.mx-1 {\n margin-right: 0.25rem !important;\n}\n\n.mb-1,\n.my-1 {\n margin-bottom: 0.25rem !important;\n}\n\n.ml-1,\n.mx-1 {\n margin-left: 0.25rem !important;\n}\n\n.m-2 {\n margin: 0.5rem !important;\n}\n\n.mt-2,\n.my-2 {\n margin-top: 0.5rem !important;\n}\n\n.mr-2,\n.mx-2 {\n margin-right: 0.5rem !important;\n}\n\n.mb-2,\n.my-2 {\n margin-bottom: 0.5rem !important;\n}\n\n.ml-2,\n.mx-2 {\n margin-left: 0.5rem !important;\n}\n\n.m-3 {\n margin: 1rem !important;\n}\n\n.mt-3,\n.my-3 {\n margin-top: 1rem !important;\n}\n\n.mr-3,\n.mx-3 {\n margin-right: 1rem !important;\n}\n\n.mb-3,\n.my-3 {\n margin-bottom: 1rem !important;\n}\n\n.ml-3,\n.mx-3 {\n margin-left: 1rem !important;\n}\n\n.m-4 {\n margin: 1.5rem !important;\n}\n\n.mt-4,\n.my-4 {\n margin-top: 1.5rem !important;\n}\n\n.mr-4,\n.mx-4 {\n margin-right: 1.5rem !important;\n}\n\n.mb-4,\n.my-4 {\n margin-bottom: 1.5rem !important;\n}\n\n.ml-4,\n.mx-4 {\n margin-left: 1.5rem !important;\n}\n\n.m-5 {\n margin: 3rem !important;\n}\n\n.mt-5,\n.my-5 {\n margin-top: 3rem !important;\n}\n\n.mr-5,\n.mx-5 {\n margin-right: 3rem !important;\n}\n\n.mb-5,\n.my-5 {\n margin-bottom: 3rem !important;\n}\n\n.ml-5,\n.mx-5 {\n margin-left: 3rem !important;\n}\n\n.p-0 {\n padding: 0 !important;\n}\n\n.pt-0,\n.py-0 {\n padding-top: 0 !important;\n}\n\n.pr-0,\n.px-0 {\n padding-right: 0 !important;\n}\n\n.pb-0,\n.py-0 {\n padding-bottom: 0 !important;\n}\n\n.pl-0,\n.px-0 {\n padding-left: 0 !important;\n}\n\n.p-1 {\n padding: 0.25rem !important;\n}\n\n.pt-1,\n.py-1 {\n padding-top: 0.25rem !important;\n}\n\n.pr-1,\n.px-1 {\n padding-right: 0.25rem !important;\n}\n\n.pb-1,\n.py-1 {\n padding-bottom: 0.25rem !important;\n}\n\n.pl-1,\n.px-1 {\n padding-left: 0.25rem !important;\n}\n\n.p-2 {\n padding: 0.5rem !important;\n}\n\n.pt-2,\n.py-2 {\n padding-top: 0.5rem !important;\n}\n\n.pr-2,\n.px-2 {\n padding-right: 0.5rem !important;\n}\n\n.pb-2,\n.py-2 {\n padding-bottom: 0.5rem !important;\n}\n\n.pl-2,\n.px-2 {\n padding-left: 0.5rem !important;\n}\n\n.p-3 {\n padding: 1rem !important;\n}\n\n.pt-3,\n.py-3 {\n padding-top: 1rem !important;\n}\n\n.pr-3,\n.px-3 {\n padding-right: 1rem !important;\n}\n\n.pb-3,\n.py-3 {\n padding-bottom: 1rem !important;\n}\n\n.pl-3,\n.px-3 {\n padding-left: 1rem !important;\n}\n\n.p-4 {\n padding: 1.5rem !important;\n}\n\n.pt-4,\n.py-4 {\n padding-top: 1.5rem !important;\n}\n\n.pr-4,\n.px-4 {\n padding-right: 1.5rem !important;\n}\n\n.pb-4,\n.py-4 {\n padding-bottom: 1.5rem !important;\n}\n\n.pl-4,\n.px-4 {\n padding-left: 1.5rem !important;\n}\n\n.p-5 {\n padding: 3rem !important;\n}\n\n.pt-5,\n.py-5 {\n padding-top: 3rem !important;\n}\n\n.pr-5,\n.px-5 {\n padding-right: 3rem !important;\n}\n\n.pb-5,\n.py-5 {\n padding-bottom: 3rem !important;\n}\n\n.pl-5,\n.px-5 {\n padding-left: 3rem !important;\n}\n\n.m-n1 {\n margin: -0.25rem !important;\n}\n\n.mt-n1,\n.my-n1 {\n margin-top: -0.25rem !important;\n}\n\n.mr-n1,\n.mx-n1 {\n margin-right: -0.25rem !important;\n}\n\n.mb-n1,\n.my-n1 {\n margin-bottom: -0.25rem !important;\n}\n\n.ml-n1,\n.mx-n1 {\n margin-left: -0.25rem !important;\n}\n\n.m-n2 {\n margin: -0.5rem !important;\n}\n\n.mt-n2,\n.my-n2 {\n margin-top: -0.5rem !important;\n}\n\n.mr-n2,\n.mx-n2 {\n margin-right: -0.5rem !important;\n}\n\n.mb-n2,\n.my-n2 {\n margin-bottom: -0.5rem !important;\n}\n\n.ml-n2,\n.mx-n2 {\n margin-left: -0.5rem !important;\n}\n\n.m-n3 {\n margin: -1rem !important;\n}\n\n.mt-n3,\n.my-n3 {\n margin-top: -1rem !important;\n}\n\n.mr-n3,\n.mx-n3 {\n margin-right: -1rem !important;\n}\n\n.mb-n3,\n.my-n3 {\n margin-bottom: -1rem !important;\n}\n\n.ml-n3,\n.mx-n3 {\n margin-left: -1rem !important;\n}\n\n.m-n4 {\n margin: -1.5rem !important;\n}\n\n.mt-n4,\n.my-n4 {\n margin-top: -1.5rem !important;\n}\n\n.mr-n4,\n.mx-n4 {\n margin-right: -1.5rem !important;\n}\n\n.mb-n4,\n.my-n4 {\n margin-bottom: -1.5rem !important;\n}\n\n.ml-n4,\n.mx-n4 {\n margin-left: -1.5rem !important;\n}\n\n.m-n5 {\n margin: -3rem !important;\n}\n\n.mt-n5,\n.my-n5 {\n margin-top: -3rem !important;\n}\n\n.mr-n5,\n.mx-n5 {\n margin-right: -3rem !important;\n}\n\n.mb-n5,\n.my-n5 {\n margin-bottom: -3rem !important;\n}\n\n.ml-n5,\n.mx-n5 {\n margin-left: -3rem !important;\n}\n\n.m-auto {\n margin: auto !important;\n}\n\n.mt-auto,\n.my-auto {\n margin-top: auto !important;\n}\n\n.mr-auto,\n.mx-auto {\n margin-right: auto !important;\n}\n\n.mb-auto,\n.my-auto {\n margin-bottom: auto !important;\n}\n\n.ml-auto,\n.mx-auto {\n margin-left: auto !important;\n}\n\n@media (min-width: 576px) {\n .m-sm-0 {\n margin: 0 !important;\n }\n .mt-sm-0,\n .my-sm-0 {\n margin-top: 0 !important;\n }\n .mr-sm-0,\n .mx-sm-0 {\n margin-right: 0 !important;\n }\n .mb-sm-0,\n .my-sm-0 {\n margin-bottom: 0 !important;\n }\n .ml-sm-0,\n .mx-sm-0 {\n margin-left: 0 !important;\n }\n .m-sm-1 {\n margin: 0.25rem !important;\n }\n .mt-sm-1,\n .my-sm-1 {\n margin-top: 0.25rem !important;\n }\n .mr-sm-1,\n .mx-sm-1 {\n margin-right: 0.25rem !important;\n }\n .mb-sm-1,\n .my-sm-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-sm-1,\n .mx-sm-1 {\n margin-left: 0.25rem !important;\n }\n .m-sm-2 {\n margin: 0.5rem !important;\n }\n .mt-sm-2,\n .my-sm-2 {\n margin-top: 0.5rem !important;\n }\n .mr-sm-2,\n .mx-sm-2 {\n margin-right: 0.5rem !important;\n }\n .mb-sm-2,\n .my-sm-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-sm-2,\n .mx-sm-2 {\n margin-left: 0.5rem !important;\n }\n .m-sm-3 {\n margin: 1rem !important;\n }\n .mt-sm-3,\n .my-sm-3 {\n margin-top: 1rem !important;\n }\n .mr-sm-3,\n .mx-sm-3 {\n margin-right: 1rem !important;\n }\n .mb-sm-3,\n .my-sm-3 {\n margin-bottom: 1rem !important;\n }\n .ml-sm-3,\n .mx-sm-3 {\n margin-left: 1rem !important;\n }\n .m-sm-4 {\n margin: 1.5rem !important;\n }\n .mt-sm-4,\n .my-sm-4 {\n margin-top: 1.5rem !important;\n }\n .mr-sm-4,\n .mx-sm-4 {\n margin-right: 1.5rem !important;\n }\n .mb-sm-4,\n .my-sm-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-sm-4,\n .mx-sm-4 {\n margin-left: 1.5rem !important;\n }\n .m-sm-5 {\n margin: 3rem !important;\n }\n .mt-sm-5,\n .my-sm-5 {\n margin-top: 3rem !important;\n }\n .mr-sm-5,\n .mx-sm-5 {\n margin-right: 3rem !important;\n }\n .mb-sm-5,\n .my-sm-5 {\n margin-bottom: 3rem !important;\n }\n .ml-sm-5,\n .mx-sm-5 {\n margin-left: 3rem !important;\n }\n .p-sm-0 {\n padding: 0 !important;\n }\n .pt-sm-0,\n .py-sm-0 {\n padding-top: 0 !important;\n }\n .pr-sm-0,\n .px-sm-0 {\n padding-right: 0 !important;\n }\n .pb-sm-0,\n .py-sm-0 {\n padding-bottom: 0 !important;\n }\n .pl-sm-0,\n .px-sm-0 {\n padding-left: 0 !important;\n }\n .p-sm-1 {\n padding: 0.25rem !important;\n }\n .pt-sm-1,\n .py-sm-1 {\n padding-top: 0.25rem !important;\n }\n .pr-sm-1,\n .px-sm-1 {\n padding-right: 0.25rem !important;\n }\n .pb-sm-1,\n .py-sm-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-sm-1,\n .px-sm-1 {\n padding-left: 0.25rem !important;\n }\n .p-sm-2 {\n padding: 0.5rem !important;\n }\n .pt-sm-2,\n .py-sm-2 {\n padding-top: 0.5rem !important;\n }\n .pr-sm-2,\n .px-sm-2 {\n padding-right: 0.5rem !important;\n }\n .pb-sm-2,\n .py-sm-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-sm-2,\n .px-sm-2 {\n padding-left: 0.5rem !important;\n }\n .p-sm-3 {\n padding: 1rem !important;\n }\n .pt-sm-3,\n .py-sm-3 {\n padding-top: 1rem !important;\n }\n .pr-sm-3,\n .px-sm-3 {\n padding-right: 1rem !important;\n }\n .pb-sm-3,\n .py-sm-3 {\n padding-bottom: 1rem !important;\n }\n .pl-sm-3,\n .px-sm-3 {\n padding-left: 1rem !important;\n }\n .p-sm-4 {\n padding: 1.5rem !important;\n }\n .pt-sm-4,\n .py-sm-4 {\n padding-top: 1.5rem !important;\n }\n .pr-sm-4,\n .px-sm-4 {\n padding-right: 1.5rem !important;\n }\n .pb-sm-4,\n .py-sm-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-sm-4,\n .px-sm-4 {\n padding-left: 1.5rem !important;\n }\n .p-sm-5 {\n padding: 3rem !important;\n }\n .pt-sm-5,\n .py-sm-5 {\n padding-top: 3rem !important;\n }\n .pr-sm-5,\n .px-sm-5 {\n padding-right: 3rem !important;\n }\n .pb-sm-5,\n .py-sm-5 {\n padding-bottom: 3rem !important;\n }\n .pl-sm-5,\n .px-sm-5 {\n padding-left: 3rem !important;\n }\n .m-sm-n1 {\n margin: -0.25rem !important;\n }\n .mt-sm-n1,\n .my-sm-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-sm-n1,\n .mx-sm-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-sm-n1,\n .my-sm-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-sm-n1,\n .mx-sm-n1 {\n margin-left: -0.25rem !important;\n }\n .m-sm-n2 {\n margin: -0.5rem !important;\n }\n .mt-sm-n2,\n .my-sm-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-sm-n2,\n .mx-sm-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-sm-n2,\n .my-sm-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-sm-n2,\n .mx-sm-n2 {\n margin-left: -0.5rem !important;\n }\n .m-sm-n3 {\n margin: -1rem !important;\n }\n .mt-sm-n3,\n .my-sm-n3 {\n margin-top: -1rem !important;\n }\n .mr-sm-n3,\n .mx-sm-n3 {\n margin-right: -1rem !important;\n }\n .mb-sm-n3,\n .my-sm-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-sm-n3,\n .mx-sm-n3 {\n margin-left: -1rem !important;\n }\n .m-sm-n4 {\n margin: -1.5rem !important;\n }\n .mt-sm-n4,\n .my-sm-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-sm-n4,\n .mx-sm-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-sm-n4,\n .my-sm-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-sm-n4,\n .mx-sm-n4 {\n margin-left: -1.5rem !important;\n }\n .m-sm-n5 {\n margin: -3rem !important;\n }\n .mt-sm-n5,\n .my-sm-n5 {\n margin-top: -3rem !important;\n }\n .mr-sm-n5,\n .mx-sm-n5 {\n margin-right: -3rem !important;\n }\n .mb-sm-n5,\n .my-sm-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-sm-n5,\n .mx-sm-n5 {\n margin-left: -3rem !important;\n }\n .m-sm-auto {\n margin: auto !important;\n }\n .mt-sm-auto,\n .my-sm-auto {\n margin-top: auto !important;\n }\n .mr-sm-auto,\n .mx-sm-auto {\n margin-right: auto !important;\n }\n .mb-sm-auto,\n .my-sm-auto {\n margin-bottom: auto !important;\n }\n .ml-sm-auto,\n .mx-sm-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 768px) {\n .m-md-0 {\n margin: 0 !important;\n }\n .mt-md-0,\n .my-md-0 {\n margin-top: 0 !important;\n }\n .mr-md-0,\n .mx-md-0 {\n margin-right: 0 !important;\n }\n .mb-md-0,\n .my-md-0 {\n margin-bottom: 0 !important;\n }\n .ml-md-0,\n .mx-md-0 {\n margin-left: 0 !important;\n }\n .m-md-1 {\n margin: 0.25rem !important;\n }\n .mt-md-1,\n .my-md-1 {\n margin-top: 0.25rem !important;\n }\n .mr-md-1,\n .mx-md-1 {\n margin-right: 0.25rem !important;\n }\n .mb-md-1,\n .my-md-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-md-1,\n .mx-md-1 {\n margin-left: 0.25rem !important;\n }\n .m-md-2 {\n margin: 0.5rem !important;\n }\n .mt-md-2,\n .my-md-2 {\n margin-top: 0.5rem !important;\n }\n .mr-md-2,\n .mx-md-2 {\n margin-right: 0.5rem !important;\n }\n .mb-md-2,\n .my-md-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-md-2,\n .mx-md-2 {\n margin-left: 0.5rem !important;\n }\n .m-md-3 {\n margin: 1rem !important;\n }\n .mt-md-3,\n .my-md-3 {\n margin-top: 1rem !important;\n }\n .mr-md-3,\n .mx-md-3 {\n margin-right: 1rem !important;\n }\n .mb-md-3,\n .my-md-3 {\n margin-bottom: 1rem !important;\n }\n .ml-md-3,\n .mx-md-3 {\n margin-left: 1rem !important;\n }\n .m-md-4 {\n margin: 1.5rem !important;\n }\n .mt-md-4,\n .my-md-4 {\n margin-top: 1.5rem !important;\n }\n .mr-md-4,\n .mx-md-4 {\n margin-right: 1.5rem !important;\n }\n .mb-md-4,\n .my-md-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-md-4,\n .mx-md-4 {\n margin-left: 1.5rem !important;\n }\n .m-md-5 {\n margin: 3rem !important;\n }\n .mt-md-5,\n .my-md-5 {\n margin-top: 3rem !important;\n }\n .mr-md-5,\n .mx-md-5 {\n margin-right: 3rem !important;\n }\n .mb-md-5,\n .my-md-5 {\n margin-bottom: 3rem !important;\n }\n .ml-md-5,\n .mx-md-5 {\n margin-left: 3rem !important;\n }\n .p-md-0 {\n padding: 0 !important;\n }\n .pt-md-0,\n .py-md-0 {\n padding-top: 0 !important;\n }\n .pr-md-0,\n .px-md-0 {\n padding-right: 0 !important;\n }\n .pb-md-0,\n .py-md-0 {\n padding-bottom: 0 !important;\n }\n .pl-md-0,\n .px-md-0 {\n padding-left: 0 !important;\n }\n .p-md-1 {\n padding: 0.25rem !important;\n }\n .pt-md-1,\n .py-md-1 {\n padding-top: 0.25rem !important;\n }\n .pr-md-1,\n .px-md-1 {\n padding-right: 0.25rem !important;\n }\n .pb-md-1,\n .py-md-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-md-1,\n .px-md-1 {\n padding-left: 0.25rem !important;\n }\n .p-md-2 {\n padding: 0.5rem !important;\n }\n .pt-md-2,\n .py-md-2 {\n padding-top: 0.5rem !important;\n }\n .pr-md-2,\n .px-md-2 {\n padding-right: 0.5rem !important;\n }\n .pb-md-2,\n .py-md-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-md-2,\n .px-md-2 {\n padding-left: 0.5rem !important;\n }\n .p-md-3 {\n padding: 1rem !important;\n }\n .pt-md-3,\n .py-md-3 {\n padding-top: 1rem !important;\n }\n .pr-md-3,\n .px-md-3 {\n padding-right: 1rem !important;\n }\n .pb-md-3,\n .py-md-3 {\n padding-bottom: 1rem !important;\n }\n .pl-md-3,\n .px-md-3 {\n padding-left: 1rem !important;\n }\n .p-md-4 {\n padding: 1.5rem !important;\n }\n .pt-md-4,\n .py-md-4 {\n padding-top: 1.5rem !important;\n }\n .pr-md-4,\n .px-md-4 {\n padding-right: 1.5rem !important;\n }\n .pb-md-4,\n .py-md-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-md-4,\n .px-md-4 {\n padding-left: 1.5rem !important;\n }\n .p-md-5 {\n padding: 3rem !important;\n }\n .pt-md-5,\n .py-md-5 {\n padding-top: 3rem !important;\n }\n .pr-md-5,\n .px-md-5 {\n padding-right: 3rem !important;\n }\n .pb-md-5,\n .py-md-5 {\n padding-bottom: 3rem !important;\n }\n .pl-md-5,\n .px-md-5 {\n padding-left: 3rem !important;\n }\n .m-md-n1 {\n margin: -0.25rem !important;\n }\n .mt-md-n1,\n .my-md-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-md-n1,\n .mx-md-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-md-n1,\n .my-md-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-md-n1,\n .mx-md-n1 {\n margin-left: -0.25rem !important;\n }\n .m-md-n2 {\n margin: -0.5rem !important;\n }\n .mt-md-n2,\n .my-md-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-md-n2,\n .mx-md-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-md-n2,\n .my-md-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-md-n2,\n .mx-md-n2 {\n margin-left: -0.5rem !important;\n }\n .m-md-n3 {\n margin: -1rem !important;\n }\n .mt-md-n3,\n .my-md-n3 {\n margin-top: -1rem !important;\n }\n .mr-md-n3,\n .mx-md-n3 {\n margin-right: -1rem !important;\n }\n .mb-md-n3,\n .my-md-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-md-n3,\n .mx-md-n3 {\n margin-left: -1rem !important;\n }\n .m-md-n4 {\n margin: -1.5rem !important;\n }\n .mt-md-n4,\n .my-md-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-md-n4,\n .mx-md-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-md-n4,\n .my-md-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-md-n4,\n .mx-md-n4 {\n margin-left: -1.5rem !important;\n }\n .m-md-n5 {\n margin: -3rem !important;\n }\n .mt-md-n5,\n .my-md-n5 {\n margin-top: -3rem !important;\n }\n .mr-md-n5,\n .mx-md-n5 {\n margin-right: -3rem !important;\n }\n .mb-md-n5,\n .my-md-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-md-n5,\n .mx-md-n5 {\n margin-left: -3rem !important;\n }\n .m-md-auto {\n margin: auto !important;\n }\n .mt-md-auto,\n .my-md-auto {\n margin-top: auto !important;\n }\n .mr-md-auto,\n .mx-md-auto {\n margin-right: auto !important;\n }\n .mb-md-auto,\n .my-md-auto {\n margin-bottom: auto !important;\n }\n .ml-md-auto,\n .mx-md-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 992px) {\n .m-lg-0 {\n margin: 0 !important;\n }\n .mt-lg-0,\n .my-lg-0 {\n margin-top: 0 !important;\n }\n .mr-lg-0,\n .mx-lg-0 {\n margin-right: 0 !important;\n }\n .mb-lg-0,\n .my-lg-0 {\n margin-bottom: 0 !important;\n }\n .ml-lg-0,\n .mx-lg-0 {\n margin-left: 0 !important;\n }\n .m-lg-1 {\n margin: 0.25rem !important;\n }\n .mt-lg-1,\n .my-lg-1 {\n margin-top: 0.25rem !important;\n }\n .mr-lg-1,\n .mx-lg-1 {\n margin-right: 0.25rem !important;\n }\n .mb-lg-1,\n .my-lg-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-lg-1,\n .mx-lg-1 {\n margin-left: 0.25rem !important;\n }\n .m-lg-2 {\n margin: 0.5rem !important;\n }\n .mt-lg-2,\n .my-lg-2 {\n margin-top: 0.5rem !important;\n }\n .mr-lg-2,\n .mx-lg-2 {\n margin-right: 0.5rem !important;\n }\n .mb-lg-2,\n .my-lg-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-lg-2,\n .mx-lg-2 {\n margin-left: 0.5rem !important;\n }\n .m-lg-3 {\n margin: 1rem !important;\n }\n .mt-lg-3,\n .my-lg-3 {\n margin-top: 1rem !important;\n }\n .mr-lg-3,\n .mx-lg-3 {\n margin-right: 1rem !important;\n }\n .mb-lg-3,\n .my-lg-3 {\n margin-bottom: 1rem !important;\n }\n .ml-lg-3,\n .mx-lg-3 {\n margin-left: 1rem !important;\n }\n .m-lg-4 {\n margin: 1.5rem !important;\n }\n .mt-lg-4,\n .my-lg-4 {\n margin-top: 1.5rem !important;\n }\n .mr-lg-4,\n .mx-lg-4 {\n margin-right: 1.5rem !important;\n }\n .mb-lg-4,\n .my-lg-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-lg-4,\n .mx-lg-4 {\n margin-left: 1.5rem !important;\n }\n .m-lg-5 {\n margin: 3rem !important;\n }\n .mt-lg-5,\n .my-lg-5 {\n margin-top: 3rem !important;\n }\n .mr-lg-5,\n .mx-lg-5 {\n margin-right: 3rem !important;\n }\n .mb-lg-5,\n .my-lg-5 {\n margin-bottom: 3rem !important;\n }\n .ml-lg-5,\n .mx-lg-5 {\n margin-left: 3rem !important;\n }\n .p-lg-0 {\n padding: 0 !important;\n }\n .pt-lg-0,\n .py-lg-0 {\n padding-top: 0 !important;\n }\n .pr-lg-0,\n .px-lg-0 {\n padding-right: 0 !important;\n }\n .pb-lg-0,\n .py-lg-0 {\n padding-bottom: 0 !important;\n }\n .pl-lg-0,\n .px-lg-0 {\n padding-left: 0 !important;\n }\n .p-lg-1 {\n padding: 0.25rem !important;\n }\n .pt-lg-1,\n .py-lg-1 {\n padding-top: 0.25rem !important;\n }\n .pr-lg-1,\n .px-lg-1 {\n padding-right: 0.25rem !important;\n }\n .pb-lg-1,\n .py-lg-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-lg-1,\n .px-lg-1 {\n padding-left: 0.25rem !important;\n }\n .p-lg-2 {\n padding: 0.5rem !important;\n }\n .pt-lg-2,\n .py-lg-2 {\n padding-top: 0.5rem !important;\n }\n .pr-lg-2,\n .px-lg-2 {\n padding-right: 0.5rem !important;\n }\n .pb-lg-2,\n .py-lg-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-lg-2,\n .px-lg-2 {\n padding-left: 0.5rem !important;\n }\n .p-lg-3 {\n padding: 1rem !important;\n }\n .pt-lg-3,\n .py-lg-3 {\n padding-top: 1rem !important;\n }\n .pr-lg-3,\n .px-lg-3 {\n padding-right: 1rem !important;\n }\n .pb-lg-3,\n .py-lg-3 {\n padding-bottom: 1rem !important;\n }\n .pl-lg-3,\n .px-lg-3 {\n padding-left: 1rem !important;\n }\n .p-lg-4 {\n padding: 1.5rem !important;\n }\n .pt-lg-4,\n .py-lg-4 {\n padding-top: 1.5rem !important;\n }\n .pr-lg-4,\n .px-lg-4 {\n padding-right: 1.5rem !important;\n }\n .pb-lg-4,\n .py-lg-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-lg-4,\n .px-lg-4 {\n padding-left: 1.5rem !important;\n }\n .p-lg-5 {\n padding: 3rem !important;\n }\n .pt-lg-5,\n .py-lg-5 {\n padding-top: 3rem !important;\n }\n .pr-lg-5,\n .px-lg-5 {\n padding-right: 3rem !important;\n }\n .pb-lg-5,\n .py-lg-5 {\n padding-bottom: 3rem !important;\n }\n .pl-lg-5,\n .px-lg-5 {\n padding-left: 3rem !important;\n }\n .m-lg-n1 {\n margin: -0.25rem !important;\n }\n .mt-lg-n1,\n .my-lg-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-lg-n1,\n .mx-lg-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-lg-n1,\n .my-lg-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-lg-n1,\n .mx-lg-n1 {\n margin-left: -0.25rem !important;\n }\n .m-lg-n2 {\n margin: -0.5rem !important;\n }\n .mt-lg-n2,\n .my-lg-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-lg-n2,\n .mx-lg-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-lg-n2,\n .my-lg-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-lg-n2,\n .mx-lg-n2 {\n margin-left: -0.5rem !important;\n }\n .m-lg-n3 {\n margin: -1rem !important;\n }\n .mt-lg-n3,\n .my-lg-n3 {\n margin-top: -1rem !important;\n }\n .mr-lg-n3,\n .mx-lg-n3 {\n margin-right: -1rem !important;\n }\n .mb-lg-n3,\n .my-lg-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-lg-n3,\n .mx-lg-n3 {\n margin-left: -1rem !important;\n }\n .m-lg-n4 {\n margin: -1.5rem !important;\n }\n .mt-lg-n4,\n .my-lg-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-lg-n4,\n .mx-lg-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-lg-n4,\n .my-lg-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-lg-n4,\n .mx-lg-n4 {\n margin-left: -1.5rem !important;\n }\n .m-lg-n5 {\n margin: -3rem !important;\n }\n .mt-lg-n5,\n .my-lg-n5 {\n margin-top: -3rem !important;\n }\n .mr-lg-n5,\n .mx-lg-n5 {\n margin-right: -3rem !important;\n }\n .mb-lg-n5,\n .my-lg-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-lg-n5,\n .mx-lg-n5 {\n margin-left: -3rem !important;\n }\n .m-lg-auto {\n margin: auto !important;\n }\n .mt-lg-auto,\n .my-lg-auto {\n margin-top: auto !important;\n }\n .mr-lg-auto,\n .mx-lg-auto {\n margin-right: auto !important;\n }\n .mb-lg-auto,\n .my-lg-auto {\n margin-bottom: auto !important;\n }\n .ml-lg-auto,\n .mx-lg-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 1200px) {\n .m-xl-0 {\n margin: 0 !important;\n }\n .mt-xl-0,\n .my-xl-0 {\n margin-top: 0 !important;\n }\n .mr-xl-0,\n .mx-xl-0 {\n margin-right: 0 !important;\n }\n .mb-xl-0,\n .my-xl-0 {\n margin-bottom: 0 !important;\n }\n .ml-xl-0,\n .mx-xl-0 {\n margin-left: 0 !important;\n }\n .m-xl-1 {\n margin: 0.25rem !important;\n }\n .mt-xl-1,\n .my-xl-1 {\n margin-top: 0.25rem !important;\n }\n .mr-xl-1,\n .mx-xl-1 {\n margin-right: 0.25rem !important;\n }\n .mb-xl-1,\n .my-xl-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-xl-1,\n .mx-xl-1 {\n margin-left: 0.25rem !important;\n }\n .m-xl-2 {\n margin: 0.5rem !important;\n }\n .mt-xl-2,\n .my-xl-2 {\n margin-top: 0.5rem !important;\n }\n .mr-xl-2,\n .mx-xl-2 {\n margin-right: 0.5rem !important;\n }\n .mb-xl-2,\n .my-xl-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-xl-2,\n .mx-xl-2 {\n margin-left: 0.5rem !important;\n }\n .m-xl-3 {\n margin: 1rem !important;\n }\n .mt-xl-3,\n .my-xl-3 {\n margin-top: 1rem !important;\n }\n .mr-xl-3,\n .mx-xl-3 {\n margin-right: 1rem !important;\n }\n .mb-xl-3,\n .my-xl-3 {\n margin-bottom: 1rem !important;\n }\n .ml-xl-3,\n .mx-xl-3 {\n margin-left: 1rem !important;\n }\n .m-xl-4 {\n margin: 1.5rem !important;\n }\n .mt-xl-4,\n .my-xl-4 {\n margin-top: 1.5rem !important;\n }\n .mr-xl-4,\n .mx-xl-4 {\n margin-right: 1.5rem !important;\n }\n .mb-xl-4,\n .my-xl-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-xl-4,\n .mx-xl-4 {\n margin-left: 1.5rem !important;\n }\n .m-xl-5 {\n margin: 3rem !important;\n }\n .mt-xl-5,\n .my-xl-5 {\n margin-top: 3rem !important;\n }\n .mr-xl-5,\n .mx-xl-5 {\n margin-right: 3rem !important;\n }\n .mb-xl-5,\n .my-xl-5 {\n margin-bottom: 3rem !important;\n }\n .ml-xl-5,\n .mx-xl-5 {\n margin-left: 3rem !important;\n }\n .p-xl-0 {\n padding: 0 !important;\n }\n .pt-xl-0,\n .py-xl-0 {\n padding-top: 0 !important;\n }\n .pr-xl-0,\n .px-xl-0 {\n padding-right: 0 !important;\n }\n .pb-xl-0,\n .py-xl-0 {\n padding-bottom: 0 !important;\n }\n .pl-xl-0,\n .px-xl-0 {\n padding-left: 0 !important;\n }\n .p-xl-1 {\n padding: 0.25rem !important;\n }\n .pt-xl-1,\n .py-xl-1 {\n padding-top: 0.25rem !important;\n }\n .pr-xl-1,\n .px-xl-1 {\n padding-right: 0.25rem !important;\n }\n .pb-xl-1,\n .py-xl-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-xl-1,\n .px-xl-1 {\n padding-left: 0.25rem !important;\n }\n .p-xl-2 {\n padding: 0.5rem !important;\n }\n .pt-xl-2,\n .py-xl-2 {\n padding-top: 0.5rem !important;\n }\n .pr-xl-2,\n .px-xl-2 {\n padding-right: 0.5rem !important;\n }\n .pb-xl-2,\n .py-xl-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-xl-2,\n .px-xl-2 {\n padding-left: 0.5rem !important;\n }\n .p-xl-3 {\n padding: 1rem !important;\n }\n .pt-xl-3,\n .py-xl-3 {\n padding-top: 1rem !important;\n }\n .pr-xl-3,\n .px-xl-3 {\n padding-right: 1rem !important;\n }\n .pb-xl-3,\n .py-xl-3 {\n padding-bottom: 1rem !important;\n }\n .pl-xl-3,\n .px-xl-3 {\n padding-left: 1rem !important;\n }\n .p-xl-4 {\n padding: 1.5rem !important;\n }\n .pt-xl-4,\n .py-xl-4 {\n padding-top: 1.5rem !important;\n }\n .pr-xl-4,\n .px-xl-4 {\n padding-right: 1.5rem !important;\n }\n .pb-xl-4,\n .py-xl-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-xl-4,\n .px-xl-4 {\n padding-left: 1.5rem !important;\n }\n .p-xl-5 {\n padding: 3rem !important;\n }\n .pt-xl-5,\n .py-xl-5 {\n padding-top: 3rem !important;\n }\n .pr-xl-5,\n .px-xl-5 {\n padding-right: 3rem !important;\n }\n .pb-xl-5,\n .py-xl-5 {\n padding-bottom: 3rem !important;\n }\n .pl-xl-5,\n .px-xl-5 {\n padding-left: 3rem !important;\n }\n .m-xl-n1 {\n margin: -0.25rem !important;\n }\n .mt-xl-n1,\n .my-xl-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-xl-n1,\n .mx-xl-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-xl-n1,\n .my-xl-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-xl-n1,\n .mx-xl-n1 {\n margin-left: -0.25rem !important;\n }\n .m-xl-n2 {\n margin: -0.5rem !important;\n }\n .mt-xl-n2,\n .my-xl-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-xl-n2,\n .mx-xl-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-xl-n2,\n .my-xl-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-xl-n2,\n .mx-xl-n2 {\n margin-left: -0.5rem !important;\n }\n .m-xl-n3 {\n margin: -1rem !important;\n }\n .mt-xl-n3,\n .my-xl-n3 {\n margin-top: -1rem !important;\n }\n .mr-xl-n3,\n .mx-xl-n3 {\n margin-right: -1rem !important;\n }\n .mb-xl-n3,\n .my-xl-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-xl-n3,\n .mx-xl-n3 {\n margin-left: -1rem !important;\n }\n .m-xl-n4 {\n margin: -1.5rem !important;\n }\n .mt-xl-n4,\n .my-xl-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-xl-n4,\n .mx-xl-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-xl-n4,\n .my-xl-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-xl-n4,\n .mx-xl-n4 {\n margin-left: -1.5rem !important;\n }\n .m-xl-n5 {\n margin: -3rem !important;\n }\n .mt-xl-n5,\n .my-xl-n5 {\n margin-top: -3rem !important;\n }\n .mr-xl-n5,\n .mx-xl-n5 {\n margin-right: -3rem !important;\n }\n .mb-xl-n5,\n .my-xl-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-xl-n5,\n .mx-xl-n5 {\n margin-left: -3rem !important;\n }\n .m-xl-auto {\n margin: auto !important;\n }\n .mt-xl-auto,\n .my-xl-auto {\n margin-top: auto !important;\n }\n .mr-xl-auto,\n .mx-xl-auto {\n margin-right: auto !important;\n }\n .mb-xl-auto,\n .my-xl-auto {\n margin-bottom: auto !important;\n }\n .ml-xl-auto,\n .mx-xl-auto {\n margin-left: auto !important;\n }\n}\n\n.text-monospace {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace !important;\n}\n\n.text-justify {\n text-align: justify !important;\n}\n\n.text-wrap {\n white-space: normal !important;\n}\n\n.text-nowrap {\n white-space: nowrap !important;\n}\n\n.text-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.text-left {\n text-align: left !important;\n}\n\n.text-right {\n text-align: right !important;\n}\n\n.text-center {\n text-align: center !important;\n}\n\n@media (min-width: 576px) {\n .text-sm-left {\n text-align: left !important;\n }\n .text-sm-right {\n text-align: right !important;\n }\n .text-sm-center {\n text-align: center !important;\n }\n}\n\n@media (min-width: 768px) {\n .text-md-left {\n text-align: left !important;\n }\n .text-md-right {\n text-align: right !important;\n }\n .text-md-center {\n text-align: center !important;\n }\n}\n\n@media (min-width: 992px) {\n .text-lg-left {\n text-align: left !important;\n }\n .text-lg-right {\n text-align: right !important;\n }\n .text-lg-center {\n text-align: center !important;\n }\n}\n\n@media (min-width: 1200px) {\n .text-xl-left {\n text-align: left !important;\n }\n .text-xl-right {\n text-align: right !important;\n }\n .text-xl-center {\n text-align: center !important;\n }\n}\n\n.text-lowercase {\n text-transform: lowercase !important;\n}\n\n.text-uppercase {\n text-transform: uppercase !important;\n}\n\n.text-capitalize {\n text-transform: capitalize !important;\n}\n\n.font-weight-light {\n font-weight: 300 !important;\n}\n\n.font-weight-lighter {\n font-weight: lighter !important;\n}\n\n.font-weight-normal {\n font-weight: 400 !important;\n}\n\n.font-weight-bold {\n font-weight: 700 !important;\n}\n\n.font-weight-bolder {\n font-weight: bolder !important;\n}\n\n.font-italic {\n font-style: italic !important;\n}\n\n.text-white {\n color: #fff !important;\n}\n\n.text-primary {\n color: #007bff !important;\n}\n\na.text-primary:hover, a.text-primary:focus {\n color: #0056b3 !important;\n}\n\n.text-secondary {\n color: #6c757d !important;\n}\n\na.text-secondary:hover, a.text-secondary:focus {\n color: #494f54 !important;\n}\n\n.text-success {\n color: #28a745 !important;\n}\n\na.text-success:hover, a.text-success:focus {\n color: #19692c !important;\n}\n\n.text-info {\n color: #17a2b8 !important;\n}\n\na.text-info:hover, a.text-info:focus {\n color: #0f6674 !important;\n}\n\n.text-warning {\n color: #ffc107 !important;\n}\n\na.text-warning:hover, a.text-warning:focus {\n color: #ba8b00 !important;\n}\n\n.text-danger {\n color: #dc3545 !important;\n}\n\na.text-danger:hover, a.text-danger:focus {\n color: #a71d2a !important;\n}\n\n.text-light {\n color: #f8f9fa !important;\n}\n\na.text-light:hover, a.text-light:focus {\n color: #cbd3da !important;\n}\n\n.text-dark {\n color: #343a40 !important;\n}\n\na.text-dark:hover, a.text-dark:focus {\n color: #121416 !important;\n}\n\n.text-body {\n color: #212529 !important;\n}\n\n.text-muted {\n color: #6c757d !important;\n}\n\n.text-black-50 {\n color: rgba(0, 0, 0, 0.5) !important;\n}\n\n.text-white-50 {\n color: rgba(255, 255, 255, 0.5) !important;\n}\n\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n\n.text-decoration-none {\n text-decoration: none !important;\n}\n\n.text-break {\n word-break: break-word !important;\n overflow-wrap: break-word !important;\n}\n\n.text-reset {\n color: inherit !important;\n}\n\n.visible {\n visibility: visible !important;\n}\n\n.invisible {\n visibility: hidden !important;\n}\n\n@media print {\n *,\n *::before,\n *::after {\n text-shadow: none !important;\n box-shadow: none !important;\n }\n a:not(.btn) {\n text-decoration: underline;\n }\n abbr[title]::after {\n content: \" (\" attr(title) \")\";\n }\n pre {\n white-space: pre-wrap !important;\n }\n pre,\n blockquote {\n border: 1px solid #adb5bd;\n page-break-inside: avoid;\n }\n thead {\n display: table-header-group;\n }\n tr,\n img {\n page-break-inside: avoid;\n }\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n h2,\n h3 {\n page-break-after: avoid;\n }\n @page {\n size: a3;\n }\n body {\n min-width: 992px !important;\n }\n .container {\n min-width: 992px !important;\n }\n .navbar {\n display: none;\n }\n .badge {\n border: 1px solid #000;\n }\n .table {\n border-collapse: collapse !important;\n }\n .table td,\n .table th {\n background-color: #fff !important;\n }\n .table-bordered th,\n .table-bordered td {\n border: 1px solid #dee2e6 !important;\n }\n .table-dark {\n color: inherit;\n }\n .table-dark th,\n .table-dark td,\n .table-dark thead th,\n .table-dark tbody + tbody {\n border-color: #dee2e6;\n }\n .table .thead-dark th {\n color: inherit;\n border-color: #dee2e6;\n }\n}\n\n/*# sourceMappingURL=bootstrap.css.map */","// Hover mixin and `$enable-hover-media-query` are deprecated.\n//\n// Originally added during our alphas and maintained during betas, this mixin was\n// designed to prevent `:hover` stickiness on iOS-an issue where hover styles\n// would persist after initial touch.\n//\n// For backward compatibility, we've kept these mixins and updated them to\n// always return their regular pseudo-classes instead of a shimmed media query.\n//\n// Issue: https://github.com/twbs/bootstrap/issues/25195\n\n@mixin hover {\n &:hover { @content; }\n}\n\n@mixin hover-focus {\n &:hover,\n &:focus {\n @content;\n }\n}\n\n@mixin plain-hover-focus {\n &,\n &:hover,\n &:focus {\n @content;\n }\n}\n\n@mixin hover-focus-active {\n &:hover,\n &:focus,\n &:active {\n @content;\n }\n}\n","// stylelint-disable declaration-no-important, selector-list-comma-newline-after\n\n//\n// Headings\n//\n\nh1, h2, h3, h4, h5, h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n margin-bottom: $headings-margin-bottom;\n font-family: $headings-font-family;\n font-weight: $headings-font-weight;\n line-height: $headings-line-height;\n color: $headings-color;\n}\n\nh1, .h1 { @include font-size($h1-font-size); }\nh2, .h2 { @include font-size($h2-font-size); }\nh3, .h3 { @include font-size($h3-font-size); }\nh4, .h4 { @include font-size($h4-font-size); }\nh5, .h5 { @include font-size($h5-font-size); }\nh6, .h6 { @include font-size($h6-font-size); }\n\n.lead {\n @include font-size($lead-font-size);\n font-weight: $lead-font-weight;\n}\n\n// Type display classes\n.display-1 {\n @include font-size($display1-size);\n font-weight: $display1-weight;\n line-height: $display-line-height;\n}\n.display-2 {\n @include font-size($display2-size);\n font-weight: $display2-weight;\n line-height: $display-line-height;\n}\n.display-3 {\n @include font-size($display3-size);\n font-weight: $display3-weight;\n line-height: $display-line-height;\n}\n.display-4 {\n @include font-size($display4-size);\n font-weight: $display4-weight;\n line-height: $display-line-height;\n}\n\n\n//\n// Horizontal rules\n//\n\nhr {\n margin-top: $hr-margin-y;\n margin-bottom: $hr-margin-y;\n border: 0;\n border-top: $hr-border-width solid $hr-border-color;\n}\n\n\n//\n// Emphasis\n//\n\nsmall,\n.small {\n @include font-size($small-font-size);\n font-weight: $font-weight-normal;\n}\n\nmark,\n.mark {\n padding: $mark-padding;\n background-color: $mark-bg;\n}\n\n\n//\n// Lists\n//\n\n.list-unstyled {\n @include list-unstyled;\n}\n\n// Inline turns list items into inline-block\n.list-inline {\n @include list-unstyled;\n}\n.list-inline-item {\n display: inline-block;\n\n &:not(:last-child) {\n margin-right: $list-inline-padding;\n }\n}\n\n\n//\n// Misc\n//\n\n// Builds on `abbr`\n.initialism {\n @include font-size(90%);\n text-transform: uppercase;\n}\n\n// Blockquotes\n.blockquote {\n margin-bottom: $spacer;\n @include font-size($blockquote-font-size);\n}\n\n.blockquote-footer {\n display: block;\n @include font-size($blockquote-small-font-size);\n color: $blockquote-small-color;\n\n &::before {\n content: \"\\2014\\00A0\"; // em dash, nbsp\n }\n}\n","// Lists\n\n// Unstyled keeps list items block level, just removes default browser padding and list-style\n@mixin list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n","// Responsive images (ensure images don't scale beyond their parents)\n//\n// This is purposefully opt-in via an explicit class rather than being the default for all ``s.\n// We previously tried the \"images are responsive by default\" approach in Bootstrap v2,\n// and abandoned it in Bootstrap v3 because it breaks lots of third-party widgets (including Google Maps)\n// which weren't expecting the images within themselves to be involuntarily resized.\n// See also https://github.com/twbs/bootstrap/issues/18178\n.img-fluid {\n @include img-fluid;\n}\n\n\n// Image thumbnails\n.img-thumbnail {\n padding: $thumbnail-padding;\n background-color: $thumbnail-bg;\n border: $thumbnail-border-width solid $thumbnail-border-color;\n @include border-radius($thumbnail-border-radius);\n @include box-shadow($thumbnail-box-shadow);\n\n // Keep them at most 100% wide\n @include img-fluid;\n}\n\n//\n// Figures\n//\n\n.figure {\n // Ensures the caption's text aligns with the image.\n display: inline-block;\n}\n\n.figure-img {\n margin-bottom: $spacer / 2;\n line-height: 1;\n}\n\n.figure-caption {\n @include font-size($figure-caption-font-size);\n color: $figure-caption-color;\n}\n","// Image Mixins\n// - Responsive image\n// - Retina image\n\n\n// Responsive image\n//\n// Keep images from scaling beyond the width of their parents.\n\n@mixin img-fluid {\n // Part 1: Set a maximum relative to the parent\n max-width: 100%;\n // Part 2: Override the height to auto, otherwise images will be stretched\n // when setting a width and height attribute on the img element.\n height: auto;\n}\n\n\n// Retina image\n//\n// Short retina mixin for setting background-image and -size.\n\n@mixin img-retina($file-1x, $file-2x, $width-1x, $height-1x) {\n background-image: url(http://github.com/$file-1x);\n\n // Autoprefixer takes care of adding -webkit-min-device-pixel-ratio and -o-min-device-pixel-ratio,\n // but doesn't convert dppx=>dpi.\n // There's no such thing as unprefixed min-device-pixel-ratio since it's nonstandard.\n // Compatibility info: https://caniuse.com/#feat=css-media-resolution\n @media only screen and (min-resolution: 192dpi), // IE9-11 don't support dppx\n only screen and (min-resolution: 2dppx) { // Standardized\n background-image: url(http://github.com/$file-2x);\n background-size: $width-1x $height-1x;\n }\n @include deprecate(\"`img-retina()`\", \"v4.3.0\", \"v5\");\n}\n","// stylelint-disable property-blacklist\n// Single side border-radius\n\n@mixin border-radius($radius: $border-radius, $fallback-border-radius: false) {\n @if $enable-rounded {\n border-radius: $radius;\n }\n @else if $fallback-border-radius != false {\n border-radius: $fallback-border-radius;\n }\n}\n\n@mixin border-top-radius($radius) {\n @if $enable-rounded {\n border-top-left-radius: $radius;\n border-top-right-radius: $radius;\n }\n}\n\n@mixin border-right-radius($radius) {\n @if $enable-rounded {\n border-top-right-radius: $radius;\n border-bottom-right-radius: $radius;\n }\n}\n\n@mixin border-bottom-radius($radius) {\n @if $enable-rounded {\n border-bottom-right-radius: $radius;\n border-bottom-left-radius: $radius;\n }\n}\n\n@mixin border-left-radius($radius) {\n @if $enable-rounded {\n border-top-left-radius: $radius;\n border-bottom-left-radius: $radius;\n }\n}\n\n@mixin border-top-left-radius($radius) {\n @if $enable-rounded {\n border-top-left-radius: $radius;\n }\n}\n\n@mixin border-top-right-radius($radius) {\n @if $enable-rounded {\n border-top-right-radius: $radius;\n }\n}\n\n@mixin border-bottom-right-radius($radius) {\n @if $enable-rounded {\n border-bottom-right-radius: $radius;\n }\n}\n\n@mixin border-bottom-left-radius($radius) {\n @if $enable-rounded {\n border-bottom-left-radius: $radius;\n }\n}\n","// Inline code\ncode {\n @include font-size($code-font-size);\n color: $code-color;\n word-break: break-word;\n\n // Streamline the style when inside anchors to avoid broken underline and more\n a > & {\n color: inherit;\n }\n}\n\n// User input typically entered via keyboard\nkbd {\n padding: $kbd-padding-y $kbd-padding-x;\n @include font-size($kbd-font-size);\n color: $kbd-color;\n background-color: $kbd-bg;\n @include border-radius($border-radius-sm);\n @include box-shadow($kbd-box-shadow);\n\n kbd {\n padding: 0;\n @include font-size(100%);\n font-weight: $nested-kbd-font-weight;\n @include box-shadow(none);\n }\n}\n\n// Blocks of code\npre {\n display: block;\n @include font-size($code-font-size);\n color: $pre-color;\n\n // Account for some code outputs that place code tags in pre tags\n code {\n @include font-size(inherit);\n color: inherit;\n word-break: normal;\n }\n}\n\n// Enable scrollable blocks of code\n.pre-scrollable {\n max-height: $pre-scrollable-max-height;\n overflow-y: scroll;\n}\n","// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n@if $enable-grid-classes {\n .container {\n @include make-container();\n @include make-container-max-widths();\n }\n}\n\n// Fluid container\n//\n// Utilizes the mixin meant for fixed width containers, but with 100% width for\n// fluid, full width layouts.\n\n@if $enable-grid-classes {\n .container-fluid {\n @include make-container();\n }\n}\n\n// Row\n//\n// Rows contain and clear the floats of your columns.\n\n@if $enable-grid-classes {\n .row {\n @include make-row();\n }\n\n // Remove the negative margin from default .row, then the horizontal padding\n // from all immediate children columns (to prevent runaway style inheritance).\n .no-gutters {\n margin-right: 0;\n margin-left: 0;\n\n > .col,\n > [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n }\n }\n}\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n@if $enable-grid-classes {\n @include make-grid-columns();\n}\n","/// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n@mixin make-container($gutter: $grid-gutter-width) {\n width: 100%;\n padding-right: $gutter / 2;\n padding-left: $gutter / 2;\n margin-right: auto;\n margin-left: auto;\n}\n\n\n// For each breakpoint, define the maximum width of the container in a media query\n@mixin make-container-max-widths($max-widths: $container-max-widths, $breakpoints: $grid-breakpoints) {\n @each $breakpoint, $container-max-width in $max-widths {\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n max-width: $container-max-width;\n }\n }\n}\n\n@mixin make-row($gutter: $grid-gutter-width) {\n display: flex;\n flex-wrap: wrap;\n margin-right: -$gutter / 2;\n margin-left: -$gutter / 2;\n}\n\n@mixin make-col-ready($gutter: $grid-gutter-width) {\n position: relative;\n // Prevent columns from becoming too narrow when at smaller grid tiers by\n // always setting `width: 100%;`. This works because we use `flex` values\n // later on to override this initial width.\n width: 100%;\n padding-right: $gutter / 2;\n padding-left: $gutter / 2;\n}\n\n@mixin make-col($size, $columns: $grid-columns) {\n flex: 0 0 percentage($size / $columns);\n // Add a `max-width` to ensure content within each column does not blow out\n // the width of the column. Applies to IE10+ and Firefox. Chrome and Safari\n // do not appear to require this.\n max-width: percentage($size / $columns);\n}\n\n@mixin make-col-offset($size, $columns: $grid-columns) {\n $num: $size / $columns;\n margin-left: if($num == 0, 0, percentage($num));\n}\n","// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)\n//\n// The map defined in the `$grid-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))\n// md\n@function breakpoint-next($name, $breakpoints: $grid-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n @return if($n != null and $n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $grid-breakpoints) {\n $min: map-get($breakpoints, $name);\n @return if($min != 0, $min, null);\n}\n\n// Maximum breakpoint width. Null for the largest (last) breakpoint.\n// The maximum value is calculated as the minimum of the next one less 0.02px\n// to work around the limitations of `min-` and `max-` prefixes and viewports with fractional widths.\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $grid-breakpoints) {\n $next: breakpoint-next($name, $breakpoints);\n @return if($next, breakpoint-min($next, $breakpoints) - .02, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash in front.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $grid-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $grid-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media that spans multiple breakpoint widths.\n// Makes the @content apply between the min and max breakpoints\n@mixin media-breakpoint-between($lower, $upper, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($lower, $breakpoints);\n $max: breakpoint-max($upper, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($lower, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($upper, $breakpoints) {\n @content;\n }\n }\n}\n\n// Media between the breakpoint's minimum and maximum widths.\n// No minimum for the smallest breakpoint, and no maximum for the largest one.\n// Makes the @content apply only to the given breakpoint, not viewports any wider or narrower.\n@mixin media-breakpoint-only($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n $max: breakpoint-max($name, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($name, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($name, $breakpoints) {\n @content;\n }\n }\n}\n","// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `$grid-columns`.\n\n@mixin make-grid-columns($columns: $grid-columns, $gutter: $grid-gutter-width, $breakpoints: $grid-breakpoints) {\n // Common properties for all breakpoints\n %grid-column {\n position: relative;\n width: 100%;\n padding-right: $gutter / 2;\n padding-left: $gutter / 2;\n }\n\n @each $breakpoint in map-keys($breakpoints) {\n $infix: breakpoint-infix($breakpoint, $breakpoints);\n\n // Allow columns to stretch full width below their breakpoints\n @for $i from 1 through $columns {\n .col#{$infix}-#{$i} {\n @extend %grid-column;\n }\n }\n .col#{$infix},\n .col#{$infix}-auto {\n @extend %grid-column;\n }\n\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n // Provide basic `.col-{bp}` classes for equal-width flexbox columns\n .col#{$infix} {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col#{$infix}-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: 100%; // Reset earlier grid tiers\n }\n\n @for $i from 1 through $columns {\n .col#{$infix}-#{$i} {\n @include make-col($i, $columns);\n }\n }\n\n .order#{$infix}-first { order: -1; }\n\n .order#{$infix}-last { order: $columns + 1; }\n\n @for $i from 0 through $columns {\n .order#{$infix}-#{$i} { order: $i; }\n }\n\n // `$columns - 1` because offsetting by the width of an entire row isn't possible\n @for $i from 0 through ($columns - 1) {\n @if not ($infix == \"\" and $i == 0) { // Avoid emitting useless .offset-0\n .offset#{$infix}-#{$i} {\n @include make-col-offset($i, $columns);\n }\n }\n }\n }\n }\n}\n","//\n// Basic Bootstrap table\n//\n\n.table {\n width: 100%;\n margin-bottom: $spacer;\n color: $table-color;\n background-color: $table-bg; // Reset for nesting within parents with `background-color`.\n\n th,\n td {\n padding: $table-cell-padding;\n vertical-align: top;\n border-top: $table-border-width solid $table-border-color;\n }\n\n thead th {\n vertical-align: bottom;\n border-bottom: (2 * $table-border-width) solid $table-border-color;\n }\n\n tbody + tbody {\n border-top: (2 * $table-border-width) solid $table-border-color;\n }\n}\n\n\n//\n// Condensed table w/ half padding\n//\n\n.table-sm {\n th,\n td {\n padding: $table-cell-padding-sm;\n }\n}\n\n\n// Border versions\n//\n// Add or remove borders all around the table and between all the columns.\n\n.table-bordered {\n border: $table-border-width solid $table-border-color;\n\n th,\n td {\n border: $table-border-width solid $table-border-color;\n }\n\n thead {\n th,\n td {\n border-bottom-width: 2 * $table-border-width;\n }\n }\n}\n\n.table-borderless {\n th,\n td,\n thead th,\n tbody + tbody {\n border: 0;\n }\n}\n\n// Zebra-striping\n//\n// Default zebra-stripe styles (alternating gray and transparent backgrounds)\n\n.table-striped {\n tbody tr:nth-of-type(#{$table-striped-order}) {\n background-color: $table-accent-bg;\n }\n}\n\n\n// Hover effect\n//\n// Placed here since it has to come after the potential zebra striping\n\n.table-hover {\n tbody tr {\n @include hover {\n color: $table-hover-color;\n background-color: $table-hover-bg;\n }\n }\n}\n\n\n// Table backgrounds\n//\n// Exact selectors below required to override `.table-striped` and prevent\n// inheritance to nested tables.\n\n@each $color, $value in $theme-colors {\n @include table-row-variant($color, theme-color-level($color, $table-bg-level), theme-color-level($color, $table-border-level));\n}\n\n@include table-row-variant(active, $table-active-bg);\n\n\n// Dark styles\n//\n// Same table markup, but inverted color scheme: dark background and light text.\n\n// stylelint-disable-next-line no-duplicate-selectors\n.table {\n .thead-dark {\n th {\n color: $table-dark-color;\n background-color: $table-dark-bg;\n border-color: $table-dark-border-color;\n }\n }\n\n .thead-light {\n th {\n color: $table-head-color;\n background-color: $table-head-bg;\n border-color: $table-border-color;\n }\n }\n}\n\n.table-dark {\n color: $table-dark-color;\n background-color: $table-dark-bg;\n\n th,\n td,\n thead th {\n border-color: $table-dark-border-color;\n }\n\n &.table-bordered {\n border: 0;\n }\n\n &.table-striped {\n tbody tr:nth-of-type(odd) {\n background-color: $table-dark-accent-bg;\n }\n }\n\n &.table-hover {\n tbody tr {\n @include hover {\n color: $table-dark-hover-color;\n background-color: $table-dark-hover-bg;\n }\n }\n }\n}\n\n\n// Responsive tables\n//\n// Generate series of `.table-responsive-*` classes for configuring the screen\n// size of where your table will overflow.\n\n.table-responsive {\n @each $breakpoint in map-keys($grid-breakpoints) {\n $next: breakpoint-next($breakpoint, $grid-breakpoints);\n $infix: breakpoint-infix($next, $grid-breakpoints);\n\n &#{$infix} {\n @include media-breakpoint-down($breakpoint) {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n\n // Prevent double border on horizontal scroll due to use of `display: block;`\n > .table-bordered {\n border: 0;\n }\n }\n }\n }\n}\n","// Tables\n\n@mixin table-row-variant($state, $background, $border: null) {\n // Exact selectors below required to override `.table-striped` and prevent\n // inheritance to nested tables.\n .table-#{$state} {\n &,\n > th,\n > td {\n background-color: $background;\n }\n\n @if $border != null {\n th,\n td,\n thead th,\n tbody + tbody {\n border-color: $border;\n }\n }\n }\n\n // Hover states for `.table-hover`\n // Note: this is not available for cells or rows within `thead` or `tfoot`.\n .table-hover {\n $hover-background: darken($background, 5%);\n\n .table-#{$state} {\n @include hover {\n background-color: $hover-background;\n\n > td,\n > th {\n background-color: $hover-background;\n }\n }\n }\n }\n}\n","// stylelint-disable selector-no-qualifying-type\n\n//\n// Textual form controls\n//\n\n.form-control {\n display: block;\n width: 100%;\n height: $input-height;\n padding: $input-padding-y $input-padding-x;\n font-family: $input-font-family;\n @include font-size($input-font-size);\n font-weight: $input-font-weight;\n line-height: $input-line-height;\n color: $input-color;\n background-color: $input-bg;\n background-clip: padding-box;\n border: $input-border-width solid $input-border-color;\n\n // Note: This has no effect on `s in CSS.\n @include border-radius($input-border-radius, 0);\n\n @include box-shadow($input-box-shadow);\n @include transition($input-transition);\n\n // Unstyle the caret on ` receives focus\n // in IE and (under certain conditions) Edge, as it looks bad and cannot be made to\n // match the appearance of the native widget.\n // See https://github.com/twbs/bootstrap/issues/19398.\n color: $input-color;\n background-color: $input-bg;\n }\n}\n\n// Make file inputs better match text inputs by forcing them to new lines.\n.form-control-file,\n.form-control-range {\n display: block;\n width: 100%;\n}\n\n\n//\n// Labels\n//\n\n// For use with horizontal and inline forms, when you need the label (or legend)\n// text to align with the form controls.\n.col-form-label {\n padding-top: calc(#{$input-padding-y} + #{$input-border-width});\n padding-bottom: calc(#{$input-padding-y} + #{$input-border-width});\n margin-bottom: 0; // Override the `