diff --git a/src/Analysis/Ast/Impl/Analyzer/PythonAnalyzerEntry.cs b/src/Analysis/Ast/Impl/Analyzer/PythonAnalyzerEntry.cs index 844d46a26..0fae952d4 100644 --- a/src/Analysis/Ast/Impl/Analyzer/PythonAnalyzerEntry.cs +++ b/src/Analysis/Ast/Impl/Analyzer/PythonAnalyzerEntry.cs @@ -264,7 +264,7 @@ private HashSet FindDependencies(IPythonModule module, Python } private static bool Ignore(IModuleManagement moduleResolution, string fullName, string modulePath) - => moduleResolution.BuiltinModuleName.EqualsOrdinal(fullName) || moduleResolution.GetSpecializedModule(fullName, modulePath) != null; + => moduleResolution.BuiltinModuleName.EqualsOrdinal(fullName) || moduleResolution.IsSpecializedModule(fullName, modulePath); private void UpdateAnalysisTcs(int analysisVersion) { _analysisVersion = analysisVersion; diff --git a/src/Analysis/Ast/Impl/Caching/Definitions/IModuleDatabaseService.cs b/src/Analysis/Ast/Impl/Caching/Definitions/IModuleDatabaseService.cs index 243e65776..bd1989aa1 100644 --- a/src/Analysis/Ast/Impl/Caching/Definitions/IModuleDatabaseService.cs +++ b/src/Analysis/Ast/Impl/Caching/Definitions/IModuleDatabaseService.cs @@ -33,5 +33,10 @@ internal interface IModuleDatabaseService { /// Writes module data to the database. /// Task StoreModuleAnalysisAsync(IDocumentAnalysis analysis, CancellationToken cancellationToken = default); + + /// + /// Determines if module analysis exists in the storage. + /// + bool ModuleExistsInStorage(string moduleName, string filePath); } } diff --git a/src/Analysis/Ast/Impl/Extensions/PythonModuleExtensions.cs b/src/Analysis/Ast/Impl/Extensions/PythonModuleExtensions.cs index b2553b65c..33cee4afb 100644 --- a/src/Analysis/Ast/Impl/Extensions/PythonModuleExtensions.cs +++ b/src/Analysis/Ast/Impl/Extensions/PythonModuleExtensions.cs @@ -20,7 +20,7 @@ namespace Microsoft.Python.Analysis { public static class PythonModuleExtensions { internal static PythonAst GetAst(this IPythonModule module) - => (PythonAst)((IAstNodeContainer)module).GetAstNode(module); + => (PythonAst)(module as IAstNodeContainer)?.GetAstNode(module); internal static void SetAst(this IPythonModule module, PythonAst ast) { var contained = (IAstNodeContainer)module; diff --git a/src/Analysis/Ast/Impl/Modules/Definitions/IModuleManagement.cs b/src/Analysis/Ast/Impl/Modules/Definitions/IModuleManagement.cs index ea729b030..84833d141 100644 --- a/src/Analysis/Ast/Impl/Modules/Definitions/IModuleManagement.cs +++ b/src/Analysis/Ast/Impl/Modules/Definitions/IModuleManagement.cs @@ -48,15 +48,20 @@ public interface IModuleManagement: IModuleResolution { /// content is loaded and analyzed only for class/functions definitions /// so the original documentation can be extracted. /// - /// Module to specialize. + /// Module to specialize. /// Specialized module constructor. /// Original (library) module loaded as stub, if any. - IPythonModule SpecializeModule(string name, Func specializationConstructor); + IPythonModule SpecializeModule(string fullName, Func specializationConstructor); /// - /// Returns specialized module, if any. + /// Returns specialized module, if any. Will attempt to load module from persistent state. /// - IPythonModule GetSpecializedModule(string name, string modulePath = null); + IPythonModule GetSpecializedModule(string fullName, bool allowCreation = false, string modulePath = null); + + /// + /// Determines of module is specialized or exists in the database. + /// + bool IsSpecializedModule(string fullName, string modulePath = null); /// /// Root directory of the path resolver. diff --git a/src/Analysis/Ast/Impl/Modules/PythonModule.cs b/src/Analysis/Ast/Impl/Modules/PythonModule.cs index 67262f3a9..e495cb816 100644 --- a/src/Analysis/Ast/Impl/Modules/PythonModule.cs +++ b/src/Analysis/Ast/Impl/Modules/PythonModule.cs @@ -42,7 +42,7 @@ namespace Microsoft.Python.Analysis.Modules { /// to AST and the module analysis. /// [DebuggerDisplay("{Name} : {ModuleType}")] - internal class PythonModule : LocatedMember, IDocument, IAnalyzable, IEquatable, IAstNodeContainer { + internal class PythonModule : LocatedMember, IDocument, IAnalyzable, IEquatable, IAstNodeContainer, ILocationConverter { private enum State { None, Loading, @@ -565,6 +565,11 @@ private string TryGetDocFromModuleInitFile() { } #endregion + #region ILocationConverter + public virtual SourceLocation IndexToLocation(int index) => this.GetAst()?.IndexToLocation(index) ?? default; + public virtual int LocationToIndex(SourceLocation location) => this.GetAst()?.LocationToIndex(location) ?? default; + #endregion + private void RemoveReferencesInModule(IPythonModule module) { if (module.GlobalScope?.Variables != null) { foreach (var v in module.GlobalScope.Variables) { diff --git a/src/Analysis/Ast/Impl/Modules/PythonVariableModule.cs b/src/Analysis/Ast/Impl/Modules/PythonVariableModule.cs index e5ca3cc2b..74efc4f56 100644 --- a/src/Analysis/Ast/Impl/Modules/PythonVariableModule.cs +++ b/src/Analysis/Ast/Impl/Modules/PythonVariableModule.cs @@ -19,6 +19,7 @@ using Microsoft.Python.Analysis.Types; using Microsoft.Python.Analysis.Values; using Microsoft.Python.Core; +using Microsoft.Python.Core.Text; namespace Microsoft.Python.Analysis.Modules { /// @@ -26,7 +27,7 @@ namespace Microsoft.Python.Analysis.Modules { /// Contains either module members, members + imported children of explicit package or imported implicit package children /// Instance is unique for each module analysis /// - internal sealed class PythonVariableModule : LocatedMember, IPythonModule, IEquatable { + internal sealed class PythonVariableModule : LocatedMember, IPythonModule, IEquatable, ILocationConverter { private readonly Dictionary _children = new Dictionary(); public string Name { get; } @@ -71,5 +72,10 @@ public PythonVariableModule(IPythonModule module): base(module) { public IMember CreateInstance(string typeName = null, IArgumentSet args = null) => this; public bool Equals(IPythonModule other) => other is PythonVariableModule module && Name.EqualsOrdinal(module.Name); + + #region ILocationConverter + public SourceLocation IndexToLocation(int index) => (Module as ILocationConverter)?.IndexToLocation(index) ?? default; + public int LocationToIndex(SourceLocation location) => (Module as ILocationConverter)?.LocationToIndex(location) ?? default; + #endregion } } diff --git a/src/Analysis/Ast/Impl/Modules/Resolution/MainModuleResolution.cs b/src/Analysis/Ast/Impl/Modules/Resolution/MainModuleResolution.cs index fe51b0f87..a96b5818d 100644 --- a/src/Analysis/Ast/Impl/Modules/Resolution/MainModuleResolution.cs +++ b/src/Analysis/Ast/Impl/Modules/Resolution/MainModuleResolution.cs @@ -69,14 +69,21 @@ protected override IPythonModule CreateModule(string name) { return null; } + IPythonModule module; if (moduleImport.ModulePath != null) { - var module = GetRdt().GetDocument(new Uri(moduleImport.ModulePath)); + module = GetRdt().GetDocument(new Uri(moduleImport.ModulePath)); if (module != null) { GetRdt().LockDocument(module.Uri); return module; } } + var dbs = GetDbService(); + if (dbs != null && dbs.TryCreateModule(name, moduleImport.ModulePath, out module) != ModuleStorageState.DoesNotExist && module != null) { + SpecializeModule(name, s => module); + return module; + } + // If there is a stub, make sure it is loaded and attached // First check stub next to the module. if (!TryCreateModuleStub(name, moduleImport.ModulePath, out var stub)) { @@ -152,17 +159,14 @@ public IPythonModule SpecializeModule(string name, Func s /// /// Returns specialized module, if any. /// - public IPythonModule GetSpecializedModule(string fullName, string modulePath = null) { - if (_specialized.TryGetValue(fullName, out var module)) { - return module; - } - var dbs = GetDbService(); - if (dbs != null && dbs.TryCreateModule(fullName, modulePath, out module) != ModuleStorageState.DoesNotExist && module != null) { - SpecializeModule(fullName, s => module); - return module; - } - return null; - } + public IPythonModule GetSpecializedModule(string fullName, bool allowCreation = false, string modulePath = null) + => _specialized.TryGetValue(fullName, out var module) ? module : null; + + /// + /// Determines of module is specialized or exists in the database. + /// + public bool IsSpecializedModule(string fullName, string modulePath = null) + => _specialized.ContainsKey(fullName) || GetDbService()?.ModuleExistsInStorage(fullName, modulePath) == true; internal async Task LoadBuiltinTypesAsync(CancellationToken cancellationToken = default) { var analyzer = _services.GetService(); diff --git a/src/Analysis/Ast/Impl/Modules/Resolution/ModuleResolutionBase.cs b/src/Analysis/Ast/Impl/Modules/Resolution/ModuleResolutionBase.cs index b532f4f5e..a9e699d11 100644 --- a/src/Analysis/Ast/Impl/Modules/Resolution/ModuleResolutionBase.cs +++ b/src/Analysis/Ast/Impl/Modules/Resolution/ModuleResolutionBase.cs @@ -86,15 +86,25 @@ public IPythonModule GetImportedModule(string name) => Modules.TryGetValue(name, out var moduleRef) ? moduleRef.Value : _interpreter.ModuleResolution.GetSpecializedModule(name); public IPythonModule GetOrLoadModule(string name) { - if (Modules.TryGetValue(name, out var moduleRef)) { - return moduleRef.GetOrCreate(name, this); + // Specialized should always win. However, we don't want + // to allow loading from the database just yet since module + // may already exist in the analyzed state. + var module = GetImportedModule(name); + if (module != null) { + return module; } - var module = _interpreter.ModuleResolution.GetSpecializedModule(name); + // Now try restoring from the database. + module = _interpreter.ModuleResolution.GetSpecializedModule(name, true); if (module != null) { return module; } + // Now try regular case. + if (Modules.TryGetValue(name, out var moduleRef)) { + return moduleRef.GetOrCreate(name, this); + } + moduleRef = Modules.GetOrAdd(name, new ModuleRef()); return moduleRef.GetOrCreate(name, this); } diff --git a/src/Analysis/Ast/Impl/Types/ArgumentSet.cs b/src/Analysis/Ast/Impl/Types/ArgumentSet.cs index 5854abeda..7a26ffce6 100644 --- a/src/Analysis/Ast/Impl/Types/ArgumentSet.cs +++ b/src/Analysis/Ast/Impl/Types/ArgumentSet.cs @@ -328,7 +328,7 @@ private IMember GetArgumentValue(Argument arg) { } if (arg.ValueIsDefault) { - using (Eval.OpenScope(DeclaringModule.Analysis.GlobalScope)) { + using (Eval.OpenScope(DeclaringModule.GlobalScope)) { return Eval.GetValueFromExpression(arg.ValueExpression) ?? Eval.UnknownType; } } diff --git a/src/Analysis/Ast/Impl/Types/Location.cs b/src/Analysis/Ast/Impl/Types/Location.cs index 2485d307d..e7f49e0bd 100644 --- a/src/Analysis/Ast/Impl/Types/Location.cs +++ b/src/Analysis/Ast/Impl/Types/Location.cs @@ -30,9 +30,8 @@ public Location(IPythonModule module, IndexSpan indexSpan) { public LocationInfo LocationInfo { get { - var ast = Module?.GetAst(); - if (ast != null && !string.IsNullOrEmpty(Module?.FilePath) && Module?.Uri != null) { - return new LocationInfo(Module.FilePath, Module.Uri, IndexSpan.ToSourceSpan(ast)); + if (Module is ILocationConverter lc && !string.IsNullOrEmpty(Module?.FilePath) && Module?.Uri != null) { + return new LocationInfo(Module.FilePath, Module.Uri, IndexSpan.ToSourceSpan(lc)); } return LocationInfo.Empty; } diff --git a/src/Analysis/Ast/Impl/Types/PythonFunctionOverload.cs b/src/Analysis/Ast/Impl/Types/PythonFunctionOverload.cs index 77187a780..1e17c62fb 100644 --- a/src/Analysis/Ast/Impl/Types/PythonFunctionOverload.cs +++ b/src/Analysis/Ast/Impl/Types/PythonFunctionOverload.cs @@ -182,7 +182,7 @@ private IMember CreateSpecificReturnFromTypeVar(IPythonClassType selfClassType, // Try returning the constraint // TODO: improve this, the heuristic is pretty basic and tailored to simple func(_T) -> _T var name = StaticReturnValue.GetPythonType()?.Name; - var typeDefVar = DeclaringModule.Analysis.GlobalScope.Variables[name]; + var typeDefVar = DeclaringModule.GlobalScope.Variables[name]; if (typeDefVar?.Value is IGenericTypeDefinition gtp2) { // See if the instance (self) type satisfies one of the constraints. return selfClassType.Mro.Any(b => gtp2.Constraints.Any(c => c.Equals(b))) diff --git a/src/Caching/Impl/Extensions/IndexSpanExtensions.cs b/src/Caching/Impl/Extensions/IndexSpanExtensions.cs new file mode 100644 index 000000000..44f43d018 --- /dev/null +++ b/src/Caching/Impl/Extensions/IndexSpanExtensions.cs @@ -0,0 +1,27 @@ +// Python Tools for Visual Studio +// Copyright(c) Microsoft Corporation +// All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the License); you may not use +// this file except in compliance with the License. You may obtain a copy of the +// License at http://www.apache.org/licenses/LICENSE-2.0 +// +// THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS +// OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY +// IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +// MERCHANTABILITY OR NON-INFRINGEMENT. +// +// See the Apache Version 2.0 License for specific language governing +// permissions and limitations under the License. + +using Microsoft.Python.Analysis.Caching.Models; +using Microsoft.Python.Core.Text; + +namespace Microsoft.Python.Analysis.Caching { + internal static class IndexSpanExtensions { + public static IndexSpanModel ToModel(this IndexSpan span) => new IndexSpanModel { + Start = span.Start, + Length = span.Length + }; + } +} diff --git a/src/Caching/Impl/Factories/ClassFactory.cs b/src/Caching/Impl/Factories/ClassFactory.cs index bb7cb3138..0e790279e 100644 --- a/src/Caching/Impl/Factories/ClassFactory.cs +++ b/src/Caching/Impl/Factories/ClassFactory.cs @@ -27,7 +27,7 @@ public ClassFactory(IEnumerable classes, ModuleFactory mf) } protected override PythonClassType CreateMember(ClassModel cm, IPythonType declaringType) - => new PythonClassType(cm.Name, ModuleFactory.DefaultLocation); + => new PythonClassType(cm.Name, new Location(ModuleFactory.Module, cm.IndexSpan.ToSpan())); protected override void CreateMemberParts(ClassModel cm, PythonClassType cls) { // In Python 3 exclude object since type creation will add it automatically. diff --git a/src/Caching/Impl/Factories/FunctionFactory.cs b/src/Caching/Impl/Factories/FunctionFactory.cs index b6f13f446..b4cdb25bc 100644 --- a/src/Caching/Impl/Factories/FunctionFactory.cs +++ b/src/Caching/Impl/Factories/FunctionFactory.cs @@ -25,9 +25,9 @@ public FunctionFactory(IEnumerable classes, ModuleFactory mf) } protected override IPythonFunctionType CreateMember(FunctionModel fm, IPythonType declaringType) { - var f = new PythonFunctionType(fm.Name, ModuleFactory.DefaultLocation, declaringType, fm.Documentation); + var f = new PythonFunctionType(fm.Name, new Location(ModuleFactory.Module, fm.IndexSpan.ToSpan()), declaringType, fm.Documentation); foreach (var om in fm.Overloads) { - var o = new PythonFunctionOverload(fm.Name, ModuleFactory.DefaultLocation); + var o = new PythonFunctionOverload(fm.Name, new Location(ModuleFactory.Module, fm.IndexSpan.ToSpan())); o.SetDocumentation(fm.Documentation); o.SetReturnValue(ModuleFactory.ConstructMember(om.ReturnType), true); o.SetParameters(om.Parameters.Select(ConstructParameter).ToArray()); diff --git a/src/Caching/Impl/Factories/PropertyFactory.cs b/src/Caching/Impl/Factories/PropertyFactory.cs index 5673583f9..dfbfb51f0 100644 --- a/src/Caching/Impl/Factories/PropertyFactory.cs +++ b/src/Caching/Impl/Factories/PropertyFactory.cs @@ -25,7 +25,7 @@ public PropertyFactory(ModuleFactory mf) { } public IPythonPropertyType Construct(PropertyModel pm, IPythonClassType cls) { - var prop = new PythonPropertyType(pm.Name, _mf.DefaultLocation, cls, (pm.Attributes & FunctionAttributes.Abstract) != 0); + var prop = new PythonPropertyType(pm.Name, new Location(_mf.Module, pm.IndexSpan.ToSpan()), cls, (pm.Attributes & FunctionAttributes.Abstract) != 0); prop.SetDocumentation(pm.Documentation); var o = new PythonFunctionOverload(pm.Name, _mf.DefaultLocation); o.SetDocumentation(pm.Documentation); // TODO: own documentation? diff --git a/src/Caching/Impl/Factories/VariableFactory.cs b/src/Caching/Impl/Factories/VariableFactory.cs index b4f7adb54..45a497970 100644 --- a/src/Caching/Impl/Factories/VariableFactory.cs +++ b/src/Caching/Impl/Factories/VariableFactory.cs @@ -26,7 +26,7 @@ public VariableFactory(IEnumerable models, ModuleFactory mf) protected override IVariable CreateMember(VariableModel vm, IPythonType declaringType) { var m = ModuleFactory.ConstructMember(vm.Value); - return new Variable(vm.Name, m, VariableSource.Declaration, ModuleFactory.DefaultLocation); + return new Variable(vm.Name, m, VariableSource.Declaration, new Location(ModuleFactory.Module, vm.IndexSpan.ToSpan())); } } } diff --git a/src/Caching/Impl/Models/ClassModel.cs b/src/Caching/Impl/Models/ClassModel.cs index 066642855..9787f7e61 100644 --- a/src/Caching/Impl/Models/ClassModel.cs +++ b/src/Caching/Impl/Models/ClassModel.cs @@ -85,6 +85,8 @@ private ClassModel(IPythonClassType cls) { Name = cls.TypeId == BuiltinTypeId.Ellipsis ? "ellipsis" : cls.Name; Id = Name.GetStableHash(); + IndexSpan = cls.Location.IndexSpan.ToModel(); + Documentation = cls.Documentation; Bases = cls.Bases.OfType().Select(t => t.GetQualifiedName()).ToArray(); Methods = methods.ToArray(); diff --git a/src/Caching/Impl/Models/FunctionModel.cs b/src/Caching/Impl/Models/FunctionModel.cs index 39bf2c374..9cebb7005 100644 --- a/src/Caching/Impl/Models/FunctionModel.cs +++ b/src/Caching/Impl/Models/FunctionModel.cs @@ -31,6 +31,7 @@ public static FunctionModel FromType(IPythonFunctionType ft) { return new FunctionModel { Id = ft.Name.GetStableHash(), Name = ft.Name, + IndexSpan = ft.Location.IndexSpan.ToModel(), Documentation = ft.Documentation, Overloads = ft.Overloads.Select(FromOverload).ToArray() // TODO: attributes, inner functions and inner classes. diff --git a/src/Caching/Impl/Models/IndexSpanModel.cs b/src/Caching/Impl/Models/IndexSpanModel.cs new file mode 100644 index 000000000..e6af970ba --- /dev/null +++ b/src/Caching/Impl/Models/IndexSpanModel.cs @@ -0,0 +1,26 @@ +// Python Tools for Visual Studio +// Copyright(c) Microsoft Corporation +// All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the License); you may not use +// this file except in compliance with the License. You may obtain a copy of the +// License at http://www.apache.org/licenses/LICENSE-2.0 +// +// THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS +// OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY +// IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +// MERCHANTABILITY OR NON-INFRINGEMENT. +// +// See the Apache Version 2.0 License for specific language governing +// permissions and limitations under the License. + +using Microsoft.Python.Core.Text; + +namespace Microsoft.Python.Analysis.Caching.Models { + internal sealed class IndexSpanModel { + public int Start { get; set; } + public int Length { get; set; } + + public IndexSpan ToSpan() => new IndexSpan(Start, Length); + } +} diff --git a/src/Caching/Impl/Models/MemberModel.cs b/src/Caching/Impl/Models/MemberModel.cs index 158d4ba44..1a4561e94 100644 --- a/src/Caching/Impl/Models/MemberModel.cs +++ b/src/Caching/Impl/Models/MemberModel.cs @@ -13,9 +13,12 @@ // See the Apache Version 2.0 License for specific language governing // permissions and limitations under the License. +using Microsoft.Python.Core.Text; + namespace Microsoft.Python.Analysis.Caching.Models { internal abstract class MemberModel { public int Id { get; set; } public string Name { get; set; } + public IndexSpanModel IndexSpan { get; set; } } } diff --git a/src/Caching/Impl/Models/ModuleModel.cs b/src/Caching/Impl/Models/ModuleModel.cs index 9a01a1a29..46d3dee73 100644 --- a/src/Caching/Impl/Models/ModuleModel.cs +++ b/src/Caching/Impl/Models/ModuleModel.cs @@ -18,14 +18,31 @@ using Microsoft.Python.Analysis.Types; using Microsoft.Python.Analysis.Values; using Microsoft.Python.Core; +using Microsoft.Python.Parsing; namespace Microsoft.Python.Analysis.Caching.Models { internal sealed class ModuleModel : MemberModel { + /// + /// Module unique id that includes version. + /// public string UniqueId { get; set; } + public string Documentation { get; set; } public FunctionModel[] Functions { get; set; } public VariableModel[] Variables { get; set; } public ClassModel[] Classes { get; set; } + + /// + /// Collection of new line information for conversion of linear spans + /// to line/columns in navigation to member definitions and references. + /// + public NewLineModel[] NewLines { get; set; } + + /// + /// Length of the original module file. Used in conversion of indices to line/columns. + /// + public int FileSize { get; set; } + // TODO: TypeVars, ... public static ModuleModel FromAnalysis(IDocumentAnalysis analysis, IServiceContainer services) { @@ -42,7 +59,7 @@ public static ModuleModel FromAnalysis(IDocumentAnalysis analysis, IServiceConta string typeName = null; switch (v.Value) { - case IPythonFunctionType ft + case IPythonFunctionType ft when ft.DeclaringModule.Equals(analysis.Document) || ft.DeclaringModule.Equals(analysis.Document.Stub): if (!functions.ContainsKey(ft.Name)) { typeName = ft.Name; @@ -50,7 +67,7 @@ when ft.DeclaringModule.Equals(analysis.Document) || ft.DeclaringModule.Equals(a } break; - case IPythonClassType cls + case IPythonClassType cls when cls.DeclaringModule.Equals(analysis.Document) || cls.DeclaringModule.Equals(analysis.Document.Stub): if (!classes.ContainsKey(cls.Name)) { typeName = cls.Name; @@ -73,7 +90,12 @@ when cls.DeclaringModule.Equals(analysis.Document) || cls.DeclaringModule.Equals Documentation = analysis.Document.Documentation, Functions = functions.Values.ToArray(), Variables = variables.Values.ToArray(), - Classes = classes.Values.ToArray() + Classes = classes.Values.ToArray(), + NewLines = analysis.Ast.NewLineLocations.Select(l => new NewLineModel { + EndIndex = l.EndIndex, + Kind = l.Kind + }).ToArray(), + FileSize = analysis.Ast.EndIndex }; } } diff --git a/src/Caching/Impl/Models/NewLineModel.cs b/src/Caching/Impl/Models/NewLineModel.cs new file mode 100644 index 000000000..b3021102d --- /dev/null +++ b/src/Caching/Impl/Models/NewLineModel.cs @@ -0,0 +1,24 @@ +// Python Tools for Visual Studio +// Copyright(c) Microsoft Corporation +// All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the License); you may not use +// this file except in compliance with the License. You may obtain a copy of the +// License at http://www.apache.org/licenses/LICENSE-2.0 +// +// THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS +// OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY +// IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +// MERCHANTABILITY OR NON-INFRINGEMENT. +// +// See the Apache Version 2.0 License for specific language governing +// permissions and limitations under the License. + +using Microsoft.Python.Parsing; + +namespace Microsoft.Python.Analysis.Caching.Models { + internal sealed class NewLineModel { + public int EndIndex { get; set; } + public NewLineKind Kind { get; set; } + } +} diff --git a/src/Caching/Impl/Models/PropertyModel.cs b/src/Caching/Impl/Models/PropertyModel.cs index 9d67c3c09..2937cecbd 100644 --- a/src/Caching/Impl/Models/PropertyModel.cs +++ b/src/Caching/Impl/Models/PropertyModel.cs @@ -26,6 +26,7 @@ public static PropertyModel FromType(IPythonPropertyType prop) { return new PropertyModel { Id = prop.Name.GetStableHash(), Name = prop.Name, + IndexSpan = prop.Location.IndexSpan.ToModel(), Documentation = prop.Documentation, ReturnType = prop.ReturnType.GetQualifiedName(), // TODO: attributes. diff --git a/src/Caching/Impl/Models/VariableModel.cs b/src/Caching/Impl/Models/VariableModel.cs index f80a41555..c44b3eb77 100644 --- a/src/Caching/Impl/Models/VariableModel.cs +++ b/src/Caching/Impl/Models/VariableModel.cs @@ -26,6 +26,7 @@ internal sealed class VariableModel: MemberModel { public static VariableModel FromVariable(IVariable v) => new VariableModel { Id = v.Name.GetStableHash(), Name = v.Name, + IndexSpan = v.Location.IndexSpan.ToModel(), Value = v.Value.GetQualifiedName() }; @@ -38,6 +39,7 @@ internal sealed class VariableModel: MemberModel { public static VariableModel FromType(string name, IPythonType t) => new VariableModel { Id = name.GetStableHash(), Name = name, + IndexSpan = t.Location.IndexSpan.ToModel(), Value = t.QualifiedName }; } diff --git a/src/Caching/Impl/ModuleDatabase.cs b/src/Caching/Impl/ModuleDatabase.cs index f8a1860f0..85c82e9f6 100644 --- a/src/Caching/Impl/ModuleDatabase.cs +++ b/src/Caching/Impl/ModuleDatabase.cs @@ -85,10 +85,28 @@ public ModuleStorageState TryCreateModule(string moduleName, string filePath, ou return ModuleStorageState.DoesNotExist; } + /// + /// Writes module data to the database. + /// public Task StoreModuleAnalysisAsync(IDocumentAnalysis analysis, CancellationToken cancellationToken = default) => Task.Run(() => StoreModuleAnalysis(analysis, cancellationToken)); - private void StoreModuleAnalysis(IDocumentAnalysis analysis, CancellationToken cancellationToken = default) { + /// + /// Determines if module analysis exists in the storage. + /// + public bool ModuleExistsInStorage(string moduleName, string filePath) { + for (var retries = 50; retries > 0; --retries) { + try { + var dbPath = FindDatabaseFile(moduleName, filePath); + return !string.IsNullOrEmpty(dbPath); + } catch (Exception ex) when (ex is IOException || ex is UnauthorizedAccessException) { + Thread.Sleep(10); + } + } + return false; + } + + private void StoreModuleAnalysis(IDocumentAnalysis analysis, CancellationToken cancellationToken = default) { var model = ModuleModel.FromAnalysis(analysis, _services); Exception ex = null; for (var retries = 50; retries > 0; --retries) { diff --git a/src/Caching/Impl/PythonDbModule.cs b/src/Caching/Impl/PythonDbModule.cs index e54562f72..91a8defa6 100644 --- a/src/Caching/Impl/PythonDbModule.cs +++ b/src/Caching/Impl/PythonDbModule.cs @@ -14,22 +14,35 @@ // permissions and limitations under the License. using System.Collections.Generic; +using System.Linq; using Microsoft.Python.Analysis.Caching.Models; using Microsoft.Python.Analysis.Modules; using Microsoft.Python.Core; +using Microsoft.Python.Core.Text; +using Microsoft.Python.Parsing; namespace Microsoft.Python.Analysis.Caching { internal sealed class PythonDbModule : SpecializedModule { + private readonly NewLineLocation[] _newLines; + private readonly int _fileSize; + public PythonDbModule(ModuleModel model, string filePath, IServiceContainer services) - : base(model.Name, string.Empty, services) { - FilePath = filePath; + : base(model.Name, filePath, services) { GlobalScope = new GlobalScope(model, this, services); Documentation = model.Documentation; + + _newLines = model.NewLines.Select(nl => new NewLineLocation(nl.EndIndex, nl.Kind)).ToArray(); + _fileSize = model.FileSize; } protected override string LoadContent() => string.Empty; public override string Documentation { get; } public override IEnumerable GetMemberNames() => GlobalScope.Variables.Names; + + #region ILocationConverter + public override SourceLocation IndexToLocation(int index) => NewLineLocation.IndexToLocation(_newLines, index); + public override int LocationToIndex(SourceLocation location) => NewLineLocation.LocationToIndex(_newLines, location, _fileSize); + #endregion } } diff --git a/src/Caching/Test/AnalysisCachingTestBase.cs b/src/Caching/Test/AnalysisCachingTestBase.cs index e22be40a4..afb91091c 100644 --- a/src/Caching/Test/AnalysisCachingTestBase.cs +++ b/src/Caching/Test/AnalysisCachingTestBase.cs @@ -17,8 +17,6 @@ using System.Reflection; using System.Text; using Microsoft.Python.Analysis.Tests; -using Microsoft.Python.Core.IO; -using Microsoft.VisualStudio.TestTools.UnitTesting; using Newtonsoft.Json; using TestUtilities; @@ -42,5 +40,7 @@ protected string BaselineFilesFolder { return Path.GetFullPath(Path.Combine(outDirectory, "..", "..", "..", "src", "Caching", "Test", "Files")); } } + + protected string GetBaselineFileName(string testName) => Path.ChangeExtension(Path.Combine(BaselineFilesFolder, testName), "json"); } } diff --git a/src/Caching/Test/ClassesTests.cs b/src/Caching/Test/ClassesTests.cs new file mode 100644 index 000000000..f0b06de74 --- /dev/null +++ b/src/Caching/Test/ClassesTests.cs @@ -0,0 +1,67 @@ +// Copyright(c) Microsoft Corporation +// All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the License); you may not use +// this file except in compliance with the License. You may obtain a copy of the +// License at http://www.apache.org/licenses/LICENSE-2.0 +// +// THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS +// OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY +// IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +// MERCHANTABILITY OR NON-INFRINGEMENT. +// +// See the Apache Version 2.0 License for specific language governing +// permissions and limitations under the License. + +using System.Threading.Tasks; +using Microsoft.Python.Analysis.Caching.Models; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using TestUtilities; + +namespace Microsoft.Python.Analysis.Caching.Tests { + [TestClass] + public class ClassesTests : AnalysisCachingTestBase { + public TestContext TestContext { get; set; } + + [TestInitialize] + public void TestInitialize() + => TestEnvironmentImpl.TestInitialize($"{TestContext.FullyQualifiedTestClassName}.{TestContext.TestName}"); + + [TestCleanup] + public void Cleanup() => TestEnvironmentImpl.TestCleanup(); + + private string BaselineFileName => GetBaselineFileName(TestContext.TestName); + + [TestMethod, Priority(0)] + public async Task NestedClasses() { + const string code = @" +x = 'str' + +class A: + def methodA(self): + return True + +class B: + x: int + + class C: + def __init__(self): + self.y = 1 + def methodC(self): + return False + + def methodB1(self): + return C() + + def methodB2(self): + return C().y + +c = B().methodB1() +"; + var analysis = await GetAnalysisAsync(code); + var model = ModuleModel.FromAnalysis(analysis, Services); + var json = ToJson(model); + Baseline.CompareToFile(BaselineFileName, json); + } + } +} diff --git a/src/Caching/Test/CoreTests.cs b/src/Caching/Test/CoreTests.cs new file mode 100644 index 000000000..38bb3b3c0 --- /dev/null +++ b/src/Caching/Test/CoreTests.cs @@ -0,0 +1,87 @@ +// Copyright(c) Microsoft Corporation +// All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the License); you may not use +// this file except in compliance with the License. You may obtain a copy of the +// License at http://www.apache.org/licenses/LICENSE-2.0 +// +// THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS +// OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY +// IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +// MERCHANTABILITY OR NON-INFRINGEMENT. +// +// See the Apache Version 2.0 License for specific language governing +// permissions and limitations under the License. + +using System.Threading.Tasks; +using FluentAssertions; +using Microsoft.Python.Analysis.Caching.Models; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using TestUtilities; + +namespace Microsoft.Python.Analysis.Caching.Tests { + [TestClass] + public class CoreTests : AnalysisCachingTestBase { + public TestContext TestContext { get; set; } + + [TestInitialize] + public void TestInitialize() + => TestEnvironmentImpl.TestInitialize($"{TestContext.FullyQualifiedTestClassName}.{TestContext.TestName}"); + + [TestCleanup] + public void Cleanup() => TestEnvironmentImpl.TestCleanup(); + + private string BaselineFileName => GetBaselineFileName(TestContext.TestName); + + [TestMethod, Priority(0)] + public async Task SmokeTest() { + const string code = @" +x = 'str' + +class C: + x: int + def __init__(self): + self.y = 1 + + def method(self): + return func() + + @property + def prop(self) -> int: + return x + +def func(): + return 2.0 + +c = C() +"; + var analysis = await GetAnalysisAsync(code); + var model = ModuleModel.FromAnalysis(analysis, Services); + var json = ToJson(model); + Baseline.CompareToFile(BaselineFileName, json); + } + + + [DataTestMethod, Priority(0)] + [DataRow("", null, null, false)] + [DataRow("str", "builtins", "str", false)] + [DataRow("i:str", "builtins", "str", true)] + [DataRow("i:...", "builtins", "ellipsis", true)] + [DataRow("ellipsis", "builtins", "ellipsis", false)] + [DataRow("i:builtins:str", "builtins", "str", true)] + [DataRow("i:mod:x", "mod", "x", true)] + [DataRow("typing:Union[str, tuple]", "typing", "Union[str, tuple]", false)] + [DataRow("typing:Union[typing:Any, mod:y]", "typing", "Union[typing:Any, mod:y]", false)] + [DataRow("typing:Union[typing:Union[str, int], mod:y]", "typing", "Union[typing:Union[str, int], mod:y]", false)] + public void QualifiedNames(string qualifiedName, string moduleName, string typeName, bool isInstance) { + TypeNames.DeconstructQualifiedName(qualifiedName, out var actualModuleName, out var actualMemberNames, out var actualIsInstance); + actualModuleName.Should().Be(moduleName); + if (string.IsNullOrEmpty(qualifiedName)) { + actualMemberNames.Should().BeNull(); + } else { + actualMemberNames[0].Should().Be(typeName); + } + actualIsInstance.Should().Be(isInstance); + } + } +} diff --git a/src/Caching/Test/Files/Builtins.json b/src/Caching/Test/Files/Builtins.json index 8fff2c8a0..8a5415c33 100644 --- a/src/Caching/Test/Files/Builtins.json +++ b/src/Caching/Test/Files/Builtins.json @@ -14,7 +14,11 @@ "Classes": null, "Functions": null, "Id": 24816593, - "Name": "type" + "Name": "type", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "__build_class__(func, name, *bases, metaclass=None, **kwds) -> class\n\nInternal helper function used by the class statement.", @@ -59,7 +63,11 @@ "Classes": null, "Functions": null, "Id": 186877360, - "Name": "__build_class__" + "Name": "__build_class__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "__import__(name, globals=None, locals=None, fromlist=(), level=0) -> module\n\nImport a module. Because this function is meant for use by the Python\ninterpreter and not for general use, it is better to use\nimportlib.import_module() to programmatically import a module.\n\nThe globals argument is only used to determine the context;\nthey are not modified. The locals argument is unused. The fromlist\nshould be a list of names to emulate ``from name import ...'', or an\nempty list to emulate ``import name''.\nWhen importing a module from a package, note that __import__('A.B', ...)\nreturns package A when fromlist is empty, but its submodule B when\nfromlist is not empty. The level argument is used to determine whether to\nperform absolute or relative imports: 0 is absolute, while a positive number\nis the number of parent directories to search relative to the current module.", @@ -104,7 +112,11 @@ "Classes": null, "Functions": null, "Id": -200972932, - "Name": "__import__" + "Name": "__import__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the absolute value of the argument.", @@ -125,7 +137,11 @@ "Classes": null, "Functions": null, "Id": 781563, - "Name": "abs" + "Name": "abs", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return True if bool(x) is True for all values x in the iterable.\n\nIf the iterable is empty, return True.", @@ -146,7 +162,11 @@ "Classes": null, "Functions": null, "Id": 781866, - "Name": "all" + "Name": "all", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return True if bool(x) is True for any x in the iterable.\n\nIf the iterable is empty, return False.", @@ -167,7 +187,11 @@ "Classes": null, "Functions": null, "Id": 781941, - "Name": "any" + "Name": "any", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return an ASCII-only representation of an object.\n\nAs repr(), return a string containing a printable representation of an\nobject, but escape the non-ASCII characters in the string returned by\nrepr() using \\\\x, \\\\u or \\\\U escapes. This generates a string similar\nto that returned by repr() in Python 2.", @@ -188,7 +212,11 @@ "Classes": null, "Functions": null, "Id": 751576474, - "Name": "ascii" + "Name": "ascii", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the binary representation of an integer.\n\n >>> bin(2796202)\n '0b1010101010101010101010'", @@ -209,7 +237,11 @@ "Classes": null, "Functions": null, "Id": 782736, - "Name": "bin" + "Name": "bin", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "breakpoint(*args, **kws)\n\nCall sys.breakpointhook(*args, **kws). sys.breakpointhook() must accept\nwhatever arguments are passed.\n\nBy default, this drops you into the pdb debugger.", @@ -236,7 +268,11 @@ "Classes": null, "Functions": null, "Id": -1356147896, - "Name": "breakpoint" + "Name": "breakpoint", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return whether the object is callable (i.e., some kind of function).\n\nNote that classes are callable, as are instances of classes with a\n__call__() method.", @@ -257,7 +293,11 @@ "Classes": null, "Functions": null, "Id": 1205971407, - "Name": "callable" + "Name": "callable", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a Unicode string of one character with ordinal i; 0 <= i <= 0x10ffff.", @@ -278,7 +318,11 @@ "Classes": null, "Functions": null, "Id": 783670, - "Name": "chr" + "Name": "chr", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Compile source into a code object that can be executed by exec() or eval().\n\nThe source code may represent a Python module, statement or expression.\nThe filename will be used for run-time error messages.\nThe mode must be 'exec' to compile a module, 'single' to compile a\nsingle (interactive) statement, or 'eval' to compile an expression.\nThe flags argument, if present, controls which future statements influence\nthe compilation of the code.\nThe dont_inherit argument, if true, stops the compilation inheriting\nthe effects of any future statements in effect in the code calling\ncompile; if absent or false these statements do influence the compilation,\nin addition to any features explicitly specified.", @@ -329,7 +373,11 @@ "Classes": null, "Functions": null, "Id": -1914543556, - "Name": "compile" + "Name": "compile", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "interactive prompt objects for printing the license text, a list of\n contributors and the copyright notice.", @@ -350,7 +398,11 @@ "Classes": null, "Functions": null, "Id": 1298046352, - "Name": "copyright" + "Name": "copyright", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "interactive prompt objects for printing the license text, a list of\n contributors and the copyright notice.", @@ -371,7 +423,11 @@ "Classes": null, "Functions": null, "Id": -1836401501, - "Name": "credits" + "Name": "credits", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Deletes the named attribute from the given object.\n\ndelattr(x, 'y') is equivalent to ``del x.y''", @@ -398,7 +454,11 @@ "Classes": null, "Functions": null, "Id": -1314690939, - "Name": "delattr" + "Name": "delattr", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "dir([object]) -> list of strings\n\nIf called without an argument, return the names in the current scope.\nElse, return an alphabetized list of names comprising (some of) the attributes\nof the given object, and of attributes reachable from it.\nIf the object supplies a method named __dir__, it will be used; otherwise\nthe default dir() logic is used and returns:\n for a module object: the module's attributes.\n for a class object: its attributes, and recursively the attributes\n of its bases.\n for any other object: its attributes, its class's attributes, and\n recursively the attributes of its class's base classes.", @@ -419,7 +479,11 @@ "Classes": null, "Functions": null, "Id": 784662, - "Name": "dir" + "Name": "dir", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the tuple (x//y, x%y). Invariant: div*y + mod == x.", @@ -446,7 +510,11 @@ "Classes": null, "Functions": null, "Id": 1901256616, - "Name": "divmod" + "Name": "divmod", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Evaluate the given source in the context of globals and locals.\n\nThe source may be a string representing a Python expression\nor a code object as returned by compile().\nThe globals must be a dictionary and locals can be any mapping,\ndefaulting to the current globals and locals.\nIf only globals is given, locals defaults to it.", @@ -479,7 +547,11 @@ "Classes": null, "Functions": null, "Id": 24366387, - "Name": "eval" + "Name": "eval", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Execute the given source in the context of globals and locals.\n\nThe source may be a string representing one or more Python statements\nor a code object as returned by compile().\nThe globals must be a dictionary and locals can be any mapping,\ndefaulting to the current globals and locals.\nIf only globals is given, locals defaults to it.", @@ -512,7 +584,11 @@ "Classes": null, "Functions": null, "Id": 24368424, - "Name": "exec" + "Name": "exec", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -539,7 +615,11 @@ "Classes": null, "Functions": null, "Id": 24368565, - "Name": "exit" + "Name": "exit", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return value.__format__(format_spec)\n\nformat_spec defaults to the empty string.\nSee the Format Specification Mini-Language section of help('FORMATTING') for\ndetails.", @@ -566,7 +646,11 @@ "Classes": null, "Functions": null, "Id": 1963936462, - "Name": "format" + "Name": "format", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "getattr(object, name[, default]) -> value\n\nGet a named attribute from an object; getattr(x, 'y') is equivalent to x.y.\nWhen a default argument is given, it is returned when the attribute doesn't\nexist; without it, an exception is raised in that case.", @@ -599,7 +683,11 @@ "Classes": null, "Functions": null, "Id": 1355208272, - "Name": "getattr" + "Name": "getattr", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the dictionary containing the current scope's global variables.\n\nNOTE: Updates to this dictionary *will* affect name lookups in the current\nglobal scope and vice-versa.", @@ -613,7 +701,11 @@ "Classes": null, "Functions": null, "Id": 1551006009, - "Name": "globals" + "Name": "globals", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return whether the object has an attribute with the given name.\n\nThis is done by calling getattr(obj, name) and catching AttributeError.", @@ -640,7 +732,11 @@ "Classes": null, "Functions": null, "Id": 2127271828, - "Name": "hasattr" + "Name": "hasattr", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the hash value for the given object.\n\nTwo objects that compare equal must also have the same hash value, but the\nreverse is not necessarily true.", @@ -661,7 +757,11 @@ "Classes": null, "Functions": null, "Id": 24436133, - "Name": "hash" + "Name": "hash", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Define the builtin 'help'.\n\n This is a wrapper around pydoc.help that provides a helpful message\n when 'help' is typed at the Python interactive prompt.\n\n Calling help() at the Python prompt starts an interactive help session.\n Calling help(thing) prints help for the python object 'thing'.\n ", @@ -694,7 +794,11 @@ "Classes": null, "Functions": null, "Id": 24439768, - "Name": "help" + "Name": "help", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the hexadecimal representation of an integer.\n\n >>> hex(12648430)\n '0xc0ffee'", @@ -715,7 +819,11 @@ "Classes": null, "Functions": null, "Id": 788388, - "Name": "hex" + "Name": "hex", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the identity of an object.\n\nThis is guaranteed to be unique among simultaneously existing objects.\n(CPython uses the object's memory address.)", @@ -736,7 +844,11 @@ "Classes": null, "Functions": null, "Id": 25458, - "Name": "id" + "Name": "id", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Read a string from standard input. The trailing newline is stripped.\n\nThe prompt string, if given, is printed to standard output without a\ntrailing newline before reading input.\n\nIf the user hits EOF (*nix: Ctrl-D, Windows: Ctrl-Z+Return), raise EOFError.\nOn *nix systems, readline is used if available.", @@ -757,7 +869,11 @@ "Classes": null, "Functions": null, "Id": 758828563, - "Name": "input" + "Name": "input", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return whether an object is an instance of a class or of a subclass thereof.\n\nA tuple, as in ``isinstance(x, (A, B, ...))``, may be given as the target to\ncheck against. This is equivalent to ``isinstance(x, A) or isinstance(x, B)\nor ...`` etc.", @@ -784,7 +900,11 @@ "Classes": null, "Functions": null, "Id": 1317005078, - "Name": "isinstance" + "Name": "isinstance", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return whether 'cls' is a derived from another class or is the same class.\n\nA tuple, as in ``issubclass(x, (A, B, ...))``, may be given as the target to\ncheck against. This is equivalent to ``issubclass(x, A) or issubclass(x, B)\nor ...`` etc.", @@ -811,7 +931,11 @@ "Classes": null, "Functions": null, "Id": -1314249287, - "Name": "issubclass" + "Name": "issubclass", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "iter(iterable) -> iterator\niter(callable, sentinel) -> iterator\n\nGet an iterator from an object. In the first form, the argument must\nsupply its own iterator, or be a sequence.\nIn the second form, the callable is called until it returns the sentinel.", @@ -838,7 +962,11 @@ "Classes": null, "Functions": null, "Id": 24483759, - "Name": "iter" + "Name": "iter", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the number of items in a container.", @@ -859,7 +987,11 @@ "Classes": null, "Functions": null, "Id": 792222, - "Name": "len" + "Name": "len", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "interactive prompt objects for printing the license text, a list of\n contributors and the copyright notice.", @@ -880,7 +1012,11 @@ "Classes": null, "Functions": null, "Id": 1596689482, - "Name": "license" + "Name": "license", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a dictionary containing the current scope's local variables.\n\nNOTE: Whether or not updates to this dictionary will affect name lookups in\nthe local scope and vice-versa is *implementation dependent* and not\ncovered by any backwards compatibility guarantees.", @@ -894,7 +1030,11 @@ "Classes": null, "Functions": null, "Id": 2135253311, - "Name": "locals" + "Name": "locals", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "max(iterable, *[, default=obj, key=func]) -> value\nmax(arg1, arg2, *args, *[, key=func]) -> value\n\nWith a single iterable argument, return its biggest item. The\ndefault keyword-only argument specifies an object to return if\nthe provided iterable is empty.\nWith two or more arguments, return the largest argument.", @@ -933,7 +1073,11 @@ "Classes": null, "Functions": null, "Id": 793069, - "Name": "max" + "Name": "max", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "min(iterable, *[, default=obj, key=func]) -> value\nmin(arg1, arg2, *args, *[, key=func]) -> value\n\nWith a single iterable argument, return its smallest item. The\ndefault keyword-only argument specifies an object to return if\nthe provided iterable is empty.\nWith two or more arguments, return the smallest argument.", @@ -972,7 +1116,11 @@ "Classes": null, "Functions": null, "Id": 793307, - "Name": "min" + "Name": "min", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "next(iterator[, default])\n\nReturn the next item from the iterator. If default is given and the iterator\nis exhausted, it is returned instead of raising StopIteration.", @@ -999,7 +1147,11 @@ "Classes": null, "Functions": null, "Id": 24618890, - "Name": "next" + "Name": "next", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the octal representation of an integer.\n\n >>> oct(342391)\n '0o1234567'", @@ -1020,7 +1172,11 @@ "Classes": null, "Functions": null, "Id": 795049, - "Name": "oct" + "Name": "oct", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Open file and return a stream. Raise OSError upon failure.\n\nfile is either a text or byte string giving the name (and the path\nif the file isn't in the current working directory) of the file to\nbe opened or an integer file descriptor of the file to be\nwrapped. (If a file descriptor is given, it is closed when the\nreturned I/O object is closed, unless closefd is set to False.)\n\nmode is an optional string that specifies the mode in which the file\nis opened. It defaults to 'r' which means open for reading in text\nmode. Other common values are 'w' for writing (truncating the file if\nit already exists), 'x' for creating and writing to a new file, and\n'a' for appending (which on some Unix systems, means that all writes\nappend to the end of the file regardless of the current seek position).\nIn text mode, if encoding is not specified the encoding used is platform\ndependent: locale.getpreferredencoding(False) is called to get the\ncurrent locale encoding. (For reading and writing raw bytes use binary\nmode and leave encoding unspecified.) The available modes are:\n\n========= ===============================================================\nCharacter Meaning\n--------- ---------------------------------------------------------------\n'r' open for reading (default)\n'w' open for writing, truncating the file first\n'x' create a new file and open it for writing\n'a' open for writing, appending to the end of the file if it exists\n'b' binary mode\n't' text mode (default)\n'+' open a disk file for updating (reading and writing)\n'U' universal newline mode (deprecated)\n========= ===============================================================\n\nThe default mode is 'rt' (open for reading text). For binary random\naccess, the mode 'w+b' opens and truncates the file to 0 bytes, while\n'r+b' opens the file without truncation. The 'x' mode implies 'w' and\nraises an `FileExistsError` if the file already exists.\n\nPython distinguishes between files opened in binary and text modes,\neven when the underlying operating system doesn't. Files opened in\nbinary mode (appending 'b' to the mode argument) return contents as\nbytes objects without any decoding. In text mode (the default, or when\n't' is appended to the mode argument), the contents of the file are\nreturned as strings, the bytes having been first decoded using a\nplatform-dependent encoding or using the specified encoding if given.\n\n'U' mode is deprecated and will raise an exception in future versions\nof Python. It has no effect in Python 3. Use newline to control\nuniversal newlines mode.\n\nbuffering is an optional integer used to set the buffering policy.\nPass 0 to switch buffering off (only allowed in binary mode), 1 to select\nline buffering (only usable in text mode), and an integer > 1 to indicate\nthe size of a fixed-size chunk buffer. When no buffering argument is\ngiven, the default buffering policy works as follows:\n\n* Binary files are buffered in fixed-size chunks; the size of the buffer\n is chosen using a heuristic trying to determine the underlying device's\n \"block size\" and falling back on `io.DEFAULT_BUFFER_SIZE`.\n On many systems, the buffer will typically be 4096 or 8192 bytes long.\n\n* \"Interactive\" text files (files for which isatty() returns True)\n use line buffering. Other text files use the policy described above\n for binary files.\n\nencoding is the name of the encoding used to decode or encode the\nfile. This should only be used in text mode. The default encoding is\nplatform dependent, but any encoding supported by Python can be\npassed. See the codecs module for the list of supported encodings.\n\nerrors is an optional string that specifies how encoding errors are to\nbe handled---this argument should not be used in binary mode. Pass\n'strict' to raise a ValueError exception if there is an encoding error\n(the default of None has the same effect), or pass 'ignore' to ignore\nerrors. (Note that ignoring encoding errors can lead to data loss.)\nSee the documentation for codecs.register or run 'help(codecs.Codec)'\nfor a list of the permitted encoding error strings.\n\nnewline controls how universal newlines works (it only applies to text\nmode). It can be None, '', '\\n', '\\r', and '\\r\\n'. It works as\nfollows:\n\n* On input, if newline is None, universal newlines mode is\n enabled. Lines in the input can end in '\\n', '\\r', or '\\r\\n', and\n these are translated into '\\n' before being returned to the\n caller. If it is '', universal newline mode is enabled, but line\n endings are returned to the caller untranslated. If it has any of\n the other legal values, input lines are only terminated by the given\n string, and the line ending is returned to the caller untranslated.\n\n* On output, if newline is None, any '\\n' characters written are\n translated to the system default line separator, os.linesep. If\n newline is '' or '\\n', no translation takes place. If newline is any\n of the other legal values, any '\\n' characters written are translated\n to the given string.\n\nIf closefd is False, the underlying file descriptor will be kept open\nwhen the file is closed. This does not work when a file name is given\nand must be True in that case.\n\nA custom opener can be used by passing a callable as *opener*. The\nunderlying file descriptor for the file object is then obtained by\ncalling *opener* with (*file*, *flags*). *opener* must return an open\nfile descriptor (passing os.open as *opener* results in functionality\nsimilar to passing None).\n\nopen() returns a file object whose type depends on the mode, and\nthrough which the standard file operations such as reading and writing\nare performed. When open() is used to open a file in a text mode ('w',\n'r', 'wt', 'rt', etc.), it returns a TextIOWrapper. When used to open\na file in a binary mode, the returned class varies: in read binary\nmode, it returns a BufferedReader; in write binary and append binary\nmodes, it returns a BufferedWriter, and in read/write mode, it returns\na BufferedRandom.\n\nIt is also possible to use a string or bytearray as a file for both\nreading and writing. For strings StringIO can be used like a file\nopened in a text mode, and for bytes a BytesIO can be used like a file\nopened in a binary mode.", @@ -1083,7 +1239,11 @@ "Classes": null, "Functions": null, "Id": 24658657, - "Name": "open" + "Name": "open", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the Unicode code point for a one-character string.", @@ -1104,7 +1264,11 @@ "Classes": null, "Functions": null, "Id": 795498, - "Name": "ord" + "Name": "ord", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Equivalent to x**y (with two arguments) or x**y % z (with three arguments)\n\nSome types, such as ints, are able to use a more efficient algorithm when\ninvoked using the three argument form.", @@ -1137,7 +1301,11 @@ "Classes": null, "Functions": null, "Id": 796385, - "Name": "pow" + "Name": "pow", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "print(value, ..., sep=' ', end='\\n', file=sys.stdout, flush=False)\n\nPrints the values to a stream, or to sys.stdout by default.\nOptional keyword arguments:\nfile: a file-like object (stream); defaults to the current sys.stdout.\nsep: string inserted between values, default a space.\nend: string appended after the last value, default a newline.\nflush: whether to forcibly flush the stream.", @@ -1151,7 +1319,11 @@ "Classes": null, "Functions": null, "Id": 765405430, - "Name": "print" + "Name": "print", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -1178,7 +1350,11 @@ "Classes": null, "Functions": null, "Id": 24723174, - "Name": "quit" + "Name": "quit", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", @@ -1192,7 +1368,11 @@ "Classes": null, "Functions": null, "Id": 766750598, - "Name": "range" + "Name": "range", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the canonical string representation of the object.\n\nFor many object types, including most builtins, eval(repr(obj)) == obj.", @@ -1213,7 +1393,11 @@ "Classes": null, "Functions": null, "Id": 24737804, - "Name": "repr" + "Name": "repr", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Round a number to a given precision in decimal digits.\n\nThe return value is an integer if ndigits is omitted or None. Otherwise\nthe return value has the same type as the number. ndigits may be negative.", @@ -1240,7 +1424,11 @@ "Classes": null, "Functions": null, "Id": 767174615, - "Name": "round" + "Name": "round", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Sets the named attribute on the given object to the specified value.\n\nsetattr(x, 'y', v) is equivalent to ``x.y = v''", @@ -1273,7 +1461,11 @@ "Classes": null, "Functions": null, "Id": -879649444, - "Name": "setattr" + "Name": "setattr", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a new list containing all items from the iterable in ascending order.\n\nA custom key function can be supplied to customize the sort order, and the\nreverse flag can be set to request the result in descending order.", @@ -1294,7 +1486,11 @@ "Classes": null, "Functions": null, "Id": -1958845036, - "Name": "sorted" + "Name": "sorted", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the sum of a 'start' value (default: 0) plus an iterable of numbers\n\nWhen the iterable is empty, return the start value.\nThis function is intended specifically for use with numeric values and may\nreject non-numeric types.", @@ -1321,7 +1517,11 @@ "Classes": null, "Functions": null, "Id": 799444, - "Name": "sum" + "Name": "sum", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "vars([object]) -> dictionary\n\nWithout arguments, equivalent to locals().\nWith an argument, equivalent to object.__dict__.", @@ -1342,7 +1542,11 @@ "Classes": null, "Functions": null, "Id": 24853187, - "Name": "vars" + "Name": "vars", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", @@ -1356,234 +1560,418 @@ "Classes": null, "Functions": null, "Id": 783823, - "Name": "cmp" + "Name": "cmp", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Variables": [ { "Value": "object", "Id": 376535734, - "Name": "__Object__" + "Name": "__Object__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "int", "Id": -1660953576, - "Name": "__Int__" + "Name": "__Int__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "bool", "Id": -149570207, - "Name": "__Bool__" + "Name": "__Bool__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "int", "Id": 136686707, - "Name": "__Long__" + "Name": "__Long__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "float", "Id": -1172856571, - "Name": "__Float__" + "Name": "__Float__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "complex", "Id": -1125625831, - "Name": "__Complex__" + "Name": "__Complex__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "tuple", "Id": -1373807759, - "Name": "__Tuple__" + "Name": "__Tuple__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "list", "Id": 131307029, - "Name": "__List__" + "Name": "__List__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "dict", "Id": -98202835, - "Name": "__Dict__" + "Name": "__Dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "set", "Id": -1651986485, - "Name": "__Set__" + "Name": "__Set__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "frozenset", "Id": -1845664181, - "Name": "__FrozenSet__" + "Name": "__FrozenSet__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "bytes", "Id": -50989228, - "Name": "__Bytes__" + "Name": "__Bytes__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "bytes_iterator", "Id": 1196082274, - "Name": "__BytesIterator__" + "Name": "__BytesIterator__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "str", "Id": -667382010, - "Name": "__Unicode__" + "Name": "__Unicode__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "str_iterator", "Id": 899385876, - "Name": "__UnicodeIterator__" + "Name": "__UnicodeIterator__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "str", "Id": -1651541542, - "Name": "__Str__" + "Name": "__Str__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "str_iterator", "Id": -1693163288, - "Name": "__StrIterator__" + "Name": "__StrIterator__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "module", "Id": -318216541, - "Name": "__Module__" + "Name": "__Module__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "function", "Id": -56357041, - "Name": "__Function__" + "Name": "__Function__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "wrapper_descriptor", "Id": 2031680028, - "Name": "__BuiltinMethodDescriptor__" + "Name": "__BuiltinMethodDescriptor__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "builtin_function_or_method", "Id": -998173500, - "Name": "__BuiltinFunction__" + "Name": "__BuiltinFunction__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "generator", "Id": 1086442300, - "Name": "__Generator__" + "Name": "__Generator__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "property", "Id": -919605748, - "Name": "__Property__" + "Name": "__Property__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "classmethod", "Id": -991650526, - "Name": "__ClassMethod__" + "Name": "__ClassMethod__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "staticmethod", "Id": 1863225126, - "Name": "__StaticMethod__" + "Name": "__StaticMethod__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "ellipsis", "Id": 961323528, - "Name": "__Ellipsis__" + "Name": "__Ellipsis__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "tuple_iterator", "Id": 1754184575, - "Name": "__TupleIterator__" + "Name": "__TupleIterator__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "list_iterator", "Id": 692195875, - "Name": "__ListIterator__" + "Name": "__ListIterator__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "dict_keys", "Id": -414283327, - "Name": "__DictKeys__" + "Name": "__DictKeys__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "dict_values", "Id": -623419857, - "Name": "__DictValues__" + "Name": "__DictValues__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "dict_items", "Id": -1322081197, - "Name": "__DictItems__" + "Name": "__DictItems__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "set_iterator", "Id": 1366627801, - "Name": "__SetIterator__" + "Name": "__SetIterator__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "callable_iterator", "Id": 1819825725, - "Name": "__CallableIterator__" + "Name": "__CallableIterator__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": null, "Id": -2048509720, - "Name": "__builtin_module_names__" + "Name": "__builtin_module_names__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:ellipsis", "Id": 1631567368, - "Name": "Ellipsis" + "Name": "Ellipsis", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:OSError", "Id": 763574764, - "Name": "EnvironmentError" + "Name": "EnvironmentError", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:OSError", "Id": -172840821, - "Name": "IOError" + "Name": "IOError", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:NotImplementedType", "Id": -1818427354, - "Name": "NotImplemented" + "Name": "NotImplemented", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:OSError", "Id": 1763918588, - "Name": "WindowsError" + "Name": "WindowsError", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": null, "Id": -1636005055, - "Name": "__doc__" + "Name": "__doc__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": null, "Id": 1097116834, - "Name": "__name__" + "Name": "__name__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": null, "Id": 75395663, - "Name": "__package__" + "Name": "__package__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "bool", "Id": 23856709, - "Name": "True" + "Name": "True", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "bool", "Id": 726114124, - "Name": "False" + "Name": "False", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "__NoneType__", "Id": 23674863, - "Name": "None" + "Name": "None", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Classes": [ @@ -1624,7 +2012,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -1645,7 +2037,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -1666,7 +2062,11 @@ "Classes": null, "Functions": null, "Id": -544113923, - "Name": "__reduce__" + "Name": "__reduce__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return repr(self).", @@ -1687,7 +2087,11 @@ "Classes": null, "Functions": null, "Id": 1215429388, - "Name": "__repr__" + "Name": "__repr__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -1714,7 +2118,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -1722,18 +2130,30 @@ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 2136768640, - "Name": "NotImplementedType" + "Name": "NotImplementedType", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", @@ -1744,23 +2164,36 @@ { "Value": null, "Id": 1097116834, - "Name": "__name__" + "Name": "__name__", + "IndexSpan": null }, { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 1423120691, - "Name": "__Unknown__" + "Name": "__Unknown__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "the type of the None object", @@ -1771,18 +2204,30 @@ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 1499999113, - "Name": "__NoneType__" + "Name": "__NoneType__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "The most base type", @@ -1813,7 +2258,11 @@ "Classes": null, "Functions": null, "Id": 2095540485, - "Name": "__delattr__" + "Name": "__delattr__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Default dir() implementation.", @@ -1834,7 +2283,11 @@ "Classes": null, "Functions": null, "Id": -1636169386, - "Name": "__dir__" + "Name": "__dir__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self==value.", @@ -1861,7 +2314,11 @@ "Classes": null, "Functions": null, "Id": 1748372547, - "Name": "__eq__" + "Name": "__eq__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Default object formatter.", @@ -1888,7 +2345,11 @@ "Classes": null, "Functions": null, "Id": 695475534, - "Name": "__format__" + "Name": "__format__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>=value.", @@ -1915,7 +2376,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -1942,7 +2407,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -1969,7 +2438,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return hash(self).", @@ -1990,7 +2463,11 @@ "Classes": null, "Functions": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "The most base type", @@ -2023,7 +2500,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -2044,7 +2525,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -2071,7 +2556,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self integer\nint(x, base=10) -> integer\n\nConvert a number or string to an integer, or return 0 if no arguments\nare given. If x is a number, return x.__int__(). For floating point\nnumbers, this truncates towards zero.\n\nIf x is not a number or if base is given, then x must be a string,\nbytes, or bytearray instance representing an integer literal in the\ngiven base. The literal can be preceded by '+' or '-' and be surrounded\nby whitespace. The base defaults to 10. Valid bases are 0 and 2-36.\nBase 0 means to interpret the base from the string as an integer literal.\n>>> int('0b100', base=0)\n4", @@ -2342,7 +2879,11 @@ "Classes": null, "Functions": null, "Id": -1639147525, - "Name": "__abs__" + "Name": "__abs__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self+value.", @@ -2369,7 +2910,11 @@ "Classes": null, "Functions": null, "Id": -1639102358, - "Name": "__add__" + "Name": "__add__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self&value.", @@ -2396,7 +2941,11 @@ "Classes": null, "Functions": null, "Id": -1638804448, - "Name": "__and__" + "Name": "__and__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "self != 0", @@ -2417,7 +2966,11 @@ "Classes": null, "Functions": null, "Id": 766562625, - "Name": "__bool__" + "Name": "__bool__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Ceiling of an Integral returns itself.", @@ -2438,7 +2991,11 @@ "Classes": null, "Functions": null, "Id": 785777820, - "Name": "__ceil__" + "Name": "__ceil__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return divmod(self, value).", @@ -2465,7 +3022,11 @@ "Classes": null, "Functions": null, "Id": 589685672, - "Name": "__divmod__" + "Name": "__divmod__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self==value.", @@ -2492,7 +3053,11 @@ "Classes": null, "Functions": null, "Id": 1748372547, - "Name": "__eq__" + "Name": "__eq__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "float(self)", @@ -2513,7 +3078,11 @@ "Classes": null, "Functions": null, "Id": 1457457445, - "Name": "__float__" + "Name": "__float__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Flooring an Integral returns itself.", @@ -2534,7 +3103,11 @@ "Classes": null, "Functions": null, "Id": 1457872597, - "Name": "__floor__" + "Name": "__floor__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self//value.", @@ -2561,7 +3134,11 @@ "Classes": null, "Functions": null, "Id": 778272028, - "Name": "__floordiv__" + "Name": "__floordiv__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -2588,7 +3165,11 @@ "Classes": null, "Functions": null, "Id": 695475534, - "Name": "__format__" + "Name": "__format__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>=value.", @@ -2615,7 +3196,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -2642,7 +3227,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -2663,7 +3252,11 @@ "Classes": null, "Functions": null, "Id": -488627138, - "Name": "__getnewargs__" + "Name": "__getnewargs__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -2690,7 +3283,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return hash(self).", @@ -2711,7 +3308,11 @@ "Classes": null, "Functions": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self converted to an integer, if self is suitable for use as an index into a list.", @@ -2732,7 +3333,11 @@ "Classes": null, "Functions": null, "Id": -127776229, - "Name": "__index__" + "Name": "__index__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "int([x]) -> integer\nint(x, base=10) -> integer\n\nConvert a number or string to an integer, or return 0 if no arguments\nare given. If x is a number, return x.__int__(). For floating point\nnumbers, this truncates towards zero.\n\nIf x is not a number or if base is given, then x must be a string,\nbytes, or bytearray instance representing an integer literal in the\ngiven base. The literal can be preceded by '+' or '-' and be surrounded\nby whitespace. The base defaults to 10. Valid bases are 0 and 2-36.\nBase 0 means to interpret the base from the string as an integer literal.\n>>> int('0b100', base=0)\n4", @@ -2765,7 +3370,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -2786,7 +3395,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "int(self)", @@ -2807,7 +3420,11 @@ "Classes": null, "Functions": null, "Id": -1631400904, - "Name": "__int__" + "Name": "__int__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "~self", @@ -2828,7 +3445,11 @@ "Classes": null, "Functions": null, "Id": 849070445, - "Name": "__invert__" + "Name": "__invert__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -2855,7 +3476,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<>self.", @@ -3416,7 +4121,11 @@ "Classes": null, "Functions": null, "Id": 1555101003, - "Name": "__rrshift__" + "Name": "__rrshift__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>>value.", @@ -3443,7 +4152,11 @@ "Classes": null, "Functions": null, "Id": -900426137, - "Name": "__rshift__" + "Name": "__rshift__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return value-self.", @@ -3470,7 +4183,11 @@ "Classes": null, "Functions": null, "Id": 1228492261, - "Name": "__rsub__" + "Name": "__rsub__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return value/self.", @@ -3497,7 +4214,11 @@ "Classes": null, "Functions": null, "Id": -1563284312, - "Name": "__rtruediv__" + "Name": "__rtruediv__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return value^self.", @@ -3524,7 +4245,11 @@ "Classes": null, "Functions": null, "Id": 1232946496, - "Name": "__rxor__" + "Name": "__rxor__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Returns size in memory, in bytes.", @@ -3545,7 +4270,11 @@ "Classes": null, "Functions": null, "Id": 1069167279, - "Name": "__sizeof__" + "Name": "__sizeof__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return str(self).", @@ -3566,7 +4295,11 @@ "Classes": null, "Functions": null, "Id": -1621988870, - "Name": "__str__" + "Name": "__str__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self-value.", @@ -3593,7 +4326,11 @@ "Classes": null, "Functions": null, "Id": -1621974455, - "Name": "__sub__" + "Name": "__sub__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -3620,7 +4357,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self/value.", @@ -3647,7 +4388,11 @@ "Classes": null, "Functions": null, "Id": -375214324, - "Name": "__truediv__" + "Name": "__truediv__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Truncating an Integral returns itself.", @@ -3668,7 +4413,11 @@ "Classes": null, "Functions": null, "Id": 1175294069, - "Name": "__trunc__" + "Name": "__trunc__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self^value.", @@ -3695,7 +4444,11 @@ "Classes": null, "Functions": null, "Id": -1617520220, - "Name": "__xor__" + "Name": "__xor__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Number of bits necessary to represent self in binary.\n\n>>> bin(37)\n'0b100101'\n>>> (37).bit_length()\n6", @@ -3716,7 +4469,11 @@ "Classes": null, "Functions": null, "Id": 641823151, - "Name": "bit_length" + "Name": "bit_length", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Returns self, the complex conjugate of any int.", @@ -3737,7 +4494,11 @@ "Classes": null, "Functions": null, "Id": -903692703, - "Name": "conjugate" + "Name": "conjugate", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the integer represented by the given array of bytes.\n\n bytes\n Holds the array of bytes to convert. The argument must either\n support the buffer protocol or be an iterable object producing bytes.\n Bytes and bytearray are examples of built-in objects that support the\n buffer protocol.\n byteorder\n The byte order used to represent the integer. If byteorder is 'big',\n the most significant byte is at the beginning of the byte array. If\n byteorder is 'little', the most significant byte is at the end of the\n byte array. To request the native byte order of the host system, use\n `sys.byteorder' as the byte order value.\n signed\n Indicates whether two's complement is used to represent the integer.", @@ -3776,7 +4537,11 @@ "Classes": null, "Functions": null, "Id": -190029075, - "Name": "from_bytes" + "Name": "from_bytes", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return an array of bytes representing an integer.\n\n length\n Length of bytes object to use. An OverflowError is raised if the\n integer is not representable with the given number of bytes.\n byteorder\n The byte order used to represent the integer. If byteorder is 'big',\n the most significant byte is at the beginning of the byte array. If\n byteorder is 'little', the most significant byte is at the end of the\n byte array. To request the native byte order of the host system, use\n `sys.byteorder' as the byte order value.\n signed\n Determines whether two's complement is used to represent the integer.\n If signed is False and a negative integer is given, an OverflowError\n is raised.", @@ -3809,7 +4574,11 @@ "Classes": null, "Functions": null, "Id": -71556418, - "Name": "to_bytes" + "Name": "to_bytes", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [ @@ -3818,46 +4587,74 @@ "ReturnType": null, "Attributes": 0, "Id": 985628143, - "Name": "denominator" + "Name": "denominator", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": 24476897, - "Name": "imag" + "Name": "imag", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": 1522491474, - "Name": "numerator" + "Name": "numerator", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": 24737333, - "Name": "real" + "Name": "real", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Fields": [ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 789624, - "Name": "int" + "Name": "int", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "bool(x) -> bool\n\nReturns True when the argument x is true, False otherwise.\nThe builtins True and False are the only two instances of the class bool.\nThe class bool is a subclass of the class int, and cannot be subclassed.", @@ -3890,7 +4687,11 @@ "Classes": null, "Functions": null, "Id": -1638804448, - "Name": "__and__" + "Name": "__and__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "bool(x) -> bool\n\nReturns True when the argument x is true, False otherwise.\nThe builtins True and False are the only two instances of the class bool.\nThe class bool is a subclass of the class int, and cannot be subclassed.", @@ -3917,7 +4718,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -3938,7 +4743,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self|value.", @@ -3965,7 +4774,11 @@ "Classes": null, "Functions": null, "Id": 1748671418, - "Name": "__or__" + "Name": "__or__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return value&self.", @@ -3992,7 +4805,11 @@ "Classes": null, "Functions": null, "Id": 1211662268, - "Name": "__rand__" + "Name": "__rand__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return repr(self).", @@ -4013,7 +4830,11 @@ "Classes": null, "Functions": null, "Id": 1215429388, - "Name": "__repr__" + "Name": "__repr__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return value|self.", @@ -4040,7 +4861,11 @@ "Classes": null, "Functions": null, "Id": -1623061346, - "Name": "__ror__" + "Name": "__ror__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return value^self.", @@ -4067,7 +4892,11 @@ "Classes": null, "Functions": null, "Id": 1232946496, - "Name": "__rxor__" + "Name": "__rxor__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return str(self).", @@ -4088,7 +4917,11 @@ "Classes": null, "Functions": null, "Id": -1621988870, - "Name": "__str__" + "Name": "__str__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -4115,7 +4948,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self^value.", @@ -4142,7 +4979,11 @@ "Classes": null, "Functions": null, "Id": -1617520220, - "Name": "__xor__" + "Name": "__xor__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the integer represented by the given array of bytes.\n\n bytes\n Holds the array of bytes to convert. The argument must either\n support the buffer protocol or be an iterable object producing bytes.\n Bytes and bytearray are examples of built-in objects that support the\n buffer protocol.\n byteorder\n The byte order used to represent the integer. If byteorder is 'big',\n the most significant byte is at the beginning of the byte array. If\n byteorder is 'little', the most significant byte is at the end of the\n byte array. To request the native byte order of the host system, use\n `sys.byteorder' as the byte order value.\n signed\n Indicates whether two's complement is used to represent the integer.", @@ -4181,7 +5022,11 @@ "Classes": null, "Functions": null, "Id": -190029075, - "Name": "from_bytes" + "Name": "from_bytes", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -4189,18 +5034,30 @@ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 24270721, - "Name": "bool" + "Name": "bool", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Convert a string or number to a floating point number, if possible.", @@ -4227,7 +5084,11 @@ "Classes": null, "Functions": null, "Id": -1639147525, - "Name": "__abs__" + "Name": "__abs__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self+value.", @@ -4254,7 +5115,11 @@ "Classes": null, "Functions": null, "Id": -1639102358, - "Name": "__add__" + "Name": "__add__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "self != 0", @@ -4275,7 +5140,11 @@ "Classes": null, "Functions": null, "Id": 766562625, - "Name": "__bool__" + "Name": "__bool__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return divmod(self, value).", @@ -4302,7 +5171,11 @@ "Classes": null, "Functions": null, "Id": 589685672, - "Name": "__divmod__" + "Name": "__divmod__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self==value.", @@ -4329,7 +5202,11 @@ "Classes": null, "Functions": null, "Id": 1748372547, - "Name": "__eq__" + "Name": "__eq__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "float(self)", @@ -4350,7 +5227,11 @@ "Classes": null, "Functions": null, "Id": 1457457445, - "Name": "__float__" + "Name": "__float__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self//value.", @@ -4377,7 +5258,11 @@ "Classes": null, "Functions": null, "Id": 778272028, - "Name": "__floordiv__" + "Name": "__floordiv__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Formats the float according to format_spec.", @@ -4404,7 +5289,11 @@ "Classes": null, "Functions": null, "Id": 695475534, - "Name": "__format__" + "Name": "__format__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>=value.", @@ -4431,7 +5320,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -4458,7 +5351,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "You probably don't want to use this function.\n\n typestr\n Must be 'double' or 'float'.\n\nIt exists mainly to be used in Python's test suite.\n\nThis function returns whichever of 'unknown', 'IEEE, big-endian' or 'IEEE,\nlittle-endian' best describes the format of floating point numbers used by the\nC type named by typestr.", @@ -4491,7 +5388,11 @@ "Classes": null, "Functions": null, "Id": 1018863830, - "Name": "__getformat__" + "Name": "__getformat__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -4512,7 +5413,11 @@ "Classes": null, "Functions": null, "Id": -488627138, - "Name": "__getnewargs__" + "Name": "__getnewargs__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -4539,7 +5444,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return hash(self).", @@ -4560,7 +5469,11 @@ "Classes": null, "Functions": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Convert a string or number to a floating point number, if possible.", @@ -4593,7 +5506,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -4614,7 +5531,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "int(self)", @@ -4635,7 +5556,11 @@ "Classes": null, "Functions": null, "Id": -1631400904, - "Name": "__int__" + "Name": "__int__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -4662,7 +5587,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>> (10.0).as_integer_ratio()\n(10, 1)\n>>> (0.0).as_integer_ratio()\n(0, 1)\n>>> (-.25).as_integer_ratio()\n(-1, 4)", @@ -5298,7 +6319,11 @@ "Classes": null, "Functions": null, "Id": -1148559724, - "Name": "as_integer_ratio" + "Name": "as_integer_ratio", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self, the complex conjugate of any float.", @@ -5319,7 +6344,11 @@ "Classes": null, "Functions": null, "Id": -903692703, - "Name": "conjugate" + "Name": "conjugate", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Create a floating-point number from a hexadecimal string.\n\n>>> float.fromhex('0x1.ffffp10')\n2047.984375\n>>> float.fromhex('-0x1p-1074')\n-5e-324", @@ -5352,7 +6381,11 @@ "Classes": null, "Functions": null, "Id": 835611450, - "Name": "fromhex" + "Name": "fromhex", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a hexadecimal representation of a floating-point number.\n\n>>> (-0.1).hex()\n'-0x1.999999999999ap-4'\n>>> 3.14159.hex()\n'0x1.921f9f01b866ep+1'", @@ -5373,7 +6406,11 @@ "Classes": null, "Functions": null, "Id": 788388, - "Name": "hex" + "Name": "hex", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return True if the float is an integer.", @@ -5394,7 +6431,11 @@ "Classes": null, "Functions": null, "Id": 783186560, - "Name": "is_integer" + "Name": "is_integer", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [ @@ -5403,32 +6444,52 @@ "ReturnType": null, "Attributes": 0, "Id": 24476897, - "Name": "imag" + "Name": "imag", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": 24737333, - "Name": "real" + "Name": "real", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Fields": [ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 755996837, - "Name": "float" + "Name": "float", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Create a complex number from a real part and an optional imaginary part.\n\nThis is equivalent to (real + imag*1j) where imag defaults to 0.", @@ -5455,7 +6516,11 @@ "Classes": null, "Functions": null, "Id": -1639147525, - "Name": "__abs__" + "Name": "__abs__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self+value.", @@ -5482,7 +6547,11 @@ "Classes": null, "Functions": null, "Id": -1639102358, - "Name": "__add__" + "Name": "__add__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "self != 0", @@ -5503,7 +6572,11 @@ "Classes": null, "Functions": null, "Id": 766562625, - "Name": "__bool__" + "Name": "__bool__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return divmod(self, value).", @@ -5530,7 +6603,11 @@ "Classes": null, "Functions": null, "Id": 589685672, - "Name": "__divmod__" + "Name": "__divmod__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self==value.", @@ -5557,7 +6634,11 @@ "Classes": null, "Functions": null, "Id": 1748372547, - "Name": "__eq__" + "Name": "__eq__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "float(self)", @@ -5578,7 +6659,11 @@ "Classes": null, "Functions": null, "Id": 1457457445, - "Name": "__float__" + "Name": "__float__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self//value.", @@ -5605,7 +6690,11 @@ "Classes": null, "Functions": null, "Id": 778272028, - "Name": "__floordiv__" + "Name": "__floordiv__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "complex.__format__() -> str\n\nConvert to a string according to format_spec.", @@ -5632,7 +6721,11 @@ "Classes": null, "Functions": null, "Id": 695475534, - "Name": "__format__" + "Name": "__format__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>=value.", @@ -5659,7 +6752,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -5686,7 +6783,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -5707,7 +6808,11 @@ "Classes": null, "Functions": null, "Id": -488627138, - "Name": "__getnewargs__" + "Name": "__getnewargs__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -5734,7 +6839,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return hash(self).", @@ -5755,7 +6864,11 @@ "Classes": null, "Functions": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Create a complex number from a real part and an optional imaginary part.\n\nThis is equivalent to (real + imag*1j) where imag defaults to 0.", @@ -5788,7 +6901,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -5809,7 +6926,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "int(self)", @@ -5830,7 +6951,11 @@ "Classes": null, "Functions": null, "Id": -1631400904, - "Name": "__int__" + "Name": "__int__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -5857,7 +6982,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self complex\n\nReturn the complex conjugate of its argument. (3-4j).conjugate() == 3+4j.", @@ -6406,7 +7615,11 @@ "Classes": null, "Functions": null, "Id": -903692703, - "Name": "conjugate" + "Name": "conjugate", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [ @@ -6415,32 +7628,52 @@ "ReturnType": null, "Attributes": 0, "Id": 24476897, - "Name": "imag" + "Name": "imag", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": 24737333, - "Name": "real" + "Name": "real", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Fields": [ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": -1914540871, - "Name": "complex" + "Name": "complex", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Built-in immutable sequence.\n\nIf no argument is given, the constructor returns an empty tuple.\nIf iterable is specified the tuple is initialized from iterable's items.\n\nIf the argument is a tuple, the return value is the same object.", @@ -6473,7 +7706,11 @@ "Classes": null, "Functions": null, "Id": -1639102358, - "Name": "__add__" + "Name": "__add__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return key in self.", @@ -6500,7 +7737,11 @@ "Classes": null, "Functions": null, "Id": -1841774666, - "Name": "__contains__" + "Name": "__contains__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self==value.", @@ -6527,7 +7768,11 @@ "Classes": null, "Functions": null, "Id": 1748372547, - "Name": "__eq__" + "Name": "__eq__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>=value.", @@ -6554,7 +7799,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -6581,7 +7830,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self[key].", @@ -6608,7 +7861,11 @@ "Classes": null, "Functions": null, "Id": -293179214, - "Name": "__getitem__" + "Name": "__getitem__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -6629,7 +7886,11 @@ "Classes": null, "Functions": null, "Id": -488627138, - "Name": "__getnewargs__" + "Name": "__getnewargs__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -6656,7 +7917,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return hash(self).", @@ -6677,7 +7942,11 @@ "Classes": null, "Functions": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Built-in immutable sequence.\n\nIf no argument is given, the constructor returns an empty tuple.\nIf iterable is specified the tuple is initialized from iterable's items.\n\nIf the argument is a tuple, the return value is the same object.", @@ -6710,7 +7979,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -6731,7 +8004,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -6752,7 +8029,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -6779,7 +8060,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return len(self).", @@ -6800,7 +8085,11 @@ "Classes": null, "Functions": null, "Id": -1628904226, - "Name": "__len__" + "Name": "__len__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self=value.", @@ -7182,7 +8531,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -7209,7 +8562,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "x.__getitem__(y) <==> x[y]", @@ -7236,7 +8593,11 @@ "Classes": null, "Functions": null, "Id": -293179214, - "Name": "__getitem__" + "Name": "__getitem__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -7263,7 +8624,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement self+=value.", @@ -7290,7 +8655,11 @@ "Classes": null, "Functions": null, "Id": 953701999, - "Name": "__iadd__" + "Name": "__iadd__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement self*=value.", @@ -7317,7 +8686,11 @@ "Classes": null, "Functions": null, "Id": 965298386, - "Name": "__imul__" + "Name": "__imul__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Built-in mutable sequence.\n\nIf no argument is given, the constructor creates a new empty list.\nThe argument must be an iterable if specified.", @@ -7350,7 +8723,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -7371,7 +8748,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -7392,7 +8773,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -7419,7 +8804,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return len(self).", @@ -7440,7 +8829,11 @@ "Classes": null, "Functions": null, "Id": -1628904226, - "Name": "__len__" + "Name": "__len__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self new empty dictionary\ndict(mapping) -> new dictionary initialized from a mapping object's\n (key, value) pairs\ndict(iterable) -> new dictionary initialized as if via:\n d = {}\n for k, v in iterable:\n d[k] = v\ndict(**kwargs) -> new dictionary initialized with the name=value pairs\n in the keyword argument list. For example: dict(one=1, two=2)", @@ -8019,7 +9505,11 @@ "Classes": null, "Functions": null, "Id": -1841774666, - "Name": "__contains__" + "Name": "__contains__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Delete self[key].", @@ -8046,7 +9536,11 @@ "Classes": null, "Functions": null, "Id": -1970845273, - "Name": "__delitem__" + "Name": "__delitem__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self==value.", @@ -8073,7 +9567,11 @@ "Classes": null, "Functions": null, "Id": 1748372547, - "Name": "__eq__" + "Name": "__eq__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>=value.", @@ -8100,7 +9598,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -8127,7 +9629,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "x.__getitem__(y) <==> x[y]", @@ -8154,7 +9660,11 @@ "Classes": null, "Functions": null, "Id": -293179214, - "Name": "__getitem__" + "Name": "__getitem__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -8181,7 +9691,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "dict() -> new empty dictionary\ndict(mapping) -> new dictionary initialized from a mapping object's\n (key, value) pairs\ndict(iterable) -> new dictionary initialized as if via:\n d = {}\n for k, v in iterable:\n d[k] = v\ndict(**kwargs) -> new dictionary initialized with the name=value pairs\n in the keyword argument list. For example: dict(one=1, two=2)", @@ -8208,7 +9722,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -8229,7 +9747,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -8250,7 +9772,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -8277,7 +9803,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return len(self).", @@ -8298,7 +9828,11 @@ "Classes": null, "Functions": null, "Id": -1628904226, - "Name": "__len__" + "Name": "__len__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self size of D in memory, in bytes", @@ -8427,7 +9977,11 @@ "Classes": null, "Functions": null, "Id": 1069167279, - "Name": "__sizeof__" + "Name": "__sizeof__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -8454,7 +10008,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "D.clear() -> None. Remove all items from D.", @@ -8475,7 +10033,11 @@ "Classes": null, "Functions": null, "Id": 753216662, - "Name": "clear" + "Name": "clear", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "D.copy() -> a shallow copy of D", @@ -8496,7 +10058,11 @@ "Classes": null, "Functions": null, "Id": 24300556, - "Name": "copy" + "Name": "copy", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Create a new dictionary with keys from iterable and values set to value.", @@ -8535,7 +10101,11 @@ "Classes": null, "Functions": null, "Id": 134240693, - "Name": "fromkeys" + "Name": "fromkeys", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the value for key if key is in the dictionary, else default.", @@ -8568,7 +10138,11 @@ "Classes": null, "Functions": null, "Id": 787423, - "Name": "get" + "Name": "get", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "D.items() -> a set-like object providing a view on D's items", @@ -8589,7 +10163,11 @@ "Classes": null, "Functions": null, "Id": 758996489, - "Name": "items" + "Name": "items", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "D.keys() -> a set-like object providing a view on D's keys", @@ -8610,7 +10188,11 @@ "Classes": null, "Functions": null, "Id": 24529547, - "Name": "keys" + "Name": "keys", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "D.pop(k[,d]) -> v, remove specified key and return the corresponding value.\nIf key is not found, d is returned if given, otherwise KeyError is raised", @@ -8643,7 +10225,11 @@ "Classes": null, "Functions": null, "Id": 796378, - "Name": "pop" + "Name": "pop", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "D.popitem() -> (k, v), remove and return some (key, value) pair as a\n2-tuple; but raise KeyError if D is empty.", @@ -8676,7 +10262,11 @@ "Classes": null, "Functions": null, "Id": 1035642093, - "Name": "popitem" + "Name": "popitem", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Insert key with a value of default if key is not in the dictionary.\n\nReturn the value for key if key is in the dictionary, else default.", @@ -8709,7 +10299,11 @@ "Classes": null, "Functions": null, "Id": 178640630, - "Name": "setdefault" + "Name": "setdefault", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "D.update([E, ]**F) -> None. Update D from dict/iterable E and F.\nIf E is present and has a .keys() method, then does: for k in E: D[k] = E[k]\nIf E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v\nIn either case, this is followed by: for k in F: D[k] = F[k]", @@ -8736,7 +10330,11 @@ "Classes": null, "Functions": null, "Id": -1901098080, - "Name": "update" + "Name": "update", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "D.values() -> an object providing a view on D's values", @@ -8757,7 +10355,11 @@ "Classes": null, "Functions": null, "Id": -1886064647, - "Name": "values" + "Name": "values", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -8765,23 +10367,36 @@ { "Value": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": null }, { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 24324173, - "Name": "dict" + "Name": "dict", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "set() -> new empty set object\nset(iterable) -> new set object\n\nBuild an unordered collection of unique elements.", @@ -8814,7 +10429,11 @@ "Classes": null, "Functions": null, "Id": -1638804448, - "Name": "__and__" + "Name": "__and__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "x.__contains__(y) <==> y in x.", @@ -8841,7 +10460,11 @@ "Classes": null, "Functions": null, "Id": -1841774666, - "Name": "__contains__" + "Name": "__contains__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self==value.", @@ -8868,7 +10491,11 @@ "Classes": null, "Functions": null, "Id": 1748372547, - "Name": "__eq__" + "Name": "__eq__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>=value.", @@ -8895,7 +10522,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -8922,7 +10553,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -8949,7 +10584,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self&=value.", @@ -8976,7 +10615,11 @@ "Classes": null, "Functions": null, "Id": 953999909, - "Name": "__iand__" + "Name": "__iand__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "set() -> new empty set object\nset(iterable) -> new set object\n\nBuild an unordered collection of unique elements.", @@ -9003,7 +10646,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -9024,7 +10671,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self|=value.", @@ -9051,7 +10702,11 @@ "Classes": null, "Functions": null, "Id": -1631373035, - "Name": "__ior__" + "Name": "__ior__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self-=value.", @@ -9078,7 +10733,11 @@ "Classes": null, "Functions": null, "Id": 970829902, - "Name": "__isub__" + "Name": "__isub__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -9099,7 +10758,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self^=value.", @@ -9126,7 +10789,11 @@ "Classes": null, "Functions": null, "Id": 975284137, - "Name": "__ixor__" + "Name": "__ixor__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -9153,7 +10820,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return len(self).", @@ -9174,7 +10845,11 @@ "Classes": null, "Functions": null, "Id": -1628904226, - "Name": "__len__" + "Name": "__len__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self size of S in memory, in bytes", @@ -9426,7 +11137,11 @@ "Classes": null, "Functions": null, "Id": 1069167279, - "Name": "__sizeof__" + "Name": "__sizeof__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self-value.", @@ -9453,7 +11168,11 @@ "Classes": null, "Functions": null, "Id": -1621974455, - "Name": "__sub__" + "Name": "__sub__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -9480,7 +11199,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self^value.", @@ -9507,7 +11230,11 @@ "Classes": null, "Functions": null, "Id": -1617520220, - "Name": "__xor__" + "Name": "__xor__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Add an element to a set.\n\nThis has no effect if the element is already present.", @@ -9534,7 +11261,11 @@ "Classes": null, "Functions": null, "Id": 781610, - "Name": "add" + "Name": "add", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Remove all elements from this set.", @@ -9555,7 +11286,11 @@ "Classes": null, "Functions": null, "Id": 753216662, - "Name": "clear" + "Name": "clear", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a shallow copy of a set.", @@ -9576,7 +11311,11 @@ "Classes": null, "Functions": null, "Id": 24300556, - "Name": "copy" + "Name": "copy", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the difference of two or more sets as a new set.\n\n(i.e. all elements that are in this set but not the others.)", @@ -9603,7 +11342,11 @@ "Classes": null, "Functions": null, "Id": -946813804, - "Name": "difference" + "Name": "difference", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Remove all elements of another set from this set.", @@ -9630,7 +11373,11 @@ "Classes": null, "Functions": null, "Id": 2053694164, - "Name": "difference_update" + "Name": "difference_update", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Remove an element from a set if it is a member.\n\nIf the element is not a member, do nothing.", @@ -9657,7 +11404,11 @@ "Classes": null, "Functions": null, "Id": -1193668441, - "Name": "discard" + "Name": "discard", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the intersection of two sets as a new set.\n\n(i.e. all elements that are in both sets.)", @@ -9684,7 +11435,11 @@ "Classes": null, "Functions": null, "Id": 2011414560, - "Name": "intersection" + "Name": "intersection", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Update a set with the intersection of itself and another.", @@ -9711,7 +11466,11 @@ "Classes": null, "Functions": null, "Id": -1074130488, - "Name": "intersection_update" + "Name": "intersection_update", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return True if two sets have a null intersection.", @@ -9738,7 +11497,11 @@ "Classes": null, "Functions": null, "Id": 1041514301, - "Name": "isdisjoint" + "Name": "isdisjoint", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Report whether another set contains this set.", @@ -9765,7 +11528,11 @@ "Classes": null, "Functions": null, "Id": 2076857571, - "Name": "issubset" + "Name": "issubset", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Report whether this set contains another set.", @@ -9792,7 +11559,11 @@ "Classes": null, "Functions": null, "Id": -911398520, - "Name": "issuperset" + "Name": "issuperset", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Remove and return an arbitrary set element.\nRaises KeyError if the set is empty.", @@ -9813,7 +11584,11 @@ "Classes": null, "Functions": null, "Id": 796378, - "Name": "pop" + "Name": "pop", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Remove an element from a set; it must be a member.\n\nIf the element is not a member, raise a KeyError.", @@ -9840,7 +11615,11 @@ "Classes": null, "Functions": null, "Id": -1996862629, - "Name": "remove" + "Name": "remove", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the symmetric difference of two sets as a new set.\n\n(i.e. all elements that are in exactly one of the sets.)", @@ -9867,7 +11646,11 @@ "Classes": null, "Functions": null, "Id": 796556764, - "Name": "symmetric_difference" + "Name": "symmetric_difference", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Update a set with the symmetric difference of itself and another.", @@ -9894,7 +11677,11 @@ "Classes": null, "Functions": null, "Id": -81680244, - "Name": "symmetric_difference_update" + "Name": "symmetric_difference_update", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the union of sets as a new set.\n\n(i.e. all elements that are in either set.)", @@ -9921,7 +11708,11 @@ "Classes": null, "Functions": null, "Id": 769903896, - "Name": "union" + "Name": "union", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Update a set with the union of itself and others.", @@ -9948,7 +11739,11 @@ "Classes": null, "Functions": null, "Id": -1901098080, - "Name": "update" + "Name": "update", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -9956,23 +11751,36 @@ { "Value": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": null }, { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 798955, - "Name": "set" + "Name": "set", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "frozenset() -> empty frozenset object\nfrozenset(iterable) -> frozenset object\n\nBuild an immutable unordered collection of unique elements.", @@ -10005,7 +11813,11 @@ "Classes": null, "Functions": null, "Id": -1638804448, - "Name": "__and__" + "Name": "__and__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "x.__contains__(y) <==> y in x.", @@ -10032,7 +11844,11 @@ "Classes": null, "Functions": null, "Id": -1841774666, - "Name": "__contains__" + "Name": "__contains__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self==value.", @@ -10059,7 +11875,11 @@ "Classes": null, "Functions": null, "Id": 1748372547, - "Name": "__eq__" + "Name": "__eq__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>=value.", @@ -10086,7 +11906,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -10113,7 +11937,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -10140,7 +11968,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return hash(self).", @@ -10161,7 +11993,11 @@ "Classes": null, "Functions": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "frozenset() -> empty frozenset object\nfrozenset(iterable) -> frozenset object\n\nBuild an immutable unordered collection of unique elements.", @@ -10188,7 +12024,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -10209,7 +12049,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -10230,7 +12074,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -10257,7 +12105,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return len(self).", @@ -10278,7 +12130,11 @@ "Classes": null, "Functions": null, "Id": -1628904226, - "Name": "__len__" + "Name": "__len__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self size of S in memory, in bytes", @@ -10530,7 +12422,11 @@ "Classes": null, "Functions": null, "Id": 1069167279, - "Name": "__sizeof__" + "Name": "__sizeof__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self-value.", @@ -10557,7 +12453,11 @@ "Classes": null, "Functions": null, "Id": -1621974455, - "Name": "__sub__" + "Name": "__sub__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -10584,7 +12484,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self^value.", @@ -10611,7 +12515,11 @@ "Classes": null, "Functions": null, "Id": -1617520220, - "Name": "__xor__" + "Name": "__xor__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a shallow copy of a set.", @@ -10632,7 +12540,11 @@ "Classes": null, "Functions": null, "Id": 24300556, - "Name": "copy" + "Name": "copy", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the difference of two or more sets as a new set.\n\n(i.e. all elements that are in this set but not the others.)", @@ -10659,7 +12571,11 @@ "Classes": null, "Functions": null, "Id": -946813804, - "Name": "difference" + "Name": "difference", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the intersection of two sets as a new set.\n\n(i.e. all elements that are in both sets.)", @@ -10686,7 +12602,11 @@ "Classes": null, "Functions": null, "Id": 2011414560, - "Name": "intersection" + "Name": "intersection", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return True if two sets have a null intersection.", @@ -10713,7 +12633,11 @@ "Classes": null, "Functions": null, "Id": 1041514301, - "Name": "isdisjoint" + "Name": "isdisjoint", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Report whether another set contains this set.", @@ -10740,7 +12664,11 @@ "Classes": null, "Functions": null, "Id": 2076857571, - "Name": "issubset" + "Name": "issubset", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Report whether this set contains another set.", @@ -10767,7 +12695,11 @@ "Classes": null, "Functions": null, "Id": -911398520, - "Name": "issuperset" + "Name": "issuperset", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the symmetric difference of two sets as a new set.\n\n(i.e. all elements that are in exactly one of the sets.)", @@ -10794,7 +12726,11 @@ "Classes": null, "Functions": null, "Id": 796556764, - "Name": "symmetric_difference" + "Name": "symmetric_difference", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return the union of sets as a new set.\n\n(i.e. all elements that are in either set.)", @@ -10821,7 +12757,11 @@ "Classes": null, "Functions": null, "Id": 769903896, - "Name": "union" + "Name": "union", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -10829,18 +12769,30 @@ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 233394059, - "Name": "frozenset" + "Name": "frozenset", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "bytes(iterable_of_ints) -> bytes\nbytes(string, encoding[, errors]) -> bytes\nbytes(bytes_or_buffer) -> immutable copy of bytes_or_buffer\nbytes(int) -> bytes object of size given by the parameter initialized with null bytes\nbytes() -> empty bytes object\n\nConstruct an immutable array of bytes from:\n - an iterable yielding integers in range(256)\n - a text string encoded using the specified encoding\n - any object implementing the buffer API.\n - an integer", @@ -10873,7 +12825,11 @@ "Classes": null, "Functions": null, "Id": -1639102358, - "Name": "__add__" + "Name": "__add__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return key in self.", @@ -10900,7 +12856,11 @@ "Classes": null, "Functions": null, "Id": -1841774666, - "Name": "__contains__" + "Name": "__contains__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self==value.", @@ -10927,7 +12887,11 @@ "Classes": null, "Functions": null, "Id": 1748372547, - "Name": "__eq__" + "Name": "__eq__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>=value.", @@ -10954,7 +12918,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -10981,7 +12949,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self[key].", @@ -11008,7 +12980,11 @@ "Classes": null, "Functions": null, "Id": -293179214, - "Name": "__getitem__" + "Name": "__getitem__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -11029,7 +13005,11 @@ "Classes": null, "Functions": null, "Id": -488627138, - "Name": "__getnewargs__" + "Name": "__getnewargs__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -11056,7 +13036,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return hash(self).", @@ -11077,7 +13061,11 @@ "Classes": null, "Functions": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "bytes(iterable_of_ints) -> bytes\nbytes(string, encoding[, errors]) -> bytes\nbytes(bytes_or_buffer) -> immutable copy of bytes_or_buffer\nbytes(int) -> bytes object of size given by the parameter initialized with null bytes\nbytes() -> empty bytes object\n\nConstruct an immutable array of bytes from:\n - an iterable yielding integers in range(256)\n - a text string encoded using the specified encoding\n - any object implementing the buffer API.\n - an integer", @@ -11116,7 +13104,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -11137,7 +13129,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -11164,7 +13160,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return len(self).", @@ -11185,7 +13185,11 @@ "Classes": null, "Functions": null, "Id": -1628904226, - "Name": "__len__" + "Name": "__len__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self copy of B\n\nReturn a copy of B with only its first character capitalized (ASCII)\nand the rest lower-cased.", @@ -11437,7 +13477,11 @@ "Classes": null, "Functions": null, "Id": -145846717, - "Name": "capitalize" + "Name": "capitalize", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.center(width[, fillchar]) -> copy of B\n\nReturn B centered in a string of length width. Padding is\ndone using the specified fill character (default is a space).", @@ -11470,7 +13514,11 @@ "Classes": null, "Functions": null, "Id": 1868701484, - "Name": "center" + "Name": "center", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.count(sub[, start[, end]]) -> int\n\nReturn the number of non-overlapping occurrences of subsection sub in\nbytes B[start:end]. Optional arguments start and end are interpreted\nas in slice notation.", @@ -11509,7 +13557,11 @@ "Classes": null, "Functions": null, "Id": 753321816, - "Name": "count" + "Name": "count", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Decode the bytes using the codec registered for encoding.\n\n encoding\n The encoding with which to decode the bytes.\n errors\n The error handling scheme to use for the handling of decoding errors.\n The default is 'strict' meaning that decoding errors raise a\n UnicodeDecodeError. Other possible values are 'ignore' and 'replace'\n as well as any other name registered with codecs.register_error that\n can handle UnicodeDecodeErrors.", @@ -11542,7 +13594,11 @@ "Classes": null, "Functions": null, "Id": 1896998085, - "Name": "decode" + "Name": "decode", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.endswith(suffix[, start[, end]]) -> bool\n\nReturn True if B ends with the specified suffix, False otherwise.\nWith optional start, test B beginning at that position.\nWith optional end, stop comparing B at that position.\nsuffix can also be a tuple of bytes to try.", @@ -11581,7 +13637,11 @@ "Classes": null, "Functions": null, "Id": -1172635435, - "Name": "endswith" + "Name": "endswith", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.expandtabs(tabsize=8) -> copy of B\n\nReturn a copy of B where all tab characters are expanded using spaces.\nIf tabsize is not given, a tab size of 8 characters is assumed.", @@ -11608,7 +13668,11 @@ "Classes": null, "Functions": null, "Id": -2134490001, - "Name": "expandtabs" + "Name": "expandtabs", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.find(sub[, start[, end]]) -> int\n\nReturn the lowest index in B where subsection sub is found,\nsuch that sub is contained within B[start,end]. Optional\narguments start and end are interpreted as in slice notation.\n\nReturn -1 on failure.", @@ -11647,7 +13711,11 @@ "Classes": null, "Functions": null, "Id": 24384080, - "Name": "find" + "Name": "find", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Create a bytes object from a string of hexadecimal numbers.\n\nSpaces between two numbers are accepted.\nExample: bytes.fromhex('B9 01EF') -> b'\\\\xb9\\\\x01\\\\xef'.", @@ -11680,7 +13748,11 @@ "Classes": null, "Functions": null, "Id": 835611450, - "Name": "fromhex" + "Name": "fromhex", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.hex() -> string\n\nCreate a string of hexadecimal numbers from a bytes object.\nExample: b'\\xb9\\x01\\xef'.hex() -> 'b901ef'.", @@ -11701,7 +13773,11 @@ "Classes": null, "Functions": null, "Id": 788388, - "Name": "hex" + "Name": "hex", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.index(sub[, start[, end]]) -> int\n\nReturn the lowest index in B where subsection sub is found,\nsuch that sub is contained within B[start,end]. Optional\narguments start and end are interpreted as in slice notation.\n\nRaises ValueError when the subsection is not found.", @@ -11740,7 +13816,11 @@ "Classes": null, "Functions": null, "Id": 758816539, - "Name": "index" + "Name": "index", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.isalnum() -> bool\n\nReturn True if all characters in B are alphanumeric\nand there is at least one character in B, False otherwise.", @@ -11761,7 +13841,11 @@ "Classes": null, "Functions": null, "Id": -781168486, - "Name": "isalnum" + "Name": "isalnum", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.isalpha() -> bool\n\nReturn True if all characters in B are alphabetic\nand there is at least one character in B, False otherwise.", @@ -11782,7 +13866,11 @@ "Classes": null, "Functions": null, "Id": -781166979, - "Name": "isalpha" + "Name": "isalpha", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.isascii() -> bool\n\nReturn True if B is empty or all characters in B are ASCII,\nFalse otherwise.", @@ -11803,7 +13891,11 @@ "Classes": null, "Functions": null, "Id": -780970896, - "Name": "isascii" + "Name": "isascii", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.isdigit() -> bool\n\nReturn True if all characters in B are digits\nand there is at least one character in B, False otherwise.", @@ -11824,7 +13916,11 @@ "Classes": null, "Functions": null, "Id": -778494388, - "Name": "isdigit" + "Name": "isdigit", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.islower() -> bool\n\nReturn True if all cased characters in B are lowercase and there is\nat least one cased character in B, False otherwise.", @@ -11845,7 +13941,11 @@ "Classes": null, "Functions": null, "Id": -770912224, - "Name": "islower" + "Name": "islower", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.isspace() -> bool\n\nReturn True if all characters in B are whitespace\nand there is at least one character in B, False otherwise.", @@ -11866,7 +13966,11 @@ "Classes": null, "Functions": null, "Id": -764439003, - "Name": "isspace" + "Name": "isspace", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.istitle() -> bool\n\nReturn True if B is a titlecased string and there is at least one\ncharacter in B, i.e. uppercase characters may only follow uncased\ncharacters and lowercase characters only cased ones. Return False\notherwise.", @@ -11887,7 +13991,11 @@ "Classes": null, "Functions": null, "Id": -763705481, - "Name": "istitle" + "Name": "istitle", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.isupper() -> bool\n\nReturn True if all cased characters in B are uppercase and there is\nat least one cased character in B, False otherwise.", @@ -11908,7 +14016,11 @@ "Classes": null, "Functions": null, "Id": -762577471, - "Name": "isupper" + "Name": "isupper", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Concatenate any number of bytes objects.\n\nThe bytes whose method is called is inserted in between each pair.\n\nThe result is returned as a new bytes object.\n\nExample: b'.'.join([b'ab', b'pq', b'rs']) -> b'ab.pq.rs'.", @@ -11935,7 +14047,11 @@ "Classes": null, "Functions": null, "Id": 24508865, - "Name": "join" + "Name": "join", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.ljust(width[, fillchar]) -> copy of B\n\nReturn B left justified in a string of length width. Padding is\ndone using the specified fill character (default is a space).", @@ -11968,7 +14084,11 @@ "Classes": null, "Functions": null, "Id": 761484705, - "Name": "ljust" + "Name": "ljust", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.lower() -> copy of B\n\nReturn a copy of B with all ASCII characters converted to lowercase.", @@ -11989,7 +14109,11 @@ "Classes": null, "Functions": null, "Id": 761635146, - "Name": "lower" + "Name": "lower", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Strip leading bytes contained in the argument.\n\nIf the argument is omitted or None, strip leading ASCII whitespace.", @@ -12016,7 +14140,11 @@ "Classes": null, "Functions": null, "Id": 2139470083, - "Name": "lstrip" + "Name": "lstrip", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a translation table useable for the bytes or bytearray translate method.\n\nThe returned table will be one where each byte in frm is mapped to the byte at\nthe same position in to.\n\nThe bytes objects frm and to must be of the same length.", @@ -12049,7 +14177,11 @@ "Classes": null, "Functions": null, "Id": 1060805443, - "Name": "maketrans" + "Name": "maketrans", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Partition the bytes into three parts using the given separator.\n\nThis will search for the separator sep in the bytes. If the separator is found,\nreturns a 3-tuple containing the part before the separator, the separator\nitself, and the part after it.\n\nIf the separator is not found, returns a 3-tuple containing the original bytes\nobject and two empty bytes objects.", @@ -12076,7 +14208,11 @@ "Classes": null, "Functions": null, "Id": -2024653645, - "Name": "partition" + "Name": "partition", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a copy with all occurrences of substring old replaced by new.\n\n count\n Maximum number of occurrences to replace.\n -1 (the default value) means replace all occurrences.\n\nIf the optional argument count is given, only the first count occurrences are\nreplaced.", @@ -12115,7 +14251,11 @@ "Classes": null, "Functions": null, "Id": -1770538307, - "Name": "replace" + "Name": "replace", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.rfind(sub[, start[, end]]) -> int\n\nReturn the highest index in B where subsection sub is found,\nsuch that sub is contained within B[start,end]. Optional\narguments start and end are interpreted as in slice notation.\n\nReturn -1 on failure.", @@ -12154,7 +14294,11 @@ "Classes": null, "Functions": null, "Id": 766894964, - "Name": "rfind" + "Name": "rfind", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.rindex(sub[, start[, end]]) -> int\n\nReturn the highest index in B where subsection sub is found,\nsuch that sub is contained within B[start,end]. Optional\narguments start and end are interpreted as in slice notation.\n\nRaise ValueError when the subsection is not found.", @@ -12193,7 +14337,11 @@ "Classes": null, "Functions": null, "Id": -1993149833, - "Name": "rindex" + "Name": "rindex", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.rjust(width[, fillchar]) -> copy of B\n\nReturn B right justified in a string of length width. Padding is\ndone using the specified fill character (default is a space)", @@ -12226,7 +14374,11 @@ "Classes": null, "Functions": null, "Id": 767025831, - "Name": "rjust" + "Name": "rjust", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Partition the bytes into three parts using the given separator.\n\nThis will search for the separator sep in the bytes, starting at the end. If\nthe separator is found, returns a 3-tuple containing the part before the\nseparator, the separator itself, and the part after it.\n\nIf the separator is not found, returns a 3-tuple containing two empty bytes\nobjects and the original bytes object.", @@ -12253,7 +14405,11 @@ "Classes": null, "Functions": null, "Id": -1107721713, - "Name": "rpartition" + "Name": "rpartition", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a list of the sections in the bytes, using sep as the delimiter.\n\n sep\n The delimiter according which to split the bytes.\n None (the default value) means split on ASCII whitespace characters\n (space, tab, return, newline, formfeed, vertical tab).\n maxsplit\n Maximum number of splits to do.\n -1 (the default value) means no limit.\n\nSplitting is done starting at the end of the bytes and working to the front.", @@ -12286,7 +14442,11 @@ "Classes": null, "Functions": null, "Id": -1983847233, - "Name": "rsplit" + "Name": "rsplit", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Strip trailing bytes contained in the argument.\n\nIf the argument is omitted or None, strip trailing ASCII whitespace.", @@ -12313,7 +14473,11 @@ "Classes": null, "Functions": null, "Id": -1983722307, - "Name": "rstrip" + "Name": "rstrip", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a list of the sections in the bytes, using sep as the delimiter.\n\n sep\n The delimiter according which to split the bytes.\n None (the default value) means split on ASCII whitespace characters\n (space, tab, return, newline, formfeed, vertical tab).\n maxsplit\n Maximum number of splits to do.\n -1 (the default value) means no limit.", @@ -12346,7 +14510,11 @@ "Classes": null, "Functions": null, "Id": 768119139, - "Name": "split" + "Name": "split", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a list of the lines in the bytes, breaking at line boundaries.\n\nLine breaks are not included in the resulting list unless keepends is given and\ntrue.", @@ -12373,7 +14541,11 @@ "Classes": null, "Functions": null, "Id": 1291658108, - "Name": "splitlines" + "Name": "splitlines", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.startswith(prefix[, start[, end]]) -> bool\n\nReturn True if B starts with the specified prefix, False otherwise.\nWith optional start, test B beginning at that position.\nWith optional end, stop comparing B at that position.\nprefix can also be a tuple of bytes to try.", @@ -12412,7 +14584,11 @@ "Classes": null, "Functions": null, "Id": 65206254, - "Name": "startswith" + "Name": "startswith", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Strip leading and trailing bytes contained in the argument.\n\nIf the argument is omitted or None, strip leading and trailing ASCII whitespace.", @@ -12439,7 +14615,11 @@ "Classes": null, "Functions": null, "Id": 768244065, - "Name": "strip" + "Name": "strip", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.swapcase() -> copy of B\n\nReturn a copy of B with uppercase ASCII characters converted\nto lowercase ASCII and vice versa.", @@ -12460,7 +14640,11 @@ "Classes": null, "Functions": null, "Id": 1060209754, - "Name": "swapcase" + "Name": "swapcase", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.title() -> copy of B\n\nReturn a titlecased version of B, i.e. ASCII words start with uppercase\ncharacters, all remaining cased characters have lowercase.", @@ -12481,7 +14665,11 @@ "Classes": null, "Functions": null, "Id": 768841889, - "Name": "title" + "Name": "title", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a copy with each character mapped by the given translation table.\n\n table\n Translation table, which must be a bytes object of length 256.\n\nAll characters occurring in the optional argument delete are removed.\nThe remaining characters are mapped through the given translation table.", @@ -12514,7 +14702,11 @@ "Classes": null, "Functions": null, "Id": 827988759, - "Name": "translate" + "Name": "translate", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.upper() -> copy of B\n\nReturn a copy of B with all ASCII characters converted to uppercase.", @@ -12535,7 +14727,11 @@ "Classes": null, "Functions": null, "Id": 769969899, - "Name": "upper" + "Name": "upper", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.zfill(width) -> copy of B\n\nPad a numeric string B with zeros on the left, to fill a field\nof the specified width. B is never truncated.", @@ -12562,7 +14758,11 @@ "Classes": null, "Functions": null, "Id": 774283078, - "Name": "zfill" + "Name": "zfill", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -12570,18 +14770,30 @@ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 752694964, - "Name": "bytes" + "Name": "bytes", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -12614,7 +14826,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -12647,7 +14863,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -12668,7 +14888,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -12689,7 +14913,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Private method returning an estimate of len(list(it)).", @@ -12710,7 +14938,11 @@ "Classes": null, "Functions": null, "Id": 358836041, - "Name": "__length_hint__" + "Name": "__length_hint__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement next(self).", @@ -12731,7 +14963,11 @@ "Classes": null, "Functions": null, "Id": 1101153034, - "Name": "__next__" + "Name": "__next__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return state information for pickling.", @@ -12752,7 +14988,11 @@ "Classes": null, "Functions": null, "Id": -544113923, - "Name": "__reduce__" + "Name": "__reduce__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Set state information for unpickling.", @@ -12779,7 +15019,11 @@ "Classes": null, "Functions": null, "Id": 1719806726, - "Name": "__setstate__" + "Name": "__setstate__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -12806,7 +15050,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -12814,18 +15062,30 @@ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": -1994109543, - "Name": "bytes_iterator" + "Name": "bytes_iterator", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "str(object='') -> str\nstr(bytes_or_buffer[, encoding[, errors]]) -> str\n\nCreate a new string object from the given object. If encoding or\nerrors is specified, then the object must expose a data buffer\nthat will be decoded using the given encoding and error handler.\nOtherwise, returns the result of object.__str__() (if defined)\nor repr(object).\nencoding defaults to sys.getdefaultencoding().\nerrors defaults to 'strict'.", @@ -12858,7 +15118,11 @@ "Classes": null, "Functions": null, "Id": -1639102358, - "Name": "__add__" + "Name": "__add__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return key in self.", @@ -12885,7 +15149,11 @@ "Classes": null, "Functions": null, "Id": -1841774666, - "Name": "__contains__" + "Name": "__contains__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self==value.", @@ -12912,7 +15180,11 @@ "Classes": null, "Functions": null, "Id": 1748372547, - "Name": "__eq__" + "Name": "__eq__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a formatted version of the string as described by format_spec.", @@ -12939,7 +15211,11 @@ "Classes": null, "Functions": null, "Id": 695475534, - "Name": "__format__" + "Name": "__format__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>=value.", @@ -12966,7 +15242,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -12993,7 +15273,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self[key].", @@ -13020,7 +15304,11 @@ "Classes": null, "Functions": null, "Id": -293179214, - "Name": "__getitem__" + "Name": "__getitem__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -13041,7 +15329,11 @@ "Classes": null, "Functions": null, "Id": -488627138, - "Name": "__getnewargs__" + "Name": "__getnewargs__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -13068,7 +15360,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return hash(self).", @@ -13089,7 +15385,11 @@ "Classes": null, "Functions": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "str(object='') -> str\nstr(bytes_or_buffer[, encoding[, errors]]) -> str\n\nCreate a new string object from the given object. If encoding or\nerrors is specified, then the object must expose a data buffer\nthat will be decoded using the given encoding and error handler.\nOtherwise, returns the result of object.__str__() (if defined)\nor repr(object).\nencoding defaults to sys.getdefaultencoding().\nerrors defaults to 'strict'.", @@ -13128,7 +15428,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -13149,7 +15453,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -13176,7 +15484,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return len(self).", @@ -13197,7 +15509,11 @@ "Classes": null, "Functions": null, "Id": -1628904226, - "Name": "__len__" + "Name": "__len__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self int\n\nReturn the number of non-overlapping occurrences of substring sub in\nstring S[start:end]. Optional arguments start and end are\ninterpreted as in slice notation.", @@ -13563,7 +15931,11 @@ "Classes": null, "Functions": null, "Id": 753321816, - "Name": "count" + "Name": "count", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Encode the string using the codec registered for encoding.\n\n encoding\n The encoding in which to encode the string.\n errors\n The error handling scheme to use for encoding errors.\n The default is 'strict' meaning that encoding errors raise a\n UnicodeEncodeError. Other possible values are 'ignore', 'replace' and\n 'xmlcharrefreplace' as well as any other name registered with\n codecs.register_error that can handle UnicodeEncodeErrors.", @@ -13596,7 +15968,11 @@ "Classes": null, "Functions": null, "Id": 1933938925, - "Name": "encode" + "Name": "encode", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "S.endswith(suffix[, start[, end]]) -> bool\n\nReturn True if S ends with the specified suffix, False otherwise.\nWith optional start, test S beginning at that position.\nWith optional end, stop comparing S at that position.\nsuffix can also be a tuple of strings to try.", @@ -13635,7 +16011,11 @@ "Classes": null, "Functions": null, "Id": -1172635435, - "Name": "endswith" + "Name": "endswith", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a copy where all tab characters are expanded using spaces.\n\nIf tabsize is not given, a tab size of 8 characters is assumed.", @@ -13662,7 +16042,11 @@ "Classes": null, "Functions": null, "Id": -2134490001, - "Name": "expandtabs" + "Name": "expandtabs", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "S.find(sub[, start[, end]]) -> int\n\nReturn the lowest index in S where substring sub is found,\nsuch that sub is contained within S[start:end]. Optional\narguments start and end are interpreted as in slice notation.\n\nReturn -1 on failure.", @@ -13701,7 +16085,11 @@ "Classes": null, "Functions": null, "Id": 24384080, - "Name": "find" + "Name": "find", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "S.format(*args, **kwargs) -> str\n\nReturn a formatted version of S, using substitutions from args and kwargs.\nThe substitutions are identified by braces ('{' and '}').", @@ -13734,7 +16122,11 @@ "Classes": null, "Functions": null, "Id": 1963936462, - "Name": "format" + "Name": "format", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "S.format_map(mapping) -> str\n\nReturn a formatted version of S, using substitutions from mapping.\nThe substitutions are identified by braces ('{' and '}').", @@ -13761,7 +16153,11 @@ "Classes": null, "Functions": null, "Id": 1943930987, - "Name": "format_map" + "Name": "format_map", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "S.index(sub[, start[, end]]) -> int\n\nReturn the lowest index in S where substring sub is found, \nsuch that sub is contained within S[start:end]. Optional\narguments start and end are interpreted as in slice notation.\n\nRaises ValueError when the substring is not found.", @@ -13800,7 +16196,11 @@ "Classes": null, "Functions": null, "Id": 758816539, - "Name": "index" + "Name": "index", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return True if the string is an alpha-numeric string, False otherwise.\n\nA string is alpha-numeric if all characters in the string are alpha-numeric and\nthere is at least one character in the string.", @@ -13821,7 +16221,11 @@ "Classes": null, "Functions": null, "Id": -781168486, - "Name": "isalnum" + "Name": "isalnum", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return True if the string is an alphabetic string, False otherwise.\n\nA string is alphabetic if all characters in the string are alphabetic and there\nis at least one character in the string.", @@ -13842,7 +16246,11 @@ "Classes": null, "Functions": null, "Id": -781166979, - "Name": "isalpha" + "Name": "isalpha", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return True if all characters in the string are ASCII, False otherwise.\n\nASCII characters have code points in the range U+0000-U+007F.\nEmpty string is ASCII too.", @@ -13863,7 +16271,11 @@ "Classes": null, "Functions": null, "Id": -780970896, - "Name": "isascii" + "Name": "isascii", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return True if the string is a decimal string, False otherwise.\n\nA string is a decimal string if all characters in the string are decimal and\nthere is at least one character in the string.", @@ -13884,7 +16296,11 @@ "Classes": null, "Functions": null, "Id": -927011664, - "Name": "isdecimal" + "Name": "isdecimal", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return True if the string is a digit string, False otherwise.\n\nA string is a digit string if all characters in the string are digits and there\nis at least one character in the string.", @@ -13905,7 +16321,11 @@ "Classes": null, "Functions": null, "Id": -778494388, - "Name": "isdigit" + "Name": "isdigit", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return True if the string is a valid Python identifier, False otherwise.\n\nUse keyword.iskeyword() to test for reserved identifiers such as \"def\" and\n\"class\".", @@ -13926,7 +16346,11 @@ "Classes": null, "Functions": null, "Id": 401040106, - "Name": "isidentifier" + "Name": "isidentifier", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return True if the string is a lowercase string, False otherwise.\n\nA string is lowercase if all cased characters in the string are lowercase and\nthere is at least one cased character in the string.", @@ -13947,7 +16371,11 @@ "Classes": null, "Functions": null, "Id": -770912224, - "Name": "islower" + "Name": "islower", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return True if the string is a numeric string, False otherwise.\n\nA string is numeric if all characters in the string are numeric and there is at\nleast one character in the string.", @@ -13968,7 +16396,11 @@ "Classes": null, "Functions": null, "Id": -174721940, - "Name": "isnumeric" + "Name": "isnumeric", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return True if the string is printable, False otherwise.\n\nA string is printable if all of its characters are considered printable in\nrepr() or if it is empty.", @@ -13989,7 +16421,11 @@ "Classes": null, "Functions": null, "Id": 346760998, - "Name": "isprintable" + "Name": "isprintable", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return True if the string is a whitespace string, False otherwise.\n\nA string is whitespace if all characters in the string are whitespace and there\nis at least one character in the string.", @@ -14010,7 +16446,11 @@ "Classes": null, "Functions": null, "Id": -764439003, - "Name": "isspace" + "Name": "isspace", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return True if the string is a title-cased string, False otherwise.\n\nIn a title-cased string, upper- and title-case characters may only\nfollow uncased characters and lowercase characters only cased ones.", @@ -14031,7 +16471,11 @@ "Classes": null, "Functions": null, "Id": -763705481, - "Name": "istitle" + "Name": "istitle", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return True if the string is an uppercase string, False otherwise.\n\nA string is uppercase if all cased characters in the string are uppercase and\nthere is at least one cased character in the string.", @@ -14052,7 +16496,11 @@ "Classes": null, "Functions": null, "Id": -762577471, - "Name": "isupper" + "Name": "isupper", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Concatenate any number of strings.\n\nThe string whose method is called is inserted in between each given string.\nThe result is returned as a new string.\n\nExample: '.'.join(['ab', 'pq', 'rs']) -> 'ab.pq.rs'", @@ -14079,7 +16527,11 @@ "Classes": null, "Functions": null, "Id": 24508865, - "Name": "join" + "Name": "join", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a left-justified string of length width.\n\nPadding is done using the specified fill character (default is a space).", @@ -14112,7 +16564,11 @@ "Classes": null, "Functions": null, "Id": 761484705, - "Name": "ljust" + "Name": "ljust", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a copy of the string converted to lowercase.", @@ -14133,7 +16589,11 @@ "Classes": null, "Functions": null, "Id": 761635146, - "Name": "lower" + "Name": "lower", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a copy of the string with leading whitespace removed.\n\nIf chars is given and not None, remove characters in chars instead.", @@ -14160,7 +16620,11 @@ "Classes": null, "Functions": null, "Id": 2139470083, - "Name": "lstrip" + "Name": "lstrip", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a translation table usable for str.translate().\n\nIf there is only one argument, it must be a dictionary mapping Unicode\nordinals (integers) or characters to Unicode ordinals, strings or None.\nCharacter keys will be then converted to ordinals.\nIf there are two arguments, they must be strings of equal length, and\nin the resulting dictionary, each character in x will be mapped to the\ncharacter at the same position in y. If there is a third argument, it\nmust be a string, whose characters will be mapped to None in the result.", @@ -14199,7 +16663,11 @@ "Classes": null, "Functions": null, "Id": 1060805443, - "Name": "maketrans" + "Name": "maketrans", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Partition the string into three parts using the given separator.\n\nThis will search for the separator in the string. If the separator is found,\nreturns a 3-tuple containing the part before the separator, the separator\nitself, and the part after it.\n\nIf the separator is not found, returns a 3-tuple containing the original string\nand two empty strings.", @@ -14226,7 +16694,11 @@ "Classes": null, "Functions": null, "Id": -2024653645, - "Name": "partition" + "Name": "partition", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a copy with all occurrences of substring old replaced by new.\n\n count\n Maximum number of occurrences to replace.\n -1 (the default value) means replace all occurrences.\n\nIf the optional argument count is given, only the first count occurrences are\nreplaced.", @@ -14265,7 +16737,11 @@ "Classes": null, "Functions": null, "Id": -1770538307, - "Name": "replace" + "Name": "replace", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "S.rfind(sub[, start[, end]]) -> int\n\nReturn the highest index in S where substring sub is found,\nsuch that sub is contained within S[start:end]. Optional\narguments start and end are interpreted as in slice notation.\n\nReturn -1 on failure.", @@ -14304,7 +16780,11 @@ "Classes": null, "Functions": null, "Id": 766894964, - "Name": "rfind" + "Name": "rfind", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "S.rindex(sub[, start[, end]]) -> int\n\nReturn the highest index in S where substring sub is found,\nsuch that sub is contained within S[start:end]. Optional\narguments start and end are interpreted as in slice notation.\n\nRaises ValueError when the substring is not found.", @@ -14343,7 +16823,11 @@ "Classes": null, "Functions": null, "Id": -1993149833, - "Name": "rindex" + "Name": "rindex", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a right-justified string of length width.\n\nPadding is done using the specified fill character (default is a space).", @@ -14376,7 +16860,11 @@ "Classes": null, "Functions": null, "Id": 767025831, - "Name": "rjust" + "Name": "rjust", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Partition the string into three parts using the given separator.\n\nThis will search for the separator in the string, starting at the end. If\nthe separator is found, returns a 3-tuple containing the part before the\nseparator, the separator itself, and the part after it.\n\nIf the separator is not found, returns a 3-tuple containing two empty strings\nand the original string.", @@ -14403,7 +16891,11 @@ "Classes": null, "Functions": null, "Id": -1107721713, - "Name": "rpartition" + "Name": "rpartition", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a list of the words in the string, using sep as the delimiter string.\n\n sep\n The delimiter according which to split the string.\n None (the default value) means split according to any whitespace,\n and discard empty strings from the result.\n maxsplit\n Maximum number of splits to do.\n -1 (the default value) means no limit.\n\nSplits are done starting at the end of the string and working to the front.", @@ -14436,7 +16928,11 @@ "Classes": null, "Functions": null, "Id": -1983847233, - "Name": "rsplit" + "Name": "rsplit", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a copy of the string with trailing whitespace removed.\n\nIf chars is given and not None, remove characters in chars instead.", @@ -14463,7 +16959,11 @@ "Classes": null, "Functions": null, "Id": -1983722307, - "Name": "rstrip" + "Name": "rstrip", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a list of the words in the string, using sep as the delimiter string.\n\n sep\n The delimiter according which to split the string.\n None (the default value) means split according to any whitespace,\n and discard empty strings from the result.\n maxsplit\n Maximum number of splits to do.\n -1 (the default value) means no limit.", @@ -14496,7 +16996,11 @@ "Classes": null, "Functions": null, "Id": 768119139, - "Name": "split" + "Name": "split", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a list of the lines in the string, breaking at line boundaries.\n\nLine breaks are not included in the resulting list unless keepends is given and\ntrue.", @@ -14523,7 +17027,11 @@ "Classes": null, "Functions": null, "Id": 1291658108, - "Name": "splitlines" + "Name": "splitlines", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "S.startswith(prefix[, start[, end]]) -> bool\n\nReturn True if S starts with the specified prefix, False otherwise.\nWith optional start, test S beginning at that position.\nWith optional end, stop comparing S at that position.\nprefix can also be a tuple of strings to try.", @@ -14562,7 +17070,11 @@ "Classes": null, "Functions": null, "Id": 65206254, - "Name": "startswith" + "Name": "startswith", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a copy of the string with leading and trailing whitespace remove.\n\nIf chars is given and not None, remove characters in chars instead.", @@ -14589,7 +17101,11 @@ "Classes": null, "Functions": null, "Id": 768244065, - "Name": "strip" + "Name": "strip", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Convert uppercase characters to lowercase and lowercase characters to uppercase.", @@ -14610,7 +17126,11 @@ "Classes": null, "Functions": null, "Id": 1060209754, - "Name": "swapcase" + "Name": "swapcase", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a version of the string where each word is titlecased.\n\nMore specifically, words start with uppercased characters and all remaining\ncased characters have lower case.", @@ -14631,7 +17151,11 @@ "Classes": null, "Functions": null, "Id": 768841889, - "Name": "title" + "Name": "title", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Replace each character in the string using the given translation table.\n\n table\n Translation table, which must be a mapping of Unicode ordinals to\n Unicode ordinals, strings, or None.\n\nThe table must implement lookup/indexing via __getitem__, for instance a\ndictionary or list. If this operation raises LookupError, the character is\nleft untouched. Characters mapped to None are deleted.", @@ -14658,7 +17182,11 @@ "Classes": null, "Functions": null, "Id": 827988759, - "Name": "translate" + "Name": "translate", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a copy of the string converted to uppercase.", @@ -14679,7 +17207,11 @@ "Classes": null, "Functions": null, "Id": 769969899, - "Name": "upper" + "Name": "upper", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Pad a numeric string with zeros on the left, to fill a field of the given width.\n\nThe string is never truncated.", @@ -14706,7 +17238,11 @@ "Classes": null, "Functions": null, "Id": 774283078, - "Name": "zfill" + "Name": "zfill", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -14714,18 +17250,30 @@ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 799418, - "Name": "str" + "Name": "str", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -14758,7 +17306,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -14791,7 +17343,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -14812,7 +17368,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -14833,7 +17393,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Private method returning an estimate of len(list(it)).", @@ -14854,7 +17418,11 @@ "Classes": null, "Functions": null, "Id": 358836041, - "Name": "__length_hint__" + "Name": "__length_hint__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement next(self).", @@ -14875,7 +17443,11 @@ "Classes": null, "Functions": null, "Id": 1101153034, - "Name": "__next__" + "Name": "__next__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return state information for pickling.", @@ -14896,7 +17468,11 @@ "Classes": null, "Functions": null, "Id": -544113923, - "Name": "__reduce__" + "Name": "__reduce__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Set state information for unpickling.", @@ -14923,7 +17499,11 @@ "Classes": null, "Functions": null, "Id": 1719806726, - "Name": "__setstate__" + "Name": "__setstate__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -14950,7 +17530,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -14958,18 +17542,30 @@ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 1858697299, - "Name": "str_iterator" + "Name": "str_iterator", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Create a module object.\n\nThe name must be a string; the optional doc argument can have any type.", @@ -15002,7 +17598,11 @@ "Classes": null, "Functions": null, "Id": 2095540485, - "Name": "__delattr__" + "Name": "__delattr__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "__dir__() -> list\nspecialized dir() implementation", @@ -15023,7 +17623,11 @@ "Classes": null, "Functions": null, "Id": -1636169386, - "Name": "__dir__" + "Name": "__dir__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -15050,7 +17654,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Create a module object.\n\nThe name must be a string; the optional doc argument can have any type.", @@ -15083,7 +17691,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -15104,7 +17716,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return repr(self).", @@ -15125,7 +17741,11 @@ "Classes": null, "Functions": null, "Id": 1215429388, - "Name": "__repr__" + "Name": "__repr__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement setattr(self, name, value).", @@ -15158,7 +17778,11 @@ "Classes": null, "Functions": null, "Id": -736377828, - "Name": "__setattr__" + "Name": "__setattr__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -15185,7 +17809,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -15193,18 +17821,27 @@ { "Value": "i:dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": null }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": -2131035837, - "Name": "module" + "Name": "module", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Create a function object.\n\n code\n a code object\n globals\n the globals dictionary\n name\n a string that overrides the name from the code object\n argdefs\n a tuple that specifies the default argument values\n closure\n a tuple that supplies the bindings for free variables", @@ -15243,7 +17880,11 @@ "Classes": null, "Functions": null, "Id": 782173109, - "Name": "__call__" + "Name": "__call__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return an attribute of instance, which is of type owner.", @@ -15276,7 +17917,11 @@ "Classes": null, "Functions": null, "Id": -1633516065, - "Name": "__get__" + "Name": "__get__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Create a function object.\n\n code\n a code object\n globals\n the globals dictionary\n name\n a string that overrides the name from the code object\n argdefs\n a tuple that specifies the default argument values\n closure\n a tuple that supplies the bindings for free variables", @@ -15309,7 +17954,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -15330,7 +17979,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return repr(self).", @@ -15351,7 +18004,11 @@ "Classes": null, "Functions": null, "Id": 1215429388, - "Name": "__repr__" + "Name": "__repr__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -15378,7 +18035,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [ @@ -15387,70 +18048,105 @@ "ReturnType": "i:dict", "Attributes": 0, "Id": 1058045229, - "Name": "__annotations__" + "Name": "__annotations__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": 2101485316, - "Name": "__closure__" + "Name": "__closure__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": "i:object", "Attributes": 0, "Id": 794857348, - "Name": "__code__" + "Name": "__code__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": -1308361943, - "Name": "__defaults__" + "Name": "__defaults__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": "i:dict", "Attributes": 0, "Id": -1338696519, - "Name": "__globals__" + "Name": "__globals__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": -56184875, - "Name": "__kwdefaults__" + "Name": "__kwdefaults__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Fields": [ { "Value": "i:dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": null }, { "Value": null, "Id": 1097116834, - "Name": "__name__" + "Name": "__name__", + "IndexSpan": null }, { "Value": null, "Id": -1879833807, - "Name": "__qualname__" + "Name": "__qualname__", + "IndexSpan": null }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": -1535808273, - "Name": "function" + "Name": "function", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -15489,7 +18185,11 @@ "Classes": null, "Functions": null, "Id": 782173109, - "Name": "__call__" + "Name": "__call__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return an attribute of instance, which is of type owner.", @@ -15522,7 +18222,11 @@ "Classes": null, "Functions": null, "Id": -1633516065, - "Name": "__get__" + "Name": "__get__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -15549,7 +18253,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -15570,7 +18278,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -15591,7 +18303,11 @@ "Classes": null, "Functions": null, "Id": -544113923, - "Name": "__reduce__" + "Name": "__reduce__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return repr(self).", @@ -15612,7 +18328,11 @@ "Classes": null, "Functions": null, "Id": 1215429388, - "Name": "__repr__" + "Name": "__repr__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -15639,7 +18359,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [ @@ -15648,40 +18372,59 @@ "ReturnType": null, "Attributes": 0, "Id": 1840816120, - "Name": "__objclass__" + "Name": "__objclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Fields": [ { "Value": null, "Id": 1097116834, - "Name": "__name__" + "Name": "__name__", + "IndexSpan": null }, { "Value": null, "Id": -1879833807, - "Name": "__qualname__" + "Name": "__qualname__", + "IndexSpan": null }, { "Value": null, "Id": 174109373, - "Name": "__text_signature__" + "Name": "__text_signature__", + "IndexSpan": null }, { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": -98573582, - "Name": "wrapper_descriptor" + "Name": "wrapper_descriptor", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -15720,7 +18463,11 @@ "Classes": null, "Functions": null, "Id": 782173109, - "Name": "__call__" + "Name": "__call__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self==value.", @@ -15747,7 +18494,11 @@ "Classes": null, "Functions": null, "Id": 1748372547, - "Name": "__eq__" + "Name": "__eq__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>=value.", @@ -15774,7 +18525,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -15801,7 +18556,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -15828,7 +18587,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return hash(self).", @@ -15849,7 +18612,11 @@ "Classes": null, "Functions": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -15870,7 +18637,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -15897,7 +18668,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self raise GeneratorExit inside generator.", @@ -16281,7 +19127,11 @@ "Classes": null, "Functions": null, "Id": 753226817, - "Name": "close" + "Name": "close", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "send(arg) -> send 'arg' into generator,\nreturn next yielded value or raise StopIteration.", @@ -16308,7 +19158,11 @@ "Classes": null, "Functions": null, "Id": 24767519, - "Name": "send" + "Name": "send", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "throw(typ[,val[,tb]]) -> raise exception in generator,\nreturn next yielded value or raise StopIteration.", @@ -16347,7 +19201,11 @@ "Classes": null, "Functions": null, "Id": 768810287, - "Name": "throw" + "Name": "throw", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [ @@ -16356,56 +19214,86 @@ "ReturnType": null, "Attributes": 0, "Id": 1450385203, - "Name": "gi_code" + "Name": "gi_code", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": 2015125735, - "Name": "gi_frame" + "Name": "gi_frame", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": 1663620793, - "Name": "gi_running" + "Name": "gi_running", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": -1949084879, - "Name": "gi_yieldfrom" + "Name": "gi_yieldfrom", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Fields": [ { "Value": null, "Id": 1097116834, - "Name": "__name__" + "Name": "__name__", + "IndexSpan": null }, { "Value": null, "Id": -1879833807, - "Name": "__qualname__" + "Name": "__qualname__", + "IndexSpan": null }, { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 62112924, - "Name": "generator" + "Name": "generator", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Property attribute.\n\n fget\n function to be used for getting an attribute value\n fset\n function to be used for setting an attribute value\n fdel\n function to be used for del'ing an attribute\n doc\n docstring\n\nTypical use is to define a managed attribute x:\n\nclass C(object):\n def getx(self): return self._x\n def setx(self, value): self._x = value\n def delx(self): del self._x\n x = property(getx, setx, delx, \"I'm the 'x' property.\")\n\nDecorators make defining new properties or modifying existing ones easy:\n\nclass C(object):\n @property\n def x(self):\n \"I am the 'x' property.\"\n return self._x\n @x.setter\n def x(self, value):\n self._x = value\n @x.deleter\n def x(self):\n del self._x", @@ -16438,7 +19326,11 @@ "Classes": null, "Functions": null, "Id": 1041108482, - "Name": "__delete__" + "Name": "__delete__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return an attribute of instance, which is of type owner.", @@ -16471,7 +19363,11 @@ "Classes": null, "Functions": null, "Id": -1633516065, - "Name": "__get__" + "Name": "__get__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -16498,7 +19394,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Property attribute.\n\n fget\n function to be used for getting an attribute value\n fset\n function to be used for setting an attribute value\n fdel\n function to be used for del'ing an attribute\n doc\n docstring\n\nTypical use is to define a managed attribute x:\n\nclass C(object):\n def getx(self): return self._x\n def setx(self, value): self._x = value\n def delx(self): del self._x\n x = property(getx, setx, delx, \"I'm the 'x' property.\")\n\nDecorators make defining new properties or modifying existing ones easy:\n\nclass C(object):\n @property\n def x(self):\n \"I am the 'x' property.\"\n return self._x\n @x.setter\n def x(self, value):\n self._x = value\n @x.deleter\n def x(self):\n del self._x", @@ -16531,7 +19431,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -16552,7 +19456,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Set an attribute of instance to value.", @@ -16585,7 +19493,11 @@ "Classes": null, "Functions": null, "Id": -1622433813, - "Name": "__set__" + "Name": "__set__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -16612,7 +19524,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Descriptor to change the deleter on a property.", @@ -16639,7 +19555,11 @@ "Classes": null, "Functions": null, "Id": -1314572240, - "Name": "deleter" + "Name": "deleter", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Descriptor to change the getter on a property.", @@ -16666,7 +19586,11 @@ "Classes": null, "Functions": null, "Id": 1983396834, - "Name": "getter" + "Name": "getter", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Descriptor to change the setter on a property.", @@ -16693,7 +19617,11 @@ "Classes": null, "Functions": null, "Id": -1968020650, - "Name": "setter" + "Name": "setter", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [ @@ -16702,46 +19630,74 @@ "ReturnType": null, "Attributes": 0, "Id": 305214020, - "Name": "__isabstractmethod__" + "Name": "__isabstractmethod__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": 24379004, - "Name": "fdel" + "Name": "fdel", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": 24381895, - "Name": "fget" + "Name": "fget", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": 24393427, - "Name": "fset" + "Name": "fset", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Fields": [ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 385079020, - "Name": "property" + "Name": "property", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "classmethod(function) -> method\n\nConvert a function to be a class method.\n\nA class method receives the class as implicit first argument,\njust like an instance method receives the instance.\nTo declare a class method, use this idiom:\n\n class C:\n @classmethod\n def f(cls, arg1, arg2, ...):\n ...\n\nIt can be called either on the class (e.g. C.f()) or on an instance\n(e.g. C().f()). The instance is ignored except for its class.\nIf a class method is called for a derived class, the derived class\nobject is passed as the implied first argument.\n\nClass methods are different than C++ or Java static methods.\nIf you want those, see the staticmethod builtin.", @@ -16780,7 +19736,11 @@ "Classes": null, "Functions": null, "Id": -1633516065, - "Name": "__get__" + "Name": "__get__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "classmethod(function) -> method\n\nConvert a function to be a class method.\n\nA class method receives the class as implicit first argument,\njust like an instance method receives the instance.\nTo declare a class method, use this idiom:\n\n class C:\n @classmethod\n def f(cls, arg1, arg2, ...):\n ...\n\nIt can be called either on the class (e.g. C.f()) or on an instance\n(e.g. C().f()). The instance is ignored except for its class.\nIf a class method is called for a derived class, the derived class\nobject is passed as the implied first argument.\n\nClass methods are different than C++ or Java static methods.\nIf you want those, see the staticmethod builtin.", @@ -16807,7 +19767,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -16828,7 +19792,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -16855,7 +19823,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [ @@ -16864,32 +19836,49 @@ "ReturnType": null, "Attributes": 0, "Id": 886581915, - "Name": "__func__" + "Name": "__func__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": 305214020, - "Name": "__isabstractmethod__" + "Name": "__isabstractmethod__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Fields": [ { "Value": "i:dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": null }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": -1347789854, - "Name": "classmethod" + "Name": "classmethod", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "staticmethod(function) -> method\n\nConvert a function to be a static method.\n\nA static method does not receive an implicit first argument.\nTo declare a static method, use this idiom:\n\n class C:\n @staticmethod\n def f(arg1, arg2, ...):\n ...\n\nIt can be called either on the class (e.g. C.f()) or on an instance\n(e.g. C().f()). The instance is ignored except for its class.\n\nStatic methods in Python are similar to those found in Java or C++.\nFor a more advanced concept, see the classmethod builtin.", @@ -16928,7 +19917,11 @@ "Classes": null, "Functions": null, "Id": -1633516065, - "Name": "__get__" + "Name": "__get__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "staticmethod(function) -> method\n\nConvert a function to be a static method.\n\nA static method does not receive an implicit first argument.\nTo declare a static method, use this idiom:\n\n class C:\n @staticmethod\n def f(arg1, arg2, ...):\n ...\n\nIt can be called either on the class (e.g. C.f()) or on an instance\n(e.g. C().f()). The instance is ignored except for its class.\n\nStatic methods in Python are similar to those found in Java or C++.\nFor a more advanced concept, see the classmethod builtin.", @@ -16955,7 +19948,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -16976,7 +19973,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -17003,7 +20004,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [ @@ -17012,32 +20017,49 @@ "ReturnType": null, "Attributes": 0, "Id": 886581915, - "Name": "__func__" + "Name": "__func__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": 305214020, - "Name": "__isabstractmethod__" + "Name": "__isabstractmethod__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Fields": [ { "Value": "i:dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": null }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": -382457242, - "Name": "staticmethod" + "Name": "staticmethod", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -17070,7 +20092,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -17103,7 +20129,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -17124,7 +20154,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -17145,7 +20179,11 @@ "Classes": null, "Functions": null, "Id": -544113923, - "Name": "__reduce__" + "Name": "__reduce__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return repr(self).", @@ -17166,7 +20204,11 @@ "Classes": null, "Functions": null, "Id": 1215429388, - "Name": "__repr__" + "Name": "__repr__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -17193,7 +20235,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -17201,18 +20247,30 @@ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 1566923240, - "Name": "ellipsis" + "Name": "ellipsis", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -17245,7 +20303,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -17278,7 +20340,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -17299,7 +20365,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -17320,7 +20390,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Private method returning an estimate of len(list(it)).", @@ -17341,7 +20415,11 @@ "Classes": null, "Functions": null, "Id": 358836041, - "Name": "__length_hint__" + "Name": "__length_hint__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement next(self).", @@ -17362,7 +20440,11 @@ "Classes": null, "Functions": null, "Id": 1101153034, - "Name": "__next__" + "Name": "__next__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return state information for pickling.", @@ -17383,7 +20465,11 @@ "Classes": null, "Functions": null, "Id": -544113923, - "Name": "__reduce__" + "Name": "__reduce__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Set state information for unpickling.", @@ -17410,7 +20496,11 @@ "Classes": null, "Functions": null, "Id": 1719806726, - "Name": "__setstate__" + "Name": "__setstate__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -17437,7 +20527,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -17445,18 +20539,30 @@ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 1210482396, - "Name": "tuple_iterator" + "Name": "tuple_iterator", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -17489,7 +20595,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -17522,7 +20632,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -17543,7 +20657,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -17564,7 +20682,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Private method returning an estimate of len(list(it)).", @@ -17585,7 +20707,11 @@ "Classes": null, "Functions": null, "Id": 358836041, - "Name": "__length_hint__" + "Name": "__length_hint__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement next(self).", @@ -17606,7 +20732,11 @@ "Classes": null, "Functions": null, "Id": 1101153034, - "Name": "__next__" + "Name": "__next__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return state information for pickling.", @@ -17627,7 +20757,11 @@ "Classes": null, "Functions": null, "Id": -544113923, - "Name": "__reduce__" + "Name": "__reduce__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Set state information for unpickling.", @@ -17654,7 +20788,11 @@ "Classes": null, "Functions": null, "Id": 1719806726, - "Name": "__setstate__" + "Name": "__setstate__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -17681,7 +20819,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -17689,18 +20831,30 @@ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": -235571144, - "Name": "list_iterator" + "Name": "list_iterator", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -17733,7 +20887,11 @@ "Classes": null, "Functions": null, "Id": -1638804448, - "Name": "__and__" + "Name": "__and__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return key in self.", @@ -17760,7 +20918,11 @@ "Classes": null, "Functions": null, "Id": -1841774666, - "Name": "__contains__" + "Name": "__contains__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self==value.", @@ -17787,7 +20949,11 @@ "Classes": null, "Functions": null, "Id": 1748372547, - "Name": "__eq__" + "Name": "__eq__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>=value.", @@ -17814,7 +20980,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -17841,7 +21011,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -17868,7 +21042,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -17901,7 +21079,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -17922,7 +21104,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -17943,7 +21129,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -17970,7 +21160,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return len(self).", @@ -17991,7 +21185,11 @@ "Classes": null, "Functions": null, "Id": -1628904226, - "Name": "__len__" + "Name": "__len__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self=value.", @@ -18643,7 +21954,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -18670,7 +21985,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -18697,7 +22016,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -18730,7 +22053,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -18751,7 +22078,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -18772,7 +22103,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -18799,7 +22134,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return len(self).", @@ -18820,7 +22159,11 @@ "Classes": null, "Functions": null, "Id": -1628904226, - "Name": "__len__" + "Name": "__len__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self bytearray\nbytearray(string, encoding[, errors]) -> bytearray\nbytearray(bytes_or_buffer) -> mutable copy of bytes_or_buffer\nbytearray(int) -> bytes array of size given by the parameter initialized with null bytes\nbytearray() -> empty bytes array\n\nConstruct a mutable bytearray object from:\n - an iterable yielding integers in range(256)\n - a text string encoded using the specified encoding\n - a bytes or a buffer object\n - any object implementing the buffer API.\n - an integer", @@ -27017,7 +32065,11 @@ "Classes": null, "Functions": null, "Id": -1639102358, - "Name": "__add__" + "Name": "__add__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.__alloc__() -> int\n\nReturn the number of bytes actually allocated.", @@ -27038,7 +32090,11 @@ "Classes": null, "Functions": null, "Id": 1312536510, - "Name": "__alloc__" + "Name": "__alloc__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return key in self.", @@ -27065,7 +32121,11 @@ "Classes": null, "Functions": null, "Id": -1841774666, - "Name": "__contains__" + "Name": "__contains__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Delete self[key].", @@ -27092,7 +32152,11 @@ "Classes": null, "Functions": null, "Id": -1970845273, - "Name": "__delitem__" + "Name": "__delitem__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self==value.", @@ -27119,7 +32183,11 @@ "Classes": null, "Functions": null, "Id": 1748372547, - "Name": "__eq__" + "Name": "__eq__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>=value.", @@ -27146,7 +32214,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -27173,7 +32245,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self[key].", @@ -27200,7 +32276,11 @@ "Classes": null, "Functions": null, "Id": -293179214, - "Name": "__getitem__" + "Name": "__getitem__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -27227,7 +32307,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement self+=value.", @@ -27254,7 +32338,11 @@ "Classes": null, "Functions": null, "Id": 953701999, - "Name": "__iadd__" + "Name": "__iadd__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement self*=value.", @@ -27281,7 +32369,11 @@ "Classes": null, "Functions": null, "Id": 965298386, - "Name": "__imul__" + "Name": "__imul__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "bytearray(iterable_of_ints) -> bytearray\nbytearray(string, encoding[, errors]) -> bytearray\nbytearray(bytes_or_buffer) -> mutable copy of bytes_or_buffer\nbytearray(int) -> bytes array of size given by the parameter initialized with null bytes\nbytearray() -> empty bytes array\n\nConstruct a mutable bytearray object from:\n - an iterable yielding integers in range(256)\n - a text string encoded using the specified encoding\n - a bytes or a buffer object\n - any object implementing the buffer API.\n - an integer", @@ -27320,7 +32412,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -27341,7 +32437,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -27362,7 +32462,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -27389,7 +32493,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return len(self).", @@ -27410,7 +32518,11 @@ "Classes": null, "Functions": null, "Id": -1628904226, - "Name": "__len__" + "Name": "__len__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self copy of B\n\nReturn a copy of B with only its first character capitalized (ASCII)\nand the rest lower-cased.", @@ -27791,7 +32959,11 @@ "Classes": null, "Functions": null, "Id": -145846717, - "Name": "capitalize" + "Name": "capitalize", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.center(width[, fillchar]) -> copy of B\n\nReturn B centered in a string of length width. Padding is\ndone using the specified fill character (default is a space).", @@ -27812,7 +32984,11 @@ "Classes": null, "Functions": null, "Id": 1868701484, - "Name": "center" + "Name": "center", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Remove all items from the bytearray.", @@ -27833,7 +33009,11 @@ "Classes": null, "Functions": null, "Id": 753216662, - "Name": "clear" + "Name": "clear", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a copy of B.", @@ -27854,7 +33034,11 @@ "Classes": null, "Functions": null, "Id": 24300556, - "Name": "copy" + "Name": "copy", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.count(sub[, start[, end]]) -> int\n\nReturn the number of non-overlapping occurrences of subsection sub in\nbytes B[start:end]. Optional arguments start and end are interpreted\nas in slice notation.", @@ -27881,7 +33065,11 @@ "Classes": null, "Functions": null, "Id": 753321816, - "Name": "count" + "Name": "count", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Decode the bytearray using the codec registered for encoding.\n\n encoding\n The encoding with which to decode the bytearray.\n errors\n The error handling scheme to use for the handling of decoding errors.\n The default is 'strict' meaning that decoding errors raise a\n UnicodeDecodeError. Other possible values are 'ignore' and 'replace'\n as well as any other name registered with codecs.register_error that\n can handle UnicodeDecodeErrors.", @@ -27914,7 +33102,11 @@ "Classes": null, "Functions": null, "Id": 1896998085, - "Name": "decode" + "Name": "decode", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.endswith(suffix[, start[, end]]) -> bool\n\nReturn True if B ends with the specified suffix, False otherwise.\nWith optional start, test B beginning at that position.\nWith optional end, stop comparing B at that position.\nsuffix can also be a tuple of bytes to try.", @@ -27953,7 +33145,11 @@ "Classes": null, "Functions": null, "Id": -1172635435, - "Name": "endswith" + "Name": "endswith", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.expandtabs(tabsize=8) -> copy of B\n\nReturn a copy of B where all tab characters are expanded using spaces.\nIf tabsize is not given, a tab size of 8 characters is assumed.", @@ -27980,7 +33176,11 @@ "Classes": null, "Functions": null, "Id": -2134490001, - "Name": "expandtabs" + "Name": "expandtabs", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Append all the items from the iterator or sequence to the end of the bytearray.\n\n iterable_of_ints\n The iterable of items to append.", @@ -28007,7 +33207,11 @@ "Classes": null, "Functions": null, "Id": 1943671281, - "Name": "extend" + "Name": "extend", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.find(sub[, start[, end]]) -> int\n\nReturn the lowest index in B where subsection sub is found,\nsuch that sub is contained within B[start,end]. Optional\narguments start and end are interpreted as in slice notation.\n\nReturn -1 on failure.", @@ -28046,7 +33250,11 @@ "Classes": null, "Functions": null, "Id": 24384080, - "Name": "find" + "Name": "find", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Create a bytearray object from a string of hexadecimal numbers.\n\nSpaces between two numbers are accepted.\nExample: bytearray.fromhex('B9 01EF') -> bytearray(b'\\\\xb9\\\\x01\\\\xef')", @@ -28079,7 +33287,11 @@ "Classes": null, "Functions": null, "Id": 835611450, - "Name": "fromhex" + "Name": "fromhex", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.hex() -> string\n\nCreate a string of hexadecimal numbers from a bytearray object.\nExample: bytearray([0xb9, 0x01, 0xef]).hex() -> 'b901ef'.", @@ -28100,7 +33312,11 @@ "Classes": null, "Functions": null, "Id": 788388, - "Name": "hex" + "Name": "hex", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.index(sub[, start[, end]]) -> int\n\nReturn the lowest index in B where subsection sub is found,\nsuch that sub is contained within B[start,end]. Optional\narguments start and end are interpreted as in slice notation.\n\nRaises ValueError when the subsection is not found.", @@ -28127,7 +33343,11 @@ "Classes": null, "Functions": null, "Id": 758816539, - "Name": "index" + "Name": "index", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Insert a single item into the bytearray before the given index.\n\n index\n The index where the value is to be inserted.\n item\n The item to be inserted.", @@ -28160,7 +33380,11 @@ "Classes": null, "Functions": null, "Id": 2048923024, - "Name": "insert" + "Name": "insert", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.isalnum() -> bool\n\nReturn True if all characters in B are alphanumeric\nand there is at least one character in B, False otherwise.", @@ -28181,7 +33405,11 @@ "Classes": null, "Functions": null, "Id": -781168486, - "Name": "isalnum" + "Name": "isalnum", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.isalpha() -> bool\n\nReturn True if all characters in B are alphabetic\nand there is at least one character in B, False otherwise.", @@ -28202,7 +33430,11 @@ "Classes": null, "Functions": null, "Id": -781166979, - "Name": "isalpha" + "Name": "isalpha", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.isascii() -> bool\n\nReturn True if B is empty or all characters in B are ASCII,\nFalse otherwise.", @@ -28223,7 +33455,11 @@ "Classes": null, "Functions": null, "Id": -780970896, - "Name": "isascii" + "Name": "isascii", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.isdigit() -> bool\n\nReturn True if all characters in B are digits\nand there is at least one character in B, False otherwise.", @@ -28244,7 +33480,11 @@ "Classes": null, "Functions": null, "Id": -778494388, - "Name": "isdigit" + "Name": "isdigit", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.islower() -> bool\n\nReturn True if all cased characters in B are lowercase and there is\nat least one cased character in B, False otherwise.", @@ -28265,7 +33505,11 @@ "Classes": null, "Functions": null, "Id": -770912224, - "Name": "islower" + "Name": "islower", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.isspace() -> bool\n\nReturn True if all characters in B are whitespace\nand there is at least one character in B, False otherwise.", @@ -28286,7 +33530,11 @@ "Classes": null, "Functions": null, "Id": -764439003, - "Name": "isspace" + "Name": "isspace", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.istitle() -> bool\n\nReturn True if B is a titlecased string and there is at least one\ncharacter in B, i.e. uppercase characters may only follow uncased\ncharacters and lowercase characters only cased ones. Return False\notherwise.", @@ -28307,7 +33555,11 @@ "Classes": null, "Functions": null, "Id": -763705481, - "Name": "istitle" + "Name": "istitle", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.isupper() -> bool\n\nReturn True if all cased characters in B are uppercase and there is\nat least one cased character in B, False otherwise.", @@ -28328,7 +33580,11 @@ "Classes": null, "Functions": null, "Id": -762577471, - "Name": "isupper" + "Name": "isupper", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Concatenate any number of bytes/bytearray objects.\n\nThe bytearray whose method is called is inserted in between each pair.\n\nThe result is returned as a new bytearray object.", @@ -28355,7 +33611,11 @@ "Classes": null, "Functions": null, "Id": 24508865, - "Name": "join" + "Name": "join", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.ljust(width[, fillchar]) -> copy of B\n\nReturn B left justified in a string of length width. Padding is\ndone using the specified fill character (default is a space).", @@ -28376,7 +33636,11 @@ "Classes": null, "Functions": null, "Id": 761484705, - "Name": "ljust" + "Name": "ljust", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.lower() -> copy of B\n\nReturn a copy of B with all ASCII characters converted to lowercase.", @@ -28397,7 +33661,11 @@ "Classes": null, "Functions": null, "Id": 761635146, - "Name": "lower" + "Name": "lower", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Strip leading bytes contained in the argument.\n\nIf the argument is omitted or None, strip leading ASCII whitespace.", @@ -28424,7 +33692,11 @@ "Classes": null, "Functions": null, "Id": 2139470083, - "Name": "lstrip" + "Name": "lstrip", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a translation table useable for the bytes or bytearray translate method.\n\nThe returned table will be one where each byte in frm is mapped to the byte at\nthe same position in to.\n\nThe bytes objects frm and to must be of the same length.", @@ -28457,7 +33729,11 @@ "Classes": null, "Functions": null, "Id": 1060805443, - "Name": "maketrans" + "Name": "maketrans", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Partition the bytearray into three parts using the given separator.\n\nThis will search for the separator sep in the bytearray. If the separator is\nfound, returns a 3-tuple containing the part before the separator, the\nseparator itself, and the part after it as new bytearray objects.\n\nIf the separator is not found, returns a 3-tuple containing the copy of the\noriginal bytearray object and two empty bytearray objects.", @@ -28484,7 +33760,11 @@ "Classes": null, "Functions": null, "Id": -2024653645, - "Name": "partition" + "Name": "partition", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Remove and return a single item from B.\n\n index\n The index from where to remove the item.\n -1 (the default value) means remove the last item.\n\nIf no index argument is given, will pop the last item.", @@ -28511,7 +33791,11 @@ "Classes": null, "Functions": null, "Id": 796378, - "Name": "pop" + "Name": "pop", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Remove the first occurrence of a value in the bytearray.\n\n value\n The value to remove.", @@ -28538,7 +33822,11 @@ "Classes": null, "Functions": null, "Id": -1996862629, - "Name": "remove" + "Name": "remove", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a copy with all occurrences of substring old replaced by new.\n\n count\n Maximum number of occurrences to replace.\n -1 (the default value) means replace all occurrences.\n\nIf the optional argument count is given, only the first count occurrences are\nreplaced.", @@ -28577,7 +33865,11 @@ "Classes": null, "Functions": null, "Id": -1770538307, - "Name": "replace" + "Name": "replace", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Reverse the order of the values in B in place.", @@ -28598,7 +33890,11 @@ "Classes": null, "Functions": null, "Id": -1765188885, - "Name": "reverse" + "Name": "reverse", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.rfind(sub[, start[, end]]) -> int\n\nReturn the highest index in B where subsection sub is found,\nsuch that sub is contained within B[start,end]. Optional\narguments start and end are interpreted as in slice notation.\n\nReturn -1 on failure.", @@ -28637,7 +33933,11 @@ "Classes": null, "Functions": null, "Id": 766894964, - "Name": "rfind" + "Name": "rfind", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.rindex(sub[, start[, end]]) -> int\n\nReturn the highest index in B where subsection sub is found,\nsuch that sub is contained within B[start,end]. Optional\narguments start and end are interpreted as in slice notation.\n\nRaise ValueError when the subsection is not found.", @@ -28676,7 +33976,11 @@ "Classes": null, "Functions": null, "Id": -1993149833, - "Name": "rindex" + "Name": "rindex", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.rjust(width[, fillchar]) -> copy of B\n\nReturn B right justified in a string of length width. Padding is\ndone using the specified fill character (default is a space)", @@ -28697,7 +34001,11 @@ "Classes": null, "Functions": null, "Id": 767025831, - "Name": "rjust" + "Name": "rjust", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Partition the bytearray into three parts using the given separator.\n\nThis will search for the separator sep in the bytearray, starting at the end.\nIf the separator is found, returns a 3-tuple containing the part before the\nseparator, the separator itself, and the part after it as new bytearray\nobjects.\n\nIf the separator is not found, returns a 3-tuple containing two empty bytearray\nobjects and the copy of the original bytearray object.", @@ -28724,7 +34032,11 @@ "Classes": null, "Functions": null, "Id": -1107721713, - "Name": "rpartition" + "Name": "rpartition", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a list of the sections in the bytearray, using sep as the delimiter.\n\n sep\n The delimiter according which to split the bytearray.\n None (the default value) means split on ASCII whitespace characters\n (space, tab, return, newline, formfeed, vertical tab).\n maxsplit\n Maximum number of splits to do.\n -1 (the default value) means no limit.\n\nSplitting is done starting at the end of the bytearray and working to the front.", @@ -28757,7 +34069,11 @@ "Classes": null, "Functions": null, "Id": -1983847233, - "Name": "rsplit" + "Name": "rsplit", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Strip trailing bytes contained in the argument.\n\nIf the argument is omitted or None, strip trailing ASCII whitespace.", @@ -28784,7 +34100,11 @@ "Classes": null, "Functions": null, "Id": -1983722307, - "Name": "rstrip" + "Name": "rstrip", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a list of the sections in the bytearray, using sep as the delimiter.\n\n sep\n The delimiter according which to split the bytearray.\n None (the default value) means split on ASCII whitespace characters\n (space, tab, return, newline, formfeed, vertical tab).\n maxsplit\n Maximum number of splits to do.\n -1 (the default value) means no limit.", @@ -28817,7 +34137,11 @@ "Classes": null, "Functions": null, "Id": 768119139, - "Name": "split" + "Name": "split", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a list of the lines in the bytearray, breaking at line boundaries.\n\nLine breaks are not included in the resulting list unless keepends is given and\ntrue.", @@ -28844,7 +34168,11 @@ "Classes": null, "Functions": null, "Id": 1291658108, - "Name": "splitlines" + "Name": "splitlines", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.startswith(prefix[, start[, end]]) -> bool\n\nReturn True if B starts with the specified prefix, False otherwise.\nWith optional start, test B beginning at that position.\nWith optional end, stop comparing B at that position.\nprefix can also be a tuple of bytes to try.", @@ -28883,7 +34211,11 @@ "Classes": null, "Functions": null, "Id": 65206254, - "Name": "startswith" + "Name": "startswith", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Strip leading and trailing bytes contained in the argument.\n\nIf the argument is omitted or None, strip leading and trailing ASCII whitespace.", @@ -28910,7 +34242,11 @@ "Classes": null, "Functions": null, "Id": 768244065, - "Name": "strip" + "Name": "strip", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.swapcase() -> copy of B\n\nReturn a copy of B with uppercase ASCII characters converted\nto lowercase ASCII and vice versa.", @@ -28931,7 +34267,11 @@ "Classes": null, "Functions": null, "Id": 1060209754, - "Name": "swapcase" + "Name": "swapcase", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.title() -> copy of B\n\nReturn a titlecased version of B, i.e. ASCII words start with uppercase\ncharacters, all remaining cased characters have lowercase.", @@ -28952,7 +34292,11 @@ "Classes": null, "Functions": null, "Id": 768841889, - "Name": "title" + "Name": "title", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a copy with each character mapped by the given translation table.\n\n table\n Translation table, which must be a bytes object of length 256.\n\nAll characters occurring in the optional argument delete are removed.\nThe remaining characters are mapped through the given translation table.", @@ -28985,7 +34329,11 @@ "Classes": null, "Functions": null, "Id": 827988759, - "Name": "translate" + "Name": "translate", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.upper() -> copy of B\n\nReturn a copy of B with all ASCII characters converted to uppercase.", @@ -29006,7 +34354,11 @@ "Classes": null, "Functions": null, "Id": 769969899, - "Name": "upper" + "Name": "upper", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "B.zfill(width) -> copy of B\n\nPad a numeric string B with zeros on the left, to fill a field\nof the specified width. B is never truncated.", @@ -29033,7 +34385,11 @@ "Classes": null, "Functions": null, "Id": 774283078, - "Name": "zfill" + "Name": "zfill", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -29041,23 +34397,36 @@ { "Value": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": null }, { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 2020778010, - "Name": "bytearray" + "Name": "bytearray", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return an enumerate object.\n\n iterable\n an object supporting iteration\n\nThe enumerate object yields pairs containing a count (from start, which\ndefaults to zero) and a value yielded by the iterable argument.\n\nenumerate is useful for obtaining an indexed list:\n (0, seq[0]), (1, seq[1]), (2, seq[2]), ...", @@ -29090,7 +34459,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return an enumerate object.\n\n iterable\n an object supporting iteration\n\nThe enumerate object yields pairs containing a count (from start, which\ndefaults to zero) and a value yielded by the iterable argument.\n\nenumerate is useful for obtaining an indexed list:\n (0, seq[0]), (1, seq[1]), (2, seq[2]), ...", @@ -29123,7 +34496,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -29144,7 +34521,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -29165,7 +34546,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement next(self).", @@ -29186,7 +34571,11 @@ "Classes": null, "Functions": null, "Id": 1101153034, - "Name": "__next__" + "Name": "__next__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return state information for pickling.", @@ -29207,7 +34596,11 @@ "Classes": null, "Functions": null, "Id": -544113923, - "Name": "__reduce__" + "Name": "__reduce__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -29234,7 +34627,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -29242,18 +34639,30 @@ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 22552621, - "Name": "enumerate" + "Name": "enumerate", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "filter(function or None, iterable) --> filter object\n\nReturn an iterator yielding those items of iterable for which function(item)\nis true. If function is None, return the items that are true.", @@ -29286,7 +34695,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "filter(function or None, iterable) --> filter object\n\nReturn an iterator yielding those items of iterable for which function(item)\nis true. If function is None, return the items that are true.", @@ -29319,7 +34732,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -29340,7 +34757,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -29361,7 +34782,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement next(self).", @@ -29382,7 +34807,11 @@ "Classes": null, "Functions": null, "Id": 1101153034, - "Name": "__next__" + "Name": "__next__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return state information for pickling.", @@ -29403,7 +34832,11 @@ "Classes": null, "Functions": null, "Id": -544113923, - "Name": "__reduce__" + "Name": "__reduce__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -29430,7 +34863,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -29438,18 +34875,30 @@ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 1958223439, - "Name": "filter" + "Name": "filter", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "map(func, *iterables) --> map object\n\nMake an iterator that computes the function using arguments from\neach of the iterables. Stops when the shortest iterable is exhausted.", @@ -29482,7 +34931,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "map(func, *iterables) --> map object\n\nMake an iterator that computes the function using arguments from\neach of the iterables. Stops when the shortest iterable is exhausted.", @@ -29515,7 +34968,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -29536,7 +34993,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -29557,7 +35018,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement next(self).", @@ -29578,7 +35043,11 @@ "Classes": null, "Functions": null, "Id": 1101153034, - "Name": "__next__" + "Name": "__next__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return state information for pickling.", @@ -29599,7 +35068,11 @@ "Classes": null, "Functions": null, "Id": -544113923, - "Name": "__reduce__" + "Name": "__reduce__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -29626,7 +35099,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -29634,18 +35111,30 @@ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 793061, - "Name": "map" + "Name": "map", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Create a new memoryview object which references the given object.", @@ -29678,7 +35167,11 @@ "Classes": null, "Functions": null, "Id": -1970845273, - "Name": "__delitem__" + "Name": "__delitem__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -29699,7 +35192,11 @@ "Classes": null, "Functions": null, "Id": 631946913, - "Name": "__enter__" + "Name": "__enter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self==value.", @@ -29726,7 +35223,11 @@ "Classes": null, "Functions": null, "Id": 1748372547, - "Name": "__eq__" + "Name": "__eq__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -29747,7 +35248,11 @@ "Classes": null, "Functions": null, "Id": 860590709, - "Name": "__exit__" + "Name": "__exit__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>=value.", @@ -29774,7 +35279,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -29801,7 +35310,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self[key].", @@ -29828,7 +35341,11 @@ "Classes": null, "Functions": null, "Id": -293179214, - "Name": "__getitem__" + "Name": "__getitem__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -29855,7 +35372,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return hash(self).", @@ -29876,7 +35397,11 @@ "Classes": null, "Functions": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Create a new memoryview object which references the given object.", @@ -29909,7 +35434,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -29930,7 +35459,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -29957,7 +35490,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return len(self).", @@ -29978,7 +35515,11 @@ "Classes": null, "Functions": null, "Id": -1628904226, - "Name": "__len__" + "Name": "__len__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self=value.", @@ -30632,7 +36325,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -30659,7 +36356,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -30686,7 +36387,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "slice(stop)\nslice(start, stop[, step])\n\nCreate a slice object. This is used for extended slicing (e.g. a[0:10:2]).", @@ -30725,7 +36430,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -30746,7 +36455,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -30773,7 +36486,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self (start, stop, stride)\n\nAssuming a sequence of length len, calculate the start and stop\nindices, and the stride length of the extended slice described by\nS. Out of bounds indices are clipped in a manner consistent with the\nhandling of normal slices.", @@ -30917,7 +36654,11 @@ "Classes": null, "Functions": null, "Id": -921644112, - "Name": "indices" + "Name": "indices", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [ @@ -30926,44 +36667,69 @@ "ReturnType": null, "Attributes": 0, "Id": 768228011, - "Name": "start" + "Name": "start", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": 24781667, - "Name": "step" + "Name": "step", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": 24781977, - "Name": "stop" + "Name": "stop", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Fields": [ { "Value": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": null }, { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 767996891, - "Name": "slice" + "Name": "slice", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "super() -> same as super(__class__, )\nsuper(type) -> unbound super object\nsuper(type, obj) -> bound super object; requires isinstance(obj, type)\nsuper(type, type2) -> bound super object; requires issubclass(type2, type)\nTypical use to call a cooperative superclass method:\nclass C(B):\n def meth(self, arg):\n super().meth(arg)\nThis works for class methods too:\nclass C(B):\n @classmethod\n def cmeth(cls, arg):\n super().cmeth(arg)\n", @@ -31002,7 +36768,11 @@ "Classes": null, "Functions": null, "Id": -1633516065, - "Name": "__get__" + "Name": "__get__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -31029,7 +36799,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "super() -> same as super(__class__, )\nsuper(type) -> unbound super object\nsuper(type, obj) -> bound super object; requires isinstance(obj, type)\nsuper(type, type2) -> bound super object; requires issubclass(type2, type)\nTypical use to call a cooperative superclass method:\nclass C(B):\n def meth(self, arg):\n super().meth(arg)\nThis works for class methods too:\nclass C(B):\n @classmethod\n def cmeth(cls, arg):\n super().cmeth(arg)\n", @@ -31062,7 +36836,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -31083,7 +36861,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return repr(self).", @@ -31104,7 +36886,11 @@ "Classes": null, "Functions": null, "Id": 1215429388, - "Name": "__repr__" + "Name": "__repr__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -31131,7 +36917,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [ @@ -31140,39 +36930,63 @@ "ReturnType": null, "Attributes": 0, "Id": 1243927843, - "Name": "__self__" + "Name": "__self__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": 2069653788, - "Name": "__self_class__" + "Name": "__self_class__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "", "ReturnType": null, "Attributes": 0, "Id": 185188451, - "Name": "__thisclass__" + "Name": "__thisclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Fields": [ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 768271812, - "Name": "super" + "Name": "super", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "zip(iter1 [,iter2 [...]]) --> zip object\n\nReturn a zip object whose .__next__() method returns a tuple where\nthe i-th element comes from the i-th iterable argument. The .__next__()\nmethod continues until the shortest iterable in the argument sequence\nis exhausted and then it raises StopIteration.", @@ -31205,7 +37019,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "zip(iter1 [,iter2 [...]]) --> zip object\n\nReturn a zip object whose .__next__() method returns a tuple where\nthe i-th element comes from the i-th iterable argument. The .__next__()\nmethod continues until the shortest iterable in the argument sequence\nis exhausted and then it raises StopIteration.", @@ -31238,7 +37056,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -31259,7 +37081,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -31280,7 +37106,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement next(self).", @@ -31301,7 +37131,11 @@ "Classes": null, "Functions": null, "Id": 1101153034, - "Name": "__next__" + "Name": "__next__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return state information for pickling.", @@ -31322,7 +37156,11 @@ "Classes": null, "Functions": null, "Id": -544113923, - "Name": "__reduce__" + "Name": "__reduce__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -31349,7 +37187,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -31357,18 +37199,30 @@ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 805802, - "Name": "zip" + "Name": "zip", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "type(object_or_name, bases, dict)\ntype(object) -> the object's type\ntype(name, bases, dict) -> a new type", @@ -31407,7 +37261,11 @@ "Classes": null, "Functions": null, "Id": 782173109, - "Name": "__call__" + "Name": "__call__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement delattr(self, name).", @@ -31434,7 +37292,11 @@ "Classes": null, "Functions": null, "Id": 2095540485, - "Name": "__delattr__" + "Name": "__delattr__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Specialized __dir__ implementation for types.", @@ -31455,7 +37317,11 @@ "Classes": null, "Functions": null, "Id": -1636169386, - "Name": "__dir__" + "Name": "__dir__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -31482,7 +37348,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "type(object_or_name, bases, dict)\ntype(object) -> the object's type\ntype(name, bases, dict) -> a new type", @@ -31521,7 +37391,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -31542,7 +37416,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Check if an object is an instance.", @@ -31569,7 +37447,11 @@ "Classes": null, "Functions": null, "Id": -1213275748, - "Name": "__instancecheck__" + "Name": "__instancecheck__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "__prepare__() -> dict\nused to create the namespace for the class statement", @@ -31608,7 +37490,11 @@ "Classes": null, "Functions": null, "Id": 1556881104, - "Name": "__prepare__" + "Name": "__prepare__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return repr(self).", @@ -31629,7 +37515,11 @@ "Classes": null, "Functions": null, "Id": 1215429388, - "Name": "__repr__" + "Name": "__repr__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement setattr(self, name, value).", @@ -31662,7 +37552,11 @@ "Classes": null, "Functions": null, "Id": -736377828, - "Name": "__setattr__" + "Name": "__setattr__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return memory consumption of the type object.", @@ -31683,7 +37577,11 @@ "Classes": null, "Functions": null, "Id": 1069167279, - "Name": "__sizeof__" + "Name": "__sizeof__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Check if a class is a subclass.", @@ -31710,7 +37608,11 @@ "Classes": null, "Functions": null, "Id": -25004647, - "Name": "__subclasscheck__" + "Name": "__subclasscheck__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return a list of immediate subclasses.", @@ -31731,7 +37633,11 @@ "Classes": null, "Functions": null, "Id": 1804067837, - "Name": "__subclasses__" + "Name": "__subclasses__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Abstract classes can override this to customize issubclass().\n\nThis is invoked early on by abc.ABCMeta.__subclasscheck__().\nIt should return True, False or NotImplemented. If it returns\nNotImplemented, the normal algorithm is used. Otherwise, it\noverrides the normal algorithm (and the outcome is cached).\n", @@ -31758,7 +37664,11 @@ "Classes": null, "Functions": null, "Id": -1374911630, - "Name": "__subclasshook__" + "Name": "__subclasshook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Properties": [], @@ -31766,65 +37676,22267 @@ { "Value": null, "Id": -1388753224, - "Name": "__basicsize__" + "Name": "__basicsize__", + "IndexSpan": null }, { "Value": "i:dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": null }, { "Value": null, "Id": -198224608, - "Name": "__dictoffset__" + "Name": "__dictoffset__", + "IndexSpan": null }, { "Value": null, "Id": 1444705936, - "Name": "__flags__" + "Name": "__flags__", + "IndexSpan": null }, { "Value": null, "Id": 919460331, - "Name": "__itemsize__" + "Name": "__itemsize__", + "IndexSpan": null }, { "Value": "i:tuple", "Id": -1627592461, - "Name": "__mro__" + "Name": "__mro__", + "IndexSpan": null }, { "Value": null, "Id": 1097116834, - "Name": "__name__" + "Name": "__name__", + "IndexSpan": null }, { "Value": null, "Id": -1879833807, - "Name": "__qualname__" + "Name": "__qualname__", + "IndexSpan": null }, { "Value": null, "Id": 174109373, - "Name": "__text_signature__" + "Name": "__text_signature__", + "IndexSpan": null }, { "Value": null, "Id": 1521523639, - "Name": "__weakrefoffset__" + "Name": "__weakrefoffset__", + "IndexSpan": null }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 24816593, - "Name": "type" + "Name": "type", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], + "NewLines": [ + { + "EndIndex": 35, + "Kind": 3 + }, + { + "EndIndex": 71, + "Kind": 3 + }, + { + "EndIndex": 113, + "Kind": 3 + }, + { + "EndIndex": 127, + "Kind": 3 + }, + { + "EndIndex": 133, + "Kind": 3 + }, + { + "EndIndex": 151, + "Kind": 3 + }, + { + "EndIndex": 184, + "Kind": 3 + }, + { + "EndIndex": 335, + "Kind": 3 + }, + { + "EndIndex": 356, + "Kind": 3 + }, + { + "EndIndex": 362, + "Kind": 3 + }, + { + "EndIndex": 389, + "Kind": 3 + }, + { + "EndIndex": 419, + "Kind": 3 + }, + { + "EndIndex": 425, + "Kind": 3 + }, + { + "EndIndex": 450, + "Kind": 3 + }, + { + "EndIndex": 480, + "Kind": 3 + }, + { + "EndIndex": 499, + "Kind": 3 + }, + { + "EndIndex": 505, + "Kind": 3 + }, + { + "EndIndex": 523, + "Kind": 3 + }, + { + "EndIndex": 565, + "Kind": 3 + }, + { + "EndIndex": 891, + "Kind": 3 + }, + { + "EndIndex": 913, + "Kind": 3 + }, + { + "EndIndex": 919, + "Kind": 3 + }, + { + "EndIndex": 921, + "Kind": 3 + }, + { + "EndIndex": 941, + "Kind": 3 + }, + { + "EndIndex": 958, + "Kind": 3 + }, + { + "EndIndex": 986, + "Kind": 3 + }, + { + "EndIndex": 988, + "Kind": 3 + }, + { + "EndIndex": 1009, + "Kind": 3 + }, + { + "EndIndex": 1044, + "Kind": 3 + }, + { + "EndIndex": 1046, + "Kind": 3 + }, + { + "EndIndex": 1061, + "Kind": 3 + }, + { + "EndIndex": 1087, + "Kind": 3 + }, + { + "EndIndex": 1111, + "Kind": 3 + }, + { + "EndIndex": 1145, + "Kind": 3 + }, + { + "EndIndex": 1187, + "Kind": 3 + }, + { + "EndIndex": 1208, + "Kind": 3 + }, + { + "EndIndex": 1214, + "Kind": 3 + }, + { + "EndIndex": 1238, + "Kind": 3 + }, + { + "EndIndex": 1279, + "Kind": 3 + }, + { + "EndIndex": 1300, + "Kind": 3 + }, + { + "EndIndex": 1306, + "Kind": 3 + }, + { + "EndIndex": 1336, + "Kind": 3 + }, + { + "EndIndex": 1367, + "Kind": 3 + }, + { + "EndIndex": 1389, + "Kind": 3 + }, + { + "EndIndex": 1395, + "Kind": 3 + }, + { + "EndIndex": 1435, + "Kind": 3 + }, + { + "EndIndex": 1472, + "Kind": 3 + }, + { + "EndIndex": 1491, + "Kind": 3 + }, + { + "EndIndex": 1497, + "Kind": 3 + }, + { + "EndIndex": 1527, + "Kind": 3 + }, + { + "EndIndex": 1558, + "Kind": 3 + }, + { + "EndIndex": 1580, + "Kind": 3 + }, + { + "EndIndex": 1586, + "Kind": 3 + }, + { + "EndIndex": 1625, + "Kind": 3 + }, + { + "EndIndex": 1664, + "Kind": 3 + }, + { + "EndIndex": 1678, + "Kind": 3 + }, + { + "EndIndex": 1684, + "Kind": 3 + }, + { + "EndIndex": 1714, + "Kind": 3 + }, + { + "EndIndex": 1744, + "Kind": 3 + }, + { + "EndIndex": 1766, + "Kind": 3 + }, + { + "EndIndex": 1772, + "Kind": 3 + }, + { + "EndIndex": 1797, + "Kind": 3 + }, + { + "EndIndex": 1827, + "Kind": 3 + }, + { + "EndIndex": 1845, + "Kind": 3 + }, + { + "EndIndex": 1851, + "Kind": 3 + }, + { + "EndIndex": 1893, + "Kind": 3 + }, + { + "EndIndex": 1923, + "Kind": 3 + }, + { + "EndIndex": 1937, + "Kind": 3 + }, + { + "EndIndex": 1943, + "Kind": 3 + }, + { + "EndIndex": 1961, + "Kind": 3 + }, + { + "EndIndex": 1994, + "Kind": 3 + }, + { + "EndIndex": 2145, + "Kind": 3 + }, + { + "EndIndex": 2166, + "Kind": 3 + }, + { + "EndIndex": 2172, + "Kind": 3 + }, + { + "EndIndex": 2202, + "Kind": 3 + }, + { + "EndIndex": 2233, + "Kind": 3 + }, + { + "EndIndex": 2255, + "Kind": 3 + }, + { + "EndIndex": 2261, + "Kind": 3 + }, + { + "EndIndex": 2291, + "Kind": 3 + }, + { + "EndIndex": 2321, + "Kind": 3 + }, + { + "EndIndex": 2343, + "Kind": 3 + }, + { + "EndIndex": 2349, + "Kind": 3 + }, + { + "EndIndex": 2379, + "Kind": 3 + }, + { + "EndIndex": 2410, + "Kind": 3 + }, + { + "EndIndex": 2432, + "Kind": 3 + }, + { + "EndIndex": 2438, + "Kind": 3 + }, + { + "EndIndex": 2465, + "Kind": 3 + }, + { + "EndIndex": 2495, + "Kind": 3 + }, + { + "EndIndex": 2525, + "Kind": 3 + }, + { + "EndIndex": 2531, + "Kind": 3 + }, + { + "EndIndex": 2571, + "Kind": 3 + }, + { + "EndIndex": 2601, + "Kind": 3 + }, + { + "EndIndex": 2631, + "Kind": 3 + }, + { + "EndIndex": 2637, + "Kind": 3 + }, + { + "EndIndex": 2662, + "Kind": 3 + }, + { + "EndIndex": 2692, + "Kind": 3 + }, + { + "EndIndex": 2711, + "Kind": 3 + }, + { + "EndIndex": 2717, + "Kind": 3 + }, + { + "EndIndex": 2758, + "Kind": 3 + }, + { + "EndIndex": 2807, + "Kind": 3 + }, + { + "EndIndex": 2828, + "Kind": 3 + }, + { + "EndIndex": 2834, + "Kind": 3 + }, + { + "EndIndex": 2861, + "Kind": 3 + }, + { + "EndIndex": 2908, + "Kind": 3 + }, + { + "EndIndex": 2926, + "Kind": 3 + }, + { + "EndIndex": 2932, + "Kind": 3 + }, + { + "EndIndex": 2956, + "Kind": 3 + }, + { + "EndIndex": 2985, + "Kind": 3 + }, + { + "EndIndex": 3004, + "Kind": 3 + }, + { + "EndIndex": 3010, + "Kind": 3 + }, + { + "EndIndex": 3028, + "Kind": 3 + }, + { + "EndIndex": 3070, + "Kind": 3 + }, + { + "EndIndex": 3396, + "Kind": 3 + }, + { + "EndIndex": 3418, + "Kind": 3 + }, + { + "EndIndex": 3424, + "Kind": 3 + }, + { + "EndIndex": 3426, + "Kind": 3 + }, + { + "EndIndex": 3447, + "Kind": 3 + }, + { + "EndIndex": 3468, + "Kind": 3 + }, + { + "EndIndex": 3583, + "Kind": 3 + }, + { + "EndIndex": 3608, + "Kind": 3 + }, + { + "EndIndex": 3628, + "Kind": 3 + }, + { + "EndIndex": 3653, + "Kind": 3 + }, + { + "EndIndex": 3695, + "Kind": 3 + }, + { + "EndIndex": 3731, + "Kind": 3 + }, + { + "EndIndex": 3753, + "Kind": 3 + }, + { + "EndIndex": 3759, + "Kind": 3 + }, + { + "EndIndex": 3781, + "Kind": 3 + }, + { + "EndIndex": 3815, + "Kind": 3 + }, + { + "EndIndex": 3857, + "Kind": 3 + }, + { + "EndIndex": 3878, + "Kind": 3 + }, + { + "EndIndex": 3884, + "Kind": 3 + }, + { + "EndIndex": 3903, + "Kind": 3 + }, + { + "EndIndex": 3929, + "Kind": 3 + }, + { + "EndIndex": 3953, + "Kind": 3 + }, + { + "EndIndex": 4010, + "Kind": 3 + }, + { + "EndIndex": 4031, + "Kind": 3 + }, + { + "EndIndex": 4037, + "Kind": 3 + }, + { + "EndIndex": 4066, + "Kind": 3 + }, + { + "EndIndex": 4105, + "Kind": 3 + }, + { + "EndIndex": 4144, + "Kind": 3 + }, + { + "EndIndex": 4158, + "Kind": 3 + }, + { + "EndIndex": 4164, + "Kind": 3 + }, + { + "EndIndex": 4218, + "Kind": 3 + }, + { + "EndIndex": 4337, + "Kind": 3 + }, + { + "EndIndex": 4351, + "Kind": 3 + }, + { + "EndIndex": 4357, + "Kind": 3 + }, + { + "EndIndex": 4375, + "Kind": 3 + }, + { + "EndIndex": 4408, + "Kind": 3 + }, + { + "EndIndex": 4559, + "Kind": 3 + }, + { + "EndIndex": 4580, + "Kind": 3 + }, + { + "EndIndex": 4586, + "Kind": 3 + }, + { + "EndIndex": 4630, + "Kind": 3 + }, + { + "EndIndex": 4676, + "Kind": 3 + }, + { + "EndIndex": 4698, + "Kind": 3 + }, + { + "EndIndex": 4704, + "Kind": 3 + }, + { + "EndIndex": 4727, + "Kind": 3 + }, + { + "EndIndex": 4745, + "Kind": 3 + }, + { + "EndIndex": 4768, + "Kind": 3 + }, + { + "EndIndex": 4786, + "Kind": 3 + }, + { + "EndIndex": 4834, + "Kind": 3 + }, + { + "EndIndex": 4921, + "Kind": 3 + }, + { + "EndIndex": 4942, + "Kind": 3 + }, + { + "EndIndex": 4948, + "Kind": 3 + }, + { + "EndIndex": 4975, + "Kind": 3 + }, + { + "EndIndex": 5000, + "Kind": 3 + }, + { + "EndIndex": 5030, + "Kind": 3 + }, + { + "EndIndex": 5049, + "Kind": 3 + }, + { + "EndIndex": 5055, + "Kind": 3 + }, + { + "EndIndex": 5096, + "Kind": 3 + }, + { + "EndIndex": 5145, + "Kind": 3 + }, + { + "EndIndex": 5166, + "Kind": 3 + }, + { + "EndIndex": 5172, + "Kind": 3 + }, + { + "EndIndex": 5199, + "Kind": 3 + }, + { + "EndIndex": 5256, + "Kind": 3 + }, + { + "EndIndex": 5274, + "Kind": 3 + }, + { + "EndIndex": 5280, + "Kind": 3 + }, + { + "EndIndex": 5324, + "Kind": 3 + }, + { + "EndIndex": 5367, + "Kind": 3 + }, + { + "EndIndex": 5389, + "Kind": 3 + }, + { + "EndIndex": 5395, + "Kind": 3 + }, + { + "EndIndex": 5426, + "Kind": 3 + }, + { + "EndIndex": 5476, + "Kind": 3 + }, + { + "EndIndex": 5499, + "Kind": 3 + }, + { + "EndIndex": 5505, + "Kind": 3 + }, + { + "EndIndex": 5523, + "Kind": 3 + }, + { + "EndIndex": 5565, + "Kind": 3 + }, + { + "EndIndex": 5891, + "Kind": 3 + }, + { + "EndIndex": 5913, + "Kind": 3 + }, + { + "EndIndex": 5919, + "Kind": 3 + }, + { + "EndIndex": 5950, + "Kind": 3 + }, + { + "EndIndex": 5979, + "Kind": 3 + }, + { + "EndIndex": 5999, + "Kind": 3 + }, + { + "EndIndex": 6051, + "Kind": 3 + }, + { + "EndIndex": 6080, + "Kind": 3 + }, + { + "EndIndex": 6086, + "Kind": 3 + }, + { + "EndIndex": 6088, + "Kind": 3 + }, + { + "EndIndex": 6105, + "Kind": 3 + }, + { + "EndIndex": 6125, + "Kind": 3 + }, + { + "EndIndex": 6751, + "Kind": 3 + }, + { + "EndIndex": 6775, + "Kind": 3 + }, + { + "EndIndex": 6796, + "Kind": 3 + }, + { + "EndIndex": 6818, + "Kind": 3 + }, + { + "EndIndex": 6824, + "Kind": 3 + }, + { + "EndIndex": 6855, + "Kind": 3 + }, + { + "EndIndex": 6885, + "Kind": 3 + }, + { + "EndIndex": 6907, + "Kind": 3 + }, + { + "EndIndex": 6913, + "Kind": 3 + }, + { + "EndIndex": 6944, + "Kind": 3 + }, + { + "EndIndex": 6974, + "Kind": 3 + }, + { + "EndIndex": 6996, + "Kind": 3 + }, + { + "EndIndex": 7002, + "Kind": 3 + }, + { + "EndIndex": 7027, + "Kind": 3 + }, + { + "EndIndex": 7048, + "Kind": 3 + }, + { + "EndIndex": 7070, + "Kind": 3 + }, + { + "EndIndex": 7076, + "Kind": 3 + }, + { + "EndIndex": 7101, + "Kind": 3 + }, + { + "EndIndex": 7151, + "Kind": 3 + }, + { + "EndIndex": 7173, + "Kind": 3 + }, + { + "EndIndex": 7179, + "Kind": 3 + }, + { + "EndIndex": 7200, + "Kind": 3 + }, + { + "EndIndex": 7234, + "Kind": 3 + }, + { + "EndIndex": 7273, + "Kind": 3 + }, + { + "EndIndex": 7296, + "Kind": 3 + }, + { + "EndIndex": 7302, + "Kind": 3 + }, + { + "EndIndex": 7332, + "Kind": 3 + }, + { + "EndIndex": 7363, + "Kind": 3 + }, + { + "EndIndex": 7385, + "Kind": 3 + }, + { + "EndIndex": 7391, + "Kind": 3 + }, + { + "EndIndex": 7417, + "Kind": 3 + }, + { + "EndIndex": 7440, + "Kind": 3 + }, + { + "EndIndex": 7460, + "Kind": 3 + }, + { + "EndIndex": 7466, + "Kind": 3 + }, + { + "EndIndex": 7492, + "Kind": 3 + }, + { + "EndIndex": 7540, + "Kind": 3 + }, + { + "EndIndex": 7562, + "Kind": 3 + }, + { + "EndIndex": 7568, + "Kind": 3 + }, + { + "EndIndex": 7604, + "Kind": 3 + }, + { + "EndIndex": 7635, + "Kind": 3 + }, + { + "EndIndex": 7653, + "Kind": 3 + }, + { + "EndIndex": 7659, + "Kind": 3 + }, + { + "EndIndex": 7699, + "Kind": 3 + }, + { + "EndIndex": 7718, + "Kind": 3 + }, + { + "EndIndex": 7724, + "Kind": 3 + }, + { + "EndIndex": 7754, + "Kind": 3 + }, + { + "EndIndex": 7785, + "Kind": 3 + }, + { + "EndIndex": 7807, + "Kind": 3 + }, + { + "EndIndex": 7813, + "Kind": 3 + }, + { + "EndIndex": 7852, + "Kind": 3 + }, + { + "EndIndex": 7891, + "Kind": 3 + }, + { + "EndIndex": 7905, + "Kind": 3 + }, + { + "EndIndex": 7911, + "Kind": 3 + }, + { + "EndIndex": 7942, + "Kind": 3 + }, + { + "EndIndex": 7961, + "Kind": 3 + }, + { + "EndIndex": 7967, + "Kind": 3 + }, + { + "EndIndex": 7997, + "Kind": 3 + }, + { + "EndIndex": 8027, + "Kind": 3 + }, + { + "EndIndex": 8049, + "Kind": 3 + }, + { + "EndIndex": 8055, + "Kind": 3 + }, + { + "EndIndex": 8080, + "Kind": 3 + }, + { + "EndIndex": 8110, + "Kind": 3 + }, + { + "EndIndex": 8128, + "Kind": 3 + }, + { + "EndIndex": 8134, + "Kind": 3 + }, + { + "EndIndex": 8160, + "Kind": 3 + }, + { + "EndIndex": 8261, + "Kind": 3 + }, + { + "EndIndex": 8279, + "Kind": 3 + }, + { + "EndIndex": 8285, + "Kind": 3 + }, + { + "EndIndex": 8322, + "Kind": 3 + }, + { + "EndIndex": 8952, + "Kind": 3 + }, + { + "EndIndex": 8966, + "Kind": 3 + }, + { + "EndIndex": 8972, + "Kind": 3 + }, + { + "EndIndex": 8990, + "Kind": 3 + }, + { + "EndIndex": 9023, + "Kind": 3 + }, + { + "EndIndex": 9174, + "Kind": 3 + }, + { + "EndIndex": 9195, + "Kind": 3 + }, + { + "EndIndex": 9201, + "Kind": 3 + }, + { + "EndIndex": 9225, + "Kind": 3 + }, + { + "EndIndex": 9246, + "Kind": 3 + }, + { + "EndIndex": 9264, + "Kind": 3 + }, + { + "EndIndex": 9270, + "Kind": 3 + }, + { + "EndIndex": 9297, + "Kind": 3 + }, + { + "EndIndex": 9314, + "Kind": 3 + }, + { + "EndIndex": 9336, + "Kind": 3 + }, + { + "EndIndex": 9342, + "Kind": 3 + }, + { + "EndIndex": 9372, + "Kind": 3 + }, + { + "EndIndex": 9403, + "Kind": 3 + }, + { + "EndIndex": 9425, + "Kind": 3 + }, + { + "EndIndex": 9431, + "Kind": 3 + }, + { + "EndIndex": 9465, + "Kind": 3 + }, + { + "EndIndex": 9496, + "Kind": 3 + }, + { + "EndIndex": 9518, + "Kind": 3 + }, + { + "EndIndex": 9524, + "Kind": 3 + }, + { + "EndIndex": 9554, + "Kind": 3 + }, + { + "EndIndex": 9584, + "Kind": 3 + }, + { + "EndIndex": 9606, + "Kind": 3 + }, + { + "EndIndex": 9612, + "Kind": 3 + }, + { + "EndIndex": 9643, + "Kind": 3 + }, + { + "EndIndex": 9673, + "Kind": 3 + }, + { + "EndIndex": 9695, + "Kind": 3 + }, + { + "EndIndex": 9701, + "Kind": 3 + }, + { + "EndIndex": 9732, + "Kind": 3 + }, + { + "EndIndex": 9762, + "Kind": 3 + }, + { + "EndIndex": 9784, + "Kind": 3 + }, + { + "EndIndex": 9790, + "Kind": 3 + }, + { + "EndIndex": 9820, + "Kind": 3 + }, + { + "EndIndex": 9851, + "Kind": 3 + }, + { + "EndIndex": 9873, + "Kind": 3 + }, + { + "EndIndex": 9879, + "Kind": 3 + }, + { + "EndIndex": 9903, + "Kind": 3 + }, + { + "EndIndex": 9920, + "Kind": 3 + }, + { + "EndIndex": 9942, + "Kind": 3 + }, + { + "EndIndex": 9948, + "Kind": 3 + }, + { + "EndIndex": 9978, + "Kind": 3 + }, + { + "EndIndex": 10008, + "Kind": 3 + }, + { + "EndIndex": 10030, + "Kind": 3 + }, + { + "EndIndex": 10036, + "Kind": 3 + }, + { + "EndIndex": 10060, + "Kind": 3 + }, + { + "EndIndex": 10077, + "Kind": 3 + }, + { + "EndIndex": 10099, + "Kind": 3 + }, + { + "EndIndex": 10105, + "Kind": 3 + }, + { + "EndIndex": 10141, + "Kind": 3 + }, + { + "EndIndex": 10182, + "Kind": 3 + }, + { + "EndIndex": 10204, + "Kind": 3 + }, + { + "EndIndex": 10210, + "Kind": 3 + }, + { + "EndIndex": 10242, + "Kind": 3 + }, + { + "EndIndex": 10272, + "Kind": 3 + }, + { + "EndIndex": 10294, + "Kind": 3 + }, + { + "EndIndex": 10300, + "Kind": 3 + }, + { + "EndIndex": 10332, + "Kind": 3 + }, + { + "EndIndex": 10362, + "Kind": 3 + }, + { + "EndIndex": 10384, + "Kind": 3 + }, + { + "EndIndex": 10390, + "Kind": 3 + }, + { + "EndIndex": 10425, + "Kind": 3 + }, + { + "EndIndex": 10464, + "Kind": 3 + }, + { + "EndIndex": 10487, + "Kind": 3 + }, + { + "EndIndex": 10493, + "Kind": 3 + }, + { + "EndIndex": 10518, + "Kind": 3 + }, + { + "EndIndex": 10548, + "Kind": 3 + }, + { + "EndIndex": 10567, + "Kind": 3 + }, + { + "EndIndex": 10573, + "Kind": 3 + }, + { + "EndIndex": 10610, + "Kind": 3 + }, + { + "EndIndex": 10641, + "Kind": 3 + }, + { + "EndIndex": 10663, + "Kind": 3 + }, + { + "EndIndex": 10669, + "Kind": 3 + }, + { + "EndIndex": 10704, + "Kind": 3 + }, + { + "EndIndex": 10735, + "Kind": 3 + }, + { + "EndIndex": 10757, + "Kind": 3 + }, + { + "EndIndex": 10763, + "Kind": 3 + }, + { + "EndIndex": 10795, + "Kind": 3 + }, + { + "EndIndex": 10825, + "Kind": 3 + }, + { + "EndIndex": 10847, + "Kind": 3 + }, + { + "EndIndex": 10853, + "Kind": 3 + }, + { + "EndIndex": 10885, + "Kind": 3 + }, + { + "EndIndex": 10915, + "Kind": 3 + }, + { + "EndIndex": 10937, + "Kind": 3 + }, + { + "EndIndex": 10943, + "Kind": 3 + }, + { + "EndIndex": 10974, + "Kind": 3 + }, + { + "EndIndex": 11004, + "Kind": 3 + }, + { + "EndIndex": 11026, + "Kind": 3 + }, + { + "EndIndex": 11032, + "Kind": 3 + }, + { + "EndIndex": 11069, + "Kind": 3 + }, + { + "EndIndex": 11177, + "Kind": 3 + }, + { + "EndIndex": 11199, + "Kind": 3 + }, + { + "EndIndex": 11205, + "Kind": 3 + }, + { + "EndIndex": 11242, + "Kind": 3 + }, + { + "EndIndex": 11283, + "Kind": 3 + }, + { + "EndIndex": 11305, + "Kind": 3 + }, + { + "EndIndex": 11311, + "Kind": 3 + }, + { + "EndIndex": 11346, + "Kind": 3 + }, + { + "EndIndex": 11377, + "Kind": 3 + }, + { + "EndIndex": 11399, + "Kind": 3 + }, + { + "EndIndex": 11405, + "Kind": 3 + }, + { + "EndIndex": 11439, + "Kind": 3 + }, + { + "EndIndex": 11470, + "Kind": 3 + }, + { + "EndIndex": 11492, + "Kind": 3 + }, + { + "EndIndex": 11498, + "Kind": 3 + }, + { + "EndIndex": 11530, + "Kind": 3 + }, + { + "EndIndex": 11560, + "Kind": 3 + }, + { + "EndIndex": 11582, + "Kind": 3 + }, + { + "EndIndex": 11588, + "Kind": 3 + }, + { + "EndIndex": 11624, + "Kind": 3 + }, + { + "EndIndex": 11654, + "Kind": 3 + }, + { + "EndIndex": 11676, + "Kind": 3 + }, + { + "EndIndex": 11682, + "Kind": 3 + }, + { + "EndIndex": 11714, + "Kind": 3 + }, + { + "EndIndex": 11744, + "Kind": 3 + }, + { + "EndIndex": 11766, + "Kind": 3 + }, + { + "EndIndex": 11772, + "Kind": 3 + }, + { + "EndIndex": 11799, + "Kind": 3 + }, + { + "EndIndex": 11844, + "Kind": 3 + }, + { + "EndIndex": 11862, + "Kind": 3 + }, + { + "EndIndex": 11868, + "Kind": 3 + }, + { + "EndIndex": 11892, + "Kind": 3 + }, + { + "EndIndex": 11921, + "Kind": 3 + }, + { + "EndIndex": 11940, + "Kind": 3 + }, + { + "EndIndex": 11946, + "Kind": 3 + }, + { + "EndIndex": 11977, + "Kind": 3 + }, + { + "EndIndex": 12007, + "Kind": 3 + }, + { + "EndIndex": 12029, + "Kind": 3 + }, + { + "EndIndex": 12035, + "Kind": 3 + }, + { + "EndIndex": 12053, + "Kind": 3 + }, + { + "EndIndex": 12095, + "Kind": 3 + }, + { + "EndIndex": 12421, + "Kind": 3 + }, + { + "EndIndex": 12443, + "Kind": 3 + }, + { + "EndIndex": 12449, + "Kind": 3 + }, + { + "EndIndex": 12484, + "Kind": 3 + }, + { + "EndIndex": 12514, + "Kind": 3 + }, + { + "EndIndex": 12542, + "Kind": 3 + }, + { + "EndIndex": 12548, + "Kind": 3 + }, + { + "EndIndex": 12574, + "Kind": 3 + }, + { + "EndIndex": 12624, + "Kind": 3 + }, + { + "EndIndex": 12646, + "Kind": 3 + }, + { + "EndIndex": 12652, + "Kind": 3 + }, + { + "EndIndex": 12683, + "Kind": 3 + }, + { + "EndIndex": 12713, + "Kind": 3 + }, + { + "EndIndex": 12735, + "Kind": 3 + }, + { + "EndIndex": 12741, + "Kind": 3 + }, + { + "EndIndex": 12768, + "Kind": 3 + }, + { + "EndIndex": 12886, + "Kind": 3 + }, + { + "EndIndex": 12904, + "Kind": 3 + }, + { + "EndIndex": 12910, + "Kind": 3 + }, + { + "EndIndex": 12936, + "Kind": 3 + }, + { + "EndIndex": 12995, + "Kind": 3 + }, + { + "EndIndex": 13025, + "Kind": 3 + }, + { + "EndIndex": 13031, + "Kind": 3 + }, + { + "EndIndex": 13046, + "Kind": 3 + }, + { + "EndIndex": 13074, + "Kind": 3 + }, + { + "EndIndex": 13138, + "Kind": 3 + }, + { + "EndIndex": 13152, + "Kind": 3 + }, + { + "EndIndex": 13158, + "Kind": 3 + }, + { + "EndIndex": 13176, + "Kind": 3 + }, + { + "EndIndex": 13226, + "Kind": 3 + }, + { + "EndIndex": 13990, + "Kind": 3 + }, + { + "EndIndex": 14008, + "Kind": 3 + }, + { + "EndIndex": 14014, + "Kind": 3 + }, + { + "EndIndex": 14029, + "Kind": 3 + }, + { + "EndIndex": 14050, + "Kind": 3 + }, + { + "EndIndex": 14100, + "Kind": 3 + }, + { + "EndIndex": 14114, + "Kind": 3 + }, + { + "EndIndex": 14120, + "Kind": 3 + }, + { + "EndIndex": 14135, + "Kind": 3 + }, + { + "EndIndex": 14161, + "Kind": 3 + }, + { + "EndIndex": 14223, + "Kind": 3 + }, + { + "EndIndex": 14237, + "Kind": 3 + }, + { + "EndIndex": 14243, + "Kind": 3 + }, + { + "EndIndex": 14258, + "Kind": 3 + }, + { + "EndIndex": 14279, + "Kind": 3 + }, + { + "EndIndex": 14324, + "Kind": 3 + }, + { + "EndIndex": 14338, + "Kind": 3 + }, + { + "EndIndex": 14344, + "Kind": 3 + }, + { + "EndIndex": 14388, + "Kind": 3 + }, + { + "EndIndex": 15131, + "Kind": 3 + }, + { + "EndIndex": 15151, + "Kind": 3 + }, + { + "EndIndex": 15157, + "Kind": 3 + }, + { + "EndIndex": 15159, + "Kind": 3 + }, + { + "EndIndex": 15174, + "Kind": 3 + }, + { + "EndIndex": 15192, + "Kind": 3 + }, + { + "EndIndex": 15426, + "Kind": 3 + }, + { + "EndIndex": 15457, + "Kind": 3 + }, + { + "EndIndex": 15487, + "Kind": 3 + }, + { + "EndIndex": 15510, + "Kind": 3 + }, + { + "EndIndex": 15516, + "Kind": 3 + }, + { + "EndIndex": 15538, + "Kind": 3 + }, + { + "EndIndex": 15566, + "Kind": 3 + }, + { + "EndIndex": 15804, + "Kind": 3 + }, + { + "EndIndex": 15818, + "Kind": 3 + }, + { + "EndIndex": 15824, + "Kind": 3 + }, + { + "EndIndex": 15842, + "Kind": 3 + }, + { + "EndIndex": 15875, + "Kind": 3 + }, + { + "EndIndex": 16026, + "Kind": 3 + }, + { + "EndIndex": 16047, + "Kind": 3 + }, + { + "EndIndex": 16053, + "Kind": 3 + }, + { + "EndIndex": 16083, + "Kind": 3 + }, + { + "EndIndex": 16113, + "Kind": 3 + }, + { + "EndIndex": 16136, + "Kind": 3 + }, + { + "EndIndex": 16142, + "Kind": 3 + }, + { + "EndIndex": 16174, + "Kind": 3 + }, + { + "EndIndex": 16204, + "Kind": 3 + }, + { + "EndIndex": 16227, + "Kind": 3 + }, + { + "EndIndex": 16233, + "Kind": 3 + }, + { + "EndIndex": 16258, + "Kind": 3 + }, + { + "EndIndex": 16288, + "Kind": 3 + }, + { + "EndIndex": 16307, + "Kind": 3 + }, + { + "EndIndex": 16313, + "Kind": 3 + }, + { + "EndIndex": 16344, + "Kind": 3 + }, + { + "EndIndex": 16374, + "Kind": 3 + }, + { + "EndIndex": 16397, + "Kind": 3 + }, + { + "EndIndex": 16403, + "Kind": 3 + }, + { + "EndIndex": 16435, + "Kind": 3 + }, + { + "EndIndex": 16465, + "Kind": 3 + }, + { + "EndIndex": 16488, + "Kind": 3 + }, + { + "EndIndex": 16494, + "Kind": 3 + }, + { + "EndIndex": 16518, + "Kind": 3 + }, + { + "EndIndex": 16547, + "Kind": 3 + }, + { + "EndIndex": 16566, + "Kind": 3 + }, + { + "EndIndex": 16572, + "Kind": 3 + }, + { + "EndIndex": 16590, + "Kind": 3 + }, + { + "EndIndex": 16632, + "Kind": 3 + }, + { + "EndIndex": 16958, + "Kind": 3 + }, + { + "EndIndex": 16980, + "Kind": 3 + }, + { + "EndIndex": 16986, + "Kind": 3 + }, + { + "EndIndex": 17017, + "Kind": 3 + }, + { + "EndIndex": 17047, + "Kind": 3 + }, + { + "EndIndex": 17070, + "Kind": 3 + }, + { + "EndIndex": 17076, + "Kind": 3 + }, + { + "EndIndex": 17094, + "Kind": 3 + }, + { + "EndIndex": 17144, + "Kind": 3 + }, + { + "EndIndex": 17908, + "Kind": 3 + }, + { + "EndIndex": 17930, + "Kind": 3 + }, + { + "EndIndex": 17936, + "Kind": 3 + }, + { + "EndIndex": 17938, + "Kind": 3 + }, + { + "EndIndex": 17955, + "Kind": 3 + }, + { + "EndIndex": 17975, + "Kind": 3 + }, + { + "EndIndex": 17997, + "Kind": 3 + }, + { + "EndIndex": 18072, + "Kind": 3 + }, + { + "EndIndex": 18096, + "Kind": 3 + }, + { + "EndIndex": 18117, + "Kind": 3 + }, + { + "EndIndex": 18141, + "Kind": 3 + }, + { + "EndIndex": 18147, + "Kind": 3 + }, + { + "EndIndex": 18178, + "Kind": 3 + }, + { + "EndIndex": 18208, + "Kind": 3 + }, + { + "EndIndex": 18232, + "Kind": 3 + }, + { + "EndIndex": 18238, + "Kind": 3 + }, + { + "EndIndex": 18263, + "Kind": 3 + }, + { + "EndIndex": 18284, + "Kind": 3 + }, + { + "EndIndex": 18306, + "Kind": 3 + }, + { + "EndIndex": 18312, + "Kind": 3 + }, + { + "EndIndex": 18335, + "Kind": 3 + }, + { + "EndIndex": 18369, + "Kind": 3 + }, + { + "EndIndex": 18408, + "Kind": 3 + }, + { + "EndIndex": 18431, + "Kind": 3 + }, + { + "EndIndex": 18437, + "Kind": 3 + }, + { + "EndIndex": 18467, + "Kind": 3 + }, + { + "EndIndex": 18498, + "Kind": 3 + }, + { + "EndIndex": 18520, + "Kind": 3 + }, + { + "EndIndex": 18526, + "Kind": 3 + }, + { + "EndIndex": 18552, + "Kind": 3 + }, + { + "EndIndex": 18575, + "Kind": 3 + }, + { + "EndIndex": 18595, + "Kind": 3 + }, + { + "EndIndex": 18601, + "Kind": 3 + }, + { + "EndIndex": 18637, + "Kind": 3 + }, + { + "EndIndex": 18668, + "Kind": 3 + }, + { + "EndIndex": 18686, + "Kind": 3 + }, + { + "EndIndex": 18692, + "Kind": 3 + }, + { + "EndIndex": 18732, + "Kind": 3 + }, + { + "EndIndex": 18787, + "Kind": 3 + }, + { + "EndIndex": 18806, + "Kind": 3 + }, + { + "EndIndex": 18812, + "Kind": 3 + }, + { + "EndIndex": 18842, + "Kind": 3 + }, + { + "EndIndex": 18873, + "Kind": 3 + }, + { + "EndIndex": 18895, + "Kind": 3 + }, + { + "EndIndex": 18901, + "Kind": 3 + }, + { + "EndIndex": 18940, + "Kind": 3 + }, + { + "EndIndex": 18979, + "Kind": 3 + }, + { + "EndIndex": 18993, + "Kind": 3 + }, + { + "EndIndex": 18999, + "Kind": 3 + }, + { + "EndIndex": 19017, + "Kind": 3 + }, + { + "EndIndex": 19061, + "Kind": 3 + }, + { + "EndIndex": 19404, + "Kind": 3 + }, + { + "EndIndex": 19423, + "Kind": 3 + }, + { + "EndIndex": 19429, + "Kind": 3 + }, + { + "EndIndex": 19460, + "Kind": 3 + }, + { + "EndIndex": 19479, + "Kind": 3 + }, + { + "EndIndex": 19485, + "Kind": 3 + }, + { + "EndIndex": 19515, + "Kind": 3 + }, + { + "EndIndex": 19545, + "Kind": 3 + }, + { + "EndIndex": 19567, + "Kind": 3 + }, + { + "EndIndex": 19573, + "Kind": 3 + }, + { + "EndIndex": 19598, + "Kind": 3 + }, + { + "EndIndex": 19628, + "Kind": 3 + }, + { + "EndIndex": 19646, + "Kind": 3 + }, + { + "EndIndex": 19652, + "Kind": 3 + }, + { + "EndIndex": 19694, + "Kind": 3 + }, + { + "EndIndex": 19773, + "Kind": 3 + }, + { + "EndIndex": 19787, + "Kind": 3 + }, + { + "EndIndex": 19793, + "Kind": 3 + }, + { + "EndIndex": 19811, + "Kind": 3 + }, + { + "EndIndex": 19844, + "Kind": 3 + }, + { + "EndIndex": 19995, + "Kind": 3 + }, + { + "EndIndex": 20016, + "Kind": 3 + }, + { + "EndIndex": 20022, + "Kind": 3 + }, + { + "EndIndex": 20046, + "Kind": 3 + }, + { + "EndIndex": 20067, + "Kind": 3 + }, + { + "EndIndex": 20085, + "Kind": 3 + }, + { + "EndIndex": 20091, + "Kind": 3 + }, + { + "EndIndex": 20121, + "Kind": 3 + }, + { + "EndIndex": 20152, + "Kind": 3 + }, + { + "EndIndex": 20174, + "Kind": 3 + }, + { + "EndIndex": 20180, + "Kind": 3 + }, + { + "EndIndex": 20210, + "Kind": 3 + }, + { + "EndIndex": 20240, + "Kind": 3 + }, + { + "EndIndex": 20262, + "Kind": 3 + }, + { + "EndIndex": 20268, + "Kind": 3 + }, + { + "EndIndex": 20299, + "Kind": 3 + }, + { + "EndIndex": 20329, + "Kind": 3 + }, + { + "EndIndex": 20353, + "Kind": 3 + }, + { + "EndIndex": 20359, + "Kind": 3 + }, + { + "EndIndex": 20390, + "Kind": 3 + }, + { + "EndIndex": 20420, + "Kind": 3 + }, + { + "EndIndex": 20444, + "Kind": 3 + }, + { + "EndIndex": 20450, + "Kind": 3 + }, + { + "EndIndex": 20480, + "Kind": 3 + }, + { + "EndIndex": 20511, + "Kind": 3 + }, + { + "EndIndex": 20533, + "Kind": 3 + }, + { + "EndIndex": 20539, + "Kind": 3 + }, + { + "EndIndex": 20563, + "Kind": 3 + }, + { + "EndIndex": 20580, + "Kind": 3 + }, + { + "EndIndex": 20604, + "Kind": 3 + }, + { + "EndIndex": 20610, + "Kind": 3 + }, + { + "EndIndex": 20634, + "Kind": 3 + }, + { + "EndIndex": 20651, + "Kind": 3 + }, + { + "EndIndex": 20675, + "Kind": 3 + }, + { + "EndIndex": 20681, + "Kind": 3 + }, + { + "EndIndex": 20717, + "Kind": 3 + }, + { + "EndIndex": 20758, + "Kind": 3 + }, + { + "EndIndex": 20782, + "Kind": 3 + }, + { + "EndIndex": 20788, + "Kind": 3 + }, + { + "EndIndex": 20820, + "Kind": 3 + }, + { + "EndIndex": 20850, + "Kind": 3 + }, + { + "EndIndex": 20874, + "Kind": 3 + }, + { + "EndIndex": 20880, + "Kind": 3 + }, + { + "EndIndex": 20915, + "Kind": 3 + }, + { + "EndIndex": 20954, + "Kind": 3 + }, + { + "EndIndex": 20977, + "Kind": 3 + }, + { + "EndIndex": 20983, + "Kind": 3 + }, + { + "EndIndex": 21008, + "Kind": 3 + }, + { + "EndIndex": 21038, + "Kind": 3 + }, + { + "EndIndex": 21057, + "Kind": 3 + }, + { + "EndIndex": 21063, + "Kind": 3 + }, + { + "EndIndex": 21100, + "Kind": 3 + }, + { + "EndIndex": 21131, + "Kind": 3 + }, + { + "EndIndex": 21155, + "Kind": 3 + }, + { + "EndIndex": 21161, + "Kind": 3 + }, + { + "EndIndex": 21193, + "Kind": 3 + }, + { + "EndIndex": 21223, + "Kind": 3 + }, + { + "EndIndex": 21247, + "Kind": 3 + }, + { + "EndIndex": 21253, + "Kind": 3 + }, + { + "EndIndex": 21285, + "Kind": 3 + }, + { + "EndIndex": 21315, + "Kind": 3 + }, + { + "EndIndex": 21339, + "Kind": 3 + }, + { + "EndIndex": 21345, + "Kind": 3 + }, + { + "EndIndex": 21380, + "Kind": 3 + }, + { + "EndIndex": 21521, + "Kind": 3 + }, + { + "EndIndex": 21545, + "Kind": 3 + }, + { + "EndIndex": 21551, + "Kind": 3 + }, + { + "EndIndex": 21588, + "Kind": 3 + }, + { + "EndIndex": 21629, + "Kind": 3 + }, + { + "EndIndex": 21653, + "Kind": 3 + }, + { + "EndIndex": 21659, + "Kind": 3 + }, + { + "EndIndex": 21691, + "Kind": 3 + }, + { + "EndIndex": 21721, + "Kind": 3 + }, + { + "EndIndex": 21745, + "Kind": 3 + }, + { + "EndIndex": 21751, + "Kind": 3 + }, + { + "EndIndex": 21787, + "Kind": 3 + }, + { + "EndIndex": 21817, + "Kind": 3 + }, + { + "EndIndex": 21841, + "Kind": 3 + }, + { + "EndIndex": 21847, + "Kind": 3 + }, + { + "EndIndex": 21865, + "Kind": 3 + }, + { + "EndIndex": 21915, + "Kind": 3 + }, + { + "EndIndex": 22405, + "Kind": 3 + }, + { + "EndIndex": 22419, + "Kind": 3 + }, + { + "EndIndex": 22425, + "Kind": 3 + }, + { + "EndIndex": 22449, + "Kind": 3 + }, + { + "EndIndex": 22478, + "Kind": 3 + }, + { + "EndIndex": 22497, + "Kind": 3 + }, + { + "EndIndex": 22503, + "Kind": 3 + }, + { + "EndIndex": 22534, + "Kind": 3 + }, + { + "EndIndex": 22564, + "Kind": 3 + }, + { + "EndIndex": 22588, + "Kind": 3 + }, + { + "EndIndex": 22594, + "Kind": 3 + }, + { + "EndIndex": 22612, + "Kind": 3 + }, + { + "EndIndex": 22654, + "Kind": 3 + }, + { + "EndIndex": 22980, + "Kind": 3 + }, + { + "EndIndex": 23002, + "Kind": 3 + }, + { + "EndIndex": 23008, + "Kind": 3 + }, + { + "EndIndex": 23043, + "Kind": 3 + }, + { + "EndIndex": 23073, + "Kind": 3 + }, + { + "EndIndex": 23101, + "Kind": 3 + }, + { + "EndIndex": 23107, + "Kind": 3 + }, + { + "EndIndex": 23133, + "Kind": 3 + }, + { + "EndIndex": 23194, + "Kind": 3 + }, + { + "EndIndex": 23218, + "Kind": 3 + }, + { + "EndIndex": 23224, + "Kind": 3 + }, + { + "EndIndex": 23257, + "Kind": 3 + }, + { + "EndIndex": 23588, + "Kind": 3 + }, + { + "EndIndex": 23611, + "Kind": 3 + }, + { + "EndIndex": 23617, + "Kind": 3 + }, + { + "EndIndex": 23643, + "Kind": 3 + }, + { + "EndIndex": 23703, + "Kind": 3 + }, + { + "EndIndex": 23733, + "Kind": 3 + }, + { + "EndIndex": 23739, + "Kind": 3 + }, + { + "EndIndex": 23757, + "Kind": 3 + }, + { + "EndIndex": 23794, + "Kind": 3 + }, + { + "EndIndex": 23954, + "Kind": 3 + }, + { + "EndIndex": 23974, + "Kind": 3 + }, + { + "EndIndex": 23980, + "Kind": 3 + }, + { + "EndIndex": 24000, + "Kind": 3 + }, + { + "EndIndex": 24163, + "Kind": 3 + }, + { + "EndIndex": 24182, + "Kind": 3 + }, + { + "EndIndex": 24188, + "Kind": 3 + }, + { + "EndIndex": 24203, + "Kind": 3 + }, + { + "EndIndex": 24224, + "Kind": 3 + }, + { + "EndIndex": 24274, + "Kind": 3 + }, + { + "EndIndex": 24288, + "Kind": 3 + }, + { + "EndIndex": 24294, + "Kind": 3 + }, + { + "EndIndex": 24321, + "Kind": 3 + }, + { + "EndIndex": 24372, + "Kind": 3 + }, + { + "EndIndex": 24394, + "Kind": 3 + }, + { + "EndIndex": 24400, + "Kind": 3 + }, + { + "EndIndex": 24415, + "Kind": 3 + }, + { + "EndIndex": 24436, + "Kind": 3 + }, + { + "EndIndex": 24481, + "Kind": 3 + }, + { + "EndIndex": 24495, + "Kind": 3 + }, + { + "EndIndex": 24501, + "Kind": 3 + }, + { + "EndIndex": 24503, + "Kind": 3 + }, + { + "EndIndex": 24522, + "Kind": 3 + }, + { + "EndIndex": 24546, + "Kind": 3 + }, + { + "EndIndex": 24694, + "Kind": 3 + }, + { + "EndIndex": 24718, + "Kind": 3 + }, + { + "EndIndex": 24739, + "Kind": 3 + }, + { + "EndIndex": 24765, + "Kind": 3 + }, + { + "EndIndex": 24771, + "Kind": 3 + }, + { + "EndIndex": 24802, + "Kind": 3 + }, + { + "EndIndex": 24832, + "Kind": 3 + }, + { + "EndIndex": 24858, + "Kind": 3 + }, + { + "EndIndex": 24864, + "Kind": 3 + }, + { + "EndIndex": 24889, + "Kind": 3 + }, + { + "EndIndex": 24910, + "Kind": 3 + }, + { + "EndIndex": 24932, + "Kind": 3 + }, + { + "EndIndex": 24938, + "Kind": 3 + }, + { + "EndIndex": 24963, + "Kind": 3 + }, + { + "EndIndex": 24997, + "Kind": 3 + }, + { + "EndIndex": 25036, + "Kind": 3 + }, + { + "EndIndex": 25059, + "Kind": 3 + }, + { + "EndIndex": 25065, + "Kind": 3 + }, + { + "EndIndex": 25095, + "Kind": 3 + }, + { + "EndIndex": 25126, + "Kind": 3 + }, + { + "EndIndex": 25148, + "Kind": 3 + }, + { + "EndIndex": 25154, + "Kind": 3 + }, + { + "EndIndex": 25180, + "Kind": 3 + }, + { + "EndIndex": 25203, + "Kind": 3 + }, + { + "EndIndex": 25223, + "Kind": 3 + }, + { + "EndIndex": 25229, + "Kind": 3 + }, + { + "EndIndex": 25265, + "Kind": 3 + }, + { + "EndIndex": 25296, + "Kind": 3 + }, + { + "EndIndex": 25314, + "Kind": 3 + }, + { + "EndIndex": 25320, + "Kind": 3 + }, + { + "EndIndex": 25360, + "Kind": 3 + }, + { + "EndIndex": 25448, + "Kind": 3 + }, + { + "EndIndex": 25467, + "Kind": 3 + }, + { + "EndIndex": 25473, + "Kind": 3 + }, + { + "EndIndex": 25503, + "Kind": 3 + }, + { + "EndIndex": 25534, + "Kind": 3 + }, + { + "EndIndex": 25556, + "Kind": 3 + }, + { + "EndIndex": 25562, + "Kind": 3 + }, + { + "EndIndex": 25601, + "Kind": 3 + }, + { + "EndIndex": 25640, + "Kind": 3 + }, + { + "EndIndex": 25654, + "Kind": 3 + }, + { + "EndIndex": 25660, + "Kind": 3 + }, + { + "EndIndex": 25691, + "Kind": 3 + }, + { + "EndIndex": 25710, + "Kind": 3 + }, + { + "EndIndex": 25716, + "Kind": 3 + }, + { + "EndIndex": 25746, + "Kind": 3 + }, + { + "EndIndex": 25776, + "Kind": 3 + }, + { + "EndIndex": 25798, + "Kind": 3 + }, + { + "EndIndex": 25804, + "Kind": 3 + }, + { + "EndIndex": 25829, + "Kind": 3 + }, + { + "EndIndex": 25859, + "Kind": 3 + }, + { + "EndIndex": 25877, + "Kind": 3 + }, + { + "EndIndex": 25883, + "Kind": 3 + }, + { + "EndIndex": 25925, + "Kind": 3 + }, + { + "EndIndex": 26077, + "Kind": 3 + }, + { + "EndIndex": 26091, + "Kind": 3 + }, + { + "EndIndex": 26097, + "Kind": 3 + }, + { + "EndIndex": 26115, + "Kind": 3 + }, + { + "EndIndex": 26148, + "Kind": 3 + }, + { + "EndIndex": 26299, + "Kind": 3 + }, + { + "EndIndex": 26320, + "Kind": 3 + }, + { + "EndIndex": 26326, + "Kind": 3 + }, + { + "EndIndex": 26350, + "Kind": 3 + }, + { + "EndIndex": 26371, + "Kind": 3 + }, + { + "EndIndex": 26389, + "Kind": 3 + }, + { + "EndIndex": 26395, + "Kind": 3 + }, + { + "EndIndex": 26425, + "Kind": 3 + }, + { + "EndIndex": 26456, + "Kind": 3 + }, + { + "EndIndex": 26478, + "Kind": 3 + }, + { + "EndIndex": 26484, + "Kind": 3 + }, + { + "EndIndex": 26514, + "Kind": 3 + }, + { + "EndIndex": 26544, + "Kind": 3 + }, + { + "EndIndex": 26566, + "Kind": 3 + }, + { + "EndIndex": 26572, + "Kind": 3 + }, + { + "EndIndex": 26603, + "Kind": 3 + }, + { + "EndIndex": 26633, + "Kind": 3 + }, + { + "EndIndex": 26659, + "Kind": 3 + }, + { + "EndIndex": 26665, + "Kind": 3 + }, + { + "EndIndex": 26696, + "Kind": 3 + }, + { + "EndIndex": 26726, + "Kind": 3 + }, + { + "EndIndex": 26752, + "Kind": 3 + }, + { + "EndIndex": 26758, + "Kind": 3 + }, + { + "EndIndex": 26788, + "Kind": 3 + }, + { + "EndIndex": 26819, + "Kind": 3 + }, + { + "EndIndex": 26841, + "Kind": 3 + }, + { + "EndIndex": 26847, + "Kind": 3 + }, + { + "EndIndex": 26871, + "Kind": 3 + }, + { + "EndIndex": 26888, + "Kind": 3 + }, + { + "EndIndex": 26914, + "Kind": 3 + }, + { + "EndIndex": 26920, + "Kind": 3 + }, + { + "EndIndex": 26944, + "Kind": 3 + }, + { + "EndIndex": 26961, + "Kind": 3 + }, + { + "EndIndex": 26987, + "Kind": 3 + }, + { + "EndIndex": 26993, + "Kind": 3 + }, + { + "EndIndex": 27029, + "Kind": 3 + }, + { + "EndIndex": 27070, + "Kind": 3 + }, + { + "EndIndex": 27096, + "Kind": 3 + }, + { + "EndIndex": 27102, + "Kind": 3 + }, + { + "EndIndex": 27134, + "Kind": 3 + }, + { + "EndIndex": 27164, + "Kind": 3 + }, + { + "EndIndex": 27190, + "Kind": 3 + }, + { + "EndIndex": 27196, + "Kind": 3 + }, + { + "EndIndex": 27231, + "Kind": 3 + }, + { + "EndIndex": 27270, + "Kind": 3 + }, + { + "EndIndex": 27293, + "Kind": 3 + }, + { + "EndIndex": 27299, + "Kind": 3 + }, + { + "EndIndex": 27324, + "Kind": 3 + }, + { + "EndIndex": 27354, + "Kind": 3 + }, + { + "EndIndex": 27373, + "Kind": 3 + }, + { + "EndIndex": 27379, + "Kind": 3 + }, + { + "EndIndex": 27416, + "Kind": 3 + }, + { + "EndIndex": 27447, + "Kind": 3 + }, + { + "EndIndex": 27473, + "Kind": 3 + }, + { + "EndIndex": 27479, + "Kind": 3 + }, + { + "EndIndex": 27511, + "Kind": 3 + }, + { + "EndIndex": 27541, + "Kind": 3 + }, + { + "EndIndex": 27567, + "Kind": 3 + }, + { + "EndIndex": 27573, + "Kind": 3 + }, + { + "EndIndex": 27605, + "Kind": 3 + }, + { + "EndIndex": 27635, + "Kind": 3 + }, + { + "EndIndex": 27661, + "Kind": 3 + }, + { + "EndIndex": 27667, + "Kind": 3 + }, + { + "EndIndex": 27704, + "Kind": 3 + }, + { + "EndIndex": 27745, + "Kind": 3 + }, + { + "EndIndex": 27771, + "Kind": 3 + }, + { + "EndIndex": 27777, + "Kind": 3 + }, + { + "EndIndex": 27809, + "Kind": 3 + }, + { + "EndIndex": 27839, + "Kind": 3 + }, + { + "EndIndex": 27865, + "Kind": 3 + }, + { + "EndIndex": 27871, + "Kind": 3 + }, + { + "EndIndex": 27907, + "Kind": 3 + }, + { + "EndIndex": 27937, + "Kind": 3 + }, + { + "EndIndex": 27963, + "Kind": 3 + }, + { + "EndIndex": 27969, + "Kind": 3 + }, + { + "EndIndex": 27993, + "Kind": 3 + }, + { + "EndIndex": 28022, + "Kind": 3 + }, + { + "EndIndex": 28041, + "Kind": 3 + }, + { + "EndIndex": 28047, + "Kind": 3 + }, + { + "EndIndex": 28078, + "Kind": 3 + }, + { + "EndIndex": 28108, + "Kind": 3 + }, + { + "EndIndex": 28134, + "Kind": 3 + }, + { + "EndIndex": 28140, + "Kind": 3 + }, + { + "EndIndex": 28158, + "Kind": 3 + }, + { + "EndIndex": 28200, + "Kind": 3 + }, + { + "EndIndex": 28526, + "Kind": 3 + }, + { + "EndIndex": 28548, + "Kind": 3 + }, + { + "EndIndex": 28554, + "Kind": 3 + }, + { + "EndIndex": 28589, + "Kind": 3 + }, + { + "EndIndex": 28619, + "Kind": 3 + }, + { + "EndIndex": 28647, + "Kind": 3 + }, + { + "EndIndex": 28653, + "Kind": 3 + }, + { + "EndIndex": 28679, + "Kind": 3 + }, + { + "EndIndex": 28798, + "Kind": 3 + }, + { + "EndIndex": 28828, + "Kind": 3 + }, + { + "EndIndex": 28834, + "Kind": 3 + }, + { + "EndIndex": 28849, + "Kind": 3 + }, + { + "EndIndex": 28870, + "Kind": 3 + }, + { + "EndIndex": 28920, + "Kind": 3 + }, + { + "EndIndex": 28934, + "Kind": 3 + }, + { + "EndIndex": 28940, + "Kind": 3 + }, + { + "EndIndex": 28955, + "Kind": 3 + }, + { + "EndIndex": 28976, + "Kind": 3 + }, + { + "EndIndex": 29021, + "Kind": 3 + }, + { + "EndIndex": 29035, + "Kind": 3 + }, + { + "EndIndex": 29041, + "Kind": 3 + }, + { + "EndIndex": 29043, + "Kind": 3 + }, + { + "EndIndex": 29066, + "Kind": 3 + }, + { + "EndIndex": 29088, + "Kind": 3 + }, + { + "EndIndex": 29334, + "Kind": 3 + }, + { + "EndIndex": 29365, + "Kind": 3 + }, + { + "EndIndex": 29395, + "Kind": 3 + }, + { + "EndIndex": 29419, + "Kind": 3 + }, + { + "EndIndex": 29425, + "Kind": 3 + }, + { + "EndIndex": 29448, + "Kind": 3 + }, + { + "EndIndex": 29482, + "Kind": 3 + }, + { + "EndIndex": 29513, + "Kind": 3 + }, + { + "EndIndex": 29535, + "Kind": 3 + }, + { + "EndIndex": 29541, + "Kind": 3 + }, + { + "EndIndex": 29571, + "Kind": 3 + }, + { + "EndIndex": 29602, + "Kind": 3 + }, + { + "EndIndex": 29624, + "Kind": 3 + }, + { + "EndIndex": 29630, + "Kind": 3 + }, + { + "EndIndex": 29660, + "Kind": 3 + }, + { + "EndIndex": 29691, + "Kind": 3 + }, + { + "EndIndex": 29713, + "Kind": 3 + }, + { + "EndIndex": 29719, + "Kind": 3 + }, + { + "EndIndex": 29758, + "Kind": 3 + }, + { + "EndIndex": 29797, + "Kind": 3 + }, + { + "EndIndex": 29811, + "Kind": 3 + }, + { + "EndIndex": 29817, + "Kind": 3 + }, + { + "EndIndex": 29850, + "Kind": 3 + }, + { + "EndIndex": 29879, + "Kind": 3 + }, + { + "EndIndex": 29893, + "Kind": 3 + }, + { + "EndIndex": 29899, + "Kind": 3 + }, + { + "EndIndex": 29930, + "Kind": 3 + }, + { + "EndIndex": 29949, + "Kind": 3 + }, + { + "EndIndex": 29955, + "Kind": 3 + }, + { + "EndIndex": 29985, + "Kind": 3 + }, + { + "EndIndex": 30015, + "Kind": 3 + }, + { + "EndIndex": 30037, + "Kind": 3 + }, + { + "EndIndex": 30043, + "Kind": 3 + }, + { + "EndIndex": 30068, + "Kind": 3 + }, + { + "EndIndex": 30098, + "Kind": 3 + }, + { + "EndIndex": 30116, + "Kind": 3 + }, + { + "EndIndex": 30122, + "Kind": 3 + }, + { + "EndIndex": 30164, + "Kind": 3 + }, + { + "EndIndex": 30414, + "Kind": 3 + }, + { + "EndIndex": 30428, + "Kind": 3 + }, + { + "EndIndex": 30434, + "Kind": 3 + }, + { + "EndIndex": 30452, + "Kind": 3 + }, + { + "EndIndex": 30485, + "Kind": 3 + }, + { + "EndIndex": 30636, + "Kind": 3 + }, + { + "EndIndex": 30657, + "Kind": 3 + }, + { + "EndIndex": 30663, + "Kind": 3 + }, + { + "EndIndex": 30688, + "Kind": 3 + }, + { + "EndIndex": 30721, + "Kind": 3 + }, + { + "EndIndex": 30757, + "Kind": 3 + }, + { + "EndIndex": 30763, + "Kind": 3 + }, + { + "EndIndex": 30793, + "Kind": 3 + }, + { + "EndIndex": 30824, + "Kind": 3 + }, + { + "EndIndex": 30846, + "Kind": 3 + }, + { + "EndIndex": 30852, + "Kind": 3 + }, + { + "EndIndex": 30876, + "Kind": 3 + }, + { + "EndIndex": 30905, + "Kind": 3 + }, + { + "EndIndex": 30923, + "Kind": 3 + }, + { + "EndIndex": 30929, + "Kind": 3 + }, + { + "EndIndex": 30959, + "Kind": 3 + }, + { + "EndIndex": 30989, + "Kind": 3 + }, + { + "EndIndex": 31011, + "Kind": 3 + }, + { + "EndIndex": 31017, + "Kind": 3 + }, + { + "EndIndex": 31048, + "Kind": 3 + }, + { + "EndIndex": 31078, + "Kind": 3 + }, + { + "EndIndex": 31102, + "Kind": 3 + }, + { + "EndIndex": 31108, + "Kind": 3 + }, + { + "EndIndex": 31138, + "Kind": 3 + }, + { + "EndIndex": 31169, + "Kind": 3 + }, + { + "EndIndex": 31191, + "Kind": 3 + }, + { + "EndIndex": 31197, + "Kind": 3 + }, + { + "EndIndex": 31222, + "Kind": 3 + }, + { + "EndIndex": 31252, + "Kind": 3 + }, + { + "EndIndex": 31271, + "Kind": 3 + }, + { + "EndIndex": 31277, + "Kind": 3 + }, + { + "EndIndex": 31309, + "Kind": 3 + }, + { + "EndIndex": 31339, + "Kind": 3 + }, + { + "EndIndex": 31363, + "Kind": 3 + }, + { + "EndIndex": 31369, + "Kind": 3 + }, + { + "EndIndex": 31387, + "Kind": 3 + }, + { + "EndIndex": 31429, + "Kind": 3 + }, + { + "EndIndex": 31755, + "Kind": 3 + }, + { + "EndIndex": 31777, + "Kind": 3 + }, + { + "EndIndex": 31783, + "Kind": 3 + }, + { + "EndIndex": 31812, + "Kind": 3 + }, + { + "EndIndex": 31862, + "Kind": 3 + }, + { + "EndIndex": 31880, + "Kind": 3 + }, + { + "EndIndex": 31886, + "Kind": 3 + }, + { + "EndIndex": 31928, + "Kind": 3 + }, + { + "EndIndex": 32018, + "Kind": 3 + }, + { + "EndIndex": 32036, + "Kind": 3 + }, + { + "EndIndex": 32042, + "Kind": 3 + }, + { + "EndIndex": 32044, + "Kind": 3 + }, + { + "EndIndex": 32063, + "Kind": 3 + }, + { + "EndIndex": 32084, + "Kind": 3 + }, + { + "EndIndex": 32236, + "Kind": 3 + }, + { + "EndIndex": 32267, + "Kind": 3 + }, + { + "EndIndex": 32297, + "Kind": 3 + }, + { + "EndIndex": 32320, + "Kind": 3 + }, + { + "EndIndex": 32326, + "Kind": 3 + }, + { + "EndIndex": 32348, + "Kind": 3 + }, + { + "EndIndex": 32382, + "Kind": 3 + }, + { + "EndIndex": 32413, + "Kind": 3 + }, + { + "EndIndex": 32435, + "Kind": 3 + }, + { + "EndIndex": 32441, + "Kind": 3 + }, + { + "EndIndex": 32474, + "Kind": 3 + }, + { + "EndIndex": 32503, + "Kind": 3 + }, + { + "EndIndex": 32524, + "Kind": 3 + }, + { + "EndIndex": 32530, + "Kind": 3 + }, + { + "EndIndex": 32560, + "Kind": 3 + }, + { + "EndIndex": 32591, + "Kind": 3 + }, + { + "EndIndex": 32613, + "Kind": 3 + }, + { + "EndIndex": 32619, + "Kind": 3 + }, + { + "EndIndex": 32649, + "Kind": 3 + }, + { + "EndIndex": 32680, + "Kind": 3 + }, + { + "EndIndex": 32702, + "Kind": 3 + }, + { + "EndIndex": 32708, + "Kind": 3 + }, + { + "EndIndex": 32747, + "Kind": 3 + }, + { + "EndIndex": 32786, + "Kind": 3 + }, + { + "EndIndex": 32800, + "Kind": 3 + }, + { + "EndIndex": 32806, + "Kind": 3 + }, + { + "EndIndex": 32841, + "Kind": 3 + }, + { + "EndIndex": 32879, + "Kind": 3 + }, + { + "EndIndex": 32893, + "Kind": 3 + }, + { + "EndIndex": 32899, + "Kind": 3 + }, + { + "EndIndex": 32929, + "Kind": 3 + }, + { + "EndIndex": 32959, + "Kind": 3 + }, + { + "EndIndex": 32981, + "Kind": 3 + }, + { + "EndIndex": 32987, + "Kind": 3 + }, + { + "EndIndex": 33008, + "Kind": 3 + }, + { + "EndIndex": 33040, + "Kind": 3 + }, + { + "EndIndex": 33074, + "Kind": 3 + }, + { + "EndIndex": 33095, + "Kind": 3 + }, + { + "EndIndex": 33101, + "Kind": 3 + }, + { + "EndIndex": 33133, + "Kind": 3 + }, + { + "EndIndex": 33167, + "Kind": 3 + }, + { + "EndIndex": 33188, + "Kind": 3 + }, + { + "EndIndex": 33194, + "Kind": 3 + }, + { + "EndIndex": 33236, + "Kind": 3 + }, + { + "EndIndex": 33392, + "Kind": 3 + }, + { + "EndIndex": 33406, + "Kind": 3 + }, + { + "EndIndex": 33412, + "Kind": 3 + }, + { + "EndIndex": 33430, + "Kind": 3 + }, + { + "EndIndex": 33463, + "Kind": 3 + }, + { + "EndIndex": 33614, + "Kind": 3 + }, + { + "EndIndex": 33635, + "Kind": 3 + }, + { + "EndIndex": 33641, + "Kind": 3 + }, + { + "EndIndex": 33666, + "Kind": 3 + }, + { + "EndIndex": 33699, + "Kind": 3 + }, + { + "EndIndex": 33734, + "Kind": 3 + }, + { + "EndIndex": 33740, + "Kind": 3 + }, + { + "EndIndex": 33770, + "Kind": 3 + }, + { + "EndIndex": 33801, + "Kind": 3 + }, + { + "EndIndex": 33823, + "Kind": 3 + }, + { + "EndIndex": 33829, + "Kind": 3 + }, + { + "EndIndex": 33853, + "Kind": 3 + }, + { + "EndIndex": 33882, + "Kind": 3 + }, + { + "EndIndex": 33900, + "Kind": 3 + }, + { + "EndIndex": 33906, + "Kind": 3 + }, + { + "EndIndex": 33936, + "Kind": 3 + }, + { + "EndIndex": 33966, + "Kind": 3 + }, + { + "EndIndex": 33988, + "Kind": 3 + }, + { + "EndIndex": 33994, + "Kind": 3 + }, + { + "EndIndex": 34025, + "Kind": 3 + }, + { + "EndIndex": 34055, + "Kind": 3 + }, + { + "EndIndex": 34078, + "Kind": 3 + }, + { + "EndIndex": 34084, + "Kind": 3 + }, + { + "EndIndex": 34114, + "Kind": 3 + }, + { + "EndIndex": 34145, + "Kind": 3 + }, + { + "EndIndex": 34167, + "Kind": 3 + }, + { + "EndIndex": 34173, + "Kind": 3 + }, + { + "EndIndex": 34198, + "Kind": 3 + }, + { + "EndIndex": 34228, + "Kind": 3 + }, + { + "EndIndex": 34247, + "Kind": 3 + }, + { + "EndIndex": 34253, + "Kind": 3 + }, + { + "EndIndex": 34282, + "Kind": 3 + }, + { + "EndIndex": 34334, + "Kind": 3 + }, + { + "EndIndex": 34369, + "Kind": 3 + }, + { + "EndIndex": 34375, + "Kind": 3 + }, + { + "EndIndex": 34407, + "Kind": 3 + }, + { + "EndIndex": 34437, + "Kind": 3 + }, + { + "EndIndex": 34460, + "Kind": 3 + }, + { + "EndIndex": 34466, + "Kind": 3 + }, + { + "EndIndex": 34506, + "Kind": 3 + }, + { + "EndIndex": 34541, + "Kind": 3 + }, + { + "EndIndex": 34562, + "Kind": 3 + }, + { + "EndIndex": 34568, + "Kind": 3 + }, + { + "EndIndex": 34595, + "Kind": 3 + }, + { + "EndIndex": 34655, + "Kind": 3 + }, + { + "EndIndex": 34673, + "Kind": 3 + }, + { + "EndIndex": 34679, + "Kind": 3 + }, + { + "EndIndex": 34697, + "Kind": 3 + }, + { + "EndIndex": 34739, + "Kind": 3 + }, + { + "EndIndex": 35065, + "Kind": 3 + }, + { + "EndIndex": 35087, + "Kind": 3 + }, + { + "EndIndex": 35093, + "Kind": 3 + }, + { + "EndIndex": 35124, + "Kind": 3 + }, + { + "EndIndex": 35173, + "Kind": 3 + }, + { + "EndIndex": 35194, + "Kind": 3 + }, + { + "EndIndex": 35200, + "Kind": 3 + }, + { + "EndIndex": 35222, + "Kind": 3 + }, + { + "EndIndex": 35261, + "Kind": 3 + }, + { + "EndIndex": 35282, + "Kind": 3 + }, + { + "EndIndex": 35288, + "Kind": 3 + }, + { + "EndIndex": 35309, + "Kind": 3 + }, + { + "EndIndex": 35355, + "Kind": 3 + }, + { + "EndIndex": 35378, + "Kind": 3 + }, + { + "EndIndex": 35384, + "Kind": 3 + }, + { + "EndIndex": 35413, + "Kind": 3 + }, + { + "EndIndex": 35463, + "Kind": 3 + }, + { + "EndIndex": 35481, + "Kind": 3 + }, + { + "EndIndex": 35487, + "Kind": 3 + }, + { + "EndIndex": 35520, + "Kind": 3 + }, + { + "EndIndex": 35584, + "Kind": 3 + }, + { + "EndIndex": 35605, + "Kind": 3 + }, + { + "EndIndex": 35611, + "Kind": 3 + }, + { + "EndIndex": 35653, + "Kind": 3 + }, + { + "EndIndex": 35743, + "Kind": 3 + }, + { + "EndIndex": 35761, + "Kind": 3 + }, + { + "EndIndex": 35767, + "Kind": 3 + }, + { + "EndIndex": 35805, + "Kind": 3 + }, + { + "EndIndex": 35844, + "Kind": 3 + }, + { + "EndIndex": 35865, + "Kind": 3 + }, + { + "EndIndex": 35871, + "Kind": 3 + }, + { + "EndIndex": 35898, + "Kind": 3 + }, + { + "EndIndex": 36021, + "Kind": 3 + }, + { + "EndIndex": 36045, + "Kind": 3 + }, + { + "EndIndex": 36051, + "Kind": 3 + }, + { + "EndIndex": 36081, + "Kind": 3 + }, + { + "EndIndex": 36176, + "Kind": 3 + }, + { + "EndIndex": 36197, + "Kind": 3 + }, + { + "EndIndex": 36203, + "Kind": 3 + }, + { + "EndIndex": 36227, + "Kind": 3 + }, + { + "EndIndex": 36258, + "Kind": 3 + }, + { + "EndIndex": 36279, + "Kind": 3 + }, + { + "EndIndex": 36285, + "Kind": 3 + }, + { + "EndIndex": 36306, + "Kind": 3 + }, + { + "EndIndex": 36341, + "Kind": 3 + }, + { + "EndIndex": 36362, + "Kind": 3 + }, + { + "EndIndex": 36368, + "Kind": 3 + }, + { + "EndIndex": 36370, + "Kind": 3 + }, + { + "EndIndex": 36387, + "Kind": 3 + }, + { + "EndIndex": 36408, + "Kind": 3 + }, + { + "EndIndex": 36794, + "Kind": 3 + }, + { + "EndIndex": 36816, + "Kind": 3 + }, + { + "EndIndex": 36850, + "Kind": 3 + }, + { + "EndIndex": 36919, + "Kind": 3 + }, + { + "EndIndex": 36941, + "Kind": 3 + }, + { + "EndIndex": 36947, + "Kind": 3 + }, + { + "EndIndex": 36980, + "Kind": 3 + }, + { + "EndIndex": 37009, + "Kind": 3 + }, + { + "EndIndex": 37030, + "Kind": 3 + }, + { + "EndIndex": 37036, + "Kind": 3 + }, + { + "EndIndex": 37066, + "Kind": 3 + }, + { + "EndIndex": 37097, + "Kind": 3 + }, + { + "EndIndex": 37119, + "Kind": 3 + }, + { + "EndIndex": 37125, + "Kind": 3 + }, + { + "EndIndex": 37155, + "Kind": 3 + }, + { + "EndIndex": 37186, + "Kind": 3 + }, + { + "EndIndex": 37208, + "Kind": 3 + }, + { + "EndIndex": 37214, + "Kind": 3 + }, + { + "EndIndex": 37253, + "Kind": 3 + }, + { + "EndIndex": 37292, + "Kind": 3 + }, + { + "EndIndex": 37306, + "Kind": 3 + }, + { + "EndIndex": 37312, + "Kind": 3 + }, + { + "EndIndex": 37345, + "Kind": 3 + }, + { + "EndIndex": 37383, + "Kind": 3 + }, + { + "EndIndex": 37397, + "Kind": 3 + }, + { + "EndIndex": 37403, + "Kind": 3 + }, + { + "EndIndex": 37433, + "Kind": 3 + }, + { + "EndIndex": 37463, + "Kind": 3 + }, + { + "EndIndex": 37485, + "Kind": 3 + }, + { + "EndIndex": 37491, + "Kind": 3 + }, + { + "EndIndex": 37512, + "Kind": 3 + }, + { + "EndIndex": 37547, + "Kind": 3 + }, + { + "EndIndex": 37937, + "Kind": 3 + }, + { + "EndIndex": 37951, + "Kind": 3 + }, + { + "EndIndex": 37957, + "Kind": 3 + }, + { + "EndIndex": 37975, + "Kind": 3 + }, + { + "EndIndex": 38008, + "Kind": 3 + }, + { + "EndIndex": 38159, + "Kind": 3 + }, + { + "EndIndex": 38180, + "Kind": 3 + }, + { + "EndIndex": 38186, + "Kind": 3 + }, + { + "EndIndex": 38211, + "Kind": 3 + }, + { + "EndIndex": 38244, + "Kind": 3 + }, + { + "EndIndex": 38275, + "Kind": 3 + }, + { + "EndIndex": 38281, + "Kind": 3 + }, + { + "EndIndex": 38311, + "Kind": 3 + }, + { + "EndIndex": 38342, + "Kind": 3 + }, + { + "EndIndex": 38364, + "Kind": 3 + }, + { + "EndIndex": 38370, + "Kind": 3 + }, + { + "EndIndex": 38394, + "Kind": 3 + }, + { + "EndIndex": 38423, + "Kind": 3 + }, + { + "EndIndex": 38441, + "Kind": 3 + }, + { + "EndIndex": 38447, + "Kind": 3 + }, + { + "EndIndex": 38477, + "Kind": 3 + }, + { + "EndIndex": 38507, + "Kind": 3 + }, + { + "EndIndex": 38529, + "Kind": 3 + }, + { + "EndIndex": 38535, + "Kind": 3 + }, + { + "EndIndex": 38565, + "Kind": 3 + }, + { + "EndIndex": 38596, + "Kind": 3 + }, + { + "EndIndex": 38618, + "Kind": 3 + }, + { + "EndIndex": 38624, + "Kind": 3 + }, + { + "EndIndex": 38649, + "Kind": 3 + }, + { + "EndIndex": 38679, + "Kind": 3 + }, + { + "EndIndex": 38698, + "Kind": 3 + }, + { + "EndIndex": 38704, + "Kind": 3 + }, + { + "EndIndex": 38744, + "Kind": 3 + }, + { + "EndIndex": 38779, + "Kind": 3 + }, + { + "EndIndex": 38800, + "Kind": 3 + }, + { + "EndIndex": 38806, + "Kind": 3 + }, + { + "EndIndex": 38833, + "Kind": 3 + }, + { + "EndIndex": 38892, + "Kind": 3 + }, + { + "EndIndex": 38910, + "Kind": 3 + }, + { + "EndIndex": 38916, + "Kind": 3 + }, + { + "EndIndex": 38934, + "Kind": 3 + }, + { + "EndIndex": 38976, + "Kind": 3 + }, + { + "EndIndex": 39302, + "Kind": 3 + }, + { + "EndIndex": 39324, + "Kind": 3 + }, + { + "EndIndex": 39330, + "Kind": 3 + }, + { + "EndIndex": 39352, + "Kind": 3 + }, + { + "EndIndex": 39408, + "Kind": 3 + }, + { + "EndIndex": 39429, + "Kind": 3 + }, + { + "EndIndex": 39435, + "Kind": 3 + }, + { + "EndIndex": 39456, + "Kind": 3 + }, + { + "EndIndex": 39499, + "Kind": 3 + }, + { + "EndIndex": 39522, + "Kind": 3 + }, + { + "EndIndex": 39528, + "Kind": 3 + }, + { + "EndIndex": 39546, + "Kind": 3 + }, + { + "EndIndex": 39593, + "Kind": 3 + }, + { + "EndIndex": 39677, + "Kind": 3 + }, + { + "EndIndex": 39696, + "Kind": 3 + }, + { + "EndIndex": 39702, + "Kind": 3 + }, + { + "EndIndex": 39736, + "Kind": 3 + }, + { + "EndIndex": 39815, + "Kind": 3 + }, + { + "EndIndex": 39839, + "Kind": 3 + }, + { + "EndIndex": 39845, + "Kind": 3 + }, + { + "EndIndex": 39867, + "Kind": 3 + }, + { + "EndIndex": 39939, + "Kind": 3 + }, + { + "EndIndex": 39971, + "Kind": 3 + }, + { + "EndIndex": 39977, + "Kind": 3 + }, + { + "EndIndex": 39998, + "Kind": 3 + }, + { + "EndIndex": 40068, + "Kind": 3 + }, + { + "EndIndex": 40099, + "Kind": 3 + }, + { + "EndIndex": 40105, + "Kind": 3 + }, + { + "EndIndex": 40136, + "Kind": 3 + }, + { + "EndIndex": 40298, + "Kind": 3 + }, + { + "EndIndex": 40329, + "Kind": 3 + }, + { + "EndIndex": 40335, + "Kind": 3 + }, + { + "EndIndex": 40370, + "Kind": 3 + }, + { + "EndIndex": 40494, + "Kind": 3 + }, + { + "EndIndex": 40526, + "Kind": 3 + }, + { + "EndIndex": 40532, + "Kind": 3 + }, + { + "EndIndex": 40573, + "Kind": 3 + }, + { + "EndIndex": 40723, + "Kind": 3 + }, + { + "EndIndex": 40747, + "Kind": 3 + }, + { + "EndIndex": 40753, + "Kind": 3 + }, + { + "EndIndex": 40779, + "Kind": 3 + }, + { + "EndIndex": 41079, + "Kind": 3 + }, + { + "EndIndex": 41100, + "Kind": 3 + }, + { + "EndIndex": 41106, + "Kind": 3 + }, + { + "EndIndex": 41129, + "Kind": 3 + }, + { + "EndIndex": 41195, + "Kind": 3 + }, + { + "EndIndex": 41228, + "Kind": 3 + }, + { + "EndIndex": 41234, + "Kind": 3 + }, + { + "EndIndex": 41236, + "Kind": 3 + }, + { + "EndIndex": 41253, + "Kind": 3 + }, + { + "EndIndex": 41273, + "Kind": 3 + }, + { + "EndIndex": 41396, + "Kind": 3 + }, + { + "EndIndex": 41427, + "Kind": 3 + }, + { + "EndIndex": 41457, + "Kind": 3 + }, + { + "EndIndex": 41479, + "Kind": 3 + }, + { + "EndIndex": 41485, + "Kind": 3 + }, + { + "EndIndex": 41506, + "Kind": 3 + }, + { + "EndIndex": 41542, + "Kind": 3 + }, + { + "EndIndex": 41584, + "Kind": 3 + }, + { + "EndIndex": 41606, + "Kind": 3 + }, + { + "EndIndex": 41612, + "Kind": 3 + }, + { + "EndIndex": 41642, + "Kind": 3 + }, + { + "EndIndex": 41673, + "Kind": 3 + }, + { + "EndIndex": 41695, + "Kind": 3 + }, + { + "EndIndex": 41701, + "Kind": 3 + }, + { + "EndIndex": 41731, + "Kind": 3 + }, + { + "EndIndex": 41762, + "Kind": 3 + }, + { + "EndIndex": 41784, + "Kind": 3 + }, + { + "EndIndex": 41790, + "Kind": 3 + }, + { + "EndIndex": 41829, + "Kind": 3 + }, + { + "EndIndex": 41868, + "Kind": 3 + }, + { + "EndIndex": 41882, + "Kind": 3 + }, + { + "EndIndex": 41888, + "Kind": 3 + }, + { + "EndIndex": 41918, + "Kind": 3 + }, + { + "EndIndex": 41948, + "Kind": 3 + }, + { + "EndIndex": 41970, + "Kind": 3 + }, + { + "EndIndex": 41976, + "Kind": 3 + }, + { + "EndIndex": 41997, + "Kind": 3 + }, + { + "EndIndex": 42029, + "Kind": 3 + }, + { + "EndIndex": 42060, + "Kind": 3 + }, + { + "EndIndex": 42081, + "Kind": 3 + }, + { + "EndIndex": 42087, + "Kind": 3 + }, + { + "EndIndex": 42122, + "Kind": 3 + }, + { + "EndIndex": 42249, + "Kind": 3 + }, + { + "EndIndex": 42263, + "Kind": 3 + }, + { + "EndIndex": 42269, + "Kind": 3 + }, + { + "EndIndex": 42287, + "Kind": 3 + }, + { + "EndIndex": 42320, + "Kind": 3 + }, + { + "EndIndex": 42471, + "Kind": 3 + }, + { + "EndIndex": 42492, + "Kind": 3 + }, + { + "EndIndex": 42498, + "Kind": 3 + }, + { + "EndIndex": 42529, + "Kind": 3 + }, + { + "EndIndex": 42560, + "Kind": 3 + }, + { + "EndIndex": 42581, + "Kind": 3 + }, + { + "EndIndex": 42587, + "Kind": 3 + }, + { + "EndIndex": 42619, + "Kind": 3 + }, + { + "EndIndex": 42650, + "Kind": 3 + }, + { + "EndIndex": 42671, + "Kind": 3 + }, + { + "EndIndex": 42677, + "Kind": 3 + }, + { + "EndIndex": 42702, + "Kind": 3 + }, + { + "EndIndex": 42735, + "Kind": 3 + }, + { + "EndIndex": 42769, + "Kind": 3 + }, + { + "EndIndex": 42775, + "Kind": 3 + }, + { + "EndIndex": 42807, + "Kind": 3 + }, + { + "EndIndex": 42838, + "Kind": 3 + }, + { + "EndIndex": 42859, + "Kind": 3 + }, + { + "EndIndex": 42865, + "Kind": 3 + }, + { + "EndIndex": 42895, + "Kind": 3 + }, + { + "EndIndex": 42926, + "Kind": 3 + }, + { + "EndIndex": 42948, + "Kind": 3 + }, + { + "EndIndex": 42954, + "Kind": 3 + }, + { + "EndIndex": 42978, + "Kind": 3 + }, + { + "EndIndex": 43007, + "Kind": 3 + }, + { + "EndIndex": 43025, + "Kind": 3 + }, + { + "EndIndex": 43031, + "Kind": 3 + }, + { + "EndIndex": 43061, + "Kind": 3 + }, + { + "EndIndex": 43091, + "Kind": 3 + }, + { + "EndIndex": 43113, + "Kind": 3 + }, + { + "EndIndex": 43119, + "Kind": 3 + }, + { + "EndIndex": 43149, + "Kind": 3 + }, + { + "EndIndex": 43180, + "Kind": 3 + }, + { + "EndIndex": 43202, + "Kind": 3 + }, + { + "EndIndex": 43208, + "Kind": 3 + }, + { + "EndIndex": 43238, + "Kind": 3 + }, + { + "EndIndex": 43268, + "Kind": 3 + }, + { + "EndIndex": 43290, + "Kind": 3 + }, + { + "EndIndex": 43296, + "Kind": 3 + }, + { + "EndIndex": 43328, + "Kind": 3 + }, + { + "EndIndex": 43358, + "Kind": 3 + }, + { + "EndIndex": 43380, + "Kind": 3 + }, + { + "EndIndex": 43386, + "Kind": 3 + }, + { + "EndIndex": 43413, + "Kind": 3 + }, + { + "EndIndex": 43463, + "Kind": 3 + }, + { + "EndIndex": 43493, + "Kind": 3 + }, + { + "EndIndex": 43499, + "Kind": 3 + }, + { + "EndIndex": 43524, + "Kind": 3 + }, + { + "EndIndex": 43554, + "Kind": 3 + }, + { + "EndIndex": 43573, + "Kind": 3 + }, + { + "EndIndex": 43579, + "Kind": 3 + }, + { + "EndIndex": 43610, + "Kind": 3 + }, + { + "EndIndex": 43640, + "Kind": 3 + }, + { + "EndIndex": 43662, + "Kind": 3 + }, + { + "EndIndex": 43668, + "Kind": 3 + }, + { + "EndIndex": 43700, + "Kind": 3 + }, + { + "EndIndex": 43730, + "Kind": 3 + }, + { + "EndIndex": 43752, + "Kind": 3 + }, + { + "EndIndex": 43758, + "Kind": 3 + }, + { + "EndIndex": 43790, + "Kind": 3 + }, + { + "EndIndex": 43820, + "Kind": 3 + }, + { + "EndIndex": 43842, + "Kind": 3 + }, + { + "EndIndex": 43848, + "Kind": 3 + }, + { + "EndIndex": 43875, + "Kind": 3 + }, + { + "EndIndex": 43934, + "Kind": 3 + }, + { + "EndIndex": 43952, + "Kind": 3 + }, + { + "EndIndex": 43958, + "Kind": 3 + }, + { + "EndIndex": 43989, + "Kind": 3 + }, + { + "EndIndex": 44019, + "Kind": 3 + }, + { + "EndIndex": 44041, + "Kind": 3 + }, + { + "EndIndex": 44047, + "Kind": 3 + }, + { + "EndIndex": 44065, + "Kind": 3 + }, + { + "EndIndex": 44107, + "Kind": 3 + }, + { + "EndIndex": 44433, + "Kind": 3 + }, + { + "EndIndex": 44455, + "Kind": 3 + }, + { + "EndIndex": 44461, + "Kind": 3 + }, + { + "EndIndex": 44492, + "Kind": 3 + }, + { + "EndIndex": 44522, + "Kind": 3 + }, + { + "EndIndex": 44544, + "Kind": 3 + }, + { + "EndIndex": 44550, + "Kind": 3 + }, + { + "EndIndex": 44577, + "Kind": 3 + }, + { + "EndIndex": 44670, + "Kind": 3 + }, + { + "EndIndex": 44691, + "Kind": 3 + }, + { + "EndIndex": 44697, + "Kind": 3 + }, + { + "EndIndex": 44719, + "Kind": 3 + }, + { + "EndIndex": 44765, + "Kind": 3 + }, + { + "EndIndex": 44786, + "Kind": 3 + }, + { + "EndIndex": 44792, + "Kind": 3 + }, + { + "EndIndex": 44813, + "Kind": 3 + }, + { + "EndIndex": 44856, + "Kind": 3 + }, + { + "EndIndex": 44878, + "Kind": 3 + }, + { + "EndIndex": 44884, + "Kind": 3 + }, + { + "EndIndex": 44918, + "Kind": 3 + }, + { + "EndIndex": 45049, + "Kind": 3 + }, + { + "EndIndex": 45071, + "Kind": 3 + }, + { + "EndIndex": 45077, + "Kind": 3 + }, + { + "EndIndex": 45120, + "Kind": 3 + }, + { + "EndIndex": 45181, + "Kind": 3 + }, + { + "EndIndex": 45202, + "Kind": 3 + }, + { + "EndIndex": 45208, + "Kind": 3 + }, + { + "EndIndex": 45238, + "Kind": 3 + }, + { + "EndIndex": 45344, + "Kind": 3 + }, + { + "EndIndex": 45365, + "Kind": 3 + }, + { + "EndIndex": 45371, + "Kind": 3 + }, + { + "EndIndex": 45407, + "Kind": 3 + }, + { + "EndIndex": 45514, + "Kind": 3 + }, + { + "EndIndex": 45536, + "Kind": 3 + }, + { + "EndIndex": 45542, + "Kind": 3 + }, + { + "EndIndex": 45587, + "Kind": 3 + }, + { + "EndIndex": 45656, + "Kind": 3 + }, + { + "EndIndex": 45677, + "Kind": 3 + }, + { + "EndIndex": 45683, + "Kind": 3 + }, + { + "EndIndex": 45717, + "Kind": 3 + }, + { + "EndIndex": 45778, + "Kind": 3 + }, + { + "EndIndex": 45800, + "Kind": 3 + }, + { + "EndIndex": 45806, + "Kind": 3 + }, + { + "EndIndex": 45838, + "Kind": 3 + }, + { + "EndIndex": 45895, + "Kind": 3 + }, + { + "EndIndex": 45917, + "Kind": 3 + }, + { + "EndIndex": 45923, + "Kind": 3 + }, + { + "EndIndex": 45957, + "Kind": 3 + }, + { + "EndIndex": 46014, + "Kind": 3 + }, + { + "EndIndex": 46036, + "Kind": 3 + }, + { + "EndIndex": 46042, + "Kind": 3 + }, + { + "EndIndex": 46062, + "Kind": 3 + }, + { + "EndIndex": 46155, + "Kind": 3 + }, + { + "EndIndex": 46169, + "Kind": 3 + }, + { + "EndIndex": 46175, + "Kind": 3 + }, + { + "EndIndex": 46204, + "Kind": 3 + }, + { + "EndIndex": 46319, + "Kind": 3 + }, + { + "EndIndex": 46340, + "Kind": 3 + }, + { + "EndIndex": 46346, + "Kind": 3 + }, + { + "EndIndex": 46390, + "Kind": 3 + }, + { + "EndIndex": 46519, + "Kind": 3 + }, + { + "EndIndex": 46541, + "Kind": 3 + }, + { + "EndIndex": 46547, + "Kind": 3 + }, + { + "EndIndex": 46600, + "Kind": 3 + }, + { + "EndIndex": 46677, + "Kind": 3 + }, + { + "EndIndex": 46698, + "Kind": 3 + }, + { + "EndIndex": 46704, + "Kind": 3 + }, + { + "EndIndex": 46735, + "Kind": 3 + }, + { + "EndIndex": 46832, + "Kind": 3 + }, + { + "EndIndex": 46854, + "Kind": 3 + }, + { + "EndIndex": 46860, + "Kind": 3 + }, + { + "EndIndex": 46892, + "Kind": 3 + }, + { + "EndIndex": 46953, + "Kind": 3 + }, + { + "EndIndex": 46974, + "Kind": 3 + }, + { + "EndIndex": 46980, + "Kind": 3 + }, + { + "EndIndex": 46982, + "Kind": 3 + }, + { + "EndIndex": 46997, + "Kind": 3 + }, + { + "EndIndex": 47023, + "Kind": 3 + }, + { + "EndIndex": 47172, + "Kind": 3 + }, + { + "EndIndex": 47203, + "Kind": 3 + }, + { + "EndIndex": 47233, + "Kind": 3 + }, + { + "EndIndex": 47261, + "Kind": 3 + }, + { + "EndIndex": 47267, + "Kind": 3 + }, + { + "EndIndex": 47294, + "Kind": 3 + }, + { + "EndIndex": 47330, + "Kind": 3 + }, + { + "EndIndex": 47372, + "Kind": 3 + }, + { + "EndIndex": 47394, + "Kind": 3 + }, + { + "EndIndex": 47400, + "Kind": 3 + }, + { + "EndIndex": 47430, + "Kind": 3 + }, + { + "EndIndex": 47461, + "Kind": 3 + }, + { + "EndIndex": 47483, + "Kind": 3 + }, + { + "EndIndex": 47489, + "Kind": 3 + }, + { + "EndIndex": 47519, + "Kind": 3 + }, + { + "EndIndex": 47550, + "Kind": 3 + }, + { + "EndIndex": 47572, + "Kind": 3 + }, + { + "EndIndex": 47578, + "Kind": 3 + }, + { + "EndIndex": 47617, + "Kind": 3 + }, + { + "EndIndex": 47656, + "Kind": 3 + }, + { + "EndIndex": 47670, + "Kind": 3 + }, + { + "EndIndex": 47676, + "Kind": 3 + }, + { + "EndIndex": 47706, + "Kind": 3 + }, + { + "EndIndex": 47736, + "Kind": 3 + }, + { + "EndIndex": 47758, + "Kind": 3 + }, + { + "EndIndex": 47764, + "Kind": 3 + }, + { + "EndIndex": 47789, + "Kind": 3 + }, + { + "EndIndex": 47819, + "Kind": 3 + }, + { + "EndIndex": 47837, + "Kind": 3 + }, + { + "EndIndex": 47843, + "Kind": 3 + }, + { + "EndIndex": 47878, + "Kind": 3 + }, + { + "EndIndex": 48031, + "Kind": 3 + }, + { + "EndIndex": 48045, + "Kind": 3 + }, + { + "EndIndex": 48051, + "Kind": 3 + }, + { + "EndIndex": 48069, + "Kind": 3 + }, + { + "EndIndex": 48102, + "Kind": 3 + }, + { + "EndIndex": 48253, + "Kind": 3 + }, + { + "EndIndex": 48274, + "Kind": 3 + }, + { + "EndIndex": 48280, + "Kind": 3 + }, + { + "EndIndex": 48305, + "Kind": 3 + }, + { + "EndIndex": 48338, + "Kind": 3 + }, + { + "EndIndex": 48372, + "Kind": 3 + }, + { + "EndIndex": 48378, + "Kind": 3 + }, + { + "EndIndex": 48408, + "Kind": 3 + }, + { + "EndIndex": 48439, + "Kind": 3 + }, + { + "EndIndex": 48461, + "Kind": 3 + }, + { + "EndIndex": 48467, + "Kind": 3 + }, + { + "EndIndex": 48491, + "Kind": 3 + }, + { + "EndIndex": 48520, + "Kind": 3 + }, + { + "EndIndex": 48538, + "Kind": 3 + }, + { + "EndIndex": 48544, + "Kind": 3 + }, + { + "EndIndex": 48574, + "Kind": 3 + }, + { + "EndIndex": 48604, + "Kind": 3 + }, + { + "EndIndex": 48626, + "Kind": 3 + }, + { + "EndIndex": 48632, + "Kind": 3 + }, + { + "EndIndex": 48662, + "Kind": 3 + }, + { + "EndIndex": 48693, + "Kind": 3 + }, + { + "EndIndex": 48715, + "Kind": 3 + }, + { + "EndIndex": 48721, + "Kind": 3 + }, + { + "EndIndex": 48751, + "Kind": 3 + }, + { + "EndIndex": 48781, + "Kind": 3 + }, + { + "EndIndex": 48809, + "Kind": 3 + }, + { + "EndIndex": 48815, + "Kind": 3 + }, + { + "EndIndex": 48847, + "Kind": 3 + }, + { + "EndIndex": 48877, + "Kind": 3 + }, + { + "EndIndex": 48905, + "Kind": 3 + }, + { + "EndIndex": 48911, + "Kind": 3 + }, + { + "EndIndex": 48938, + "Kind": 3 + }, + { + "EndIndex": 48988, + "Kind": 3 + }, + { + "EndIndex": 49018, + "Kind": 3 + }, + { + "EndIndex": 49024, + "Kind": 3 + }, + { + "EndIndex": 49049, + "Kind": 3 + }, + { + "EndIndex": 49079, + "Kind": 3 + }, + { + "EndIndex": 49098, + "Kind": 3 + }, + { + "EndIndex": 49104, + "Kind": 3 + }, + { + "EndIndex": 49135, + "Kind": 3 + }, + { + "EndIndex": 49165, + "Kind": 3 + }, + { + "EndIndex": 49193, + "Kind": 3 + }, + { + "EndIndex": 49199, + "Kind": 3 + }, + { + "EndIndex": 49231, + "Kind": 3 + }, + { + "EndIndex": 49261, + "Kind": 3 + }, + { + "EndIndex": 49289, + "Kind": 3 + }, + { + "EndIndex": 49295, + "Kind": 3 + }, + { + "EndIndex": 49327, + "Kind": 3 + }, + { + "EndIndex": 49357, + "Kind": 3 + }, + { + "EndIndex": 49385, + "Kind": 3 + }, + { + "EndIndex": 49391, + "Kind": 3 + }, + { + "EndIndex": 49418, + "Kind": 3 + }, + { + "EndIndex": 49477, + "Kind": 3 + }, + { + "EndIndex": 49495, + "Kind": 3 + }, + { + "EndIndex": 49501, + "Kind": 3 + }, + { + "EndIndex": 49532, + "Kind": 3 + }, + { + "EndIndex": 49562, + "Kind": 3 + }, + { + "EndIndex": 49590, + "Kind": 3 + }, + { + "EndIndex": 49596, + "Kind": 3 + }, + { + "EndIndex": 49614, + "Kind": 3 + }, + { + "EndIndex": 49656, + "Kind": 3 + }, + { + "EndIndex": 49982, + "Kind": 3 + }, + { + "EndIndex": 50004, + "Kind": 3 + }, + { + "EndIndex": 50010, + "Kind": 3 + }, + { + "EndIndex": 50041, + "Kind": 3 + }, + { + "EndIndex": 50071, + "Kind": 3 + }, + { + "EndIndex": 50099, + "Kind": 3 + }, + { + "EndIndex": 50105, + "Kind": 3 + }, + { + "EndIndex": 50126, + "Kind": 3 + }, + { + "EndIndex": 50169, + "Kind": 3 + }, + { + "EndIndex": 50197, + "Kind": 3 + }, + { + "EndIndex": 50203, + "Kind": 3 + }, + { + "EndIndex": 50237, + "Kind": 3 + }, + { + "EndIndex": 50368, + "Kind": 3 + }, + { + "EndIndex": 50396, + "Kind": 3 + }, + { + "EndIndex": 50402, + "Kind": 3 + }, + { + "EndIndex": 50438, + "Kind": 3 + }, + { + "EndIndex": 50545, + "Kind": 3 + }, + { + "EndIndex": 50573, + "Kind": 3 + }, + { + "EndIndex": 50579, + "Kind": 3 + }, + { + "EndIndex": 50613, + "Kind": 3 + }, + { + "EndIndex": 50674, + "Kind": 3 + }, + { + "EndIndex": 50696, + "Kind": 3 + }, + { + "EndIndex": 50702, + "Kind": 3 + }, + { + "EndIndex": 50734, + "Kind": 3 + }, + { + "EndIndex": 50791, + "Kind": 3 + }, + { + "EndIndex": 50813, + "Kind": 3 + }, + { + "EndIndex": 50819, + "Kind": 3 + }, + { + "EndIndex": 50853, + "Kind": 3 + }, + { + "EndIndex": 50910, + "Kind": 3 + }, + { + "EndIndex": 50932, + "Kind": 3 + }, + { + "EndIndex": 50938, + "Kind": 3 + }, + { + "EndIndex": 50982, + "Kind": 3 + }, + { + "EndIndex": 51111, + "Kind": 3 + }, + { + "EndIndex": 51139, + "Kind": 3 + }, + { + "EndIndex": 51145, + "Kind": 3 + }, + { + "EndIndex": 51176, + "Kind": 3 + }, + { + "EndIndex": 51273, + "Kind": 3 + }, + { + "EndIndex": 51301, + "Kind": 3 + }, + { + "EndIndex": 51307, + "Kind": 3 + }, + { + "EndIndex": 51309, + "Kind": 3 + }, + { + "EndIndex": 51336, + "Kind": 3 + }, + { + "EndIndex": 51358, + "Kind": 3 + }, + { + "EndIndex": 51834, + "Kind": 3 + }, + { + "EndIndex": 51865, + "Kind": 3 + }, + { + "EndIndex": 51895, + "Kind": 3 + }, + { + "EndIndex": 51919, + "Kind": 3 + }, + { + "EndIndex": 51925, + "Kind": 3 + }, + { + "EndIndex": 51948, + "Kind": 3 + }, + { + "EndIndex": 51982, + "Kind": 3 + }, + { + "EndIndex": 52013, + "Kind": 3 + }, + { + "EndIndex": 52035, + "Kind": 3 + }, + { + "EndIndex": 52041, + "Kind": 3 + }, + { + "EndIndex": 52071, + "Kind": 3 + }, + { + "EndIndex": 52102, + "Kind": 3 + }, + { + "EndIndex": 52124, + "Kind": 3 + }, + { + "EndIndex": 52130, + "Kind": 3 + }, + { + "EndIndex": 52160, + "Kind": 3 + }, + { + "EndIndex": 52191, + "Kind": 3 + }, + { + "EndIndex": 52213, + "Kind": 3 + }, + { + "EndIndex": 52219, + "Kind": 3 + }, + { + "EndIndex": 52258, + "Kind": 3 + }, + { + "EndIndex": 52297, + "Kind": 3 + }, + { + "EndIndex": 52311, + "Kind": 3 + }, + { + "EndIndex": 52317, + "Kind": 3 + }, + { + "EndIndex": 52350, + "Kind": 3 + }, + { + "EndIndex": 52379, + "Kind": 3 + }, + { + "EndIndex": 52403, + "Kind": 3 + }, + { + "EndIndex": 52409, + "Kind": 3 + }, + { + "EndIndex": 52440, + "Kind": 3 + }, + { + "EndIndex": 52459, + "Kind": 3 + }, + { + "EndIndex": 52465, + "Kind": 3 + }, + { + "EndIndex": 52495, + "Kind": 3 + }, + { + "EndIndex": 52525, + "Kind": 3 + }, + { + "EndIndex": 52547, + "Kind": 3 + }, + { + "EndIndex": 52553, + "Kind": 3 + }, + { + "EndIndex": 52578, + "Kind": 3 + }, + { + "EndIndex": 52608, + "Kind": 3 + }, + { + "EndIndex": 52626, + "Kind": 3 + }, + { + "EndIndex": 52632, + "Kind": 3 + }, + { + "EndIndex": 52688, + "Kind": 3 + }, + { + "EndIndex": 53168, + "Kind": 3 + }, + { + "EndIndex": 53182, + "Kind": 3 + }, + { + "EndIndex": 53188, + "Kind": 3 + }, + { + "EndIndex": 53206, + "Kind": 3 + }, + { + "EndIndex": 53239, + "Kind": 3 + }, + { + "EndIndex": 53390, + "Kind": 3 + }, + { + "EndIndex": 53411, + "Kind": 3 + }, + { + "EndIndex": 53417, + "Kind": 3 + }, + { + "EndIndex": 53442, + "Kind": 3 + }, + { + "EndIndex": 53475, + "Kind": 3 + }, + { + "EndIndex": 53511, + "Kind": 3 + }, + { + "EndIndex": 53517, + "Kind": 3 + }, + { + "EndIndex": 53547, + "Kind": 3 + }, + { + "EndIndex": 53578, + "Kind": 3 + }, + { + "EndIndex": 53600, + "Kind": 3 + }, + { + "EndIndex": 53606, + "Kind": 3 + }, + { + "EndIndex": 53630, + "Kind": 3 + }, + { + "EndIndex": 53659, + "Kind": 3 + }, + { + "EndIndex": 53677, + "Kind": 3 + }, + { + "EndIndex": 53683, + "Kind": 3 + }, + { + "EndIndex": 53713, + "Kind": 3 + }, + { + "EndIndex": 53743, + "Kind": 3 + }, + { + "EndIndex": 53765, + "Kind": 3 + }, + { + "EndIndex": 53771, + "Kind": 3 + }, + { + "EndIndex": 53802, + "Kind": 3 + }, + { + "EndIndex": 53832, + "Kind": 3 + }, + { + "EndIndex": 53856, + "Kind": 3 + }, + { + "EndIndex": 53862, + "Kind": 3 + }, + { + "EndIndex": 53893, + "Kind": 3 + }, + { + "EndIndex": 53923, + "Kind": 3 + }, + { + "EndIndex": 53947, + "Kind": 3 + }, + { + "EndIndex": 53953, + "Kind": 3 + }, + { + "EndIndex": 53983, + "Kind": 3 + }, + { + "EndIndex": 54014, + "Kind": 3 + }, + { + "EndIndex": 54036, + "Kind": 3 + }, + { + "EndIndex": 54042, + "Kind": 3 + }, + { + "EndIndex": 54067, + "Kind": 3 + }, + { + "EndIndex": 54097, + "Kind": 3 + }, + { + "EndIndex": 54116, + "Kind": 3 + }, + { + "EndIndex": 54122, + "Kind": 3 + }, + { + "EndIndex": 54154, + "Kind": 3 + }, + { + "EndIndex": 54184, + "Kind": 3 + }, + { + "EndIndex": 54208, + "Kind": 3 + }, + { + "EndIndex": 54214, + "Kind": 3 + }, + { + "EndIndex": 54246, + "Kind": 3 + }, + { + "EndIndex": 54276, + "Kind": 3 + }, + { + "EndIndex": 54300, + "Kind": 3 + }, + { + "EndIndex": 54306, + "Kind": 3 + }, + { + "EndIndex": 54330, + "Kind": 3 + }, + { + "EndIndex": 54359, + "Kind": 3 + }, + { + "EndIndex": 54378, + "Kind": 3 + }, + { + "EndIndex": 54384, + "Kind": 3 + }, + { + "EndIndex": 54402, + "Kind": 3 + }, + { + "EndIndex": 54444, + "Kind": 3 + }, + { + "EndIndex": 54770, + "Kind": 3 + }, + { + "EndIndex": 54792, + "Kind": 3 + }, + { + "EndIndex": 54798, + "Kind": 3 + }, + { + "EndIndex": 54825, + "Kind": 3 + }, + { + "EndIndex": 54963, + "Kind": 3 + }, + { + "EndIndex": 54987, + "Kind": 3 + }, + { + "EndIndex": 54993, + "Kind": 3 + }, + { + "EndIndex": 55038, + "Kind": 3 + }, + { + "EndIndex": 55215, + "Kind": 3 + }, + { + "EndIndex": 55239, + "Kind": 3 + }, + { + "EndIndex": 55245, + "Kind": 3 + }, + { + "EndIndex": 55289, + "Kind": 3 + }, + { + "EndIndex": 55503, + "Kind": 3 + }, + { + "EndIndex": 55521, + "Kind": 3 + }, + { + "EndIndex": 55527, + "Kind": 3 + }, + { + "EndIndex": 55568, + "Kind": 3 + }, + { + "EndIndex": 56037, + "Kind": 3 + }, + { + "EndIndex": 56056, + "Kind": 3 + }, + { + "EndIndex": 56062, + "Kind": 3 + }, + { + "EndIndex": 56112, + "Kind": 3 + }, + { + "EndIndex": 56392, + "Kind": 3 + }, + { + "EndIndex": 56414, + "Kind": 3 + }, + { + "EndIndex": 56420, + "Kind": 3 + }, + { + "EndIndex": 56458, + "Kind": 3 + }, + { + "EndIndex": 56645, + "Kind": 3 + }, + { + "EndIndex": 56669, + "Kind": 3 + }, + { + "EndIndex": 56675, + "Kind": 3 + }, + { + "EndIndex": 56718, + "Kind": 3 + }, + { + "EndIndex": 56974, + "Kind": 3 + }, + { + "EndIndex": 56992, + "Kind": 3 + }, + { + "EndIndex": 56998, + "Kind": 3 + }, + { + "EndIndex": 57016, + "Kind": 3 + }, + { + "EndIndex": 57053, + "Kind": 3 + }, + { + "EndIndex": 57232, + "Kind": 3 + }, + { + "EndIndex": 57252, + "Kind": 3 + }, + { + "EndIndex": 57258, + "Kind": 3 + }, + { + "EndIndex": 57278, + "Kind": 3 + }, + { + "EndIndex": 57418, + "Kind": 3 + }, + { + "EndIndex": 57437, + "Kind": 3 + }, + { + "EndIndex": 57443, + "Kind": 3 + }, + { + "EndIndex": 57487, + "Kind": 3 + }, + { + "EndIndex": 57774, + "Kind": 3 + }, + { + "EndIndex": 57792, + "Kind": 3 + }, + { + "EndIndex": 57798, + "Kind": 3 + }, + { + "EndIndex": 57822, + "Kind": 3 + }, + { + "EndIndex": 57968, + "Kind": 3 + }, + { + "EndIndex": 57990, + "Kind": 3 + }, + { + "EndIndex": 57996, + "Kind": 3 + }, + { + "EndIndex": 58020, + "Kind": 3 + }, + { + "EndIndex": 58164, + "Kind": 3 + }, + { + "EndIndex": 58186, + "Kind": 3 + }, + { + "EndIndex": 58192, + "Kind": 3 + }, + { + "EndIndex": 58216, + "Kind": 3 + }, + { + "EndIndex": 58328, + "Kind": 3 + }, + { + "EndIndex": 58349, + "Kind": 3 + }, + { + "EndIndex": 58355, + "Kind": 3 + }, + { + "EndIndex": 58379, + "Kind": 3 + }, + { + "EndIndex": 58519, + "Kind": 3 + }, + { + "EndIndex": 58541, + "Kind": 3 + }, + { + "EndIndex": 58547, + "Kind": 3 + }, + { + "EndIndex": 58571, + "Kind": 3 + }, + { + "EndIndex": 58726, + "Kind": 3 + }, + { + "EndIndex": 58748, + "Kind": 3 + }, + { + "EndIndex": 58754, + "Kind": 3 + }, + { + "EndIndex": 58778, + "Kind": 3 + }, + { + "EndIndex": 58922, + "Kind": 3 + }, + { + "EndIndex": 58944, + "Kind": 3 + }, + { + "EndIndex": 58950, + "Kind": 3 + }, + { + "EndIndex": 58974, + "Kind": 3 + }, + { + "EndIndex": 59220, + "Kind": 3 + }, + { + "EndIndex": 59242, + "Kind": 3 + }, + { + "EndIndex": 59248, + "Kind": 3 + }, + { + "EndIndex": 59272, + "Kind": 3 + }, + { + "EndIndex": 59427, + "Kind": 3 + }, + { + "EndIndex": 59449, + "Kind": 3 + }, + { + "EndIndex": 59455, + "Kind": 3 + }, + { + "EndIndex": 59495, + "Kind": 3 + }, + { + "EndIndex": 59727, + "Kind": 3 + }, + { + "EndIndex": 59747, + "Kind": 3 + }, + { + "EndIndex": 59753, + "Kind": 3 + }, + { + "EndIndex": 59797, + "Kind": 3 + }, + { + "EndIndex": 59978, + "Kind": 3 + }, + { + "EndIndex": 60002, + "Kind": 3 + }, + { + "EndIndex": 60008, + "Kind": 3 + }, + { + "EndIndex": 60030, + "Kind": 3 + }, + { + "EndIndex": 60136, + "Kind": 3 + }, + { + "EndIndex": 60160, + "Kind": 3 + }, + { + "EndIndex": 60166, + "Kind": 3 + }, + { + "EndIndex": 60196, + "Kind": 3 + }, + { + "EndIndex": 60326, + "Kind": 3 + }, + { + "EndIndex": 60350, + "Kind": 3 + }, + { + "EndIndex": 60356, + "Kind": 3 + }, + { + "EndIndex": 60374, + "Kind": 3 + }, + { + "EndIndex": 60408, + "Kind": 3 + }, + { + "EndIndex": 60667, + "Kind": 3 + }, + { + "EndIndex": 60687, + "Kind": 3 + }, + { + "EndIndex": 60693, + "Kind": 3 + }, + { + "EndIndex": 60724, + "Kind": 3 + }, + { + "EndIndex": 61108, + "Kind": 3 + }, + { + "EndIndex": 61152, + "Kind": 3 + }, + { + "EndIndex": 61158, + "Kind": 3 + }, + { + "EndIndex": 61199, + "Kind": 3 + }, + { + "EndIndex": 61488, + "Kind": 3 + }, + { + "EndIndex": 61512, + "Kind": 3 + }, + { + "EndIndex": 61518, + "Kind": 3 + }, + { + "EndIndex": 61562, + "Kind": 3 + }, + { + "EndIndex": 61820, + "Kind": 3 + }, + { + "EndIndex": 61838, + "Kind": 3 + }, + { + "EndIndex": 61844, + "Kind": 3 + }, + { + "EndIndex": 61889, + "Kind": 3 + }, + { + "EndIndex": 62177, + "Kind": 3 + }, + { + "EndIndex": 62195, + "Kind": 3 + }, + { + "EndIndex": 62201, + "Kind": 3 + }, + { + "EndIndex": 62245, + "Kind": 3 + }, + { + "EndIndex": 62426, + "Kind": 3 + }, + { + "EndIndex": 62450, + "Kind": 3 + }, + { + "EndIndex": 62456, + "Kind": 3 + }, + { + "EndIndex": 62488, + "Kind": 3 + }, + { + "EndIndex": 62893, + "Kind": 3 + }, + { + "EndIndex": 62937, + "Kind": 3 + }, + { + "EndIndex": 62943, + "Kind": 3 + }, + { + "EndIndex": 62981, + "Kind": 3 + }, + { + "EndIndex": 63434, + "Kind": 3 + }, + { + "EndIndex": 63460, + "Kind": 3 + }, + { + "EndIndex": 63466, + "Kind": 3 + }, + { + "EndIndex": 63496, + "Kind": 3 + }, + { + "EndIndex": 63627, + "Kind": 3 + }, + { + "EndIndex": 63651, + "Kind": 3 + }, + { + "EndIndex": 63657, + "Kind": 3 + }, + { + "EndIndex": 63694, + "Kind": 3 + }, + { + "EndIndex": 64067, + "Kind": 3 + }, + { + "EndIndex": 64093, + "Kind": 3 + }, + { + "EndIndex": 64099, + "Kind": 3 + }, + { + "EndIndex": 64136, + "Kind": 3 + }, + { + "EndIndex": 64307, + "Kind": 3 + }, + { + "EndIndex": 64332, + "Kind": 3 + }, + { + "EndIndex": 64338, + "Kind": 3 + }, + { + "EndIndex": 64390, + "Kind": 3 + }, + { + "EndIndex": 64674, + "Kind": 3 + }, + { + "EndIndex": 64696, + "Kind": 3 + }, + { + "EndIndex": 64702, + "Kind": 3 + }, + { + "EndIndex": 64731, + "Kind": 3 + }, + { + "EndIndex": 64886, + "Kind": 3 + }, + { + "EndIndex": 64910, + "Kind": 3 + }, + { + "EndIndex": 64916, + "Kind": 3 + }, + { + "EndIndex": 64941, + "Kind": 3 + }, + { + "EndIndex": 65078, + "Kind": 3 + }, + { + "EndIndex": 65102, + "Kind": 3 + }, + { + "EndIndex": 65108, + "Kind": 3 + }, + { + "EndIndex": 65130, + "Kind": 3 + }, + { + "EndIndex": 65299, + "Kind": 3 + }, + { + "EndIndex": 65323, + "Kind": 3 + }, + { + "EndIndex": 65329, + "Kind": 3 + }, + { + "EndIndex": 65370, + "Kind": 3 + }, + { + "EndIndex": 65680, + "Kind": 3 + }, + { + "EndIndex": 65704, + "Kind": 3 + }, + { + "EndIndex": 65710, + "Kind": 3 + }, + { + "EndIndex": 65732, + "Kind": 3 + }, + { + "EndIndex": 65838, + "Kind": 3 + }, + { + "EndIndex": 65862, + "Kind": 3 + }, + { + "EndIndex": 65868, + "Kind": 3 + }, + { + "EndIndex": 65897, + "Kind": 3 + }, + { + "EndIndex": 66050, + "Kind": 3 + }, + { + "EndIndex": 66074, + "Kind": 3 + }, + { + "EndIndex": 66080, + "Kind": 3 + }, + { + "EndIndex": 66082, + "Kind": 3 + }, + { + "EndIndex": 66101, + "Kind": 3 + }, + { + "EndIndex": 66132, + "Kind": 3 + }, + { + "EndIndex": 66164, + "Kind": 3 + }, + { + "EndIndex": 66203, + "Kind": 3 + }, + { + "EndIndex": 66242, + "Kind": 3 + }, + { + "EndIndex": 66256, + "Kind": 3 + }, + { + "EndIndex": 66262, + "Kind": 3 + }, + { + "EndIndex": 66304, + "Kind": 3 + }, + { + "EndIndex": 66318, + "Kind": 3 + }, + { + "EndIndex": 66324, + "Kind": 3 + }, + { + "EndIndex": 66342, + "Kind": 3 + }, + { + "EndIndex": 66375, + "Kind": 3 + }, + { + "EndIndex": 66526, + "Kind": 3 + }, + { + "EndIndex": 66547, + "Kind": 3 + }, + { + "EndIndex": 66553, + "Kind": 3 + }, + { + "EndIndex": 66578, + "Kind": 3 + }, + { + "EndIndex": 66611, + "Kind": 3 + }, + { + "EndIndex": 66644, + "Kind": 3 + }, + { + "EndIndex": 66650, + "Kind": 3 + }, + { + "EndIndex": 66682, + "Kind": 3 + }, + { + "EndIndex": 66748, + "Kind": 3 + }, + { + "EndIndex": 66766, + "Kind": 3 + }, + { + "EndIndex": 66772, + "Kind": 3 + }, + { + "EndIndex": 66797, + "Kind": 3 + }, + { + "EndIndex": 66830, + "Kind": 3 + }, + { + "EndIndex": 66848, + "Kind": 3 + }, + { + "EndIndex": 66854, + "Kind": 3 + }, + { + "EndIndex": 66881, + "Kind": 3 + }, + { + "EndIndex": 66931, + "Kind": 3 + }, + { + "EndIndex": 66961, + "Kind": 3 + }, + { + "EndIndex": 66967, + "Kind": 3 + }, + { + "EndIndex": 67003, + "Kind": 3 + }, + { + "EndIndex": 67052, + "Kind": 3 + }, + { + "EndIndex": 67073, + "Kind": 3 + }, + { + "EndIndex": 67079, + "Kind": 3 + }, + { + "EndIndex": 67097, + "Kind": 3 + }, + { + "EndIndex": 67139, + "Kind": 3 + }, + { + "EndIndex": 67465, + "Kind": 3 + }, + { + "EndIndex": 67487, + "Kind": 3 + }, + { + "EndIndex": 67493, + "Kind": 3 + }, + { + "EndIndex": 67495, + "Kind": 3 + }, + { + "EndIndex": 67531, + "Kind": 3 + }, + { + "EndIndex": 67551, + "Kind": 3 + }, + { + "EndIndex": 67989, + "Kind": 3 + }, + { + "EndIndex": 68020, + "Kind": 3 + }, + { + "EndIndex": 68050, + "Kind": 3 + }, + { + "EndIndex": 68072, + "Kind": 3 + }, + { + "EndIndex": 68078, + "Kind": 3 + }, + { + "EndIndex": 68099, + "Kind": 3 + }, + { + "EndIndex": 68133, + "Kind": 3 + }, + { + "EndIndex": 68164, + "Kind": 3 + }, + { + "EndIndex": 68186, + "Kind": 3 + }, + { + "EndIndex": 68192, + "Kind": 3 + }, + { + "EndIndex": 68222, + "Kind": 3 + }, + { + "EndIndex": 68253, + "Kind": 3 + }, + { + "EndIndex": 68275, + "Kind": 3 + }, + { + "EndIndex": 68281, + "Kind": 3 + }, + { + "EndIndex": 68321, + "Kind": 3 + }, + { + "EndIndex": 68402, + "Kind": 3 + }, + { + "EndIndex": 68421, + "Kind": 3 + }, + { + "EndIndex": 68427, + "Kind": 3 + }, + { + "EndIndex": 68457, + "Kind": 3 + }, + { + "EndIndex": 68488, + "Kind": 3 + }, + { + "EndIndex": 68510, + "Kind": 3 + }, + { + "EndIndex": 68516, + "Kind": 3 + }, + { + "EndIndex": 68555, + "Kind": 3 + }, + { + "EndIndex": 68594, + "Kind": 3 + }, + { + "EndIndex": 68608, + "Kind": 3 + }, + { + "EndIndex": 68614, + "Kind": 3 + }, + { + "EndIndex": 68647, + "Kind": 3 + }, + { + "EndIndex": 68676, + "Kind": 3 + }, + { + "EndIndex": 68698, + "Kind": 3 + }, + { + "EndIndex": 68704, + "Kind": 3 + }, + { + "EndIndex": 68735, + "Kind": 3 + }, + { + "EndIndex": 68754, + "Kind": 3 + }, + { + "EndIndex": 68760, + "Kind": 3 + }, + { + "EndIndex": 68790, + "Kind": 3 + }, + { + "EndIndex": 68820, + "Kind": 3 + }, + { + "EndIndex": 68842, + "Kind": 3 + }, + { + "EndIndex": 68848, + "Kind": 3 + }, + { + "EndIndex": 68873, + "Kind": 3 + }, + { + "EndIndex": 68903, + "Kind": 3 + }, + { + "EndIndex": 68921, + "Kind": 3 + }, + { + "EndIndex": 68927, + "Kind": 3 + }, + { + "EndIndex": 68997, + "Kind": 3 + }, + { + "EndIndex": 69439, + "Kind": 3 + }, + { + "EndIndex": 69453, + "Kind": 3 + }, + { + "EndIndex": 69459, + "Kind": 3 + }, + { + "EndIndex": 69477, + "Kind": 3 + }, + { + "EndIndex": 69510, + "Kind": 3 + }, + { + "EndIndex": 69661, + "Kind": 3 + }, + { + "EndIndex": 69682, + "Kind": 3 + }, + { + "EndIndex": 69688, + "Kind": 3 + }, + { + "EndIndex": 69713, + "Kind": 3 + }, + { + "EndIndex": 69746, + "Kind": 3 + }, + { + "EndIndex": 69784, + "Kind": 3 + }, + { + "EndIndex": 69790, + "Kind": 3 + }, + { + "EndIndex": 69820, + "Kind": 3 + }, + { + "EndIndex": 69851, + "Kind": 3 + }, + { + "EndIndex": 69873, + "Kind": 3 + }, + { + "EndIndex": 69879, + "Kind": 3 + }, + { + "EndIndex": 69903, + "Kind": 3 + }, + { + "EndIndex": 69932, + "Kind": 3 + }, + { + "EndIndex": 69950, + "Kind": 3 + }, + { + "EndIndex": 69956, + "Kind": 3 + }, + { + "EndIndex": 69986, + "Kind": 3 + }, + { + "EndIndex": 70016, + "Kind": 3 + }, + { + "EndIndex": 70038, + "Kind": 3 + }, + { + "EndIndex": 70044, + "Kind": 3 + }, + { + "EndIndex": 70075, + "Kind": 3 + }, + { + "EndIndex": 70105, + "Kind": 3 + }, + { + "EndIndex": 70127, + "Kind": 3 + }, + { + "EndIndex": 70133, + "Kind": 3 + }, + { + "EndIndex": 70164, + "Kind": 3 + }, + { + "EndIndex": 70194, + "Kind": 3 + }, + { + "EndIndex": 70216, + "Kind": 3 + }, + { + "EndIndex": 70222, + "Kind": 3 + }, + { + "EndIndex": 70252, + "Kind": 3 + }, + { + "EndIndex": 70283, + "Kind": 3 + }, + { + "EndIndex": 70305, + "Kind": 3 + }, + { + "EndIndex": 70311, + "Kind": 3 + }, + { + "EndIndex": 70336, + "Kind": 3 + }, + { + "EndIndex": 70366, + "Kind": 3 + }, + { + "EndIndex": 70385, + "Kind": 3 + }, + { + "EndIndex": 70391, + "Kind": 3 + }, + { + "EndIndex": 70423, + "Kind": 3 + }, + { + "EndIndex": 70453, + "Kind": 3 + }, + { + "EndIndex": 70475, + "Kind": 3 + }, + { + "EndIndex": 70481, + "Kind": 3 + }, + { + "EndIndex": 70513, + "Kind": 3 + }, + { + "EndIndex": 70543, + "Kind": 3 + }, + { + "EndIndex": 70565, + "Kind": 3 + }, + { + "EndIndex": 70571, + "Kind": 3 + }, + { + "EndIndex": 70598, + "Kind": 3 + }, + { + "EndIndex": 70660, + "Kind": 3 + }, + { + "EndIndex": 70678, + "Kind": 3 + }, + { + "EndIndex": 70684, + "Kind": 3 + }, + { + "EndIndex": 70708, + "Kind": 3 + }, + { + "EndIndex": 70737, + "Kind": 3 + }, + { + "EndIndex": 70756, + "Kind": 3 + }, + { + "EndIndex": 70762, + "Kind": 3 + }, + { + "EndIndex": 70780, + "Kind": 3 + }, + { + "EndIndex": 70822, + "Kind": 3 + }, + { + "EndIndex": 71148, + "Kind": 3 + }, + { + "EndIndex": 71170, + "Kind": 3 + }, + { + "EndIndex": 71176, + "Kind": 3 + }, + { + "EndIndex": 71203, + "Kind": 3 + }, + { + "EndIndex": 71347, + "Kind": 3 + }, + { + "EndIndex": 71369, + "Kind": 3 + }, + { + "EndIndex": 71375, + "Kind": 3 + }, + { + "EndIndex": 71400, + "Kind": 3 + }, + { + "EndIndex": 71477, + "Kind": 3 + }, + { + "EndIndex": 71499, + "Kind": 3 + }, + { + "EndIndex": 71505, + "Kind": 3 + }, + { + "EndIndex": 71545, + "Kind": 3 + }, + { + "EndIndex": 71674, + "Kind": 3 + }, + { + "EndIndex": 71696, + "Kind": 3 + }, + { + "EndIndex": 71702, + "Kind": 3 + }, + { + "EndIndex": 71746, + "Kind": 3 + }, + { + "EndIndex": 71960, + "Kind": 3 + }, + { + "EndIndex": 71978, + "Kind": 3 + }, + { + "EndIndex": 71984, + "Kind": 3 + }, + { + "EndIndex": 72025, + "Kind": 3 + }, + { + "EndIndex": 72500, + "Kind": 3 + }, + { + "EndIndex": 72520, + "Kind": 3 + }, + { + "EndIndex": 72526, + "Kind": 3 + }, + { + "EndIndex": 72576, + "Kind": 3 + }, + { + "EndIndex": 72858, + "Kind": 3 + }, + { + "EndIndex": 72880, + "Kind": 3 + }, + { + "EndIndex": 72886, + "Kind": 3 + }, + { + "EndIndex": 72922, + "Kind": 3 + }, + { + "EndIndex": 73066, + "Kind": 3 + }, + { + "EndIndex": 73088, + "Kind": 3 + }, + { + "EndIndex": 73094, + "Kind": 3 + }, + { + "EndIndex": 73137, + "Kind": 3 + }, + { + "EndIndex": 73392, + "Kind": 3 + }, + { + "EndIndex": 73410, + "Kind": 3 + }, + { + "EndIndex": 73416, + "Kind": 3 + }, + { + "EndIndex": 73456, + "Kind": 3 + }, + { + "EndIndex": 73637, + "Kind": 3 + }, + { + "EndIndex": 73659, + "Kind": 3 + }, + { + "EndIndex": 73665, + "Kind": 3 + }, + { + "EndIndex": 73701, + "Kind": 3 + }, + { + "EndIndex": 73870, + "Kind": 3 + }, + { + "EndIndex": 73892, + "Kind": 3 + }, + { + "EndIndex": 73898, + "Kind": 3 + }, + { + "EndIndex": 73942, + "Kind": 3 + }, + { + "EndIndex": 74228, + "Kind": 3 + }, + { + "EndIndex": 74246, + "Kind": 3 + }, + { + "EndIndex": 74252, + "Kind": 3 + }, + { + "EndIndex": 74276, + "Kind": 3 + }, + { + "EndIndex": 74489, + "Kind": 3 + }, + { + "EndIndex": 74511, + "Kind": 3 + }, + { + "EndIndex": 74517, + "Kind": 3 + }, + { + "EndIndex": 74541, + "Kind": 3 + }, + { + "EndIndex": 74745, + "Kind": 3 + }, + { + "EndIndex": 74767, + "Kind": 3 + }, + { + "EndIndex": 74773, + "Kind": 3 + }, + { + "EndIndex": 74797, + "Kind": 3 + }, + { + "EndIndex": 74973, + "Kind": 3 + }, + { + "EndIndex": 74987, + "Kind": 3 + }, + { + "EndIndex": 74993, + "Kind": 3 + }, + { + "EndIndex": 75019, + "Kind": 3 + }, + { + "EndIndex": 75222, + "Kind": 3 + }, + { + "EndIndex": 75244, + "Kind": 3 + }, + { + "EndIndex": 75250, + "Kind": 3 + }, + { + "EndIndex": 75274, + "Kind": 3 + }, + { + "EndIndex": 75472, + "Kind": 3 + }, + { + "EndIndex": 75494, + "Kind": 3 + }, + { + "EndIndex": 75500, + "Kind": 3 + }, + { + "EndIndex": 75529, + "Kind": 3 + }, + { + "EndIndex": 75701, + "Kind": 3 + }, + { + "EndIndex": 75723, + "Kind": 3 + }, + { + "EndIndex": 75729, + "Kind": 3 + }, + { + "EndIndex": 75753, + "Kind": 3 + }, + { + "EndIndex": 75965, + "Kind": 3 + }, + { + "EndIndex": 75987, + "Kind": 3 + }, + { + "EndIndex": 75993, + "Kind": 3 + }, + { + "EndIndex": 76019, + "Kind": 3 + }, + { + "EndIndex": 76213, + "Kind": 3 + }, + { + "EndIndex": 76235, + "Kind": 3 + }, + { + "EndIndex": 76241, + "Kind": 3 + }, + { + "EndIndex": 76269, + "Kind": 3 + }, + { + "EndIndex": 76442, + "Kind": 3 + }, + { + "EndIndex": 76464, + "Kind": 3 + }, + { + "EndIndex": 76470, + "Kind": 3 + }, + { + "EndIndex": 76494, + "Kind": 3 + }, + { + "EndIndex": 76697, + "Kind": 3 + }, + { + "EndIndex": 76719, + "Kind": 3 + }, + { + "EndIndex": 76725, + "Kind": 3 + }, + { + "EndIndex": 76749, + "Kind": 3 + }, + { + "EndIndex": 76967, + "Kind": 3 + }, + { + "EndIndex": 76989, + "Kind": 3 + }, + { + "EndIndex": 76995, + "Kind": 3 + }, + { + "EndIndex": 77019, + "Kind": 3 + }, + { + "EndIndex": 77232, + "Kind": 3 + }, + { + "EndIndex": 77254, + "Kind": 3 + }, + { + "EndIndex": 77260, + "Kind": 3 + }, + { + "EndIndex": 77291, + "Kind": 3 + }, + { + "EndIndex": 77512, + "Kind": 3 + }, + { + "EndIndex": 77531, + "Kind": 3 + }, + { + "EndIndex": 77537, + "Kind": 3 + }, + { + "EndIndex": 77576, + "Kind": 3 + }, + { + "EndIndex": 77711, + "Kind": 3 + }, + { + "EndIndex": 77733, + "Kind": 3 + }, + { + "EndIndex": 77739, + "Kind": 3 + }, + { + "EndIndex": 77761, + "Kind": 3 + }, + { + "EndIndex": 77824, + "Kind": 3 + }, + { + "EndIndex": 77846, + "Kind": 3 + }, + { + "EndIndex": 77852, + "Kind": 3 + }, + { + "EndIndex": 77882, + "Kind": 3 + }, + { + "EndIndex": 78025, + "Kind": 3 + }, + { + "EndIndex": 78047, + "Kind": 3 + }, + { + "EndIndex": 78053, + "Kind": 3 + }, + { + "EndIndex": 78071, + "Kind": 3 + }, + { + "EndIndex": 78105, + "Kind": 3 + }, + { + "EndIndex": 78658, + "Kind": 3 + }, + { + "EndIndex": 78677, + "Kind": 3 + }, + { + "EndIndex": 78683, + "Kind": 3 + }, + { + "EndIndex": 78714, + "Kind": 3 + }, + { + "EndIndex": 79085, + "Kind": 3 + }, + { + "EndIndex": 79123, + "Kind": 3 + }, + { + "EndIndex": 79129, + "Kind": 3 + }, + { + "EndIndex": 79170, + "Kind": 3 + }, + { + "EndIndex": 79459, + "Kind": 3 + }, + { + "EndIndex": 79481, + "Kind": 3 + }, + { + "EndIndex": 79487, + "Kind": 3 + }, + { + "EndIndex": 79531, + "Kind": 3 + }, + { + "EndIndex": 79788, + "Kind": 3 + }, + { + "EndIndex": 79806, + "Kind": 3 + }, + { + "EndIndex": 79812, + "Kind": 3 + }, + { + "EndIndex": 79857, + "Kind": 3 + }, + { + "EndIndex": 80144, + "Kind": 3 + }, + { + "EndIndex": 80162, + "Kind": 3 + }, + { + "EndIndex": 80168, + "Kind": 3 + }, + { + "EndIndex": 80207, + "Kind": 3 + }, + { + "EndIndex": 80343, + "Kind": 3 + }, + { + "EndIndex": 80365, + "Kind": 3 + }, + { + "EndIndex": 80371, + "Kind": 3 + }, + { + "EndIndex": 80403, + "Kind": 3 + }, + { + "EndIndex": 80794, + "Kind": 3 + }, + { + "EndIndex": 80832, + "Kind": 3 + }, + { + "EndIndex": 80838, + "Kind": 3 + }, + { + "EndIndex": 80876, + "Kind": 3 + }, + { + "EndIndex": 81320, + "Kind": 3 + }, + { + "EndIndex": 81344, + "Kind": 3 + }, + { + "EndIndex": 81350, + "Kind": 3 + }, + { + "EndIndex": 81380, + "Kind": 3 + }, + { + "EndIndex": 81524, + "Kind": 3 + }, + { + "EndIndex": 81546, + "Kind": 3 + }, + { + "EndIndex": 81552, + "Kind": 3 + }, + { + "EndIndex": 81589, + "Kind": 3 + }, + { + "EndIndex": 81954, + "Kind": 3 + }, + { + "EndIndex": 81978, + "Kind": 3 + }, + { + "EndIndex": 81984, + "Kind": 3 + }, + { + "EndIndex": 82021, + "Kind": 3 + }, + { + "EndIndex": 82193, + "Kind": 3 + }, + { + "EndIndex": 82218, + "Kind": 3 + }, + { + "EndIndex": 82224, + "Kind": 3 + }, + { + "EndIndex": 82276, + "Kind": 3 + }, + { + "EndIndex": 82562, + "Kind": 3 + }, + { + "EndIndex": 82584, + "Kind": 3 + }, + { + "EndIndex": 82590, + "Kind": 3 + }, + { + "EndIndex": 82619, + "Kind": 3 + }, + { + "EndIndex": 82774, + "Kind": 3 + }, + { + "EndIndex": 82796, + "Kind": 3 + }, + { + "EndIndex": 82802, + "Kind": 3 + }, + { + "EndIndex": 82827, + "Kind": 3 + }, + { + "EndIndex": 82919, + "Kind": 3 + }, + { + "EndIndex": 82941, + "Kind": 3 + }, + { + "EndIndex": 82947, + "Kind": 3 + }, + { + "EndIndex": 82969, + "Kind": 3 + }, + { + "EndIndex": 83156, + "Kind": 3 + }, + { + "EndIndex": 83178, + "Kind": 3 + }, + { + "EndIndex": 83184, + "Kind": 3 + }, + { + "EndIndex": 83217, + "Kind": 3 + }, + { + "EndIndex": 83633, + "Kind": 3 + }, + { + "EndIndex": 83655, + "Kind": 3 + }, + { + "EndIndex": 83661, + "Kind": 3 + }, + { + "EndIndex": 83683, + "Kind": 3 + }, + { + "EndIndex": 83746, + "Kind": 3 + }, + { + "EndIndex": 83768, + "Kind": 3 + }, + { + "EndIndex": 83774, + "Kind": 3 + }, + { + "EndIndex": 83803, + "Kind": 3 + }, + { + "EndIndex": 83929, + "Kind": 3 + }, + { + "EndIndex": 83951, + "Kind": 3 + }, + { + "EndIndex": 83957, + "Kind": 3 + }, + { + "EndIndex": 83959, + "Kind": 3 + }, + { + "EndIndex": 83978, + "Kind": 3 + }, + { + "EndIndex": 84007, + "Kind": 3 + }, + { + "EndIndex": 84037, + "Kind": 3 + }, + { + "EndIndex": 84076, + "Kind": 3 + }, + { + "EndIndex": 84115, + "Kind": 3 + }, + { + "EndIndex": 84129, + "Kind": 3 + }, + { + "EndIndex": 84135, + "Kind": 3 + }, + { + "EndIndex": 84177, + "Kind": 3 + }, + { + "EndIndex": 84191, + "Kind": 3 + }, + { + "EndIndex": 84197, + "Kind": 3 + }, + { + "EndIndex": 84215, + "Kind": 3 + }, + { + "EndIndex": 84248, + "Kind": 3 + }, + { + "EndIndex": 84399, + "Kind": 3 + }, + { + "EndIndex": 84420, + "Kind": 3 + }, + { + "EndIndex": 84426, + "Kind": 3 + }, + { + "EndIndex": 84451, + "Kind": 3 + }, + { + "EndIndex": 84484, + "Kind": 3 + }, + { + "EndIndex": 84515, + "Kind": 3 + }, + { + "EndIndex": 84521, + "Kind": 3 + }, + { + "EndIndex": 84553, + "Kind": 3 + }, + { + "EndIndex": 84619, + "Kind": 3 + }, + { + "EndIndex": 84637, + "Kind": 3 + }, + { + "EndIndex": 84643, + "Kind": 3 + }, + { + "EndIndex": 84668, + "Kind": 3 + }, + { + "EndIndex": 84701, + "Kind": 3 + }, + { + "EndIndex": 84731, + "Kind": 3 + }, + { + "EndIndex": 84737, + "Kind": 3 + }, + { + "EndIndex": 84764, + "Kind": 3 + }, + { + "EndIndex": 84814, + "Kind": 3 + }, + { + "EndIndex": 84844, + "Kind": 3 + }, + { + "EndIndex": 84850, + "Kind": 3 + }, + { + "EndIndex": 84886, + "Kind": 3 + }, + { + "EndIndex": 84935, + "Kind": 3 + }, + { + "EndIndex": 84956, + "Kind": 3 + }, + { + "EndIndex": 84962, + "Kind": 3 + }, + { + "EndIndex": 84980, + "Kind": 3 + }, + { + "EndIndex": 85022, + "Kind": 3 + }, + { + "EndIndex": 85348, + "Kind": 3 + }, + { + "EndIndex": 85370, + "Kind": 3 + }, + { + "EndIndex": 85376, + "Kind": 3 + }, + { + "EndIndex": 85378, + "Kind": 3 + }, + { + "EndIndex": 85414, + "Kind": 3 + }, + { + "EndIndex": 85437, + "Kind": 3 + }, + { + "EndIndex": 85476, + "Kind": 3 + }, + { + "EndIndex": 85499, + "Kind": 3 + }, + { + "EndIndex": 85605, + "Kind": 3 + }, + { + "EndIndex": 85629, + "Kind": 3 + }, + { + "EndIndex": 85663, + "Kind": 3 + }, + { + "EndIndex": 85705, + "Kind": 3 + }, + { + "EndIndex": 85726, + "Kind": 3 + }, + { + "EndIndex": 85732, + "Kind": 3 + }, + { + "EndIndex": 85751, + "Kind": 3 + }, + { + "EndIndex": 85775, + "Kind": 3 + }, + { + "EndIndex": 85838, + "Kind": 3 + }, + { + "EndIndex": 85859, + "Kind": 3 + }, + { + "EndIndex": 85865, + "Kind": 3 + }, + { + "EndIndex": 85904, + "Kind": 3 + }, + { + "EndIndex": 85943, + "Kind": 3 + }, + { + "EndIndex": 85957, + "Kind": 3 + }, + { + "EndIndex": 85963, + "Kind": 3 + }, + { + "EndIndex": 86005, + "Kind": 3 + }, + { + "EndIndex": 86115, + "Kind": 3 + }, + { + "EndIndex": 86129, + "Kind": 3 + }, + { + "EndIndex": 86135, + "Kind": 3 + }, + { + "EndIndex": 86153, + "Kind": 3 + }, + { + "EndIndex": 86186, + "Kind": 3 + }, + { + "EndIndex": 86337, + "Kind": 3 + }, + { + "EndIndex": 86358, + "Kind": 3 + }, + { + "EndIndex": 86364, + "Kind": 3 + }, + { + "EndIndex": 86389, + "Kind": 3 + }, + { + "EndIndex": 86419, + "Kind": 3 + }, + { + "EndIndex": 86438, + "Kind": 3 + }, + { + "EndIndex": 86444, + "Kind": 3 + }, + { + "EndIndex": 86485, + "Kind": 3 + }, + { + "EndIndex": 86534, + "Kind": 3 + }, + { + "EndIndex": 86555, + "Kind": 3 + }, + { + "EndIndex": 86561, + "Kind": 3 + }, + { + "EndIndex": 86579, + "Kind": 3 + }, + { + "EndIndex": 86621, + "Kind": 3 + }, + { + "EndIndex": 86947, + "Kind": 3 + }, + { + "EndIndex": 86969, + "Kind": 3 + }, + { + "EndIndex": 86975, + "Kind": 3 + }, + { + "EndIndex": 86977, + "Kind": 3 + }, + { + "EndIndex": 86998, + "Kind": 3 + }, + { + "EndIndex": 87023, + "Kind": 3 + }, + { + "EndIndex": 87328, + "Kind": 3 + }, + { + "EndIndex": 87343, + "Kind": 3 + }, + { + "EndIndex": 87375, + "Kind": 3 + }, + { + "EndIndex": 87394, + "Kind": 3 + }, + { + "EndIndex": 87400, + "Kind": 3 + }, + { + "EndIndex": 87442, + "Kind": 3 + }, + { + "EndIndex": 87478, + "Kind": 3 + }, + { + "EndIndex": 87492, + "Kind": 3 + }, + { + "EndIndex": 87498, + "Kind": 3 + }, + { + "EndIndex": 87524, + "Kind": 3 + }, + { + "EndIndex": 87539, + "Kind": 3 + }, + { + "EndIndex": 87567, + "Kind": 3 + }, + { + "EndIndex": 87581, + "Kind": 3 + }, + { + "EndIndex": 87587, + "Kind": 3 + }, + { + "EndIndex": 87602, + "Kind": 3 + }, + { + "EndIndex": 87627, + "Kind": 3 + }, + { + "EndIndex": 87652, + "Kind": 3 + }, + { + "EndIndex": 87658, + "Kind": 3 + }, + { + "EndIndex": 87673, + "Kind": 3 + }, + { + "EndIndex": 87702, + "Kind": 3 + }, + { + "EndIndex": 87716, + "Kind": 3 + }, + { + "EndIndex": 87722, + "Kind": 3 + }, + { + "EndIndex": 87741, + "Kind": 3 + }, + { + "EndIndex": 87782, + "Kind": 3 + }, + { + "EndIndex": 87850, + "Kind": 3 + }, + { + "EndIndex": 87877, + "Kind": 3 + }, + { + "EndIndex": 87883, + "Kind": 3 + }, + { + "EndIndex": 87898, + "Kind": 3 + }, + { + "EndIndex": 87926, + "Kind": 3 + }, + { + "EndIndex": 87945, + "Kind": 3 + }, + { + "EndIndex": 87951, + "Kind": 3 + }, + { + "EndIndex": 87993, + "Kind": 3 + }, + { + "EndIndex": 88302, + "Kind": 3 + }, + { + "EndIndex": 88316, + "Kind": 3 + }, + { + "EndIndex": 88322, + "Kind": 3 + }, + { + "EndIndex": 88340, + "Kind": 3 + }, + { + "EndIndex": 88373, + "Kind": 3 + }, + { + "EndIndex": 88524, + "Kind": 3 + }, + { + "EndIndex": 88545, + "Kind": 3 + }, + { + "EndIndex": 88551, + "Kind": 3 + }, + { + "EndIndex": 88566, + "Kind": 3 + }, + { + "EndIndex": 88597, + "Kind": 3 + }, + { + "EndIndex": 88611, + "Kind": 3 + }, + { + "EndIndex": 88617, + "Kind": 3 + }, + { + "EndIndex": 88644, + "Kind": 3 + }, + { + "EndIndex": 88675, + "Kind": 3 + }, + { + "EndIndex": 88700, + "Kind": 3 + }, + { + "EndIndex": 88730, + "Kind": 3 + }, + { + "EndIndex": 88749, + "Kind": 3 + }, + { + "EndIndex": 88755, + "Kind": 3 + }, + { + "EndIndex": 88773, + "Kind": 3 + }, + { + "EndIndex": 88815, + "Kind": 3 + }, + { + "EndIndex": 89141, + "Kind": 3 + }, + { + "EndIndex": 89163, + "Kind": 3 + }, + { + "EndIndex": 89169, + "Kind": 3 + }, + { + "EndIndex": 89171, + "Kind": 3 + }, + { + "EndIndex": 89196, + "Kind": 3 + }, + { + "EndIndex": 89231, + "Kind": 3 + }, + { + "EndIndex": 89273, + "Kind": 3 + }, + { + "EndIndex": 89309, + "Kind": 3 + }, + { + "EndIndex": 89323, + "Kind": 3 + }, + { + "EndIndex": 89329, + "Kind": 3 + }, + { + "EndIndex": 89365, + "Kind": 3 + }, + { + "EndIndex": 89406, + "Kind": 3 + }, + { + "EndIndex": 89474, + "Kind": 3 + }, + { + "EndIndex": 89511, + "Kind": 3 + }, + { + "EndIndex": 89517, + "Kind": 3 + }, + { + "EndIndex": 89556, + "Kind": 3 + }, + { + "EndIndex": 89595, + "Kind": 3 + }, + { + "EndIndex": 89609, + "Kind": 3 + }, + { + "EndIndex": 89615, + "Kind": 3 + }, + { + "EndIndex": 89633, + "Kind": 3 + }, + { + "EndIndex": 89666, + "Kind": 3 + }, + { + "EndIndex": 89817, + "Kind": 3 + }, + { + "EndIndex": 89838, + "Kind": 3 + }, + { + "EndIndex": 89844, + "Kind": 3 + }, + { + "EndIndex": 89881, + "Kind": 3 + }, + { + "EndIndex": 89896, + "Kind": 3 + }, + { + "EndIndex": 89925, + "Kind": 3 + }, + { + "EndIndex": 89939, + "Kind": 3 + }, + { + "EndIndex": 89945, + "Kind": 3 + }, + { + "EndIndex": 89986, + "Kind": 3 + }, + { + "EndIndex": 90013, + "Kind": 3 + }, + { + "EndIndex": 90043, + "Kind": 3 + }, + { + "EndIndex": 90049, + "Kind": 3 + }, + { + "EndIndex": 90074, + "Kind": 3 + }, + { + "EndIndex": 90104, + "Kind": 3 + }, + { + "EndIndex": 90123, + "Kind": 3 + }, + { + "EndIndex": 90129, + "Kind": 3 + }, + { + "EndIndex": 90147, + "Kind": 3 + }, + { + "EndIndex": 90189, + "Kind": 3 + }, + { + "EndIndex": 90515, + "Kind": 3 + }, + { + "EndIndex": 90537, + "Kind": 3 + }, + { + "EndIndex": 90543, + "Kind": 3 + }, + { + "EndIndex": 90574, + "Kind": 3 + }, + { + "EndIndex": 90576, + "Kind": 3 + }, + { + "EndIndex": 90626, + "Kind": 3 + }, + { + "EndIndex": 90669, + "Kind": 3 + }, + { + "EndIndex": 90711, + "Kind": 3 + }, + { + "EndIndex": 90747, + "Kind": 3 + }, + { + "EndIndex": 90761, + "Kind": 3 + }, + { + "EndIndex": 90767, + "Kind": 3 + }, + { + "EndIndex": 90811, + "Kind": 3 + }, + { + "EndIndex": 90841, + "Kind": 3 + }, + { + "EndIndex": 90872, + "Kind": 3 + }, + { + "EndIndex": 90894, + "Kind": 3 + }, + { + "EndIndex": 90900, + "Kind": 3 + }, + { + "EndIndex": 90930, + "Kind": 3 + }, + { + "EndIndex": 90961, + "Kind": 3 + }, + { + "EndIndex": 90983, + "Kind": 3 + }, + { + "EndIndex": 90989, + "Kind": 3 + }, + { + "EndIndex": 91028, + "Kind": 3 + }, + { + "EndIndex": 91067, + "Kind": 3 + }, + { + "EndIndex": 91081, + "Kind": 3 + }, + { + "EndIndex": 91087, + "Kind": 3 + }, + { + "EndIndex": 91117, + "Kind": 3 + }, + { + "EndIndex": 91147, + "Kind": 3 + }, + { + "EndIndex": 91169, + "Kind": 3 + }, + { + "EndIndex": 91175, + "Kind": 3 + }, + { + "EndIndex": 91200, + "Kind": 3 + }, + { + "EndIndex": 91230, + "Kind": 3 + }, + { + "EndIndex": 91248, + "Kind": 3 + }, + { + "EndIndex": 91254, + "Kind": 3 + }, + { + "EndIndex": 91272, + "Kind": 3 + }, + { + "EndIndex": 91305, + "Kind": 3 + }, + { + "EndIndex": 91456, + "Kind": 3 + }, + { + "EndIndex": 91477, + "Kind": 3 + }, + { + "EndIndex": 91483, + "Kind": 3 + }, + { + "EndIndex": 91513, + "Kind": 3 + }, + { + "EndIndex": 91544, + "Kind": 3 + }, + { + "EndIndex": 91566, + "Kind": 3 + }, + { + "EndIndex": 91572, + "Kind": 3 + }, + { + "EndIndex": 91602, + "Kind": 3 + }, + { + "EndIndex": 91632, + "Kind": 3 + }, + { + "EndIndex": 91654, + "Kind": 3 + }, + { + "EndIndex": 91660, + "Kind": 3 + }, + { + "EndIndex": 91705, + "Kind": 3 + }, + { + "EndIndex": 91735, + "Kind": 3 + }, + { + "EndIndex": 91766, + "Kind": 3 + }, + { + "EndIndex": 91788, + "Kind": 3 + }, + { + "EndIndex": 91794, + "Kind": 3 + }, + { + "EndIndex": 91843, + "Kind": 3 + }, + { + "EndIndex": 91870, + "Kind": 3 + }, + { + "EndIndex": 91900, + "Kind": 3 + }, + { + "EndIndex": 91906, + "Kind": 3 + }, + { + "EndIndex": 91931, + "Kind": 3 + }, + { + "EndIndex": 91961, + "Kind": 3 + }, + { + "EndIndex": 91980, + "Kind": 3 + }, + { + "EndIndex": 91986, + "Kind": 3 + }, + { + "EndIndex": 92001, + "Kind": 3 + }, + { + "EndIndex": 92026, + "Kind": 3 + }, + { + "EndIndex": 92040, + "Kind": 3 + }, + { + "EndIndex": 92046, + "Kind": 3 + }, + { + "EndIndex": 92064, + "Kind": 3 + }, + { + "EndIndex": 92106, + "Kind": 3 + }, + { + "EndIndex": 92432, + "Kind": 3 + }, + { + "EndIndex": 92454, + "Kind": 3 + }, + { + "EndIndex": 92460, + "Kind": 3 + }, + { + "EndIndex": 92491, + "Kind": 3 + }, + { + "EndIndex": 92493, + "Kind": 3 + }, + { + "EndIndex": 92543, + "Kind": 3 + }, + { + "EndIndex": 92569, + "Kind": 3 + }, + { + "EndIndex": 92596, + "Kind": 3 + }, + { + "EndIndex": 92620, + "Kind": 3 + }, + { + "EndIndex": 92641, + "Kind": 3 + }, + { + "EndIndex": 92647, + "Kind": 3 + }, + { + "EndIndex": 92686, + "Kind": 3 + }, + { + "EndIndex": 92725, + "Kind": 3 + }, + { + "EndIndex": 92739, + "Kind": 3 + }, + { + "EndIndex": 92745, + "Kind": 3 + }, + { + "EndIndex": 92787, + "Kind": 3 + }, + { + "EndIndex": 92801, + "Kind": 3 + }, + { + "EndIndex": 92807, + "Kind": 3 + }, + { + "EndIndex": 92825, + "Kind": 3 + }, + { + "EndIndex": 92858, + "Kind": 3 + }, + { + "EndIndex": 93009, + "Kind": 3 + }, + { + "EndIndex": 93030, + "Kind": 3 + }, + { + "EndIndex": 93036, + "Kind": 3 + }, + { + "EndIndex": 93061, + "Kind": 3 + }, + { + "EndIndex": 93094, + "Kind": 3 + }, + { + "EndIndex": 93122, + "Kind": 3 + }, + { + "EndIndex": 93128, + "Kind": 3 + }, + { + "EndIndex": 93156, + "Kind": 3 + }, + { + "EndIndex": 93181, + "Kind": 3 + }, + { + "EndIndex": 93214, + "Kind": 3 + }, + { + "EndIndex": 93228, + "Kind": 3 + }, + { + "EndIndex": 93234, + "Kind": 3 + }, + { + "EndIndex": 93266, + "Kind": 3 + }, + { + "EndIndex": 93291, + "Kind": 3 + }, + { + "EndIndex": 93321, + "Kind": 3 + }, + { + "EndIndex": 93340, + "Kind": 3 + }, + { + "EndIndex": 93346, + "Kind": 3 + }, + { + "EndIndex": 93364, + "Kind": 3 + }, + { + "EndIndex": 93406, + "Kind": 3 + }, + { + "EndIndex": 93732, + "Kind": 3 + }, + { + "EndIndex": 93754, + "Kind": 3 + }, + { + "EndIndex": 93760, + "Kind": 3 + }, + { + "EndIndex": 93782, + "Kind": 3 + }, + { + "EndIndex": 93842, + "Kind": 3 + }, + { + "EndIndex": 93863, + "Kind": 3 + }, + { + "EndIndex": 93869, + "Kind": 3 + }, + { + "EndIndex": 93884, + "Kind": 3 + }, + { + "EndIndex": 93908, + "Kind": 3 + }, + { + "EndIndex": 93922, + "Kind": 3 + }, + { + "EndIndex": 93928, + "Kind": 3 + }, + { + "EndIndex": 93943, + "Kind": 3 + }, + { + "EndIndex": 93968, + "Kind": 3 + }, + { + "EndIndex": 93982, + "Kind": 3 + }, + { + "EndIndex": 93988, + "Kind": 3 + }, + { + "EndIndex": 94003, + "Kind": 3 + }, + { + "EndIndex": 94030, + "Kind": 3 + }, + { + "EndIndex": 94044, + "Kind": 3 + }, + { + "EndIndex": 94050, + "Kind": 3 + }, + { + "EndIndex": 94065, + "Kind": 3 + }, + { + "EndIndex": 94094, + "Kind": 3 + }, + { + "EndIndex": 94150, + "Kind": 3 + }, + { + "EndIndex": 94164, + "Kind": 3 + }, + { + "EndIndex": 94170, + "Kind": 3 + }, + { + "EndIndex": 94198, + "Kind": 3 + }, + { + "EndIndex": 94300, + "Kind": 3 + }, + { + "EndIndex": 94332, + "Kind": 3 + }, + { + "EndIndex": 94338, + "Kind": 3 + }, + { + "EndIndex": 94394, + "Kind": 3 + }, + { + "EndIndex": 94511, + "Kind": 3 + }, + { + "EndIndex": 94532, + "Kind": 3 + }, + { + "EndIndex": 94538, + "Kind": 3 + }, + { + "EndIndex": 94540, + "Kind": 3 + }, + { + "EndIndex": 94567, + "Kind": 3 + }, + { + "EndIndex": 94592, + "Kind": 3 + }, + { + "EndIndex": 95387, + "Kind": 3 + }, + { + "EndIndex": 95413, + "Kind": 3 + }, + { + "EndIndex": 95450, + "Kind": 3 + }, + { + "EndIndex": 95494, + "Kind": 3 + }, + { + "EndIndex": 95515, + "Kind": 3 + }, + { + "EndIndex": 95521, + "Kind": 3 + }, + { + "EndIndex": 95562, + "Kind": 3 + }, + { + "EndIndex": 95630, + "Kind": 3 + }, + { + "EndIndex": 95657, + "Kind": 3 + }, + { + "EndIndex": 95663, + "Kind": 3 + }, + { + "EndIndex": 95702, + "Kind": 3 + }, + { + "EndIndex": 95741, + "Kind": 3 + }, + { + "EndIndex": 95755, + "Kind": 3 + }, + { + "EndIndex": 95761, + "Kind": 3 + }, + { + "EndIndex": 95803, + "Kind": 3 + }, + { + "EndIndex": 96602, + "Kind": 3 + }, + { + "EndIndex": 96616, + "Kind": 3 + }, + { + "EndIndex": 96622, + "Kind": 3 + }, + { + "EndIndex": 96640, + "Kind": 3 + }, + { + "EndIndex": 96673, + "Kind": 3 + }, + { + "EndIndex": 96824, + "Kind": 3 + }, + { + "EndIndex": 96845, + "Kind": 3 + }, + { + "EndIndex": 96851, + "Kind": 3 + }, + { + "EndIndex": 96866, + "Kind": 3 + }, + { + "EndIndex": 96903, + "Kind": 3 + }, + { + "EndIndex": 96917, + "Kind": 3 + }, + { + "EndIndex": 96923, + "Kind": 3 + }, + { + "EndIndex": 96964, + "Kind": 3 + }, + { + "EndIndex": 97014, + "Kind": 3 + }, + { + "EndIndex": 97035, + "Kind": 3 + }, + { + "EndIndex": 97041, + "Kind": 3 + }, + { + "EndIndex": 97059, + "Kind": 3 + }, + { + "EndIndex": 97101, + "Kind": 3 + }, + { + "EndIndex": 97427, + "Kind": 3 + }, + { + "EndIndex": 97449, + "Kind": 3 + }, + { + "EndIndex": 97455, + "Kind": 3 + }, + { + "EndIndex": 97485, + "Kind": 3 + }, + { + "EndIndex": 97544, + "Kind": 3 + }, + { + "EndIndex": 97565, + "Kind": 3 + }, + { + "EndIndex": 97571, + "Kind": 3 + }, + { + "EndIndex": 97586, + "Kind": 3 + }, + { + "EndIndex": 97607, + "Kind": 3 + }, + { + "EndIndex": 97621, + "Kind": 3 + }, + { + "EndIndex": 97627, + "Kind": 3 + }, + { + "EndIndex": 97642, + "Kind": 3 + }, + { + "EndIndex": 97663, + "Kind": 3 + }, + { + "EndIndex": 97677, + "Kind": 3 + }, + { + "EndIndex": 97683, + "Kind": 3 + }, + { + "EndIndex": 97698, + "Kind": 3 + }, + { + "EndIndex": 97719, + "Kind": 3 + }, + { + "EndIndex": 97733, + "Kind": 3 + }, + { + "EndIndex": 97739, + "Kind": 3 + }, + { + "EndIndex": 97768, + "Kind": 3 + }, + { + "EndIndex": 97826, + "Kind": 3 + }, + { + "EndIndex": 97847, + "Kind": 3 + }, + { + "EndIndex": 97853, + "Kind": 3 + }, + { + "EndIndex": 97882, + "Kind": 3 + }, + { + "EndIndex": 97940, + "Kind": 3 + }, + { + "EndIndex": 97961, + "Kind": 3 + }, + { + "EndIndex": 97967, + "Kind": 3 + }, + { + "EndIndex": 97969, + "Kind": 3 + }, + { + "EndIndex": 97994, + "Kind": 3 + }, + { + "EndIndex": 98022, + "Kind": 3 + }, + { + "EndIndex": 98718, + "Kind": 3 + }, + { + "EndIndex": 98747, + "Kind": 3 + }, + { + "EndIndex": 98766, + "Kind": 3 + }, + { + "EndIndex": 98781, + "Kind": 3 + }, + { + "EndIndex": 98806, + "Kind": 3 + }, + { + "EndIndex": 98820, + "Kind": 3 + }, + { + "EndIndex": 98826, + "Kind": 3 + }, + { + "EndIndex": 98867, + "Kind": 3 + }, + { + "EndIndex": 98935, + "Kind": 3 + }, + { + "EndIndex": 98965, + "Kind": 3 + }, + { + "EndIndex": 98971, + "Kind": 3 + }, + { + "EndIndex": 99006, + "Kind": 3 + }, + { + "EndIndex": 99706, + "Kind": 3 + }, + { + "EndIndex": 99720, + "Kind": 3 + }, + { + "EndIndex": 99726, + "Kind": 3 + }, + { + "EndIndex": 99744, + "Kind": 3 + }, + { + "EndIndex": 99777, + "Kind": 3 + }, + { + "EndIndex": 99928, + "Kind": 3 + }, + { + "EndIndex": 99949, + "Kind": 3 + }, + { + "EndIndex": 99955, + "Kind": 3 + }, + { + "EndIndex": 99970, + "Kind": 3 + }, + { + "EndIndex": 100007, + "Kind": 3 + }, + { + "EndIndex": 100021, + "Kind": 3 + }, + { + "EndIndex": 100027, + "Kind": 3 + }, + { + "EndIndex": 100045, + "Kind": 3 + }, + { + "EndIndex": 100087, + "Kind": 3 + }, + { + "EndIndex": 100413, + "Kind": 3 + }, + { + "EndIndex": 100435, + "Kind": 3 + }, + { + "EndIndex": 100441, + "Kind": 3 + }, + { + "EndIndex": 100443, + "Kind": 3 + }, + { + "EndIndex": 100474, + "Kind": 3 + }, + { + "EndIndex": 100503, + "Kind": 3 + }, + { + "EndIndex": 101055, + "Kind": 3 + }, + { + "EndIndex": 101085, + "Kind": 3 + }, + { + "EndIndex": 101104, + "Kind": 3 + }, + { + "EndIndex": 101119, + "Kind": 3 + }, + { + "EndIndex": 101144, + "Kind": 3 + }, + { + "EndIndex": 101158, + "Kind": 3 + }, + { + "EndIndex": 101164, + "Kind": 3 + }, + { + "EndIndex": 101205, + "Kind": 3 + }, + { + "EndIndex": 101273, + "Kind": 3 + }, + { + "EndIndex": 101304, + "Kind": 3 + }, + { + "EndIndex": 101310, + "Kind": 3 + }, + { + "EndIndex": 101345, + "Kind": 3 + }, + { + "EndIndex": 101901, + "Kind": 3 + }, + { + "EndIndex": 101915, + "Kind": 3 + }, + { + "EndIndex": 101921, + "Kind": 3 + }, + { + "EndIndex": 101939, + "Kind": 3 + }, + { + "EndIndex": 101972, + "Kind": 3 + }, + { + "EndIndex": 102123, + "Kind": 3 + }, + { + "EndIndex": 102144, + "Kind": 3 + }, + { + "EndIndex": 102150, + "Kind": 3 + }, + { + "EndIndex": 102165, + "Kind": 3 + }, + { + "EndIndex": 102202, + "Kind": 3 + }, + { + "EndIndex": 102216, + "Kind": 3 + }, + { + "EndIndex": 102222, + "Kind": 3 + }, + { + "EndIndex": 102240, + "Kind": 3 + }, + { + "EndIndex": 102282, + "Kind": 3 + }, + { + "EndIndex": 102608, + "Kind": 3 + }, + { + "EndIndex": 102630, + "Kind": 3 + }, + { + "EndIndex": 102636, + "Kind": 3 + }, + { + "EndIndex": 102638, + "Kind": 3 + }, + { + "EndIndex": 102671, + "Kind": 3 + }, + { + "EndIndex": 102696, + "Kind": 3 + }, + { + "EndIndex": 102722, + "Kind": 3 + }, + { + "EndIndex": 102761, + "Kind": 3 + }, + { + "EndIndex": 102800, + "Kind": 3 + }, + { + "EndIndex": 102814, + "Kind": 3 + }, + { + "EndIndex": 102820, + "Kind": 3 + }, + { + "EndIndex": 102862, + "Kind": 3 + }, + { + "EndIndex": 102876, + "Kind": 3 + }, + { + "EndIndex": 102882, + "Kind": 3 + }, + { + "EndIndex": 102900, + "Kind": 3 + }, + { + "EndIndex": 102933, + "Kind": 3 + }, + { + "EndIndex": 103084, + "Kind": 3 + }, + { + "EndIndex": 103105, + "Kind": 3 + }, + { + "EndIndex": 103111, + "Kind": 3 + }, + { + "EndIndex": 103138, + "Kind": 3 + }, + { + "EndIndex": 103168, + "Kind": 3 + }, + { + "EndIndex": 103174, + "Kind": 3 + }, + { + "EndIndex": 103199, + "Kind": 3 + }, + { + "EndIndex": 103229, + "Kind": 3 + }, + { + "EndIndex": 103248, + "Kind": 3 + }, + { + "EndIndex": 103254, + "Kind": 3 + }, + { + "EndIndex": 103272, + "Kind": 3 + }, + { + "EndIndex": 103314, + "Kind": 3 + }, + { + "EndIndex": 103640, + "Kind": 3 + }, + { + "EndIndex": 103662, + "Kind": 3 + }, + { + "EndIndex": 103668, + "Kind": 3 + }, + { + "EndIndex": 103670, + "Kind": 3 + }, + { + "EndIndex": 103695, + "Kind": 3 + }, + { + "EndIndex": 103726, + "Kind": 3 + }, + { + "EndIndex": 103758, + "Kind": 3 + }, + { + "EndIndex": 103797, + "Kind": 3 + }, + { + "EndIndex": 103836, + "Kind": 3 + }, + { + "EndIndex": 103850, + "Kind": 3 + }, + { + "EndIndex": 103856, + "Kind": 3 + }, + { + "EndIndex": 103898, + "Kind": 3 + }, + { + "EndIndex": 103912, + "Kind": 3 + }, + { + "EndIndex": 103918, + "Kind": 3 + }, + { + "EndIndex": 103936, + "Kind": 3 + }, + { + "EndIndex": 103969, + "Kind": 3 + }, + { + "EndIndex": 104120, + "Kind": 3 + }, + { + "EndIndex": 104141, + "Kind": 3 + }, + { + "EndIndex": 104147, + "Kind": 3 + }, + { + "EndIndex": 104172, + "Kind": 3 + }, + { + "EndIndex": 104205, + "Kind": 3 + }, + { + "EndIndex": 104238, + "Kind": 3 + }, + { + "EndIndex": 104244, + "Kind": 3 + }, + { + "EndIndex": 104276, + "Kind": 3 + }, + { + "EndIndex": 104342, + "Kind": 3 + }, + { + "EndIndex": 104360, + "Kind": 3 + }, + { + "EndIndex": 104366, + "Kind": 3 + }, + { + "EndIndex": 104391, + "Kind": 3 + }, + { + "EndIndex": 104424, + "Kind": 3 + }, + { + "EndIndex": 104438, + "Kind": 3 + }, + { + "EndIndex": 104444, + "Kind": 3 + }, + { + "EndIndex": 104471, + "Kind": 3 + }, + { + "EndIndex": 104521, + "Kind": 3 + }, + { + "EndIndex": 104551, + "Kind": 3 + }, + { + "EndIndex": 104557, + "Kind": 3 + }, + { + "EndIndex": 104593, + "Kind": 3 + }, + { + "EndIndex": 104642, + "Kind": 3 + }, + { + "EndIndex": 104663, + "Kind": 3 + }, + { + "EndIndex": 104669, + "Kind": 3 + }, + { + "EndIndex": 104687, + "Kind": 3 + }, + { + "EndIndex": 104729, + "Kind": 3 + }, + { + "EndIndex": 105055, + "Kind": 3 + }, + { + "EndIndex": 105077, + "Kind": 3 + }, + { + "EndIndex": 105083, + "Kind": 3 + }, + { + "EndIndex": 105085, + "Kind": 3 + }, + { + "EndIndex": 105121, + "Kind": 3 + }, + { + "EndIndex": 105151, + "Kind": 3 + }, + { + "EndIndex": 105182, + "Kind": 3 + }, + { + "EndIndex": 105221, + "Kind": 3 + }, + { + "EndIndex": 105260, + "Kind": 3 + }, + { + "EndIndex": 105274, + "Kind": 3 + }, + { + "EndIndex": 105280, + "Kind": 3 + }, + { + "EndIndex": 105322, + "Kind": 3 + }, + { + "EndIndex": 105336, + "Kind": 3 + }, + { + "EndIndex": 105342, + "Kind": 3 + }, + { + "EndIndex": 105360, + "Kind": 3 + }, + { + "EndIndex": 105393, + "Kind": 3 + }, + { + "EndIndex": 105544, + "Kind": 3 + }, + { + "EndIndex": 105565, + "Kind": 3 + }, + { + "EndIndex": 105571, + "Kind": 3 + }, + { + "EndIndex": 105596, + "Kind": 3 + }, + { + "EndIndex": 105629, + "Kind": 3 + }, + { + "EndIndex": 105661, + "Kind": 3 + }, + { + "EndIndex": 105667, + "Kind": 3 + }, + { + "EndIndex": 105699, + "Kind": 3 + }, + { + "EndIndex": 105765, + "Kind": 3 + }, + { + "EndIndex": 105783, + "Kind": 3 + }, + { + "EndIndex": 105789, + "Kind": 3 + }, + { + "EndIndex": 105814, + "Kind": 3 + }, + { + "EndIndex": 105847, + "Kind": 3 + }, + { + "EndIndex": 105861, + "Kind": 3 + }, + { + "EndIndex": 105867, + "Kind": 3 + }, + { + "EndIndex": 105894, + "Kind": 3 + }, + { + "EndIndex": 105944, + "Kind": 3 + }, + { + "EndIndex": 105974, + "Kind": 3 + }, + { + "EndIndex": 105980, + "Kind": 3 + }, + { + "EndIndex": 106016, + "Kind": 3 + }, + { + "EndIndex": 106065, + "Kind": 3 + }, + { + "EndIndex": 106086, + "Kind": 3 + }, + { + "EndIndex": 106092, + "Kind": 3 + }, + { + "EndIndex": 106110, + "Kind": 3 + }, + { + "EndIndex": 106152, + "Kind": 3 + }, + { + "EndIndex": 106478, + "Kind": 3 + }, + { + "EndIndex": 106500, + "Kind": 3 + }, + { + "EndIndex": 106506, + "Kind": 3 + }, + { + "EndIndex": 106508, + "Kind": 3 + }, + { + "EndIndex": 106542, + "Kind": 3 + }, + { + "EndIndex": 106568, + "Kind": 3 + }, + { + "EndIndex": 106599, + "Kind": 3 + }, + { + "EndIndex": 106629, + "Kind": 3 + }, + { + "EndIndex": 106657, + "Kind": 3 + }, + { + "EndIndex": 106663, + "Kind": 3 + }, + { + "EndIndex": 106690, + "Kind": 3 + }, + { + "EndIndex": 106724, + "Kind": 3 + }, + { + "EndIndex": 106755, + "Kind": 3 + }, + { + "EndIndex": 106777, + "Kind": 3 + }, + { + "EndIndex": 106783, + "Kind": 3 + }, + { + "EndIndex": 106813, + "Kind": 3 + }, + { + "EndIndex": 106844, + "Kind": 3 + }, + { + "EndIndex": 106866, + "Kind": 3 + }, + { + "EndIndex": 106872, + "Kind": 3 + }, + { + "EndIndex": 106902, + "Kind": 3 + }, + { + "EndIndex": 106933, + "Kind": 3 + }, + { + "EndIndex": 106955, + "Kind": 3 + }, + { + "EndIndex": 106961, + "Kind": 3 + }, + { + "EndIndex": 107000, + "Kind": 3 + }, + { + "EndIndex": 107039, + "Kind": 3 + }, + { + "EndIndex": 107053, + "Kind": 3 + }, + { + "EndIndex": 107059, + "Kind": 3 + }, + { + "EndIndex": 107089, + "Kind": 3 + }, + { + "EndIndex": 107119, + "Kind": 3 + }, + { + "EndIndex": 107141, + "Kind": 3 + }, + { + "EndIndex": 107147, + "Kind": 3 + }, + { + "EndIndex": 107168, + "Kind": 3 + }, + { + "EndIndex": 107210, + "Kind": 3 + }, + { + "EndIndex": 107224, + "Kind": 3 + }, + { + "EndIndex": 107230, + "Kind": 3 + }, + { + "EndIndex": 107248, + "Kind": 3 + }, + { + "EndIndex": 107281, + "Kind": 3 + }, + { + "EndIndex": 107432, + "Kind": 3 + }, + { + "EndIndex": 107453, + "Kind": 3 + }, + { + "EndIndex": 107459, + "Kind": 3 + }, + { + "EndIndex": 107484, + "Kind": 3 + }, + { + "EndIndex": 107517, + "Kind": 3 + }, + { + "EndIndex": 107545, + "Kind": 3 + }, + { + "EndIndex": 107551, + "Kind": 3 + }, + { + "EndIndex": 107581, + "Kind": 3 + }, + { + "EndIndex": 107612, + "Kind": 3 + }, + { + "EndIndex": 107634, + "Kind": 3 + }, + { + "EndIndex": 107640, + "Kind": 3 + }, + { + "EndIndex": 107664, + "Kind": 3 + }, + { + "EndIndex": 107693, + "Kind": 3 + }, + { + "EndIndex": 107711, + "Kind": 3 + }, + { + "EndIndex": 107717, + "Kind": 3 + }, + { + "EndIndex": 107747, + "Kind": 3 + }, + { + "EndIndex": 107777, + "Kind": 3 + }, + { + "EndIndex": 107799, + "Kind": 3 + }, + { + "EndIndex": 107805, + "Kind": 3 + }, + { + "EndIndex": 107835, + "Kind": 3 + }, + { + "EndIndex": 107866, + "Kind": 3 + }, + { + "EndIndex": 107888, + "Kind": 3 + }, + { + "EndIndex": 107894, + "Kind": 3 + }, + { + "EndIndex": 107924, + "Kind": 3 + }, + { + "EndIndex": 107954, + "Kind": 3 + }, + { + "EndIndex": 107982, + "Kind": 3 + }, + { + "EndIndex": 107988, + "Kind": 3 + }, + { + "EndIndex": 108020, + "Kind": 3 + }, + { + "EndIndex": 108050, + "Kind": 3 + }, + { + "EndIndex": 108078, + "Kind": 3 + }, + { + "EndIndex": 108084, + "Kind": 3 + }, + { + "EndIndex": 108109, + "Kind": 3 + }, + { + "EndIndex": 108139, + "Kind": 3 + }, + { + "EndIndex": 108158, + "Kind": 3 + }, + { + "EndIndex": 108164, + "Kind": 3 + }, + { + "EndIndex": 108195, + "Kind": 3 + }, + { + "EndIndex": 108225, + "Kind": 3 + }, + { + "EndIndex": 108253, + "Kind": 3 + }, + { + "EndIndex": 108259, + "Kind": 3 + }, + { + "EndIndex": 108291, + "Kind": 3 + }, + { + "EndIndex": 108321, + "Kind": 3 + }, + { + "EndIndex": 108349, + "Kind": 3 + }, + { + "EndIndex": 108355, + "Kind": 3 + }, + { + "EndIndex": 108387, + "Kind": 3 + }, + { + "EndIndex": 108417, + "Kind": 3 + }, + { + "EndIndex": 108445, + "Kind": 3 + }, + { + "EndIndex": 108451, + "Kind": 3 + }, + { + "EndIndex": 108482, + "Kind": 3 + }, + { + "EndIndex": 108512, + "Kind": 3 + }, + { + "EndIndex": 108540, + "Kind": 3 + }, + { + "EndIndex": 108546, + "Kind": 3 + }, + { + "EndIndex": 108564, + "Kind": 3 + }, + { + "EndIndex": 108606, + "Kind": 3 + }, + { + "EndIndex": 108932, + "Kind": 3 + }, + { + "EndIndex": 108954, + "Kind": 3 + }, + { + "EndIndex": 108960, + "Kind": 3 + }, + { + "EndIndex": 108991, + "Kind": 3 + }, + { + "EndIndex": 109021, + "Kind": 3 + }, + { + "EndIndex": 109049, + "Kind": 3 + }, + { + "EndIndex": 109055, + "Kind": 3 + }, + { + "EndIndex": 109089, + "Kind": 3 + }, + { + "EndIndex": 109173, + "Kind": 3 + }, + { + "EndIndex": 109195, + "Kind": 3 + }, + { + "EndIndex": 109201, + "Kind": 3 + }, + { + "EndIndex": 109203, + "Kind": 3 + }, + { + "EndIndex": 109229, + "Kind": 3 + }, + { + "EndIndex": 109257, + "Kind": 3 + }, + { + "EndIndex": 109286, + "Kind": 3 + }, + { + "EndIndex": 109325, + "Kind": 3 + }, + { + "EndIndex": 109364, + "Kind": 3 + }, + { + "EndIndex": 109378, + "Kind": 3 + }, + { + "EndIndex": 109384, + "Kind": 3 + }, + { + "EndIndex": 109426, + "Kind": 3 + }, + { + "EndIndex": 109440, + "Kind": 3 + }, + { + "EndIndex": 109446, + "Kind": 3 + }, + { + "EndIndex": 109464, + "Kind": 3 + }, + { + "EndIndex": 109497, + "Kind": 3 + }, + { + "EndIndex": 109648, + "Kind": 3 + }, + { + "EndIndex": 109669, + "Kind": 3 + }, + { + "EndIndex": 109675, + "Kind": 3 + }, + { + "EndIndex": 109700, + "Kind": 3 + }, + { + "EndIndex": 109733, + "Kind": 3 + }, + { + "EndIndex": 109763, + "Kind": 3 + }, + { + "EndIndex": 109769, + "Kind": 3 + }, + { + "EndIndex": 109793, + "Kind": 3 + }, + { + "EndIndex": 109822, + "Kind": 3 + }, + { + "EndIndex": 109840, + "Kind": 3 + }, + { + "EndIndex": 109846, + "Kind": 3 + }, + { + "EndIndex": 109871, + "Kind": 3 + }, + { + "EndIndex": 109901, + "Kind": 3 + }, + { + "EndIndex": 109920, + "Kind": 3 + }, + { + "EndIndex": 109926, + "Kind": 3 + }, + { + "EndIndex": 109944, + "Kind": 3 + }, + { + "EndIndex": 109986, + "Kind": 3 + }, + { + "EndIndex": 110312, + "Kind": 3 + }, + { + "EndIndex": 110334, + "Kind": 3 + }, + { + "EndIndex": 110340, + "Kind": 3 + }, + { + "EndIndex": 110342, + "Kind": 3 + }, + { + "EndIndex": 110372, + "Kind": 3 + }, + { + "EndIndex": 110399, + "Kind": 3 + }, + { + "EndIndex": 110430, + "Kind": 3 + }, + { + "EndIndex": 110460, + "Kind": 3 + }, + { + "EndIndex": 110489, + "Kind": 3 + }, + { + "EndIndex": 110495, + "Kind": 3 + }, + { + "EndIndex": 110523, + "Kind": 3 + }, + { + "EndIndex": 110557, + "Kind": 3 + }, + { + "EndIndex": 110588, + "Kind": 3 + }, + { + "EndIndex": 110610, + "Kind": 3 + }, + { + "EndIndex": 110616, + "Kind": 3 + }, + { + "EndIndex": 110646, + "Kind": 3 + }, + { + "EndIndex": 110677, + "Kind": 3 + }, + { + "EndIndex": 110699, + "Kind": 3 + }, + { + "EndIndex": 110705, + "Kind": 3 + }, + { + "EndIndex": 110735, + "Kind": 3 + }, + { + "EndIndex": 110766, + "Kind": 3 + }, + { + "EndIndex": 110788, + "Kind": 3 + }, + { + "EndIndex": 110794, + "Kind": 3 + }, + { + "EndIndex": 110833, + "Kind": 3 + }, + { + "EndIndex": 110872, + "Kind": 3 + }, + { + "EndIndex": 110886, + "Kind": 3 + }, + { + "EndIndex": 110892, + "Kind": 3 + }, + { + "EndIndex": 110922, + "Kind": 3 + }, + { + "EndIndex": 110952, + "Kind": 3 + }, + { + "EndIndex": 110974, + "Kind": 3 + }, + { + "EndIndex": 110980, + "Kind": 3 + }, + { + "EndIndex": 111001, + "Kind": 3 + }, + { + "EndIndex": 111043, + "Kind": 3 + }, + { + "EndIndex": 111057, + "Kind": 3 + }, + { + "EndIndex": 111063, + "Kind": 3 + }, + { + "EndIndex": 111081, + "Kind": 3 + }, + { + "EndIndex": 111114, + "Kind": 3 + }, + { + "EndIndex": 111265, + "Kind": 3 + }, + { + "EndIndex": 111286, + "Kind": 3 + }, + { + "EndIndex": 111292, + "Kind": 3 + }, + { + "EndIndex": 111317, + "Kind": 3 + }, + { + "EndIndex": 111350, + "Kind": 3 + }, + { + "EndIndex": 111379, + "Kind": 3 + }, + { + "EndIndex": 111385, + "Kind": 3 + }, + { + "EndIndex": 111415, + "Kind": 3 + }, + { + "EndIndex": 111446, + "Kind": 3 + }, + { + "EndIndex": 111468, + "Kind": 3 + }, + { + "EndIndex": 111474, + "Kind": 3 + }, + { + "EndIndex": 111498, + "Kind": 3 + }, + { + "EndIndex": 111527, + "Kind": 3 + }, + { + "EndIndex": 111545, + "Kind": 3 + }, + { + "EndIndex": 111551, + "Kind": 3 + }, + { + "EndIndex": 111581, + "Kind": 3 + }, + { + "EndIndex": 111611, + "Kind": 3 + }, + { + "EndIndex": 111633, + "Kind": 3 + }, + { + "EndIndex": 111639, + "Kind": 3 + }, + { + "EndIndex": 111669, + "Kind": 3 + }, + { + "EndIndex": 111700, + "Kind": 3 + }, + { + "EndIndex": 111722, + "Kind": 3 + }, + { + "EndIndex": 111728, + "Kind": 3 + }, + { + "EndIndex": 111758, + "Kind": 3 + }, + { + "EndIndex": 111788, + "Kind": 3 + }, + { + "EndIndex": 111817, + "Kind": 3 + }, + { + "EndIndex": 111823, + "Kind": 3 + }, + { + "EndIndex": 111855, + "Kind": 3 + }, + { + "EndIndex": 111885, + "Kind": 3 + }, + { + "EndIndex": 111914, + "Kind": 3 + }, + { + "EndIndex": 111920, + "Kind": 3 + }, + { + "EndIndex": 111945, + "Kind": 3 + }, + { + "EndIndex": 111975, + "Kind": 3 + }, + { + "EndIndex": 111994, + "Kind": 3 + }, + { + "EndIndex": 112000, + "Kind": 3 + }, + { + "EndIndex": 112031, + "Kind": 3 + }, + { + "EndIndex": 112061, + "Kind": 3 + }, + { + "EndIndex": 112090, + "Kind": 3 + }, + { + "EndIndex": 112096, + "Kind": 3 + }, + { + "EndIndex": 112128, + "Kind": 3 + }, + { + "EndIndex": 112158, + "Kind": 3 + }, + { + "EndIndex": 112187, + "Kind": 3 + }, + { + "EndIndex": 112193, + "Kind": 3 + }, + { + "EndIndex": 112225, + "Kind": 3 + }, + { + "EndIndex": 112255, + "Kind": 3 + }, + { + "EndIndex": 112284, + "Kind": 3 + }, + { + "EndIndex": 112290, + "Kind": 3 + }, + { + "EndIndex": 112321, + "Kind": 3 + }, + { + "EndIndex": 112351, + "Kind": 3 + }, + { + "EndIndex": 112380, + "Kind": 3 + }, + { + "EndIndex": 112386, + "Kind": 3 + }, + { + "EndIndex": 112404, + "Kind": 3 + }, + { + "EndIndex": 112446, + "Kind": 3 + }, + { + "EndIndex": 112772, + "Kind": 3 + }, + { + "EndIndex": 112794, + "Kind": 3 + }, + { + "EndIndex": 112800, + "Kind": 3 + }, + { + "EndIndex": 112831, + "Kind": 3 + }, + { + "EndIndex": 112861, + "Kind": 3 + }, + { + "EndIndex": 112890, + "Kind": 3 + }, + { + "EndIndex": 112896, + "Kind": 3 + }, + { + "EndIndex": 112930, + "Kind": 3 + }, + { + "EndIndex": 113014, + "Kind": 3 + }, + { + "EndIndex": 113036, + "Kind": 3 + }, + { + "EndIndex": 113042, + "Kind": 3 + }, + { + "EndIndex": 113044, + "Kind": 3 + }, + { + "EndIndex": 113072, + "Kind": 3 + }, + { + "EndIndex": 113101, + "Kind": 3 + }, + { + "EndIndex": 113131, + "Kind": 3 + }, + { + "EndIndex": 113170, + "Kind": 3 + }, + { + "EndIndex": 113209, + "Kind": 3 + }, + { + "EndIndex": 113223, + "Kind": 3 + }, + { + "EndIndex": 113229, + "Kind": 3 + }, + { + "EndIndex": 113271, + "Kind": 3 + }, + { + "EndIndex": 113285, + "Kind": 3 + }, + { + "EndIndex": 113291, + "Kind": 3 + }, + { + "EndIndex": 113309, + "Kind": 3 + }, + { + "EndIndex": 113342, + "Kind": 3 + }, + { + "EndIndex": 113493, + "Kind": 3 + }, + { + "EndIndex": 113514, + "Kind": 3 + }, + { + "EndIndex": 113520, + "Kind": 3 + }, + { + "EndIndex": 113545, + "Kind": 3 + }, + { + "EndIndex": 113578, + "Kind": 3 + }, + { + "EndIndex": 113609, + "Kind": 3 + }, + { + "EndIndex": 113615, + "Kind": 3 + }, + { + "EndIndex": 113647, + "Kind": 3 + }, + { + "EndIndex": 113713, + "Kind": 3 + }, + { + "EndIndex": 113731, + "Kind": 3 + }, + { + "EndIndex": 113737, + "Kind": 3 + }, + { + "EndIndex": 113762, + "Kind": 3 + }, + { + "EndIndex": 113795, + "Kind": 3 + }, + { + "EndIndex": 113809, + "Kind": 3 + }, + { + "EndIndex": 113815, + "Kind": 3 + }, + { + "EndIndex": 113842, + "Kind": 3 + }, + { + "EndIndex": 113892, + "Kind": 3 + }, + { + "EndIndex": 113922, + "Kind": 3 + }, + { + "EndIndex": 113928, + "Kind": 3 + }, + { + "EndIndex": 113946, + "Kind": 3 + }, + { + "EndIndex": 113988, + "Kind": 3 + }, + { + "EndIndex": 114314, + "Kind": 3 + }, + { + "EndIndex": 114336, + "Kind": 3 + }, + { + "EndIndex": 114342, + "Kind": 3 + }, + { + "EndIndex": 114344, + "Kind": 3 + }, + { + "EndIndex": 114376, + "Kind": 3 + }, + { + "EndIndex": 114410, + "Kind": 3 + }, + { + "EndIndex": 114445, + "Kind": 3 + }, + { + "EndIndex": 114484, + "Kind": 3 + }, + { + "EndIndex": 114523, + "Kind": 3 + }, + { + "EndIndex": 114537, + "Kind": 3 + }, + { + "EndIndex": 114543, + "Kind": 3 + }, + { + "EndIndex": 114585, + "Kind": 3 + }, + { + "EndIndex": 114599, + "Kind": 3 + }, + { + "EndIndex": 114605, + "Kind": 3 + }, + { + "EndIndex": 114623, + "Kind": 3 + }, + { + "EndIndex": 114656, + "Kind": 3 + }, + { + "EndIndex": 114807, + "Kind": 3 + }, + { + "EndIndex": 114828, + "Kind": 3 + }, + { + "EndIndex": 114834, + "Kind": 3 + }, + { + "EndIndex": 114859, + "Kind": 3 + }, + { + "EndIndex": 114892, + "Kind": 3 + }, + { + "EndIndex": 114928, + "Kind": 3 + }, + { + "EndIndex": 114934, + "Kind": 3 + }, + { + "EndIndex": 114959, + "Kind": 3 + }, + { + "EndIndex": 114992, + "Kind": 3 + }, + { + "EndIndex": 115006, + "Kind": 3 + }, + { + "EndIndex": 115012, + "Kind": 3 + }, + { + "EndIndex": 115039, + "Kind": 3 + }, + { + "EndIndex": 115089, + "Kind": 3 + }, + { + "EndIndex": 115119, + "Kind": 3 + }, + { + "EndIndex": 115125, + "Kind": 3 + }, + { + "EndIndex": 115143, + "Kind": 3 + }, + { + "EndIndex": 115185, + "Kind": 3 + }, + { + "EndIndex": 115511, + "Kind": 3 + }, + { + "EndIndex": 115533, + "Kind": 3 + }, + { + "EndIndex": 115539, + "Kind": 3 + }, + { + "EndIndex": 115541, + "Kind": 3 + }, + { + "EndIndex": 115583, + "Kind": 3 + }, + { + "EndIndex": 116124, + "Kind": 3 + }, + { + "EndIndex": 116159, + "Kind": 3 + }, + { + "EndIndex": 116200, + "Kind": 3 + }, + { + "EndIndex": 116233, + "Kind": 3 + }, + { + "EndIndex": 116252, + "Kind": 3 + }, + { + "EndIndex": 116294, + "Kind": 3 + }, + { + "EndIndex": 116339, + "Kind": 3 + }, + { + "EndIndex": 116353, + "Kind": 3 + }, + { + "EndIndex": 116359, + "Kind": 3 + }, + { + "EndIndex": 116377, + "Kind": 3 + }, + { + "EndIndex": 116410, + "Kind": 3 + }, + { + "EndIndex": 116561, + "Kind": 3 + }, + { + "EndIndex": 116582, + "Kind": 3 + }, + { + "EndIndex": 116588, + "Kind": 3 + }, + { + "EndIndex": 116606, + "Kind": 3 + }, + { + "EndIndex": 116648, + "Kind": 3 + }, + { + "EndIndex": 116974, + "Kind": 3 + }, + { + "EndIndex": 116996, + "Kind": 3 + }, + { + "EndIndex": 117002, + "Kind": 3 + }, + { + "EndIndex": 117004, + "Kind": 3 + }, + { + "EndIndex": 117038, + "Kind": 3 + }, + { + "EndIndex": 117063, + "Kind": 3 + }, + { + "EndIndex": 117095, + "Kind": 3 + }, + { + "EndIndex": 117114, + "Kind": 3 + }, + { + "EndIndex": 117156, + "Kind": 3 + }, + { + "EndIndex": 117185, + "Kind": 3 + }, + { + "EndIndex": 117199, + "Kind": 3 + }, + { + "EndIndex": 117205, + "Kind": 3 + }, + { + "EndIndex": 117223, + "Kind": 3 + }, + { + "EndIndex": 117256, + "Kind": 3 + }, + { + "EndIndex": 117407, + "Kind": 3 + }, + { + "EndIndex": 117428, + "Kind": 3 + }, + { + "EndIndex": 117434, + "Kind": 3 + }, + { + "EndIndex": 117452, + "Kind": 3 + }, + { + "EndIndex": 117494, + "Kind": 3 + }, + { + "EndIndex": 117820, + "Kind": 3 + }, + { + "EndIndex": 117842, + "Kind": 3 + }, + { + "EndIndex": 117848, + "Kind": 3 + }, + { + "EndIndex": 117850, + "Kind": 3 + }, + { + "EndIndex": 117884, + "Kind": 3 + }, + { + "EndIndex": 117912, + "Kind": 3 + }, + { + "EndIndex": 117944, + "Kind": 3 + }, + { + "EndIndex": 117963, + "Kind": 3 + }, + { + "EndIndex": 118005, + "Kind": 3 + }, + { + "EndIndex": 118037, + "Kind": 3 + }, + { + "EndIndex": 118051, + "Kind": 3 + }, + { + "EndIndex": 118057, + "Kind": 3 + }, + { + "EndIndex": 118075, + "Kind": 3 + }, + { + "EndIndex": 118108, + "Kind": 3 + }, + { + "EndIndex": 118259, + "Kind": 3 + }, + { + "EndIndex": 118280, + "Kind": 3 + }, + { + "EndIndex": 118286, + "Kind": 3 + }, + { + "EndIndex": 118304, + "Kind": 3 + }, + { + "EndIndex": 118346, + "Kind": 3 + }, + { + "EndIndex": 118672, + "Kind": 3 + }, + { + "EndIndex": 118694, + "Kind": 3 + }, + { + "EndIndex": 118700, + "Kind": 3 + }, + { + "EndIndex": 118702, + "Kind": 3 + }, + { + "EndIndex": 118732, + "Kind": 3 + }, + { + "EndIndex": 118776, + "Kind": 3 + }, + { + "EndIndex": 118791, + "Kind": 3 + }, + { + "EndIndex": 118817, + "Kind": 3 + }, + { + "EndIndex": 118844, + "Kind": 3 + }, + { + "EndIndex": 118858, + "Kind": 3 + }, + { + "EndIndex": 118864, + "Kind": 3 + }, + { + "EndIndex": 118895, + "Kind": 3 + }, + { + "EndIndex": 118910, + "Kind": 3 + }, + { + "EndIndex": 118938, + "Kind": 3 + }, + { + "EndIndex": 118967, + "Kind": 3 + }, + { + "EndIndex": 118981, + "Kind": 3 + }, + { + "EndIndex": 118987, + "Kind": 3 + }, + { + "EndIndex": 119021, + "Kind": 3 + }, + { + "EndIndex": 119063, + "Kind": 3 + }, + { + "EndIndex": 119084, + "Kind": 3 + }, + { + "EndIndex": 119090, + "Kind": 3 + }, + { + "EndIndex": 119109, + "Kind": 3 + }, + { + "EndIndex": 119148, + "Kind": 3 + }, + { + "EndIndex": 119187, + "Kind": 3 + }, + { + "EndIndex": 119201, + "Kind": 3 + }, + { + "EndIndex": 119207, + "Kind": 3 + }, + { + "EndIndex": 119249, + "Kind": 3 + }, + { + "EndIndex": 119297, + "Kind": 3 + }, + { + "EndIndex": 119311, + "Kind": 3 + }, + { + "EndIndex": 119317, + "Kind": 3 + }, + { + "EndIndex": 119335, + "Kind": 3 + }, + { + "EndIndex": 119368, + "Kind": 3 + }, + { + "EndIndex": 119519, + "Kind": 3 + }, + { + "EndIndex": 119540, + "Kind": 3 + }, + { + "EndIndex": 119546, + "Kind": 3 + }, + { + "EndIndex": 119573, + "Kind": 3 + }, + { + "EndIndex": 119603, + "Kind": 3 + }, + { + "EndIndex": 119609, + "Kind": 3 + }, + { + "EndIndex": 119634, + "Kind": 3 + }, + { + "EndIndex": 119664, + "Kind": 3 + }, + { + "EndIndex": 119683, + "Kind": 3 + }, + { + "EndIndex": 119689, + "Kind": 3 + }, + { + "EndIndex": 119730, + "Kind": 3 + }, + { + "EndIndex": 119779, + "Kind": 3 + }, + { + "EndIndex": 119800, + "Kind": 3 + }, + { + "EndIndex": 119806, + "Kind": 3 + }, + { + "EndIndex": 119842, + "Kind": 3 + }, + { + "EndIndex": 119863, + "Kind": 3 + }, + { + "EndIndex": 119869, + "Kind": 3 + }, + { + "EndIndex": 119893, + "Kind": 3 + }, + { + "EndIndex": 119922, + "Kind": 3 + }, + { + "EndIndex": 119941, + "Kind": 3 + }, + { + "EndIndex": 119947, + "Kind": 3 + }, + { + "EndIndex": 119965, + "Kind": 3 + }, + { + "EndIndex": 120007, + "Kind": 3 + }, + { + "EndIndex": 120333, + "Kind": 3 + }, + { + "EndIndex": 120355, + "Kind": 3 + }, + { + "EndIndex": 120361, + "Kind": 3 + }, + { + "EndIndex": 120376, + "Kind": 3 + }, + { + "EndIndex": 120413, + "Kind": 3 + }, + { + "EndIndex": 120427, + "Kind": 3 + }, + { + "EndIndex": 120433, + "Kind": 3 + }, + { + "EndIndex": 120448, + "Kind": 3 + }, + { + "EndIndex": 120478, + "Kind": 3 + }, + { + "EndIndex": 120492, + "Kind": 3 + }, + { + "EndIndex": 120498, + "Kind": 3 + }, + { + "EndIndex": 120513, + "Kind": 3 + }, + { + "EndIndex": 120534, + "Kind": 3 + }, + { + "EndIndex": 120548, + "Kind": 3 + }, + { + "EndIndex": 120554, + "Kind": 3 + }, + { + "EndIndex": 120585, + "Kind": 3 + }, + { + "EndIndex": 120679, + "Kind": 3 + }, + { + "EndIndex": 120693, + "Kind": 3 + }, + { + "EndIndex": 120699, + "Kind": 3 + }, + { + "EndIndex": 120701, + "Kind": 3 + }, + { + "EndIndex": 120734, + "Kind": 3 + }, + { + "EndIndex": 120768, + "Kind": 3 + }, + { + "EndIndex": 120801, + "Kind": 3 + }, + { + "EndIndex": 120820, + "Kind": 3 + }, + { + "EndIndex": 120862, + "Kind": 3 + }, + { + "EndIndex": 120900, + "Kind": 3 + }, + { + "EndIndex": 120914, + "Kind": 3 + }, + { + "EndIndex": 120920, + "Kind": 3 + }, + { + "EndIndex": 120938, + "Kind": 3 + }, + { + "EndIndex": 120971, + "Kind": 3 + }, + { + "EndIndex": 121122, + "Kind": 3 + }, + { + "EndIndex": 121143, + "Kind": 3 + }, + { + "EndIndex": 121149, + "Kind": 3 + }, + { + "EndIndex": 121167, + "Kind": 3 + }, + { + "EndIndex": 121209, + "Kind": 3 + }, + { + "EndIndex": 121535, + "Kind": 3 + }, + { + "EndIndex": 121557, + "Kind": 3 + }, + { + "EndIndex": 121563, + "Kind": 3 + }, + { + "EndIndex": 121565, + "Kind": 3 + }, + { + "EndIndex": 121606, + "Kind": 3 + }, + { + "EndIndex": 121626, + "Kind": 3 + }, + { + "EndIndex": 121659, + "Kind": 3 + }, + { + "EndIndex": 121678, + "Kind": 3 + }, + { + "EndIndex": 121720, + "Kind": 3 + }, + { + "EndIndex": 121744, + "Kind": 3 + }, + { + "EndIndex": 121758, + "Kind": 3 + }, + { + "EndIndex": 121764, + "Kind": 3 + }, + { + "EndIndex": 121782, + "Kind": 3 + }, + { + "EndIndex": 121815, + "Kind": 3 + }, + { + "EndIndex": 121966, + "Kind": 3 + }, + { + "EndIndex": 121987, + "Kind": 3 + }, + { + "EndIndex": 121993, + "Kind": 3 + }, + { + "EndIndex": 122011, + "Kind": 3 + }, + { + "EndIndex": 122053, + "Kind": 3 + }, + { + "EndIndex": 122379, + "Kind": 3 + }, + { + "EndIndex": 122401, + "Kind": 3 + }, + { + "EndIndex": 122407, + "Kind": 3 + }, + { + "EndIndex": 122409, + "Kind": 3 + }, + { + "EndIndex": 122440, + "Kind": 3 + }, + { + "EndIndex": 122461, + "Kind": 3 + }, + { + "EndIndex": 122490, + "Kind": 3 + }, + { + "EndIndex": 122509, + "Kind": 3 + }, + { + "EndIndex": 122551, + "Kind": 3 + }, + { + "EndIndex": 122576, + "Kind": 3 + }, + { + "EndIndex": 122590, + "Kind": 3 + }, + { + "EndIndex": 122596, + "Kind": 3 + }, + { + "EndIndex": 122614, + "Kind": 3 + }, + { + "EndIndex": 122647, + "Kind": 3 + }, + { + "EndIndex": 122798, + "Kind": 3 + }, + { + "EndIndex": 122819, + "Kind": 3 + }, + { + "EndIndex": 122825, + "Kind": 3 + }, + { + "EndIndex": 122843, + "Kind": 3 + }, + { + "EndIndex": 122885, + "Kind": 3 + }, + { + "EndIndex": 123211, + "Kind": 3 + }, + { + "EndIndex": 123233, + "Kind": 3 + }, + { + "EndIndex": 123239, + "Kind": 3 + }, + { + "EndIndex": 123241, + "Kind": 3 + }, + { + "EndIndex": 123271, + "Kind": 3 + }, + { + "EndIndex": 123403, + "Kind": 3 + }, + { + "EndIndex": 123433, + "Kind": 3 + }, + { + "EndIndex": 123452, + "Kind": 3 + }, + { + "EndIndex": 123494, + "Kind": 3 + }, + { + "EndIndex": 123630, + "Kind": 3 + }, + { + "EndIndex": 123644, + "Kind": 3 + }, + { + "EndIndex": 123650, + "Kind": 3 + }, + { + "EndIndex": 123668, + "Kind": 3 + }, + { + "EndIndex": 123701, + "Kind": 3 + }, + { + "EndIndex": 123852, + "Kind": 3 + }, + { + "EndIndex": 123873, + "Kind": 3 + }, + { + "EndIndex": 123879, + "Kind": 3 + }, + { + "EndIndex": 123897, + "Kind": 3 + }, + { + "EndIndex": 123939, + "Kind": 3 + }, + { + "EndIndex": 124265, + "Kind": 3 + }, + { + "EndIndex": 124287, + "Kind": 3 + }, + { + "EndIndex": 124293, + "Kind": 3 + }, + { + "EndIndex": 124295, + "Kind": 3 + }, + { + "EndIndex": 124330, + "Kind": 3 + }, + { + "EndIndex": 124358, + "Kind": 3 + }, + { + "EndIndex": 124393, + "Kind": 3 + }, + { + "EndIndex": 124412, + "Kind": 3 + }, + { + "EndIndex": 124454, + "Kind": 3 + }, + { + "EndIndex": 124486, + "Kind": 3 + }, + { + "EndIndex": 124500, + "Kind": 3 + }, + { + "EndIndex": 124506, + "Kind": 3 + }, + { + "EndIndex": 124524, + "Kind": 3 + }, + { + "EndIndex": 124557, + "Kind": 3 + }, + { + "EndIndex": 124708, + "Kind": 3 + }, + { + "EndIndex": 124729, + "Kind": 3 + }, + { + "EndIndex": 124735, + "Kind": 3 + }, + { + "EndIndex": 124753, + "Kind": 3 + }, + { + "EndIndex": 124795, + "Kind": 3 + }, + { + "EndIndex": 125121, + "Kind": 3 + }, + { + "EndIndex": 125143, + "Kind": 3 + }, + { + "EndIndex": 125149, + "Kind": 3 + }, + { + "EndIndex": 125151, + "Kind": 3 + }, + { + "EndIndex": 125199, + "Kind": 3 + }, + { + "EndIndex": 125226, + "Kind": 3 + }, + { + "EndIndex": 125266, + "Kind": 3 + }, + { + "EndIndex": 125285, + "Kind": 3 + }, + { + "EndIndex": 125327, + "Kind": 3 + }, + { + "EndIndex": 125358, + "Kind": 3 + }, + { + "EndIndex": 125372, + "Kind": 3 + }, + { + "EndIndex": 125378, + "Kind": 3 + }, + { + "EndIndex": 125396, + "Kind": 3 + }, + { + "EndIndex": 125429, + "Kind": 3 + }, + { + "EndIndex": 125580, + "Kind": 3 + }, + { + "EndIndex": 125601, + "Kind": 3 + }, + { + "EndIndex": 125607, + "Kind": 3 + }, + { + "EndIndex": 125625, + "Kind": 3 + }, + { + "EndIndex": 125667, + "Kind": 3 + }, + { + "EndIndex": 125993, + "Kind": 3 + }, + { + "EndIndex": 126015, + "Kind": 3 + }, + { + "EndIndex": 126021, + "Kind": 3 + }, + { + "EndIndex": 126023, + "Kind": 3 + }, + { + "EndIndex": 126056, + "Kind": 3 + }, + { + "EndIndex": 126081, + "Kind": 3 + }, + { + "EndIndex": 126114, + "Kind": 3 + }, + { + "EndIndex": 126133, + "Kind": 3 + }, + { + "EndIndex": 126175, + "Kind": 3 + }, + { + "EndIndex": 126204, + "Kind": 3 + }, + { + "EndIndex": 126218, + "Kind": 3 + }, + { + "EndIndex": 126224, + "Kind": 3 + }, + { + "EndIndex": 126242, + "Kind": 3 + }, + { + "EndIndex": 126275, + "Kind": 3 + }, + { + "EndIndex": 126426, + "Kind": 3 + }, + { + "EndIndex": 126447, + "Kind": 3 + }, + { + "EndIndex": 126453, + "Kind": 3 + }, + { + "EndIndex": 126471, + "Kind": 3 + }, + { + "EndIndex": 126513, + "Kind": 3 + }, + { + "EndIndex": 126839, + "Kind": 3 + }, + { + "EndIndex": 126861, + "Kind": 3 + }, + { + "EndIndex": 126867, + "Kind": 3 + }, + { + "EndIndex": 126869, + "Kind": 3 + }, + { + "EndIndex": 126917, + "Kind": 3 + }, + { + "EndIndex": 126944, + "Kind": 3 + }, + { + "EndIndex": 126984, + "Kind": 3 + }, + { + "EndIndex": 127003, + "Kind": 3 + }, + { + "EndIndex": 127045, + "Kind": 3 + }, + { + "EndIndex": 127076, + "Kind": 3 + }, + { + "EndIndex": 127090, + "Kind": 3 + }, + { + "EndIndex": 127096, + "Kind": 3 + }, + { + "EndIndex": 127114, + "Kind": 3 + }, + { + "EndIndex": 127147, + "Kind": 3 + }, + { + "EndIndex": 127298, + "Kind": 3 + }, + { + "EndIndex": 127319, + "Kind": 3 + }, + { + "EndIndex": 127325, + "Kind": 3 + }, + { + "EndIndex": 127343, + "Kind": 3 + }, + { + "EndIndex": 127385, + "Kind": 3 + }, + { + "EndIndex": 127711, + "Kind": 3 + }, + { + "EndIndex": 127733, + "Kind": 3 + }, + { + "EndIndex": 127739, + "Kind": 3 + }, + { + "EndIndex": 127741, + "Kind": 3 + }, + { + "EndIndex": 127787, + "Kind": 3 + }, + { + "EndIndex": 127812, + "Kind": 3 + }, + { + "EndIndex": 127850, + "Kind": 3 + }, + { + "EndIndex": 127869, + "Kind": 3 + }, + { + "EndIndex": 127911, + "Kind": 3 + }, + { + "EndIndex": 127940, + "Kind": 3 + }, + { + "EndIndex": 127954, + "Kind": 3 + }, + { + "EndIndex": 127960, + "Kind": 3 + }, + { + "EndIndex": 127978, + "Kind": 3 + }, + { + "EndIndex": 128011, + "Kind": 3 + }, + { + "EndIndex": 128162, + "Kind": 3 + }, + { + "EndIndex": 128183, + "Kind": 3 + }, + { + "EndIndex": 128189, + "Kind": 3 + }, + { + "EndIndex": 128207, + "Kind": 3 + }, + { + "EndIndex": 128249, + "Kind": 3 + }, + { + "EndIndex": 128575, + "Kind": 3 + }, + { + "EndIndex": 128597, + "Kind": 3 + }, + { + "EndIndex": 128603, + "Kind": 3 + }, + { + "EndIndex": 128605, + "Kind": 3 + }, + { + "EndIndex": 128641, + "Kind": 3 + }, + { + "EndIndex": 128699, + "Kind": 3 + }, + { + "EndIndex": 128735, + "Kind": 3 + }, + { + "EndIndex": 128754, + "Kind": 3 + }, + { + "EndIndex": 128796, + "Kind": 3 + }, + { + "EndIndex": 128858, + "Kind": 3 + }, + { + "EndIndex": 128872, + "Kind": 3 + }, + { + "EndIndex": 128878, + "Kind": 3 + }, + { + "EndIndex": 128896, + "Kind": 3 + }, + { + "EndIndex": 128929, + "Kind": 3 + }, + { + "EndIndex": 129080, + "Kind": 3 + }, + { + "EndIndex": 129101, + "Kind": 3 + }, + { + "EndIndex": 129107, + "Kind": 3 + }, + { + "EndIndex": 129125, + "Kind": 3 + }, + { + "EndIndex": 129167, + "Kind": 3 + }, + { + "EndIndex": 129493, + "Kind": 3 + }, + { + "EndIndex": 129515, + "Kind": 3 + }, + { + "EndIndex": 129521, + "Kind": 3 + }, + { + "EndIndex": 129523, + "Kind": 3 + }, + { + "EndIndex": 129551, + "Kind": 3 + }, + { + "EndIndex": 129583, + "Kind": 3 + }, + { + "EndIndex": 129609, + "Kind": 3 + }, + { + "EndIndex": 129628, + "Kind": 3 + }, + { + "EndIndex": 129670, + "Kind": 3 + }, + { + "EndIndex": 129706, + "Kind": 3 + }, + { + "EndIndex": 129720, + "Kind": 3 + }, + { + "EndIndex": 129726, + "Kind": 3 + }, + { + "EndIndex": 129744, + "Kind": 3 + }, + { + "EndIndex": 129777, + "Kind": 3 + }, + { + "EndIndex": 129928, + "Kind": 3 + }, + { + "EndIndex": 129949, + "Kind": 3 + }, + { + "EndIndex": 129955, + "Kind": 3 + }, + { + "EndIndex": 129973, + "Kind": 3 + }, + { + "EndIndex": 130015, + "Kind": 3 + }, + { + "EndIndex": 130341, + "Kind": 3 + }, + { + "EndIndex": 130363, + "Kind": 3 + }, + { + "EndIndex": 130369, + "Kind": 3 + }, + { + "EndIndex": 130371, + "Kind": 3 + }, + { + "EndIndex": 130394, + "Kind": 3 + }, + { + "EndIndex": 130424, + "Kind": 3 + }, + { + "EndIndex": 130457, + "Kind": 3 + }, + { + "EndIndex": 130511, + "Kind": 3 + }, + { + "EndIndex": 130538, + "Kind": 3 + }, + { + "EndIndex": 130557, + "Kind": 3 + }, + { + "EndIndex": 130599, + "Kind": 3 + }, + { + "EndIndex": 130657, + "Kind": 3 + }, + { + "EndIndex": 130671, + "Kind": 3 + }, + { + "EndIndex": 130677, + "Kind": 3 + }, + { + "EndIndex": 130695, + "Kind": 3 + }, + { + "EndIndex": 130728, + "Kind": 3 + }, + { + "EndIndex": 130879, + "Kind": 3 + }, + { + "EndIndex": 130900, + "Kind": 3 + }, + { + "EndIndex": 130906, + "Kind": 3 + }, + { + "EndIndex": 130924, + "Kind": 3 + }, + { + "EndIndex": 130966, + "Kind": 3 + }, + { + "EndIndex": 131292, + "Kind": 3 + }, + { + "EndIndex": 131314, + "Kind": 3 + }, + { + "EndIndex": 131320, + "Kind": 3 + }, + { + "EndIndex": 131322, + "Kind": 3 + }, + { + "EndIndex": 131355, + "Kind": 3 + }, + { + "EndIndex": 131383, + "Kind": 3 + }, + { + "EndIndex": 131416, + "Kind": 3 + }, + { + "EndIndex": 131435, + "Kind": 3 + }, + { + "EndIndex": 131477, + "Kind": 3 + }, + { + "EndIndex": 131509, + "Kind": 3 + }, + { + "EndIndex": 131523, + "Kind": 3 + }, + { + "EndIndex": 131529, + "Kind": 3 + }, + { + "EndIndex": 131547, + "Kind": 3 + }, + { + "EndIndex": 131580, + "Kind": 3 + }, + { + "EndIndex": 131731, + "Kind": 3 + }, + { + "EndIndex": 131752, + "Kind": 3 + }, + { + "EndIndex": 131758, + "Kind": 3 + }, + { + "EndIndex": 131776, + "Kind": 3 + }, + { + "EndIndex": 131818, + "Kind": 3 + }, + { + "EndIndex": 132144, + "Kind": 3 + }, + { + "EndIndex": 132166, + "Kind": 3 + }, + { + "EndIndex": 132172, + "Kind": 3 + }, + { + "EndIndex": 132174, + "Kind": 3 + }, + { + "EndIndex": 132209, + "Kind": 3 + }, + { + "EndIndex": 132232, + "Kind": 3 + }, + { + "EndIndex": 132267, + "Kind": 3 + }, + { + "EndIndex": 132286, + "Kind": 3 + }, + { + "EndIndex": 132328, + "Kind": 3 + }, + { + "EndIndex": 132355, + "Kind": 3 + }, + { + "EndIndex": 132369, + "Kind": 3 + }, + { + "EndIndex": 132375, + "Kind": 3 + }, + { + "EndIndex": 132393, + "Kind": 3 + }, + { + "EndIndex": 132426, + "Kind": 3 + }, + { + "EndIndex": 132577, + "Kind": 3 + }, + { + "EndIndex": 132598, + "Kind": 3 + }, + { + "EndIndex": 132604, + "Kind": 3 + }, + { + "EndIndex": 132622, + "Kind": 3 + }, + { + "EndIndex": 132664, + "Kind": 3 + }, + { + "EndIndex": 132990, + "Kind": 3 + }, + { + "EndIndex": 133012, + "Kind": 3 + }, + { + "EndIndex": 133018, + "Kind": 3 + }, + { + "EndIndex": 133020, + "Kind": 3 + }, + { + "EndIndex": 133064, + "Kind": 3 + }, + { + "EndIndex": 133104, + "Kind": 3 + }, + { + "EndIndex": 133140, + "Kind": 3 + }, + { + "EndIndex": 133159, + "Kind": 3 + }, + { + "EndIndex": 133201, + "Kind": 3 + }, + { + "EndIndex": 133245, + "Kind": 3 + }, + { + "EndIndex": 133259, + "Kind": 3 + }, + { + "EndIndex": 133265, + "Kind": 3 + }, + { + "EndIndex": 133283, + "Kind": 3 + }, + { + "EndIndex": 133316, + "Kind": 3 + }, + { + "EndIndex": 133467, + "Kind": 3 + }, + { + "EndIndex": 133488, + "Kind": 3 + }, + { + "EndIndex": 133494, + "Kind": 3 + }, + { + "EndIndex": 133512, + "Kind": 3 + }, + { + "EndIndex": 133554, + "Kind": 3 + }, + { + "EndIndex": 133880, + "Kind": 3 + }, + { + "EndIndex": 133902, + "Kind": 3 + }, + { + "EndIndex": 133908, + "Kind": 3 + }, + { + "EndIndex": 133910, + "Kind": 3 + }, + { + "EndIndex": 133941, + "Kind": 3 + }, + { + "EndIndex": 134035, + "Kind": 3 + }, + { + "EndIndex": 134066, + "Kind": 3 + }, + { + "EndIndex": 134085, + "Kind": 3 + }, + { + "EndIndex": 134127, + "Kind": 3 + }, + { + "EndIndex": 134225, + "Kind": 3 + }, + { + "EndIndex": 134239, + "Kind": 3 + }, + { + "EndIndex": 134245, + "Kind": 3 + }, + { + "EndIndex": 134263, + "Kind": 3 + }, + { + "EndIndex": 134296, + "Kind": 3 + }, + { + "EndIndex": 134447, + "Kind": 3 + }, + { + "EndIndex": 134468, + "Kind": 3 + }, + { + "EndIndex": 134474, + "Kind": 3 + }, + { + "EndIndex": 134492, + "Kind": 3 + }, + { + "EndIndex": 134534, + "Kind": 3 + }, + { + "EndIndex": 134860, + "Kind": 3 + }, + { + "EndIndex": 134882, + "Kind": 3 + }, + { + "EndIndex": 134888, + "Kind": 3 + }, + { + "EndIndex": 134890, + "Kind": 3 + }, + { + "EndIndex": 134927, + "Kind": 3 + }, + { + "EndIndex": 134965, + "Kind": 3 + }, + { + "EndIndex": 134996, + "Kind": 3 + }, + { + "EndIndex": 135015, + "Kind": 3 + }, + { + "EndIndex": 135057, + "Kind": 3 + }, + { + "EndIndex": 135099, + "Kind": 3 + }, + { + "EndIndex": 135113, + "Kind": 3 + }, + { + "EndIndex": 135119, + "Kind": 3 + }, + { + "EndIndex": 135137, + "Kind": 3 + }, + { + "EndIndex": 135170, + "Kind": 3 + }, + { + "EndIndex": 135321, + "Kind": 3 + }, + { + "EndIndex": 135342, + "Kind": 3 + }, + { + "EndIndex": 135348, + "Kind": 3 + }, + { + "EndIndex": 135366, + "Kind": 3 + }, + { + "EndIndex": 135408, + "Kind": 3 + }, + { + "EndIndex": 135734, + "Kind": 3 + }, + { + "EndIndex": 135756, + "Kind": 3 + }, + { + "EndIndex": 135762, + "Kind": 3 + }, + { + "EndIndex": 135764, + "Kind": 3 + }, + { + "EndIndex": 135785, + "Kind": 3 + }, + { + "EndIndex": 135816, + "Kind": 3 + }, + { + "EndIndex": 135879, + "Kind": 3 + }, + { + "EndIndex": 135908, + "Kind": 3 + }, + { + "EndIndex": 135927, + "Kind": 3 + }, + { + "EndIndex": 135969, + "Kind": 3 + }, + { + "EndIndex": 136036, + "Kind": 3 + }, + { + "EndIndex": 136050, + "Kind": 3 + }, + { + "EndIndex": 136056, + "Kind": 3 + }, + { + "EndIndex": 136074, + "Kind": 3 + }, + { + "EndIndex": 136107, + "Kind": 3 + }, + { + "EndIndex": 136258, + "Kind": 3 + }, + { + "EndIndex": 136279, + "Kind": 3 + }, + { + "EndIndex": 136285, + "Kind": 3 + }, + { + "EndIndex": 136312, + "Kind": 3 + }, + { + "EndIndex": 136342, + "Kind": 3 + }, + { + "EndIndex": 136348, + "Kind": 3 + }, + { + "EndIndex": 136372, + "Kind": 3 + }, + { + "EndIndex": 136401, + "Kind": 3 + }, + { + "EndIndex": 136420, + "Kind": 3 + }, + { + "EndIndex": 136426, + "Kind": 3 + }, + { + "EndIndex": 136444, + "Kind": 3 + }, + { + "EndIndex": 136486, + "Kind": 3 + }, + { + "EndIndex": 136812, + "Kind": 3 + }, + { + "EndIndex": 136834, + "Kind": 3 + }, + { + "EndIndex": 136840, + "Kind": 3 + }, + { + "EndIndex": 136855, + "Kind": 3 + }, + { + "EndIndex": 136875, + "Kind": 3 + }, + { + "EndIndex": 136904, + "Kind": 3 + }, + { + "EndIndex": 136918, + "Kind": 3 + }, + { + "EndIndex": 136924, + "Kind": 3 + }, + { + "EndIndex": 136939, + "Kind": 3 + }, + { + "EndIndex": 136960, + "Kind": 3 + }, + { + "EndIndex": 136983, + "Kind": 3 + }, + { + "EndIndex": 136997, + "Kind": 3 + }, + { + "EndIndex": 137003, + "Kind": 3 + }, + { + "EndIndex": 137018, + "Kind": 3 + }, + { + "EndIndex": 137039, + "Kind": 3 + }, + { + "EndIndex": 137062, + "Kind": 3 + }, + { + "EndIndex": 137076, + "Kind": 3 + }, + { + "EndIndex": 137082, + "Kind": 3 + }, + { + "EndIndex": 137084, + "Kind": 3 + }, + { + "EndIndex": 137115, + "Kind": 3 + }, + { + "EndIndex": 137188, + "Kind": 3 + }, + { + "EndIndex": 137219, + "Kind": 3 + }, + { + "EndIndex": 137238, + "Kind": 3 + }, + { + "EndIndex": 137280, + "Kind": 3 + }, + { + "EndIndex": 137357, + "Kind": 3 + }, + { + "EndIndex": 137371, + "Kind": 3 + }, + { + "EndIndex": 137377, + "Kind": 3 + }, + { + "EndIndex": 137395, + "Kind": 3 + }, + { + "EndIndex": 137428, + "Kind": 3 + }, + { + "EndIndex": 137579, + "Kind": 3 + }, + { + "EndIndex": 137600, + "Kind": 3 + }, + { + "EndIndex": 137606, + "Kind": 3 + }, + { + "EndIndex": 137624, + "Kind": 3 + }, + { + "EndIndex": 137666, + "Kind": 3 + }, + { + "EndIndex": 137992, + "Kind": 3 + }, + { + "EndIndex": 138014, + "Kind": 3 + }, + { + "EndIndex": 138020, + "Kind": 3 + }, + { + "EndIndex": 138022, + "Kind": 3 + }, + { + "EndIndex": 138060, + "Kind": 3 + }, + { + "EndIndex": 138089, + "Kind": 3 + }, + { + "EndIndex": 138123, + "Kind": 3 + }, + { + "EndIndex": 138142, + "Kind": 3 + }, + { + "EndIndex": 138184, + "Kind": 3 + }, + { + "EndIndex": 138217, + "Kind": 3 + }, + { + "EndIndex": 138231, + "Kind": 3 + }, + { + "EndIndex": 138237, + "Kind": 3 + }, + { + "EndIndex": 138255, + "Kind": 3 + }, + { + "EndIndex": 138288, + "Kind": 3 + }, + { + "EndIndex": 138439, + "Kind": 3 + }, + { + "EndIndex": 138460, + "Kind": 3 + }, + { + "EndIndex": 138466, + "Kind": 3 + }, + { + "EndIndex": 138484, + "Kind": 3 + }, + { + "EndIndex": 138526, + "Kind": 3 + }, + { + "EndIndex": 138852, + "Kind": 3 + }, + { + "EndIndex": 138874, + "Kind": 3 + }, + { + "EndIndex": 138880, + "Kind": 3 + }, + { + "EndIndex": 138882, + "Kind": 3 + }, + { + "EndIndex": 138914, + "Kind": 3 + }, + { + "EndIndex": 138950, + "Kind": 3 + }, + { + "EndIndex": 138978, + "Kind": 3 + }, + { + "EndIndex": 138997, + "Kind": 3 + }, + { + "EndIndex": 139039, + "Kind": 3 + }, + { + "EndIndex": 139079, + "Kind": 3 + }, + { + "EndIndex": 139093, + "Kind": 3 + }, + { + "EndIndex": 139099, + "Kind": 3 + }, + { + "EndIndex": 139117, + "Kind": 3 + }, + { + "EndIndex": 139150, + "Kind": 3 + }, + { + "EndIndex": 139301, + "Kind": 3 + }, + { + "EndIndex": 139322, + "Kind": 3 + }, + { + "EndIndex": 139328, + "Kind": 3 + }, + { + "EndIndex": 139346, + "Kind": 3 + }, + { + "EndIndex": 139388, + "Kind": 3 + }, + { + "EndIndex": 139714, + "Kind": 3 + }, + { + "EndIndex": 139736, + "Kind": 3 + }, + { + "EndIndex": 139742, + "Kind": 3 + }, + { + "EndIndex": 139744, + "Kind": 3 + }, + { + "EndIndex": 139778, + "Kind": 3 + }, + { + "EndIndex": 139808, + "Kind": 3 + }, + { + "EndIndex": 139842, + "Kind": 3 + }, + { + "EndIndex": 139861, + "Kind": 3 + }, + { + "EndIndex": 139903, + "Kind": 3 + }, + { + "EndIndex": 139937, + "Kind": 3 + }, + { + "EndIndex": 139951, + "Kind": 3 + }, + { + "EndIndex": 139957, + "Kind": 3 + }, + { + "EndIndex": 139975, + "Kind": 3 + }, + { + "EndIndex": 140008, + "Kind": 3 + }, + { + "EndIndex": 140159, + "Kind": 3 + }, + { + "EndIndex": 140180, + "Kind": 3 + }, + { + "EndIndex": 140186, + "Kind": 3 + }, + { + "EndIndex": 140204, + "Kind": 3 + }, + { + "EndIndex": 140246, + "Kind": 3 + }, + { + "EndIndex": 140572, + "Kind": 3 + }, + { + "EndIndex": 140594, + "Kind": 3 + }, + { + "EndIndex": 140600, + "Kind": 3 + }, + { + "EndIndex": 140602, + "Kind": 3 + }, + { + "EndIndex": 140637, + "Kind": 3 + }, + { + "EndIndex": 140683, + "Kind": 3 + }, + { + "EndIndex": 140718, + "Kind": 3 + }, + { + "EndIndex": 140737, + "Kind": 3 + }, + { + "EndIndex": 140779, + "Kind": 3 + }, + { + "EndIndex": 140829, + "Kind": 3 + }, + { + "EndIndex": 140843, + "Kind": 3 + }, + { + "EndIndex": 140849, + "Kind": 3 + }, + { + "EndIndex": 140867, + "Kind": 3 + }, + { + "EndIndex": 140900, + "Kind": 3 + }, + { + "EndIndex": 141051, + "Kind": 3 + }, + { + "EndIndex": 141072, + "Kind": 3 + }, + { + "EndIndex": 141078, + "Kind": 3 + }, + { + "EndIndex": 141096, + "Kind": 3 + }, + { + "EndIndex": 141138, + "Kind": 3 + }, + { + "EndIndex": 141464, + "Kind": 3 + }, + { + "EndIndex": 141486, + "Kind": 3 + }, + { + "EndIndex": 141492, + "Kind": 3 + }, + { + "EndIndex": 141494, + "Kind": 3 + }, + { + "EndIndex": 141524, + "Kind": 3 + }, + { + "EndIndex": 141554, + "Kind": 3 + }, + { + "EndIndex": 141580, + "Kind": 3 + }, + { + "EndIndex": 141599, + "Kind": 3 + }, + { + "EndIndex": 141641, + "Kind": 3 + }, + { + "EndIndex": 141675, + "Kind": 3 + }, + { + "EndIndex": 141689, + "Kind": 3 + }, + { + "EndIndex": 141695, + "Kind": 3 + }, + { + "EndIndex": 141713, + "Kind": 3 + }, + { + "EndIndex": 141746, + "Kind": 3 + }, + { + "EndIndex": 141897, + "Kind": 3 + }, + { + "EndIndex": 141918, + "Kind": 3 + }, + { + "EndIndex": 141924, + "Kind": 3 + }, + { + "EndIndex": 141948, + "Kind": 3 + }, + { + "EndIndex": 141977, + "Kind": 3 + }, + { + "EndIndex": 141996, + "Kind": 3 + }, + { + "EndIndex": 142002, + "Kind": 3 + }, + { + "EndIndex": 142020, + "Kind": 3 + }, + { + "EndIndex": 142062, + "Kind": 3 + }, + { + "EndIndex": 142388, + "Kind": 3 + }, + { + "EndIndex": 142410, + "Kind": 3 + }, + { + "EndIndex": 142416, + "Kind": 3 + }, + { + "EndIndex": 142418, + "Kind": 3 + }, + { + "EndIndex": 142459, + "Kind": 3 + }, + { + "EndIndex": 142495, + "Kind": 3 + }, + { + "EndIndex": 142530, + "Kind": 3 + }, + { + "EndIndex": 142549, + "Kind": 3 + }, + { + "EndIndex": 142591, + "Kind": 3 + }, + { + "EndIndex": 142631, + "Kind": 3 + }, + { + "EndIndex": 142645, + "Kind": 3 + }, + { + "EndIndex": 142651, + "Kind": 3 + }, + { + "EndIndex": 142669, + "Kind": 3 + }, + { + "EndIndex": 142702, + "Kind": 3 + }, + { + "EndIndex": 142853, + "Kind": 3 + }, + { + "EndIndex": 142874, + "Kind": 3 + }, + { + "EndIndex": 142880, + "Kind": 3 + }, + { + "EndIndex": 142898, + "Kind": 3 + }, + { + "EndIndex": 142940, + "Kind": 3 + }, + { + "EndIndex": 143266, + "Kind": 3 + }, + { + "EndIndex": 143288, + "Kind": 3 + }, + { + "EndIndex": 143294, + "Kind": 3 + }, + { + "EndIndex": 143296, + "Kind": 3 + }, + { + "EndIndex": 143327, + "Kind": 3 + }, + { + "EndIndex": 143364, + "Kind": 3 + }, + { + "EndIndex": 143393, + "Kind": 3 + }, + { + "EndIndex": 143412, + "Kind": 3 + }, + { + "EndIndex": 143454, + "Kind": 3 + }, + { + "EndIndex": 143495, + "Kind": 3 + }, + { + "EndIndex": 143509, + "Kind": 3 + }, + { + "EndIndex": 143515, + "Kind": 3 + }, + { + "EndIndex": 143533, + "Kind": 3 + }, + { + "EndIndex": 143566, + "Kind": 3 + }, + { + "EndIndex": 143717, + "Kind": 3 + }, + { + "EndIndex": 143738, + "Kind": 3 + }, + { + "EndIndex": 143744, + "Kind": 3 + }, + { + "EndIndex": 143762, + "Kind": 3 + }, + { + "EndIndex": 143804, + "Kind": 3 + }, + { + "EndIndex": 144130, + "Kind": 3 + }, + { + "EndIndex": 144152, + "Kind": 3 + }, + { + "EndIndex": 144158, + "Kind": 3 + }, + { + "EndIndex": 144160, + "Kind": 3 + }, + { + "EndIndex": 144191, + "Kind": 3 + }, + { + "EndIndex": 144213, + "Kind": 3 + }, + { + "EndIndex": 144242, + "Kind": 3 + }, + { + "EndIndex": 144261, + "Kind": 3 + }, + { + "EndIndex": 144303, + "Kind": 3 + }, + { + "EndIndex": 144329, + "Kind": 3 + }, + { + "EndIndex": 144343, + "Kind": 3 + }, + { + "EndIndex": 144349, + "Kind": 3 + }, + { + "EndIndex": 144367, + "Kind": 3 + }, + { + "EndIndex": 144400, + "Kind": 3 + }, + { + "EndIndex": 144551, + "Kind": 3 + }, + { + "EndIndex": 144572, + "Kind": 3 + }, + { + "EndIndex": 144578, + "Kind": 3 + }, + { + "EndIndex": 144596, + "Kind": 3 + }, + { + "EndIndex": 144638, + "Kind": 3 + }, + { + "EndIndex": 144964, + "Kind": 3 + }, + { + "EndIndex": 144986, + "Kind": 3 + }, + { + "EndIndex": 144992, + "Kind": 3 + }, + { + "EndIndex": 144994, + "Kind": 3 + }, + { + "EndIndex": 145035, + "Kind": 3 + }, + { + "EndIndex": 145060, + "Kind": 3 + }, + { + "EndIndex": 145097, + "Kind": 3 + }, + { + "EndIndex": 145116, + "Kind": 3 + }, + { + "EndIndex": 145158, + "Kind": 3 + }, + { + "EndIndex": 145187, + "Kind": 3 + }, + { + "EndIndex": 145201, + "Kind": 3 + }, + { + "EndIndex": 145207, + "Kind": 3 + }, + { + "EndIndex": 145225, + "Kind": 3 + }, + { + "EndIndex": 145258, + "Kind": 3 + }, + { + "EndIndex": 145409, + "Kind": 3 + }, + { + "EndIndex": 145430, + "Kind": 3 + }, + { + "EndIndex": 145436, + "Kind": 3 + }, + { + "EndIndex": 145454, + "Kind": 3 + }, + { + "EndIndex": 145496, + "Kind": 3 + }, + { + "EndIndex": 145822, + "Kind": 3 + }, + { + "EndIndex": 145844, + "Kind": 3 + }, + { + "EndIndex": 145850, + "Kind": 3 + }, + { + "EndIndex": 145852, + "Kind": 3 + }, + { + "EndIndex": 145881, + "Kind": 3 + }, + { + "EndIndex": 145913, + "Kind": 3 + }, + { + "EndIndex": 145940, + "Kind": 3 + }, + { + "EndIndex": 145959, + "Kind": 3 + }, + { + "EndIndex": 146001, + "Kind": 3 + }, + { + "EndIndex": 146037, + "Kind": 3 + }, + { + "EndIndex": 146051, + "Kind": 3 + }, + { + "EndIndex": 146057, + "Kind": 3 + }, + { + "EndIndex": 146075, + "Kind": 3 + }, + { + "EndIndex": 146108, + "Kind": 3 + }, + { + "EndIndex": 146259, + "Kind": 3 + }, + { + "EndIndex": 146280, + "Kind": 3 + }, + { + "EndIndex": 146286, + "Kind": 3 + }, + { + "EndIndex": 146304, + "Kind": 3 + }, + { + "EndIndex": 146346, + "Kind": 3 + }, + { + "EndIndex": 146672, + "Kind": 3 + }, + { + "EndIndex": 146694, + "Kind": 3 + }, + { + "EndIndex": 146700, + "Kind": 3 + }, + { + "EndIndex": 146702, + "Kind": 3 + }, + { + "EndIndex": 146738, + "Kind": 3 + }, + { + "EndIndex": 146782, + "Kind": 3 + }, + { + "EndIndex": 146818, + "Kind": 3 + }, + { + "EndIndex": 146837, + "Kind": 3 + }, + { + "EndIndex": 146879, + "Kind": 3 + }, + { + "EndIndex": 146927, + "Kind": 3 + }, + { + "EndIndex": 146941, + "Kind": 3 + }, + { + "EndIndex": 146947, + "Kind": 3 + }, + { + "EndIndex": 146965, + "Kind": 3 + }, + { + "EndIndex": 146998, + "Kind": 3 + }, + { + "EndIndex": 147149, + "Kind": 3 + }, + { + "EndIndex": 147170, + "Kind": 3 + }, + { + "EndIndex": 147176, + "Kind": 3 + }, + { + "EndIndex": 147194, + "Kind": 3 + }, + { + "EndIndex": 147236, + "Kind": 3 + }, + { + "EndIndex": 147562, + "Kind": 3 + }, + { + "EndIndex": 147584, + "Kind": 3 + }, + { + "EndIndex": 147590, + "Kind": 3 + }, + { + "EndIndex": 147592, + "Kind": 3 + }, + { + "EndIndex": 147631, + "Kind": 3 + }, + { + "EndIndex": 147673, + "Kind": 3 + }, + { + "EndIndex": 147728, + "Kind": 3 + }, + { + "EndIndex": 147765, + "Kind": 3 + }, + { + "EndIndex": 147784, + "Kind": 3 + }, + { + "EndIndex": 147826, + "Kind": 3 + }, + { + "EndIndex": 147885, + "Kind": 3 + }, + { + "EndIndex": 147899, + "Kind": 3 + }, + { + "EndIndex": 147905, + "Kind": 3 + }, + { + "EndIndex": 147923, + "Kind": 3 + }, + { + "EndIndex": 147956, + "Kind": 3 + }, + { + "EndIndex": 148107, + "Kind": 3 + }, + { + "EndIndex": 148128, + "Kind": 3 + }, + { + "EndIndex": 148134, + "Kind": 3 + }, + { + "EndIndex": 148152, + "Kind": 3 + }, + { + "EndIndex": 148194, + "Kind": 3 + }, + { + "EndIndex": 148520, + "Kind": 3 + }, + { + "EndIndex": 148542, + "Kind": 3 + }, + { + "EndIndex": 148548, + "Kind": 3 + }, + { + "EndIndex": 148550, + "Kind": 3 + }, + { + "EndIndex": 148577, + "Kind": 3 + }, + { + "EndIndex": 148619, + "Kind": 3 + }, + { + "EndIndex": 148644, + "Kind": 3 + }, + { + "EndIndex": 148663, + "Kind": 3 + }, + { + "EndIndex": 148705, + "Kind": 3 + }, + { + "EndIndex": 148751, + "Kind": 3 + }, + { + "EndIndex": 148765, + "Kind": 3 + }, + { + "EndIndex": 148771, + "Kind": 3 + }, + { + "EndIndex": 148789, + "Kind": 3 + }, + { + "EndIndex": 148822, + "Kind": 3 + }, + { + "EndIndex": 148973, + "Kind": 3 + }, + { + "EndIndex": 148994, + "Kind": 3 + }, + { + "EndIndex": 149000, + "Kind": 3 + }, + { + "EndIndex": 149027, + "Kind": 3 + }, + { + "EndIndex": 149057, + "Kind": 3 + }, + { + "EndIndex": 149063, + "Kind": 3 + }, + { + "EndIndex": 149087, + "Kind": 3 + }, + { + "EndIndex": 149116, + "Kind": 3 + }, + { + "EndIndex": 149135, + "Kind": 3 + }, + { + "EndIndex": 149141, + "Kind": 3 + }, + { + "EndIndex": 149159, + "Kind": 3 + }, + { + "EndIndex": 149201, + "Kind": 3 + }, + { + "EndIndex": 149527, + "Kind": 3 + }, + { + "EndIndex": 149549, + "Kind": 3 + }, + { + "EndIndex": 149555, + "Kind": 3 + }, + { + "EndIndex": 149570, + "Kind": 3 + }, + { + "EndIndex": 149605, + "Kind": 3 + }, + { + "EndIndex": 149619, + "Kind": 3 + }, + { + "EndIndex": 149625, + "Kind": 3 + }, + { + "EndIndex": 149640, + "Kind": 3 + }, + { + "EndIndex": 149662, + "Kind": 3 + }, + { + "EndIndex": 149694, + "Kind": 3 + }, + { + "EndIndex": 149708, + "Kind": 3 + }, + { + "EndIndex": 149714, + "Kind": 3 + }, + { + "EndIndex": 149729, + "Kind": 3 + }, + { + "EndIndex": 149754, + "Kind": 3 + }, + { + "EndIndex": 149784, + "Kind": 3 + }, + { + "EndIndex": 149798, + "Kind": 3 + }, + { + "EndIndex": 149804, + "Kind": 3 + }, + { + "EndIndex": 149819, + "Kind": 3 + }, + { + "EndIndex": 149845, + "Kind": 3 + }, + { + "EndIndex": 149882, + "Kind": 3 + }, + { + "EndIndex": 149896, + "Kind": 3 + }, + { + "EndIndex": 149902, + "Kind": 3 + }, + { + "EndIndex": 149917, + "Kind": 3 + }, + { + "EndIndex": 149942, + "Kind": 3 + }, + { + "EndIndex": 149972, + "Kind": 3 + }, + { + "EndIndex": 149986, + "Kind": 3 + }, + { + "EndIndex": 149992, + "Kind": 3 + }, + { + "EndIndex": 150007, + "Kind": 3 + }, + { + "EndIndex": 150032, + "Kind": 3 + }, + { + "EndIndex": 150064, + "Kind": 3 + }, + { + "EndIndex": 150078, + "Kind": 3 + }, + { + "EndIndex": 150084, + "Kind": 3 + }, + { + "EndIndex": 150086, + "Kind": 3 + }, + { + "EndIndex": 150125, + "Kind": 3 + }, + { + "EndIndex": 150168, + "Kind": 3 + }, + { + "EndIndex": 150199, + "Kind": 3 + }, + { + "EndIndex": 150218, + "Kind": 3 + }, + { + "EndIndex": 150260, + "Kind": 3 + }, + { + "EndIndex": 150307, + "Kind": 3 + }, + { + "EndIndex": 150321, + "Kind": 3 + }, + { + "EndIndex": 150327, + "Kind": 3 + }, + { + "EndIndex": 150345, + "Kind": 3 + }, + { + "EndIndex": 150378, + "Kind": 3 + }, + { + "EndIndex": 150529, + "Kind": 3 + }, + { + "EndIndex": 150550, + "Kind": 3 + }, + { + "EndIndex": 150556, + "Kind": 3 + }, + { + "EndIndex": 150574, + "Kind": 3 + }, + { + "EndIndex": 150616, + "Kind": 3 + }, + { + "EndIndex": 150942, + "Kind": 3 + }, + { + "EndIndex": 150964, + "Kind": 3 + }, + { + "EndIndex": 150970, + "Kind": 3 + }, + { + "EndIndex": 150972, + "Kind": 3 + }, + { + "EndIndex": 151015, + "Kind": 3 + }, + { + "EndIndex": 151102, + "Kind": 3 + }, + { + "EndIndex": 151145, + "Kind": 3 + }, + { + "EndIndex": 151164, + "Kind": 3 + }, + { + "EndIndex": 151206, + "Kind": 3 + }, + { + "EndIndex": 151297, + "Kind": 3 + }, + { + "EndIndex": 151311, + "Kind": 3 + }, + { + "EndIndex": 151317, + "Kind": 3 + }, + { + "EndIndex": 151335, + "Kind": 3 + }, + { + "EndIndex": 151368, + "Kind": 3 + }, + { + "EndIndex": 151519, + "Kind": 3 + }, + { + "EndIndex": 151540, + "Kind": 3 + }, + { + "EndIndex": 151546, + "Kind": 3 + }, + { + "EndIndex": 151564, + "Kind": 3 + }, + { + "EndIndex": 151606, + "Kind": 3 + }, + { + "EndIndex": 151932, + "Kind": 3 + }, + { + "EndIndex": 151954, + "Kind": 3 + }, + { + "EndIndex": 151960, + "Kind": 3 + }, + { + "EndIndex": 151962, + "Kind": 3 + }, + { + "EndIndex": 151995, + "Kind": 3 + }, + { + "EndIndex": 152026, + "Kind": 3 + }, + { + "EndIndex": 152059, + "Kind": 3 + }, + { + "EndIndex": 152078, + "Kind": 3 + }, + { + "EndIndex": 152120, + "Kind": 3 + }, + { + "EndIndex": 152155, + "Kind": 3 + }, + { + "EndIndex": 152169, + "Kind": 3 + }, + { + "EndIndex": 152175, + "Kind": 3 + }, + { + "EndIndex": 152193, + "Kind": 3 + }, + { + "EndIndex": 152226, + "Kind": 3 + }, + { + "EndIndex": 152377, + "Kind": 3 + }, + { + "EndIndex": 152398, + "Kind": 3 + }, + { + "EndIndex": 152404, + "Kind": 3 + }, + { + "EndIndex": 152422, + "Kind": 3 + }, + { + "EndIndex": 152464, + "Kind": 3 + }, + { + "EndIndex": 152790, + "Kind": 3 + }, + { + "EndIndex": 152812, + "Kind": 3 + }, + { + "EndIndex": 152818, + "Kind": 3 + }, + { + "EndIndex": 152820, + "Kind": 3 + }, + { + "EndIndex": 152856, + "Kind": 3 + }, + { + "EndIndex": 152882, + "Kind": 3 + }, + { + "EndIndex": 152918, + "Kind": 3 + }, + { + "EndIndex": 152937, + "Kind": 3 + }, + { + "EndIndex": 152979, + "Kind": 3 + }, + { + "EndIndex": 153009, + "Kind": 3 + }, + { + "EndIndex": 153023, + "Kind": 3 + }, + { + "EndIndex": 153029, + "Kind": 3 + }, + { + "EndIndex": 153047, + "Kind": 3 + }, + { + "EndIndex": 153080, + "Kind": 3 + }, + { + "EndIndex": 153231, + "Kind": 3 + }, + { + "EndIndex": 153252, + "Kind": 3 + }, + { + "EndIndex": 153258, + "Kind": 3 + }, + { + "EndIndex": 153276, + "Kind": 3 + }, + { + "EndIndex": 153318, + "Kind": 3 + }, + { + "EndIndex": 153644, + "Kind": 3 + }, + { + "EndIndex": 153666, + "Kind": 3 + }, + { + "EndIndex": 153672, + "Kind": 3 + }, + { + "EndIndex": 153674, + "Kind": 3 + }, + { + "EndIndex": 153711, + "Kind": 3 + }, + { + "EndIndex": 153744, + "Kind": 3 + }, + { + "EndIndex": 153776, + "Kind": 3 + }, + { + "EndIndex": 153795, + "Kind": 3 + }, + { + "EndIndex": 153837, + "Kind": 3 + }, + { + "EndIndex": 153874, + "Kind": 3 + }, + { + "EndIndex": 153888, + "Kind": 3 + }, + { + "EndIndex": 153894, + "Kind": 3 + }, + { + "EndIndex": 153912, + "Kind": 3 + }, + { + "EndIndex": 153945, + "Kind": 3 + }, + { + "EndIndex": 154096, + "Kind": 3 + }, + { + "EndIndex": 154117, + "Kind": 3 + }, + { + "EndIndex": 154123, + "Kind": 3 + }, + { + "EndIndex": 154141, + "Kind": 3 + }, + { + "EndIndex": 154183, + "Kind": 3 + }, + { + "EndIndex": 154509, + "Kind": 3 + }, + { + "EndIndex": 154531, + "Kind": 3 + }, + { + "EndIndex": 154537, + "Kind": 3 + }, + { + "EndIndex": 154539, + "Kind": 3 + }, + { + "EndIndex": 154573, + "Kind": 3 + }, + { + "EndIndex": 154626, + "Kind": 3 + }, + { + "EndIndex": 154658, + "Kind": 3 + }, + { + "EndIndex": 154677, + "Kind": 3 + }, + { + "EndIndex": 154719, + "Kind": 3 + }, + { + "EndIndex": 154776, + "Kind": 3 + }, + { + "EndIndex": 154790, + "Kind": 3 + }, + { + "EndIndex": 154796, + "Kind": 3 + }, + { + "EndIndex": 154814, + "Kind": 3 + }, + { + "EndIndex": 154847, + "Kind": 3 + }, + { + "EndIndex": 154998, + "Kind": 3 + }, + { + "EndIndex": 155019, + "Kind": 3 + }, + { + "EndIndex": 155025, + "Kind": 3 + }, + { + "EndIndex": 155043, + "Kind": 3 + }, + { + "EndIndex": 155085, + "Kind": 3 + }, + { + "EndIndex": 155411, + "Kind": 3 + }, + { + "EndIndex": 155433, + "Kind": 3 + }, + { + "EndIndex": 155439, + "Kind": 3 + }, + { + "EndIndex": 155441, + "Kind": 3 + }, + { + "EndIndex": 155474, + "Kind": 3 + }, + { + "EndIndex": 155527, + "Kind": 3 + }, + { + "EndIndex": 155560, + "Kind": 3 + }, + { + "EndIndex": 155579, + "Kind": 3 + }, + { + "EndIndex": 155621, + "Kind": 3 + }, + { + "EndIndex": 155678, + "Kind": 3 + }, + { + "EndIndex": 155692, + "Kind": 3 + }, + { + "EndIndex": 155698, + "Kind": 3 + }, + { + "EndIndex": 155716, + "Kind": 3 + }, + { + "EndIndex": 155749, + "Kind": 3 + }, + { + "EndIndex": 155900, + "Kind": 3 + }, + { + "EndIndex": 155921, + "Kind": 3 + }, + { + "EndIndex": 155927, + "Kind": 3 + }, + { + "EndIndex": 155945, + "Kind": 3 + }, + { + "EndIndex": 155987, + "Kind": 3 + }, + { + "EndIndex": 156313, + "Kind": 3 + }, + { + "EndIndex": 156335, + "Kind": 3 + }, + { + "EndIndex": 156341, + "Kind": 3 + }, + { + "EndIndex": 156343, + "Kind": 3 + }, + { + "EndIndex": 156375, + "Kind": 3 + }, + { + "EndIndex": 156410, + "Kind": 3 + }, + { + "EndIndex": 156440, + "Kind": 3 + }, + { + "EndIndex": 156459, + "Kind": 3 + }, + { + "EndIndex": 156501, + "Kind": 3 + }, + { + "EndIndex": 156540, + "Kind": 3 + }, + { + "EndIndex": 156554, + "Kind": 3 + }, + { + "EndIndex": 156560, + "Kind": 3 + }, + { + "EndIndex": 156578, + "Kind": 3 + }, + { + "EndIndex": 156611, + "Kind": 3 + }, + { + "EndIndex": 156762, + "Kind": 3 + }, + { + "EndIndex": 156783, + "Kind": 3 + }, + { + "EndIndex": 156789, + "Kind": 3 + }, + { + "EndIndex": 156807, + "Kind": 3 + }, + { + "EndIndex": 156849, + "Kind": 3 + }, + { + "EndIndex": 157175, + "Kind": 3 + }, + { + "EndIndex": 157197, + "Kind": 3 + }, + { + "EndIndex": 157203, + "Kind": 3 + }, + { + "EndIndex": 157205, + "Kind": 3 + }, + { + "EndIndex": 157237, + "Kind": 3 + }, + { + "EndIndex": 157300, + "Kind": 3 + }, + { + "EndIndex": 157332, + "Kind": 3 + }, + { + "EndIndex": 157351, + "Kind": 3 + }, + { + "EndIndex": 157393, + "Kind": 3 + }, + { + "EndIndex": 157460, + "Kind": 3 + }, + { + "EndIndex": 157474, + "Kind": 3 + }, + { + "EndIndex": 157480, + "Kind": 3 + }, + { + "EndIndex": 157498, + "Kind": 3 + }, + { + "EndIndex": 157531, + "Kind": 3 + }, + { + "EndIndex": 157682, + "Kind": 3 + }, + { + "EndIndex": 157703, + "Kind": 3 + }, + { + "EndIndex": 157709, + "Kind": 3 + }, + { + "EndIndex": 157727, + "Kind": 3 + }, + { + "EndIndex": 157769, + "Kind": 3 + }, + { + "EndIndex": 158095, + "Kind": 3 + }, + { + "EndIndex": 158117, + "Kind": 3 + }, + { + "EndIndex": 158123, + "Kind": 3 + }, + { + "EndIndex": 158125, + "Kind": 3 + }, + { + "EndIndex": 158163, + "Kind": 3 + }, + { + "EndIndex": 158212, + "Kind": 3 + }, + { + "EndIndex": 158248, + "Kind": 3 + }, + { + "EndIndex": 158267, + "Kind": 3 + }, + { + "EndIndex": 158292, + "Kind": 3 + }, + { + "EndIndex": 158345, + "Kind": 3 + }, + { + "EndIndex": 158359, + "Kind": 3 + }, + { + "EndIndex": 158365, + "Kind": 3 + }, + { + "EndIndex": 158383, + "Kind": 3 + }, + { + "EndIndex": 158416, + "Kind": 3 + }, + { + "EndIndex": 158567, + "Kind": 3 + }, + { + "EndIndex": 158588, + "Kind": 3 + }, + { + "EndIndex": 158594, + "Kind": 3 + }, + { + "EndIndex": 158612, + "Kind": 3 + }, + { + "EndIndex": 158654, + "Kind": 3 + }, + { + "EndIndex": 158980, + "Kind": 3 + }, + { + "EndIndex": 159002, + "Kind": 3 + }, + { + "EndIndex": 159008, + "Kind": 3 + }, + { + "EndIndex": 159010, + "Kind": 3 + }, + { + "EndIndex": 159043, + "Kind": 3 + }, + { + "EndIndex": 159091, + "Kind": 3 + }, + { + "EndIndex": 159122, + "Kind": 3 + }, + { + "EndIndex": 159141, + "Kind": 3 + }, + { + "EndIndex": 159166, + "Kind": 3 + }, + { + "EndIndex": 159218, + "Kind": 3 + }, + { + "EndIndex": 159232, + "Kind": 3 + }, + { + "EndIndex": 159238, + "Kind": 3 + }, + { + "EndIndex": 159256, + "Kind": 3 + }, + { + "EndIndex": 159289, + "Kind": 3 + }, + { + "EndIndex": 159440, + "Kind": 3 + }, + { + "EndIndex": 159461, + "Kind": 3 + }, + { + "EndIndex": 159467, + "Kind": 3 + }, + { + "EndIndex": 159485, + "Kind": 3 + }, + { + "EndIndex": 159527, + "Kind": 3 + }, + { + "EndIndex": 159853, + "Kind": 3 + }, + { + "EndIndex": 159875, + "Kind": 3 + }, + { + "EndIndex": 159881, + "Kind": 3 + }, + { + "EndIndex": 159896, + "Kind": 3 + }, + { + "EndIndex": 159918, + "Kind": 3 + }, + { + "EndIndex": 159952, + "Kind": 3 + }, + { + "EndIndex": 159966, + "Kind": 3 + }, + { + "EndIndex": 159972, + "Kind": 3 + }, + { + "EndIndex": 159974, + "Kind": 3 + }, + { + "EndIndex": 160005, + "Kind": 3 + }, + { + "EndIndex": 160028, + "Kind": 3 + }, + { + "EndIndex": 160057, + "Kind": 3 + }, + { + "EndIndex": 160076, + "Kind": 3 + }, + { + "EndIndex": 160118, + "Kind": 3 + }, + { + "EndIndex": 160145, + "Kind": 3 + }, + { + "EndIndex": 160159, + "Kind": 3 + }, + { + "EndIndex": 160165, + "Kind": 3 + }, + { + "EndIndex": 160183, + "Kind": 3 + }, + { + "EndIndex": 160216, + "Kind": 3 + }, + { + "EndIndex": 160367, + "Kind": 3 + }, + { + "EndIndex": 160388, + "Kind": 3 + }, + { + "EndIndex": 160394, + "Kind": 3 + }, + { + "EndIndex": 160418, + "Kind": 3 + }, + { + "EndIndex": 160447, + "Kind": 3 + }, + { + "EndIndex": 160466, + "Kind": 3 + }, + { + "EndIndex": 160472, + "Kind": 3 + }, + { + "EndIndex": 160490, + "Kind": 3 + }, + { + "EndIndex": 160532, + "Kind": 3 + }, + { + "EndIndex": 160858, + "Kind": 3 + }, + { + "EndIndex": 160880, + "Kind": 3 + }, + { + "EndIndex": 160886, + "Kind": 3 + }, + { + "EndIndex": 160901, + "Kind": 3 + }, + { + "EndIndex": 160926, + "Kind": 3 + }, + { + "EndIndex": 160956, + "Kind": 3 + }, + { + "EndIndex": 160970, + "Kind": 3 + }, + { + "EndIndex": 160976, + "Kind": 3 + }, + { + "EndIndex": 160991, + "Kind": 3 + }, + { + "EndIndex": 161014, + "Kind": 3 + }, + { + "EndIndex": 161042, + "Kind": 3 + }, + { + "EndIndex": 161056, + "Kind": 3 + }, + { + "EndIndex": 161062, + "Kind": 3 + }, + { + "EndIndex": 161077, + "Kind": 3 + }, + { + "EndIndex": 161097, + "Kind": 3 + }, + { + "EndIndex": 161122, + "Kind": 3 + }, + { + "EndIndex": 161136, + "Kind": 3 + }, + { + "EndIndex": 161142, + "Kind": 3 + }, + { + "EndIndex": 161157, + "Kind": 3 + }, + { + "EndIndex": 161180, + "Kind": 3 + }, + { + "EndIndex": 161208, + "Kind": 3 + }, + { + "EndIndex": 161222, + "Kind": 3 + }, + { + "EndIndex": 161228, + "Kind": 3 + }, + { + "EndIndex": 161243, + "Kind": 3 + }, + { + "EndIndex": 161279, + "Kind": 3 + }, + { + "EndIndex": 161320, + "Kind": 3 + }, + { + "EndIndex": 161334, + "Kind": 3 + }, + { + "EndIndex": 161340, + "Kind": 3 + }, + { + "EndIndex": 161355, + "Kind": 3 + }, + { + "EndIndex": 161376, + "Kind": 3 + }, + { + "EndIndex": 161402, + "Kind": 3 + }, + { + "EndIndex": 161416, + "Kind": 3 + }, + { + "EndIndex": 161422, + "Kind": 3 + }, + { + "EndIndex": 161424, + "Kind": 3 + }, + { + "EndIndex": 161455, + "Kind": 3 + }, + { + "EndIndex": 161508, + "Kind": 3 + }, + { + "EndIndex": 161539, + "Kind": 3 + }, + { + "EndIndex": 161558, + "Kind": 3 + }, + { + "EndIndex": 161600, + "Kind": 3 + }, + { + "EndIndex": 161657, + "Kind": 3 + }, + { + "EndIndex": 161671, + "Kind": 3 + }, + { + "EndIndex": 161677, + "Kind": 3 + }, + { + "EndIndex": 161695, + "Kind": 3 + }, + { + "EndIndex": 161728, + "Kind": 3 + }, + { + "EndIndex": 161879, + "Kind": 3 + }, + { + "EndIndex": 161900, + "Kind": 3 + }, + { + "EndIndex": 161906, + "Kind": 3 + }, + { + "EndIndex": 161924, + "Kind": 3 + }, + { + "EndIndex": 161966, + "Kind": 3 + }, + { + "EndIndex": 162292, + "Kind": 3 + }, + { + "EndIndex": 162314, + "Kind": 3 + }, + { + "EndIndex": 162320, + "Kind": 3 + }, + { + "EndIndex": 162322, + "Kind": 3 + }, + { + "EndIndex": 162353, + "Kind": 3 + }, + { + "EndIndex": 162539, + "Kind": 3 + }, + { + "EndIndex": 162568, + "Kind": 3 + }, + { + "EndIndex": 162587, + "Kind": 3 + }, + { + "EndIndex": 162629, + "Kind": 3 + }, + { + "EndIndex": 162819, + "Kind": 3 + }, + { + "EndIndex": 162833, + "Kind": 3 + }, + { + "EndIndex": 162839, + "Kind": 3 + }, + { + "EndIndex": 162857, + "Kind": 3 + }, + { + "EndIndex": 162890, + "Kind": 3 + }, + { + "EndIndex": 163041, + "Kind": 3 + }, + { + "EndIndex": 163062, + "Kind": 3 + }, + { + "EndIndex": 163068, + "Kind": 3 + }, + { + "EndIndex": 163086, + "Kind": 3 + }, + { + "EndIndex": 163128, + "Kind": 3 + }, + { + "EndIndex": 163454, + "Kind": 3 + }, + { + "EndIndex": 163476, + "Kind": 3 + }, + { + "EndIndex": 163482, + "Kind": 3 + }, + { + "EndIndex": 163484, + "Kind": 3 + }, + { + "EndIndex": 163518, + "Kind": 3 + }, + { + "EndIndex": 163563, + "Kind": 3 + }, + { + "EndIndex": 163591, + "Kind": 3 + }, + { + "EndIndex": 163610, + "Kind": 3 + }, + { + "EndIndex": 163652, + "Kind": 3 + }, + { + "EndIndex": 163701, + "Kind": 3 + }, + { + "EndIndex": 163715, + "Kind": 3 + }, + { + "EndIndex": 163721, + "Kind": 3 + }, + { + "EndIndex": 163739, + "Kind": 3 + }, + { + "EndIndex": 163772, + "Kind": 3 + }, + { + "EndIndex": 163923, + "Kind": 3 + }, + { + "EndIndex": 163944, + "Kind": 3 + }, + { + "EndIndex": 163950, + "Kind": 3 + }, + { + "EndIndex": 163968, + "Kind": 3 + }, + { + "EndIndex": 164010, + "Kind": 3 + }, + { + "EndIndex": 164336, + "Kind": 3 + }, + { + "EndIndex": 164358, + "Kind": 3 + }, + { + "EndIndex": 164364, + "Kind": 3 + }, + { + "EndIndex": 164379, + "Kind": 3 + }, + { + "EndIndex": 164400, + "Kind": 3 + }, + { + "EndIndex": 164426, + "Kind": 3 + }, + { + "EndIndex": 164440, + "Kind": 3 + }, + { + "EndIndex": 164446, + "Kind": 3 + }, + { + "EndIndex": 164448, + "Kind": 3 + }, + { + "EndIndex": 164483, + "Kind": 3 + }, + { + "EndIndex": 164527, + "Kind": 3 + }, + { + "EndIndex": 164553, + "Kind": 3 + }, + { + "EndIndex": 164572, + "Kind": 3 + }, + { + "EndIndex": 164614, + "Kind": 3 + }, + { + "EndIndex": 164662, + "Kind": 3 + }, + { + "EndIndex": 164676, + "Kind": 3 + }, + { + "EndIndex": 164682, + "Kind": 3 + }, + { + "EndIndex": 164700, + "Kind": 3 + }, + { + "EndIndex": 164733, + "Kind": 3 + }, + { + "EndIndex": 164884, + "Kind": 3 + }, + { + "EndIndex": 164905, + "Kind": 3 + }, + { + "EndIndex": 164911, + "Kind": 3 + }, + { + "EndIndex": 164929, + "Kind": 3 + }, + { + "EndIndex": 164971, + "Kind": 3 + }, + { + "EndIndex": 165297, + "Kind": 3 + }, + { + "EndIndex": 165319, + "Kind": 3 + }, + { + "EndIndex": 165325, + "Kind": 3 + }, + { + "EndIndex": 165327, + "Kind": 3 + }, + { + "EndIndex": 165357, + "Kind": 3 + }, + { + "EndIndex": 165381, + "Kind": 3 + }, + { + "EndIndex": 165411, + "Kind": 3 + }, + { + "EndIndex": 165430, + "Kind": 3 + }, + { + "EndIndex": 165472, + "Kind": 3 + }, + { + "EndIndex": 165500, + "Kind": 3 + }, + { + "EndIndex": 165514, + "Kind": 3 + }, + { + "EndIndex": 165520, + "Kind": 3 + }, + { + "EndIndex": 165538, + "Kind": 3 + }, + { + "EndIndex": 165571, + "Kind": 3 + }, + { + "EndIndex": 165722, + "Kind": 3 + }, + { + "EndIndex": 165743, + "Kind": 3 + }, + { + "EndIndex": 165749, + "Kind": 3 + }, + { + "EndIndex": 165767, + "Kind": 3 + }, + { + "EndIndex": 165809, + "Kind": 3 + }, + { + "EndIndex": 166135, + "Kind": 3 + }, + { + "EndIndex": 166157, + "Kind": 3 + }, + { + "EndIndex": 166163, + "Kind": 3 + }, + { + "EndIndex": 166165, + "Kind": 3 + }, + { + "EndIndex": 166194, + "Kind": 3 + }, + { + "EndIndex": 166230, + "Kind": 3 + }, + { + "EndIndex": 166257, + "Kind": 3 + }, + { + "EndIndex": 166276, + "Kind": 3 + }, + { + "EndIndex": 166318, + "Kind": 3 + }, + { + "EndIndex": 166358, + "Kind": 3 + }, + { + "EndIndex": 166372, + "Kind": 3 + }, + { + "EndIndex": 166378, + "Kind": 3 + }, + { + "EndIndex": 166396, + "Kind": 3 + }, + { + "EndIndex": 166429, + "Kind": 3 + }, + { + "EndIndex": 166580, + "Kind": 3 + }, + { + "EndIndex": 166601, + "Kind": 3 + }, + { + "EndIndex": 166607, + "Kind": 3 + }, + { + "EndIndex": 166625, + "Kind": 3 + }, + { + "EndIndex": 166667, + "Kind": 3 + }, + { + "EndIndex": 166993, + "Kind": 3 + }, + { + "EndIndex": 167015, + "Kind": 3 + }, + { + "EndIndex": 167021, + "Kind": 3 + }, + { + "EndIndex": 167023, + "Kind": 3 + }, + { + "EndIndex": 167060, + "Kind": 3 + }, + { + "EndIndex": 167115, + "Kind": 3 + }, + { + "EndIndex": 167150, + "Kind": 3 + }, + { + "EndIndex": 167169, + "Kind": 3 + }, + { + "EndIndex": 167211, + "Kind": 3 + }, + { + "EndIndex": 167270, + "Kind": 3 + }, + { + "EndIndex": 167284, + "Kind": 3 + }, + { + "EndIndex": 167290, + "Kind": 3 + }, + { + "EndIndex": 167308, + "Kind": 3 + }, + { + "EndIndex": 167341, + "Kind": 3 + }, + { + "EndIndex": 167492, + "Kind": 3 + }, + { + "EndIndex": 167513, + "Kind": 3 + }, + { + "EndIndex": 167519, + "Kind": 3 + }, + { + "EndIndex": 167537, + "Kind": 3 + }, + { + "EndIndex": 167579, + "Kind": 3 + }, + { + "EndIndex": 167905, + "Kind": 3 + }, + { + "EndIndex": 167927, + "Kind": 3 + }, + { + "EndIndex": 167933, + "Kind": 3 + }, + { + "EndIndex": 167935, + "Kind": 3 + }, + { + "EndIndex": 167976, + "Kind": 3 + }, + { + "EndIndex": 168007, + "Kind": 3 + }, + { + "EndIndex": 168043, + "Kind": 3 + }, + { + "EndIndex": 168062, + "Kind": 3 + }, + { + "EndIndex": 168104, + "Kind": 3 + }, + { + "EndIndex": 168139, + "Kind": 3 + }, + { + "EndIndex": 168153, + "Kind": 3 + }, + { + "EndIndex": 168159, + "Kind": 3 + }, + { + "EndIndex": 168177, + "Kind": 3 + }, + { + "EndIndex": 168210, + "Kind": 3 + }, + { + "EndIndex": 168361, + "Kind": 3 + }, + { + "EndIndex": 168382, + "Kind": 3 + }, + { + "EndIndex": 168388, + "Kind": 3 + }, + { + "EndIndex": 168412, + "Kind": 3 + }, + { + "EndIndex": 168441, + "Kind": 3 + }, + { + "EndIndex": 168460, + "Kind": 3 + }, + { + "EndIndex": 168466, + "Kind": 3 + }, + { + "EndIndex": 168484, + "Kind": 3 + }, + { + "EndIndex": 168526, + "Kind": 3 + }, + { + "EndIndex": 168852, + "Kind": 3 + }, + { + "EndIndex": 168874, + "Kind": 3 + }, + { + "EndIndex": 168880, + "Kind": 3 + }, + { + "EndIndex": 168895, + "Kind": 3 + }, + { + "EndIndex": 168920, + "Kind": 3 + }, + { + "EndIndex": 168950, + "Kind": 3 + }, + { + "EndIndex": 168964, + "Kind": 3 + }, + { + "EndIndex": 168970, + "Kind": 3 + }, + { + "EndIndex": 168985, + "Kind": 3 + }, + { + "EndIndex": 169005, + "Kind": 3 + }, + { + "EndIndex": 169030, + "Kind": 3 + }, + { + "EndIndex": 169044, + "Kind": 3 + }, + { + "EndIndex": 169050, + "Kind": 3 + }, + { + "EndIndex": 169065, + "Kind": 3 + }, + { + "EndIndex": 169088, + "Kind": 3 + }, + { + "EndIndex": 169116, + "Kind": 3 + }, + { + "EndIndex": 169130, + "Kind": 3 + }, + { + "EndIndex": 169136, + "Kind": 3 + }, + { + "EndIndex": 169151, + "Kind": 3 + }, + { + "EndIndex": 169174, + "Kind": 3 + }, + { + "EndIndex": 169202, + "Kind": 3 + }, + { + "EndIndex": 169216, + "Kind": 3 + }, + { + "EndIndex": 169222, + "Kind": 3 + }, + { + "EndIndex": 169237, + "Kind": 3 + }, + { + "EndIndex": 169259, + "Kind": 3 + }, + { + "EndIndex": 169286, + "Kind": 3 + }, + { + "EndIndex": 169300, + "Kind": 3 + }, + { + "EndIndex": 169306, + "Kind": 3 + }, + { + "EndIndex": 169308, + "Kind": 3 + }, + { + "EndIndex": 169349, + "Kind": 3 + }, + { + "EndIndex": 169380, + "Kind": 3 + }, + { + "EndIndex": 169416, + "Kind": 3 + }, + { + "EndIndex": 169435, + "Kind": 3 + }, + { + "EndIndex": 169477, + "Kind": 3 + }, + { + "EndIndex": 169512, + "Kind": 3 + }, + { + "EndIndex": 169526, + "Kind": 3 + }, + { + "EndIndex": 169532, + "Kind": 3 + }, + { + "EndIndex": 169550, + "Kind": 3 + }, + { + "EndIndex": 169583, + "Kind": 3 + }, + { + "EndIndex": 169734, + "Kind": 3 + }, + { + "EndIndex": 169755, + "Kind": 3 + }, + { + "EndIndex": 169761, + "Kind": 3 + }, + { + "EndIndex": 169785, + "Kind": 3 + }, + { + "EndIndex": 169814, + "Kind": 3 + }, + { + "EndIndex": 169833, + "Kind": 3 + }, + { + "EndIndex": 169839, + "Kind": 3 + }, + { + "EndIndex": 169857, + "Kind": 3 + }, + { + "EndIndex": 169899, + "Kind": 3 + }, + { + "EndIndex": 170225, + "Kind": 3 + }, + { + "EndIndex": 170247, + "Kind": 3 + }, + { + "EndIndex": 170253, + "Kind": 3 + }, + { + "EndIndex": 170268, + "Kind": 3 + }, + { + "EndIndex": 170293, + "Kind": 3 + }, + { + "EndIndex": 170323, + "Kind": 3 + }, + { + "EndIndex": 170337, + "Kind": 3 + }, + { + "EndIndex": 170343, + "Kind": 3 + }, + { + "EndIndex": 170358, + "Kind": 3 + }, + { + "EndIndex": 170378, + "Kind": 3 + }, + { + "EndIndex": 170403, + "Kind": 3 + }, + { + "EndIndex": 170417, + "Kind": 3 + }, + { + "EndIndex": 170423, + "Kind": 3 + }, + { + "EndIndex": 170438, + "Kind": 3 + }, + { + "EndIndex": 170461, + "Kind": 3 + }, + { + "EndIndex": 170489, + "Kind": 3 + }, + { + "EndIndex": 170503, + "Kind": 3 + }, + { + "EndIndex": 170509, + "Kind": 3 + }, + { + "EndIndex": 170524, + "Kind": 3 + }, + { + "EndIndex": 170547, + "Kind": 3 + }, + { + "EndIndex": 170575, + "Kind": 3 + }, + { + "EndIndex": 170589, + "Kind": 3 + }, + { + "EndIndex": 170595, + "Kind": 3 + }, + { + "EndIndex": 170610, + "Kind": 3 + }, + { + "EndIndex": 170632, + "Kind": 3 + }, + { + "EndIndex": 170659, + "Kind": 3 + }, + { + "EndIndex": 170673, + "Kind": 3 + }, + { + "EndIndex": 170679, + "Kind": 3 + }, + { + "EndIndex": 170681, + "Kind": 3 + }, + { + "EndIndex": 170714, + "Kind": 3 + }, + { + "EndIndex": 170744, + "Kind": 3 + }, + { + "EndIndex": 170774, + "Kind": 3 + }, + { + "EndIndex": 170793, + "Kind": 3 + }, + { + "EndIndex": 170835, + "Kind": 3 + }, + { + "EndIndex": 170869, + "Kind": 3 + }, + { + "EndIndex": 170883, + "Kind": 3 + }, + { + "EndIndex": 170889, + "Kind": 3 + }, + { + "EndIndex": 170907, + "Kind": 3 + }, + { + "EndIndex": 170940, + "Kind": 3 + }, + { + "EndIndex": 171091, + "Kind": 3 + }, + { + "EndIndex": 171112, + "Kind": 3 + }, + { + "EndIndex": 171118, + "Kind": 3 + }, + { + "EndIndex": 171136, + "Kind": 3 + }, + { + "EndIndex": 171178, + "Kind": 3 + }, + { + "EndIndex": 171504, + "Kind": 3 + }, + { + "EndIndex": 171526, + "Kind": 3 + }, + { + "EndIndex": 171532, + "Kind": 3 + }, + { + "EndIndex": 171534, + "Kind": 3 + }, + { + "EndIndex": 171578, + "Kind": 3 + }, + { + "EndIndex": 171612, + "Kind": 3 + }, + { + "EndIndex": 171651, + "Kind": 3 + }, + { + "EndIndex": 171670, + "Kind": 3 + }, + { + "EndIndex": 171712, + "Kind": 3 + }, + { + "EndIndex": 171750, + "Kind": 3 + }, + { + "EndIndex": 171764, + "Kind": 3 + }, + { + "EndIndex": 171770, + "Kind": 3 + }, + { + "EndIndex": 171788, + "Kind": 3 + }, + { + "EndIndex": 171821, + "Kind": 3 + }, + { + "EndIndex": 171972, + "Kind": 3 + }, + { + "EndIndex": 171993, + "Kind": 3 + }, + { + "EndIndex": 171999, + "Kind": 3 + }, + { + "EndIndex": 172023, + "Kind": 3 + }, + { + "EndIndex": 172052, + "Kind": 3 + }, + { + "EndIndex": 172071, + "Kind": 3 + }, + { + "EndIndex": 172077, + "Kind": 3 + }, + { + "EndIndex": 172095, + "Kind": 3 + }, + { + "EndIndex": 172137, + "Kind": 3 + }, + { + "EndIndex": 172463, + "Kind": 3 + }, + { + "EndIndex": 172485, + "Kind": 3 + }, + { + "EndIndex": 172491, + "Kind": 3 + }, + { + "EndIndex": 172506, + "Kind": 3 + }, + { + "EndIndex": 172531, + "Kind": 3 + }, + { + "EndIndex": 172561, + "Kind": 3 + }, + { + "EndIndex": 172575, + "Kind": 3 + }, + { + "EndIndex": 172581, + "Kind": 3 + }, + { + "EndIndex": 172596, + "Kind": 3 + }, + { + "EndIndex": 172616, + "Kind": 3 + }, + { + "EndIndex": 172641, + "Kind": 3 + }, + { + "EndIndex": 172655, + "Kind": 3 + }, + { + "EndIndex": 172661, + "Kind": 3 + }, + { + "EndIndex": 172676, + "Kind": 3 + }, + { + "EndIndex": 172699, + "Kind": 3 + }, + { + "EndIndex": 172727, + "Kind": 3 + }, + { + "EndIndex": 172741, + "Kind": 3 + }, + { + "EndIndex": 172747, + "Kind": 3 + }, + { + "EndIndex": 172762, + "Kind": 3 + }, + { + "EndIndex": 172785, + "Kind": 3 + }, + { + "EndIndex": 172813, + "Kind": 3 + }, + { + "EndIndex": 172827, + "Kind": 3 + }, + { + "EndIndex": 172833, + "Kind": 3 + }, + { + "EndIndex": 172848, + "Kind": 3 + }, + { + "EndIndex": 172870, + "Kind": 3 + }, + { + "EndIndex": 172897, + "Kind": 3 + }, + { + "EndIndex": 172911, + "Kind": 3 + }, + { + "EndIndex": 172917, + "Kind": 3 + }, + { + "EndIndex": 172919, + "Kind": 3 + }, + { + "EndIndex": 172951, + "Kind": 3 + }, + { + "EndIndex": 173054, + "Kind": 3 + }, + { + "EndIndex": 173086, + "Kind": 3 + }, + { + "EndIndex": 173105, + "Kind": 3 + }, + { + "EndIndex": 173147, + "Kind": 3 + }, + { + "EndIndex": 173254, + "Kind": 3 + }, + { + "EndIndex": 173268, + "Kind": 3 + }, + { + "EndIndex": 173274, + "Kind": 3 + }, + { + "EndIndex": 173292, + "Kind": 3 + }, + { + "EndIndex": 173325, + "Kind": 3 + }, + { + "EndIndex": 173476, + "Kind": 3 + }, + { + "EndIndex": 173497, + "Kind": 3 + }, + { + "EndIndex": 173503, + "Kind": 3 + }, + { + "EndIndex": 173521, + "Kind": 3 + }, + { + "EndIndex": 173563, + "Kind": 3 + }, + { + "EndIndex": 173889, + "Kind": 3 + }, + { + "EndIndex": 173911, + "Kind": 3 + }, + { + "EndIndex": 173917, + "Kind": 3 + }, + { + "EndIndex": 173919, + "Kind": 3 + }, + { + "EndIndex": 173948, + "Kind": 3 + }, + { + "EndIndex": 174003, + "Kind": 3 + }, + { + "EndIndex": 174032, + "Kind": 3 + }, + { + "EndIndex": 174051, + "Kind": 3 + }, + { + "EndIndex": 174093, + "Kind": 3 + }, + { + "EndIndex": 174152, + "Kind": 3 + }, + { + "EndIndex": 174166, + "Kind": 3 + }, + { + "EndIndex": 174172, + "Kind": 3 + }, + { + "EndIndex": 174190, + "Kind": 3 + }, + { + "EndIndex": 174223, + "Kind": 3 + }, + { + "EndIndex": 174374, + "Kind": 3 + }, + { + "EndIndex": 174395, + "Kind": 3 + }, + { + "EndIndex": 174401, + "Kind": 3 + }, + { + "EndIndex": 174419, + "Kind": 3 + }, + { + "EndIndex": 174461, + "Kind": 3 + }, + { + "EndIndex": 174787, + "Kind": 3 + }, + { + "EndIndex": 174809, + "Kind": 3 + }, + { + "EndIndex": 174815, + "Kind": 3 + }, + { + "EndIndex": 174817, + "Kind": 3 + }, + { + "EndIndex": 174847, + "Kind": 3 + }, + { + "EndIndex": 174902, + "Kind": 3 + }, + { + "EndIndex": 174930, + "Kind": 3 + }, + { + "EndIndex": 174949, + "Kind": 3 + }, + { + "EndIndex": 174989, + "Kind": 3 + }, + { + "EndIndex": 175048, + "Kind": 3 + }, + { + "EndIndex": 175062, + "Kind": 3 + }, + { + "EndIndex": 175068, + "Kind": 3 + }, + { + "EndIndex": 175086, + "Kind": 3 + }, + { + "EndIndex": 175119, + "Kind": 3 + }, + { + "EndIndex": 175270, + "Kind": 3 + }, + { + "EndIndex": 175291, + "Kind": 3 + }, + { + "EndIndex": 175297, + "Kind": 3 + }, + { + "EndIndex": 175315, + "Kind": 3 + }, + { + "EndIndex": 175357, + "Kind": 3 + }, + { + "EndIndex": 175683, + "Kind": 3 + }, + { + "EndIndex": 175705, + "Kind": 3 + }, + { + "EndIndex": 175711, + "Kind": 3 + }, + { + "EndIndex": 175713, + "Kind": 3 + }, + { + "EndIndex": 175740, + "Kind": 3 + }, + { + "EndIndex": 175782, + "Kind": 3 + }, + { + "EndIndex": 175807, + "Kind": 3 + }, + { + "EndIndex": 175826, + "Kind": 3 + }, + { + "EndIndex": 175868, + "Kind": 3 + }, + { + "EndIndex": 175914, + "Kind": 3 + }, + { + "EndIndex": 175928, + "Kind": 3 + }, + { + "EndIndex": 175934, + "Kind": 3 + }, + { + "EndIndex": 175952, + "Kind": 3 + }, + { + "EndIndex": 175985, + "Kind": 3 + }, + { + "EndIndex": 176136, + "Kind": 3 + }, + { + "EndIndex": 176157, + "Kind": 3 + }, + { + "EndIndex": 176163, + "Kind": 3 + }, + { + "EndIndex": 176181, + "Kind": 3 + }, + { + "EndIndex": 176223, + "Kind": 3 + }, + { + "EndIndex": 176549, + "Kind": 3 + }, + { + "EndIndex": 176571, + "Kind": 3 + }, + { + "EndIndex": 176577, + "Kind": 3 + }, + { + "EndIndex": 176579, + "Kind": 3 + }, + { + "EndIndex": 176605, + "Kind": 3 + }, + { + "EndIndex": 176648, + "Kind": 3 + }, + { + "EndIndex": 176715, + "Kind": 3 + }, + { + "EndIndex": 176750, + "Kind": 3 + }, + { + "EndIndex": 176769, + "Kind": 3 + }, + { + "EndIndex": 176811, + "Kind": 3 + }, + { + "EndIndex": 176882, + "Kind": 3 + }, + { + "EndIndex": 176896, + "Kind": 3 + }, + { + "EndIndex": 176902, + "Kind": 3 + }, + { + "EndIndex": 176920, + "Kind": 3 + }, + { + "EndIndex": 176953, + "Kind": 3 + }, + { + "EndIndex": 177104, + "Kind": 3 + }, + { + "EndIndex": 177125, + "Kind": 3 + }, + { + "EndIndex": 177131, + "Kind": 3 + }, + { + "EndIndex": 177149, + "Kind": 3 + }, + { + "EndIndex": 177191, + "Kind": 3 + }, + { + "EndIndex": 177517, + "Kind": 3 + }, + { + "EndIndex": 177539, + "Kind": 3 + }, + { + "EndIndex": 177545, + "Kind": 3 + }, + { + "EndIndex": 177547, + "Kind": 3 + }, + { + "EndIndex": 177613, + "Kind": 3 + }, + { + "EndIndex": 177746, + "Kind": 3 + }, + { + "EndIndex": 177756, + "Kind": 3 + }, + { + "EndIndex": 177758, + "Kind": 3 + }, + { + "EndIndex": 177900, + "Kind": 3 + }, + { + "EndIndex": 177972, + "Kind": 3 + }, + { + "EndIndex": 178868, + "Kind": 3 + }, + { + "EndIndex": 178878, + "Kind": 3 + }, + { + "EndIndex": 178880, + "Kind": 3 + }, + { + "EndIndex": 178903, + "Kind": 3 + }, + { + "EndIndex": 178921, + "Kind": 3 + }, + { + "EndIndex": 178934, + "Kind": 3 + }, + { + "EndIndex": 178984, + "Kind": 3 + }, + { + "EndIndex": 178994, + "Kind": 3 + }, + { + "EndIndex": 178996, + "Kind": 3 + }, + { + "EndIndex": 179016, + "Kind": 3 + }, + { + "EndIndex": 179130, + "Kind": 3 + }, + { + "EndIndex": 179148, + "Kind": 3 + }, + { + "EndIndex": 179150, + "Kind": 3 + }, + { + "EndIndex": 179170, + "Kind": 3 + }, + { + "EndIndex": 179278, + "Kind": 3 + }, + { + "EndIndex": 179296, + "Kind": 3 + }, + { + "EndIndex": 179298, + "Kind": 3 + }, + { + "EndIndex": 179315, + "Kind": 3 + }, + { + "EndIndex": 179635, + "Kind": 3 + }, + { + "EndIndex": 179650, + "Kind": 3 + }, + { + "EndIndex": 179652, + "Kind": 3 + }, + { + "EndIndex": 179670, + "Kind": 3 + }, + { + "EndIndex": 179779, + "Kind": 3 + }, + { + "EndIndex": 179794, + "Kind": 3 + }, + { + "EndIndex": 179796, + "Kind": 3 + }, + { + "EndIndex": 179827, + "Kind": 3 + }, + { + "EndIndex": 180020, + "Kind": 3 + }, + { + "EndIndex": 180030, + "Kind": 3 + }, + { + "EndIndex": 180032, + "Kind": 3 + }, + { + "EndIndex": 180058, + "Kind": 3 + }, + { + "EndIndex": 180589, + "Kind": 3 + }, + { + "EndIndex": 180620, + "Kind": 3 + }, + { + "EndIndex": 180650, + "Kind": 3 + }, + { + "EndIndex": 180678, + "Kind": 3 + }, + { + "EndIndex": 180684, + "Kind": 3 + }, + { + "EndIndex": 180710, + "Kind": 3 + }, + { + "EndIndex": 180792, + "Kind": 3 + }, + { + "EndIndex": 180810, + "Kind": 3 + }, + { + "EndIndex": 180816, + "Kind": 3 + }, + { + "EndIndex": 180843, + "Kind": 3 + }, + { + "EndIndex": 180877, + "Kind": 3 + }, + { + "EndIndex": 180908, + "Kind": 3 + }, + { + "EndIndex": 180930, + "Kind": 3 + }, + { + "EndIndex": 180936, + "Kind": 3 + }, + { + "EndIndex": 180969, + "Kind": 3 + }, + { + "EndIndex": 180998, + "Kind": 3 + }, + { + "EndIndex": 181019, + "Kind": 3 + }, + { + "EndIndex": 181025, + "Kind": 3 + }, + { + "EndIndex": 181055, + "Kind": 3 + }, + { + "EndIndex": 181086, + "Kind": 3 + }, + { + "EndIndex": 181108, + "Kind": 3 + }, + { + "EndIndex": 181114, + "Kind": 3 + }, + { + "EndIndex": 181144, + "Kind": 3 + }, + { + "EndIndex": 181175, + "Kind": 3 + }, + { + "EndIndex": 181197, + "Kind": 3 + }, + { + "EndIndex": 181203, + "Kind": 3 + }, + { + "EndIndex": 181242, + "Kind": 3 + }, + { + "EndIndex": 181281, + "Kind": 3 + }, + { + "EndIndex": 181295, + "Kind": 3 + }, + { + "EndIndex": 181301, + "Kind": 3 + }, + { + "EndIndex": 181334, + "Kind": 3 + }, + { + "EndIndex": 181363, + "Kind": 3 + }, + { + "EndIndex": 181377, + "Kind": 3 + }, + { + "EndIndex": 181383, + "Kind": 3 + }, + { + "EndIndex": 181413, + "Kind": 3 + }, + { + "EndIndex": 181443, + "Kind": 3 + }, + { + "EndIndex": 181465, + "Kind": 3 + }, + { + "EndIndex": 181471, + "Kind": 3 + }, + { + "EndIndex": 181492, + "Kind": 3 + }, + { + "EndIndex": 181524, + "Kind": 3 + }, + { + "EndIndex": 181558, + "Kind": 3 + }, + { + "EndIndex": 181579, + "Kind": 3 + }, + { + "EndIndex": 181585, + "Kind": 3 + }, + { + "EndIndex": 181617, + "Kind": 3 + }, + { + "EndIndex": 181651, + "Kind": 3 + }, + { + "EndIndex": 181672, + "Kind": 3 + }, + { + "EndIndex": 181678, + "Kind": 3 + }, + { + "EndIndex": 181734, + "Kind": 3 + }, + { + "EndIndex": 182269, + "Kind": 3 + }, + { + "EndIndex": 182283, + "Kind": 3 + }, + { + "EndIndex": 182289, + "Kind": 3 + }, + { + "EndIndex": 182307, + "Kind": 3 + }, + { + "EndIndex": 182340, + "Kind": 3 + }, + { + "EndIndex": 182491, + "Kind": 3 + }, + { + "EndIndex": 182512, + "Kind": 3 + }, + { + "EndIndex": 182518, + "Kind": 3 + }, + { + "EndIndex": 182543, + "Kind": 3 + }, + { + "EndIndex": 182576, + "Kind": 3 + }, + { + "EndIndex": 182604, + "Kind": 3 + }, + { + "EndIndex": 182610, + "Kind": 3 + }, + { + "EndIndex": 182640, + "Kind": 3 + }, + { + "EndIndex": 182671, + "Kind": 3 + }, + { + "EndIndex": 182693, + "Kind": 3 + }, + { + "EndIndex": 182699, + "Kind": 3 + }, + { + "EndIndex": 182723, + "Kind": 3 + }, + { + "EndIndex": 182752, + "Kind": 3 + }, + { + "EndIndex": 182770, + "Kind": 3 + }, + { + "EndIndex": 182776, + "Kind": 3 + }, + { + "EndIndex": 182806, + "Kind": 3 + }, + { + "EndIndex": 182836, + "Kind": 3 + }, + { + "EndIndex": 182858, + "Kind": 3 + }, + { + "EndIndex": 182864, + "Kind": 3 + }, + { + "EndIndex": 182895, + "Kind": 3 + }, + { + "EndIndex": 182925, + "Kind": 3 + }, + { + "EndIndex": 182953, + "Kind": 3 + }, + { + "EndIndex": 182959, + "Kind": 3 + }, + { + "EndIndex": 182990, + "Kind": 3 + }, + { + "EndIndex": 183020, + "Kind": 3 + }, + { + "EndIndex": 183048, + "Kind": 3 + }, + { + "EndIndex": 183054, + "Kind": 3 + }, + { + "EndIndex": 183084, + "Kind": 3 + }, + { + "EndIndex": 183115, + "Kind": 3 + }, + { + "EndIndex": 183137, + "Kind": 3 + }, + { + "EndIndex": 183143, + "Kind": 3 + }, + { + "EndIndex": 183170, + "Kind": 3 + }, + { + "EndIndex": 183220, + "Kind": 3 + }, + { + "EndIndex": 183250, + "Kind": 3 + }, + { + "EndIndex": 183256, + "Kind": 3 + }, + { + "EndIndex": 183293, + "Kind": 3 + }, + { + "EndIndex": 183343, + "Kind": 3 + }, + { + "EndIndex": 183373, + "Kind": 3 + }, + { + "EndIndex": 183379, + "Kind": 3 + }, + { + "EndIndex": 183404, + "Kind": 3 + }, + { + "EndIndex": 183434, + "Kind": 3 + }, + { + "EndIndex": 183453, + "Kind": 3 + }, + { + "EndIndex": 183459, + "Kind": 3 + }, + { + "EndIndex": 183491, + "Kind": 3 + }, + { + "EndIndex": 183521, + "Kind": 3 + }, + { + "EndIndex": 183549, + "Kind": 3 + }, + { + "EndIndex": 183555, + "Kind": 3 + }, + { + "EndIndex": 183587, + "Kind": 3 + }, + { + "EndIndex": 183617, + "Kind": 3 + }, + { + "EndIndex": 183645, + "Kind": 3 + }, + { + "EndIndex": 183651, + "Kind": 3 + }, + { + "EndIndex": 183691, + "Kind": 3 + }, + { + "EndIndex": 183726, + "Kind": 3 + }, + { + "EndIndex": 183747, + "Kind": 3 + }, + { + "EndIndex": 183753, + "Kind": 3 + }, + { + "EndIndex": 183780, + "Kind": 3 + }, + { + "EndIndex": 183853, + "Kind": 3 + }, + { + "EndIndex": 183871, + "Kind": 3 + }, + { + "EndIndex": 183877, + "Kind": 3 + }, + { + "EndIndex": 183901, + "Kind": 3 + }, + { + "EndIndex": 183930, + "Kind": 3 + }, + { + "EndIndex": 183949, + "Kind": 3 + }, + { + "EndIndex": 183955, + "Kind": 3 + }, + { + "EndIndex": 183973, + "Kind": 3 + }, + { + "EndIndex": 184015, + "Kind": 3 + }, + { + "EndIndex": 184341, + "Kind": 3 + }, + { + "EndIndex": 184363, + "Kind": 3 + }, + { + "EndIndex": 184369, + "Kind": 3 + }, + { + "EndIndex": 184398, + "Kind": 3 + }, + { + "EndIndex": 184499, + "Kind": 3 + }, + { + "EndIndex": 184513, + "Kind": 3 + }, + { + "EndIndex": 184519, + "Kind": 3 + }, + { + "EndIndex": 184546, + "Kind": 3 + }, + { + "EndIndex": 184684, + "Kind": 3 + }, + { + "EndIndex": 184712, + "Kind": 3 + }, + { + "EndIndex": 184718, + "Kind": 3 + }, + { + "EndIndex": 184741, + "Kind": 3 + }, + { + "EndIndex": 184918, + "Kind": 3 + }, + { + "EndIndex": 184946, + "Kind": 3 + }, + { + "EndIndex": 184952, + "Kind": 3 + }, + { + "EndIndex": 184974, + "Kind": 3 + }, + { + "EndIndex": 185022, + "Kind": 3 + }, + { + "EndIndex": 185043, + "Kind": 3 + }, + { + "EndIndex": 185049, + "Kind": 3 + }, + { + "EndIndex": 185070, + "Kind": 3 + }, + { + "EndIndex": 185101, + "Kind": 3 + }, + { + "EndIndex": 185129, + "Kind": 3 + }, + { + "EndIndex": 185135, + "Kind": 3 + }, + { + "EndIndex": 185160, + "Kind": 3 + }, + { + "EndIndex": 185374, + "Kind": 3 + }, + { + "EndIndex": 185392, + "Kind": 3 + }, + { + "EndIndex": 185398, + "Kind": 3 + }, + { + "EndIndex": 185439, + "Kind": 3 + }, + { + "EndIndex": 185916, + "Kind": 3 + }, + { + "EndIndex": 185930, + "Kind": 3 + }, + { + "EndIndex": 185936, + "Kind": 3 + }, + { + "EndIndex": 185986, + "Kind": 3 + }, + { + "EndIndex": 186266, + "Kind": 3 + }, + { + "EndIndex": 186288, + "Kind": 3 + }, + { + "EndIndex": 186294, + "Kind": 3 + }, + { + "EndIndex": 186332, + "Kind": 3 + }, + { + "EndIndex": 186519, + "Kind": 3 + }, + { + "EndIndex": 186547, + "Kind": 3 + }, + { + "EndIndex": 186553, + "Kind": 3 + }, + { + "EndIndex": 186594, + "Kind": 3 + }, + { + "EndIndex": 186745, + "Kind": 3 + }, + { + "EndIndex": 186759, + "Kind": 3 + }, + { + "EndIndex": 186765, + "Kind": 3 + }, + { + "EndIndex": 186808, + "Kind": 3 + }, + { + "EndIndex": 187064, + "Kind": 3 + }, + { + "EndIndex": 187082, + "Kind": 3 + }, + { + "EndIndex": 187088, + "Kind": 3 + }, + { + "EndIndex": 187106, + "Kind": 3 + }, + { + "EndIndex": 187143, + "Kind": 3 + }, + { + "EndIndex": 187340, + "Kind": 3 + }, + { + "EndIndex": 187354, + "Kind": 3 + }, + { + "EndIndex": 187360, + "Kind": 3 + }, + { + "EndIndex": 187380, + "Kind": 3 + }, + { + "EndIndex": 187535, + "Kind": 3 + }, + { + "EndIndex": 187554, + "Kind": 3 + }, + { + "EndIndex": 187560, + "Kind": 3 + }, + { + "EndIndex": 187585, + "Kind": 3 + }, + { + "EndIndex": 187872, + "Kind": 3 + }, + { + "EndIndex": 187890, + "Kind": 3 + }, + { + "EndIndex": 187896, + "Kind": 3 + }, + { + "EndIndex": 187932, + "Kind": 3 + }, + { + "EndIndex": 188106, + "Kind": 3 + }, + { + "EndIndex": 188120, + "Kind": 3 + }, + { + "EndIndex": 188126, + "Kind": 3 + }, + { + "EndIndex": 188150, + "Kind": 3 + }, + { + "EndIndex": 188296, + "Kind": 3 + }, + { + "EndIndex": 188318, + "Kind": 3 + }, + { + "EndIndex": 188324, + "Kind": 3 + }, + { + "EndIndex": 188348, + "Kind": 3 + }, + { + "EndIndex": 188492, + "Kind": 3 + }, + { + "EndIndex": 188514, + "Kind": 3 + }, + { + "EndIndex": 188520, + "Kind": 3 + }, + { + "EndIndex": 188544, + "Kind": 3 + }, + { + "EndIndex": 188656, + "Kind": 3 + }, + { + "EndIndex": 188677, + "Kind": 3 + }, + { + "EndIndex": 188683, + "Kind": 3 + }, + { + "EndIndex": 188707, + "Kind": 3 + }, + { + "EndIndex": 188847, + "Kind": 3 + }, + { + "EndIndex": 188869, + "Kind": 3 + }, + { + "EndIndex": 188875, + "Kind": 3 + }, + { + "EndIndex": 188899, + "Kind": 3 + }, + { + "EndIndex": 189054, + "Kind": 3 + }, + { + "EndIndex": 189076, + "Kind": 3 + }, + { + "EndIndex": 189082, + "Kind": 3 + }, + { + "EndIndex": 189106, + "Kind": 3 + }, + { + "EndIndex": 189250, + "Kind": 3 + }, + { + "EndIndex": 189272, + "Kind": 3 + }, + { + "EndIndex": 189278, + "Kind": 3 + }, + { + "EndIndex": 189302, + "Kind": 3 + }, + { + "EndIndex": 189548, + "Kind": 3 + }, + { + "EndIndex": 189570, + "Kind": 3 + }, + { + "EndIndex": 189576, + "Kind": 3 + }, + { + "EndIndex": 189600, + "Kind": 3 + }, + { + "EndIndex": 189755, + "Kind": 3 + }, + { + "EndIndex": 189777, + "Kind": 3 + }, + { + "EndIndex": 189783, + "Kind": 3 + }, + { + "EndIndex": 189823, + "Kind": 3 + }, + { + "EndIndex": 190012, + "Kind": 3 + }, + { + "EndIndex": 190026, + "Kind": 3 + }, + { + "EndIndex": 190032, + "Kind": 3 + }, + { + "EndIndex": 190054, + "Kind": 3 + }, + { + "EndIndex": 190235, + "Kind": 3 + }, + { + "EndIndex": 190263, + "Kind": 3 + }, + { + "EndIndex": 190269, + "Kind": 3 + }, + { + "EndIndex": 190291, + "Kind": 3 + }, + { + "EndIndex": 190397, + "Kind": 3 + }, + { + "EndIndex": 190425, + "Kind": 3 + }, + { + "EndIndex": 190431, + "Kind": 3 + }, + { + "EndIndex": 190461, + "Kind": 3 + }, + { + "EndIndex": 190590, + "Kind": 3 + }, + { + "EndIndex": 190618, + "Kind": 3 + }, + { + "EndIndex": 190624, + "Kind": 3 + }, + { + "EndIndex": 190642, + "Kind": 3 + }, + { + "EndIndex": 190676, + "Kind": 3 + }, + { + "EndIndex": 190935, + "Kind": 3 + }, + { + "EndIndex": 190949, + "Kind": 3 + }, + { + "EndIndex": 190955, + "Kind": 3 + }, + { + "EndIndex": 190986, + "Kind": 3 + }, + { + "EndIndex": 191423, + "Kind": 3 + }, + { + "EndIndex": 191479, + "Kind": 3 + }, + { + "EndIndex": 191485, + "Kind": 3 + }, + { + "EndIndex": 191512, + "Kind": 3 + }, + { + "EndIndex": 191734, + "Kind": 3 + }, + { + "EndIndex": 191748, + "Kind": 3 + }, + { + "EndIndex": 191754, + "Kind": 3 + }, + { + "EndIndex": 191784, + "Kind": 3 + }, + { + "EndIndex": 191889, + "Kind": 3 + }, + { + "EndIndex": 191910, + "Kind": 3 + }, + { + "EndIndex": 191916, + "Kind": 3 + }, + { + "EndIndex": 191957, + "Kind": 3 + }, + { + "EndIndex": 192246, + "Kind": 3 + }, + { + "EndIndex": 192274, + "Kind": 3 + }, + { + "EndIndex": 192280, + "Kind": 3 + }, + { + "EndIndex": 192304, + "Kind": 3 + }, + { + "EndIndex": 192362, + "Kind": 3 + }, + { + "EndIndex": 192376, + "Kind": 3 + }, + { + "EndIndex": 192382, + "Kind": 3 + }, + { + "EndIndex": 192426, + "Kind": 3 + }, + { + "EndIndex": 192684, + "Kind": 3 + }, + { + "EndIndex": 192702, + "Kind": 3 + }, + { + "EndIndex": 192708, + "Kind": 3 + }, + { + "EndIndex": 192753, + "Kind": 3 + }, + { + "EndIndex": 193041, + "Kind": 3 + }, + { + "EndIndex": 193059, + "Kind": 3 + }, + { + "EndIndex": 193065, + "Kind": 3 + }, + { + "EndIndex": 193087, + "Kind": 3 + }, + { + "EndIndex": 193268, + "Kind": 3 + }, + { + "EndIndex": 193296, + "Kind": 3 + }, + { + "EndIndex": 193302, + "Kind": 3 + }, + { + "EndIndex": 193334, + "Kind": 3 + }, + { + "EndIndex": 193793, + "Kind": 3 + }, + { + "EndIndex": 193849, + "Kind": 3 + }, + { + "EndIndex": 193855, + "Kind": 3 + }, + { + "EndIndex": 193893, + "Kind": 3 + }, + { + "EndIndex": 194358, + "Kind": 3 + }, + { + "EndIndex": 194388, + "Kind": 3 + }, + { + "EndIndex": 194394, + "Kind": 3 + }, + { + "EndIndex": 194424, + "Kind": 3 + }, + { + "EndIndex": 194555, + "Kind": 3 + }, + { + "EndIndex": 194583, + "Kind": 3 + }, + { + "EndIndex": 194589, + "Kind": 3 + }, + { + "EndIndex": 194626, + "Kind": 3 + }, + { + "EndIndex": 195007, + "Kind": 3 + }, + { + "EndIndex": 195037, + "Kind": 3 + }, + { + "EndIndex": 195043, + "Kind": 3 + }, + { + "EndIndex": 195080, + "Kind": 3 + }, + { + "EndIndex": 195255, + "Kind": 3 + }, + { + "EndIndex": 195280, + "Kind": 3 + }, + { + "EndIndex": 195286, + "Kind": 3 + }, + { + "EndIndex": 195338, + "Kind": 3 + }, + { + "EndIndex": 195622, + "Kind": 3 + }, + { + "EndIndex": 195644, + "Kind": 3 + }, + { + "EndIndex": 195650, + "Kind": 3 + }, + { + "EndIndex": 195679, + "Kind": 3 + }, + { + "EndIndex": 195834, + "Kind": 3 + }, + { + "EndIndex": 195862, + "Kind": 3 + }, + { + "EndIndex": 195868, + "Kind": 3 + }, + { + "EndIndex": 195893, + "Kind": 3 + }, + { + "EndIndex": 196030, + "Kind": 3 + }, + { + "EndIndex": 196058, + "Kind": 3 + }, + { + "EndIndex": 196064, + "Kind": 3 + }, + { + "EndIndex": 196086, + "Kind": 3 + }, + { + "EndIndex": 196255, + "Kind": 3 + }, + { + "EndIndex": 196283, + "Kind": 3 + }, + { + "EndIndex": 196289, + "Kind": 3 + }, + { + "EndIndex": 196330, + "Kind": 3 + }, + { + "EndIndex": 196640, + "Kind": 3 + }, + { + "EndIndex": 196654, + "Kind": 3 + }, + { + "EndIndex": 196660, + "Kind": 3 + }, + { + "EndIndex": 196682, + "Kind": 3 + }, + { + "EndIndex": 196788, + "Kind": 3 + }, + { + "EndIndex": 196816, + "Kind": 3 + }, + { + "EndIndex": 196822, + "Kind": 3 + }, + { + "EndIndex": 196851, + "Kind": 3 + }, + { + "EndIndex": 197004, + "Kind": 3 + }, + { + "EndIndex": 197032, + "Kind": 3 + }, + { + "EndIndex": 197038, + "Kind": 3 + }, + { + "EndIndex": 197040, + "Kind": 3 + }, + { + "EndIndex": 197060, + "Kind": 3 + }, + { + "EndIndex": 197226, + "Kind": 3 + }, + { + "EndIndex": 197244, + "Kind": 3 + }, + { + "EndIndex": 197246, + "Kind": 3 + }, + { + "EndIndex": 197259, + "Kind": 3 + }, + { + "EndIndex": 197343, + "Kind": 3 + }, + { + "EndIndex": 197358, + "Kind": 3 + }, + { + "EndIndex": 197360, + "Kind": 3 + }, + { + "EndIndex": 197429, + "Kind": 3 + }, + { + "EndIndex": 198151, + "Kind": 3 + }, + { + "EndIndex": 198161, + "Kind": 3 + }, + { + "EndIndex": 198163, + "Kind": 3 + }, + { + "EndIndex": 198185, + "Kind": 3 + }, + { + "EndIndex": 198304, + "Kind": 3 + }, + { + "EndIndex": 198314, + "Kind": 3 + }, + { + "EndIndex": 198316, + "Kind": 3 + }, + { + "EndIndex": 198336, + "Kind": 3 + }, + { + "EndIndex": 198455, + "Kind": 3 + }, + { + "EndIndex": 198465, + "Kind": 3 + }, + { + "EndIndex": 198467, + "Kind": 3 + }, + { + "EndIndex": 198492, + "Kind": 3 + }, + { + "EndIndex": 198598, + "Kind": 3 + }, + { + "EndIndex": 198608, + "Kind": 3 + }, + { + "EndIndex": 198610, + "Kind": 3 + }, + { + "EndIndex": 198633, + "Kind": 3 + }, + { + "EndIndex": 199275, + "Kind": 3 + }, + { + "EndIndex": 199294, + "Kind": 3 + }, + { + "EndIndex": 199296, + "Kind": 3 + }, + { + "EndIndex": 199315, + "Kind": 3 + }, + { + "EndIndex": 199382, + "Kind": 3 + }, + { + "EndIndex": 199401, + "Kind": 3 + }, + { + "EndIndex": 199403, + "Kind": 3 + }, + { + "EndIndex": 199429, + "Kind": 3 + }, + { + "EndIndex": 199756, + "Kind": 3 + }, + { + "EndIndex": 199783, + "Kind": 3 + }, + { + "EndIndex": 199822, + "Kind": 3 + }, + { + "EndIndex": 199861, + "Kind": 3 + }, + { + "EndIndex": 199875, + "Kind": 3 + }, + { + "EndIndex": 199881, + "Kind": 3 + }, + { + "EndIndex": 199923, + "Kind": 3 + }, + { + "EndIndex": 200254, + "Kind": 3 + }, + { + "EndIndex": 200268, + "Kind": 3 + }, + { + "EndIndex": 200274, + "Kind": 3 + }, + { + "EndIndex": 200292, + "Kind": 3 + }, + { + "EndIndex": 200325, + "Kind": 3 + }, + { + "EndIndex": 200476, + "Kind": 3 + }, + { + "EndIndex": 200497, + "Kind": 3 + }, + { + "EndIndex": 200503, + "Kind": 3 + }, + { + "EndIndex": 200528, + "Kind": 3 + }, + { + "EndIndex": 200561, + "Kind": 3 + }, + { + "EndIndex": 200589, + "Kind": 3 + }, + { + "EndIndex": 200595, + "Kind": 3 + }, + { + "EndIndex": 200620, + "Kind": 3 + }, + { + "EndIndex": 200653, + "Kind": 3 + }, + { + "EndIndex": 200667, + "Kind": 3 + }, + { + "EndIndex": 200673, + "Kind": 3 + }, + { + "EndIndex": 200700, + "Kind": 3 + }, + { + "EndIndex": 200750, + "Kind": 3 + }, + { + "EndIndex": 200780, + "Kind": 3 + }, + { + "EndIndex": 200786, + "Kind": 3 + }, + { + "EndIndex": 200804, + "Kind": 3 + }, + { + "EndIndex": 200846, + "Kind": 3 + }, + { + "EndIndex": 201172, + "Kind": 3 + }, + { + "EndIndex": 201194, + "Kind": 3 + }, + { + "EndIndex": 201200, + "Kind": 3 + }, + { + "EndIndex": 201202, + "Kind": 3 + }, + { + "EndIndex": 201238, + "Kind": 3 + }, + { + "EndIndex": 201578, + "Kind": 3 + }, + { + "EndIndex": 201588, + "Kind": 3 + }, + { + "EndIndex": 201590, + "Kind": 3 + }, + { + "EndIndex": 201626, + "Kind": 3 + }, + { + "EndIndex": 201975, + "Kind": 3 + }, + { + "EndIndex": 201985, + "Kind": 3 + }, + { + "EndIndex": 201987, + "Kind": 3 + }, + { + "EndIndex": 202010, + "Kind": 3 + }, + { + "EndIndex": 202020, + "Kind": 3 + }, + { + "EndIndex": 202022, + "Kind": 3 + }, + { + "EndIndex": 202045, + "Kind": 3 + }, + { + "EndIndex": 202248, + "Kind": 3 + }, + { + "EndIndex": 202272, + "Kind": 3 + }, + { + "EndIndex": 202311, + "Kind": 3 + }, + { + "EndIndex": 202350, + "Kind": 3 + }, + { + "EndIndex": 202364, + "Kind": 3 + }, + { + "EndIndex": 202370, + "Kind": 3 + }, + { + "EndIndex": 202421, + "Kind": 3 + }, + { + "EndIndex": 202628, + "Kind": 3 + }, + { + "EndIndex": 202642, + "Kind": 3 + }, + { + "EndIndex": 202648, + "Kind": 3 + }, + { + "EndIndex": 202666, + "Kind": 3 + }, + { + "EndIndex": 202699, + "Kind": 3 + }, + { + "EndIndex": 202850, + "Kind": 3 + }, + { + "EndIndex": 202871, + "Kind": 3 + }, + { + "EndIndex": 202877, + "Kind": 3 + }, + { + "EndIndex": 202902, + "Kind": 3 + }, + { + "EndIndex": 202935, + "Kind": 3 + }, + { + "EndIndex": 202960, + "Kind": 3 + }, + { + "EndIndex": 202966, + "Kind": 3 + }, + { + "EndIndex": 202991, + "Kind": 3 + }, + { + "EndIndex": 203024, + "Kind": 3 + }, + { + "EndIndex": 203038, + "Kind": 3 + }, + { + "EndIndex": 203044, + "Kind": 3 + }, + { + "EndIndex": 203071, + "Kind": 3 + }, + { + "EndIndex": 203121, + "Kind": 3 + }, + { + "EndIndex": 203151, + "Kind": 3 + }, + { + "EndIndex": 203157, + "Kind": 3 + }, + { + "EndIndex": 203175, + "Kind": 3 + }, + { + "EndIndex": 203217, + "Kind": 3 + }, + { + "EndIndex": 203543, + "Kind": 3 + }, + { + "EndIndex": 203565, + "Kind": 3 + }, + { + "EndIndex": 203571, + "Kind": 3 + }, + { + "EndIndex": 203573, + "Kind": 3 + }, + { + "EndIndex": 203606, + "Kind": 3 + }, + { + "EndIndex": 203783, + "Kind": 3 + }, + { + "EndIndex": 203798, + "Kind": 3 + }, + { + "EndIndex": 203800, + "Kind": 3 + }, + { + "EndIndex": 203842, + "Kind": 3 + }, + { + "EndIndex": 204104, + "Kind": 3 + }, + { + "EndIndex": 204114, + "Kind": 3 + }, + { + "EndIndex": 204116, + "Kind": 3 + }, + { + "EndIndex": 204132, + "Kind": 3 + }, + { + "EndIndex": 204318, + "Kind": 3 + }, + { + "EndIndex": 204341, + "Kind": 3 + }, + { + "EndIndex": 204343, + "Kind": 3 + }, + { + "EndIndex": 204368, + "Kind": 3 + }, + { + "EndIndex": 204514, + "Kind": 3 + }, + { + "EndIndex": 204532, + "Kind": 3 + }, + { + "EndIndex": 204534, + "Kind": 3 + }, + { + "EndIndex": 204550, + "Kind": 3 + }, + { + "EndIndex": 204713, + "Kind": 3 + }, + { + "EndIndex": 204727, + "Kind": 3 + }, + { + "EndIndex": 204729, + "Kind": 3 + }, + { + "EndIndex": 204761, + "Kind": 3 + }, + { + "EndIndex": 205083, + "Kind": 3 + }, + { + "EndIndex": 205093, + "Kind": 3 + }, + { + "EndIndex": 205095, + "Kind": 3 + }, + { + "EndIndex": 205113, + "Kind": 3 + }, + { + "EndIndex": 205212, + "Kind": 3 + }, + { + "EndIndex": 205227, + "Kind": 3 + }, + { + "EndIndex": 205229, + "Kind": 3 + }, + { + "EndIndex": 205243, + "Kind": 3 + }, + { + "EndIndex": 205403, + "Kind": 3 + }, + { + "EndIndex": 205417, + "Kind": 3 + }, + { + "EndIndex": 205419, + "Kind": 3 + }, + { + "EndIndex": 205439, + "Kind": 3 + }, + { + "EndIndex": 205757, + "Kind": 3 + }, + { + "EndIndex": 205772, + "Kind": 3 + }, + { + "EndIndex": 205774, + "Kind": 3 + }, + { + "EndIndex": 205812, + "Kind": 3 + }, + { + "EndIndex": 206068, + "Kind": 3 + }, + { + "EndIndex": 206078, + "Kind": 3 + }, + { + "EndIndex": 206080, + "Kind": 3 + }, + { + "EndIndex": 206118, + "Kind": 3 + }, + { + "EndIndex": 206372, + "Kind": 3 + }, + { + "EndIndex": 206382, + "Kind": 3 + }, + { + "EndIndex": 206384, + "Kind": 3 + }, + { + "EndIndex": 206415, + "Kind": 3 + }, + { + "EndIndex": 206679, + "Kind": 3 + }, + { + "EndIndex": 206689, + "Kind": 3 + }, + { + "EndIndex": 206691, + "Kind": 3 + }, + { + "EndIndex": 206706, + "Kind": 3 + }, + { + "EndIndex": 206756, + "Kind": 3 + }, + { + "EndIndex": 206770, + "Kind": 3 + }, + { + "EndIndex": 206772, + "Kind": 3 + }, + { + "EndIndex": 206792, + "Kind": 3 + }, + { + "EndIndex": 206911, + "Kind": 3 + }, + { + "EndIndex": 206921, + "Kind": 3 + }, + { + "EndIndex": 206923, + "Kind": 3 + }, + { + "EndIndex": 206938, + "Kind": 3 + }, + { + "EndIndex": 207214, + "Kind": 3 + }, + { + "EndIndex": 207237, + "Kind": 3 + }, + { + "EndIndex": 207239, + "Kind": 3 + }, + { + "EndIndex": 207259, + "Kind": 3 + }, + { + "EndIndex": 207443, + "Kind": 3 + }, + { + "EndIndex": 207464, + "Kind": 3 + }, + { + "EndIndex": 207503, + "Kind": 3 + }, + { + "EndIndex": 207542, + "Kind": 3 + }, + { + "EndIndex": 207556, + "Kind": 3 + }, + { + "EndIndex": 207562, + "Kind": 3 + }, + { + "EndIndex": 207605, + "Kind": 3 + }, + { + "EndIndex": 207793, + "Kind": 3 + }, + { + "EndIndex": 207807, + "Kind": 3 + }, + { + "EndIndex": 207813, + "Kind": 3 + }, + { + "EndIndex": 207831, + "Kind": 3 + }, + { + "EndIndex": 207864, + "Kind": 3 + }, + { + "EndIndex": 208015, + "Kind": 3 + }, + { + "EndIndex": 208036, + "Kind": 3 + }, + { + "EndIndex": 208042, + "Kind": 3 + }, + { + "EndIndex": 208067, + "Kind": 3 + }, + { + "EndIndex": 208100, + "Kind": 3 + }, + { + "EndIndex": 208122, + "Kind": 3 + }, + { + "EndIndex": 208128, + "Kind": 3 + }, + { + "EndIndex": 208153, + "Kind": 3 + }, + { + "EndIndex": 208186, + "Kind": 3 + }, + { + "EndIndex": 208200, + "Kind": 3 + }, + { + "EndIndex": 208206, + "Kind": 3 + }, + { + "EndIndex": 208233, + "Kind": 3 + }, + { + "EndIndex": 208283, + "Kind": 3 + }, + { + "EndIndex": 208313, + "Kind": 3 + }, + { + "EndIndex": 208319, + "Kind": 3 + }, + { + "EndIndex": 208337, + "Kind": 3 + }, + { + "EndIndex": 208379, + "Kind": 3 + }, + { + "EndIndex": 208705, + "Kind": 3 + }, + { + "EndIndex": 208727, + "Kind": 3 + }, + { + "EndIndex": 208733, + "Kind": 3 + }, + { + "EndIndex": 208735, + "Kind": 3 + }, + { + "EndIndex": 208781, + "Kind": 3 + }, + { + "EndIndex": 209107, + "Kind": 3 + }, + { + "EndIndex": 209117, + "Kind": 3 + }, + { + "EndIndex": 209119, + "Kind": 3 + }, + { + "EndIndex": 209146, + "Kind": 3 + }, + { + "EndIndex": 209219, + "Kind": 3 + }, + { + "EndIndex": 209247, + "Kind": 3 + }, + { + "EndIndex": 209280, + "Kind": 3 + }, + { + "EndIndex": 209309, + "Kind": 3 + }, + { + "EndIndex": 209330, + "Kind": 3 + }, + { + "EndIndex": 209336, + "Kind": 3 + }, + { + "EndIndex": 209362, + "Kind": 3 + }, + { + "EndIndex": 209383, + "Kind": 3 + }, + { + "EndIndex": 209389, + "Kind": 3 + }, + { + "EndIndex": 209419, + "Kind": 3 + }, + { + "EndIndex": 209450, + "Kind": 3 + }, + { + "EndIndex": 209472, + "Kind": 3 + }, + { + "EndIndex": 209478, + "Kind": 3 + }, + { + "EndIndex": 209503, + "Kind": 3 + }, + { + "EndIndex": 209517, + "Kind": 3 + }, + { + "EndIndex": 209523, + "Kind": 3 + }, + { + "EndIndex": 209553, + "Kind": 3 + }, + { + "EndIndex": 209584, + "Kind": 3 + }, + { + "EndIndex": 209606, + "Kind": 3 + }, + { + "EndIndex": 209612, + "Kind": 3 + }, + { + "EndIndex": 209651, + "Kind": 3 + }, + { + "EndIndex": 209690, + "Kind": 3 + }, + { + "EndIndex": 209704, + "Kind": 3 + }, + { + "EndIndex": 209710, + "Kind": 3 + }, + { + "EndIndex": 209743, + "Kind": 3 + }, + { + "EndIndex": 209772, + "Kind": 3 + }, + { + "EndIndex": 209786, + "Kind": 3 + }, + { + "EndIndex": 209792, + "Kind": 3 + }, + { + "EndIndex": 209822, + "Kind": 3 + }, + { + "EndIndex": 209852, + "Kind": 3 + }, + { + "EndIndex": 209874, + "Kind": 3 + }, + { + "EndIndex": 209880, + "Kind": 3 + }, + { + "EndIndex": 209905, + "Kind": 3 + }, + { + "EndIndex": 209935, + "Kind": 3 + }, + { + "EndIndex": 209953, + "Kind": 3 + }, + { + "EndIndex": 209959, + "Kind": 3 + }, + { + "EndIndex": 210001, + "Kind": 3 + }, + { + "EndIndex": 210078, + "Kind": 3 + }, + { + "EndIndex": 210092, + "Kind": 3 + }, + { + "EndIndex": 210098, + "Kind": 3 + }, + { + "EndIndex": 210116, + "Kind": 3 + }, + { + "EndIndex": 210149, + "Kind": 3 + }, + { + "EndIndex": 210300, + "Kind": 3 + }, + { + "EndIndex": 210321, + "Kind": 3 + }, + { + "EndIndex": 210327, + "Kind": 3 + }, + { + "EndIndex": 210357, + "Kind": 3 + }, + { + "EndIndex": 210388, + "Kind": 3 + }, + { + "EndIndex": 210410, + "Kind": 3 + }, + { + "EndIndex": 210416, + "Kind": 3 + }, + { + "EndIndex": 210440, + "Kind": 3 + }, + { + "EndIndex": 210469, + "Kind": 3 + }, + { + "EndIndex": 210487, + "Kind": 3 + }, + { + "EndIndex": 210493, + "Kind": 3 + }, + { + "EndIndex": 210523, + "Kind": 3 + }, + { + "EndIndex": 210553, + "Kind": 3 + }, + { + "EndIndex": 210575, + "Kind": 3 + }, + { + "EndIndex": 210581, + "Kind": 3 + }, + { + "EndIndex": 210611, + "Kind": 3 + }, + { + "EndIndex": 210642, + "Kind": 3 + }, + { + "EndIndex": 210664, + "Kind": 3 + }, + { + "EndIndex": 210670, + "Kind": 3 + }, + { + "EndIndex": 210695, + "Kind": 3 + }, + { + "EndIndex": 210725, + "Kind": 3 + }, + { + "EndIndex": 210744, + "Kind": 3 + }, + { + "EndIndex": 210750, + "Kind": 3 + }, + { + "EndIndex": 210790, + "Kind": 3 + }, + { + "EndIndex": 210825, + "Kind": 3 + }, + { + "EndIndex": 210846, + "Kind": 3 + }, + { + "EndIndex": 210852, + "Kind": 3 + }, + { + "EndIndex": 210870, + "Kind": 3 + }, + { + "EndIndex": 210912, + "Kind": 3 + }, + { + "EndIndex": 211238, + "Kind": 3 + }, + { + "EndIndex": 211260, + "Kind": 3 + }, + { + "EndIndex": 211266, + "Kind": 3 + }, + { + "EndIndex": 211281, + "Kind": 3 + }, + { + "EndIndex": 211310, + "Kind": 3 + }, + { + "EndIndex": 211375, + "Kind": 3 + }, + { + "EndIndex": 211389, + "Kind": 3 + }, + { + "EndIndex": 211395, + "Kind": 3 + }, + { + "EndIndex": 211424, + "Kind": 3 + }, + { + "EndIndex": 211479, + "Kind": 3 + }, + { + "EndIndex": 211493, + "Kind": 3 + }, + { + "EndIndex": 211499, + "Kind": 3 + }, + { + "EndIndex": 211514, + "Kind": 3 + }, + { + "EndIndex": 211541, + "Kind": 3 + }, + { + "EndIndex": 211604, + "Kind": 3 + }, + { + "EndIndex": 211618, + "Kind": 3 + }, + { + "EndIndex": 211624, + "Kind": 3 + }, + { + "EndIndex": 211639, + "Kind": 3 + }, + { + "EndIndex": 211668, + "Kind": 3 + }, + { + "EndIndex": 211739, + "Kind": 3 + }, + { + "EndIndex": 211753, + "Kind": 3 + }, + { + "EndIndex": 211759, + "Kind": 3 + }, + { + "EndIndex": 211774, + "Kind": 3 + }, + { + "EndIndex": 211797, + "Kind": 3 + }, + { + "EndIndex": 211896, + "Kind": 3 + }, + { + "EndIndex": 211915, + "Kind": 3 + }, + { + "EndIndex": 211921, + "Kind": 3 + }, + { + "EndIndex": 211941, + "Kind": 3 + }, + { + "EndIndex": 212018, + "Kind": 3 + }, + { + "EndIndex": 212037, + "Kind": 3 + }, + { + "EndIndex": 212043, + "Kind": 3 + }, + { + "EndIndex": 212058, + "Kind": 3 + }, + { + "EndIndex": 212083, + "Kind": 3 + }, + { + "EndIndex": 212147, + "Kind": 3 + }, + { + "EndIndex": 212161, + "Kind": 3 + }, + { + "EndIndex": 212167, + "Kind": 3 + }, + { + "EndIndex": 212182, + "Kind": 3 + }, + { + "EndIndex": 212205, + "Kind": 3 + }, + { + "EndIndex": 212304, + "Kind": 3 + }, + { + "EndIndex": 212318, + "Kind": 3 + }, + { + "EndIndex": 212324, + "Kind": 3 + }, + { + "EndIndex": 212339, + "Kind": 3 + }, + { + "EndIndex": 212360, + "Kind": 3 + }, + { + "EndIndex": 212467, + "Kind": 3 + }, + { + "EndIndex": 212481, + "Kind": 3 + }, + { + "EndIndex": 212487, + "Kind": 3 + }, + { + "EndIndex": 212502, + "Kind": 3 + }, + { + "EndIndex": 212522, + "Kind": 3 + }, + { + "EndIndex": 212574, + "Kind": 3 + }, + { + "EndIndex": 212588, + "Kind": 3 + }, + { + "EndIndex": 212594, + "Kind": 3 + }, + { + "EndIndex": 212609, + "Kind": 3 + }, + { + "EndIndex": 212634, + "Kind": 3 + }, + { + "EndIndex": 212696, + "Kind": 3 + }, + { + "EndIndex": 212710, + "Kind": 3 + }, + { + "EndIndex": 212716, + "Kind": 3 + }, + { + "EndIndex": 212740, + "Kind": 3 + }, + { + "EndIndex": 212815, + "Kind": 3 + }, + { + "EndIndex": 212829, + "Kind": 3 + }, + { + "EndIndex": 212835, + "Kind": 3 + }, + { + "EndIndex": 212850, + "Kind": 3 + }, + { + "EndIndex": 212872, + "Kind": 3 + }, + { + "EndIndex": 212968, + "Kind": 3 + }, + { + "EndIndex": 212982, + "Kind": 3 + }, + { + "EndIndex": 212988, + "Kind": 3 + }, + { + "EndIndex": 213003, + "Kind": 3 + }, + { + "EndIndex": 213027, + "Kind": 3 + }, + { + "EndIndex": 213146, + "Kind": 3 + }, + { + "EndIndex": 213160, + "Kind": 3 + }, + { + "EndIndex": 213166, + "Kind": 3 + }, + { + "EndIndex": 213181, + "Kind": 3 + }, + { + "EndIndex": 213208, + "Kind": 3 + }, + { + "EndIndex": 213277, + "Kind": 3 + }, + { + "EndIndex": 213291, + "Kind": 3 + }, + { + "EndIndex": 213297, + "Kind": 3 + }, + { + "EndIndex": 213321, + "Kind": 3 + }, + { + "EndIndex": 213380, + "Kind": 3 + }, + { + "EndIndex": 213394, + "Kind": 3 + }, + { + "EndIndex": 213400, + "Kind": 3 + }, + { + "EndIndex": 213423, + "Kind": 3 + }, + { + "EndIndex": 213487, + "Kind": 3 + }, + { + "EndIndex": 213501, + "Kind": 3 + }, + { + "EndIndex": 213507, + "Kind": 3 + }, + { + "EndIndex": 213509, + "Kind": 3 + }, + { + "EndIndex": 213555, + "Kind": 3 + }, + { + "EndIndex": 213883, + "Kind": 3 + }, + { + "EndIndex": 213893, + "Kind": 3 + }, + { + "EndIndex": 213895, + "Kind": 3 + }, + { + "EndIndex": 213930, + "Kind": 3 + }, + { + "EndIndex": 214107, + "Kind": 3 + }, + { + "EndIndex": 214117, + "Kind": 3 + }, + { + "EndIndex": 214119, + "Kind": 3 + }, + { + "EndIndex": 214137, + "Kind": 3 + }, + { + "EndIndex": 214229, + "Kind": 3 + }, + { + "EndIndex": 214244, + "Kind": 3 + }, + { + "EndIndex": 214246, + "Kind": 3 + }, + { + "EndIndex": 214324, + "Kind": 3 + }, + { + "EndIndex": 220772, + "Kind": 3 + }, + { + "EndIndex": 220782, + "Kind": 3 + }, + { + "EndIndex": 220784, + "Kind": 3 + }, + { + "EndIndex": 220797, + "Kind": 3 + }, + { + "EndIndex": 220862, + "Kind": 3 + }, + { + "EndIndex": 220872, + "Kind": 3 + }, + { + "EndIndex": 220874, + "Kind": 3 + }, + { + "EndIndex": 220893, + "Kind": 3 + }, + { + "EndIndex": 221092, + "Kind": 3 + }, + { + "EndIndex": 221102, + "Kind": 3 + }, + { + "EndIndex": 221104, + "Kind": 3 + }, + { + "EndIndex": 221118, + "Kind": 3 + }, + { + "EndIndex": 221526, + "Kind": 3 + }, + { + "EndIndex": 221536, + "Kind": 3 + }, + { + "EndIndex": 221538, + "Kind": 3 + }, + { + "EndIndex": 221561, + "Kind": 3 + }, + { + "EndIndex": 221571, + "Kind": 3 + }, + { + "EndIndex": 221573, + "Kind": 3 + }, + { + "EndIndex": 221595, + "Kind": 3 + }, + { + "EndIndex": 222030, + "Kind": 3 + }, + { + "EndIndex": 222055, + "Kind": 3 + }, + { + "EndIndex": 222076, + "Kind": 3 + }, + { + "EndIndex": 222098, + "Kind": 3 + }, + { + "EndIndex": 222104, + "Kind": 3 + }, + { + "EndIndex": 222127, + "Kind": 3 + }, + { + "EndIndex": 222161, + "Kind": 3 + }, + { + "EndIndex": 222192, + "Kind": 3 + }, + { + "EndIndex": 222214, + "Kind": 3 + }, + { + "EndIndex": 222220, + "Kind": 3 + }, + { + "EndIndex": 222250, + "Kind": 3 + }, + { + "EndIndex": 222281, + "Kind": 3 + }, + { + "EndIndex": 222303, + "Kind": 3 + }, + { + "EndIndex": 222309, + "Kind": 3 + }, + { + "EndIndex": 222339, + "Kind": 3 + }, + { + "EndIndex": 222370, + "Kind": 3 + }, + { + "EndIndex": 222392, + "Kind": 3 + }, + { + "EndIndex": 222398, + "Kind": 3 + }, + { + "EndIndex": 222437, + "Kind": 3 + }, + { + "EndIndex": 222476, + "Kind": 3 + }, + { + "EndIndex": 222490, + "Kind": 3 + }, + { + "EndIndex": 222496, + "Kind": 3 + }, + { + "EndIndex": 222529, + "Kind": 3 + }, + { + "EndIndex": 222558, + "Kind": 3 + }, + { + "EndIndex": 222572, + "Kind": 3 + }, + { + "EndIndex": 222578, + "Kind": 3 + }, + { + "EndIndex": 222608, + "Kind": 3 + }, + { + "EndIndex": 222638, + "Kind": 3 + }, + { + "EndIndex": 222660, + "Kind": 3 + }, + { + "EndIndex": 222666, + "Kind": 3 + }, + { + "EndIndex": 222691, + "Kind": 3 + }, + { + "EndIndex": 222721, + "Kind": 3 + }, + { + "EndIndex": 222739, + "Kind": 3 + }, + { + "EndIndex": 222745, + "Kind": 3 + }, + { + "EndIndex": 222794, + "Kind": 3 + }, + { + "EndIndex": 223233, + "Kind": 3 + }, + { + "EndIndex": 223247, + "Kind": 3 + }, + { + "EndIndex": 223253, + "Kind": 3 + }, + { + "EndIndex": 223271, + "Kind": 3 + }, + { + "EndIndex": 223304, + "Kind": 3 + }, + { + "EndIndex": 223455, + "Kind": 3 + }, + { + "EndIndex": 223476, + "Kind": 3 + }, + { + "EndIndex": 223482, + "Kind": 3 + }, + { + "EndIndex": 223507, + "Kind": 3 + }, + { + "EndIndex": 223540, + "Kind": 3 + }, + { + "EndIndex": 223564, + "Kind": 3 + }, + { + "EndIndex": 223570, + "Kind": 3 + }, + { + "EndIndex": 223600, + "Kind": 3 + }, + { + "EndIndex": 223631, + "Kind": 3 + }, + { + "EndIndex": 223653, + "Kind": 3 + }, + { + "EndIndex": 223659, + "Kind": 3 + }, + { + "EndIndex": 223683, + "Kind": 3 + }, + { + "EndIndex": 223712, + "Kind": 3 + }, + { + "EndIndex": 223730, + "Kind": 3 + }, + { + "EndIndex": 223736, + "Kind": 3 + }, + { + "EndIndex": 223766, + "Kind": 3 + }, + { + "EndIndex": 223796, + "Kind": 3 + }, + { + "EndIndex": 223818, + "Kind": 3 + }, + { + "EndIndex": 223824, + "Kind": 3 + }, + { + "EndIndex": 223854, + "Kind": 3 + }, + { + "EndIndex": 223885, + "Kind": 3 + }, + { + "EndIndex": 223907, + "Kind": 3 + }, + { + "EndIndex": 223913, + "Kind": 3 + }, + { + "EndIndex": 223940, + "Kind": 3 + }, + { + "EndIndex": 223970, + "Kind": 3 + }, + { + "EndIndex": 223976, + "Kind": 3 + }, + { + "EndIndex": 224001, + "Kind": 3 + }, + { + "EndIndex": 224031, + "Kind": 3 + }, + { + "EndIndex": 224050, + "Kind": 3 + }, + { + "EndIndex": 224056, + "Kind": 3 + }, + { + "EndIndex": 224085, + "Kind": 3 + }, + { + "EndIndex": 224123, + "Kind": 3 + }, + { + "EndIndex": 224137, + "Kind": 3 + }, + { + "EndIndex": 224143, + "Kind": 3 + }, + { + "EndIndex": 224161, + "Kind": 3 + }, + { + "EndIndex": 224203, + "Kind": 3 + }, + { + "EndIndex": 224529, + "Kind": 3 + }, + { + "EndIndex": 224551, + "Kind": 3 + }, + { + "EndIndex": 224557, + "Kind": 3 + }, + { + "EndIndex": 224582, + "Kind": 3 + }, + { + "EndIndex": 224670, + "Kind": 3 + }, + { + "EndIndex": 224688, + "Kind": 3 + }, + { + "EndIndex": 224694, + "Kind": 3 + }, + { + "EndIndex": 224719, + "Kind": 3 + }, + { + "EndIndex": 224856, + "Kind": 3 + }, + { + "EndIndex": 224874, + "Kind": 3 + }, + { + "EndIndex": 224880, + "Kind": 3 + }, + { + "EndIndex": 224895, + "Kind": 3 + }, + { + "EndIndex": 224917, + "Kind": 3 + }, + { + "EndIndex": 224931, + "Kind": 3 + }, + { + "EndIndex": 224937, + "Kind": 3 + }, + { + "EndIndex": 224952, + "Kind": 3 + }, + { + "EndIndex": 224973, + "Kind": 3 + }, + { + "EndIndex": 224987, + "Kind": 3 + }, + { + "EndIndex": 224993, + "Kind": 3 + }, + { + "EndIndex": 225008, + "Kind": 3 + }, + { + "EndIndex": 225029, + "Kind": 3 + }, + { + "EndIndex": 225043, + "Kind": 3 + }, + { + "EndIndex": 225049, + "Kind": 3 + }, + { + "EndIndex": 225051, + "Kind": 3 + }, + { + "EndIndex": 225067, + "Kind": 3 + }, + { + "EndIndex": 225207, + "Kind": 3 + }, + { + "EndIndex": 225222, + "Kind": 3 + }, + { + "EndIndex": 225224, + "Kind": 3 + }, + { + "EndIndex": 225249, + "Kind": 3 + }, + { + "EndIndex": 225321, + "Kind": 3 + }, + { + "EndIndex": 225347, + "Kind": 3 + }, + { + "EndIndex": 225386, + "Kind": 3 + }, + { + "EndIndex": 225425, + "Kind": 3 + }, + { + "EndIndex": 225439, + "Kind": 3 + }, + { + "EndIndex": 225445, + "Kind": 3 + }, + { + "EndIndex": 225487, + "Kind": 3 + }, + { + "EndIndex": 225563, + "Kind": 3 + }, + { + "EndIndex": 225577, + "Kind": 3 + }, + { + "EndIndex": 225583, + "Kind": 3 + }, + { + "EndIndex": 225601, + "Kind": 3 + }, + { + "EndIndex": 225634, + "Kind": 3 + }, + { + "EndIndex": 225785, + "Kind": 3 + }, + { + "EndIndex": 225806, + "Kind": 3 + }, + { + "EndIndex": 225812, + "Kind": 3 + }, + { + "EndIndex": 225837, + "Kind": 3 + }, + { + "EndIndex": 225870, + "Kind": 3 + }, + { + "EndIndex": 225897, + "Kind": 3 + }, + { + "EndIndex": 225903, + "Kind": 3 + }, + { + "EndIndex": 225935, + "Kind": 3 + }, + { + "EndIndex": 226001, + "Kind": 3 + }, + { + "EndIndex": 226019, + "Kind": 3 + }, + { + "EndIndex": 226025, + "Kind": 3 + }, + { + "EndIndex": 226050, + "Kind": 3 + }, + { + "EndIndex": 226083, + "Kind": 3 + }, + { + "EndIndex": 226097, + "Kind": 3 + }, + { + "EndIndex": 226103, + "Kind": 3 + }, + { + "EndIndex": 226130, + "Kind": 3 + }, + { + "EndIndex": 226180, + "Kind": 3 + }, + { + "EndIndex": 226210, + "Kind": 3 + }, + { + "EndIndex": 226216, + "Kind": 3 + }, + { + "EndIndex": 226252, + "Kind": 3 + }, + { + "EndIndex": 226301, + "Kind": 3 + }, + { + "EndIndex": 226322, + "Kind": 3 + }, + { + "EndIndex": 226328, + "Kind": 3 + }, + { + "EndIndex": 226346, + "Kind": 3 + }, + { + "EndIndex": 226388, + "Kind": 3 + }, + { + "EndIndex": 226714, + "Kind": 3 + }, + { + "EndIndex": 226736, + "Kind": 3 + }, + { + "EndIndex": 226742, + "Kind": 3 + }, + { + "EndIndex": 226744, + "Kind": 3 + }, + { + "EndIndex": 226773, + "Kind": 3 + }, + { + "EndIndex": 226988, + "Kind": 3 + }, + { + "EndIndex": 227004, + "Kind": 3 + }, + { + "EndIndex": 227006, + "Kind": 3 + }, + { + "EndIndex": 227038, + "Kind": 3 + }, + { + "EndIndex": 227165, + "Kind": 3 + }, + { + "EndIndex": 227175, + "Kind": 3 + }, + { + "EndIndex": 227177, + "Kind": 3 + }, + { + "EndIndex": 227199, + "Kind": 3 + }, + { + "EndIndex": 227325, + "Kind": 3 + }, + { + "EndIndex": 227348, + "Kind": 3 + }, + { + "EndIndex": 227378, + "Kind": 3 + }, + { + "EndIndex": 227409, + "Kind": 3 + }, + { + "EndIndex": 227431, + "Kind": 3 + }, + { + "EndIndex": 227437, + "Kind": 3 + }, + { + "EndIndex": 227467, + "Kind": 3 + }, + { + "EndIndex": 227498, + "Kind": 3 + }, + { + "EndIndex": 227520, + "Kind": 3 + }, + { + "EndIndex": 227526, + "Kind": 3 + }, + { + "EndIndex": 227565, + "Kind": 3 + }, + { + "EndIndex": 227604, + "Kind": 3 + }, + { + "EndIndex": 227618, + "Kind": 3 + }, + { + "EndIndex": 227624, + "Kind": 3 + }, + { + "EndIndex": 227654, + "Kind": 3 + }, + { + "EndIndex": 227684, + "Kind": 3 + }, + { + "EndIndex": 227706, + "Kind": 3 + }, + { + "EndIndex": 227712, + "Kind": 3 + }, + { + "EndIndex": 227733, + "Kind": 3 + }, + { + "EndIndex": 227782, + "Kind": 3 + }, + { + "EndIndex": 227912, + "Kind": 3 + }, + { + "EndIndex": 227926, + "Kind": 3 + }, + { + "EndIndex": 227932, + "Kind": 3 + }, + { + "EndIndex": 227950, + "Kind": 3 + }, + { + "EndIndex": 227983, + "Kind": 3 + }, + { + "EndIndex": 228134, + "Kind": 3 + }, + { + "EndIndex": 228155, + "Kind": 3 + }, + { + "EndIndex": 228161, + "Kind": 3 + }, + { + "EndIndex": 228191, + "Kind": 3 + }, + { + "EndIndex": 228222, + "Kind": 3 + }, + { + "EndIndex": 228244, + "Kind": 3 + }, + { + "EndIndex": 228250, + "Kind": 3 + }, + { + "EndIndex": 228280, + "Kind": 3 + }, + { + "EndIndex": 228310, + "Kind": 3 + }, + { + "EndIndex": 228332, + "Kind": 3 + }, + { + "EndIndex": 228338, + "Kind": 3 + }, + { + "EndIndex": 228368, + "Kind": 3 + }, + { + "EndIndex": 228399, + "Kind": 3 + }, + { + "EndIndex": 228421, + "Kind": 3 + }, + { + "EndIndex": 228427, + "Kind": 3 + }, + { + "EndIndex": 228454, + "Kind": 3 + }, + { + "EndIndex": 228504, + "Kind": 3 + }, + { + "EndIndex": 228534, + "Kind": 3 + }, + { + "EndIndex": 228540, + "Kind": 3 + }, + { + "EndIndex": 228565, + "Kind": 3 + }, + { + "EndIndex": 228595, + "Kind": 3 + }, + { + "EndIndex": 228614, + "Kind": 3 + }, + { + "EndIndex": 228620, + "Kind": 3 + }, + { + "EndIndex": 228638, + "Kind": 3 + }, + { + "EndIndex": 228680, + "Kind": 3 + }, + { + "EndIndex": 229006, + "Kind": 3 + }, + { + "EndIndex": 229028, + "Kind": 3 + }, + { + "EndIndex": 229034, + "Kind": 3 + }, + { + "EndIndex": 229058, + "Kind": 3 + }, + { + "EndIndex": 229341, + "Kind": 3 + }, + { + "EndIndex": 229365, + "Kind": 3 + }, + { + "EndIndex": 229371, + "Kind": 3 + }, + { + "EndIndex": 229386, + "Kind": 3 + }, + { + "EndIndex": 229408, + "Kind": 3 + }, + { + "EndIndex": 229422, + "Kind": 3 + }, + { + "EndIndex": 229428, + "Kind": 3 + }, + { + "EndIndex": 229443, + "Kind": 3 + }, + { + "EndIndex": 229464, + "Kind": 3 + }, + { + "EndIndex": 229478, + "Kind": 3 + }, + { + "EndIndex": 229484, + "Kind": 3 + }, + { + "EndIndex": 229499, + "Kind": 3 + }, + { + "EndIndex": 229520, + "Kind": 3 + }, + { + "EndIndex": 229534, + "Kind": 3 + }, + { + "EndIndex": 229540, + "Kind": 3 + }, + { + "EndIndex": 229542, + "Kind": 3 + }, + { + "EndIndex": 229565, + "Kind": 3 + }, + { + "EndIndex": 229795, + "Kind": 3 + }, + { + "EndIndex": 229818, + "Kind": 3 + }, + { + "EndIndex": 229820, + "Kind": 3 + }, + { + "EndIndex": 229847, + "Kind": 3 + }, + { + "EndIndex": 230087, + "Kind": 3 + }, + { + "EndIndex": 230097, + "Kind": 3 + }, + { + "EndIndex": 230099, + "Kind": 3 + }, + { + "EndIndex": 230121, + "Kind": 3 + }, + { + "EndIndex": 230609, + "Kind": 3 + }, + { + "EndIndex": 230632, + "Kind": 3 + }, + { + "EndIndex": 230673, + "Kind": 3 + }, + { + "EndIndex": 230741, + "Kind": 3 + }, + { + "EndIndex": 230765, + "Kind": 3 + }, + { + "EndIndex": 230771, + "Kind": 3 + }, + { + "EndIndex": 230810, + "Kind": 3 + }, + { + "EndIndex": 230849, + "Kind": 3 + }, + { + "EndIndex": 230863, + "Kind": 3 + }, + { + "EndIndex": 230869, + "Kind": 3 + }, + { + "EndIndex": 230907, + "Kind": 3 + }, + { + "EndIndex": 231399, + "Kind": 3 + }, + { + "EndIndex": 231413, + "Kind": 3 + }, + { + "EndIndex": 231419, + "Kind": 3 + }, + { + "EndIndex": 231437, + "Kind": 3 + }, + { + "EndIndex": 231470, + "Kind": 3 + }, + { + "EndIndex": 231621, + "Kind": 3 + }, + { + "EndIndex": 231642, + "Kind": 3 + }, + { + "EndIndex": 231648, + "Kind": 3 + }, + { + "EndIndex": 231673, + "Kind": 3 + }, + { + "EndIndex": 231703, + "Kind": 3 + }, + { + "EndIndex": 231722, + "Kind": 3 + }, + { + "EndIndex": 231728, + "Kind": 3 + }, + { + "EndIndex": 231743, + "Kind": 3 + }, + { + "EndIndex": 231768, + "Kind": 3 + }, + { + "EndIndex": 231822, + "Kind": 3 + }, + { + "EndIndex": 231836, + "Kind": 3 + }, + { + "EndIndex": 231842, + "Kind": 3 + }, + { + "EndIndex": 231857, + "Kind": 3 + }, + { + "EndIndex": 231888, + "Kind": 3 + }, + { + "EndIndex": 231954, + "Kind": 3 + }, + { + "EndIndex": 231968, + "Kind": 3 + }, + { + "EndIndex": 231974, + "Kind": 3 + }, + { + "EndIndex": 231992, + "Kind": 3 + }, + { + "EndIndex": 232034, + "Kind": 3 + }, + { + "EndIndex": 232360, + "Kind": 3 + }, + { + "EndIndex": 232382, + "Kind": 3 + }, + { + "EndIndex": 232388, + "Kind": 3 + }, + { + "EndIndex": 232403, + "Kind": 3 + }, + { + "EndIndex": 232433, + "Kind": 3 + }, + { + "EndIndex": 232471, + "Kind": 3 + }, + { + "EndIndex": 232485, + "Kind": 3 + }, + { + "EndIndex": 232491, + "Kind": 3 + }, + { + "EndIndex": 232493, + "Kind": 3 + }, + { + "EndIndex": 232517, + "Kind": 3 + }, + { + "EndIndex": 232649, + "Kind": 3 + }, + { + "EndIndex": 232668, + "Kind": 3 + }, + { + "EndIndex": 232670, + "Kind": 3 + }, + { + "EndIndex": 232690, + "Kind": 3 + }, + { + "EndIndex": 233001, + "Kind": 3 + }, + { + "EndIndex": 233022, + "Kind": 3 + }, + { + "EndIndex": 233061, + "Kind": 3 + }, + { + "EndIndex": 233100, + "Kind": 3 + }, + { + "EndIndex": 233114, + "Kind": 3 + }, + { + "EndIndex": 233120, + "Kind": 3 + }, + { + "EndIndex": 233162, + "Kind": 3 + }, + { + "EndIndex": 233477, + "Kind": 3 + }, + { + "EndIndex": 233491, + "Kind": 3 + }, + { + "EndIndex": 233497, + "Kind": 3 + }, + { + "EndIndex": 233515, + "Kind": 3 + }, + { + "EndIndex": 233548, + "Kind": 3 + }, + { + "EndIndex": 233699, + "Kind": 3 + }, + { + "EndIndex": 233720, + "Kind": 3 + }, + { + "EndIndex": 233726, + "Kind": 3 + }, + { + "EndIndex": 233751, + "Kind": 3 + }, + { + "EndIndex": 233784, + "Kind": 3 + }, + { + "EndIndex": 233806, + "Kind": 3 + }, + { + "EndIndex": 233812, + "Kind": 3 + }, + { + "EndIndex": 233837, + "Kind": 3 + }, + { + "EndIndex": 233870, + "Kind": 3 + }, + { + "EndIndex": 233884, + "Kind": 3 + }, + { + "EndIndex": 233890, + "Kind": 3 + }, + { + "EndIndex": 233917, + "Kind": 3 + }, + { + "EndIndex": 233967, + "Kind": 3 + }, + { + "EndIndex": 233997, + "Kind": 3 + }, + { + "EndIndex": 234003, + "Kind": 3 + }, + { + "EndIndex": 234021, + "Kind": 3 + }, + { + "EndIndex": 234063, + "Kind": 3 + }, + { + "EndIndex": 234389, + "Kind": 3 + }, + { + "EndIndex": 234411, + "Kind": 3 + }, + { + "EndIndex": 234417, + "Kind": 3 + }, + { + "EndIndex": 234419, + "Kind": 3 + } + ], + "FileSize": 234419, "Id": -1981595346, - "Name": "builtins" + "Name": "builtins", + "IndexSpan": null } \ No newline at end of file diff --git a/src/Caching/Test/Files/MemberLocations.json b/src/Caching/Test/Files/MemberLocations.json new file mode 100644 index 000000000..883fc6859 --- /dev/null +++ b/src/Caching/Test/Files/MemberLocations.json @@ -0,0 +1,371 @@ +{ + "UniqueId": "module", + "Documentation": "", + "Functions": [ + { + "Documentation": null, + "Overloads": [ + { + "Parameters": [ + { + "Name": "a", + "Type": null, + "DefaultValue": null, + "Kind": 0 + }, + { + "Name": "b", + "Type": null, + "DefaultValue": null, + "Kind": 0 + } + ], + "ReturnType": null + } + ], + "Attributes": 0, + "Classes": null, + "Functions": null, + "Id": 799444, + "Name": "sum", + "IndexSpan": { + "Start": 19, + "Length": 3 + } + } + ], + "Variables": [ + { + "Value": "bool", + "Id": -529376420, + "Name": "__debug__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } + }, + { + "Value": "str", + "Id": -1636005055, + "Name": "__doc__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } + }, + { + "Value": "str", + "Id": 875442003, + "Name": "__file__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } + }, + { + "Value": "str", + "Id": 1097116834, + "Name": "__name__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } + }, + { + "Value": "str", + "Id": 75395663, + "Name": "__package__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } + }, + { + "Value": "list", + "Id": 1154586556, + "Name": "__path__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } + }, + { + "Value": "dict", + "Id": 817929997, + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } + }, + { + "Value": "i:str", + "Id": 833, + "Name": "x", + "IndexSpan": { + "Start": 2, + "Length": 1 + } + } + ], + "Classes": [ + { + "Documentation": null, + "Bases": [ + "object" + ], + "Methods": [ + { + "Documentation": null, + "Overloads": [ + { + "Parameters": [ + { + "Name": "self", + "Type": "module:B", + "DefaultValue": null, + "Kind": 0 + } + ], + "ReturnType": "i:int" + } + ], + "Attributes": 0, + "Classes": null, + "Functions": null, + "Id": 935009768, + "Name": "methodB2", + "IndexSpan": { + "Start": 253, + "Length": 8 + } + } + ], + "Properties": [ + { + "Documentation": "", + "ReturnType": "i:int", + "Attributes": 0, + "Id": -947452202, + "Name": "propertyB", + "IndexSpan": { + "Start": 207, + "Length": 9 + } + } + ], + "Fields": [ + { + "Value": "i:int", + "Id": 833, + "Name": "x", + "IndexSpan": null + }, + { + "Value": "dict", + "Id": 817929997, + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } + }, + { + "Value": "object", + "Id": 1225024228, + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } + } + ], + "GenericParameters": null, + "InnerClasses": [ + { + "Documentation": null, + "Bases": [ + "object" + ], + "Methods": [ + { + "Documentation": null, + "Overloads": [ + { + "Parameters": [ + { + "Name": "self", + "Type": "module:C", + "DefaultValue": null, + "Kind": 0 + } + ], + "ReturnType": null + } + ], + "Attributes": 0, + "Classes": null, + "Functions": null, + "Id": 965872103, + "Name": "__init__", + "IndexSpan": { + "Start": 101, + "Length": 8 + } + }, + { + "Documentation": null, + "Overloads": [ + { + "Parameters": [ + { + "Name": "self", + "Type": "module:C", + "DefaultValue": null, + "Kind": 0 + } + ], + "ReturnType": null + } + ], + "Attributes": 0, + "Classes": null, + "Functions": null, + "Id": -1909501045, + "Name": "methodC", + "IndexSpan": { + "Start": 148, + "Length": 7 + } + } + ], + "Properties": [], + "Fields": [ + { + "Value": "dict", + "Id": 817929997, + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } + }, + { + "Value": "object", + "Id": 1225024228, + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } + } + ], + "GenericParameters": null, + "InnerClasses": [], + "Id": 780, + "Name": "C", + "IndexSpan": { + "Start": 85, + "Length": 1 + } + } + ], + "Id": 779, + "Name": "B", + "IndexSpan": { + "Start": 57, + "Length": 1 + } + } + ], + "NewLines": [ + { + "EndIndex": 2, + "Kind": 3 + }, + { + "EndIndex": 13, + "Kind": 3 + }, + { + "EndIndex": 15, + "Kind": 3 + }, + { + "EndIndex": 31, + "Kind": 3 + }, + { + "EndIndex": 49, + "Kind": 3 + }, + { + "EndIndex": 51, + "Kind": 3 + }, + { + "EndIndex": 61, + "Kind": 3 + }, + { + "EndIndex": 73, + "Kind": 3 + }, + { + "EndIndex": 75, + "Kind": 3 + }, + { + "EndIndex": 89, + "Kind": 3 + }, + { + "EndIndex": 118, + "Kind": 3 + }, + { + "EndIndex": 136, + "Kind": 3 + }, + { + "EndIndex": 164, + "Kind": 3 + }, + { + "EndIndex": 182, + "Kind": 3 + }, + { + "EndIndex": 184, + "Kind": 3 + }, + { + "EndIndex": 199, + "Kind": 3 + }, + { + "EndIndex": 225, + "Kind": 3 + }, + { + "EndIndex": 243, + "Kind": 3 + }, + { + "EndIndex": 245, + "Kind": 3 + }, + { + "EndIndex": 270, + "Kind": 3 + }, + { + "EndIndex": 288, + "Kind": 3 + } + ], + "FileSize": 288, + "Id": -2131035837, + "Name": "module", + "IndexSpan": null +} \ No newline at end of file diff --git a/src/Caching/Test/Files/NestedClasses.json b/src/Caching/Test/Files/NestedClasses.json index 51771c683..4549d8e3e 100644 --- a/src/Caching/Test/Files/NestedClasses.json +++ b/src/Caching/Test/Files/NestedClasses.json @@ -6,47 +6,83 @@ { "Value": "bool", "Id": -529376420, - "Name": "__debug__" + "Name": "__debug__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "str", "Id": -1636005055, - "Name": "__doc__" + "Name": "__doc__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "str", "Id": 875442003, - "Name": "__file__" + "Name": "__file__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "str", "Id": 1097116834, - "Name": "__name__" + "Name": "__name__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "str", "Id": 75395663, - "Name": "__package__" + "Name": "__package__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "list", "Id": 1154586556, - "Name": "__path__" + "Name": "__path__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:str", "Id": 833, - "Name": "x" + "Name": "x", + "IndexSpan": { + "Start": 2, + "Length": 1 + } }, { "Value": "i:module:C", "Id": 812, - "Name": "c" + "Name": "c", + "IndexSpan": { + "Start": 323, + "Length": 1 + } } ], "Classes": [ @@ -75,7 +111,11 @@ "Classes": null, "Functions": null, "Id": -1909501047, - "Name": "methodA" + "Name": "methodA", + "IndexSpan": { + "Start": 33, + "Length": 7 + } } ], "Properties": [], @@ -83,18 +123,30 @@ { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 778, - "Name": "A" + "Name": "A", + "IndexSpan": { + "Start": 21, + "Length": 1 + } }, { "Documentation": null, @@ -121,7 +173,11 @@ "Classes": null, "Functions": null, "Id": 935009767, - "Name": "methodB1" + "Name": "methodB1", + "IndexSpan": { + "Start": 235, + "Length": 8 + } }, { "Documentation": null, @@ -142,7 +198,11 @@ "Classes": null, "Functions": null, "Id": 935009768, - "Name": "methodB2" + "Name": "methodB2", + "IndexSpan": { + "Start": 282, + "Length": 8 + } } ], "Properties": [], @@ -150,17 +210,26 @@ { "Value": "i:int", "Id": 833, - "Name": "x" + "Name": "x", + "IndexSpan": null }, { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, @@ -190,7 +259,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 122, + "Length": 8 + } }, { "Documentation": null, @@ -211,7 +284,11 @@ "Classes": null, "Functions": null, "Id": -1909501045, - "Name": "methodC" + "Name": "methodC", + "IndexSpan": { + "Start": 175, + "Length": 7 + } } ], "Properties": [], @@ -219,29 +296,142 @@ { "Value": "i:int", "Id": 834, - "Name": "y" + "Name": "y", + "IndexSpan": null }, { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 780, - "Name": "C" + "Name": "C", + "IndexSpan": { + "Start": 106, + "Length": 1 + } } ], "Id": 779, - "Name": "B" + "Name": "B", + "IndexSpan": { + "Start": 78, + "Length": 1 + } } ], + "NewLines": [ + { + "EndIndex": 2, + "Kind": 3 + }, + { + "EndIndex": 13, + "Kind": 3 + }, + { + "EndIndex": 15, + "Kind": 3 + }, + { + "EndIndex": 25, + "Kind": 3 + }, + { + "EndIndex": 49, + "Kind": 3 + }, + { + "EndIndex": 70, + "Kind": 3 + }, + { + "EndIndex": 72, + "Kind": 3 + }, + { + "EndIndex": 82, + "Kind": 3 + }, + { + "EndIndex": 94, + "Kind": 3 + }, + { + "EndIndex": 96, + "Kind": 3 + }, + { + "EndIndex": 110, + "Kind": 3 + }, + { + "EndIndex": 139, + "Kind": 3 + }, + { + "EndIndex": 163, + "Kind": 3 + }, + { + "EndIndex": 191, + "Kind": 3 + }, + { + "EndIndex": 217, + "Kind": 3 + }, + { + "EndIndex": 227, + "Kind": 3 + }, + { + "EndIndex": 252, + "Kind": 3 + }, + { + "EndIndex": 272, + "Kind": 3 + }, + { + "EndIndex": 274, + "Kind": 3 + }, + { + "EndIndex": 299, + "Kind": 3 + }, + { + "EndIndex": 321, + "Kind": 3 + }, + { + "EndIndex": 323, + "Kind": 3 + }, + { + "EndIndex": 343, + "Kind": 3 + } + ], + "FileSize": 343, "Id": -2131035837, - "Name": "module" + "Name": "module", + "IndexSpan": null } \ No newline at end of file diff --git a/src/Caching/Test/Files/Requests.json b/src/Caching/Test/Files/Requests.json index fb7bb1831..9d3fa1f73 100644 --- a/src/Caching/Test/Files/Requests.json +++ b/src/Caching/Test/Files/Requests.json @@ -27,7 +27,11 @@ "Classes": null, "Functions": null, "Id": 435179778, - "Name": "check_compatibility" + "Name": "check_compatibility", + "IndexSpan": { + "Start": 973, + "Length": 19 + } }, { "Documentation": null, @@ -48,232 +52,940 @@ "Classes": null, "Functions": null, "Id": -399540245, - "Name": "_check_cryptography" + "Name": "_check_cryptography", + "IndexSpan": { + "Start": 1808, + "Length": 19 + } } ], "Variables": [ { "Value": "urllib3", "Id": 1260465222, - "Name": "urllib3" + "Name": "urllib3", + "IndexSpan": { + "Start": 878, + "Length": 7 + } }, { "Value": "chardet", "Id": -2125975290, - "Name": "chardet" + "Name": "chardet", + "IndexSpan": { + "Start": 893, + "Length": 7 + } }, { "Value": "warnings", "Id": 1876311406, - "Name": "warnings" + "Name": "warnings", + "IndexSpan": { + "Start": 908, + "Length": 8 + } }, { "Value": "requests.exceptions:RequestsDependencyWarning", "Id": -802098666, - "Name": "RequestsDependencyWarning" + "Name": "RequestsDependencyWarning", + "IndexSpan": { + "Start": 941, + "Length": 25 + } }, { "Value": "urllib3.contrib.pyopenssl", "Id": -1632802014, - "Name": "pyopenssl" + "Name": "pyopenssl", + "IndexSpan": { + "Start": 2657, + "Length": 9 + } }, { "Value": "urllib3.exceptions:DependencyWarning", "Id": -891041158, - "Name": "DependencyWarning" + "Name": "DependencyWarning", + "IndexSpan": { + "Start": 2960, + "Length": 17 + } }, { "Value": "i:str", "Id": 916650529, - "Name": "__title__" + "Name": "__title__", + "IndexSpan": { + "Start": 3055, + "Length": 9 + } }, { "Value": "i:str", "Id": -1883656187, - "Name": "__description__" + "Name": "__description__", + "IndexSpan": { + "Start": 3066, + "Length": 15 + } }, { "Value": "i:str", "Id": -1620207176, - "Name": "__url__" + "Name": "__url__", + "IndexSpan": { + "Start": 3083, + "Length": 7 + } }, { "Value": "i:str", "Id": 1161199201, - "Name": "__version__" + "Name": "__version__", + "IndexSpan": { + "Start": 3092, + "Length": 11 + } }, { "Value": "i:int", "Id": -1840123721, - "Name": "__build__" + "Name": "__build__", + "IndexSpan": { + "Start": 3129, + "Length": 9 + } }, { "Value": "i:str", "Id": 1654469090, - "Name": "__author__" + "Name": "__author__", + "IndexSpan": { + "Start": 3140, + "Length": 10 + } }, { "Value": "i:str", "Id": -94198849, - "Name": "__author_email__" + "Name": "__author_email__", + "IndexSpan": { + "Start": 3152, + "Length": 16 + } }, { "Value": "i:str", "Id": -386551926, - "Name": "__license__" + "Name": "__license__", + "IndexSpan": { + "Start": 3170, + "Length": 11 + } }, { "Value": "i:str", "Id": 1739624272, - "Name": "__copyright__" + "Name": "__copyright__", + "IndexSpan": { + "Start": 3207, + "Length": 13 + } }, { "Value": "i:str", "Id": 782136591, - "Name": "__cake__" + "Name": "__cake__", + "IndexSpan": { + "Start": 3222, + "Length": 8 + } }, { "Value": "requests.utils", "Id": 770082554, - "Name": "utils" + "Name": "utils", + "IndexSpan": { + "Start": 3246, + "Length": 5 + } }, { "Value": "requests.packages", "Id": 2129088004, - "Name": "packages" + "Name": "packages", + "IndexSpan": { + "Start": 3266, + "Length": 8 + } }, { "Value": "requests.models:Request", "Id": -104689032, - "Name": "Request" + "Name": "Request", + "IndexSpan": { + "Start": 3295, + "Length": 7 + } }, { "Value": "requests.models:Response", "Id": 1102541176, - "Name": "Response" + "Name": "Response", + "IndexSpan": { + "Start": 3304, + "Length": 8 + } }, { "Value": "requests.models:PreparedRequest", "Id": 1337118331, - "Name": "PreparedRequest" + "Name": "PreparedRequest", + "IndexSpan": { + "Start": 3314, + "Length": 15 + } }, { "Value": "requests.api:request", "Id": -1769342312, - "Name": "request" + "Name": "request", + "IndexSpan": { + "Start": 3347, + "Length": 7 + } }, { "Value": "requests.api:get", "Id": 787423, - "Name": "get" + "Name": "get", + "IndexSpan": { + "Start": 3356, + "Length": 3 + } }, { "Value": "requests.api:head", "Id": 24439415, - "Name": "head" + "Name": "head", + "IndexSpan": { + "Start": 3361, + "Length": 4 + } }, { "Value": "requests.api:post", "Id": 24687927, - "Name": "post" + "Name": "post", + "IndexSpan": { + "Start": 3367, + "Length": 4 + } }, { "Value": "requests.api:patch", "Id": 764909201, - "Name": "patch" + "Name": "patch", + "IndexSpan": { + "Start": 3373, + "Length": 5 + } }, { "Value": "requests.api:put", "Id": 796568, - "Name": "put" + "Name": "put", + "IndexSpan": { + "Start": 3380, + "Length": 3 + } }, { "Value": "requests.api:delete", "Id": 1897257090, - "Name": "delete" + "Name": "delete", + "IndexSpan": { + "Start": 3385, + "Length": 6 + } }, { "Value": "requests.api:options", "Id": 180457127, - "Name": "options" + "Name": "options", + "IndexSpan": { + "Start": 3393, + "Length": 7 + } }, { "Value": "requests.sessions:session", "Id": -880047457, - "Name": "session" + "Name": "session", + "IndexSpan": { + "Start": 3423, + "Length": 7 + } }, { "Value": "requests.sessions:Session", "Id": 784605823, - "Name": "Session" + "Name": "Session", + "IndexSpan": { + "Start": 3432, + "Length": 7 + } }, { "Value": "i:requests.structures:LookupDict", "Id": 753305199, - "Name": "codes" + "Name": "codes", + "IndexSpan": { + "Start": 3466, + "Length": 5 + } }, { "Value": "requests.exceptions:RequestException", "Id": 355509431, - "Name": "RequestException" + "Name": "RequestException", + "IndexSpan": { + "Start": 3502, + "Length": 16 + } }, { "Value": "requests.exceptions:Timeout", "Id": 1780673866, - "Name": "Timeout" + "Name": "Timeout", + "IndexSpan": { + "Start": 3520, + "Length": 7 + } }, { "Value": "requests.exceptions:URLRequired", "Id": 1361573271, - "Name": "URLRequired" + "Name": "URLRequired", + "IndexSpan": { + "Start": 3529, + "Length": 11 + } }, { "Value": "requests.exceptions:TooManyRedirects", "Id": 511002043, - "Name": "TooManyRedirects" + "Name": "TooManyRedirects", + "IndexSpan": { + "Start": 3546, + "Length": 16 + } }, { "Value": "requests.exceptions:HTTPError", "Id": -1546903511, - "Name": "HTTPError" + "Name": "HTTPError", + "IndexSpan": { + "Start": 3564, + "Length": 9 + } }, { "Value": "requests.exceptions:ConnectionError", "Id": 853386419, - "Name": "ConnectionError" + "Name": "ConnectionError", + "IndexSpan": { + "Start": 3575, + "Length": 15 + } }, { "Value": "requests.exceptions:FileModeWarning", "Id": 1675678790, - "Name": "FileModeWarning" + "Name": "FileModeWarning", + "IndexSpan": { + "Start": 3596, + "Length": 15 + } }, { "Value": "requests.exceptions:ConnectTimeout", "Id": -1047738098, - "Name": "ConnectTimeout" + "Name": "ConnectTimeout", + "IndexSpan": { + "Start": 3613, + "Length": 14 + } }, { "Value": "requests.exceptions:ReadTimeout", "Id": -1711523244, - "Name": "ReadTimeout" + "Name": "ReadTimeout", + "IndexSpan": { + "Start": 3629, + "Length": 11 + } }, { "Value": "logging", "Id": 1772213096, - "Name": "logging" + "Name": "logging", + "IndexSpan": { + "Start": 3719, + "Length": 7 + } }, { "Value": "logging:NullHandler", "Id": -1600735444, - "Name": "NullHandler" + "Name": "NullHandler", + "IndexSpan": { + "Start": 3747, + "Length": 11 + } }, { "Value": "typing:Any", "Id": 751189, - "Name": "Any" + "Name": "Any", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Classes": [], + "NewLines": [ + { + "EndIndex": 24, + "Kind": 1 + }, + { + "EndIndex": 25, + "Kind": 1 + }, + { + "EndIndex": 32, + "Kind": 1 + }, + { + "EndIndex": 63, + "Kind": 1 + }, + { + "EndIndex": 93, + "Kind": 1 + }, + { + "EndIndex": 106, + "Kind": 1 + }, + { + "EndIndex": 107, + "Kind": 1 + }, + { + "EndIndex": 111, + "Kind": 1 + }, + { + "EndIndex": 133, + "Kind": 1 + }, + { + "EndIndex": 155, + "Kind": 1 + }, + { + "EndIndex": 156, + "Kind": 1 + }, + { + "EndIndex": 232, + "Kind": 1 + }, + { + "EndIndex": 239, + "Kind": 1 + }, + { + "EndIndex": 240, + "Kind": 1 + }, + { + "EndIndex": 263, + "Kind": 1 + }, + { + "EndIndex": 313, + "Kind": 1 + }, + { + "EndIndex": 334, + "Kind": 1 + }, + { + "EndIndex": 341, + "Kind": 1 + }, + { + "EndIndex": 396, + "Kind": 1 + }, + { + "EndIndex": 404, + "Kind": 1 + }, + { + "EndIndex": 405, + "Kind": 1 + }, + { + "EndIndex": 418, + "Kind": 1 + }, + { + "EndIndex": 419, + "Kind": 1 + }, + { + "EndIndex": 471, + "Kind": 1 + }, + { + "EndIndex": 538, + "Kind": 1 + }, + { + "EndIndex": 559, + "Kind": 1 + }, + { + "EndIndex": 564, + "Kind": 1 + }, + { + "EndIndex": 573, + "Kind": 1 + }, + { + "EndIndex": 588, + "Kind": 1 + }, + { + "EndIndex": 613, + "Kind": 1 + }, + { + "EndIndex": 637, + "Kind": 1 + }, + { + "EndIndex": 645, + "Kind": 1 + }, + { + "EndIndex": 654, + "Kind": 1 + }, + { + "EndIndex": 659, + "Kind": 1 + }, + { + "EndIndex": 660, + "Kind": 1 + }, + { + "EndIndex": 738, + "Kind": 1 + }, + { + "EndIndex": 774, + "Kind": 1 + }, + { + "EndIndex": 775, + "Kind": 1 + }, + { + "EndIndex": 814, + "Kind": 1 + }, + { + "EndIndex": 866, + "Kind": 1 + }, + { + "EndIndex": 870, + "Kind": 1 + }, + { + "EndIndex": 871, + "Kind": 1 + }, + { + "EndIndex": 886, + "Kind": 1 + }, + { + "EndIndex": 901, + "Kind": 1 + }, + { + "EndIndex": 917, + "Kind": 1 + }, + { + "EndIndex": 967, + "Kind": 1 + }, + { + "EndIndex": 968, + "Kind": 1 + }, + { + "EndIndex": 969, + "Kind": 1 + }, + { + "EndIndex": 1028, + "Kind": 1 + }, + { + "EndIndex": 1077, + "Kind": 1 + }, + { + "EndIndex": 1159, + "Kind": 1 + }, + { + "EndIndex": 1160, + "Kind": 1 + }, + { + "EndIndex": 1219, + "Kind": 1 + }, + { + "EndIndex": 1253, + "Kind": 1 + }, + { + "EndIndex": 1289, + "Kind": 1 + }, + { + "EndIndex": 1290, + "Kind": 1 + }, + { + "EndIndex": 1329, + "Kind": 1 + }, + { + "EndIndex": 1385, + "Kind": 1 + }, + { + "EndIndex": 1446, + "Kind": 1 + }, + { + "EndIndex": 1479, + "Kind": 1 + }, + { + "EndIndex": 1501, + "Kind": 1 + }, + { + "EndIndex": 1524, + "Kind": 1 + }, + { + "EndIndex": 1547, + "Kind": 1 + }, + { + "EndIndex": 1548, + "Kind": 1 + }, + { + "EndIndex": 1587, + "Kind": 1 + }, + { + "EndIndex": 1644, + "Kind": 1 + }, + { + "EndIndex": 1705, + "Kind": 1 + }, + { + "EndIndex": 1737, + "Kind": 1 + }, + { + "EndIndex": 1759, + "Kind": 1 + }, + { + "EndIndex": 1780, + "Kind": 1 + }, + { + "EndIndex": 1802, + "Kind": 1 + }, + { + "EndIndex": 1803, + "Kind": 1 + }, + { + "EndIndex": 1804, + "Kind": 1 + }, + { + "EndIndex": 1851, + "Kind": 1 + }, + { + "EndIndex": 1878, + "Kind": 1 + }, + { + "EndIndex": 1887, + "Kind": 1 + }, + { + "EndIndex": 1966, + "Kind": 1 + }, + { + "EndIndex": 1989, + "Kind": 1 + }, + { + "EndIndex": 2004, + "Kind": 1 + }, + { + "EndIndex": 2005, + "Kind": 1 + }, + { + "EndIndex": 2046, + "Kind": 1 + }, + { + "EndIndex": 2148, + "Kind": 1 + }, + { + "EndIndex": 2206, + "Kind": 1 + }, + { + "EndIndex": 2207, + "Kind": 1 + }, + { + "EndIndex": 2256, + "Kind": 1 + }, + { + "EndIndex": 2261, + "Kind": 1 + }, + { + "EndIndex": 2327, + "Kind": 1 + }, + { + "EndIndex": 2364, + "Kind": 1 + }, + { + "EndIndex": 2440, + "Kind": 1 + }, + { + "EndIndex": 2519, + "Kind": 1 + }, + { + "EndIndex": 2564, + "Kind": 1 + }, + { + "EndIndex": 2565, + "Kind": 1 + }, + { + "EndIndex": 2620, + "Kind": 1 + }, + { + "EndIndex": 2625, + "Kind": 1 + }, + { + "EndIndex": 2667, + "Kind": 1 + }, + { + "EndIndex": 2703, + "Kind": 1 + }, + { + "EndIndex": 2704, + "Kind": 1 + }, + { + "EndIndex": 2737, + "Kind": 1 + }, + { + "EndIndex": 2802, + "Kind": 1 + }, + { + "EndIndex": 2848, + "Kind": 1 + }, + { + "EndIndex": 2868, + "Kind": 1 + }, + { + "EndIndex": 2877, + "Kind": 1 + }, + { + "EndIndex": 2878, + "Kind": 1 + }, + { + "EndIndex": 2929, + "Kind": 1 + }, + { + "EndIndex": 2978, + "Kind": 1 + }, + { + "EndIndex": 3029, + "Kind": 1 + }, + { + "EndIndex": 3030, + "Kind": 1 + }, + { + "EndIndex": 3104, + "Kind": 1 + }, + { + "EndIndex": 3182, + "Kind": 1 + }, + { + "EndIndex": 3231, + "Kind": 1 + }, + { + "EndIndex": 3232, + "Kind": 1 + }, + { + "EndIndex": 3252, + "Kind": 1 + }, + { + "EndIndex": 3275, + "Kind": 1 + }, + { + "EndIndex": 3330, + "Kind": 1 + }, + { + "EndIndex": 3401, + "Kind": 1 + }, + { + "EndIndex": 3440, + "Kind": 1 + }, + { + "EndIndex": 3472, + "Kind": 1 + }, + { + "EndIndex": 3498, + "Kind": 1 + }, + { + "EndIndex": 3542, + "Kind": 1 + }, + { + "EndIndex": 3592, + "Kind": 1 + }, + { + "EndIndex": 3641, + "Kind": 1 + }, + { + "EndIndex": 3643, + "Kind": 1 + }, + { + "EndIndex": 3644, + "Kind": 1 + }, + { + "EndIndex": 3712, + "Kind": 1 + }, + { + "EndIndex": 3727, + "Kind": 1 + }, + { + "EndIndex": 3759, + "Kind": 1 + }, + { + "EndIndex": 3760, + "Kind": 1 + }, + { + "EndIndex": 3814, + "Kind": 1 + }, + { + "EndIndex": 3815, + "Kind": 1 + }, + { + "EndIndex": 3858, + "Kind": 1 + }, + { + "EndIndex": 3921, + "Kind": 1 + } + ], + "FileSize": 3921, "Id": -203071489, - "Name": "requests" + "Name": "requests", + "IndexSpan": null } \ No newline at end of file diff --git a/src/Caching/Test/Files/SmokeTest.json b/src/Caching/Test/Files/SmokeTest.json index eb1096502..66c6cd305 100644 --- a/src/Caching/Test/Files/SmokeTest.json +++ b/src/Caching/Test/Files/SmokeTest.json @@ -14,54 +14,94 @@ "Classes": null, "Functions": null, "Id": 24395611, - "Name": "func" + "Name": "func", + "IndexSpan": { + "Start": 207, + "Length": 4 + } } ], "Variables": [ { "Value": "bool", "Id": -529376420, - "Name": "__debug__" + "Name": "__debug__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "str", "Id": -1636005055, - "Name": "__doc__" + "Name": "__doc__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "str", "Id": 875442003, - "Name": "__file__" + "Name": "__file__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "str", "Id": 1097116834, - "Name": "__name__" + "Name": "__name__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "str", "Id": 75395663, - "Name": "__package__" + "Name": "__package__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "list", "Id": 1154586556, - "Name": "__path__" + "Name": "__path__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:str", "Id": 833, - "Name": "x" + "Name": "x", + "IndexSpan": { + "Start": 2, + "Length": 1 + } }, { "Value": "i:module:C", "Id": 812, - "Name": "c" + "Name": "c", + "IndexSpan": { + "Start": 234, + "Length": 1 + } } ], "Classes": [ @@ -90,7 +130,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 45, + "Length": 8 + } }, { "Documentation": null, @@ -111,7 +155,11 @@ "Classes": null, "Functions": null, "Id": -2139806792, - "Name": "method" + "Name": "method", + "IndexSpan": { + "Start": 100, + "Length": 6 + } } ], "Properties": [ @@ -120,37 +168,135 @@ "ReturnType": "i:int", "Attributes": 0, "Id": 24690682, - "Name": "prop" + "Name": "prop", + "IndexSpan": { + "Start": 163, + "Length": 4 + } } ], "Fields": [ { "Value": "i:int", "Id": 833, - "Name": "x" + "Name": "x", + "IndexSpan": null }, { "Value": "i:int", "Id": 834, - "Name": "y" + "Name": "y", + "IndexSpan": null }, { "Value": "dict", "Id": 817929997, - "Name": "__dict__" + "Name": "__dict__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "object", "Id": 1225024228, - "Name": "__weakref__" + "Name": "__weakref__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "GenericParameters": null, "InnerClasses": [], "Id": 780, - "Name": "C" + "Name": "C", + "IndexSpan": { + "Start": 21, + "Length": 1 + } } ], + "NewLines": [ + { + "EndIndex": 2, + "Kind": 3 + }, + { + "EndIndex": 13, + "Kind": 3 + }, + { + "EndIndex": 15, + "Kind": 3 + }, + { + "EndIndex": 25, + "Kind": 3 + }, + { + "EndIndex": 37, + "Kind": 3 + }, + { + "EndIndex": 62, + "Kind": 3 + }, + { + "EndIndex": 82, + "Kind": 3 + }, + { + "EndIndex": 92, + "Kind": 3 + }, + { + "EndIndex": 115, + "Kind": 3 + }, + { + "EndIndex": 138, + "Kind": 3 + }, + { + "EndIndex": 140, + "Kind": 3 + }, + { + "EndIndex": 155, + "Kind": 3 + }, + { + "EndIndex": 183, + "Kind": 3 + }, + { + "EndIndex": 201, + "Kind": 3 + }, + { + "EndIndex": 203, + "Kind": 3 + }, + { + "EndIndex": 216, + "Kind": 3 + }, + { + "EndIndex": 232, + "Kind": 3 + }, + { + "EndIndex": 234, + "Kind": 3 + }, + { + "EndIndex": 243, + "Kind": 3 + } + ], + "FileSize": 243, "Id": -2131035837, - "Name": "module" + "Name": "module", + "IndexSpan": null } \ No newline at end of file diff --git a/src/Caching/Test/Files/Sys.json b/src/Caching/Test/Files/Sys.json index 45eb533cb..81e6f9371 100644 --- a/src/Caching/Test/Files/Sys.json +++ b/src/Caching/Test/Files/Sys.json @@ -14,7 +14,11 @@ "Classes": null, "Functions": null, "Id": -1623088213, - "Name": "__breakpointhook__" + "Name": "__breakpointhook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "displayhook(object) -> None\n\nPrint an object to sys.stdout and also save it in builtins._\n", @@ -28,7 +32,11 @@ "Classes": null, "Functions": null, "Id": 629764782, - "Name": "__displayhook__" + "Name": "__displayhook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "excepthook(exctype, value, traceback) -> None\n\nHandle an exception by displaying it with a traceback on sys.stderr.\n", @@ -42,7 +50,11 @@ "Classes": null, "Functions": null, "Id": 1425218131, - "Name": "__excepthook__" + "Name": "__excepthook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -56,7 +68,11 @@ "Classes": null, "Functions": null, "Id": -1727507378, - "Name": "__interactivehook__" + "Name": "__interactivehook__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "_clear_type_cache() -> None\nClear the internal type lookup cache.", @@ -70,7 +86,11 @@ "Classes": null, "Functions": null, "Id": -1527505257, - "Name": "_clear_type_cache" + "Name": "_clear_type_cache", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "_current_frames() -> dictionary\n\nReturn a dictionary mapping each current thread T's thread id to T's\ncurrent stack frame.\n\nThis function should be used for specialized purposes only.", @@ -84,7 +104,11 @@ "Classes": null, "Functions": null, "Id": 813545300, - "Name": "_current_frames" + "Name": "_current_frames", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "_debugmallocstats()\n\nPrint summary info to stderr about the state of\npymalloc's structures.\n\nIn Py_DEBUG mode, also perform some expensive internal consistency\nchecks.\n", @@ -98,7 +122,11 @@ "Classes": null, "Functions": null, "Id": -1370295892, - "Name": "_debugmallocstats" + "Name": "_debugmallocstats", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "_enablelegacywindowsfsencoding()\n\nChanges the default filesystem encoding to mbcs:replace for consistency\nwith earlier versions of Python. See PEP 529 for more information.\n\nThis is equivalent to defining the PYTHONLEGACYWINDOWSFSENCODING \nenvironment variable before launching Python.", @@ -112,7 +140,11 @@ "Classes": null, "Functions": null, "Id": 1047770159, - "Name": "_enablelegacywindowsfsencoding" + "Name": "_enablelegacywindowsfsencoding", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "_getframe([depth]) -> frameobject\n\nReturn a frame object from the call stack. If optional integer depth is\ngiven, return the frame object that many calls below the top of the stack.\nIf that is deeper than the call stack, ValueError is raised. The default\nfor depth is zero, returning the frame at the top of the call stack.\n\nThis function should be used for internal and specialized\npurposes only.", @@ -137,7 +169,11 @@ "Classes": null, "Functions": null, "Id": 1848744703, - "Name": "_getframe" + "Name": "_getframe", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "breakpointhook(*args, **kws)\n\nThis hook function is called by built-in breakpoint().\n", @@ -164,7 +200,11 @@ "Classes": null, "Functions": null, "Id": -1414470549, - "Name": "breakpointhook" + "Name": "breakpointhook", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "call_tracing(func, args) -> object\n\nCall func(*args), while tracing is enabled. The tracing state is\nsaved, and restored afterwards. This is intended to be called from\na debugger from a checkpoint, to recursively debug some other code.", @@ -191,7 +231,11 @@ "Classes": null, "Functions": null, "Id": -1158985352, - "Name": "call_tracing" + "Name": "call_tracing", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "callstats() -> tuple of integers\n\nReturn a tuple of function call statistics, if CALL_PROFILE was defined\nwhen Python was built. Otherwise, return None.\n\nWhen enabled, this function returns detailed, implementation-specific\ndetails about the number of function calls executed. The return value is\na 11-tuple where the entries in the tuple are counts of:\n0. all function calls\n1. calls to PyFunction_Type objects\n2. PyFunction calls that do not create an argument tuple\n3. PyFunction calls that do not create an argument tuple\n and bypass PyEval_EvalCodeEx()\n4. PyMethod calls\n5. PyMethod calls on bound methods\n6. PyType calls\n7. PyCFunction calls\n8. generator calls\n9. All other calls\n10. Number of stack pops performed by call_function()", @@ -205,7 +249,11 @@ "Classes": null, "Functions": null, "Id": -1252442422, - "Name": "callstats" + "Name": "callstats", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "displayhook(object) -> None\n\nPrint an object to sys.stdout and also save it in builtins._\n", @@ -226,7 +274,11 @@ "Classes": null, "Functions": null, "Id": 388872302, - "Name": "displayhook" + "Name": "displayhook", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "exc_info() -> (type, value, traceback)\n\nReturn information about the most recent exception caught by an except\nclause in the current stack frame or in an older stack frame.", @@ -240,7 +292,11 @@ "Classes": null, "Functions": null, "Id": -935045484, - "Name": "exc_info" + "Name": "exc_info", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "excepthook(exctype, value, traceback) -> None\n\nHandle an exception by displaying it with a traceback on sys.stderr.\n", @@ -273,7 +329,11 @@ "Classes": null, "Functions": null, "Id": 305517843, - "Name": "excepthook" + "Name": "excepthook", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "exit([status])\n\nExit the interpreter by raising SystemExit(status).\nIf the status is omitted or None, it defaults to zero (i.e., success).\nIf the status is an integer, it will be used as the system exit status.\nIf it is another kind of object, it will be printed and the system\nexit status will be one (i.e., failure).", @@ -294,7 +354,11 @@ "Classes": null, "Functions": null, "Id": 24368565, - "Name": "exit" + "Name": "exit", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "get_asyncgen_hooks()\n\nReturn a namedtuple of installed asynchronous generators hooks (firstiter, finalizer).", @@ -308,7 +372,11 @@ "Classes": null, "Functions": null, "Id": -932626587, - "Name": "get_asyncgen_hooks" + "Name": "get_asyncgen_hooks", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Check status of origin tracking for coroutine objects in this thread.", @@ -322,7 +390,11 @@ "Classes": null, "Functions": null, "Id": 1605124845, - "Name": "get_coroutine_origin_tracking_depth" + "Name": "get_coroutine_origin_tracking_depth", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "get_coroutine_wrapper()\n\nReturn the wrapper for coroutine objects set by sys.set_coroutine_wrapper.", @@ -336,7 +408,11 @@ "Classes": null, "Functions": null, "Id": -1829443124, - "Name": "get_coroutine_wrapper" + "Name": "get_coroutine_wrapper", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "getallocatedblocks() -> integer\n\nReturn the number of memory blocks currently allocated, regardless of their\nsize.", @@ -350,7 +426,11 @@ "Classes": null, "Functions": null, "Id": -1953654962, - "Name": "getallocatedblocks" + "Name": "getallocatedblocks", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "getcheckinterval() -> current check interval; see setcheckinterval().", @@ -364,7 +444,11 @@ "Classes": null, "Functions": null, "Id": 2065023054, - "Name": "getcheckinterval" + "Name": "getcheckinterval", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "getdefaultencoding() -> string\n\nReturn the current default string encoding used by the Unicode \nimplementation.", @@ -378,7 +462,11 @@ "Classes": null, "Functions": null, "Id": 1935348949, - "Name": "getdefaultencoding" + "Name": "getdefaultencoding", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "getfilesystemencodeerrors() -> string\n\nReturn the error mode used to convert Unicode filenames in\noperating system filenames.", @@ -392,7 +480,11 @@ "Classes": null, "Functions": null, "Id": 346962379, - "Name": "getfilesystemencodeerrors" + "Name": "getfilesystemencodeerrors", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "getfilesystemencoding() -> string\n\nReturn the encoding used to convert Unicode filenames in\noperating system filenames.", @@ -406,7 +498,11 @@ "Classes": null, "Functions": null, "Id": -946006243, - "Name": "getfilesystemencoding" + "Name": "getfilesystemencoding", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "getprofile()\n\nReturn the profiling function set with sys.setprofile.\nSee the profiler chapter in the library manual.", @@ -420,7 +516,11 @@ "Classes": null, "Functions": null, "Id": 682573034, - "Name": "getprofile" + "Name": "getprofile", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "getrecursionlimit()\n\nReturn the current value of the recursion limit, the maximum depth\nof the Python interpreter stack. This limit prevents infinite\nrecursion from causing an overflow of the C stack and crashing Python.", @@ -434,7 +534,11 @@ "Classes": null, "Functions": null, "Id": 949225272, - "Name": "getrecursionlimit" + "Name": "getrecursionlimit", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "getrefcount(object) -> integer\n\nReturn the reference count of object. The count returned is generally\none higher than you might expect, because it includes the (temporary)\nreference as an argument to getrefcount().", @@ -455,7 +559,11 @@ "Classes": null, "Functions": null, "Id": -37310149, - "Name": "getrefcount" + "Name": "getrefcount", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "getsizeof(object, default) -> int\n\nReturn the size of object in bytes.", @@ -493,7 +601,11 @@ "Classes": null, "Functions": null, "Id": 1485394487, - "Name": "getsizeof" + "Name": "getsizeof", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "getswitchinterval() -> current thread switch interval; see setswitchinterval().", @@ -507,7 +619,11 @@ "Classes": null, "Functions": null, "Id": -1633191528, - "Name": "getswitchinterval" + "Name": "getswitchinterval", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "gettrace()\n\nReturn the global debug tracing function set with sys.settrace.\nSee the debugger chapter in the library manual.", @@ -521,7 +637,11 @@ "Classes": null, "Functions": null, "Id": -920747834, - "Name": "gettrace" + "Name": "gettrace", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "getwindowsversion()\n\nReturn information about the running version of Windows as a named tuple.\nThe members are named: major, minor, build, platform, service_pack,\nservice_pack_major, service_pack_minor, suite_mask, and product_type. For\nbackward compatibility, only the first 5 items are available by indexing.\nAll elements are numbers, except service_pack and platform_type which are\nstrings, and platform_version which is a 3-tuple. Platform is always 2.\nProduct_type may be 1 for a workstation, 2 for a domain controller, 3 for a\nserver. Platform_version is a 3-tuple containing a version number that is\nintended for identifying the OS rather than feature detection.", @@ -535,7 +655,11 @@ "Classes": null, "Functions": null, "Id": -1280212332, - "Name": "getwindowsversion" + "Name": "getwindowsversion", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "intern(string) -> string\n\n``Intern'' the given string. This enters the string in the (global)\ntable of interned strings whose purpose is to speed up dictionary lookups.\nReturn the string itself or the previously interned string object with the\nsame value.", @@ -556,7 +680,11 @@ "Classes": null, "Functions": null, "Id": 2048952809, - "Name": "intern" + "Name": "intern", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "is_finalizing()\nReturn True if Python is exiting.", @@ -570,7 +698,11 @@ "Classes": null, "Functions": null, "Id": 1710543065, - "Name": "is_finalizing" + "Name": "is_finalizing", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "set_asyncgen_hooks(*, firstiter=None, finalizer=None)\n\nSet a finalizer for async generators objects.", @@ -603,7 +735,11 @@ "Classes": null, "Functions": null, "Id": -12592935, - "Name": "set_asyncgen_hooks" + "Name": "set_asyncgen_hooks", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Enable or disable origin tracking for coroutine objects in this thread.\n\nCoroutine objects will track 'depth' frames of traceback information about\nwhere they came from, available in their cr_origin attribute. Set depth of 0\nto disable.", @@ -624,7 +760,11 @@ "Classes": null, "Functions": null, "Id": 836059129, - "Name": "set_coroutine_origin_tracking_depth" + "Name": "set_coroutine_origin_tracking_depth", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "set_coroutine_wrapper(wrapper)\n\nSet a wrapper for coroutine objects.", @@ -645,7 +785,11 @@ "Classes": null, "Functions": null, "Id": 706767832, - "Name": "set_coroutine_wrapper" + "Name": "set_coroutine_wrapper", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "setcheckinterval(n)\n\nTell the Python interpreter to check for asynchronous events every\nn instructions. This also affects how often thread switches occur.", @@ -666,7 +810,11 @@ "Classes": null, "Functions": null, "Id": 233580226, - "Name": "setcheckinterval" + "Name": "setcheckinterval", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "setprofile(function)\n\nSet the profiling function. It will be called on each function call\nand return. See the profiler chapter in the library manual.", @@ -687,7 +835,11 @@ "Classes": null, "Functions": null, "Id": -1675589026, - "Name": "setprofile" + "Name": "setprofile", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "setrecursionlimit(n)\n\nSet the maximum depth of the Python interpreter stack to n. This\nlimit prevents infinite recursion from causing an overflow of the C\nstack and crashing Python. The highest possible limit is platform-\ndependent.", @@ -708,7 +860,11 @@ "Classes": null, "Functions": null, "Id": 9072452, - "Name": "setrecursionlimit" + "Name": "setrecursionlimit", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "setswitchinterval(n)\n\nSet the ideal thread switching delay inside the Python interpreter\nThe actual frequency of switching threads can be lower if the\ninterpreter executes long sequences of uninterruptible code\n(this is implementation-specific and workload-dependent).\n\nThe parameter must represent the desired switching delay in seconds\nA typical value is 0.005 (5 milliseconds).", @@ -729,7 +885,11 @@ "Classes": null, "Functions": null, "Id": 1721622948, - "Name": "setswitchinterval" + "Name": "setswitchinterval", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "settrace(function)\n\nSet the global debug tracing function. It will be called on each\nfunction call. See the debugger chapter in the library manual.", @@ -750,7 +910,11 @@ "Classes": null, "Functions": null, "Id": -1481860294, - "Name": "settrace" + "Name": "settrace", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -764,7 +928,11 @@ "Classes": null, "Functions": null, "Id": 503242166, - "Name": "getdlopenflags" + "Name": "getdlopenflags", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -785,7 +953,11 @@ "Classes": null, "Functions": null, "Id": -1268494038, - "Name": "setdlopenflags" + "Name": "setdlopenflags", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -806,7 +978,11 @@ "Classes": null, "Functions": null, "Id": 1891924589, - "Name": "settscdump" + "Name": "settscdump", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -820,324 +996,580 @@ "Classes": null, "Functions": null, "Id": -1618095583, - "Name": "gettotalrefcount" + "Name": "gettotalrefcount", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Variables": [ { "Value": "_io", "Id": 668243680, - "Name": "_mod__io" + "Name": "_mod__io", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "builtins", "Id": -1070584715, - "Name": "_mod_builtins" + "Name": "_mod_builtins", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "types", "Id": -2043043116, - "Name": "_mod_types" + "Name": "_mod_types", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:str", "Id": -1636005055, - "Name": "__doc__" + "Name": "__doc__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:str", "Id": 1097116834, - "Name": "__name__" + "Name": "__name__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:str", "Id": 75395663, - "Name": "__package__" + "Name": "__package__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:_io:TextIOWrapper", "Id": 1612032761, - "Name": "__stderr__" + "Name": "__stderr__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:_io:TextIOWrapper", "Id": 329210449, - "Name": "__stdin__" + "Name": "__stdin__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:_io:TextIOWrapper", "Id": 1621359266, - "Name": "__stdout__" + "Name": "__stdout__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:str", "Id": 677051350, - "Name": "_framework" + "Name": "_framework", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:tuple", "Id": 24173482, - "Name": "_git" + "Name": "_git", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:NoneType", "Id": 749413383, - "Name": "_home" + "Name": "_home", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:dict", "Id": 1595009614, - "Name": "_xoptions" + "Name": "_xoptions", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:int", "Id": 1834311484, - "Name": "api_version" + "Name": "api_version", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:list", "Id": 24243575, - "Name": "argv" + "Name": "argv", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:str", "Id": 1664944041, - "Name": "base_exec_prefix" + "Name": "base_exec_prefix", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:str", "Id": 1039099721, - "Name": "base_prefix" + "Name": "base_prefix", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:list", "Id": 1963179240, - "Name": "builtin_module_names" + "Name": "builtin_module_names", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:str", "Id": 2033693967, - "Name": "byteorder" + "Name": "byteorder", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:str", "Id": 1298046352, - "Name": "copyright" + "Name": "copyright", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:int", "Id": -1200168491, - "Name": "dllhandle" + "Name": "dllhandle", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:bool", "Id": 1675585612, - "Name": "dont_write_bytecode" + "Name": "dont_write_bytecode", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:str", "Id": 62274953, - "Name": "exec_prefix" + "Name": "exec_prefix", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:str", "Id": -2135911519, - "Name": "executable" + "Name": "executable", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:str", "Id": 92603457, - "Name": "float_repr_style" + "Name": "float_repr_style", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:int", "Id": -471599948, - "Name": "hexversion" + "Name": "hexversion", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:_implementation", "Id": 1997289353, - "Name": "implementation" + "Name": "implementation", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:int", "Id": -2020000914, - "Name": "maxsize" + "Name": "maxsize", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:int", "Id": 842058832, - "Name": "maxunicode" + "Name": "maxunicode", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:list", "Id": -1294259224, - "Name": "meta_path" + "Name": "meta_path", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:dict", "Id": -1637601392, - "Name": "modules" + "Name": "modules", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:list", "Id": 24674492, - "Name": "path" + "Name": "path", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:list", "Id": -1506404755, - "Name": "path_hooks" + "Name": "path_hooks", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:dict", "Id": 376899064, - "Name": "path_importer_cache" + "Name": "path_importer_cache", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:str", "Id": -1042062966, - "Name": "platform" + "Name": "platform", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:str", "Id": -2042362519, - "Name": "prefix" + "Name": "prefix", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:_io:TextIOWrapper", "Id": -1954658503, - "Name": "stderr" + "Name": "stderr", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:_io:TextIOWrapper", "Id": 768230609, - "Name": "stdin" + "Name": "stdin", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:_io:TextIOWrapper", "Id": -1954648798, - "Name": "stdout" + "Name": "stdout", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:str", "Id": 1781540065, - "Name": "version" + "Name": "version", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:list", "Id": -707130143, - "Name": "warnoptions" + "Name": "warnoptions", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:str", "Id": -1849986786, - "Name": "winver" + "Name": "winver", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:sys:__float_info", "Id": 602612744, - "Name": "float_info" + "Name": "float_info", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:sys:__hash_info", "Id": 84475656, - "Name": "hash_info" + "Name": "hash_info", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:sys:__int_info", "Id": 1942821909, - "Name": "int_info" + "Name": "int_info", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:sys:__thread_info", "Id": 604643660, - "Name": "thread_info" + "Name": "thread_info", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:sys:__version_info", "Id": 1738857804, - "Name": "version_info" + "Name": "version_info", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "typing:List", "Id": 23609685, - "Name": "List" + "Name": "List", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "typing:Sequence", "Id": -1502554888, - "Name": "Sequence" + "Name": "Sequence", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "typing:Any", "Id": 751189, - "Name": "Any" + "Name": "Any", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "typing:Dict", "Id": 23370861, - "Name": "Dict" + "Name": "Dict", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "typing:Tuple", "Id": 739642865, - "Name": "Tuple" + "Name": "Tuple", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "typing:Optional", "Id": 1363847319, - "Name": "Optional" + "Name": "Optional", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "typing:Union", "Id": 740351224, - "Name": "Union" + "Name": "Union", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "typing:TypeVar", "Id": -2053481098, - "Name": "TypeVar" + "Name": "TypeVar", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "typing:Type", "Id": 23863281, - "Name": "Type" + "Name": "Type", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "types:FrameType", "Id": -1970702352, - "Name": "FrameType" + "Name": "FrameType", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "_importlib_modulespec:ModuleType", "Id": -1551859907, - "Name": "ModuleType" + "Name": "ModuleType", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "types:TracebackType", "Id": -612342225, - "Name": "TracebackType" + "Name": "TracebackType", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "importlib.abc:MetaPathFinder", "Id": -1792761721, - "Name": "MetaPathFinder" + "Name": "MetaPathFinder", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "typing:_T", "Id": 25132, - "Name": "_T" + "Name": "_T", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:types:TracebackType", "Id": 2060329242, - "Name": "last_traceback" + "Name": "last_traceback", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Value": "i:tuple", "Id": -1174870545, - "Name": "subversion" + "Name": "subversion", + "IndexSpan": { + "Start": 0, + "Length": 0 + } } ], "Classes": [ @@ -1173,7 +1605,11 @@ "Classes": null, "Functions": null, "Id": -1639102358, - "Name": "__add__" + "Name": "__add__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return key in self.", @@ -1200,7 +1636,11 @@ "Classes": null, "Functions": null, "Id": -1841774666, - "Name": "__contains__" + "Name": "__contains__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement delattr(self, name).", @@ -1227,7 +1667,11 @@ "Classes": null, "Functions": null, "Id": 2095540485, - "Name": "__delattr__" + "Name": "__delattr__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Default dir() implementation.", @@ -1248,7 +1692,11 @@ "Classes": null, "Functions": null, "Id": -1636169386, - "Name": "__dir__" + "Name": "__dir__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self==value.", @@ -1275,7 +1723,11 @@ "Classes": null, "Functions": null, "Id": 1748372547, - "Name": "__eq__" + "Name": "__eq__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Default object formatter.", @@ -1302,7 +1754,11 @@ "Classes": null, "Functions": null, "Id": 695475534, - "Name": "__format__" + "Name": "__format__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>=value.", @@ -1329,7 +1785,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -1356,7 +1816,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self[key].", @@ -1383,7 +1847,11 @@ "Classes": null, "Functions": null, "Id": -293179214, - "Name": "__getitem__" + "Name": "__getitem__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -1404,7 +1872,11 @@ "Classes": null, "Functions": null, "Id": -488627138, - "Name": "__getnewargs__" + "Name": "__getnewargs__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -1431,7 +1903,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return hash(self).", @@ -1452,7 +1928,11 @@ "Classes": null, "Functions": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "sys.flags\n\nFlags provided through command line arguments or environment vars.", @@ -1485,7 +1965,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -1506,7 +1990,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -1527,7 +2015,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -1554,7 +2046,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return len(self).", @@ -1575,7 +2071,11 @@ "Classes": null, "Functions": null, "Id": -1628904226, - "Name": "__len__" + "Name": "__len__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self=value.", @@ -2231,7 +2837,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -2258,7 +2868,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self[key].", @@ -2285,7 +2899,11 @@ "Classes": null, "Functions": null, "Id": -293179214, - "Name": "__getitem__" + "Name": "__getitem__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -2312,7 +2930,11 @@ "Classes": null, "Functions": null, "Id": -488627138, - "Name": "__getnewargs__" + "Name": "__getnewargs__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -2339,7 +2961,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return hash(self).", @@ -2360,7 +2986,11 @@ "Classes": null, "Functions": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "sys.float_info\n\nA structseq holding information about the float type. It contains low level\ninformation about the precision and internal representation. Please study\nyour system's :file:`float.h` for more information.", @@ -2393,7 +3023,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -2414,7 +3048,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -2435,7 +3073,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -2462,7 +3104,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return len(self).", @@ -2483,7 +3129,11 @@ "Classes": null, "Functions": null, "Id": -1628904226, - "Name": "__len__" + "Name": "__len__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self=value.", @@ -3143,7 +3895,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -3170,7 +3926,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self[key].", @@ -3197,7 +3957,11 @@ "Classes": null, "Functions": null, "Id": -293179214, - "Name": "__getitem__" + "Name": "__getitem__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -3224,7 +3988,11 @@ "Classes": null, "Functions": null, "Id": -488627138, - "Name": "__getnewargs__" + "Name": "__getnewargs__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -3251,7 +4019,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return hash(self).", @@ -3272,7 +4044,11 @@ "Classes": null, "Functions": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "hash_info\n\nA struct sequence providing parameters used for computing\nhashes. The attributes are read only.", @@ -3305,7 +4081,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -3326,7 +4106,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -3347,7 +4131,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -3374,7 +4162,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return len(self).", @@ -3395,7 +4187,11 @@ "Classes": null, "Functions": null, "Id": -1628904226, - "Name": "__len__" + "Name": "__len__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self=value.", @@ -4045,7 +4941,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -4072,7 +4972,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self[key].", @@ -4099,7 +5003,11 @@ "Classes": null, "Functions": null, "Id": -293179214, - "Name": "__getitem__" + "Name": "__getitem__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -4126,7 +5034,11 @@ "Classes": null, "Functions": null, "Id": -488627138, - "Name": "__getnewargs__" + "Name": "__getnewargs__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -4153,7 +5065,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return hash(self).", @@ -4174,7 +5090,11 @@ "Classes": null, "Functions": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "sys.int_info\n\nA struct sequence that holds information about Python's\ninternal representation of integers. The attributes are read only.", @@ -4207,7 +5127,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -4228,7 +5152,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -4249,7 +5177,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -4276,7 +5208,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return len(self).", @@ -4297,7 +5233,11 @@ "Classes": null, "Functions": null, "Id": -1628904226, - "Name": "__len__" + "Name": "__len__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self=value.", @@ -4912,7 +5945,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -4939,7 +5976,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self[key].", @@ -4966,7 +6007,11 @@ "Classes": null, "Functions": null, "Id": -293179214, - "Name": "__getitem__" + "Name": "__getitem__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -4993,7 +6038,11 @@ "Classes": null, "Functions": null, "Id": -488627138, - "Name": "__getnewargs__" + "Name": "__getnewargs__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -5020,7 +6069,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return hash(self).", @@ -5041,7 +6094,11 @@ "Classes": null, "Functions": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "sys.thread_info\n\nA struct sequence holding information about the thread implementation.", @@ -5074,7 +6131,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -5095,7 +6156,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Implement iter(self).", @@ -5116,7 +6181,11 @@ "Classes": null, "Functions": null, "Id": 971292143, - "Name": "__iter__" + "Name": "__iter__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -5143,7 +6212,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return len(self).", @@ -5164,7 +6237,11 @@ "Classes": null, "Functions": null, "Id": -1628904226, - "Name": "__len__" + "Name": "__len__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self=value.", @@ -5784,7 +6955,11 @@ "Classes": null, "Functions": null, "Id": 1748420597, - "Name": "__ge__" + "Name": "__ge__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return getattr(self, name).", @@ -5811,7 +6986,11 @@ "Classes": null, "Functions": null, "Id": -1329277859, - "Name": "__getattribute__" + "Name": "__getattribute__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self[key].", @@ -5838,7 +7017,11 @@ "Classes": null, "Functions": null, "Id": -293179214, - "Name": "__getitem__" + "Name": "__getitem__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": null, @@ -5865,7 +7048,11 @@ "Classes": null, "Functions": null, "Id": -488627138, - "Name": "__getnewargs__" + "Name": "__getnewargs__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self>value.", @@ -5892,7 +7079,11 @@ "Classes": null, "Functions": null, "Id": 1748435012, - "Name": "__gt__" + "Name": "__gt__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return hash(self).", @@ -5913,7 +7104,11 @@ "Classes": null, "Functions": null, "Id": 925523557, - "Name": "__hash__" + "Name": "__hash__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "sys.version_info\n\nVersion information as a named tuple.", @@ -5946,7 +7141,11 @@ "Classes": null, "Functions": null, "Id": 965872103, - "Name": "__init__" + "Name": "__init__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "This method is called when a class is subclassed.\n\nThe default implementation does nothing. It may be\noverridden to extend subclasses.\n", @@ -5967,7 +7166,11 @@ "Classes": null, "Functions": null, "Id": 1040523408, - "Name": "__init_subclass__" + "Name": "__init_subclass__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self<=value.", @@ -5994,7 +7197,11 @@ "Classes": null, "Functions": null, "Id": 1748569552, - "Name": "__le__" + "Name": "__le__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return len(self).", @@ -6015,7 +7222,11 @@ "Classes": null, "Functions": null, "Id": -1628904226, - "Name": "__len__" + "Name": "__len__", + "IndexSpan": { + "Start": 0, + "Length": 0 + } }, { "Documentation": "Return self TestEnvironmentImpl.TestCleanup(); - private string BaselineFileName => Path.ChangeExtension(Path.Combine(BaselineFilesFolder, TestContext.TestName), "json"); - - [TestMethod, Priority(0)] - public async Task SmokeTest() { - const string code = @" -x = 'str' - -class C: - x: int - def __init__(self): - self.y = 1 - - def method(self): - return func() - - @property - def prop(self) -> int: - return x - -def func(): - return 2.0 - -c = C() -"; - var analysis = await GetAnalysisAsync(code); - var model = ModuleModel.FromAnalysis(analysis, Services); - var json = ToJson(model); - Baseline.CompareToFile(BaselineFileName, json); - } - - [TestMethod, Priority(0)] - public async Task NestedClasses() { - const string code = @" -x = 'str' - -class A: - def methodA(self): - return True - -class B: - x: int - - class C: - def __init__(self): - self.y = 1 - def methodC(self): - return False - - def methodB1(self): - return C() - - def methodB2(self): - return C().y - -c = B().methodB1() -"; - var analysis = await GetAnalysisAsync(code); - var model = ModuleModel.FromAnalysis(analysis, Services); - var json = ToJson(model); - Baseline.CompareToFile(BaselineFileName, json); - } + private string BaselineFileName => GetBaselineFileName(TestContext.TestName); [TestMethod, Priority(0)] public async Task Builtins() { @@ -157,27 +95,5 @@ import requests dbModule.Should().HaveSameMembersAs(rq); } } - - [DataTestMethod, Priority(0)] - [DataRow("", null, null, false)] - [DataRow("str", "builtins", "str", false)] - [DataRow("i:str", "builtins", "str", true)] - [DataRow("i:...", "builtins", "ellipsis", true)] - [DataRow("ellipsis", "builtins", "ellipsis", false)] - [DataRow("i:builtins:str", "builtins", "str", true)] - [DataRow("i:mod:x", "mod", "x", true)] - [DataRow("typing:Union[str, tuple]", "typing", "Union[str, tuple]", false)] - [DataRow("typing:Union[typing:Any, mod:y]", "typing", "Union[typing:Any, mod:y]", false)] - [DataRow("typing:Union[typing:Union[str, int], mod:y]", "typing", "Union[typing:Union[str, int], mod:y]", false)] - public void QualifiedNames(string qualifiedName, string moduleName, string typeName, bool isInstance) { - TypeNames.DeconstructQualifiedName(qualifiedName, out var actualModuleName, out var actualMemberNames, out var actualIsInstance); - actualModuleName.Should().Be(moduleName); - if (string.IsNullOrEmpty(qualifiedName)) { - actualMemberNames.Should().BeNull(); - } else { - actualMemberNames[0].Should().Be(typeName); - } - actualIsInstance.Should().Be(isInstance); - } } } diff --git a/src/Caching/Test/ReferencesTests.cs b/src/Caching/Test/ReferencesTests.cs new file mode 100644 index 000000000..435b8df76 --- /dev/null +++ b/src/Caching/Test/ReferencesTests.cs @@ -0,0 +1,125 @@ +// Copyright(c) Microsoft Corporation +// All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the License); you may not use +// this file except in compliance with the License. You may obtain a copy of the +// License at http://www.apache.org/licenses/LICENSE-2.0 +// +// THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS +// OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY +// IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +// MERCHANTABILITY OR NON-INFRINGEMENT. +// +// See the Apache Version 2.0 License for specific language governing +// permissions and limitations under the License. + +using System.Threading.Tasks; +using FluentAssertions; +using Microsoft.Python.Analysis.Caching.Tests.FluentAssertions; +using Microsoft.Python.Analysis.Caching.Models; +using Microsoft.Python.Analysis.Types; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using NSubstitute; +using TestUtilities; +using Microsoft.Python.Analysis.Modules; + +namespace Microsoft.Python.Analysis.Caching.Tests { + [TestClass] + public class ReferencesTests : AnalysisCachingTestBase { + public TestContext TestContext { get; set; } + + [TestInitialize] + public void TestInitialize() + => TestEnvironmentImpl.TestInitialize($"{TestContext.FullyQualifiedTestClassName}.{TestContext.TestName}"); + + [TestCleanup] + public void Cleanup() => TestEnvironmentImpl.TestCleanup(); + + private string BaselineFileName => GetBaselineFileName(TestContext.TestName); + + [TestMethod, Priority(0)] + public async Task MemberLocations() { + const string code = @" +x = 'str' + +def sum(a, b): + return a + b + +class B: + x: int + + class C: + def __init__(self): + pass + def methodC(self): + pass + + @property + def propertyB(self): + return 1 + + def methodB2(self): + return 2 +"; + var analysis = await GetAnalysisAsync(code); + var model = ModuleModel.FromAnalysis(analysis, Services); + var json = ToJson(model); + Baseline.CompareToFile(BaselineFileName, json); + + using (var dbModule = new PythonDbModule(model, analysis.Document.FilePath, Services)) { + var sum = dbModule.GetMember("sum") as IPythonFunctionType; + sum.Should().NotBeNull(); + sum.Definition.Span.Should().Be(4, 5, 4, 8); + + var b = dbModule.GetMember("B") as IPythonClassType; + b.Should().NotBeNull(); + b.Definition.Span.Should().Be(7, 7, 7, 8); + + var c = b.GetMember("C") as IPythonClassType; + c.Should().NotBeNull(); + c.Definition.Span.Should().Be(10, 11, 10, 12); + + var methodC = c.GetMember("methodC") as IPythonFunctionType; + methodC.Should().NotBeNull(); + methodC.Definition.Span.Should().Be(13, 13, 13, 20); + + var propertyB = b.GetMember("propertyB") as IPythonPropertyType; + propertyB.Should().NotBeNull(); + propertyB.Definition.Span.Should().Be(17, 9, 17, 18); + + var methodB2 = b.GetMember("methodB2") as IPythonFunctionType; + methodB2.Should().NotBeNull(); + methodB2.Definition.Span.Should().Be(20, 9, 20, 17); + } + } + + [TestMethod, Priority(0)] + public async Task Logging() { + const string code = @" +import logging +logging.critical() +"; + var analysis = await GetAnalysisAsync(code); + var logging = analysis.Document.Interpreter.ModuleResolution.GetImportedModule("logging"); + var model = ModuleModel.FromAnalysis(logging.Analysis, Services); + + var dbModule = new PythonDbModule(model, logging.FilePath, Services); + analysis.Document.Interpreter.ModuleResolution.SpecializeModule("logging", x => dbModule); + + var moduleName = $"{analysis.Document.Name}_db.py"; + var modulePath = TestData.GetTestSpecificPath(moduleName); + analysis = await GetAnalysisAsync(code, Services, moduleName, modulePath); + + var v = analysis.Should().HaveVariable("logging").Which; + var vm = v.Value.Should().BeOfType().Which; + var m = vm.Module.Should().BeOfType().Which; + + var critical = m.GetMember("critical") as IPythonFunctionType; + critical.Should().NotBeNull(); + + var span = critical.Definition.Span; + span.Start.Line.Should().BeGreaterThan(1000); + (span.End.Column - span.Start.Column).Should().Be("critical".Length); + } + } +} diff --git a/src/Core/Impl/Text/ILocationConverter.cs b/src/Core/Impl/Text/ILocationConverter.cs new file mode 100644 index 000000000..162698200 --- /dev/null +++ b/src/Core/Impl/Text/ILocationConverter.cs @@ -0,0 +1,26 @@ +// Python Tools for Visual Studio +// Copyright(c) Microsoft Corporation +// All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the License); you may not use +// this file except in compliance with the License. You may obtain a copy of the +// License at http://www.apache.org/licenses/LICENSE-2.0 +// +// THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS +// OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY +// IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +// MERCHANTABILITY OR NON-INFRINGEMENT. +// +// See the Apache Version 2.0 License for specific language governing +// permissions and limitations under the License. + +namespace Microsoft.Python.Core.Text { + /// + /// Represents object that can convert linear span coordinates + /// to line/column and vise versa. + /// + public interface ILocationConverter { + SourceLocation IndexToLocation(int index); + int LocationToIndex(SourceLocation location); + } +} diff --git a/src/Core/Impl/Text/IndexSpan.cs b/src/Core/Impl/Text/IndexSpan.cs index 25c9ca823..85f99153f 100644 --- a/src/Core/Impl/Text/IndexSpan.cs +++ b/src/Core/Impl/Text/IndexSpan.cs @@ -23,18 +23,16 @@ namespace Microsoft.Python.Core.Text { /// It is closed on the left and open on the right: [Start .. End). /// public struct IndexSpan : IEquatable { - private readonly int _start, _length; - public IndexSpan(int start, int length) { - _start = start; - _length = length; + Start = start; + Length = length; } - public int Start => _start; + public int Start { get; } - public int End => _start + _length; + public int End => Start + Length; - public int Length => _length; + public int Length { get; } public override int GetHashCode() => Length.GetHashCode() ^ Start.GetHashCode(); @@ -49,7 +47,7 @@ public IndexSpan(int start, int length) { } #region IEquatable Members - public bool Equals(IndexSpan other) => _length == other._length && _start == other._start; + public bool Equals(IndexSpan other) => Length == other.Length && Start == other.Start; #endregion public static IndexSpan FromBounds(int start, int end) => new IndexSpan(start, end - start); diff --git a/src/LanguageServer/Impl/Sources/DefinitionSource.cs b/src/LanguageServer/Impl/Sources/DefinitionSource.cs index b7cb347ab..7bac3369c 100644 --- a/src/LanguageServer/Impl/Sources/DefinitionSource.cs +++ b/src/LanguageServer/Impl/Sources/DefinitionSource.cs @@ -25,6 +25,7 @@ using Microsoft.Python.Core; using Microsoft.Python.Core.Text; using Microsoft.Python.LanguageServer.Completion; +using Microsoft.Python.LanguageServer.Documents; using Microsoft.Python.LanguageServer.Protocol; using Microsoft.Python.Parsing.Ast; @@ -193,10 +194,10 @@ private Reference FromMemberExpression(MemberExpression mex, IDocumentAnalysis a var type = target?.GetPythonType(); switch (type) { - case IPythonModule m when m.Analysis.GlobalScope != null: + case IPythonModule m when m.GlobalScope != null: // Module GetMember returns module variable value while we // want the variable itself since we want to know its location. - var v1 = m.Analysis.GlobalScope.Variables[mex.Name]; + var v1 = m.GlobalScope.Variables[mex.Name]; if (v1 != null) { definingMember = v1; return FromMember(v1); @@ -247,12 +248,15 @@ private bool CanNavigateToModule(Uri uri) { } var rdt = _services.GetService(); var doc = rdt.GetDocument(uri); - return CanNavigateToModule(doc); + // Allow navigation to modules not in RDT - most probably + // it is a module that was restored from database. + return doc == null || CanNavigateToModule(doc); } private static bool CanNavigateToModule(IPythonModule m) - => m?.ModuleType == ModuleType.User || + => m?.ModuleType == ModuleType.Stub || m?.ModuleType == ModuleType.Package || - m?.ModuleType == ModuleType.Library; + m?.ModuleType == ModuleType.Library || + m?.ModuleType == ModuleType.Specialized; } } diff --git a/src/Parsing/Impl/Ast/PythonAst.cs b/src/Parsing/Impl/Ast/PythonAst.cs index 70a669cf9..5ebeee6e7 100644 --- a/src/Parsing/Impl/Ast/PythonAst.cs +++ b/src/Parsing/Impl/Ast/PythonAst.cs @@ -25,7 +25,7 @@ namespace Microsoft.Python.Parsing.Ast { /// /// Top-level ast for all Python code. Holds onto the body and the line mapping information. /// - public sealed class PythonAst : ScopeStatement { + public sealed class PythonAst : ScopeStatement, ILocationConverter { private readonly object _lock = new object(); private readonly Statement _body; private readonly Dictionary> _attributes = new Dictionary>(); @@ -140,8 +140,10 @@ internal void SetAttributes(Dictionary> attribu } } + #region ILocationConverter public SourceLocation IndexToLocation(int index) => NewLineLocation.IndexToLocation(NewLineLocations, index); public int LocationToIndex(SourceLocation location) => NewLineLocation.LocationToIndex(NewLineLocations, location, EndIndex); + #endregion internal int GetLineEndFromPosition(int index) { var loc = IndexToLocation(index); diff --git a/src/Parsing/Impl/Ast/SourceLocationExtensions.cs b/src/Parsing/Impl/Ast/SourceLocationExtensions.cs index 4c8df3e07..9377fe70f 100644 --- a/src/Parsing/Impl/Ast/SourceLocationExtensions.cs +++ b/src/Parsing/Impl/Ast/SourceLocationExtensions.cs @@ -18,18 +18,18 @@ namespace Microsoft.Python.Parsing.Ast { public static class SourceLocationExtensions { - public static int ToIndex(this SourceLocation location, PythonAst ast) => ast.LocationToIndex(location); + public static int ToIndex(this SourceLocation location, ILocationConverter lc) => lc.LocationToIndex(location); } public static class SourceSpanExtensions { - public static IndexSpan ToIndexSpan(this SourceSpan span, PythonAst ast) - => IndexSpan.FromBounds(ast.LocationToIndex(span.Start), ast.LocationToIndex(span.End)); - public static IndexSpan ToIndexSpan(this Range range, PythonAst ast) - => IndexSpan.FromBounds(ast.LocationToIndex(range.start), ast.LocationToIndex(range.end)); + public static IndexSpan ToIndexSpan(this SourceSpan span, ILocationConverter lc) + => IndexSpan.FromBounds(lc.LocationToIndex(span.Start), lc.LocationToIndex(span.End)); + public static IndexSpan ToIndexSpan(this Range range, ILocationConverter lc) + => IndexSpan.FromBounds(lc.LocationToIndex(range.start), lc.LocationToIndex(range.end)); } public static class IndexSpanExtensions { - public static SourceSpan ToSourceSpan(this IndexSpan span, PythonAst ast) - => ast != null ? new SourceSpan(ast.IndexToLocation(span.Start), ast.IndexToLocation(span.End)) : default; + public static SourceSpan ToSourceSpan(this IndexSpan span, ILocationConverter lc) + => lc != null ? new SourceSpan(lc.IndexToLocation(span.Start), lc.IndexToLocation(span.End)) : default; } } diff --git a/src/Parsing/Impl/Tokens/NewLineKind.cs b/src/Parsing/Impl/Tokens/NewLineKind.cs new file mode 100644 index 000000000..fb103bbd3 --- /dev/null +++ b/src/Parsing/Impl/Tokens/NewLineKind.cs @@ -0,0 +1,24 @@ +// Python Tools for Visual Studio +// Copyright(c) Microsoft Corporation +// All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the License); you may not use +// this file except in compliance with the License. You may obtain a copy of the +// License at http://www.apache.org/licenses/LICENSE-2.0 +// +// THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS +// OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY +// IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +// MERCHANTABILITY OR NON-INFRINGEMENT. +// +// See the Apache Version 2.0 License for specific language governing +// permissions and limitations under the License. + +namespace Microsoft.Python.Parsing { + public enum NewLineKind { + None, + LineFeed, + CarriageReturn, + CarriageReturnLineFeed + } +} diff --git a/src/Parsing/Impl/Tokens/NewLineKindExtensions.cs b/src/Parsing/Impl/Tokens/NewLineKindExtensions.cs new file mode 100644 index 000000000..1c7e26803 --- /dev/null +++ b/src/Parsing/Impl/Tokens/NewLineKindExtensions.cs @@ -0,0 +1,39 @@ +// Python Tools for Visual Studio +// Copyright(c) Microsoft Corporation +// All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the License); you may not use +// this file except in compliance with the License. You may obtain a copy of the +// License at http://www.apache.org/licenses/LICENSE-2.0 +// +// THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS +// OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY +// IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +// MERCHANTABILITY OR NON-INFRINGEMENT. +// +// See the Apache Version 2.0 License for specific language governing +// permissions and limitations under the License. + +using System; + +namespace Microsoft.Python.Parsing { + public static class NewLineKindExtensions { + public static int GetSize(this NewLineKind kind) { + switch (kind) { + case NewLineKind.LineFeed: return 1; + case NewLineKind.CarriageReturnLineFeed: return 2; + case NewLineKind.CarriageReturn: return 1; + } + return 0; + } + + public static string GetString(this NewLineKind kind) { + switch (kind) { + case NewLineKind.CarriageReturn: return "\r"; + case NewLineKind.CarriageReturnLineFeed: return "\r\n"; + case NewLineKind.LineFeed: return "\n"; + } + throw new InvalidOperationException(); + } + } +} diff --git a/src/Parsing/Impl/Tokens/NewLineLocation.cs b/src/Parsing/Impl/Tokens/NewLineLocation.cs new file mode 100644 index 000000000..478f83c89 --- /dev/null +++ b/src/Parsing/Impl/Tokens/NewLineLocation.cs @@ -0,0 +1,120 @@ +// Python Tools for Visual Studio +// Copyright(c) Microsoft Corporation +// All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the License); you may not use +// this file except in compliance with the License. You may obtain a copy of the +// License at http://www.apache.org/licenses/LICENSE-2.0 +// +// THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS +// OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY +// IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +// MERCHANTABILITY OR NON-INFRINGEMENT. +// +// See the Apache Version 2.0 License for specific language governing +// permissions and limitations under the License. + +using System; +using System.Diagnostics; +using Microsoft.Python.Core.Text; + +namespace Microsoft.Python.Parsing { + [DebuggerDisplay("NewLineLocation({EndIndex}, {Kind})")] + public struct NewLineLocation : IComparable { + public NewLineLocation(int lineEnd, NewLineKind kind) { + EndIndex = lineEnd; + Kind = kind; + } + + /// + /// The end of of the line, including the line break. + /// + public int EndIndex { get; } + + /// + /// The type of new line which terminated the line. + /// + public NewLineKind Kind { get; } + + public int CompareTo(NewLineLocation other) => EndIndex - other.EndIndex; + + public static SourceLocation IndexToLocation(NewLineLocation[] lineLocations, int index) { + if (lineLocations == null || index == 0) { + return new SourceLocation(index, 1, 1); + } + + var match = Array.BinarySearch(lineLocations, new NewLineLocation(index, NewLineKind.None)); + if (match < 0) { + // If our index = -1, it means we're on the first line. + if (match == -1) { + return new SourceLocation(index, 1, checked(index + 1)); + } + // If we couldn't find an exact match for this line number, get the nearest + // matching line number less than this one + match = ~match - 1; + } + + while (match >= 0 && index == lineLocations[match].EndIndex && lineLocations[match].Kind == NewLineKind.None) { + match -= 1; + } + if (match < 0) { + return new SourceLocation(index, 1, checked(index + 1)); + } + + var line = match + 2; + var col = index - lineLocations[match].EndIndex + 1; + return new SourceLocation(index, line, col); + } + + public static int LocationToIndex(NewLineLocation[] lineLocations, SourceLocation location, int endIndex) { + if (lineLocations == null) { + return 0; + } + var index = 0; + if (lineLocations.Length == 0) { + // We have a single line, so the column is the index + index = location.Column - 1; + return endIndex >= 0 ? Math.Min(index, endIndex) : index; + } + var line = location.Line - 1; + + if (line > lineLocations.Length) { + index = lineLocations[lineLocations.Length - 1].EndIndex; + return endIndex >= 0 ? Math.Min(index, endIndex) : index; + } + + if (line > 0) { + index = lineLocations[line - 1].EndIndex; + } + + if (line < lineLocations.Length && location.Column > (lineLocations[line].EndIndex - index)) { + index = lineLocations[line].EndIndex; + return endIndex >= 0 ? Math.Min(index, endIndex) : index; + } + + if (endIndex < 0) { + endIndex = lineLocations[lineLocations.Length - 1].EndIndex; + } + + return (int)Math.Min((long)index + location.Column - 1, endIndex); + } + + private static readonly char[] _lineSeparators = new[] { '\r', '\n' }; + + public static NewLineLocation FindNewLine(string text, int start) { + var i = text.IndexOfAny(_lineSeparators, start); + if (i < start) { + return new NewLineLocation(text.Length, NewLineKind.None); + } + if (text[i] == '\n') { + return new NewLineLocation(i + 1, NewLineKind.LineFeed); + } + if (text.Length > i + 1 && text[i + 1] == '\n') { + return new NewLineLocation(i + 2, NewLineKind.CarriageReturnLineFeed); + } + return new NewLineLocation(i + 1, NewLineKind.CarriageReturn); + } + + public override string ToString() => $""; + } +} diff --git a/src/Parsing/Impl/Token.cs b/src/Parsing/Impl/Tokens/Token.cs similarity index 100% rename from src/Parsing/Impl/Token.cs rename to src/Parsing/Impl/Tokens/Token.cs diff --git a/src/Parsing/Impl/TokenCategory.cs b/src/Parsing/Impl/Tokens/TokenCategory.cs similarity index 100% rename from src/Parsing/Impl/TokenCategory.cs rename to src/Parsing/Impl/Tokens/TokenCategory.cs diff --git a/src/Parsing/Impl/TokenInfo.cs b/src/Parsing/Impl/Tokens/TokenInfo.cs similarity index 100% rename from src/Parsing/Impl/TokenInfo.cs rename to src/Parsing/Impl/Tokens/TokenInfo.cs diff --git a/src/Parsing/Impl/TokenKind.Generated.cs b/src/Parsing/Impl/Tokens/TokenKind.Generated.cs similarity index 100% rename from src/Parsing/Impl/TokenKind.Generated.cs rename to src/Parsing/Impl/Tokens/TokenKind.Generated.cs diff --git a/src/Parsing/Impl/TokenTriggers.cs b/src/Parsing/Impl/Tokens/TokenTriggers.cs similarity index 100% rename from src/Parsing/Impl/TokenTriggers.cs rename to src/Parsing/Impl/Tokens/TokenTriggers.cs diff --git a/src/Parsing/Impl/Tokenizer.cs b/src/Parsing/Impl/Tokens/Tokenizer.cs similarity index 95% rename from src/Parsing/Impl/Tokenizer.cs rename to src/Parsing/Impl/Tokens/Tokenizer.cs index e77356a9a..ec5622252 100644 --- a/src/Parsing/Impl/Tokenizer.cs +++ b/src/Parsing/Impl/Tokens/Tokenizer.cs @@ -28,7 +28,6 @@ using Microsoft.Python.Core.Text; namespace Microsoft.Python.Parsing { - /// /// IronPython tokenizer /// @@ -2585,133 +2584,4 @@ private void ClearInvalidChars() { #endregion } - - public enum NewLineKind { - None, - LineFeed, - CarriageReturn, - CarriageReturnLineFeed - } - - [DebuggerDisplay("NewLineLocation({_endIndex}, {_kind})")] - public struct NewLineLocation : IComparable { - private readonly int _endIndex; - private readonly NewLineKind _kind; - - public NewLineLocation(int lineEnd, NewLineKind kind) { - _endIndex = lineEnd; - _kind = kind; - } - - /// - /// The end of of the line, including the line break. - /// - public int EndIndex => _endIndex; - - /// - /// The type of new line which terminated the line. - /// - public NewLineKind Kind => _kind; - - public int CompareTo(NewLineLocation other) => EndIndex - other.EndIndex; - - public static SourceLocation IndexToLocation(NewLineLocation[] lineLocations, int index) { - if (lineLocations == null || index == 0) { - return new SourceLocation(index, 1, 1); - } - - var match = Array.BinarySearch(lineLocations, new NewLineLocation(index, NewLineKind.None)); - if (match < 0) { - // If our index = -1, it means we're on the first line. - if (match == -1) { - return new SourceLocation(index, 1, checked(index + 1)); - } - // If we couldn't find an exact match for this line number, get the nearest - // matching line number less than this one - match = ~match - 1; - } - - while (match >= 0 && index == lineLocations[match].EndIndex && lineLocations[match].Kind == NewLineKind.None) { - match -= 1; - } - if (match < 0) { - return new SourceLocation(index, 1, checked(index + 1)); - } - - var line = match + 2; - var col = index - lineLocations[match].EndIndex + 1; - return new SourceLocation(index, line, col); - } - - public static int LocationToIndex(NewLineLocation[] lineLocations, SourceLocation location, int endIndex) { - if (lineLocations == null) { - return 0; - } - var index = 0; - if (lineLocations.Length == 0) { - // We have a single line, so the column is the index - index = location.Column - 1; - return endIndex >= 0 ? Math.Min(index, endIndex) : index; - } - var line = location.Line - 1; - - if (line > lineLocations.Length) { - index = lineLocations[lineLocations.Length - 1].EndIndex; - return endIndex >= 0 ? Math.Min(index, endIndex) : index; - } - - if (line > 0) { - index = lineLocations[line - 1].EndIndex; - } - - if (line < lineLocations.Length && location.Column > (lineLocations[line].EndIndex - index)) { - index = lineLocations[line].EndIndex; - return endIndex >= 0 ? Math.Min(index, endIndex) : index; - } - - if (endIndex < 0) { - endIndex = lineLocations[lineLocations.Length - 1].EndIndex; - } - - return (int)Math.Min((long)index + location.Column - 1, endIndex); - } - - private static readonly char[] _lineSeparators = new[] { '\r', '\n' }; - - public static NewLineLocation FindNewLine(string text, int start) { - var i = text.IndexOfAny(_lineSeparators, start); - if (i < start) { - return new NewLineLocation(text.Length, NewLineKind.None); - } - if (text[i] == '\n') { - return new NewLineLocation(i + 1, NewLineKind.LineFeed); - } - if (text.Length > i + 1 && text[i + 1] == '\n') { - return new NewLineLocation(i + 2, NewLineKind.CarriageReturnLineFeed); - } - return new NewLineLocation(i + 1, NewLineKind.CarriageReturn); - } - - public override string ToString() => $""; - } - - public static class NewLineKindExtensions { - public static int GetSize(this NewLineKind kind) { - switch (kind) { - case NewLineKind.LineFeed: return 1; - case NewLineKind.CarriageReturnLineFeed: return 2; - case NewLineKind.CarriageReturn: return 1; - } - return 0; - } - - public static string GetString(this NewLineKind kind) { - switch (kind) { - case NewLineKind.CarriageReturn: return "\r"; - case NewLineKind.CarriageReturnLineFeed: return "\r\n"; - case NewLineKind.LineFeed: return "\n"; - } - throw new InvalidOperationException(); - } - } } diff --git a/src/Parsing/Impl/TokenizerOptions.cs b/src/Parsing/Impl/Tokens/TokenizerOptions.cs similarity index 100% rename from src/Parsing/Impl/TokenizerOptions.cs rename to src/Parsing/Impl/Tokens/TokenizerOptions.cs