From af32e72a042927785258da494d76b7b472e4e8a6 Mon Sep 17 00:00:00 2001 From: CagriCatik Date: Wed, 22 Jan 2025 22:32:03 +0000 Subject: [PATCH] deploy: 2d48b2e829569d459cfd533a87249507c3d1b85e --- 404.html | 4 ++-- assets/js/{main.994a55b6.js => main.e87c1819.js} | 4 ++-- ...n.994a55b6.js.LICENSE.txt => main.e87c1819.js.LICENSE.txt} | 0 blog/archive/index.html | 4 ++-- blog/authors/ccatik/index.html | 4 ++-- blog/authors/index.html | 4 ++-- blog/importance-of-software-architecture/index.html | 4 ++-- blog/index.html | 4 ++-- blog/tags/docusaurus/index.html | 4 ++-- blog/tags/hello/index.html | 4 ++-- blog/tags/index.html | 4 ++-- blog/why-python-guide-over-gpt/index.html | 4 ++-- docs/category/advanced/index.html | 4 ++-- docs/category/asyncio/index.html | 4 ++-- docs/category/behavioral-design-patterns/index.html | 4 ++-- docs/category/building-rest-apis/index.html | 4 ++-- docs/category/built-in-functions/index.html | 4 ++-- docs/category/cicd/index.html | 4 ++-- docs/category/combining-datasets/index.html | 4 ++-- docs/category/control-flow/index.html | 4 ++-- docs/category/creational-design-patterns/index.html | 4 ++-- docs/category/data-frames/index.html | 4 ++-- docs/category/data-visualization/index.html | 4 ++-- docs/category/dataclasses/index.html | 4 ++-- docs/category/designing-rest-apis/index.html | 4 ++-- docs/category/enhancing-actions/index.html | 4 ++-- docs/category/errors/index.html | 4 ++-- docs/category/fastapi-actions/index.html | 4 ++-- docs/category/file-management/index.html | 4 ++-- docs/category/functions/index.html | 4 ++-- .../how-cicd-revolutionized-software-development/index.html | 4 ++-- docs/category/introduction/index.html | 4 ++-- docs/category/lists/index.html | 4 ++-- docs/category/modules/index.html | 4 ++-- docs/category/multi-threading/index.html | 4 ++-- docs/category/multiprocessing/index.html | 4 ++-- docs/category/numpy/index.html | 4 ++-- docs/category/oop/index.html | 4 ++-- docs/category/python-basics/index.html | 4 ++-- docs/category/reshaping-datasets/index.html | 4 ++-- docs/category/series/index.html | 4 ++-- docs/category/setting-up/index.html | 4 ++-- docs/category/string-operators/index.html | 4 ++-- docs/category/structural-design-patterns/index.html | 4 ++-- docs/category/time-series/index.html | 4 ++-- docs/category/unit-testing/index.html | 4 ++-- docs/ci-cd/enhancing-actions/01/index.html | 4 ++-- docs/ci-cd/fastapi-actions/01/index.html | 4 ++-- docs/ci-cd/getting-started/index.html | 4 ++-- docs/ci-cd/introduction/cicd/cd/index.html | 4 ++-- docs/ci-cd/introduction/cicd/cdp/index.html | 4 ++-- docs/ci-cd/introduction/cicd/ci/index.html | 4 ++-- docs/ci-cd/introduction/cicd/cicd/index.html | 4 ++-- .../introduction/cicd/introduction-github-actions/index.html | 4 ++-- docs/ci-cd/introduction/cicd/key_components/index.html | 4 ++-- docs/ci-cd/introduction/cicd/practices/index.html | 4 ++-- docs/ci-cd/introduction/revolution_ci_cd/cdp/index.html | 4 ++-- docs/ci-cd/introduction/revolution_ci_cd/ci/index.html | 4 ++-- docs/ci-cd/setting-up/01/index.html | 4 ++-- docs/data-analysis/Combining_Datasets/Intro/index.html | 4 ++-- .../Combining_Datasets/Merging_Different_Column/index.html | 4 ++-- docs/data-analysis/Combining_Datasets/concat()/index.html | 4 ++-- docs/data-analysis/Combining_Datasets/inner_join/index.html | 4 ++-- .../Combining_Datasets/left_right_join/index.html | 4 ++-- .../Combining_Datasets/left_right_minus/index.html | 4 ++-- docs/data-analysis/Combining_Datasets/merge()/index.html | 4 ++-- docs/data-analysis/Combining_Datasets/outer_join/index.html | 4 ++-- .../Combining_Datasets/outer_join_minus/index.html | 4 ++-- .../Data-Visualization/Bar_Chart_Race/index.html | 4 ++-- docs/data-analysis/Data-Visualization/Bar_Plots/index.html | 4 ++-- .../Data-Visualization/Candlestick_Charts/index.html | 4 ++-- .../Data-Visualization/Color_by_Value/index.html | 4 ++-- docs/data-analysis/Data-Visualization/Histograms/index.html | 4 ++-- .../Data-Visualization/Interactive_Plots/index.html | 4 ++-- docs/data-analysis/Data-Visualization/Line_Plots/index.html | 4 ++-- docs/data-analysis/Data-Visualization/Pie_Charts/index.html | 4 ++-- docs/data-analysis/Data-Visualization/Scatter/index.html | 4 ++-- docs/data-analysis/Data-Visualization/Styles/index.html | 4 ++-- docs/data-analysis/Data_Frames/adding-columns/index.html | 4 ++-- docs/data-analysis/Data_Frames/descripe-info/index.html | 4 ++-- docs/data-analysis/Data_Frames/dropna/index.html | 4 ++-- docs/data-analysis/Data_Frames/fillna/index.html | 4 ++-- docs/data-analysis/Data_Frames/intro/index.html | 4 ++-- docs/data-analysis/Data_Frames/methods/index.html | 4 ++-- docs/data-analysis/Data_Frames/nlargest-nsmallest/index.html | 4 ++-- .../Data_Frames/removing-columns-rows/index.html | 4 ++-- .../Data_Frames/set_index-reset_index/index.html | 4 ++-- docs/data-analysis/NumPy/Add_New_Axis/index.html | 4 ++-- docs/data-analysis/NumPy/Arrays/index.html | 4 ++-- docs/data-analysis/NumPy/Basic_Operations/index.html | 4 ++-- docs/data-analysis/NumPy/Broadcasting/index.html | 4 ++-- docs/data-analysis/NumPy/Creating_Arrays/index.html | 4 ++-- docs/data-analysis/NumPy/Finding_Unique_Elements/index.html | 4 ++-- docs/data-analysis/NumPy/Generating_Random_Numbers/index.html | 4 ++-- docs/data-analysis/NumPy/Indexing_Slicing/index.html | 4 ++-- docs/data-analysis/NumPy/Lists_vs_NumPy/index.html | 4 ++-- docs/data-analysis/NumPy/Matrices/index.html | 4 ++-- docs/data-analysis/NumPy/Reshaping/index.html | 4 ++-- docs/data-analysis/NumPy/Reshaping_Flattening/index.html | 4 ++-- docs/data-analysis/NumPy/Reversing_Arrays/index.html | 4 ++-- docs/data-analysis/NumPy/Saving_Loading_Arrays/index.html | 4 ++-- docs/data-analysis/NumPy/Shape_and_Size/index.html | 4 ++-- docs/data-analysis/NumPy/Sorting_Concatenating/index.html | 4 ++-- docs/data-analysis/Reshaping_Datasets/groupby/index.html | 4 ++-- docs/data-analysis/Reshaping_Datasets/introduction/index.html | 4 ++-- docs/data-analysis/Reshaping_Datasets/melt/index.html | 4 ++-- docs/data-analysis/Reshaping_Datasets/pivot-table/index.html | 4 ++-- docs/data-analysis/Reshaping_Datasets/pivot/index.html | 4 ++-- .../data-analysis/Reshaping_Datasets/stack-unstack/index.html | 4 ++-- docs/data-analysis/Reshaping_Datasets/transpose/index.html | 4 ++-- docs/data-analysis/Series/accessing_elements_index/index.html | 4 ++-- .../Series/accessing_elements_position/index.html | 4 ++-- docs/data-analysis/Series/attributes/index.html | 4 ++-- docs/data-analysis/Series/counting_values/index.html | 4 ++-- docs/data-analysis/Series/handling_csv_files/index.html | 4 ++-- docs/data-analysis/Series/head-and-tail/index.html | 4 ++-- docs/data-analysis/Series/intro/index.html | 4 ++-- docs/data-analysis/Series/methods/index.html | 4 ++-- docs/data-analysis/Series/sorting_values/index.html | 4 ++-- docs/data-analysis/String_Operators/index-columns/index.html | 4 ++-- .../String_Operators/startswith-endswith/index.html | 4 ++-- docs/data-analysis/String_Operators/str/index.html | 4 ++-- .../Time_Series/Accessing_Time_Attributes/index.html | 4 ++-- docs/data-analysis/Time_Series/Period_PeriodIndex/index.html | 4 ++-- docs/data-analysis/Time_Series/Project/index.html | 4 ++-- docs/data-analysis/Time_Series/Time_Series/index.html | 4 ++-- .../Time_Series/Timedelta_TimedeltaIndex/index.html | 4 ++-- .../Time_Series/Timestamp_DatetimeIndex/index.html | 4 ++-- .../Time_Series/Timestap_Methods_Attributes/index.html | 4 ++-- docs/data-analysis/Time_Series/date_range()/index.html | 4 ++-- .../Time_Series/loc_iloc_DatetimeIndex/index.html | 4 ++-- docs/data-analysis/Time_Series/reindex/index.html | 4 ++-- docs/data-analysis/Time_Series/resample/index.html | 4 ++-- docs/data-analysis/getting-started/index.html | 4 ++-- docs/design-patterns/behavioral/behavioral/index.html | 4 ++-- docs/design-patterns/creational/abstract_factory/index.html | 4 ++-- docs/design-patterns/creational/builder/index.html | 4 ++-- docs/design-patterns/creational/factory_method/index.html | 4 ++-- docs/design-patterns/creational/index.html | 4 ++-- docs/design-patterns/creational/prototype/index.html | 4 ++-- docs/design-patterns/creational/singleton/index.html | 4 ++-- docs/design-patterns/getting-started/index.html | 4 ++-- docs/design-patterns/structural/structural/index.html | 4 ++-- docs/getting-started/index.html | 4 ++-- docs/gui-development/getting-started/index.html | 4 ++-- docs/gui-development/introduction/gui_development/index.html | 4 ++-- docs/gui-development/introduction/gui_frameworks/index.html | 4 ++-- docs/gui-development/introduction/right_framework/index.html | 4 ++-- docs/gui-development/introduction/setting-up/index.html | 4 ++-- docs/python-guide/Advanced/Generators/index.html | 4 ++-- docs/python-guide/Advanced/Lambda_Functions/index.html | 4 ++-- docs/python-guide/Advanced/Mypy/index.html | 4 ++-- docs/python-guide/Advanced/Walrus_Operator/index.html | 4 ++-- docs/python-guide/AsyncIO/Gather/index.html | 4 ++-- docs/python-guide/AsyncIO/Getting_Started/index.html | 4 ++-- docs/python-guide/AsyncIO/Intro/index.html | 4 ++-- docs/python-guide/AsyncIO/Tasks/index.html | 4 ++-- docs/python-guide/AsyncIO/Website_Status/index.html | 4 ++-- .../Built_in_Functions/Improved_Chat_Bot/index.html | 4 ++-- docs/python-guide/Built_in_Functions/all()/index.html | 4 ++-- docs/python-guide/Built_in_Functions/any()/index.html | 4 ++-- docs/python-guide/Built_in_Functions/callable()/index.html | 4 ++-- .../python-guide/Built_in_Functions/dunder_methods/index.html | 4 ++-- docs/python-guide/Built_in_Functions/enumerate()/index.html | 4 ++-- docs/python-guide/Built_in_Functions/eval()/index.html | 4 ++-- docs/python-guide/Built_in_Functions/exec()/index.html | 4 ++-- docs/python-guide/Built_in_Functions/filter()/index.html | 4 ++-- docs/python-guide/Built_in_Functions/globals()/index.html | 4 ++-- docs/python-guide/Built_in_Functions/isinstance()/index.html | 4 ++-- docs/python-guide/Built_in_Functions/locals()/index.html | 4 ++-- docs/python-guide/Built_in_Functions/map()/index.html | 4 ++-- docs/python-guide/Built_in_Functions/print()/index.html | 4 ++-- docs/python-guide/Built_in_Functions/range()/index.html | 4 ++-- docs/python-guide/Built_in_Functions/round()/index.html | 4 ++-- docs/python-guide/Built_in_Functions/slice()/index.html | 4 ++-- docs/python-guide/Built_in_Functions/sorted()/index.html | 4 ++-- docs/python-guide/Built_in_Functions/zip()/index.html | 4 ++-- docs/python-guide/Control_Flow/Break_and_Continue/index.html | 4 ++-- docs/python-guide/Control_Flow/For_Loop/index.html | 4 ++-- docs/python-guide/Control_Flow/If_Elif_Else/index.html | 4 ++-- docs/python-guide/Control_Flow/If_Else_Shorthand/index.html | 4 ++-- docs/python-guide/Control_Flow/Loop-Else/index.html | 4 ++-- docs/python-guide/Control_Flow/Rock_Paper_Scissors/index.html | 4 ++-- docs/python-guide/Control_Flow/While_Loop/index.html | 4 ++-- docs/python-guide/Dataclasses/@dataclass/index.html | 4 ++-- docs/python-guide/Dataclasses/@property/index.html | 4 ++-- docs/python-guide/Dataclasses/Fields/index.html | 4 ++-- docs/python-guide/Dataclasses/InitVar/index.html | 4 ++-- docs/python-guide/Dataclasses/Notes_App/index.html | 4 ++-- docs/python-guide/Dataclasses/post_init/index.html | 4 ++-- docs/python-guide/Errors/Else_Finally/index.html | 4 ++-- docs/python-guide/Errors/Letters_Only/index.html | 4 ++-- docs/python-guide/Errors/Raise/index.html | 4 ++-- docs/python-guide/Errors/Try_Except/index.html | 4 ++-- docs/python-guide/Errors/Unknown_Errors/index.html | 4 ++-- docs/python-guide/Errors/User_Input/index.html | 4 ++-- docs/python-guide/File-Management/Caching-JSON/index.html | 4 ++-- docs/python-guide/File-Management/Deleting_Files/index.html | 4 ++-- docs/python-guide/File-Management/File-Handling/index.html | 4 ++-- docs/python-guide/File-Management/Glob/index.html | 4 ++-- docs/python-guide/File-Management/Handling-JSON/index.html | 4 ++-- docs/python-guide/File-Management/JSON/index.html | 4 ++-- docs/python-guide/File-Management/Pickling/index.html | 4 ++-- docs/python-guide/File-Management/Reading-Files/index.html | 4 ++-- .../File-Management/Writing-Creating-Files/index.html | 4 ++-- docs/python-guide/File-Management/toml/index.html | 4 ++-- docs/python-guide/File-Management/yaml/index.html | 4 ++-- docs/python-guide/Functions/Args_and_Kwargs/index.html | 4 ++-- docs/python-guide/Functions/Creating_a_Function/index.html | 4 ++-- .../Functions/Parameters_and_Arguments/index.html | 4 ++-- docs/python-guide/Functions/Pass/index.html | 4 ++-- docs/python-guide/Functions/Recursion/index.html | 4 ++-- docs/python-guide/Functions/Return_Functions/index.html | 4 ++-- docs/python-guide/Functions/Star_and_Slash/index.html | 4 ++-- docs/python-guide/Lists/Dont_Loop_Modify/index.html | 4 ++-- docs/python-guide/Lists/Grocery_List/index.html | 4 ++-- docs/python-guide/Lists/List_Comprehensions/index.html | 4 ++-- docs/python-guide/Lists/Slicing/index.html | 4 ++-- docs/python-guide/Lists/getting-started/index.html | 4 ++-- docs/python-guide/Modules/Importing/index.html | 4 ++-- docs/python-guide/Modules/Libraries/index.html | 4 ++-- docs/python-guide/Modules/Modules/index.html | 4 ++-- docs/python-guide/Modules/Packages/code/index.html | 4 ++-- docs/python-guide/Modules/Website_Status/index.html | 4 ++-- docs/python-guide/Modules/if_name_main/index.html | 4 ++-- .../Multiprocessing/Data-Sharing-Issue/index.html | 4 ++-- docs/python-guide/Multiprocessing/Intro/index.html | 4 ++-- docs/python-guide/Multiprocessing/Lock-Semaphores/index.html | 4 ++-- docs/python-guide/Multiprocessing/Pipes/index.html | 4 ++-- docs/python-guide/Multiprocessing/Pools-Map/index.html | 4 ++-- .../Multiprocessing/Pools-Multiple-Functions/index.html | 4 ++-- docs/python-guide/Multiprocessing/Pools-Starmap/index.html | 4 ++-- docs/python-guide/Multiprocessing/Processes/index.html | 4 ++-- docs/python-guide/Multiprocessing/Queues/index.html | 4 ++-- docs/python-guide/Multithreading/Daemon-Threads/index.html | 4 ++-- docs/python-guide/Multithreading/Locks/index.html | 4 ++-- docs/python-guide/Multithreading/Race-Conditions/index.html | 4 ++-- docs/python-guide/Multithreading/Semaphores/index.html | 4 ++-- docs/python-guide/Multithreading/Threads/index.html | 4 ++-- .../Multithreading/With-Lock-Semaphore/index.html | 4 ++-- docs/python-guide/OOP/@abstractmethod/index.html | 4 ++-- docs/python-guide/OOP/@classmethod/index.html | 4 ++-- docs/python-guide/OOP/@staticmethod/index.html | 4 ++-- .../python-guide/OOP/Attributes_Class_and_Instance/index.html | 4 ++-- docs/python-guide/OOP/Classes_and_Objects/index.html | 4 ++-- docs/python-guide/OOP/Dunder_Methods/index.html | 4 ++-- docs/python-guide/OOP/Inheritance/index.html | 4 ++-- docs/python-guide/OOP/Methods_Functions/index.html | 4 ++-- docs/python-guide/OOP/Name_Mangling/index.html | 4 ++-- docs/python-guide/OOP/OOP/index.html | 4 ++-- docs/python-guide/OOP/eq__()/index.html | 4 ++-- docs/python-guide/OOP/init/index.html | 4 ++-- docs/python-guide/OOP/self/index.html | 4 ++-- docs/python-guide/OOP/str()_repr()/index.html | 4 ++-- docs/python-guide/OOP/super()/index.html | 4 ++-- docs/python-guide/Python_Basics/Assertions/index.html | 4 ++-- docs/python-guide/Python_Basics/Booleans/index.html | 4 ++-- docs/python-guide/Python_Basics/Comments/index.html | 4 ++-- docs/python-guide/Python_Basics/Comparing_Floats/index.html | 4 ++-- docs/python-guide/Python_Basics/Constants/index.html | 4 ++-- docs/python-guide/Python_Basics/Data_Types/index.html | 4 ++-- docs/python-guide/Python_Basics/Dictionaries/index.html | 4 ++-- docs/python-guide/Python_Basics/Doc_Strings/index.html | 4 ++-- docs/python-guide/Python_Basics/F-Strings/index.html | 4 ++-- docs/python-guide/Python_Basics/Floats/index.html | 4 ++-- docs/python-guide/Python_Basics/Frozensets/index.html | 4 ++-- docs/python-guide/Python_Basics/Global/index.html | 4 ++-- docs/python-guide/Python_Basics/Integers/index.html | 4 ++-- docs/python-guide/Python_Basics/Lists/index.html | 4 ++-- docs/python-guide/Python_Basics/Mad_Libs_Project/index.html | 4 ++-- docs/python-guide/Python_Basics/None/index.html | 4 ++-- docs/python-guide/Python_Basics/Nonlocal/index.html | 4 ++-- docs/python-guide/Python_Basics/Operators/index.html | 4 ++-- docs/python-guide/Python_Basics/Scopes/index.html | 4 ++-- docs/python-guide/Python_Basics/Sets/index.html | 4 ++-- docs/python-guide/Python_Basics/Shortcut_Format/index.html | 4 ++-- .../Python_Basics/Simple_Adder_Project/index.html | 4 ++-- docs/python-guide/Python_Basics/Strings/index.html | 4 ++-- docs/python-guide/Python_Basics/Syntax/index.html | 4 ++-- docs/python-guide/Python_Basics/Truthy_and_Falsy/index.html | 4 ++-- docs/python-guide/Python_Basics/Tuples/index.html | 4 ++-- docs/python-guide/Python_Basics/Type_Conversion/index.html | 4 ++-- docs/python-guide/Python_Basics/Type_Hints/index.html | 4 ++-- docs/python-guide/Python_Basics/Unpacking/index.html | 4 ++-- docs/python-guide/Python_Basics/VS_Is/index.html | 4 ++-- docs/python-guide/Python_Basics/Variables/index.html | 4 ++-- docs/python-guide/Unit-Testing/Conftest/index.html | 4 ++-- docs/python-guide/Unit-Testing/Fixtures/index.html | 4 ++-- docs/python-guide/Unit-Testing/Intro/index.html | 4 ++-- docs/python-guide/Unit-Testing/Marks/index.html | 4 ++-- docs/python-guide/Unit-Testing/Parametrize/index.html | 4 ++-- docs/python-guide/Unit-Testing/TestingErrors/index.html | 4 ++-- docs/python-guide/getting-started/index.html | 4 ++-- docs/rest-api/Building-REST-API/08/index.html | 4 ++-- docs/rest-api/Building-REST-API/adding_urls/index.html | 4 ++-- docs/rest-api/Building-REST-API/building_rest_api/index.html | 4 ++-- docs/rest-api/Building-REST-API/django_rest/index.html | 4 ++-- .../Building-REST-API/expanding_using_flask/index.html | 4 ++-- docs/rest-api/Building-REST-API/fastapi/index.html | 4 ++-- .../Building-REST-API/loading_serializing_drf/index.html | 4 ++-- docs/rest-api/Building-REST-API/using_fastapi/index.html | 4 ++-- docs/rest-api/CRUD/index.html | 4 ++-- .../Designing-REST-API/designing_data_exchange/index.html | 4 ++-- .../Designing-REST-API/designing_error_responses/index.html | 4 ++-- .../rest-api/Designing-REST-API/designing_rest_api/index.html | 4 ++-- docs/rest-api/Designing-REST-API/get_post/index.html | 4 ++-- .../Designing-REST-API/interacting_with_rest/index.html | 4 ++-- docs/rest-api/Designing-REST-API/put_patch_delete/index.html | 4 ++-- .../Designing-REST-API/understanding_rest_api/index.html | 4 ++-- docs/rest-api/getting-started/index.html | 4 ++-- docs/tips-and-tricks/F-String-Tricks/index.html | 4 ++-- docs/tips-and-tricks/Keywords/index.html | 4 ++-- docs/tips-and-tricks/common-errors/index.html | 4 ++-- docs/tips-and-tricks/critical-mistakes-to-avoid/index.html | 4 ++-- docs/tips-and-tricks/decorators/index.html | 4 ++-- docs/tips-and-tricks/dont-dry/index.html | 4 ++-- docs/tips-and-tricks/dunder-methods/index.html | 4 ++-- docs/tips-and-tricks/easter-eggs/index.html | 4 ++-- docs/tips-and-tricks/granularity-cohesion/index.html | 4 ++-- docs/tips-and-tricks/itemgetter/index.html | 4 ++-- docs/tips-and-tricks/iterable-iterator/index.html | 4 ++-- docs/tips-and-tricks/linux-commands/index.html | 4 ++-- docs/tips-and-tricks/match-case/index.html | 4 ++-- docs/tips-and-tricks/methodcaller/index.html | 4 ++-- docs/tips-and-tricks/methods/index.html | 4 ++-- docs/tips-and-tricks/python-is-python3/index.html | 4 ++-- docs/tips-and-tricks/rip-gil/index.html | 4 ++-- docs/tips-and-tricks/seven-code-habbits/index.html | 4 ++-- docs/tips-and-tricks/tips-and-tricks/index.html | 4 ++-- docs/tips-and-tricks/worst-Features/index.html | 4 ++-- docs/tips-and-tricks/wtf-is-self/index.html | 4 ++-- docs/tips-and-tricks/yield/index.html | 4 ++-- index.html | 4 ++-- markdown-page/index.html | 4 ++-- 334 files changed, 666 insertions(+), 666 deletions(-) rename assets/js/{main.994a55b6.js => main.e87c1819.js} (78%) rename assets/js/{main.994a55b6.js.LICENSE.txt => main.e87c1819.js.LICENSE.txt} (100%) diff --git a/404.html b/404.html index a2bf6e7e..15d03fc9 100644 --- a/404.html +++ b/404.html @@ -6,9 +6,9 @@ Page Not Found | Python Guide - + -
Skip to main content

Page Not Found

We could not find what you were looking for.

Please contact the owner of the site that linked you to the original URL and let them know their link is broken.

+
Skip to main content

Page Not Found

We could not find what you were looking for.

Please contact the owner of the site that linked you to the original URL and let them know their link is broken.

\ No newline at end of file diff --git a/assets/js/main.994a55b6.js b/assets/js/main.e87c1819.js similarity index 78% rename from assets/js/main.994a55b6.js rename to assets/js/main.e87c1819.js index b13c6bed..833dbcd4 100644 --- a/assets/js/main.994a55b6.js +++ b/assets/js/main.e87c1819.js @@ -1,2 +1,2 @@ -/*! For license information please see main.994a55b6.js.LICENSE.txt */ -(self.webpackChunkmy_docusaurus_site=self.webpackChunkmy_docusaurus_site||[]).push([[8792],{8912:(e,t,n)=>{"use strict";n.d(t,{A:()=>p});n(6540);var a=n(3259),o=n.n(a),i=n(4054);const r={"00a4a69b":[()=>n.e(928).then(n.bind(n,3342)),"@site/docs/design-patterns/01_creational/05_builder.md",3342],"017bef9f":[()=>n.e(6669).then(n.bind(n,3416)),"@site/docs/data-analysis/02_Data_Frames/06_removing-columns-rows.md",3416],"01a85c17":[()=>Promise.all([n.e(1869),n.e(8209)]).then(n.bind(n,4941)),"@theme/BlogTagsListPage",4941],"02279664":[()=>n.e(3703).then(n.bind(n,8337)),"@site/docs/ci-cd/01_introduction/02_revolution_ci_cd/02_cdp.md",8337],"02be6242":[()=>n.e(9452).then(n.bind(n,2403)),"@site/docs/python-guide/03_Functions/07_Star_and_Slash.md",2403],"030c3c62":[()=>n.e(3917).then(n.bind(n,5214)),"@site/docs/data-analysis/07_Data-Visualization/10_Bar_Chart_Race.md",5214],"043db0b1":[()=>n.e(6875).then(n.bind(n,3673)),"@site/docs/data-analysis/08_NumPy/14_Reversing_Arrays.md",3673],"068f8030":[()=>n.e(3434).then(n.bind(n,4607)),"@site/docs/python-guide/02_Control_Flow/02_If_Else_Shorthand.md",4607],"06d8f224":[()=>n.e(6775).then(n.bind(n,1947)),"@site/docs/ci-cd/02_setting-up/01.md",1947],"09f396b9":[()=>n.e(4565).then(n.bind(n,1085)),"@site/docs/data-analysis/01_Series/01_intro.md",1085],"0b60ca86":[()=>n.e(9761).then(n.t.bind(n,5931,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-designing-rest-apis-62d.json",5931],"0d139d63":[()=>n.e(9765).then(n.bind(n,5312)),"@site/docs/data-analysis/08_NumPy/05_Reshaping.md",5312],"0d75afaf":[()=>n.e(1155).then(n.bind(n,5423)),"@site/docs/data-analysis/08_NumPy/09_Basic_Operations.md",5423],"0da3a2d9":[()=>n.e(1167).then(n.bind(n,5690)),"@site/docs/data-analysis/02_Data_Frames/03_descripe-info.md",5690],"0dab5e76":[()=>n.e(2183).then(n.t.bind(n,3043,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-series-b95.json",3043],"0de1b55f":[()=>n.e(2847).then(n.bind(n,1021)),"@site/docs/rest-api/Building-REST-API/07_fastapi.md",1021],"0e087ba8":[()=>n.e(7390).then(n.bind(n,271)),"@site/docs/python-guide/07_OOP/14_@classmethod.md",271],"0e157602":[()=>n.e(3897).then(n.bind(n,2134)),"@site/docs/data-analysis/05_Combining_Datasets/06_left_right_join.md",2134],"0edcc700":[()=>n.e(1691).then(n.bind(n,2667)),"@site/docs/data-analysis/08_NumPy/11_Matrices.md",2667],"0ef765be":[()=>n.e(6583).then(n.bind(n,5621)),"@site/docs/python-guide/08_Built_in_Functions/14_map()/README.md",5621],"0f0ba0d3":[()=>n.e(7951).then(n.bind(n,2091)),"@site/docs/design-patterns/02_structural/01_structural.md",2091],"0fcdd45c":[()=>n.e(8600).then(n.bind(n,5679)),"@site/docs/python-guide/01_Python_Basics/04_Constants.md",5679],"1064f048":[()=>n.e(3140).then(n.t.bind(n,3742,19)),"@generated/docusaurus-plugin-content-blog/default/p/python-blog-authors-ccatik-5f6.json",3742],"145e3d85":[()=>n.e(9726).then(n.bind(n,9571)),"@site/docs/python-guide/13_Multithreading/03_Daemon-Threads.md",9571],"14eb3368":[()=>Promise.all([n.e(1869),n.e(6969)]).then(n.bind(n,7981)),"@theme/DocCategoryGeneratedIndexPage",7981],"1780ca50":[()=>n.e(4944).then(n.bind(n,4378)),"@site/docs/data-analysis/06_Time_Series/11_Project.md",4378],17896441:[()=>Promise.all([n.e(1869),n.e(9392),n.e(8401)]).then(n.bind(n,6648)),"@theme/DocItem",6648],"191284a0":[()=>n.e(4655).then(n.bind(n,2394)),"@site/docs/python-guide/08_Built_in_Functions/06_globals()/README.md",2394],"19f81c0f":[()=>n.e(3837).then(n.bind(n,8760)),"@site/docs/python-guide/04_Errors/04_Raise/README.md",8760],"1b452ad4":[()=>n.e(5684).then(n.bind(n,8142)),"@site/docs/python-guide/01_Python_Basics/03_Variables.md",8142],"1be9de02":[()=>n.e(6927).then(n.bind(n,9764)),"@site/docs/tips-and-tricks/easter-eggs.md",9764],"1c5ae7d9":[()=>n.e(9776).then(n.bind(n,5402)),"@site/docs/python-guide/13_Multithreading/05_With-Lock-Semaphore.md",5402],"1d1c07cf":[()=>n.e(1452).then(n.bind(n,1395)),"@site/docs/python-guide/09_Dataclasses/06_Notes_App/README.md",1395],"1d27f193":[()=>n.e(370).then(n.bind(n,5964)),"@site/docs/design-patterns/01_creational/01_creational.md",5964],"1d2e1535":[()=>n.e(5209).then(n.bind(n,7558)),"@site/blog/2025-01-22-swa.md?truncated=true",7558],"1ddfe61b":[()=>n.e(9366).then(n.bind(n,902)),"@site/docs/python-guide/02_Control_Flow/05_Break_and_Continue.md",902],"1e26fa38":[()=>n.e(1055).then(n.bind(n,6890)),"@site/docs/python-guide/06_Lists/02_Slicing.md",6890],"1f391b9e":[()=>Promise.all([n.e(1869),n.e(9392),n.e(6061)]).then(n.bind(n,9181)),"@theme/MDXPage",9181],"207eed4d":[()=>n.e(7474).then(n.bind(n,2082)),"@site/docs/rest-api/Building-REST-API/02_expanding_using_flask.md",2082],"236be2e6":[()=>n.e(3294).then(n.t.bind(n,5771,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-functions-491.json",5771],"2476f821":[()=>n.e(5231).then(n.t.bind(n,9335,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-oop-47b.json",9335],"2522d3c7":[()=>n.e(857).then(n.bind(n,5397)),"@site/docs/data-analysis/04_Reshaping_Datasets/04_melt.md",5397],"2622d6bc":[()=>n.e(8464).then(n.bind(n,1554)),"@site/docs/data-analysis/07_Data-Visualization/07_Scatter.md",1554],"263c1a40":[()=>n.e(2527).then(n.bind(n,340)),"@site/docs/data-analysis/08_NumPy/13_Finding_Unique_Elements.md",340],"266e7ad2":[()=>n.e(6546).then(n.bind(n,2973)),"@site/docs/python-guide/01_Python_Basics/08_Integers.md",2973],"26d9c0ab":[()=>n.e(4978).then(n.bind(n,3020)),"@site/docs/python-guide/08_Built_in_Functions/03_round()/README.md",3020],"277fcbe8":[()=>n.e(4341).then(n.bind(n,2814)),"@site/docs/tips-and-tricks/5-F-String-Tricks.md",2814],"293fcfde":[()=>n.e(9177).then(n.bind(n,5050)),"@site/docs/python-guide/08_Built_in_Functions/19_dunder_methods/README.md",5050],"294b7f6a":[()=>n.e(2426).then(n.bind(n,6047)),"@site/docs/ci-cd/01_introduction/02_revolution_ci_cd/01_ci.md",6047],"2979f838":[()=>n.e(3079).then(n.bind(n,1779)),"@site/docs/python-guide/12_Multiprocessing/02_Processes.md",1779],"2a5468dc":[()=>n.e(1838).then(n.bind(n,9690)),"@site/docs/data-analysis/04_Reshaping_Datasets/07_groupby.md",9690],"2a6b03ac":[()=>n.e(175).then(n.bind(n,3291)),"@site/docs/python-guide/14_Unit-Testing/04_Marks.md",3291],"2ce245f5":[()=>n.e(897).then(n.t.bind(n,3815,19)),"@generated/docusaurus-plugin-content-blog/default/p/python-blog-tags-hello-921.json",3815],"2dda9ef5":[()=>n.e(1477).then(n.bind(n,1298)),"@site/blog/2025-01-22-swa.md",1298],"2eb0321d":[()=>n.e(2674).then(n.t.bind(n,3667,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-building-rest-apis-9c0.json",3667],"2f2fa6f1":[()=>n.e(2193).then(n.t.bind(n,7721,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-lists-691.json",7721],"2ff77cc8":[()=>n.e(2321).then(n.t.bind(n,1207,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-data-visualization-057.json",1207],"30425f75":[()=>n.e(9581).then(n.bind(n,5127)),"@site/docs/python-guide/07_OOP/07_str()_repr().md",5127],"308dd3a4":[()=>n.e(7882).then(n.bind(n,2686)),"@site/docs/python-guide/08_Built_in_Functions/11_Improved_Chat_Bot/README.md",2686],"30c3d9f2":[()=>n.e(9069).then(n.bind(n,2480)),"@site/docs/python-guide/01_Python_Basics/01_Syntax.md",2480],"31aaf742":[()=>n.e(9070).then(n.bind(n,4018)),"@site/docs/python-guide/07_OOP/03_init.md",4018],"31d1cae9":[()=>n.e(6576).then(n.bind(n,2589)),"@site/docs/data-analysis/02_Data_Frames/04_nlargest-nsmallest.md",2589],"3200b7d5":[()=>n.e(6832).then(n.bind(n,919)),"@site/docs/tips-and-tricks/39-Keywords.md",919],"32e82d59":[()=>n.e(659).then(n.bind(n,9770)),"@site/docs/ci-cd/01_introduction/01_cicd/03_ci.md",9770],"333ec80d":[()=>n.e(4040).then(n.bind(n,2438)),"@site/docs/python-guide/01_Python_Basics/12_Type_Conversion.md",2438],"33fc5bb8":[()=>Promise.all([n.e(1869),n.e(9392),n.e(4622),n.e(867)]).then(n.bind(n,4003)),"@theme/Blog/Pages/BlogAuthorsPostsPage",4003],"342f73ce":[()=>n.e(816).then(n.bind(n,3634)),"@site/docs/python-guide/04_Errors/02_Try_Except/README.md",3634],"34cbd55a":[()=>n.e(126).then(n.t.bind(n,2533,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-errors-956.json",2533],"35fb5052":[()=>n.e(5465).then(n.bind(n,481)),"@site/blog/2025-01-22-why.md",481],"3613df99":[()=>n.e(1440).then(n.bind(n,159)),"@site/docs/gui-development/01_introduction/02_gui_frameworks.md",159],"36994c47":[()=>n.e(9858).then(n.t.bind(n,5516,19)),"@generated/docusaurus-plugin-content-blog/default/__plugin.json",5516],"3750b354":[()=>n.e(2824).then(n.bind(n,2544)),"@site/docs/python-guide/02_Control_Flow/01_If_Elif_Else.md",2544],"392e7e20":[()=>n.e(6706).then(n.bind(n,9681)),"@site/docs/data-analysis/01_Series/04_handling_csv_files.md",9681],"393be207":[()=>n.e(4134).then(n.bind(n,1943)),"@site/src/pages/markdown-page.md",1943],"3cd7aa5b":[()=>n.e(5777).then(n.bind(n,5990)),"@site/docs/python-guide/03_Functions/06_Args_and_Kwargs.md",5990],"3d0f2262":[()=>n.e(6908).then(n.bind(n,5647)),"@site/docs/python-guide/05_Modules/03_if_name_main/README.md",5647],"3d383523":[()=>n.e(3650).then(n.t.bind(n,9573,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-reshaping-datasets-e32.json",9573],"3df59a35":[()=>n.e(3055).then(n.bind(n,3213)),"@site/docs/python-guide/01_Python_Basics/30_Unpacking.md",3213],"3e900806":[()=>n.e(7210).then(n.bind(n,480)),"@site/docs/data-analysis/02_Data_Frames/08_dropna.md",480],"3ebcdea2":[()=>n.e(8046).then(n.bind(n,6247)),"@site/docs/python-guide/09_Dataclasses/04_InitVar/README.md",6247],"3ec98c88":[()=>n.e(7304).then(n.bind(n,2164)),"@site/docs/data-analysis/07_Data-Visualization/08_Candlestick_Charts.md",2164],"3f2b3237":[()=>n.e(9089).then(n.bind(n,6740)),"@site/docs/data-analysis/04_Reshaping_Datasets/06_pivot-table.md",6740],"40a5a7ee":[()=>n.e(7171).then(n.bind(n,4068)),"@site/docs/gui-development/01_introduction/04_setting-up.md",4068],"40b0ebf5":[()=>n.e(6815).then(n.bind(n,6070)),"@site/docs/python-guide/15_File-Management/10_yaml.md",6070],"4234000d":[()=>n.e(5808).then(n.bind(n,8171)),"@site/docs/python-guide/06_Lists/03_Dont_Loop_Modify.md",8171],"4312c302":[()=>n.e(8817).then(n.bind(n,7054)),"@site/docs/rest-api/Building-REST-API/01_building_rest_api.md",7054],"4366146e":[()=>n.e(9208).then(n.bind(n,7991)),"@site/docs/data-analysis/07_Data-Visualization/06_Interactive_Plots.md",7991],"43fdad46":[()=>n.e(9927).then(n.bind(n,5795)),"@site/docs/tips-and-tricks/iterable-iterator.md",5795],"445d53c3":[()=>n.e(4386).then(n.bind(n,1218)),"@site/docs/python-guide/01_Python_Basics/14_Booleans.md",1218],"4499c641":[()=>n.e(2343).then(n.t.bind(n,5567,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-advanced-b18.json",5567],"4499ec13":[()=>n.e(2929).then(n.bind(n,9452)),"@site/docs/data-analysis/05_Combining_Datasets/04_outer_join.md",9452],"4591fb16":[()=>n.e(2909).then(n.bind(n,771)),"@site/docs/gui-development/00_getting-started.md",771],"475d6da7":[()=>n.e(9493).then(n.bind(n,8324)),"@site/docs/data-analysis/08_NumPy/02_Arrays.md",8324],"48e2860f":[()=>n.e(9014).then(n.bind(n,2801)),"@site/docs/data-analysis/02_Data_Frames/01_intro.md",2801],"492a8641":[()=>n.e(9334).then(n.bind(n,9236)),"@site/docs/python-guide/01_Python_Basics/07_Shortcut_Format.md",9236],"49be0ba8":[()=>n.e(5960).then(n.bind(n,2844)),"@site/docs/data-analysis/07_Data-Visualization/04_Pie_Charts.md",2844],"49fe9afd":[()=>n.e(3721).then(n.bind(n,1464)),"@site/docs/design-patterns/01_creational/02_singleton.md",1464],"4a2e78da":[()=>n.e(5513).then(n.bind(n,1507)),"@site/docs/rest-api/Building-REST-API/03_django_rest.md",1507],"4a7981ee":[()=>n.e(5785).then(n.bind(n,4862)),"@site/docs/python-guide/08_Built_in_Functions/02_enumerate()/README.md",4862],"4b77b884":[()=>n.e(9645).then(n.bind(n,9433)),"@site/docs/python-guide/13_Multithreading/01_Threads.md",9433],"4bece594":[()=>n.e(7168).then(n.bind(n,5082)),"@site/docs/ci-cd/01_introduction/01_cicd/05_cdp.md",5082],"4cb30d22":[()=>n.e(9345).then(n.bind(n,7871)),"@site/docs/python-guide/05_Modules/01_Modules/README.md",7871],"4d2986d4":[()=>n.e(8034).then(n.bind(n,4770)),"@site/docs/data-analysis/08_NumPy/10_Broadcasting.md",4770],"4da8d02e":[()=>n.e(3955).then(n.bind(n,3336)),"@site/docs/data-analysis/06_Time_Series/06_Timestap_Methods_Attributes.md",3336],"4dd92639":[()=>n.e(6422).then(n.bind(n,6997)),"@site/docs/data-analysis/01_Series/02_attributes.md",6997],"4e9edaf3":[()=>n.e(2900).then(n.bind(n,9039)),"@site/docs/python-guide/15_File-Management/11_toml.md",9039],"4f7742b9":[()=>n.e(2642).then(n.bind(n,2256)),"@site/docs/ci-cd/04_fastapi-actions/01.md",2256],"50a3b692":[()=>n.e(8801).then(n.bind(n,4469)),"@site/docs/gui-development/01_introduction/03_right_framework.md",4469],"510a290c":[()=>n.e(6604).then(n.bind(n,8207)),"@site/docs/python-guide/05_Modules/05_Libraries/README.md",8207],"51ed8f9b":[()=>n.e(9225).then(n.bind(n,7878)),"@site/docs/python-guide/14_Unit-Testing/03_Conftest.md",7878],"5269bdec":[()=>n.e(2019).then(n.bind(n,1236)),"@site/docs/python-guide/11_AsyncIO/05_Website_Status.md",1236],"52dc5d24":[()=>n.e(6192).then(n.bind(n,1598)),"@site/docs/python-guide/01_Python_Basics/17_Sets.md",1598],"533304a1":[()=>n.e(4095).then(n.bind(n,636)),"@site/docs/python-guide/05_Modules/04_Packages/code/README.md",636],"5359b4aa":[()=>n.e(1145).then(n.bind(n,3695)),"@site/docs/python-guide/02_Control_Flow/06_Loop-Else.md",3695],"53ff09af":[()=>n.e(211).then(n.bind(n,5582)),"@site/docs/python-guide/14_Unit-Testing/05_Parametrize.md",5582],"5461ab07":[()=>n.e(7913).then(n.bind(n,7039)),"@site/docs/rest-api/Designing-REST-API/06_designing_data_exchange.md",7039],"5555e077":[()=>n.e(6654).then(n.bind(n,4920)),"@site/docs/python-guide/12_Multiprocessing/06_Data-Sharing-Issue.md",4920],"555c4724":[()=>n.e(2044).then(n.bind(n,8683)),"@site/docs/ci-cd/01_introduction/01_cicd/01_introduction-github-actions.md",8683],"55781ecd":[()=>n.e(4223).then(n.bind(n,7824)),"@site/docs/data-analysis/05_Combining_Datasets/08_outer_join_minus.md",7824],56686996:[()=>n.e(3234).then(n.bind(n,7962)),"@site/docs/python-guide/07_OOP/05_Attributes_Class_and_Instance.md",7962],"579b3ab9":[()=>n.e(2189).then(n.bind(n,1855)),"@site/docs/python-guide/15_File-Management/04_Deleting_Files.md",1855],"57b180af":[()=>n.e(113).then(n.bind(n,732)),"@site/docs/data-analysis/07_Data-Visualization/05_Styles.md",732],"58b97900":[()=>n.e(8031).then(n.bind(n,4417)),"@site/docs/python-guide/10_Advanced/02_Walrus_Operator/README.md",4417],"5912db3d":[()=>n.e(1571).then(n.bind(n,5472)),"@site/docs/data-analysis/01_Series/03_methods.md",5472],"594f8c30":[()=>n.e(8665).then(n.bind(n,5337)),"@site/docs/tips-and-tricks/granularity-cohesion.md",5337],"59df60c1":[()=>n.e(8141).then(n.bind(n,9437)),"@site/docs/data-analysis/05_Combining_Datasets/09_Merging_Different_Column.md",9437],"5a5349b1":[()=>n.e(9227).then(n.bind(n,6622)),"@site/docs/python-guide/12_Multiprocessing/03_Pools-Map.md",6622],"5a7f151d":[()=>n.e(6199).then(n.t.bind(n,3499,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-fastapi-actions-153.json",3499],"5cc55060":[()=>n.e(4246).then(n.bind(n,5583)),"@site/docs/python-guide/13_Multithreading/06_Race-Conditions.md",5583],"5d00fa63":[()=>n.e(210).then(n.bind(n,2330)),"@site/docs/data-analysis/01_Series/08_accessing_elements_position.md",2330],"5d0961f8":[()=>n.e(8968).then(n.bind(n,5124)),"@site/docs/python-guide/15_File-Management/03_Writing-Creating-Files.md",5124],"5d990bfa":[()=>n.e(2231).then(n.bind(n,3067)),"@site/docs/python-guide/15_File-Management/09_Pickling.md",3067],"5e6e778b":[()=>n.e(5594).then(n.bind(n,6553)),"@site/docs/data-analysis/06_Time_Series/03_Period_PeriodIndex.md",6553],"5e8a9b70":[()=>n.e(8816).then(n.bind(n,1684)),"@site/docs/python-guide/12_Multiprocessing/01_Intro.md",1684],"5e95c892":[()=>n.e(9647).then(n.bind(n,8122)),"@theme/DocsRoot",8122],"5e9f5e1a":[()=>Promise.resolve().then(n.bind(n,4784)),"@generated/docusaurus.config",4784],"5f5f0651":[()=>n.e(4191).then(n.bind(n,9950)),"@site/docs/ci-cd/01_introduction/01_cicd/04_cd.md",9950],"6171ec9d":[()=>n.e(4535).then(n.t.bind(n,1852,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-behavioral-design-patterns-05e.json",1852],"6204e49d":[()=>n.e(7107).then(n.bind(n,1791)),"@site/docs/python-guide/03_Functions/05_Recursion.md",1791],"62167d47":[()=>n.e(3752).then(n.bind(n,3296)),"@site/docs/python-guide/01_Python_Basics/28_F-Strings.md",3296],"621db11d":[()=>Promise.all([n.e(1869),n.e(4622),n.e(4212)]).then(n.bind(n,217)),"@theme/Blog/Pages/BlogAuthorsListPage",217],62464792:[()=>n.e(735).then(n.bind(n,2924)),"@site/docs/python-guide/01_Python_Basics/15_Lists.md",2924],"62946fa7":[()=>n.e(4468).then(n.bind(n,664)),"@site/docs/python-guide/07_OOP/11_Inheritance.md",664],"629ec2bb":[()=>n.e(6970).then(n.bind(n,1482)),"@site/docs/data-analysis/02_Data_Frames/02_methods.md",1482],"62bbb2a0":[()=>n.e(7232).then(n.bind(n,9508)),"@site/docs/tips-and-tricks/10-common-errors.md",9508],"6362c7e0":[()=>n.e(5719).then(n.t.bind(n,2371,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-python-basics-4d7.json",2371],"63ba0684":[()=>n.e(6084).then(n.bind(n,6441)),"@site/docs/data-analysis/08_NumPy/12_Generating_Random_Numbers.md",6441],"66d0f264":[()=>n.e(165).then(n.t.bind(n,7109,19)),"@generated/docusaurus-plugin-content-blog/default/p/python-blog-tags-065.json",7109],"67abe04d":[()=>n.e(4988).then(n.bind(n,2357)),"@site/docs/python-guide/01_Python_Basics/18_Frozensets.md",2357],"6875c492":[()=>Promise.all([n.e(1869),n.e(9392),n.e(4622),n.e(4813)]).then(n.bind(n,6956)),"@theme/BlogTagsPostsPage",6956],"68fb21db":[()=>n.e(552).then(n.bind(n,9632)),"@site/docs/python-guide/01_Python_Basics/10_Operators.md",9632],"6d047011":[()=>n.e(3310).then(n.bind(n,5901)),"@site/docs/python-guide/08_Built_in_Functions/04_range()/README.md",5901],"6d67a33f":[()=>n.e(6611).then(n.bind(n,6470)),"@site/docs/data-analysis/04_Reshaping_Datasets/02_transpose.md",6470],"6dbed542":[()=>n.e(6837).then(n.t.bind(n,1368,19)),"@generated/docusaurus-plugin-content-blog/default/p/python-blog-authors-7ca.json",1368],"6fc57f84":[()=>n.e(9732).then(n.bind(n,7468)),"@site/docs/tips-and-tricks/methods.md",7468],"71ebce2a":[()=>n.e(989).then(n.bind(n,729)),"@site/docs/data-analysis/08_NumPy/04_Shape_and_Size.md",729],"72bbb82c":[()=>n.e(1099).then(n.bind(n,1309)),"@site/docs/python-guide/12_Multiprocessing/07_Pipes.md",1309],"72eceac8":[()=>n.e(1875).then(n.bind(n,3537)),"@site/docs/tips-and-tricks/wtf-is-self.md",3537],"740379d1":[()=>n.e(6416).then(n.bind(n,9911)),"@site/docs/python-guide/09_Dataclasses/05_@property/README.md",9911],"74f339b8":[()=>n.e(6485).then(n.bind(n,6010)),"@site/docs/python-guide/01_Python_Basics/23_Comparing_Floats.md",6010],"7789c0d7":[()=>n.e(6578).then(n.t.bind(n,7996,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-a81.json",7996],"780b2cf7":[()=>n.e(4920).then(n.bind(n,5685)),"@site/docs/python-guide/14_Unit-Testing/02_Fixtures.md",5685],"7811e216":[()=>n.e(2372).then(n.bind(n,6764)),"@site/docs/data-analysis/08_NumPy/03_Sorting_Concatenating.md",6764],"789d323c":[()=>n.e(216).then(n.t.bind(n,2147,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-data-frames-65c.json",2147],"79c4db13":[()=>n.e(3080).then(n.bind(n,9515)),"@site/docs/rest-api/Designing-REST-API/02_understanding_rest_api.md",9515],"7a695929":[()=>n.e(3249).then(n.bind(n,9043)),"@site/docs/python-guide/01_Python_Basics/13_Simple_Adder_Project.md",9043],"7bfe3df9":[()=>n.e(5630).then(n.bind(n,9459)),"@site/docs/python-guide/07_OOP/02_Classes_and_Objects.md",9459],"7e7eebeb":[()=>n.e(5899).then(n.bind(n,6568)),"@site/docs/tips-and-tricks/5-critical-mistakes-to-avoid.md",6568],"7e90e893":[()=>n.e(319).then(n.bind(n,5822)),"@site/docs/data-analysis/07_Data-Visualization/02_Bar_Plots.md",5822],"7ec4d135":[()=>n.e(4503).then(n.bind(n,3837)),"@site/docs/python-guide/09_Dataclasses/03_post_init/README.md",3837],"7f6c326a":[()=>n.e(7113).then(n.bind(n,6115)),"@site/docs/tips-and-tricks/dont-dry.md",6115],"80176b24":[()=>n.e(249).then(n.bind(n,2051)),"@site/docs/data-analysis/01_Series/06_sorting_values.md",2051],"801c5c2a":[()=>n.e(6328).then(n.bind(n,438)),"@site/docs/design-patterns/00_getting-started.md",438],"806ba571":[()=>n.e(9121).then(n.bind(n,1672)),"@site/docs/data-analysis/04_Reshaping_Datasets/05_pivot.md",1672],"814f3328":[()=>n.e(7472).then(n.t.bind(n,5513,19)),"~blog/default/blog-post-list-prop-default.json",5513],"8162aee2":[()=>n.e(8049).then(n.bind(n,7061)),"@site/docs/python-guide/10_Advanced/03_Lambda_Functions/README.md",7061],"818979f3":[()=>n.e(6994).then(n.bind(n,3711)),"@site/docs/rest-api/Building-REST-API/04_loading_serializing_drf.md",3711],"81a0c3ab":[()=>n.e(8530).then(n.t.bind(n,7983,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-structural-design-patterns-5d6.json",7983],"82ae4d28":[()=>n.e(7981).then(n.bind(n,4010)),"@site/docs/rest-api/Building-REST-API/05_adding_urls.md",4010],"837e41de":[()=>n.e(6472).then(n.bind(n,1530)),"@site/docs/ci-cd/00_getting-started.md",1530],"83e5db84":[()=>n.e(1876).then(n.t.bind(n,5089,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-multi-threading-142.json",5089],"8452f48b":[()=>n.e(4482).then(n.bind(n,5135)),"@site/docs/python-guide/07_OOP/15_@abstractmethod.md",5135],"84f46ccb":[()=>n.e(1959).then(n.bind(n,877)),"@site/docs/data-analysis/06_Time_Series/05_Accessing_Time_Attributes.md",877],"85b17cde":[()=>n.e(8258).then(n.bind(n,9350)),"@site/docs/data-analysis/08_NumPy/07_Indexing_Slicing.md",9350],"85e353e6":[()=>n.e(2935).then(n.bind(n,9535)),"@site/docs/python-guide/05_Modules/02_Importing/README.md",9535],"86e7d73b":[()=>n.e(2649).then(n.bind(n,6203)),"@site/docs/python-guide/01_Python_Basics/29_Assertions.md",6203],"876678a4":[()=>n.e(1930).then(n.bind(n,1611)),"@site/docs/python-guide/15_File-Management/06_Handling-JSON.md",1611],"888e3f85":[()=>n.e(1076).then(n.t.bind(n,9331,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-built-in-functions-133.json",9331],"8aa97a9d":[()=>n.e(1795).then(n.bind(n,7571)),"@site/docs/python-guide/10_Advanced/04_Generators/README.md",7571],"8acbafb2":[()=>n.e(660).then(n.bind(n,7835)),"@site/docs/data-analysis/08_NumPy/16_Saving_Loading_Arrays.md",7835],"8b2026ac":[()=>n.e(3331).then(n.bind(n,8968)),"@site/docs/python-guide/04_Errors/01_User_Input/README.md",8968],"8b5b43dd":[()=>n.e(1483).then(n.bind(n,3718)),"@site/docs/rest-api/Building-REST-API/06_using_fastapi.md",3718],"8b6c5ce0":[()=>n.e(9523).then(n.bind(n,2319)),"@site/docs/python-guide/15_File-Management/07_Caching-JSON.md",2319],"8cfe2489":[()=>n.e(8212).then(n.bind(n,3282)),"@site/docs/data-analysis/08_NumPy/01_Lists_vs_NumPy.md",3282],"8d6874b1":[()=>n.e(3547).then(n.t.bind(n,3405,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-file-management-6f5.json",3405],"8d6d8b61":[()=>n.e(8724).then(n.t.bind(n,592,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-setting-up-358.json",592],"8db21432":[()=>n.e(4575).then(n.bind(n,7441)),"@site/docs/python-guide/02_Control_Flow/07_Rock_Paper_Scissors.md",7441],"8ee4e10f":[()=>n.e(2369).then(n.bind(n,178)),"@site/docs/tips-and-tricks/yield.md",178],"90067a5c":[()=>n.e(4250).then(n.t.bind(n,8601,19)),"@generated/docusaurus-plugin-content-blog/default/p/python-blog-archive-f6f.json",8601],"9092f47c":[()=>n.e(8877).then(n.bind(n,7792)),"@site/docs/python-guide/03_Functions/02_Pass.md",7792],"913b297b":[()=>n.e(3782).then(n.bind(n,6304)),"@site/docs/python-guide/02_Control_Flow/04_While_Loop.md",6304],"91c7a9a3":[()=>n.e(4570).then(n.bind(n,7765)),"@site/docs/python-guide/03_Functions/01_Creating_a_Function.md",7765],"924da9a5":[()=>n.e(8902).then(n.bind(n,6205)),"@site/docs/python-guide/00_getting-started.md",6205],"92f0f0d9":[()=>n.e(8499).then(n.bind(n,8560)),"@site/docs/data-analysis/06_Time_Series/09_reindex.md",8560],"92fa72b8":[()=>n.e(3828).then(n.bind(n,7600)),"@site/docs/python-guide/01_Python_Basics/22_Truthy_and_Falsy.md",7600],"93cba1c9":[()=>n.e(3734).then(n.t.bind(n,5003,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-dataclasses-27f.json",5003],"93edebbc":[()=>n.e(488).then(n.bind(n,7942)),"@site/docs/rest-api/Designing-REST-API/04_put_patch_delete.md",7942],"94622a99":[()=>n.e(2146).then(n.t.bind(n,2753,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-time-series-1d5.json",2753],"97888c38":[()=>n.e(5713).then(n.bind(n,9356)),"@site/docs/data-analysis/03_String_Operators/02_startswith-endswith.md",9356],"9852a806":[()=>n.e(2664).then(n.bind(n,190)),"@site/docs/python-guide/01_Python_Basics/31_VS_Is.md",190],"98d1ce75":[()=>n.e(4245).then(n.bind(n,2908)),"@site/docs/python-guide/01_Python_Basics/24_Scopes.md",2908],"996e16ac":[()=>n.e(6079).then(n.bind(n,6633)),"@site/docs/data-analysis/01_Series/07_counting_values.md",6633],"9a1cf803":[()=>n.e(788).then(n.bind(n,3539)),"@site/docs/data-analysis/06_Time_Series/08_loc_iloc_DatetimeIndex.md",3539],"9ac61ab1":[()=>n.e(2275).then(n.bind(n,5615)),"@site/docs/python-guide/01_Python_Basics/26_Nonlocal.md",5615],"9b7a5f45":[()=>n.e(8714).then(n.bind(n,3704)),"@site/docs/python-guide/08_Built_in_Functions/10_isinstance()/README.md",3704],"9c2f15da":[()=>n.e(5848).then(n.bind(n,2993)),"@site/docs/python-guide/14_Unit-Testing/01_Intro.md",2993],"9dbba695":[()=>n.e(5155).then(n.bind(n,6933)),"@site/docs/python-guide/15_File-Management/08_Glob.md",6933],"9dcd38ca":[()=>n.e(4108).then(n.t.bind(n,1215,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-multiprocessing-d90.json",1215],"9dd7c8b4":[()=>n.e(9020).then(n.bind(n,8502)),"@site/docs/python-guide/01_Python_Basics/27_Doc_Strings.md",8502],"9e4087bc":[()=>n.e(2711).then(n.bind(n,4750)),"@theme/BlogArchivePage",4750],"9f19cdfb":[()=>n.e(6421).then(n.bind(n,6828)),"@site/docs/python-guide/13_Multithreading/04_Semaphores.md",6828],"9f1ccea8":[()=>n.e(6505).then(n.bind(n,4497)),"@site/docs/data-analysis/08_NumPy/08_Creating_Arrays.md",4497],a08c090c:[()=>n.e(925).then(n.bind(n,8265)),"@site/docs/python-guide/08_Built_in_Functions/15_sorted()/README.md",8265],a0acb491:[()=>n.e(3728).then(n.bind(n,4603)),"@site/docs/python-guide/04_Errors/03_Else_Finally/README.md",4603],a18aec92:[()=>n.e(513).then(n.bind(n,2846)),"@site/docs/data-analysis/05_Combining_Datasets/05_inner_join.md",2846],a2ad7e19:[()=>n.e(179).then(n.bind(n,1199)),"@site/docs/python-guide/04_Errors/05_Unknown_Errors/README.md",1199],a352be79:[()=>n.e(861).then(n.bind(n,5259)),"@site/docs/python-guide/15_File-Management/01_File-Handling.md",5259],a3d57dda:[()=>n.e(566).then(n.bind(n,2389)),"@site/docs/python-guide/08_Built_in_Functions/18_zip()/README.md",2389],a432c62c:[()=>n.e(6869).then(n.bind(n,6400)),"@site/docs/tips-and-tricks/rip-gil.md",6400],a473d1ab:[()=>n.e(8466).then(n.bind(n,3403)),"@site/docs/rest-api/Designing-REST-API/05_designing_rest_api.md",3403],a4f0fafb:[()=>n.e(1517).then(n.bind(n,3413)),"@site/docs/python-guide/15_File-Management/05_JSON.md",3413],a55fb7e1:[()=>n.e(2567).then(n.bind(n,142)),"@site/docs/data-analysis/06_Time_Series/02_date_range().md",142],a574756a:[()=>n.e(2955).then(n.t.bind(n,2266,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-numpy-308.json",2266],a6aa9e1f:[()=>Promise.all([n.e(1869),n.e(9392),n.e(4622),n.e(7643)]).then(n.bind(n,5631)),"@theme/BlogListPage",5631],a7456010:[()=>n.e(1235).then(n.t.bind(n,8552,19)),"@generated/docusaurus-plugin-content-pages/default/__plugin.json",8552],a7bd4aaa:[()=>n.e(7098).then(n.bind(n,7419)),"@theme/DocVersionRoot",7419],a7d3ada0:[()=>n.e(1744).then(n.bind(n,7849)),"@site/docs/rest-api/CRUD.md",7849],a94703ab:[()=>Promise.all([n.e(1869),n.e(9048)]).then(n.bind(n,1841)),"@theme/DocRoot",1841],a9a6ff67:[()=>n.e(4125).then(n.bind(n,5551)),"@site/docs/python-guide/08_Built_in_Functions/17_exec()/README.md",5551],aa4345da:[()=>n.e(3406).then(n.bind(n,1347)),"@site/docs/data-analysis/06_Time_Series/04_Timedelta_TimedeltaIndex.md",1347],aa6ffcca:[()=>n.e(192).then(n.bind(n,3398)),"@site/docs/data-analysis/05_Combining_Datasets/02_concat().md",3398],ab448cd4:[()=>n.e(9709).then(n.t.bind(n,4585,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-enhancing-actions-eba.json",4585],ab47cacc:[()=>n.e(8455).then(n.t.bind(n,1147,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-asyncio-1ce.json",1147],ab8be871:[()=>n.e(5363).then(n.bind(n,7404)),"@site/docs/ci-cd/01_introduction/01_cicd/07_key_components.md",7404],aba21aa0:[()=>n.e(5742).then(n.t.bind(n,7093,19)),"@generated/docusaurus-plugin-content-docs/default/__plugin.json",7093],ac14fcce:[()=>n.e(7709).then(n.bind(n,7030)),"@site/docs/python-guide/01_Python_Basics/25_Global.md",7030],acecf23e:[()=>n.e(1903).then(n.t.bind(n,1912,19)),"~blog/default/blogMetadata-default.json",1912],af03e5ca:[()=>n.e(4323).then(n.bind(n,6914)),"@site/docs/python-guide/08_Built_in_Functions/08_all()/README.md",6914],af0efa6c:[()=>n.e(9721).then(n.bind(n,121)),"@site/docs/tips-and-tricks/seven-code-habbits.md",121],afd94412:[()=>n.e(3966).then(n.bind(n,1174)),"@site/docs/data-analysis/08_NumPy/15_Reshaping_Flattening.md",1174],b0685d08:[()=>n.e(5640).then(n.bind(n,152)),"@site/docs/data-analysis/06_Time_Series/10_resample.md",152],b3a4baaf:[()=>n.e(1151).then(n.bind(n,2994)),"@site/docs/tips-and-tricks/match-case.md",2994],b4a018b2:[()=>n.e(1321).then(n.bind(n,2041)),"@site/docs/ci-cd/01_introduction/01_cicd/06_practices.md",2041],b4a66da9:[()=>n.e(4208).then(n.t.bind(n,9149,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-unit-testing-702.json",9149],b4c39990:[()=>n.e(3014).then(n.bind(n,5032)),"@site/docs/gui-development/01_introduction/01_gui_development.md",5032],b56c59c7:[()=>n.e(3145).then(n.bind(n,901)),"@site/docs/python-guide/01_Python_Basics/21_Mad_Libs_Project.md",901],b56cf611:[()=>n.e(4471).then(n.bind(n,6757)),"@site/docs/python-guide/07_OOP/13_@staticmethod.md",6757],b5e55e9a:[()=>n.e(8126).then(n.bind(n,8116)),"@site/docs/python-guide/08_Built_in_Functions/13_filter()/README.md",8116],b618cf9c:[()=>n.e(6679).then(n.bind(n,8101)),"@site/docs/data-analysis/02_Data_Frames/05_set_index-reset_index.md",8101],b650f3af:[()=>n.e(8836).then(n.bind(n,8396)),"@site/docs/data-analysis/03_String_Operators/03_index-columns.md",8396],b666f56a:[()=>n.e(6971).then(n.bind(n,7743)),"@site/docs/tips-and-tricks/itemgetter.md",7743],b6ef7ae4:[()=>n.e(725).then(n.bind(n,8987)),"@site/docs/tips-and-tricks/decorators.md",8987],b7280f47:[()=>n.e(2201).then(n.bind(n,8793)),"@site/docs/python-guide/12_Multiprocessing/04_Pools-Starmap.md",8793],b77d8450:[()=>n.e(8500).then(n.bind(n,7226)),"@site/docs/python-guide/08_Built_in_Functions/05_slice()/README.md",7226],b7deb2ea:[()=>n.e(5005).then(n.bind(n,3036)),"@site/docs/python-guide/06_Lists/00_getting-started.md",3036],bb454858:[()=>n.e(1009).then(n.bind(n,7125)),"@site/docs/python-guide/01_Python_Basics/19_Dictionaries.md",7125],bc257119:[()=>n.e(1199).then(n.bind(n,5831)),"@site/docs/tips-and-tricks/20-tips-and-tricks.md",5831],bd241fa9:[()=>n.e(8068).then(n.t.bind(n,5044,19)),"@generated/docusaurus-plugin-content-blog/default/p/python-blog-c50.json",5044],bd999cea:[()=>n.e(1977).then(n.bind(n,3776)),"@site/docs/ci-cd/01_introduction/01_cicd/02_cicd.md",3776],bd9da85c:[()=>n.e(9445).then(n.bind(n,5469)),"@site/docs/data-analysis/07_Data-Visualization/03_Histograms.md",5469],be373491:[()=>n.e(3749).then(n.bind(n,1467)),"@site/docs/python-guide/01_Python_Basics/02_Comments.md",1467],be8d3379:[()=>n.e(7318).then(n.bind(n,2580)),"@site/docs/rest-api/Building-REST-API/08.md",2580],bf286b78:[()=>n.e(9856).then(n.bind(n,4516)),"@site/docs/design-patterns/01_creational/03_factory_method.md",4516],c0e9904c:[()=>n.e(5020).then(n.bind(n,9884)),"@site/docs/00_getting-started.md",9884],c13d5729:[()=>n.e(7425).then(n.bind(n,6337)),"@site/docs/python-guide/11_AsyncIO/01_Intro.md",6337],c1e6e7cd:[()=>n.e(7239).then(n.bind(n,2496)),"@site/docs/python-guide/08_Built_in_Functions/01_print()/README.md",2496],c3a6df41:[()=>n.e(5575).then(n.bind(n,3690)),"@site/docs/python-guide/08_Built_in_Functions/09_any()/README.md",3690],c4f5d8e4:[()=>Promise.all([n.e(1869),n.e(2634)]).then(n.bind(n,5)),"@site/src/pages/index.js",5],c5b485d2:[()=>n.e(8522).then(n.bind(n,8352)),"@site/docs/data-analysis/03_String_Operators/01_str.md",8352],c5c2dcde:[()=>n.e(462).then(n.bind(n,2755)),"@site/blog/2025-01-22-why.md?truncated=true",2755],c5fc0896:[()=>n.e(4195).then(n.bind(n,380)),"@site/docs/python-guide/11_AsyncIO/02_Getting_Started.md",380],c6132cfa:[()=>n.e(7622).then(n.bind(n,197)),"@site/docs/python-guide/08_Built_in_Functions/12_callable()/README.md",197],c66eba8b:[()=>n.e(6354).then(n.bind(n,1163)),"@site/docs/python-guide/12_Multiprocessing/09_Lock-Semaphores.md",1163],c6e8a128:[()=>n.e(2171).then(n.bind(n,2620)),"@site/docs/data-analysis/04_Reshaping_Datasets/01_introduction.md",2620],c8011c9d:[()=>n.e(7028).then(n.bind(n,7512)),"@site/docs/python-guide/04_Errors/06_Letters_Only/README.md",7512],c944b66c:[()=>n.e(7538).then(n.t.bind(n,4076,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-how-cicd-revolutionized-software-development-2ae.json",4076],c95127d5:[()=>n.e(153).then(n.bind(n,1084)),"@site/docs/tips-and-tricks/50-linux-commands.md",1084],c96fe195:[()=>n.e(2959).then(n.bind(n,1893)),"@site/docs/data-analysis/01_Series/09_accessing_elements_index.md",1893],ca3ad580:[()=>n.e(9702).then(n.bind(n,4311)),"@site/docs/python-guide/12_Multiprocessing/05_Pools-Multiple-Functions.md",4311],ccc49370:[()=>Promise.all([n.e(1869),n.e(9392),n.e(4622),n.e(8011)]).then(n.bind(n,7191)),"@theme/BlogPostPage",7191],cec50c49:[()=>n.e(1281).then(n.t.bind(n,7839,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-combining-datasets-784.json",7839],ceebdb4d:[()=>n.e(8252).then(n.bind(n,3384)),"@site/docs/python-guide/02_Control_Flow/03_For_Loop.md",3384],cf307268:[()=>n.e(5368).then(n.bind(n,2342)),"@site/docs/python-guide/15_File-Management/02_Reading-Files.md",2342],d04368bf:[()=>n.e(7894).then(n.bind(n,5672)),"@site/docs/data-analysis/06_Time_Series/07_Time_Series.md",5672],d0532420:[()=>n.e(9256).then(n.bind(n,2985)),"@site/docs/python-guide/07_OOP/06_Dunder_Methods.md",2985],d08a13c4:[()=>n.e(3743).then(n.bind(n,3890)),"@site/docs/rest-api/Designing-REST-API/07_designing_error_responses.md",3890],d27d873d:[()=>n.e(5014).then(n.bind(n,7939)),"@site/docs/python-guide/09_Dataclasses/01_@dataclass/README.md",7939],d5a770b9:[()=>n.e(7740).then(n.bind(n,7085)),"@site/docs/python-guide/08_Built_in_Functions/07_locals()/README.md",7085],d707847b:[()=>n.e(5940).then(n.bind(n,3946)),"@site/docs/tips-and-tricks/methodcaller.md",3946],d76f2668:[()=>n.e(9954).then(n.t.bind(n,8298,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-creational-design-patterns-fcf.json",8298],d91c278b:[()=>n.e(4549).then(n.bind(n,6975)),"@site/docs/design-patterns/01_creational/06_prototype.md",6975],d92ce060:[()=>n.e(8018).then(n.t.bind(n,1169,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-introduction-087.json",1169],d986f9a5:[()=>n.e(8497).then(n.bind(n,6451)),"@site/docs/python-guide/07_OOP/04_self.md",6451],dd2920d7:[()=>n.e(1449).then(n.bind(n,4269)),"@site/docs/python-guide/12_Multiprocessing/08_Queues.md",4269],dd2a7a4b:[()=>n.e(2462).then(n.bind(n,320)),"@site/docs/tips-and-tricks/5-worst-Features.md",320],dd3cd1de:[()=>n.e(8037).then(n.t.bind(n,3522,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-cicd-c46.json",3522],ddd5109d:[()=>n.e(4130).then(n.bind(n,4536)),"@site/docs/python-guide/01_Python_Basics/20_None.md",4536],de3f77b7:[()=>n.e(4122).then(n.bind(n,4900)),"@site/docs/python-guide/13_Multithreading/02_Locks.md",4900],dfd8392f:[()=>n.e(3421).then(n.bind(n,4026)),"@site/docs/data-analysis/05_Combining_Datasets/07_left_right_minus.md",4026],e0dc80b4:[()=>n.e(6001).then(n.t.bind(n,2604,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-string-operators-deb.json",2604],e182db80:[()=>n.e(6925).then(n.bind(n,1634)),"@site/docs/design-patterns/03_behavioral/01_behavioral.md",1634],e19a070d:[()=>n.e(2676).then(n.bind(n,8285)),"@site/docs/rest-api/00_getting-started.md",8285],e1deef93:[()=>n.e(9725).then(n.bind(n,6067)),"@site/docs/python-guide/07_OOP/08__eq__().md",6067],e2977010:[()=>n.e(5568).then(n.bind(n,3940)),"@site/docs/data-analysis/05_Combining_Datasets/01_Intro.md",3940],e3aefa38:[()=>n.e(991).then(n.bind(n,7884)),"@site/docs/data-analysis/02_Data_Frames/09_fillna.md",7884],e43813f1:[()=>n.e(4966).then(n.bind(n,6157)),"@site/docs/python-guide/07_OOP/09_Methods_Functions.md",6157],e4aa94b3:[()=>n.e(644).then(n.bind(n,6951)),"@site/docs/python-guide/07_OOP/16_Name_Mangling.md",6951],e5095d98:[()=>n.e(9876).then(n.bind(n,7079)),"@site/docs/data-analysis/04_Reshaping_Datasets/03_stack-unstack.md",7079],e535263e:[()=>n.e(6953).then(n.bind(n,513)),"@site/docs/python-guide/07_OOP/01_OOP.md",513],e56f6ccc:[()=>n.e(5946).then(n.bind(n,4009)),"@site/docs/rest-api/Designing-REST-API/01_interacting_with_rest.md",4009],e5bab151:[()=>n.e(3003).then(n.t.bind(n,5628,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-control-flow-f66.json",5628],e688c8d1:[()=>n.e(9326).then(n.bind(n,2189)),"@site/docs/python-guide/01_Python_Basics/11_Strings.md",2189],e716e54f:[()=>n.e(2526).then(n.bind(n,1427)),"@site/docs/data-analysis/01_Series/05_head-and-tail.md",1427],e72316f9:[()=>n.e(1160).then(n.bind(n,4959)),"@site/docs/data-analysis/06_Time_Series/01_Timestamp_DatetimeIndex.md",4959],e784a889:[()=>n.e(8009).then(n.bind(n,1018)),"@site/docs/tips-and-tricks/python-is-python3.md",1018],e7dc1672:[()=>n.e(3354).then(n.bind(n,6408)),"@site/docs/python-guide/05_Modules/06_Website_Status/README.md",6408],e91cae89:[()=>n.e(9822).then(n.t.bind(n,2180,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-modules-977.json",2180],e9abefc4:[()=>n.e(2784).then(n.bind(n,5010)),"@site/docs/design-patterns/01_creational/04_abstract_factory.md",5010],e9e27faf:[()=>n.e(2246).then(n.bind(n,6350)),"@site/docs/data-analysis/00_getting-started.md",6350],eb52afdc:[()=>n.e(3433).then(n.bind(n,4708)),"@site/docs/tips-and-tricks/dunder-methods.md",4708],ec17db3e:[()=>n.e(3781).then(n.bind(n,1758)),"@site/docs/python-guide/01_Python_Basics/09_Floats.md",1758],ec380046:[()=>n.e(1700).then(n.bind(n,2633)),"@site/docs/rest-api/Designing-REST-API/03_get_post.md",2633],ed0b4b51:[()=>n.e(7246).then(n.bind(n,1357)),"@site/docs/data-analysis/02_Data_Frames/07_adding-columns.md",1357],ee076e89:[()=>n.e(9716).then(n.bind(n,2311)),"@site/docs/data-analysis/08_NumPy/06_Add_New_Axis.md",2311],ee32e7ca:[()=>n.e(4958).then(n.bind(n,522)),"@site/docs/data-analysis/07_Data-Visualization/01_Line_Plots.md",522],ef6e47f0:[()=>n.e(4494).then(n.bind(n,2349)),"@site/docs/python-guide/01_Python_Basics/16_Tuples.md",2349],ef91d723:[()=>n.e(1146).then(n.bind(n,7051)),"@site/docs/python-guide/11_AsyncIO/04_Gather.md",7051],efd9c176:[()=>n.e(4176).then(n.bind(n,363)),"@site/docs/python-guide/01_Python_Basics/06_Type_Hints.md",363],f13b2968:[()=>n.e(8546).then(n.bind(n,1152)),"@site/docs/python-guide/06_Lists/01_List_Comprehensions.md",1152],f14c1d17:[()=>n.e(1660).then(n.bind(n,2615)),"@site/docs/python-guide/03_Functions/03_Parameters_and_Arguments.md",2615],f336a35c:[()=>n.e(8597).then(n.bind(n,6681)),"@site/docs/python-guide/11_AsyncIO/03_Tasks.md",6681],f51fa222:[()=>n.e(6400).then(n.bind(n,477)),"@site/docs/python-guide/08_Built_in_Functions/16_eval()/README.md",477],f552d686:[()=>n.e(3853).then(n.bind(n,5988)),"@site/docs/python-guide/03_Functions/04_Return_Functions.md",5988],f631f71f:[()=>n.e(5563).then(n.bind(n,2560)),"@site/docs/python-guide/06_Lists/04_Grocery_List.md",2560],f69e91c2:[()=>n.e(9088).then(n.bind(n,1579)),"@site/docs/python-guide/09_Dataclasses/02_Fields/README.md",1579],f6a804ea:[()=>n.e(7110).then(n.bind(n,1644)),"@site/docs/data-analysis/07_Data-Visualization/09_Color_by_Value.md",1644],f8aca2ea:[()=>n.e(5318).then(n.bind(n,1359)),"@site/docs/ci-cd/03_enhancing-actions/01.md",1359],f96f815e:[()=>n.e(5067).then(n.bind(n,2542)),"@site/docs/python-guide/14_Unit-Testing/06_TestingErrors.md",2542],f9c8ab04:[()=>n.e(5584).then(n.bind(n,4512)),"@site/docs/python-guide/01_Python_Basics/05_Data_Types.md",4512],f9e7c98a:[()=>n.e(6633).then(n.bind(n,3147)),"@site/docs/python-guide/07_OOP/12_super().md",3147],fa44d2a0:[()=>n.e(9369).then(n.bind(n,3246)),"@site/docs/data-analysis/05_Combining_Datasets/03_merge().md",3246],fd743662:[()=>n.e(463).then(n.bind(n,2205)),"@site/docs/python-guide/10_Advanced/01_Mypy/README.md",2205],ff59fe86:[()=>n.e(1540).then(n.t.bind(n,7405,19)),"@generated/docusaurus-plugin-content-blog/default/p/python-blog-tags-docusaurus-b39.json",7405]};var s=n(4848);function c(e){let{error:t,retry:n,pastDelay:a}=e;return t?(0,s.jsxs)("div",{style:{textAlign:"center",color:"#fff",backgroundColor:"#fa383e",borderColor:"#fa383e",borderStyle:"solid",borderRadius:"0.25rem",borderWidth:"1px",boxSizing:"border-box",display:"block",padding:"1rem",flex:"0 0 50%",marginLeft:"25%",marginRight:"25%",marginTop:"5rem",maxWidth:"50%",width:"100%"},children:[(0,s.jsx)("p",{children:String(t)}),(0,s.jsx)("div",{children:(0,s.jsx)("button",{type:"button",onClick:n,children:"Retry"})})]}):a?(0,s.jsx)("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:(0,s.jsx)("svg",{id:"loader",style:{width:128,height:110,position:"absolute",top:"calc(100vh - 64%)"},viewBox:"0 0 45 45",xmlns:"http://www.w3.org/2000/svg",stroke:"#61dafb",children:(0,s.jsxs)("g",{fill:"none",fillRule:"evenodd",transform:"translate(1 1)",strokeWidth:"2",children:[(0,s.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,s.jsx)("animate",{attributeName:"r",begin:"1.5s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-opacity",begin:"1.5s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-width",begin:"1.5s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,s.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,s.jsx)("animate",{attributeName:"r",begin:"3s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-opacity",begin:"3s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-width",begin:"3s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,s.jsx)("circle",{cx:"22",cy:"22",r:"8",children:(0,s.jsx)("animate",{attributeName:"r",begin:"0s",dur:"1.5s",values:"6;1;2;3;4;5;6",calcMode:"linear",repeatCount:"indefinite"})})]})})}):null}var l=n(3722),d=n(5313);function u(e,t){if("*"===e)return o()({loading:c,loader:()=>n.e(3042).then(n.bind(n,3042)),modules:["@theme/NotFound"],webpack:()=>[3042],render(e,t){const n=e.default;return(0,s.jsx)(d.W,{value:{plugin:{name:"native",id:"default"}},children:(0,s.jsx)(n,{...t})})}});const a=i[`${e}-${t}`],u={},p=[],h=[],y=(0,l.A)(a);return Object.entries(y).forEach((e=>{let[t,n]=e;const a=r[n];a&&(u[t]=a[0],p.push(a[1]),h.push(a[2]))})),o().Map({loading:c,loader:u,modules:p,webpack:()=>h,render(t,n){const o=JSON.parse(JSON.stringify(a));Object.entries(t).forEach((t=>{let[n,a]=t;const i=a.default;if(!i)throw new Error(`The page component at ${e} doesn't have a default export. This makes it impossible to render anything. Consider default-exporting a React component.`);"object"!=typeof i&&"function"!=typeof i||Object.keys(a).filter((e=>"default"!==e)).forEach((e=>{i[e]=a[e]}));let r=o;const s=n.split(".");s.slice(0,-1).forEach((e=>{r=r[e]})),r[s[s.length-1]]=i}));const i=o.__comp;delete o.__comp;const r=o.__context;delete o.__context;const c=o.__props;return delete o.__props,(0,s.jsx)(d.W,{value:r,children:(0,s.jsx)(i,{...o,...c,...n})})}})}const p=[{path:"/Python/blog",component:u("/Python/blog","3c2"),exact:!0},{path:"/Python/blog/archive",component:u("/Python/blog/archive","9d7"),exact:!0},{path:"/Python/blog/authors",component:u("/Python/blog/authors","2ee"),exact:!0},{path:"/Python/blog/authors/ccatik",component:u("/Python/blog/authors/ccatik","f40"),exact:!0},{path:"/Python/blog/importance-of-software-architecture",component:u("/Python/blog/importance-of-software-architecture","6d5"),exact:!0},{path:"/Python/blog/tags",component:u("/Python/blog/tags","585"),exact:!0},{path:"/Python/blog/tags/docusaurus",component:u("/Python/blog/tags/docusaurus","2c0"),exact:!0},{path:"/Python/blog/tags/hello",component:u("/Python/blog/tags/hello","f2f"),exact:!0},{path:"/Python/blog/why-python-guide-over-gpt",component:u("/Python/blog/why-python-guide-over-gpt","e44"),exact:!0},{path:"/Python/markdown-page",component:u("/Python/markdown-page","301"),exact:!0},{path:"/Python/docs",component:u("/Python/docs","aba"),routes:[{path:"/Python/docs",component:u("/Python/docs","c01"),routes:[{path:"/Python/docs",component:u("/Python/docs","d9a"),routes:[{path:"/Python/docs/category/advanced",component:u("/Python/docs/category/advanced","4cc"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/asyncio",component:u("/Python/docs/category/asyncio","95b"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/behavioral-design-patterns",component:u("/Python/docs/category/behavioral-design-patterns","9f0"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/category/building-rest-apis",component:u("/Python/docs/category/building-rest-apis","854"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/category/built-in-functions",component:u("/Python/docs/category/built-in-functions","430"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/cicd",component:u("/Python/docs/category/cicd","2e6"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/category/combining-datasets",component:u("/Python/docs/category/combining-datasets","cb4"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/category/control-flow",component:u("/Python/docs/category/control-flow","7c9"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/creational-design-patterns",component:u("/Python/docs/category/creational-design-patterns","6d2"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/category/data-frames",component:u("/Python/docs/category/data-frames","953"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/category/data-visualization",component:u("/Python/docs/category/data-visualization","69a"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/category/dataclasses",component:u("/Python/docs/category/dataclasses","a3b"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/designing-rest-apis",component:u("/Python/docs/category/designing-rest-apis","b50"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/category/enhancing-actions",component:u("/Python/docs/category/enhancing-actions","21d"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/category/errors",component:u("/Python/docs/category/errors","93d"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/fastapi-actions",component:u("/Python/docs/category/fastapi-actions","37e"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/category/file-management",component:u("/Python/docs/category/file-management","c3f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/functions",component:u("/Python/docs/category/functions","483"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/how-cicd-revolutionized-software-development",component:u("/Python/docs/category/how-cicd-revolutionized-software-development","a79"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/category/introduction",component:u("/Python/docs/category/introduction","23e"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/category/lists",component:u("/Python/docs/category/lists","e60"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/modules",component:u("/Python/docs/category/modules","89b"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/multi-threading",component:u("/Python/docs/category/multi-threading","223"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/multiprocessing",component:u("/Python/docs/category/multiprocessing","552"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/numpy",component:u("/Python/docs/category/numpy","4f6"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/category/oop",component:u("/Python/docs/category/oop","538"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/python-basics",component:u("/Python/docs/category/python-basics","dec"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/reshaping-datasets",component:u("/Python/docs/category/reshaping-datasets","df4"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/category/series",component:u("/Python/docs/category/series","021"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/category/setting-up",component:u("/Python/docs/category/setting-up","767"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/category/string-operators",component:u("/Python/docs/category/string-operators","656"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/category/structural-design-patterns",component:u("/Python/docs/category/structural-design-patterns","198"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/category/time-series",component:u("/Python/docs/category/time-series","818"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/category/unit-testing",component:u("/Python/docs/category/unit-testing","d53"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/ci-cd/enhancing-actions/01",component:u("/Python/docs/ci-cd/enhancing-actions/01","4a1"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/fastapi-actions/01",component:u("/Python/docs/ci-cd/fastapi-actions/01","e94"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/getting-started",component:u("/Python/docs/ci-cd/getting-started","256"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/cicd/cd",component:u("/Python/docs/ci-cd/introduction/cicd/cd","92b"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/cicd/cdp",component:u("/Python/docs/ci-cd/introduction/cicd/cdp","99a"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/cicd/ci",component:u("/Python/docs/ci-cd/introduction/cicd/ci","f75"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/cicd/cicd",component:u("/Python/docs/ci-cd/introduction/cicd/cicd","7e2"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/cicd/introduction-github-actions",component:u("/Python/docs/ci-cd/introduction/cicd/introduction-github-actions","47d"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/cicd/key_components",component:u("/Python/docs/ci-cd/introduction/cicd/key_components","a08"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/cicd/practices",component:u("/Python/docs/ci-cd/introduction/cicd/practices","ab3"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/revolution_ci_cd/cdp",component:u("/Python/docs/ci-cd/introduction/revolution_ci_cd/cdp","4fa"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/revolution_ci_cd/ci",component:u("/Python/docs/ci-cd/introduction/revolution_ci_cd/ci","95b"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/setting-up/01",component:u("/Python/docs/ci-cd/setting-up/01","2ca"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/concat()",component:u("/Python/docs/data-analysis/Combining_Datasets/concat()","cd9"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/inner_join",component:u("/Python/docs/data-analysis/Combining_Datasets/inner_join","8f7"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/Intro",component:u("/Python/docs/data-analysis/Combining_Datasets/Intro","f6e"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/left_right_join",component:u("/Python/docs/data-analysis/Combining_Datasets/left_right_join","8dd"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/left_right_minus",component:u("/Python/docs/data-analysis/Combining_Datasets/left_right_minus","03c"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/merge()",component:u("/Python/docs/data-analysis/Combining_Datasets/merge()","322"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/Merging_Different_Column",component:u("/Python/docs/data-analysis/Combining_Datasets/Merging_Different_Column","42d"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/outer_join",component:u("/Python/docs/data-analysis/Combining_Datasets/outer_join","f6f"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/outer_join_minus",component:u("/Python/docs/data-analysis/Combining_Datasets/outer_join_minus","ceb"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/adding-columns",component:u("/Python/docs/data-analysis/Data_Frames/adding-columns","34b"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/descripe-info",component:u("/Python/docs/data-analysis/Data_Frames/descripe-info","4a7"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/dropna",component:u("/Python/docs/data-analysis/Data_Frames/dropna","1c1"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/fillna",component:u("/Python/docs/data-analysis/Data_Frames/fillna","950"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/intro",component:u("/Python/docs/data-analysis/Data_Frames/intro","009"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/methods",component:u("/Python/docs/data-analysis/Data_Frames/methods","563"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/nlargest-nsmallest",component:u("/Python/docs/data-analysis/Data_Frames/nlargest-nsmallest","b58"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/removing-columns-rows",component:u("/Python/docs/data-analysis/Data_Frames/removing-columns-rows","372"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/set_index-reset_index",component:u("/Python/docs/data-analysis/Data_Frames/set_index-reset_index","147"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Bar_Chart_Race",component:u("/Python/docs/data-analysis/Data-Visualization/Bar_Chart_Race","c9e"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Bar_Plots",component:u("/Python/docs/data-analysis/Data-Visualization/Bar_Plots","6ce"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Candlestick_Charts",component:u("/Python/docs/data-analysis/Data-Visualization/Candlestick_Charts","c09"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Color_by_Value",component:u("/Python/docs/data-analysis/Data-Visualization/Color_by_Value","f93"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Histograms",component:u("/Python/docs/data-analysis/Data-Visualization/Histograms","dd8"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Interactive_Plots",component:u("/Python/docs/data-analysis/Data-Visualization/Interactive_Plots","df7"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Line_Plots",component:u("/Python/docs/data-analysis/Data-Visualization/Line_Plots","41d"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Pie_Charts",component:u("/Python/docs/data-analysis/Data-Visualization/Pie_Charts","a2b"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Scatter",component:u("/Python/docs/data-analysis/Data-Visualization/Scatter","75c"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Styles",component:u("/Python/docs/data-analysis/Data-Visualization/Styles","732"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/getting-started",component:u("/Python/docs/data-analysis/getting-started","2e1"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Add_New_Axis",component:u("/Python/docs/data-analysis/NumPy/Add_New_Axis","481"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Arrays",component:u("/Python/docs/data-analysis/NumPy/Arrays","561"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Basic_Operations",component:u("/Python/docs/data-analysis/NumPy/Basic_Operations","37f"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Broadcasting",component:u("/Python/docs/data-analysis/NumPy/Broadcasting","6df"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Creating_Arrays",component:u("/Python/docs/data-analysis/NumPy/Creating_Arrays","de9"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Finding_Unique_Elements",component:u("/Python/docs/data-analysis/NumPy/Finding_Unique_Elements","35f"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Generating_Random_Numbers",component:u("/Python/docs/data-analysis/NumPy/Generating_Random_Numbers","e15"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Indexing_Slicing",component:u("/Python/docs/data-analysis/NumPy/Indexing_Slicing","8ff"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Lists_vs_NumPy",component:u("/Python/docs/data-analysis/NumPy/Lists_vs_NumPy","f84"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Matrices",component:u("/Python/docs/data-analysis/NumPy/Matrices","c16"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Reshaping",component:u("/Python/docs/data-analysis/NumPy/Reshaping","56a"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Reshaping_Flattening",component:u("/Python/docs/data-analysis/NumPy/Reshaping_Flattening","98f"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Reversing_Arrays",component:u("/Python/docs/data-analysis/NumPy/Reversing_Arrays","c84"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Saving_Loading_Arrays",component:u("/Python/docs/data-analysis/NumPy/Saving_Loading_Arrays","a66"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Shape_and_Size",component:u("/Python/docs/data-analysis/NumPy/Shape_and_Size","231"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Sorting_Concatenating",component:u("/Python/docs/data-analysis/NumPy/Sorting_Concatenating","851"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Reshaping_Datasets/groupby",component:u("/Python/docs/data-analysis/Reshaping_Datasets/groupby","be2"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Reshaping_Datasets/introduction",component:u("/Python/docs/data-analysis/Reshaping_Datasets/introduction","483"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Reshaping_Datasets/melt",component:u("/Python/docs/data-analysis/Reshaping_Datasets/melt","c0d"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Reshaping_Datasets/pivot",component:u("/Python/docs/data-analysis/Reshaping_Datasets/pivot","7de"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Reshaping_Datasets/pivot-table",component:u("/Python/docs/data-analysis/Reshaping_Datasets/pivot-table","9e8"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Reshaping_Datasets/stack-unstack",component:u("/Python/docs/data-analysis/Reshaping_Datasets/stack-unstack","668"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Reshaping_Datasets/transpose",component:u("/Python/docs/data-analysis/Reshaping_Datasets/transpose","970"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/accessing_elements_index",component:u("/Python/docs/data-analysis/Series/accessing_elements_index","b1d"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/accessing_elements_position",component:u("/Python/docs/data-analysis/Series/accessing_elements_position","2bc"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/attributes",component:u("/Python/docs/data-analysis/Series/attributes","0cd"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/counting_values",component:u("/Python/docs/data-analysis/Series/counting_values","6c7"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/handling_csv_files",component:u("/Python/docs/data-analysis/Series/handling_csv_files","a01"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/head-and-tail",component:u("/Python/docs/data-analysis/Series/head-and-tail","7bd"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/intro",component:u("/Python/docs/data-analysis/Series/intro","8c8"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/methods",component:u("/Python/docs/data-analysis/Series/methods","c8a"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/sorting_values",component:u("/Python/docs/data-analysis/Series/sorting_values","647"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/String_Operators/index-columns",component:u("/Python/docs/data-analysis/String_Operators/index-columns","08d"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/String_Operators/startswith-endswith",component:u("/Python/docs/data-analysis/String_Operators/startswith-endswith","fc3"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/String_Operators/str",component:u("/Python/docs/data-analysis/String_Operators/str","409"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/Accessing_Time_Attributes",component:u("/Python/docs/data-analysis/Time_Series/Accessing_Time_Attributes","824"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/date_range()",component:u("/Python/docs/data-analysis/Time_Series/date_range()","2d7"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/loc_iloc_DatetimeIndex",component:u("/Python/docs/data-analysis/Time_Series/loc_iloc_DatetimeIndex","7a1"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/Period_PeriodIndex",component:u("/Python/docs/data-analysis/Time_Series/Period_PeriodIndex","9de"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/Project",component:u("/Python/docs/data-analysis/Time_Series/Project","4a3"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/reindex",component:u("/Python/docs/data-analysis/Time_Series/reindex","11c"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/resample",component:u("/Python/docs/data-analysis/Time_Series/resample","d4d"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/Time_Series",component:u("/Python/docs/data-analysis/Time_Series/Time_Series","24f"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/Timedelta_TimedeltaIndex",component:u("/Python/docs/data-analysis/Time_Series/Timedelta_TimedeltaIndex","51b"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/Timestamp_DatetimeIndex",component:u("/Python/docs/data-analysis/Time_Series/Timestamp_DatetimeIndex","901"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/Timestap_Methods_Attributes",component:u("/Python/docs/data-analysis/Time_Series/Timestap_Methods_Attributes","3ce"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/design-patterns/behavioral/behavioral",component:u("/Python/docs/design-patterns/behavioral/behavioral","6cb"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/design-patterns/creational/",component:u("/Python/docs/design-patterns/creational/","220"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/design-patterns/creational/abstract_factory",component:u("/Python/docs/design-patterns/creational/abstract_factory","088"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/design-patterns/creational/builder",component:u("/Python/docs/design-patterns/creational/builder","526"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/design-patterns/creational/factory_method",component:u("/Python/docs/design-patterns/creational/factory_method","92e"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/design-patterns/creational/prototype",component:u("/Python/docs/design-patterns/creational/prototype","148"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/design-patterns/creational/singleton",component:u("/Python/docs/design-patterns/creational/singleton","491"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/design-patterns/getting-started",component:u("/Python/docs/design-patterns/getting-started","113"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/design-patterns/structural/structural",component:u("/Python/docs/design-patterns/structural/structural","5e8"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/getting-started",component:u("/Python/docs/getting-started","e05"),exact:!0},{path:"/Python/docs/gui-development/getting-started",component:u("/Python/docs/gui-development/getting-started","3dd"),exact:!0,sidebar:"guiSidebar"},{path:"/Python/docs/gui-development/introduction/gui_development",component:u("/Python/docs/gui-development/introduction/gui_development","ac2"),exact:!0,sidebar:"guiSidebar"},{path:"/Python/docs/gui-development/introduction/gui_frameworks",component:u("/Python/docs/gui-development/introduction/gui_frameworks","80f"),exact:!0,sidebar:"guiSidebar"},{path:"/Python/docs/gui-development/introduction/right_framework",component:u("/Python/docs/gui-development/introduction/right_framework","6f7"),exact:!0,sidebar:"guiSidebar"},{path:"/Python/docs/gui-development/introduction/setting-up",component:u("/Python/docs/gui-development/introduction/setting-up","5be"),exact:!0,sidebar:"guiSidebar"},{path:"/Python/docs/python-guide/Advanced/Generators/",component:u("/Python/docs/python-guide/Advanced/Generators/","566"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Advanced/Lambda_Functions/",component:u("/Python/docs/python-guide/Advanced/Lambda_Functions/","797"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Advanced/Mypy/",component:u("/Python/docs/python-guide/Advanced/Mypy/","d01"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Advanced/Walrus_Operator/",component:u("/Python/docs/python-guide/Advanced/Walrus_Operator/","924"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/AsyncIO/Gather",component:u("/Python/docs/python-guide/AsyncIO/Gather","303"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/AsyncIO/Getting_Started",component:u("/Python/docs/python-guide/AsyncIO/Getting_Started","d23"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/AsyncIO/Intro",component:u("/Python/docs/python-guide/AsyncIO/Intro","15f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/AsyncIO/Tasks",component:u("/Python/docs/python-guide/AsyncIO/Tasks","70c"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/AsyncIO/Website_Status",component:u("/Python/docs/python-guide/AsyncIO/Website_Status","5b8"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/all()/",component:u("/Python/docs/python-guide/Built_in_Functions/all()/","7df"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/any()/",component:u("/Python/docs/python-guide/Built_in_Functions/any()/","20c"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/callable()/",component:u("/Python/docs/python-guide/Built_in_Functions/callable()/","b3f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/dunder_methods/",component:u("/Python/docs/python-guide/Built_in_Functions/dunder_methods/","d62"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/enumerate()/",component:u("/Python/docs/python-guide/Built_in_Functions/enumerate()/","19a"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/eval()/",component:u("/Python/docs/python-guide/Built_in_Functions/eval()/","dfb"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/exec()/",component:u("/Python/docs/python-guide/Built_in_Functions/exec()/","3ef"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/filter()/",component:u("/Python/docs/python-guide/Built_in_Functions/filter()/","31d"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/globals()/",component:u("/Python/docs/python-guide/Built_in_Functions/globals()/","6dd"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/Improved_Chat_Bot/",component:u("/Python/docs/python-guide/Built_in_Functions/Improved_Chat_Bot/","009"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/isinstance()/",component:u("/Python/docs/python-guide/Built_in_Functions/isinstance()/","796"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/locals()/",component:u("/Python/docs/python-guide/Built_in_Functions/locals()/","b03"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/map()/",component:u("/Python/docs/python-guide/Built_in_Functions/map()/","88a"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/print()/",component:u("/Python/docs/python-guide/Built_in_Functions/print()/","54d"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/range()/",component:u("/Python/docs/python-guide/Built_in_Functions/range()/","edc"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/round()/",component:u("/Python/docs/python-guide/Built_in_Functions/round()/","f70"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/slice()/",component:u("/Python/docs/python-guide/Built_in_Functions/slice()/","ae4"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/sorted()/",component:u("/Python/docs/python-guide/Built_in_Functions/sorted()/","8c0"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/zip()/",component:u("/Python/docs/python-guide/Built_in_Functions/zip()/","d46"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Control_Flow/Break_and_Continue",component:u("/Python/docs/python-guide/Control_Flow/Break_and_Continue","286"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Control_Flow/For_Loop",component:u("/Python/docs/python-guide/Control_Flow/For_Loop","7a4"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Control_Flow/If_Elif_Else",component:u("/Python/docs/python-guide/Control_Flow/If_Elif_Else","3c6"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Control_Flow/If_Else_Shorthand",component:u("/Python/docs/python-guide/Control_Flow/If_Else_Shorthand","ae8"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Control_Flow/Loop-Else",component:u("/Python/docs/python-guide/Control_Flow/Loop-Else","0c1"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Control_Flow/Rock_Paper_Scissors",component:u("/Python/docs/python-guide/Control_Flow/Rock_Paper_Scissors","074"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Control_Flow/While_Loop",component:u("/Python/docs/python-guide/Control_Flow/While_Loop","d6c"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Dataclasses/@dataclass/",component:u("/Python/docs/python-guide/Dataclasses/@dataclass/","3f3"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Dataclasses/@property/",component:u("/Python/docs/python-guide/Dataclasses/@property/","4eb"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Dataclasses/Fields/",component:u("/Python/docs/python-guide/Dataclasses/Fields/","e90"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Dataclasses/InitVar/",component:u("/Python/docs/python-guide/Dataclasses/InitVar/","5e3"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Dataclasses/Notes_App/",component:u("/Python/docs/python-guide/Dataclasses/Notes_App/","509"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Dataclasses/post_init/",component:u("/Python/docs/python-guide/Dataclasses/post_init/","050"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Errors/Else_Finally/",component:u("/Python/docs/python-guide/Errors/Else_Finally/","d90"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Errors/Letters_Only/",component:u("/Python/docs/python-guide/Errors/Letters_Only/","0b8"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Errors/Raise/",component:u("/Python/docs/python-guide/Errors/Raise/","3e6"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Errors/Try_Except/",component:u("/Python/docs/python-guide/Errors/Try_Except/","958"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Errors/Unknown_Errors/",component:u("/Python/docs/python-guide/Errors/Unknown_Errors/","3d6"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Errors/User_Input/",component:u("/Python/docs/python-guide/Errors/User_Input/","c1d"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/Caching-JSON",component:u("/Python/docs/python-guide/File-Management/Caching-JSON","7b0"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/Deleting_Files",component:u("/Python/docs/python-guide/File-Management/Deleting_Files","9f7"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/File-Handling",component:u("/Python/docs/python-guide/File-Management/File-Handling","5fa"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/Glob",component:u("/Python/docs/python-guide/File-Management/Glob","480"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/Handling-JSON",component:u("/Python/docs/python-guide/File-Management/Handling-JSON","ba3"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/JSON",component:u("/Python/docs/python-guide/File-Management/JSON","3b7"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/Pickling",component:u("/Python/docs/python-guide/File-Management/Pickling","96a"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/Reading-Files",component:u("/Python/docs/python-guide/File-Management/Reading-Files","35f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/toml",component:u("/Python/docs/python-guide/File-Management/toml","c66"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/Writing-Creating-Files",component:u("/Python/docs/python-guide/File-Management/Writing-Creating-Files","ddd"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/yaml",component:u("/Python/docs/python-guide/File-Management/yaml","c0f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Functions/Args_and_Kwargs",component:u("/Python/docs/python-guide/Functions/Args_and_Kwargs","5df"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Functions/Creating_a_Function",component:u("/Python/docs/python-guide/Functions/Creating_a_Function","91b"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Functions/Parameters_and_Arguments",component:u("/Python/docs/python-guide/Functions/Parameters_and_Arguments","9ea"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Functions/Pass",component:u("/Python/docs/python-guide/Functions/Pass","849"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Functions/Recursion",component:u("/Python/docs/python-guide/Functions/Recursion","faa"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Functions/Return_Functions",component:u("/Python/docs/python-guide/Functions/Return_Functions","589"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Functions/Star_and_Slash",component:u("/Python/docs/python-guide/Functions/Star_and_Slash","591"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/getting-started",component:u("/Python/docs/python-guide/getting-started","50c"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Lists/Dont_Loop_Modify",component:u("/Python/docs/python-guide/Lists/Dont_Loop_Modify","cfd"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Lists/getting-started",component:u("/Python/docs/python-guide/Lists/getting-started","9db"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Lists/Grocery_List",component:u("/Python/docs/python-guide/Lists/Grocery_List","ddd"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Lists/List_Comprehensions",component:u("/Python/docs/python-guide/Lists/List_Comprehensions","398"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Lists/Slicing",component:u("/Python/docs/python-guide/Lists/Slicing","192"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Modules/if_name_main/",component:u("/Python/docs/python-guide/Modules/if_name_main/","65c"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Modules/Importing/",component:u("/Python/docs/python-guide/Modules/Importing/","18c"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Modules/Libraries/",component:u("/Python/docs/python-guide/Modules/Libraries/","e4f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Modules/Modules/",component:u("/Python/docs/python-guide/Modules/Modules/","c97"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Modules/Packages/code/",component:u("/Python/docs/python-guide/Modules/Packages/code/","7d0"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Modules/Website_Status/",component:u("/Python/docs/python-guide/Modules/Website_Status/","c1f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Data-Sharing-Issue",component:u("/Python/docs/python-guide/Multiprocessing/Data-Sharing-Issue","6ef"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Intro",component:u("/Python/docs/python-guide/Multiprocessing/Intro","56c"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Lock-Semaphores",component:u("/Python/docs/python-guide/Multiprocessing/Lock-Semaphores","d15"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Pipes",component:u("/Python/docs/python-guide/Multiprocessing/Pipes","dc8"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Pools-Map",component:u("/Python/docs/python-guide/Multiprocessing/Pools-Map","4bc"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Pools-Multiple-Functions",component:u("/Python/docs/python-guide/Multiprocessing/Pools-Multiple-Functions","3ab"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Pools-Starmap",component:u("/Python/docs/python-guide/Multiprocessing/Pools-Starmap","682"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Processes",component:u("/Python/docs/python-guide/Multiprocessing/Processes","5fe"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Queues",component:u("/Python/docs/python-guide/Multiprocessing/Queues","85f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multithreading/Daemon-Threads",component:u("/Python/docs/python-guide/Multithreading/Daemon-Threads","fb5"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multithreading/Locks",component:u("/Python/docs/python-guide/Multithreading/Locks","d00"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multithreading/Race-Conditions",component:u("/Python/docs/python-guide/Multithreading/Race-Conditions","235"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multithreading/Semaphores",component:u("/Python/docs/python-guide/Multithreading/Semaphores","dae"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multithreading/Threads",component:u("/Python/docs/python-guide/Multithreading/Threads","96b"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multithreading/With-Lock-Semaphore",component:u("/Python/docs/python-guide/Multithreading/With-Lock-Semaphore","686"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/@abstractmethod",component:u("/Python/docs/python-guide/OOP/@abstractmethod","72f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/@classmethod",component:u("/Python/docs/python-guide/OOP/@classmethod","d45"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/@staticmethod",component:u("/Python/docs/python-guide/OOP/@staticmethod","171"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/Attributes_Class_and_Instance",component:u("/Python/docs/python-guide/OOP/Attributes_Class_and_Instance","ad2"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/Classes_and_Objects",component:u("/Python/docs/python-guide/OOP/Classes_and_Objects","115"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/Dunder_Methods",component:u("/Python/docs/python-guide/OOP/Dunder_Methods","e50"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/eq__()",component:u("/Python/docs/python-guide/OOP/eq__()","62e"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/Inheritance",component:u("/Python/docs/python-guide/OOP/Inheritance","acb"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/init",component:u("/Python/docs/python-guide/OOP/init","6a3"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/Methods_Functions",component:u("/Python/docs/python-guide/OOP/Methods_Functions","e12"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/Name_Mangling",component:u("/Python/docs/python-guide/OOP/Name_Mangling","8f3"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/OOP",component:u("/Python/docs/python-guide/OOP/OOP","f96"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/self",component:u("/Python/docs/python-guide/OOP/self","10d"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/str()_repr()",component:u("/Python/docs/python-guide/OOP/str()_repr()","a07"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/super()",component:u("/Python/docs/python-guide/OOP/super()","e8a"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Assertions",component:u("/Python/docs/python-guide/Python_Basics/Assertions","204"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Booleans",component:u("/Python/docs/python-guide/Python_Basics/Booleans","87c"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Comments",component:u("/Python/docs/python-guide/Python_Basics/Comments","fd2"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Comparing_Floats",component:u("/Python/docs/python-guide/Python_Basics/Comparing_Floats","4b0"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Constants",component:u("/Python/docs/python-guide/Python_Basics/Constants","bdb"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Data_Types",component:u("/Python/docs/python-guide/Python_Basics/Data_Types","fba"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Dictionaries",component:u("/Python/docs/python-guide/Python_Basics/Dictionaries","671"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Doc_Strings",component:u("/Python/docs/python-guide/Python_Basics/Doc_Strings","1ac"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/F-Strings",component:u("/Python/docs/python-guide/Python_Basics/F-Strings","10b"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Floats",component:u("/Python/docs/python-guide/Python_Basics/Floats","c39"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Frozensets",component:u("/Python/docs/python-guide/Python_Basics/Frozensets","8cd"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Global",component:u("/Python/docs/python-guide/Python_Basics/Global","041"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Integers",component:u("/Python/docs/python-guide/Python_Basics/Integers","852"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Lists",component:u("/Python/docs/python-guide/Python_Basics/Lists","f40"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Mad_Libs_Project",component:u("/Python/docs/python-guide/Python_Basics/Mad_Libs_Project","e43"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/None",component:u("/Python/docs/python-guide/Python_Basics/None","52e"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Nonlocal",component:u("/Python/docs/python-guide/Python_Basics/Nonlocal","729"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Operators",component:u("/Python/docs/python-guide/Python_Basics/Operators","084"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Scopes",component:u("/Python/docs/python-guide/Python_Basics/Scopes","162"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Sets",component:u("/Python/docs/python-guide/Python_Basics/Sets","dd3"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Shortcut_Format",component:u("/Python/docs/python-guide/Python_Basics/Shortcut_Format","be7"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Simple_Adder_Project",component:u("/Python/docs/python-guide/Python_Basics/Simple_Adder_Project","9f6"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Strings",component:u("/Python/docs/python-guide/Python_Basics/Strings","a0b"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Syntax",component:u("/Python/docs/python-guide/Python_Basics/Syntax","487"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Truthy_and_Falsy",component:u("/Python/docs/python-guide/Python_Basics/Truthy_and_Falsy","b1b"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Tuples",component:u("/Python/docs/python-guide/Python_Basics/Tuples","713"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Type_Conversion",component:u("/Python/docs/python-guide/Python_Basics/Type_Conversion","fae"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Type_Hints",component:u("/Python/docs/python-guide/Python_Basics/Type_Hints","f11"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Unpacking",component:u("/Python/docs/python-guide/Python_Basics/Unpacking","5c2"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Variables",component:u("/Python/docs/python-guide/Python_Basics/Variables","285"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/VS_Is",component:u("/Python/docs/python-guide/Python_Basics/VS_Is","198"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Unit-Testing/Conftest",component:u("/Python/docs/python-guide/Unit-Testing/Conftest","279"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Unit-Testing/Fixtures",component:u("/Python/docs/python-guide/Unit-Testing/Fixtures","9dd"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Unit-Testing/Intro",component:u("/Python/docs/python-guide/Unit-Testing/Intro","de9"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Unit-Testing/Marks",component:u("/Python/docs/python-guide/Unit-Testing/Marks","853"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Unit-Testing/Parametrize",component:u("/Python/docs/python-guide/Unit-Testing/Parametrize","489"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Unit-Testing/TestingErrors",component:u("/Python/docs/python-guide/Unit-Testing/TestingErrors","dc6"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/rest-api/Building-REST-API/08",component:u("/Python/docs/rest-api/Building-REST-API/08","e61"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Building-REST-API/adding_urls",component:u("/Python/docs/rest-api/Building-REST-API/adding_urls","7b8"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Building-REST-API/building_rest_api",component:u("/Python/docs/rest-api/Building-REST-API/building_rest_api","8f6"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Building-REST-API/django_rest",component:u("/Python/docs/rest-api/Building-REST-API/django_rest","533"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Building-REST-API/expanding_using_flask",component:u("/Python/docs/rest-api/Building-REST-API/expanding_using_flask","9a5"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Building-REST-API/fastapi",component:u("/Python/docs/rest-api/Building-REST-API/fastapi","eda"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Building-REST-API/loading_serializing_drf",component:u("/Python/docs/rest-api/Building-REST-API/loading_serializing_drf","17b"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Building-REST-API/using_fastapi",component:u("/Python/docs/rest-api/Building-REST-API/using_fastapi","0ff"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/CRUD",component:u("/Python/docs/rest-api/CRUD","1ef"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Designing-REST-API/designing_data_exchange",component:u("/Python/docs/rest-api/Designing-REST-API/designing_data_exchange","b12"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Designing-REST-API/designing_error_responses",component:u("/Python/docs/rest-api/Designing-REST-API/designing_error_responses","ccc"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Designing-REST-API/designing_rest_api",component:u("/Python/docs/rest-api/Designing-REST-API/designing_rest_api","635"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Designing-REST-API/get_post",component:u("/Python/docs/rest-api/Designing-REST-API/get_post","a70"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Designing-REST-API/interacting_with_rest",component:u("/Python/docs/rest-api/Designing-REST-API/interacting_with_rest","b7d"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Designing-REST-API/put_patch_delete",component:u("/Python/docs/rest-api/Designing-REST-API/put_patch_delete","57e"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Designing-REST-API/understanding_rest_api",component:u("/Python/docs/rest-api/Designing-REST-API/understanding_rest_api","782"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/getting-started",component:u("/Python/docs/rest-api/getting-started","064"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/tips-and-tricks/common-errors",component:u("/Python/docs/tips-and-tricks/common-errors","36d"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/critical-mistakes-to-avoid",component:u("/Python/docs/tips-and-tricks/critical-mistakes-to-avoid","16d"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/decorators",component:u("/Python/docs/tips-and-tricks/decorators","e51"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/dont-dry",component:u("/Python/docs/tips-and-tricks/dont-dry","3de"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/dunder-methods",component:u("/Python/docs/tips-and-tricks/dunder-methods","cb6"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/easter-eggs",component:u("/Python/docs/tips-and-tricks/easter-eggs","a73"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/F-String-Tricks",component:u("/Python/docs/tips-and-tricks/F-String-Tricks","961"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/granularity-cohesion",component:u("/Python/docs/tips-and-tricks/granularity-cohesion","d1d"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/itemgetter",component:u("/Python/docs/tips-and-tricks/itemgetter","884"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/iterable-iterator",component:u("/Python/docs/tips-and-tricks/iterable-iterator","9a2"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/Keywords",component:u("/Python/docs/tips-and-tricks/Keywords","90a"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/linux-commands",component:u("/Python/docs/tips-and-tricks/linux-commands","dfc"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/match-case",component:u("/Python/docs/tips-and-tricks/match-case","e41"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/methodcaller",component:u("/Python/docs/tips-and-tricks/methodcaller","1ea"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/methods",component:u("/Python/docs/tips-and-tricks/methods","d35"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/python-is-python3",component:u("/Python/docs/tips-and-tricks/python-is-python3","443"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/rip-gil",component:u("/Python/docs/tips-and-tricks/rip-gil","442"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/seven-code-habbits",component:u("/Python/docs/tips-and-tricks/seven-code-habbits","82d"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/tips-and-tricks",component:u("/Python/docs/tips-and-tricks/tips-and-tricks","291"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/worst-Features",component:u("/Python/docs/tips-and-tricks/worst-Features","fd9"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/wtf-is-self",component:u("/Python/docs/tips-and-tricks/wtf-is-self","0a7"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/yield",component:u("/Python/docs/tips-and-tricks/yield","937"),exact:!0,sidebar:"tipsAndTricksSidebar"}]}]}]},{path:"/Python/",component:u("/Python/","6cd"),exact:!0},{path:"*",component:u("*")}]},4974:(e,t,n)=>{"use strict";n.d(t,{o:()=>i,x:()=>r});var a=n(6540),o=n(4848);const i=a.createContext(!1);function r(e){let{children:t}=e;const[n,r]=(0,a.useState)(!1);return(0,a.useEffect)((()=>{r(!0)}),[]),(0,o.jsx)(i.Provider,{value:n,children:t})}},5161:(e,t,n)=>{"use strict";var a=n(6540),o=n(5338),i=n(545),r=n(4625),s=n(4784),c=n(1934);const l=[n(7378),n(7264),n(8867),n(2094)];var d=n(8912),u=n(6347),p=n(2831),h=n(4848);function y(e){let{children:t}=e;return(0,h.jsx)(h.Fragment,{children:t})}var g=n(7143),f=n(797),m=n(9030),b=n(3115),_=n(1082),v=n(7976),P=n(7788);var S=n(99),w=n(7220);function k(){const{i18n:{currentLocale:e,defaultLocale:t,localeConfigs:n}}=(0,f.A)(),a=(0,v.o)(),o=n[e].htmlLang,i=e=>e.replace("-","_");return(0,h.jsxs)(g.A,{children:[Object.entries(n).map((e=>{let[t,{htmlLang:n}]=e;return(0,h.jsx)("link",{rel:"alternate",href:a.createUrl({locale:t,fullyQualified:!0}),hrefLang:n},t)})),(0,h.jsx)("link",{rel:"alternate",href:a.createUrl({locale:t,fullyQualified:!0}),hrefLang:"x-default"}),(0,h.jsx)("meta",{property:"og:locale",content:i(o)}),Object.values(n).filter((e=>o!==e.htmlLang)).map((e=>(0,h.jsx)("meta",{property:"og:locale:alternate",content:i(e.htmlLang)},`meta-og-${e.htmlLang}`)))]})}function x(e){let{permalink:t}=e;const{siteConfig:{url:n}}=(0,f.A)(),a=function(){const{siteConfig:{url:e,baseUrl:t,trailingSlash:n}}=(0,f.A)(),{pathname:a}=(0,u.zy)();return e+(0,S.Ks)((0,m.Ay)(a),{trailingSlash:n,baseUrl:t})}(),o=t?`${n}${t}`:a;return(0,h.jsxs)(g.A,{children:[(0,h.jsx)("meta",{property:"og:url",content:o}),(0,h.jsx)("link",{rel:"canonical",href:o})]})}function A(){const{i18n:{currentLocale:e}}=(0,f.A)(),{metadata:t,image:n}=(0,b.p)();return(0,h.jsxs)(h.Fragment,{children:[(0,h.jsxs)(g.A,{children:[(0,h.jsx)("meta",{name:"twitter:card",content:"summary_large_image"}),(0,h.jsx)("body",{className:P.w})]}),n&&(0,h.jsx)(_.be,{image:n}),(0,h.jsx)(x,{}),(0,h.jsx)(k,{}),(0,h.jsx)(w.A,{tag:"default",locale:e}),(0,h.jsx)(g.A,{children:t.map(((e,t)=>(0,h.jsx)("meta",{...e},t)))})]})}const E=new Map;var T=n(4974),C=n(6193),D=n(372);function O(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a{const a=t.default?.[e]??t[e];return a?.(...n)}));return()=>o.forEach((e=>e?.()))}const F=function(e){let{children:t,location:n,previousLocation:a}=e;return(0,D.A)((()=>{a!==n&&(!function(e){let{location:t,previousLocation:n}=e;if(!n)return;const a=t.pathname===n.pathname,o=t.hash===n.hash,i=t.search===n.search;if(a&&o&&!i)return;const{hash:r}=t;if(r){const e=decodeURIComponent(r.substring(1)),t=document.getElementById(e);t?.scrollIntoView()}else window.scrollTo(0,0)}({location:n,previousLocation:a}),O("onRouteDidUpdate",{previousLocation:a,location:n}))}),[a,n]),t};function R(e){const t=Array.from(new Set([e,decodeURI(e)])).map((e=>(0,p.u)(d.A,e))).flat();return Promise.all(t.map((e=>e.route.component.preload?.())))}class N extends a.Component{previousLocation;routeUpdateCleanupCb;constructor(e){super(e),this.previousLocation=null,this.routeUpdateCleanupCb=c.A.canUseDOM?O("onRouteUpdate",{previousLocation:null,location:this.props.location}):()=>{},this.state={nextRouteHasLoaded:!0}}shouldComponentUpdate(e,t){if(e.location===this.props.location)return t.nextRouteHasLoaded;const n=e.location;return this.previousLocation=this.props.location,this.setState({nextRouteHasLoaded:!1}),this.routeUpdateCleanupCb=O("onRouteUpdate",{previousLocation:this.previousLocation,location:n}),R(n.pathname).then((()=>{this.routeUpdateCleanupCb(),this.setState({nextRouteHasLoaded:!0})})).catch((e=>{console.warn(e),window.location.reload()})),!1}render(){const{children:e,location:t}=this.props;return(0,h.jsx)(F,{previousLocation:this.previousLocation,location:t,children:(0,h.jsx)(u.qh,{location:t,render:()=>e})})}}const j=N,M="__docusaurus-base-url-issue-banner-suggestion-container";function L(e){return`\ndocument.addEventListener('DOMContentLoaded', function maybeInsertBanner() {\n var shouldInsert = typeof window['docusaurus'] === 'undefined';\n shouldInsert && insertBanner();\n});\n\nfunction insertBanner() {\n var bannerContainer = document.createElement('div');\n bannerContainer.id = '__docusaurus-base-url-issue-banner-container';\n var bannerHtml = ${JSON.stringify(function(e){return`\n
\n

Your Docusaurus site did not load properly.

\n

A very common reason is a wrong site baseUrl configuration.

\n

Current configured baseUrl = ${e} ${"/"===e?" (default value)":""}

\n

We suggest trying baseUrl =

\n
\n`}(e)).replace(/{let{route:t}=e;return!0===t.exact})))return E.set(e.pathname,e.pathname),e;const t=e.pathname.trim().replace(/(?:\/index)?\.html$/,"")||"/";return E.set(e.pathname,t),{...e,pathname:t}}((0,u.zy)());return(0,h.jsx)(j,{location:e,children:V})}function G(){return(0,h.jsx)(U.A,{children:(0,h.jsx)(C.l,{children:(0,h.jsxs)(T.x,{children:[(0,h.jsxs)(y,{children:[(0,h.jsx)(z,{}),(0,h.jsx)(A,{}),(0,h.jsx)(B,{}),(0,h.jsx)(H,{})]}),(0,h.jsx)(q,{})]})})})}var W=n(4054);const K=function(e){try{return document.createElement("link").relList.supports(e)}catch{return!1}}("prefetch")?function(e){return new Promise(((t,n)=>{if("undefined"==typeof document)return void n();const a=document.createElement("link");a.setAttribute("rel","prefetch"),a.setAttribute("href",e),a.onload=()=>t(),a.onerror=()=>n();const o=document.getElementsByTagName("head")[0]??document.getElementsByName("script")[0]?.parentNode;o?.appendChild(a)}))}:function(e){return new Promise(((t,n)=>{const a=new XMLHttpRequest;a.open("GET",e,!0),a.withCredentials=!0,a.onload=()=>{200===a.status?t():n()},a.send(null)}))};var Q=n(3722);const Y=new Set,X=new Set,J=()=>navigator.connection?.effectiveType.includes("2g")||navigator.connection?.saveData,Z={prefetch:e=>{if(!(e=>!J()&&!X.has(e)&&!Y.has(e))(e))return!1;Y.add(e);const t=(0,p.u)(d.A,e).flatMap((e=>{return t=e.route.path,Object.entries(W).filter((e=>{let[n]=e;return n.replace(/-[^-]+$/,"")===t})).flatMap((e=>{let[,t]=e;return Object.values((0,Q.A)(t))}));var t}));return Promise.all(t.map((e=>{const t=n.gca(e);return t&&!t.includes("undefined")?K(t).catch((()=>{})):Promise.resolve()})))},preload:e=>!!(e=>!J()&&!X.has(e))(e)&&(X.add(e),R(e))},ee=Object.freeze(Z);function te(e){let{children:t}=e;return"hash"===s.default.future.experimental_router?(0,h.jsx)(r.I9,{children:t}):(0,h.jsx)(r.Kd,{children:t})}const ne=Boolean(!0);if(c.A.canUseDOM){window.docusaurus=ee;const e=document.getElementById("__docusaurus"),t=(0,h.jsx)(i.vd,{children:(0,h.jsx)(te,{children:(0,h.jsx)(G,{})})}),n=(e,t)=>{console.error("Docusaurus React Root onRecoverableError:",e,t)},r=()=>{if(window.docusaurusRoot)window.docusaurusRoot.render(t);else if(ne)window.docusaurusRoot=o.hydrateRoot(e,t,{onRecoverableError:n});else{const a=o.createRoot(e,{onRecoverableError:n});a.render(t),window.docusaurusRoot=a}};R(window.location.pathname).then((()=>{(0,a.startTransition)(r)}))}},6193:(e,t,n)=>{"use strict";n.d(t,{o:()=>u,l:()=>p});var a=n(6540),o=n(4784);const i=JSON.parse('{"docusaurus-plugin-content-docs":{"default":{"path":"/Python/docs","versions":[{"name":"current","label":"Next","isLast":true,"path":"/Python/docs","mainDocId":"python-guide/getting-started","docs":[{"id":"ci-cd/enhancing-actions/01","path":"/Python/docs/ci-cd/enhancing-actions/01","sidebar":"cicdSidebar"},{"id":"ci-cd/fastapi-actions/01","path":"/Python/docs/ci-cd/fastapi-actions/01","sidebar":"cicdSidebar"},{"id":"ci-cd/getting-started","path":"/Python/docs/ci-cd/getting-started","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/cicd/cd","path":"/Python/docs/ci-cd/introduction/cicd/cd","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/cicd/cdp","path":"/Python/docs/ci-cd/introduction/cicd/cdp","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/cicd/ci","path":"/Python/docs/ci-cd/introduction/cicd/ci","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/cicd/cicd","path":"/Python/docs/ci-cd/introduction/cicd/cicd","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/cicd/introduction-github-actions","path":"/Python/docs/ci-cd/introduction/cicd/introduction-github-actions","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/cicd/key_components","path":"/Python/docs/ci-cd/introduction/cicd/key_components","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/cicd/practices","path":"/Python/docs/ci-cd/introduction/cicd/practices","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/revolution_ci_cd/cdp","path":"/Python/docs/ci-cd/introduction/revolution_ci_cd/cdp","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/revolution_ci_cd/ci","path":"/Python/docs/ci-cd/introduction/revolution_ci_cd/ci","sidebar":"cicdSidebar"},{"id":"ci-cd/setting-up/01","path":"/Python/docs/ci-cd/setting-up/01","sidebar":"cicdSidebar"},{"id":"data-analysis/Combining_Datasets/concat()","path":"/Python/docs/data-analysis/Combining_Datasets/concat()","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Combining_Datasets/inner_join","path":"/Python/docs/data-analysis/Combining_Datasets/inner_join","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Combining_Datasets/Intro","path":"/Python/docs/data-analysis/Combining_Datasets/Intro","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Combining_Datasets/left_right_join","path":"/Python/docs/data-analysis/Combining_Datasets/left_right_join","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Combining_Datasets/left_right_minus","path":"/Python/docs/data-analysis/Combining_Datasets/left_right_minus","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Combining_Datasets/merge()","path":"/Python/docs/data-analysis/Combining_Datasets/merge()","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Combining_Datasets/Merging_Different_Column","path":"/Python/docs/data-analysis/Combining_Datasets/Merging_Different_Column","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Combining_Datasets/outer_join","path":"/Python/docs/data-analysis/Combining_Datasets/outer_join","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Combining_Datasets/outer_join_minus","path":"/Python/docs/data-analysis/Combining_Datasets/outer_join_minus","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/adding-columns","path":"/Python/docs/data-analysis/Data_Frames/adding-columns","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/descripe-info","path":"/Python/docs/data-analysis/Data_Frames/descripe-info","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/dropna","path":"/Python/docs/data-analysis/Data_Frames/dropna","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/fillna","path":"/Python/docs/data-analysis/Data_Frames/fillna","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/intro","path":"/Python/docs/data-analysis/Data_Frames/intro","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/methods","path":"/Python/docs/data-analysis/Data_Frames/methods","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/nlargest-nsmallest","path":"/Python/docs/data-analysis/Data_Frames/nlargest-nsmallest","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/removing-columns-rows","path":"/Python/docs/data-analysis/Data_Frames/removing-columns-rows","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/set_index-reset_index","path":"/Python/docs/data-analysis/Data_Frames/set_index-reset_index","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Bar_Chart_Race","path":"/Python/docs/data-analysis/Data-Visualization/Bar_Chart_Race","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Bar_Plots","path":"/Python/docs/data-analysis/Data-Visualization/Bar_Plots","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Candlestick_Charts","path":"/Python/docs/data-analysis/Data-Visualization/Candlestick_Charts","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Color_by_Value","path":"/Python/docs/data-analysis/Data-Visualization/Color_by_Value","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Histograms","path":"/Python/docs/data-analysis/Data-Visualization/Histograms","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Interactive_Plots","path":"/Python/docs/data-analysis/Data-Visualization/Interactive_Plots","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Line_Plots","path":"/Python/docs/data-analysis/Data-Visualization/Line_Plots","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Pie_Charts","path":"/Python/docs/data-analysis/Data-Visualization/Pie_Charts","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Scatter","path":"/Python/docs/data-analysis/Data-Visualization/Scatter","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Styles","path":"/Python/docs/data-analysis/Data-Visualization/Styles","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/getting-started","path":"/Python/docs/data-analysis/getting-started","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Add_New_Axis","path":"/Python/docs/data-analysis/NumPy/Add_New_Axis","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Arrays","path":"/Python/docs/data-analysis/NumPy/Arrays","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Basic_Operations","path":"/Python/docs/data-analysis/NumPy/Basic_Operations","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Broadcasting","path":"/Python/docs/data-analysis/NumPy/Broadcasting","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Creating_Arrays","path":"/Python/docs/data-analysis/NumPy/Creating_Arrays","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Finding_Unique_Elements","path":"/Python/docs/data-analysis/NumPy/Finding_Unique_Elements","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Generating_Random_Numbers","path":"/Python/docs/data-analysis/NumPy/Generating_Random_Numbers","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Indexing_Slicing","path":"/Python/docs/data-analysis/NumPy/Indexing_Slicing","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Lists_vs_NumPy","path":"/Python/docs/data-analysis/NumPy/Lists_vs_NumPy","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Matrices","path":"/Python/docs/data-analysis/NumPy/Matrices","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Reshaping","path":"/Python/docs/data-analysis/NumPy/Reshaping","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Reshaping_Flattening","path":"/Python/docs/data-analysis/NumPy/Reshaping_Flattening","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Reversing_Arrays","path":"/Python/docs/data-analysis/NumPy/Reversing_Arrays","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Saving_Loading_Arrays","path":"/Python/docs/data-analysis/NumPy/Saving_Loading_Arrays","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Shape_and_Size","path":"/Python/docs/data-analysis/NumPy/Shape_and_Size","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Sorting_Concatenating","path":"/Python/docs/data-analysis/NumPy/Sorting_Concatenating","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Reshaping_Datasets/groupby","path":"/Python/docs/data-analysis/Reshaping_Datasets/groupby","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Reshaping_Datasets/introduction","path":"/Python/docs/data-analysis/Reshaping_Datasets/introduction","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Reshaping_Datasets/melt","path":"/Python/docs/data-analysis/Reshaping_Datasets/melt","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Reshaping_Datasets/pivot","path":"/Python/docs/data-analysis/Reshaping_Datasets/pivot","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Reshaping_Datasets/pivot-table","path":"/Python/docs/data-analysis/Reshaping_Datasets/pivot-table","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Reshaping_Datasets/stack-unstack","path":"/Python/docs/data-analysis/Reshaping_Datasets/stack-unstack","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Reshaping_Datasets/transpose","path":"/Python/docs/data-analysis/Reshaping_Datasets/transpose","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/accessing_elements_index","path":"/Python/docs/data-analysis/Series/accessing_elements_index","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/accessing_elements_position","path":"/Python/docs/data-analysis/Series/accessing_elements_position","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/attributes","path":"/Python/docs/data-analysis/Series/attributes","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/counting_values","path":"/Python/docs/data-analysis/Series/counting_values","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/handling_csv_files","path":"/Python/docs/data-analysis/Series/handling_csv_files","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/head-and-tail","path":"/Python/docs/data-analysis/Series/head-and-tail","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/intro","path":"/Python/docs/data-analysis/Series/intro","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/methods","path":"/Python/docs/data-analysis/Series/methods","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/sorting_values","path":"/Python/docs/data-analysis/Series/sorting_values","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/String_Operators/index-columns","path":"/Python/docs/data-analysis/String_Operators/index-columns","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/String_Operators/startswith-endswith","path":"/Python/docs/data-analysis/String_Operators/startswith-endswith","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/String_Operators/str","path":"/Python/docs/data-analysis/String_Operators/str","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/Accessing_Time_Attributes","path":"/Python/docs/data-analysis/Time_Series/Accessing_Time_Attributes","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/date_range()","path":"/Python/docs/data-analysis/Time_Series/date_range()","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/loc_iloc_DatetimeIndex","path":"/Python/docs/data-analysis/Time_Series/loc_iloc_DatetimeIndex","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/Period_PeriodIndex","path":"/Python/docs/data-analysis/Time_Series/Period_PeriodIndex","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/Project","path":"/Python/docs/data-analysis/Time_Series/Project","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/reindex","path":"/Python/docs/data-analysis/Time_Series/reindex","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/resample","path":"/Python/docs/data-analysis/Time_Series/resample","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/Time_Series","path":"/Python/docs/data-analysis/Time_Series/Time_Series","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/Timedelta_TimedeltaIndex","path":"/Python/docs/data-analysis/Time_Series/Timedelta_TimedeltaIndex","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/Timestamp_DatetimeIndex","path":"/Python/docs/data-analysis/Time_Series/Timestamp_DatetimeIndex","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/Timestap_Methods_Attributes","path":"/Python/docs/data-analysis/Time_Series/Timestap_Methods_Attributes","sidebar":"dataAnalysisSidebar"},{"id":"design-patterns/behavioral/behavioral","path":"/Python/docs/design-patterns/behavioral/behavioral","sidebar":"designPatternsSidebar"},{"id":"design-patterns/creational/abstract_factory","path":"/Python/docs/design-patterns/creational/abstract_factory","sidebar":"designPatternsSidebar"},{"id":"design-patterns/creational/builder","path":"/Python/docs/design-patterns/creational/builder","sidebar":"designPatternsSidebar"},{"id":"design-patterns/creational/creational","path":"/Python/docs/design-patterns/creational/","sidebar":"designPatternsSidebar"},{"id":"design-patterns/creational/factory_method","path":"/Python/docs/design-patterns/creational/factory_method","sidebar":"designPatternsSidebar"},{"id":"design-patterns/creational/prototype","path":"/Python/docs/design-patterns/creational/prototype","sidebar":"designPatternsSidebar"},{"id":"design-patterns/creational/singleton","path":"/Python/docs/design-patterns/creational/singleton","sidebar":"designPatternsSidebar"},{"id":"design-patterns/getting-started","path":"/Python/docs/design-patterns/getting-started","sidebar":"designPatternsSidebar"},{"id":"design-patterns/structural/structural","path":"/Python/docs/design-patterns/structural/structural","sidebar":"designPatternsSidebar"},{"id":"getting-started","path":"/Python/docs/getting-started"},{"id":"gui-development/getting-started","path":"/Python/docs/gui-development/getting-started","sidebar":"guiSidebar"},{"id":"gui-development/introduction/gui_development","path":"/Python/docs/gui-development/introduction/gui_development","sidebar":"guiSidebar"},{"id":"gui-development/introduction/gui_frameworks","path":"/Python/docs/gui-development/introduction/gui_frameworks","sidebar":"guiSidebar"},{"id":"gui-development/introduction/right_framework","path":"/Python/docs/gui-development/introduction/right_framework","sidebar":"guiSidebar"},{"id":"gui-development/introduction/setting-up","path":"/Python/docs/gui-development/introduction/setting-up","sidebar":"guiSidebar"},{"id":"python-guide/Advanced/Generators/README","path":"/Python/docs/python-guide/Advanced/Generators/","sidebar":"guideSidebar"},{"id":"python-guide/Advanced/Lambda_Functions/README","path":"/Python/docs/python-guide/Advanced/Lambda_Functions/","sidebar":"guideSidebar"},{"id":"python-guide/Advanced/Mypy/README","path":"/Python/docs/python-guide/Advanced/Mypy/","sidebar":"guideSidebar"},{"id":"python-guide/Advanced/Walrus_Operator/README","path":"/Python/docs/python-guide/Advanced/Walrus_Operator/","sidebar":"guideSidebar"},{"id":"python-guide/AsyncIO/Gather","path":"/Python/docs/python-guide/AsyncIO/Gather","sidebar":"guideSidebar"},{"id":"python-guide/AsyncIO/Getting_Started","path":"/Python/docs/python-guide/AsyncIO/Getting_Started","sidebar":"guideSidebar"},{"id":"python-guide/AsyncIO/Intro","path":"/Python/docs/python-guide/AsyncIO/Intro","sidebar":"guideSidebar"},{"id":"python-guide/AsyncIO/Tasks","path":"/Python/docs/python-guide/AsyncIO/Tasks","sidebar":"guideSidebar"},{"id":"python-guide/AsyncIO/Website_Status","path":"/Python/docs/python-guide/AsyncIO/Website_Status","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/all()/README","path":"/Python/docs/python-guide/Built_in_Functions/all()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/any()/README","path":"/Python/docs/python-guide/Built_in_Functions/any()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/callable()/README","path":"/Python/docs/python-guide/Built_in_Functions/callable()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/dunder_methods/README","path":"/Python/docs/python-guide/Built_in_Functions/dunder_methods/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/enumerate()/README","path":"/Python/docs/python-guide/Built_in_Functions/enumerate()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/eval()/README","path":"/Python/docs/python-guide/Built_in_Functions/eval()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/exec()/README","path":"/Python/docs/python-guide/Built_in_Functions/exec()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/filter()/README","path":"/Python/docs/python-guide/Built_in_Functions/filter()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/globals()/README","path":"/Python/docs/python-guide/Built_in_Functions/globals()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/Improved_Chat_Bot/README","path":"/Python/docs/python-guide/Built_in_Functions/Improved_Chat_Bot/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/isinstance()/README","path":"/Python/docs/python-guide/Built_in_Functions/isinstance()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/locals()/README","path":"/Python/docs/python-guide/Built_in_Functions/locals()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/map()/README","path":"/Python/docs/python-guide/Built_in_Functions/map()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/print()/README","path":"/Python/docs/python-guide/Built_in_Functions/print()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/range()/README","path":"/Python/docs/python-guide/Built_in_Functions/range()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/round()/README","path":"/Python/docs/python-guide/Built_in_Functions/round()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/slice()/README","path":"/Python/docs/python-guide/Built_in_Functions/slice()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/sorted()/README","path":"/Python/docs/python-guide/Built_in_Functions/sorted()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/zip()/README","path":"/Python/docs/python-guide/Built_in_Functions/zip()/","sidebar":"guideSidebar"},{"id":"python-guide/Control_Flow/Break_and_Continue","path":"/Python/docs/python-guide/Control_Flow/Break_and_Continue","sidebar":"guideSidebar"},{"id":"python-guide/Control_Flow/For_Loop","path":"/Python/docs/python-guide/Control_Flow/For_Loop","sidebar":"guideSidebar"},{"id":"python-guide/Control_Flow/If_Elif_Else","path":"/Python/docs/python-guide/Control_Flow/If_Elif_Else","sidebar":"guideSidebar"},{"id":"python-guide/Control_Flow/If_Else_Shorthand","path":"/Python/docs/python-guide/Control_Flow/If_Else_Shorthand","sidebar":"guideSidebar"},{"id":"python-guide/Control_Flow/Loop-Else","path":"/Python/docs/python-guide/Control_Flow/Loop-Else","sidebar":"guideSidebar"},{"id":"python-guide/Control_Flow/Rock_Paper_Scissors","path":"/Python/docs/python-guide/Control_Flow/Rock_Paper_Scissors","sidebar":"guideSidebar"},{"id":"python-guide/Control_Flow/While_Loop","path":"/Python/docs/python-guide/Control_Flow/While_Loop","sidebar":"guideSidebar"},{"id":"python-guide/Dataclasses/@dataclass/README","path":"/Python/docs/python-guide/Dataclasses/@dataclass/","sidebar":"guideSidebar"},{"id":"python-guide/Dataclasses/@property/README","path":"/Python/docs/python-guide/Dataclasses/@property/","sidebar":"guideSidebar"},{"id":"python-guide/Dataclasses/Fields/README","path":"/Python/docs/python-guide/Dataclasses/Fields/","sidebar":"guideSidebar"},{"id":"python-guide/Dataclasses/InitVar/README","path":"/Python/docs/python-guide/Dataclasses/InitVar/","sidebar":"guideSidebar"},{"id":"python-guide/Dataclasses/Notes_App/README","path":"/Python/docs/python-guide/Dataclasses/Notes_App/","sidebar":"guideSidebar"},{"id":"python-guide/Dataclasses/post_init/README","path":"/Python/docs/python-guide/Dataclasses/post_init/","sidebar":"guideSidebar"},{"id":"python-guide/Errors/Else_Finally/README","path":"/Python/docs/python-guide/Errors/Else_Finally/","sidebar":"guideSidebar"},{"id":"python-guide/Errors/Letters_Only/README","path":"/Python/docs/python-guide/Errors/Letters_Only/","sidebar":"guideSidebar"},{"id":"python-guide/Errors/Raise/README","path":"/Python/docs/python-guide/Errors/Raise/","sidebar":"guideSidebar"},{"id":"python-guide/Errors/Try_Except/README","path":"/Python/docs/python-guide/Errors/Try_Except/","sidebar":"guideSidebar"},{"id":"python-guide/Errors/Unknown_Errors/README","path":"/Python/docs/python-guide/Errors/Unknown_Errors/","sidebar":"guideSidebar"},{"id":"python-guide/Errors/User_Input/README","path":"/Python/docs/python-guide/Errors/User_Input/","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/Caching-JSON","path":"/Python/docs/python-guide/File-Management/Caching-JSON","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/Deleting_Files","path":"/Python/docs/python-guide/File-Management/Deleting_Files","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/File-Handling","path":"/Python/docs/python-guide/File-Management/File-Handling","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/Glob","path":"/Python/docs/python-guide/File-Management/Glob","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/Handling-JSON","path":"/Python/docs/python-guide/File-Management/Handling-JSON","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/JSON","path":"/Python/docs/python-guide/File-Management/JSON","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/Pickling","path":"/Python/docs/python-guide/File-Management/Pickling","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/Reading-Files","path":"/Python/docs/python-guide/File-Management/Reading-Files","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/toml","path":"/Python/docs/python-guide/File-Management/toml","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/Writing-Creating-Files","path":"/Python/docs/python-guide/File-Management/Writing-Creating-Files","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/yaml","path":"/Python/docs/python-guide/File-Management/yaml","sidebar":"guideSidebar"},{"id":"python-guide/Functions/Args_and_Kwargs","path":"/Python/docs/python-guide/Functions/Args_and_Kwargs","sidebar":"guideSidebar"},{"id":"python-guide/Functions/Creating_a_Function","path":"/Python/docs/python-guide/Functions/Creating_a_Function","sidebar":"guideSidebar"},{"id":"python-guide/Functions/Parameters_and_Arguments","path":"/Python/docs/python-guide/Functions/Parameters_and_Arguments","sidebar":"guideSidebar"},{"id":"python-guide/Functions/Pass","path":"/Python/docs/python-guide/Functions/Pass","sidebar":"guideSidebar"},{"id":"python-guide/Functions/Recursion","path":"/Python/docs/python-guide/Functions/Recursion","sidebar":"guideSidebar"},{"id":"python-guide/Functions/Return_Functions","path":"/Python/docs/python-guide/Functions/Return_Functions","sidebar":"guideSidebar"},{"id":"python-guide/Functions/Star_and_Slash","path":"/Python/docs/python-guide/Functions/Star_and_Slash","sidebar":"guideSidebar"},{"id":"python-guide/getting-started","path":"/Python/docs/python-guide/getting-started","sidebar":"guideSidebar"},{"id":"python-guide/Lists/Dont_Loop_Modify","path":"/Python/docs/python-guide/Lists/Dont_Loop_Modify","sidebar":"guideSidebar"},{"id":"python-guide/Lists/getting-started","path":"/Python/docs/python-guide/Lists/getting-started","sidebar":"guideSidebar"},{"id":"python-guide/Lists/Grocery_List","path":"/Python/docs/python-guide/Lists/Grocery_List","sidebar":"guideSidebar"},{"id":"python-guide/Lists/List_Comprehensions","path":"/Python/docs/python-guide/Lists/List_Comprehensions","sidebar":"guideSidebar"},{"id":"python-guide/Lists/Slicing","path":"/Python/docs/python-guide/Lists/Slicing","sidebar":"guideSidebar"},{"id":"python-guide/Modules/if_name_main/README","path":"/Python/docs/python-guide/Modules/if_name_main/","sidebar":"guideSidebar"},{"id":"python-guide/Modules/Importing/README","path":"/Python/docs/python-guide/Modules/Importing/","sidebar":"guideSidebar"},{"id":"python-guide/Modules/Libraries/README","path":"/Python/docs/python-guide/Modules/Libraries/","sidebar":"guideSidebar"},{"id":"python-guide/Modules/Modules/README","path":"/Python/docs/python-guide/Modules/Modules/","sidebar":"guideSidebar"},{"id":"python-guide/Modules/Packages/code/README","path":"/Python/docs/python-guide/Modules/Packages/code/","sidebar":"guideSidebar"},{"id":"python-guide/Modules/Website_Status/README","path":"/Python/docs/python-guide/Modules/Website_Status/","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Data-Sharing-Issue","path":"/Python/docs/python-guide/Multiprocessing/Data-Sharing-Issue","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Intro","path":"/Python/docs/python-guide/Multiprocessing/Intro","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Lock-Semaphores","path":"/Python/docs/python-guide/Multiprocessing/Lock-Semaphores","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Pipes","path":"/Python/docs/python-guide/Multiprocessing/Pipes","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Pools-Map","path":"/Python/docs/python-guide/Multiprocessing/Pools-Map","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Pools-Multiple-Functions","path":"/Python/docs/python-guide/Multiprocessing/Pools-Multiple-Functions","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Pools-Starmap","path":"/Python/docs/python-guide/Multiprocessing/Pools-Starmap","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Processes","path":"/Python/docs/python-guide/Multiprocessing/Processes","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Queues","path":"/Python/docs/python-guide/Multiprocessing/Queues","sidebar":"guideSidebar"},{"id":"python-guide/Multithreading/Daemon-Threads","path":"/Python/docs/python-guide/Multithreading/Daemon-Threads","sidebar":"guideSidebar"},{"id":"python-guide/Multithreading/Locks","path":"/Python/docs/python-guide/Multithreading/Locks","sidebar":"guideSidebar"},{"id":"python-guide/Multithreading/Race-Conditions","path":"/Python/docs/python-guide/Multithreading/Race-Conditions","sidebar":"guideSidebar"},{"id":"python-guide/Multithreading/Semaphores","path":"/Python/docs/python-guide/Multithreading/Semaphores","sidebar":"guideSidebar"},{"id":"python-guide/Multithreading/Threads","path":"/Python/docs/python-guide/Multithreading/Threads","sidebar":"guideSidebar"},{"id":"python-guide/Multithreading/With-Lock-Semaphore","path":"/Python/docs/python-guide/Multithreading/With-Lock-Semaphore","sidebar":"guideSidebar"},{"id":"python-guide/OOP/@abstractmethod","path":"/Python/docs/python-guide/OOP/@abstractmethod","sidebar":"guideSidebar"},{"id":"python-guide/OOP/@classmethod","path":"/Python/docs/python-guide/OOP/@classmethod","sidebar":"guideSidebar"},{"id":"python-guide/OOP/@staticmethod","path":"/Python/docs/python-guide/OOP/@staticmethod","sidebar":"guideSidebar"},{"id":"python-guide/OOP/Attributes_Class_and_Instance","path":"/Python/docs/python-guide/OOP/Attributes_Class_and_Instance","sidebar":"guideSidebar"},{"id":"python-guide/OOP/Classes_and_Objects","path":"/Python/docs/python-guide/OOP/Classes_and_Objects","sidebar":"guideSidebar"},{"id":"python-guide/OOP/Dunder_Methods","path":"/Python/docs/python-guide/OOP/Dunder_Methods","sidebar":"guideSidebar"},{"id":"python-guide/OOP/eq__()","path":"/Python/docs/python-guide/OOP/eq__()","sidebar":"guideSidebar"},{"id":"python-guide/OOP/Inheritance","path":"/Python/docs/python-guide/OOP/Inheritance","sidebar":"guideSidebar"},{"id":"python-guide/OOP/init","path":"/Python/docs/python-guide/OOP/init","sidebar":"guideSidebar"},{"id":"python-guide/OOP/Methods_Functions","path":"/Python/docs/python-guide/OOP/Methods_Functions","sidebar":"guideSidebar"},{"id":"python-guide/OOP/Name_Mangling","path":"/Python/docs/python-guide/OOP/Name_Mangling","sidebar":"guideSidebar"},{"id":"python-guide/OOP/OOP","path":"/Python/docs/python-guide/OOP/OOP","sidebar":"guideSidebar"},{"id":"python-guide/OOP/self","path":"/Python/docs/python-guide/OOP/self","sidebar":"guideSidebar"},{"id":"python-guide/OOP/str()_repr()","path":"/Python/docs/python-guide/OOP/str()_repr()","sidebar":"guideSidebar"},{"id":"python-guide/OOP/super()","path":"/Python/docs/python-guide/OOP/super()","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Assertions","path":"/Python/docs/python-guide/Python_Basics/Assertions","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Booleans","path":"/Python/docs/python-guide/Python_Basics/Booleans","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Comments","path":"/Python/docs/python-guide/Python_Basics/Comments","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Comparing_Floats","path":"/Python/docs/python-guide/Python_Basics/Comparing_Floats","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Constants","path":"/Python/docs/python-guide/Python_Basics/Constants","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Data_Types","path":"/Python/docs/python-guide/Python_Basics/Data_Types","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Dictionaries","path":"/Python/docs/python-guide/Python_Basics/Dictionaries","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Doc_Strings","path":"/Python/docs/python-guide/Python_Basics/Doc_Strings","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/F-Strings","path":"/Python/docs/python-guide/Python_Basics/F-Strings","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Floats","path":"/Python/docs/python-guide/Python_Basics/Floats","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Frozensets","path":"/Python/docs/python-guide/Python_Basics/Frozensets","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Global","path":"/Python/docs/python-guide/Python_Basics/Global","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Integers","path":"/Python/docs/python-guide/Python_Basics/Integers","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Lists","path":"/Python/docs/python-guide/Python_Basics/Lists","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Mad_Libs_Project","path":"/Python/docs/python-guide/Python_Basics/Mad_Libs_Project","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/None","path":"/Python/docs/python-guide/Python_Basics/None","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Nonlocal","path":"/Python/docs/python-guide/Python_Basics/Nonlocal","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Operators","path":"/Python/docs/python-guide/Python_Basics/Operators","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Scopes","path":"/Python/docs/python-guide/Python_Basics/Scopes","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Sets","path":"/Python/docs/python-guide/Python_Basics/Sets","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Shortcut_Format","path":"/Python/docs/python-guide/Python_Basics/Shortcut_Format","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Simple_Adder_Project","path":"/Python/docs/python-guide/Python_Basics/Simple_Adder_Project","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Strings","path":"/Python/docs/python-guide/Python_Basics/Strings","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Syntax","path":"/Python/docs/python-guide/Python_Basics/Syntax","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Truthy_and_Falsy","path":"/Python/docs/python-guide/Python_Basics/Truthy_and_Falsy","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Tuples","path":"/Python/docs/python-guide/Python_Basics/Tuples","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Type_Conversion","path":"/Python/docs/python-guide/Python_Basics/Type_Conversion","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Type_Hints","path":"/Python/docs/python-guide/Python_Basics/Type_Hints","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Unpacking","path":"/Python/docs/python-guide/Python_Basics/Unpacking","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Variables","path":"/Python/docs/python-guide/Python_Basics/Variables","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/VS_Is","path":"/Python/docs/python-guide/Python_Basics/VS_Is","sidebar":"guideSidebar"},{"id":"python-guide/Unit-Testing/Conftest","path":"/Python/docs/python-guide/Unit-Testing/Conftest","sidebar":"guideSidebar"},{"id":"python-guide/Unit-Testing/Fixtures","path":"/Python/docs/python-guide/Unit-Testing/Fixtures","sidebar":"guideSidebar"},{"id":"python-guide/Unit-Testing/Intro","path":"/Python/docs/python-guide/Unit-Testing/Intro","sidebar":"guideSidebar"},{"id":"python-guide/Unit-Testing/Marks","path":"/Python/docs/python-guide/Unit-Testing/Marks","sidebar":"guideSidebar"},{"id":"python-guide/Unit-Testing/Parametrize","path":"/Python/docs/python-guide/Unit-Testing/Parametrize","sidebar":"guideSidebar"},{"id":"python-guide/Unit-Testing/TestingErrors","path":"/Python/docs/python-guide/Unit-Testing/TestingErrors","sidebar":"guideSidebar"},{"id":"rest-api/Building-REST-API/08","path":"/Python/docs/rest-api/Building-REST-API/08","sidebar":"restAPISidebar"},{"id":"rest-api/Building-REST-API/adding_urls","path":"/Python/docs/rest-api/Building-REST-API/adding_urls","sidebar":"restAPISidebar"},{"id":"rest-api/Building-REST-API/building_rest_api","path":"/Python/docs/rest-api/Building-REST-API/building_rest_api","sidebar":"restAPISidebar"},{"id":"rest-api/Building-REST-API/django_rest","path":"/Python/docs/rest-api/Building-REST-API/django_rest","sidebar":"restAPISidebar"},{"id":"rest-api/Building-REST-API/expanding_using_flask","path":"/Python/docs/rest-api/Building-REST-API/expanding_using_flask","sidebar":"restAPISidebar"},{"id":"rest-api/Building-REST-API/fastapi","path":"/Python/docs/rest-api/Building-REST-API/fastapi","sidebar":"restAPISidebar"},{"id":"rest-api/Building-REST-API/loading_serializing_drf","path":"/Python/docs/rest-api/Building-REST-API/loading_serializing_drf","sidebar":"restAPISidebar"},{"id":"rest-api/Building-REST-API/using_fastapi","path":"/Python/docs/rest-api/Building-REST-API/using_fastapi","sidebar":"restAPISidebar"},{"id":"rest-api/CRUD","path":"/Python/docs/rest-api/CRUD","sidebar":"restAPISidebar"},{"id":"rest-api/Designing-REST-API/designing_data_exchange","path":"/Python/docs/rest-api/Designing-REST-API/designing_data_exchange","sidebar":"restAPISidebar"},{"id":"rest-api/Designing-REST-API/designing_error_responses","path":"/Python/docs/rest-api/Designing-REST-API/designing_error_responses","sidebar":"restAPISidebar"},{"id":"rest-api/Designing-REST-API/designing_rest_api","path":"/Python/docs/rest-api/Designing-REST-API/designing_rest_api","sidebar":"restAPISidebar"},{"id":"rest-api/Designing-REST-API/get_post","path":"/Python/docs/rest-api/Designing-REST-API/get_post","sidebar":"restAPISidebar"},{"id":"rest-api/Designing-REST-API/interacting_with_rest","path":"/Python/docs/rest-api/Designing-REST-API/interacting_with_rest","sidebar":"restAPISidebar"},{"id":"rest-api/Designing-REST-API/put_patch_delete","path":"/Python/docs/rest-api/Designing-REST-API/put_patch_delete","sidebar":"restAPISidebar"},{"id":"rest-api/Designing-REST-API/understanding_rest_api","path":"/Python/docs/rest-api/Designing-REST-API/understanding_rest_api","sidebar":"restAPISidebar"},{"id":"rest-api/getting-started","path":"/Python/docs/rest-api/getting-started","sidebar":"restAPISidebar"},{"id":"tips-and-tricks/common-errors","path":"/Python/docs/tips-and-tricks/common-errors","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/critical-mistakes-to-avoid","path":"/Python/docs/tips-and-tricks/critical-mistakes-to-avoid","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/decorators","path":"/Python/docs/tips-and-tricks/decorators","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/dont-dry","path":"/Python/docs/tips-and-tricks/dont-dry","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/dunder-methods","path":"/Python/docs/tips-and-tricks/dunder-methods","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/easter-eggs","path":"/Python/docs/tips-and-tricks/easter-eggs","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/F-String-Tricks","path":"/Python/docs/tips-and-tricks/F-String-Tricks","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/granularity-cohesion","path":"/Python/docs/tips-and-tricks/granularity-cohesion","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/itemgetter","path":"/Python/docs/tips-and-tricks/itemgetter","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/iterable-iterator","path":"/Python/docs/tips-and-tricks/iterable-iterator","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/Keywords","path":"/Python/docs/tips-and-tricks/Keywords","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/linux-commands","path":"/Python/docs/tips-and-tricks/linux-commands","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/match-case","path":"/Python/docs/tips-and-tricks/match-case","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/methodcaller","path":"/Python/docs/tips-and-tricks/methodcaller","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/methods","path":"/Python/docs/tips-and-tricks/methods","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/python-is-python3","path":"/Python/docs/tips-and-tricks/python-is-python3","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/rip-gil","path":"/Python/docs/tips-and-tricks/rip-gil","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/seven-code-habbits","path":"/Python/docs/tips-and-tricks/seven-code-habbits","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/tips-and-tricks","path":"/Python/docs/tips-and-tricks/tips-and-tricks","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/worst-Features","path":"/Python/docs/tips-and-tricks/worst-Features","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/wtf-is-self","path":"/Python/docs/tips-and-tricks/wtf-is-self","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/yield","path":"/Python/docs/tips-and-tricks/yield","sidebar":"tipsAndTricksSidebar"},{"id":"/category/python-basics","path":"/Python/docs/category/python-basics","sidebar":"guideSidebar"},{"id":"/category/control-flow","path":"/Python/docs/category/control-flow","sidebar":"guideSidebar"},{"id":"/category/functions","path":"/Python/docs/category/functions","sidebar":"guideSidebar"},{"id":"/category/errors","path":"/Python/docs/category/errors","sidebar":"guideSidebar"},{"id":"/category/modules","path":"/Python/docs/category/modules","sidebar":"guideSidebar"},{"id":"/category/lists","path":"/Python/docs/category/lists","sidebar":"guideSidebar"},{"id":"/category/oop","path":"/Python/docs/category/oop","sidebar":"guideSidebar"},{"id":"/category/built-in-functions","path":"/Python/docs/category/built-in-functions","sidebar":"guideSidebar"},{"id":"/category/dataclasses","path":"/Python/docs/category/dataclasses","sidebar":"guideSidebar"},{"id":"/category/advanced","path":"/Python/docs/category/advanced","sidebar":"guideSidebar"},{"id":"/category/asyncio","path":"/Python/docs/category/asyncio","sidebar":"guideSidebar"},{"id":"/category/multiprocessing","path":"/Python/docs/category/multiprocessing","sidebar":"guideSidebar"},{"id":"/category/multi-threading","path":"/Python/docs/category/multi-threading","sidebar":"guideSidebar"},{"id":"/category/unit-testing","path":"/Python/docs/category/unit-testing","sidebar":"guideSidebar"},{"id":"/category/file-management","path":"/Python/docs/category/file-management","sidebar":"guideSidebar"},{"id":"/category/series","path":"/Python/docs/category/series","sidebar":"dataAnalysisSidebar"},{"id":"/category/data-frames","path":"/Python/docs/category/data-frames","sidebar":"dataAnalysisSidebar"},{"id":"/category/string-operators","path":"/Python/docs/category/string-operators","sidebar":"dataAnalysisSidebar"},{"id":"/category/reshaping-datasets","path":"/Python/docs/category/reshaping-datasets","sidebar":"dataAnalysisSidebar"},{"id":"/category/combining-datasets","path":"/Python/docs/category/combining-datasets","sidebar":"dataAnalysisSidebar"},{"id":"/category/time-series","path":"/Python/docs/category/time-series","sidebar":"dataAnalysisSidebar"},{"id":"/category/data-visualization","path":"/Python/docs/category/data-visualization","sidebar":"dataAnalysisSidebar"},{"id":"/category/numpy","path":"/Python/docs/category/numpy","sidebar":"dataAnalysisSidebar"},{"id":"/category/creational-design-patterns","path":"/Python/docs/category/creational-design-patterns","sidebar":"designPatternsSidebar"},{"id":"/category/structural-design-patterns","path":"/Python/docs/category/structural-design-patterns","sidebar":"designPatternsSidebar"},{"id":"/category/behavioral-design-patterns","path":"/Python/docs/category/behavioral-design-patterns","sidebar":"designPatternsSidebar"},{"id":"/category/designing-rest-apis","path":"/Python/docs/category/designing-rest-apis","sidebar":"restAPISidebar"},{"id":"/category/building-rest-apis","path":"/Python/docs/category/building-rest-apis","sidebar":"restAPISidebar"},{"id":"/category/introduction","path":"/Python/docs/category/introduction","sidebar":"cicdSidebar"},{"id":"/category/cicd","path":"/Python/docs/category/cicd","sidebar":"cicdSidebar"},{"id":"/category/how-cicd-revolutionized-software-development","path":"/Python/docs/category/how-cicd-revolutionized-software-development","sidebar":"cicdSidebar"},{"id":"/category/setting-up","path":"/Python/docs/category/setting-up","sidebar":"cicdSidebar"},{"id":"/category/enhancing-actions","path":"/Python/docs/category/enhancing-actions","sidebar":"cicdSidebar"},{"id":"/category/fastapi-actions","path":"/Python/docs/category/fastapi-actions","sidebar":"cicdSidebar"}],"draftIds":[],"sidebars":{"guideSidebar":{"link":{"path":"/Python/docs/python-guide/getting-started","label":"python-guide/getting-started"}},"dataAnalysisSidebar":{"link":{"path":"/Python/docs/data-analysis/getting-started","label":"data-analysis/getting-started"}},"designPatternsSidebar":{"link":{"path":"/Python/docs/design-patterns/getting-started","label":"design-patterns/getting-started"}},"guiSidebar":{"link":{"path":"/Python/docs/gui-development/getting-started","label":"gui-development/getting-started"}},"restAPISidebar":{"link":{"path":"/Python/docs/rest-api/getting-started","label":"rest-api/getting-started"}},"cicdSidebar":{"link":{"path":"/Python/docs/ci-cd/getting-started","label":"ci-cd/getting-started"}},"tipsAndTricksSidebar":{"link":{"path":"/Python/docs/tips-and-tricks/F-String-Tricks","label":"tips-and-tricks/F-String-Tricks"}}}}],"breadcrumbs":true}}}'),r=JSON.parse('{"defaultLocale":"en","locales":["en"],"path":"i18n","currentLocale":"en","localeConfigs":{"en":{"label":"English","direction":"ltr","htmlLang":"en","calendar":"gregory","path":"en"}}}');var s=n(2654);const c=JSON.parse('{"docusaurusVersion":"3.7.0","siteVersion":"0.0.0","pluginVersions":{"docusaurus-plugin-content-docs":{"type":"package","name":"@docusaurus/plugin-content-docs","version":"3.7.0"},"docusaurus-plugin-content-blog":{"type":"package","name":"@docusaurus/plugin-content-blog","version":"3.7.0"},"docusaurus-plugin-content-pages":{"type":"package","name":"@docusaurus/plugin-content-pages","version":"3.7.0"},"docusaurus-plugin-sitemap":{"type":"package","name":"@docusaurus/plugin-sitemap","version":"3.7.0"},"docusaurus-plugin-svgr":{"type":"package","name":"@docusaurus/plugin-svgr","version":"3.7.0"},"docusaurus-theme-classic":{"type":"package","name":"@docusaurus/theme-classic","version":"3.7.0"}}}');var l=n(4848);const d={siteConfig:o.default,siteMetadata:c,globalData:i,i18n:r,codeTranslations:s},u=a.createContext(d);function p(e){let{children:t}=e;return(0,l.jsx)(u.Provider,{value:d,children:t})}},4023:(e,t,n)=>{"use strict";n.d(t,{A:()=>g});var a=n(6540),o=n(1934),i=n(7143),r=n(99),s=n(1410),c=n(5313),l=n(4848);function d(e){let{error:t,tryAgain:n}=e;return(0,l.jsxs)("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"flex-start",minHeight:"100vh",width:"100%",maxWidth:"80ch",fontSize:"20px",margin:"0 auto",padding:"1rem"},children:[(0,l.jsx)("h1",{style:{fontSize:"3rem"},children:"This page crashed"}),(0,l.jsx)("button",{type:"button",onClick:n,style:{margin:"1rem 0",fontSize:"2rem",cursor:"pointer",borderRadius:20,padding:"1rem"},children:"Try again"}),(0,l.jsx)(u,{error:t})]})}function u(e){let{error:t}=e;const n=(0,r.rA)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,l.jsx)("p",{style:{whiteSpace:"pre-wrap"},children:n})}function p(e){let{children:t}=e;return(0,l.jsx)(c.W,{value:{plugin:{name:"docusaurus-core-error-boundary",id:"default"}},children:t})}function h(e){let{error:t,tryAgain:n}=e;return(0,l.jsx)(p,{children:(0,l.jsxs)(g,{fallback:()=>(0,l.jsx)(d,{error:t,tryAgain:n}),children:[(0,l.jsx)(i.A,{children:(0,l.jsx)("title",{children:"Page Error"})}),(0,l.jsx)(s.A,{children:(0,l.jsx)(d,{error:t,tryAgain:n})})]})})}const y=e=>(0,l.jsx)(h,{...e});class g extends a.Component{constructor(e){super(e),this.state={error:null}}componentDidCatch(e){o.A.canUseDOM&&this.setState({error:e})}render(){const{children:e}=this.props,{error:t}=this.state;if(t){const e={error:t,tryAgain:()=>this.setState({error:null})};return(this.props.fallback??y)(e)}return e??null}}},1934:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});const a="undefined"!=typeof window&&"document"in window&&"createElement"in window.document,o={canUseDOM:a,canUseEventListeners:a&&("addEventListener"in window||"attachEvent"in window),canUseIntersectionObserver:a&&"IntersectionObserver"in window,canUseViewport:a&&"screen"in window}},7143:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});n(6540);var a=n(545),o=n(4848);function i(e){return(0,o.jsx)(a.mg,{...e})}},6289:(e,t,n)=>{"use strict";n.d(t,{A:()=>h});var a=n(6540),o=n(4625),i=n(99),r=n(797),s=n(2887),c=n(1934),l=n(5246),d=n(9030),u=n(4848);function p(e,t){let{isNavLink:n,to:p,href:h,activeClassName:y,isActive:g,"data-noBrokenLinkCheck":f,autoAddBaseUrl:m=!0,...b}=e;const{siteConfig:_}=(0,r.A)(),{trailingSlash:v,baseUrl:P}=_,S=_.future.experimental_router,{withBaseUrl:w}=(0,d.hH)(),k=(0,l.A)(),x=(0,a.useRef)(null);(0,a.useImperativeHandle)(t,(()=>x.current));const A=p||h;const E=(0,s.A)(A),T=A?.replace("pathname://","");let C=void 0!==T?(D=T,m&&(e=>e.startsWith("/"))(D)?w(D):D):void 0;var D;"hash"===S&&C?.startsWith("./")&&(C=C?.slice(1)),C&&E&&(C=(0,i.Ks)(C,{trailingSlash:v,baseUrl:P}));const O=(0,a.useRef)(!1),F=n?o.k2:o.N_,R=c.A.canUseIntersectionObserver,N=(0,a.useRef)(),j=()=>{O.current||null==C||(window.docusaurus.preload(C),O.current=!0)};(0,a.useEffect)((()=>(!R&&E&&c.A.canUseDOM&&null!=C&&window.docusaurus.prefetch(C),()=>{R&&N.current&&N.current.disconnect()})),[N,C,R,E]);const M=C?.startsWith("#")??!1,L=!b.target||"_self"===b.target,I=!C||!E||!L||M&&"hash"!==S;f||!M&&I||k.collectLink(C),b.id&&k.collectAnchor(b.id);const B={};return I?(0,u.jsx)("a",{ref:x,href:C,...A&&!E&&{target:"_blank",rel:"noopener noreferrer"},...b,...B}):(0,u.jsx)(F,{...b,onMouseEnter:j,onTouchStart:j,innerRef:e=>{x.current=e,R&&e&&E&&(N.current=new window.IntersectionObserver((t=>{t.forEach((t=>{e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(N.current.unobserve(e),N.current.disconnect(),null!=C&&window.docusaurus.prefetch(C))}))})),N.current.observe(e))},to:C,...n&&{isActive:g,activeClassName:y},...B})}const h=a.forwardRef(p)},205:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});const a=()=>null},539:(e,t,n)=>{"use strict";n.d(t,{A:()=>l,T:()=>c});var a=n(6540),o=n(4848);function i(e,t){const n=e.split(/(\{\w+\})/).map(((e,n)=>{if(n%2==1){const n=t?.[e.slice(1,-1)];if(void 0!==n)return n}return e}));return n.some((e=>(0,a.isValidElement)(e)))?n.map(((e,t)=>(0,a.isValidElement)(e)?a.cloneElement(e,{key:t}):e)).filter((e=>""!==e)):n.join("")}var r=n(2654);function s(e){let{id:t,message:n}=e;if(void 0===t&&void 0===n)throw new Error("Docusaurus translation declarations must have at least a translation id or a default translation message");return r[t??n]??n??t}function c(e,t){let{message:n,id:a}=e;return i(s({message:n,id:a}),t)}function l(e){let{children:t,id:n,values:a}=e;if(t&&"string"!=typeof t)throw console.warn("Illegal children",t),new Error("The Docusaurus component only accept simple string values");const r=s({message:t,id:n});return(0,o.jsx)(o.Fragment,{children:i(r,a)})}},4332:(e,t,n)=>{"use strict";n.d(t,{W:()=>a});const a="default"},2887:(e,t,n)=>{"use strict";function a(e){return/^(?:\w*:|\/\/)/.test(e)}function o(e){return void 0!==e&&!a(e)}n.d(t,{A:()=>o,z:()=>a})},9030:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>s,hH:()=>r});var a=n(6540),o=n(797),i=n(2887);function r(){const{siteConfig:e}=(0,o.A)(),{baseUrl:t,url:n}=e,r=e.future.experimental_router,s=(0,a.useCallback)(((e,a)=>function(e){let{siteUrl:t,baseUrl:n,url:a,options:{forcePrependBaseUrl:o=!1,absolute:r=!1}={},router:s}=e;if(!a||a.startsWith("#")||(0,i.z)(a))return a;if("hash"===s)return a.startsWith("/")?`.${a}`:`./${a}`;if(o)return n+a.replace(/^\//,"");if(a===n.replace(/\/$/,""))return n;const c=a.startsWith(n)?a:n+a.replace(/^\//,"");return r?t+c:c}({siteUrl:n,baseUrl:t,url:e,options:a,router:r})),[n,t,r]);return{withBaseUrl:s}}function s(e,t){void 0===t&&(t={});const{withBaseUrl:n}=r();return n(e,t)}},5246:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});var a=n(6540);n(4848);const o=a.createContext({collectAnchor:()=>{},collectLink:()=>{}}),i=()=>(0,a.useContext)(o);function r(){return i()}},797:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var a=n(6540),o=n(6193);function i(){return(0,a.useContext)(o.o)}},9136:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var a=n(6540),o=n(4974);function i(){return(0,a.useContext)(o.o)}},372:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var a=n(6540);const o=n(1934).A.canUseDOM?a.useLayoutEffect:a.useEffect},9062:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var a=n(6540),o=n(5313);function i(){const e=a.useContext(o.o);if(!e)throw new Error("Unexpected: no Docusaurus route context found");return e}},3722:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});const a=e=>"object"==typeof e&&!!e&&Object.keys(e).length>0;function o(e){const t={};return function e(n,o){Object.entries(n).forEach((n=>{let[i,r]=n;const s=o?`${o}.${i}`:i;a(r)?e(r,s):t[s]=r}))}(e),t}},5313:(e,t,n)=>{"use strict";n.d(t,{W:()=>r,o:()=>i});var a=n(6540),o=n(4848);const i=a.createContext(null);function r(e){let{children:t,value:n}=e;const r=a.useContext(i),s=(0,a.useMemo)((()=>function(e){let{parent:t,value:n}=e;if(!t){if(!n)throw new Error("Unexpected: no Docusaurus route context found");if(!("plugin"in n))throw new Error("Unexpected: Docusaurus topmost route context has no `plugin` attribute");return n}const a={...t.data,...n?.data};return{plugin:t.plugin,data:a}}({parent:r,value:n})),[r,n]);return(0,o.jsx)(i.Provider,{value:s,children:t})}},6351:(e,t,n)=>{"use strict";n.d(t,{VQ:()=>f,g1:()=>b});var a=n(6540),o=n(6942),i=n(4332),r=n(3115),s=n(8749),c=n(6849),l=n(4848);const d=e=>`docs-preferred-version-${e}`,u={save:(e,t,n)=>{(0,s.Wf)(d(e),{persistence:t}).set(n)},read:(e,t)=>(0,s.Wf)(d(e),{persistence:t}).get(),clear:(e,t)=>{(0,s.Wf)(d(e),{persistence:t}).del()}},p=e=>Object.fromEntries(e.map((e=>[e,{preferredVersionName:null}])));const h=a.createContext(null);function y(){const e=(0,o.Gy)(),t=(0,r.p)().docs.versionPersistence,n=(0,a.useMemo)((()=>Object.keys(e)),[e]),[i,s]=(0,a.useState)((()=>p(n)));(0,a.useEffect)((()=>{s(function(e){let{pluginIds:t,versionPersistence:n,allDocsData:a}=e;function o(e){const t=u.read(e,n);return a[e].versions.some((e=>e.name===t))?{preferredVersionName:t}:(u.clear(e,n),{preferredVersionName:null})}return Object.fromEntries(t.map((e=>[e,o(e)])))}({allDocsData:e,versionPersistence:t,pluginIds:n}))}),[e,t,n]);return[i,(0,a.useMemo)((()=>({savePreferredVersion:function(e,n){u.save(e,t,n),s((t=>({...t,[e]:{preferredVersionName:n}})))}})),[t])]}function g(e){let{children:t}=e;const n=y();return(0,l.jsx)(h.Provider,{value:n,children:t})}function f(e){let{children:t}=e;return(0,l.jsx)(g,{children:t})}function m(){const e=(0,a.useContext)(h);if(!e)throw new c.dV("DocsPreferredVersionContextProvider");return e}function b(e){void 0===e&&(e=i.W);const t=(0,o.ht)(e),[n,r]=m(),{preferredVersionName:s}=n[e];return{preferredVersion:t.versions.find((e=>e.name===s))??null,savePreferredVersionName:(0,a.useCallback)((t=>{r.savePreferredVersion(e,t)}),[r,e])}}},2306:(e,t,n)=>{"use strict";n.d(t,{V:()=>c,t:()=>l});var a=n(6540),o=n(6849),i=n(4848);const r=Symbol("EmptyContext"),s=a.createContext(r);function c(e){let{children:t,name:n,items:o}=e;const r=(0,a.useMemo)((()=>n&&o?{name:n,items:o}:null),[n,o]);return(0,i.jsx)(s.Provider,{value:r,children:t})}function l(){const e=(0,a.useContext)(s);if(e===r)throw new o.dV("DocsSidebarProvider");return e}},3751:(e,t,n)=>{"use strict";n.d(t,{$S:()=>y,B5:()=>x,Nr:()=>h,OF:()=>P,QB:()=>k,Vd:()=>S,Y:()=>_,cC:()=>p,d1:()=>A,fW:()=>w,w8:()=>m});var a=n(6540),o=n(6347),i=n(2831),r=n(6942),s=n(214),c=n(1861),l=n(6351),d=n(1858),u=n(2306);function p(e){const t=(0,d.r)();if(!e)return;const n=t.docs[e];if(!n)throw new Error(`no version doc found by id=${e}`);return n}function h(e){return"link"!==e.type||e.unlisted?"category"===e.type?function(e){if(e.href&&!e.linkUnlisted)return e.href;for(const t of e.items){const e=h(t);if(e)return e}}(e):void 0:e.href}function y(){const{pathname:e}=(0,o.zy)(),t=(0,u.t)();if(!t)throw new Error("Unexpected: cant find current sidebar in context");const n=v({sidebarItems:t.items,pathname:e,onlyCategories:!0}).slice(-1)[0];if(!n)throw new Error(`${e} is not associated with a category. useCurrentSidebarCategory() should only be used on category index pages.`);return n}const g=(e,t)=>void 0!==e&&(0,s.ys)(e,t),f=(e,t)=>e.some((e=>m(e,t)));function m(e,t){return"link"===e.type?g(e.href,t):"category"===e.type&&(g(e.href,t)||f(e.items,t))}function b(e,t){switch(e.type){case"category":return m(e,t)||void 0!==e.href&&!e.linkUnlisted||e.items.some((e=>b(e,t)));case"link":return!e.unlisted||m(e,t);default:return!0}}function _(e,t){return(0,a.useMemo)((()=>e.filter((e=>b(e,t)))),[e,t])}function v(e){let{sidebarItems:t,pathname:n,onlyCategories:a=!1}=e;const o=[];return function e(t){for(const i of t)if("category"===i.type&&((0,s.ys)(i.href,n)||e(i.items))||"link"===i.type&&(0,s.ys)(i.href,n)){return a&&"category"!==i.type||o.unshift(i),!0}return!1}(t),o}function P(){const e=(0,u.t)(),{pathname:t}=(0,o.zy)(),n=(0,r.vT)()?.pluginData.breadcrumbs;return!1!==n&&e?v({sidebarItems:e.items,pathname:t}):null}function S(e){const{activeVersion:t}=(0,r.zK)(e),{preferredVersion:n}=(0,l.g1)(e),o=(0,r.r7)(e);return(0,a.useMemo)((()=>(0,c.sb)([t,n,o].filter(Boolean))),[t,n,o])}function w(e,t){const n=S(t);return(0,a.useMemo)((()=>{const t=n.flatMap((e=>e.sidebars?Object.entries(e.sidebars):[])),a=t.find((t=>t[0]===e));if(!a)throw new Error(`Can't find any sidebar with id "${e}" in version${n.length>1?"s":""} ${n.map((e=>e.name)).join(", ")}".\nAvailable sidebar ids are:\n- ${t.map((e=>e[0])).join("\n- ")}`);return a[1]}),[e,n])}function k(e,t){const n=S(t);return(0,a.useMemo)((()=>{const t=n.flatMap((e=>e.docs)),a=t.find((t=>t.id===e));if(!a){if(n.flatMap((e=>e.draftIds)).includes(e))return null;throw new Error(`Couldn't find any doc with id "${e}" in version${n.length>1?"s":""} "${n.map((e=>e.name)).join(", ")}".\nAvailable doc ids are:\n- ${(0,c.sb)(t.map((e=>e.id))).join("\n- ")}`)}return a}),[e,n])}function x(e){let{route:t}=e;const n=(0,o.zy)(),a=(0,d.r)(),r=t.routes,s=r.find((e=>(0,o.B6)(n.pathname,e)));if(!s)return null;const c=s.sidebar,l=c?a.docsSidebars[c]:void 0;return{docElement:(0,i.v)(r),sidebarName:c,sidebarItems:l}}function A(e){return e.filter((e=>!("category"===e.type||"link"===e.type)||!!h(e)))}},1858:(e,t,n)=>{"use strict";n.d(t,{n:()=>s,r:()=>c});var a=n(6540),o=n(6849),i=n(4848);const r=a.createContext(null);function s(e){let{children:t,version:n}=e;return(0,i.jsx)(r.Provider,{value:n,children:t})}function c(){const e=(0,a.useContext)(r);if(null===e)throw new o.dV("DocsVersionProvider");return e}},6942:(e,t,n)=>{"use strict";n.d(t,{zK:()=>g,vT:()=>p,Gy:()=>d,HW:()=>f,ht:()=>u,r7:()=>y,jh:()=>h});var a=n(6347),o=n(797),i=n(4332);function r(e,t){void 0===t&&(t={});const n=function(){const{globalData:e}=(0,o.A)();return e}()[e];if(!n&&t.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin.`);return n}const s=e=>e.versions.find((e=>e.isLast));function c(e,t){const n=function(e,t){return[...e.versions].sort(((e,t)=>e.path===t.path?0:e.path.includes(t.path)?-1:t.path.includes(e.path)?1:0)).find((e=>!!(0,a.B6)(t,{path:e.path,exact:!1,strict:!1})))}(e,t),o=n?.docs.find((e=>!!(0,a.B6)(t,{path:e.path,exact:!0,strict:!1})));return{activeVersion:n,activeDoc:o,alternateDocVersions:o?function(t){const n={};return e.versions.forEach((e=>{e.docs.forEach((a=>{a.id===t&&(n[e.name]=a)}))})),n}(o.id):{}}}const l={},d=()=>r("docusaurus-plugin-content-docs")??l,u=e=>{try{return function(e,t,n){void 0===t&&(t=i.W),void 0===n&&(n={});const a=r(e),o=a?.[t];if(!o&&n.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin with id "${t}".`);return o}("docusaurus-plugin-content-docs",e,{failfast:!0})}catch(t){throw new Error("You are using a feature of the Docusaurus docs plugin, but this plugin does not seem to be enabled"+("Default"===e?"":` (pluginId=${e}`),{cause:t})}};function p(e){void 0===e&&(e={});const t=d(),{pathname:n}=(0,a.zy)();return function(e,t,n){void 0===n&&(n={});const o=Object.entries(e).sort(((e,t)=>t[1].path.localeCompare(e[1].path))).find((e=>{let[,n]=e;return!!(0,a.B6)(t,{path:n.path,exact:!1,strict:!1})})),i=o?{pluginId:o[0],pluginData:o[1]}:void 0;if(!i&&n.failfast)throw new Error(`Can't find active docs plugin for "${t}" pathname, while it was expected to be found. Maybe you tried to use a docs feature that can only be used on a docs-related page? Existing docs plugin paths are: ${Object.values(e).map((e=>e.path)).join(", ")}`);return i}(t,n,e)}function h(e){return u(e).versions}function y(e){const t=u(e);return s(t)}function g(e){const t=u(e),{pathname:n}=(0,a.zy)();return c(t,n)}function f(e){const t=u(e),{pathname:n}=(0,a.zy)();return function(e,t){const n=s(e);return{latestDocSuggestion:c(e,t).alternateDocVersions[n.name],latestVersionSuggestion:n}}(t,n)}},8867:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>i});var a=n(5947),o=n.n(a);o().configure({showSpinner:!1});const i={onRouteUpdate(e){let{location:t,previousLocation:n}=e;if(n&&t.pathname!==n.pathname){const e=window.setTimeout((()=>{o().start()}),200);return()=>window.clearTimeout(e)}},onRouteDidUpdate(){o().done()}}},7264:(e,t,n)=>{"use strict";var a=n(1765),o=n(4784);!function(e){const{themeConfig:{prism:t}}=o.default,{additionalLanguages:a}=t,i=globalThis.Prism;globalThis.Prism=e,a.forEach((e=>{"php"===e&&n(9700),n(8692)(`./prism-${e}`)})),delete globalThis.Prism,void 0!==i&&(globalThis.Prism=e)}(a.My)},9303:(e,t,n)=>{"use strict";n.d(t,{A:()=>d});n(6540);var a=n(4164),o=n(539),i=n(3115),r=n(6289),s=n(5246);const c={anchorWithStickyNavbar:"anchorWithStickyNavbar_LWe7",anchorWithHideOnScrollNavbar:"anchorWithHideOnScrollNavbar_WYt5"};var l=n(4848);function d(e){let{as:t,id:n,...d}=e;const u=(0,s.A)(),{navbar:{hideOnScroll:p}}=(0,i.p)();if("h1"===t||!n)return(0,l.jsx)(t,{...d,id:void 0});u.collectAnchor(n);const h=(0,o.T)({id:"theme.common.headingLinkTitle",message:"Direct link to {heading}",description:"Title for link to heading"},{heading:"string"==typeof d.children?d.children:n});return(0,l.jsxs)(t,{...d,className:(0,a.A)("anchor",p?c.anchorWithHideOnScrollNavbar:c.anchorWithStickyNavbar,d.className),id:n,children:[d.children,(0,l.jsx)(r.A,{className:"hash-link",to:`#${n}`,"aria-label":h,title:h,children:"\u200b"})]})}},5891:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});n(6540);const a={iconExternalLink:"iconExternalLink_nPIU"};var o=n(4848);function i(e){let{width:t=13.5,height:n=13.5}=e;return(0,o.jsx)("svg",{width:t,height:n,"aria-hidden":"true",viewBox:"0 0 24 24",className:a.iconExternalLink,children:(0,o.jsx)("path",{fill:"currentColor",d:"M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"})})}},1410:(e,t,n)=>{"use strict";n.d(t,{A:()=>ht});var a=n(6540),o=n(4164),i=n(4023),r=n(1082),s=n(6347),c=n(539),l=n(7685),d=n(4848);const u="__docusaurus_skipToContent_fallback";function p(e){e.setAttribute("tabindex","-1"),e.focus(),e.removeAttribute("tabindex")}function h(){const e=(0,a.useRef)(null),{action:t}=(0,s.W6)(),n=(0,a.useCallback)((e=>{e.preventDefault();const t=document.querySelector("main:first-of-type")??document.getElementById(u);t&&p(t)}),[]);return(0,l.$)((n=>{let{location:a}=n;e.current&&!a.hash&&"PUSH"===t&&p(e.current)})),{containerRef:e,onClick:n}}const y=(0,c.T)({id:"theme.common.skipToMainContent",description:"The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation",message:"Skip to main content"});function g(e){const t=e.children??y,{containerRef:n,onClick:a}=h();return(0,d.jsx)("div",{ref:n,role:"region","aria-label":y,children:(0,d.jsx)("a",{...e,href:`#${u}`,onClick:a,children:t})})}var f=n(204),m=n(7788);const b={skipToContent:"skipToContent_fXgn"};function _(){return(0,d.jsx)(g,{className:b.skipToContent})}var v=n(3115),P=n(3380);function S(e){let{width:t=21,height:n=21,color:a="currentColor",strokeWidth:o=1.2,className:i,...r}=e;return(0,d.jsx)("svg",{viewBox:"0 0 15 15",width:t,height:n,...r,children:(0,d.jsx)("g",{stroke:a,strokeWidth:o,children:(0,d.jsx)("path",{d:"M.75.75l13.5 13.5M14.25.75L.75 14.25"})})})}const w={closeButton:"closeButton_CVFx"};function k(e){return(0,d.jsx)("button",{type:"button","aria-label":(0,c.T)({id:"theme.AnnouncementBar.closeButtonAriaLabel",message:"Close",description:"The ARIA label for close button of announcement bar"}),...e,className:(0,o.A)("clean-btn close",w.closeButton,e.className),children:(0,d.jsx)(S,{width:14,height:14,strokeWidth:3.1})})}const x={content:"content_knG7"};function A(e){const{announcementBar:t}=(0,v.p)(),{content:n}=t;return(0,d.jsx)("div",{...e,className:(0,o.A)(x.content,e.className),dangerouslySetInnerHTML:{__html:n}})}const E={announcementBar:"announcementBar_mb4j",announcementBarPlaceholder:"announcementBarPlaceholder_vyr4",announcementBarClose:"announcementBarClose_gvF7",announcementBarContent:"announcementBarContent_xLdY"};function T(){const{announcementBar:e}=(0,v.p)(),{isActive:t,close:n}=(0,P.M)();if(!t)return null;const{backgroundColor:a,textColor:o,isCloseable:i}=e;return(0,d.jsxs)("div",{className:E.announcementBar,style:{backgroundColor:a,color:o},role:"banner",children:[i&&(0,d.jsx)("div",{className:E.announcementBarPlaceholder}),(0,d.jsx)(A,{className:E.announcementBarContent}),i&&(0,d.jsx)(k,{onClick:n,className:E.announcementBarClose})]})}var C=n(4635),D=n(5627);var O=n(6849),F=n(3065);const R=a.createContext(null);function N(e){let{children:t}=e;const n=function(){const e=(0,C.M)(),t=(0,F.YL)(),[n,o]=(0,a.useState)(!1),i=null!==t.component,r=(0,O.ZC)(i);return(0,a.useEffect)((()=>{i&&!r&&o(!0)}),[i,r]),(0,a.useEffect)((()=>{i?e.shown||o(!0):o(!1)}),[e.shown,i]),(0,a.useMemo)((()=>[n,o]),[n])}();return(0,d.jsx)(R.Provider,{value:n,children:t})}function j(e){if(e.component){const t=e.component;return(0,d.jsx)(t,{...e.props})}}function M(){const e=(0,a.useContext)(R);if(!e)throw new O.dV("NavbarSecondaryMenuDisplayProvider");const[t,n]=e,o=(0,a.useCallback)((()=>n(!1)),[n]),i=(0,F.YL)();return(0,a.useMemo)((()=>({shown:t,hide:o,content:j(i)})),[o,i,t])}function L(e){let{header:t,primaryMenu:n,secondaryMenu:a}=e;const{shown:i}=M();return(0,d.jsxs)("div",{className:"navbar-sidebar",children:[t,(0,d.jsxs)("div",{className:(0,o.A)("navbar-sidebar__items",{"navbar-sidebar__items--show-secondary":i}),children:[(0,d.jsx)("div",{className:"navbar-sidebar__item menu",children:n}),(0,d.jsx)("div",{className:"navbar-sidebar__item menu",children:a})]})]})}var I=n(8532),B=n(9136);function z(e){return(0,d.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,d.jsx)("path",{fill:"currentColor",d:"M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"})})}function U(e){return(0,d.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,d.jsx)("path",{fill:"currentColor",d:"M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"})})}const $={toggle:"toggle_vylO",toggleButton:"toggleButton_gllP",darkToggleIcon:"darkToggleIcon_wfgR",lightToggleIcon:"lightToggleIcon_pyhR",toggleButtonDisabled:"toggleButtonDisabled_aARS"};function q(e){let{className:t,buttonClassName:n,value:a,onChange:i}=e;const r=(0,B.A)(),s=(0,c.T)({message:"Switch between dark and light mode (currently {mode})",id:"theme.colorToggle.ariaLabel",description:"The ARIA label for the navbar color mode toggle"},{mode:"dark"===a?(0,c.T)({message:"dark mode",id:"theme.colorToggle.ariaLabel.mode.dark",description:"The name for the dark color mode"}):(0,c.T)({message:"light mode",id:"theme.colorToggle.ariaLabel.mode.light",description:"The name for the light color mode"})});return(0,d.jsx)("div",{className:(0,o.A)($.toggle,t),children:(0,d.jsxs)("button",{className:(0,o.A)("clean-btn",$.toggleButton,!r&&$.toggleButtonDisabled,n),type:"button",onClick:()=>i("dark"===a?"light":"dark"),disabled:!r,title:s,"aria-label":s,"aria-live":"polite","aria-pressed":"dark"===a?"true":"false",children:[(0,d.jsx)(z,{className:(0,o.A)($.toggleIcon,$.lightToggleIcon)}),(0,d.jsx)(U,{className:(0,o.A)($.toggleIcon,$.darkToggleIcon)})]})})}const V=a.memo(q),H={darkNavbarColorModeToggle:"darkNavbarColorModeToggle_X3D1"};function G(e){let{className:t}=e;const n=(0,v.p)().navbar.style,a=(0,v.p)().colorMode.disableSwitch,{colorMode:o,setColorMode:i}=(0,I.G)();return a?null:(0,d.jsx)(V,{className:t,buttonClassName:"dark"===n?H.darkNavbarColorModeToggle:void 0,value:o,onChange:i})}var W=n(2862);function K(){return(0,d.jsx)(W.A,{className:"navbar__brand",imageClassName:"navbar__logo",titleClassName:"navbar__title text--truncate"})}function Q(){const e=(0,C.M)();return(0,d.jsx)("button",{type:"button","aria-label":(0,c.T)({id:"theme.docs.sidebar.closeSidebarButtonAriaLabel",message:"Close navigation bar",description:"The ARIA label for close button of mobile sidebar"}),className:"clean-btn navbar-sidebar__close",onClick:()=>e.toggle(),children:(0,d.jsx)(S,{color:"var(--ifm-color-emphasis-600)"})})}function Y(){return(0,d.jsxs)("div",{className:"navbar-sidebar__brand",children:[(0,d.jsx)(K,{}),(0,d.jsx)(G,{className:"margin-right--md"}),(0,d.jsx)(Q,{})]})}var X=n(6289),J=n(9030),Z=n(2887);function ee(e,t){return void 0!==e&&void 0!==t&&new RegExp(e,"gi").test(t)}var te=n(5891);function ne(e){let{activeBasePath:t,activeBaseRegex:n,to:a,href:o,label:i,html:r,isDropdownLink:s,prependBaseUrlToHref:c,...l}=e;const u=(0,J.Ay)(a),p=(0,J.Ay)(t),h=(0,J.Ay)(o,{forcePrependBaseUrl:!0}),y=i&&o&&!(0,Z.A)(o),g=r?{dangerouslySetInnerHTML:{__html:r}}:{children:(0,d.jsxs)(d.Fragment,{children:[i,y&&(0,d.jsx)(te.A,{...s&&{width:12,height:12}})]})};return o?(0,d.jsx)(X.A,{href:c?h:o,...l,...g}):(0,d.jsx)(X.A,{to:u,isNavLink:!0,...(t||n)&&{isActive:(e,t)=>n?ee(n,t.pathname):t.pathname.startsWith(p)},...l,...g})}function ae(e){let{className:t,isDropdownItem:n=!1,...a}=e;const i=(0,d.jsx)(ne,{className:(0,o.A)(n?"dropdown__link":"navbar__item navbar__link",t),isDropdownLink:n,...a});return n?(0,d.jsx)("li",{children:i}):i}function oe(e){let{className:t,isDropdownItem:n,...a}=e;return(0,d.jsx)("li",{className:"menu__list-item",children:(0,d.jsx)(ne,{className:(0,o.A)("menu__link",t),...a})})}function ie(e){let{mobile:t=!1,position:n,...a}=e;const o=t?oe:ae;return(0,d.jsx)(o,{...a,activeClassName:a.activeClassName??(t?"menu__link--active":"navbar__link--active")})}var re=n(3535),se=n(214),ce=n(797);const le="dropdownNavbarItemMobile_S0Fm";function de(e,t){return e.some((e=>function(e,t){return!!(0,se.ys)(e.to,t)||!!ee(e.activeBaseRegex,t)||!(!e.activeBasePath||!t.startsWith(e.activeBasePath))}(e,t)))}function ue(e){let{items:t,position:n,className:i,onClick:r,...s}=e;const c=(0,a.useRef)(null),[l,u]=(0,a.useState)(!1);return(0,a.useEffect)((()=>{const e=e=>{c.current&&!c.current.contains(e.target)&&u(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),document.addEventListener("focusin",e),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),document.removeEventListener("focusin",e)}}),[c]),(0,d.jsxs)("div",{ref:c,className:(0,o.A)("navbar__item","dropdown","dropdown--hoverable",{"dropdown--right":"right"===n,"dropdown--show":l}),children:[(0,d.jsx)(ne,{"aria-haspopup":"true","aria-expanded":l,role:"button",href:s.to?void 0:"#",className:(0,o.A)("navbar__link",i),...s,onClick:s.to?void 0:e=>e.preventDefault(),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),u(!l))},children:s.children??s.label}),(0,d.jsx)("ul",{className:"dropdown__menu",children:t.map(((e,t)=>(0,a.createElement)(xe,{isDropdownItem:!0,activeClassName:"dropdown__link--active",...e,key:t})))})]})}function pe(e){let{items:t,className:n,position:i,onClick:r,...c}=e;const l=function(){const{siteConfig:{baseUrl:e}}=(0,ce.A)(),{pathname:t}=(0,s.zy)();return t.replace(e,"/")}(),u=de(t,l),{collapsed:p,toggleCollapsed:h,setCollapsed:y}=(0,re.u)({initialState:()=>!u});return(0,a.useEffect)((()=>{u&&y(!u)}),[l,u,y]),(0,d.jsxs)("li",{className:(0,o.A)("menu__list-item",{"menu__list-item--collapsed":p}),children:[(0,d.jsx)(ne,{role:"button",className:(0,o.A)(le,"menu__link menu__link--sublist menu__link--sublist-caret",n),...c,onClick:e=>{e.preventDefault(),h()},children:c.children??c.label}),(0,d.jsx)(re.N,{lazy:!0,as:"ul",className:"menu__list",collapsed:p,children:t.map(((e,t)=>(0,a.createElement)(xe,{mobile:!0,isDropdownItem:!0,onClick:r,activeClassName:"menu__link--active",...e,key:t})))})]})}function he(e){let{mobile:t=!1,...n}=e;const a=t?pe:ue;return(0,d.jsx)(a,{...n})}var ye=n(7976);function ge(e){let{width:t=20,height:n=20,...a}=e;return(0,d.jsx)("svg",{viewBox:"0 0 24 24",width:t,height:n,"aria-hidden":!0,...a,children:(0,d.jsx)("path",{fill:"currentColor",d:"M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"})})}const fe="iconLanguage_nlXk";var me=n(205);const be={navbarSearchContainer:"navbarSearchContainer_Bca1"};function _e(e){let{children:t,className:n}=e;return(0,d.jsx)("div",{className:(0,o.A)(n,be.navbarSearchContainer),children:t})}var ve=n(6942),Pe=n(3751);var Se=n(6351);function we(e,t){return t.alternateDocVersions[e.name]??function(e){return e.docs.find((t=>t.id===e.mainDocId))}(e)}const ke={default:ie,localeDropdown:function(e){let{mobile:t,dropdownItemsBefore:n,dropdownItemsAfter:a,queryString:o="",...i}=e;const{i18n:{currentLocale:r,locales:l,localeConfigs:u}}=(0,ce.A)(),p=(0,ye.o)(),{search:h,hash:y}=(0,s.zy)(),g=[...n,...l.map((e=>{const n=`${`pathname://${p.createUrl({locale:e,fullyQualified:!1})}`}${h}${y}${o}`;return{label:u[e].label,lang:u[e].htmlLang,to:n,target:"_self",autoAddBaseUrl:!1,className:e===r?t?"menu__link--active":"dropdown__link--active":""}})),...a],f=t?(0,c.T)({message:"Languages",id:"theme.navbar.mobileLanguageDropdown.label",description:"The label for the mobile language switcher dropdown"}):u[r].label;return(0,d.jsx)(he,{...i,mobile:t,label:(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(ge,{className:fe}),f]}),items:g})},search:function(e){let{mobile:t,className:n}=e;return t?null:(0,d.jsx)(_e,{className:n,children:(0,d.jsx)(me.A,{})})},dropdown:he,html:function(e){let{value:t,className:n,mobile:a=!1,isDropdownItem:i=!1}=e;const r=i?"li":"div";return(0,d.jsx)(r,{className:(0,o.A)({navbar__item:!a&&!i,"menu__list-item":a},n),dangerouslySetInnerHTML:{__html:t}})},doc:function(e){let{docId:t,label:n,docsPluginId:a,...o}=e;const{activeDoc:i}=(0,ve.zK)(a),r=(0,Pe.QB)(t,a),s=i?.path===r?.path;return null===r||r.unlisted&&!s?null:(0,d.jsx)(ie,{exact:!0,...o,isActive:()=>s||!!i?.sidebar&&i.sidebar===r.sidebar,label:n??r.id,to:r.path})},docSidebar:function(e){let{sidebarId:t,label:n,docsPluginId:a,...o}=e;const{activeDoc:i}=(0,ve.zK)(a),r=(0,Pe.fW)(t,a).link;if(!r)throw new Error(`DocSidebarNavbarItem: Sidebar with ID "${t}" doesn't have anything to be linked to.`);return(0,d.jsx)(ie,{exact:!0,...o,isActive:()=>i?.sidebar===t,label:n??r.label,to:r.path})},docsVersion:function(e){let{label:t,to:n,docsPluginId:a,...o}=e;const i=(0,Pe.Vd)(a)[0],r=t??i.label,s=n??(e=>e.docs.find((t=>t.id===e.mainDocId)))(i).path;return(0,d.jsx)(ie,{...o,label:r,to:s})},docsVersionDropdown:function(e){let{mobile:t,docsPluginId:n,dropdownActiveClassDisabled:a,dropdownItemsBefore:o,dropdownItemsAfter:i,...r}=e;const{search:l,hash:u}=(0,s.zy)(),p=(0,ve.zK)(n),h=(0,ve.jh)(n),{savePreferredVersionName:y}=(0,Se.g1)(n),g=[...o,...h.map((function(e){const t=we(e,p);return{label:e.label,to:`${t.path}${l}${u}`,isActive:()=>e===p.activeVersion,onClick:()=>y(e.name)}})),...i],f=(0,Pe.Vd)(n)[0],m=t&&g.length>1?(0,c.T)({id:"theme.navbar.mobileVersionsDropdown.label",message:"Versions",description:"The label for the navbar versions dropdown on mobile view"}):f.label,b=t&&g.length>1?void 0:we(f,p).path;return g.length<=1?(0,d.jsx)(ie,{...r,mobile:t,label:m,to:b,isActive:a?()=>!1:void 0}):(0,d.jsx)(he,{...r,mobile:t,label:m,to:b,items:g,isActive:a?()=>!1:void 0})}};function xe(e){let{type:t,...n}=e;const a=function(e,t){return e&&"default"!==e?e:"items"in t?"dropdown":"default"}(t,n),o=ke[a];if(!o)throw new Error(`No NavbarItem component found for type "${t}".`);return(0,d.jsx)(o,{...n})}function Ae(){const e=(0,C.M)(),t=(0,v.p)().navbar.items;return(0,d.jsx)("ul",{className:"menu__list",children:t.map(((t,n)=>(0,a.createElement)(xe,{mobile:!0,...t,onClick:()=>e.toggle(),key:n})))})}function Ee(e){return(0,d.jsx)("button",{...e,type:"button",className:"clean-btn navbar-sidebar__back",children:(0,d.jsx)(c.A,{id:"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel",description:"The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)",children:"\u2190 Back to main menu"})})}function Te(){const e=0===(0,v.p)().navbar.items.length,t=M();return(0,d.jsxs)(d.Fragment,{children:[!e&&(0,d.jsx)(Ee,{onClick:()=>t.hide()}),t.content]})}function Ce(){const e=(0,C.M)();var t;return void 0===(t=e.shown)&&(t=!0),(0,a.useEffect)((()=>(document.body.style.overflow=t?"hidden":"visible",()=>{document.body.style.overflow="visible"})),[t]),e.shouldRender?(0,d.jsx)(L,{header:(0,d.jsx)(Y,{}),primaryMenu:(0,d.jsx)(Ae,{}),secondaryMenu:(0,d.jsx)(Te,{})}):null}const De={navbarHideable:"navbarHideable_m1mJ",navbarHidden:"navbarHidden_jGov"};function Oe(e){return(0,d.jsx)("div",{role:"presentation",...e,className:(0,o.A)("navbar-sidebar__backdrop",e.className)})}function Fe(e){let{children:t}=e;const{navbar:{hideOnScroll:n,style:i}}=(0,v.p)(),r=(0,C.M)(),{navbarRef:s,isNavbarVisible:u}=function(e){const[t,n]=(0,a.useState)(e),o=(0,a.useRef)(!1),i=(0,a.useRef)(0),r=(0,a.useCallback)((e=>{null!==e&&(i.current=e.getBoundingClientRect().height)}),[]);return(0,D.Mq)(((t,a)=>{let{scrollY:r}=t;if(!e)return;if(r=s?n(!1):r+l{if(!e)return;const a=t.location.hash;if(a?document.getElementById(a.substring(1)):void 0)return o.current=!0,void n(!1);n(!0)})),{navbarRef:r,isNavbarVisible:t}}(n);return(0,d.jsxs)("nav",{ref:s,"aria-label":(0,c.T)({id:"theme.NavBar.navAriaLabel",message:"Main",description:"The ARIA label for the main navigation"}),className:(0,o.A)("navbar","navbar--fixed-top",n&&[De.navbarHideable,!u&&De.navbarHidden],{"navbar--dark":"dark"===i,"navbar--primary":"primary"===i,"navbar-sidebar--show":r.shown}),children:[t,(0,d.jsx)(Oe,{onClick:r.toggle}),(0,d.jsx)(Ce,{})]})}var Re=n(99);const Ne={errorBoundaryError:"errorBoundaryError_a6uf",errorBoundaryFallback:"errorBoundaryFallback_VBag"};function je(e){return(0,d.jsx)("button",{type:"button",...e,children:(0,d.jsx)(c.A,{id:"theme.ErrorPageContent.tryAgain",description:"The label of the button to try again rendering when the React error boundary captures an error",children:"Try again"})})}function Me(e){let{error:t}=e;const n=(0,Re.rA)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,d.jsx)("p",{className:Ne.errorBoundaryError,children:n})}class Le extends a.Component{componentDidCatch(e,t){throw this.props.onError(e,t)}render(){return this.props.children}}const Ie="right";function Be(e){let{width:t=30,height:n=30,className:a,...o}=e;return(0,d.jsx)("svg",{className:a,width:t,height:n,viewBox:"0 0 30 30","aria-hidden":"true",...o,children:(0,d.jsx)("path",{stroke:"currentColor",strokeLinecap:"round",strokeMiterlimit:"10",strokeWidth:"2",d:"M4 7h22M4 15h22M4 23h22"})})}function ze(){const{toggle:e,shown:t}=(0,C.M)();return(0,d.jsx)("button",{onClick:e,"aria-label":(0,c.T)({id:"theme.docs.sidebar.toggleSidebarButtonAriaLabel",message:"Toggle navigation bar",description:"The ARIA label for hamburger menu button of mobile navigation"}),"aria-expanded":t,className:"navbar__toggle clean-btn",type:"button",children:(0,d.jsx)(Be,{})})}const Ue={colorModeToggle:"colorModeToggle_DEke"};function $e(e){let{items:t}=e;return(0,d.jsx)(d.Fragment,{children:t.map(((e,t)=>(0,d.jsx)(Le,{onError:t=>new Error(`A theme navbar item failed to render.\nPlease double-check the following navbar item (themeConfig.navbar.items) of your Docusaurus config:\n${JSON.stringify(e,null,2)}`,{cause:t}),children:(0,d.jsx)(xe,{...e})},t)))})}function qe(e){let{left:t,right:n}=e;return(0,d.jsxs)("div",{className:"navbar__inner",children:[(0,d.jsx)("div",{className:"navbar__items",children:t}),(0,d.jsx)("div",{className:"navbar__items navbar__items--right",children:n})]})}function Ve(){const e=(0,C.M)(),t=(0,v.p)().navbar.items,[n,a]=function(e){function t(e){return"left"===(e.position??Ie)}return[e.filter(t),e.filter((e=>!t(e)))]}(t),o=t.find((e=>"search"===e.type));return(0,d.jsx)(qe,{left:(0,d.jsxs)(d.Fragment,{children:[!e.disabled&&(0,d.jsx)(ze,{}),(0,d.jsx)(K,{}),(0,d.jsx)($e,{items:n})]}),right:(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)($e,{items:a}),(0,d.jsx)(G,{className:Ue.colorModeToggle}),!o&&(0,d.jsx)(_e,{children:(0,d.jsx)(me.A,{})})]})})}function He(){return(0,d.jsx)(Fe,{children:(0,d.jsx)(Ve,{})})}function Ge(e){let{item:t}=e;const{to:n,href:a,label:i,prependBaseUrlToHref:r,className:s,...c}=t,l=(0,J.Ay)(n),u=(0,J.Ay)(a,{forcePrependBaseUrl:!0});return(0,d.jsxs)(X.A,{className:(0,o.A)("footer__link-item",s),...a?{href:r?u:a}:{to:l},...c,children:[i,a&&!(0,Z.A)(a)&&(0,d.jsx)(te.A,{})]})}function We(e){let{item:t}=e;return t.html?(0,d.jsx)("li",{className:(0,o.A)("footer__item",t.className),dangerouslySetInnerHTML:{__html:t.html}}):(0,d.jsx)("li",{className:"footer__item",children:(0,d.jsx)(Ge,{item:t})},t.href??t.to)}function Ke(e){let{column:t}=e;return(0,d.jsxs)("div",{className:(0,o.A)("col footer__col",t.className),children:[(0,d.jsx)("div",{className:"footer__title",children:t.title}),(0,d.jsx)("ul",{className:"footer__items clean-list",children:t.items.map(((e,t)=>(0,d.jsx)(We,{item:e},t)))})]})}function Qe(e){let{columns:t}=e;return(0,d.jsx)("div",{className:"row footer__links",children:t.map(((e,t)=>(0,d.jsx)(Ke,{column:e},t)))})}function Ye(){return(0,d.jsx)("span",{className:"footer__link-separator",children:"\xb7"})}function Xe(e){let{item:t}=e;return t.html?(0,d.jsx)("span",{className:(0,o.A)("footer__link-item",t.className),dangerouslySetInnerHTML:{__html:t.html}}):(0,d.jsx)(Ge,{item:t})}function Je(e){let{links:t}=e;return(0,d.jsx)("div",{className:"footer__links text--center",children:(0,d.jsx)("div",{className:"footer__links",children:t.map(((e,n)=>(0,d.jsxs)(a.Fragment,{children:[(0,d.jsx)(Xe,{item:e}),t.length!==n+1&&(0,d.jsx)(Ye,{})]},n)))})})}function Ze(e){let{links:t}=e;return function(e){return"title"in e[0]}(t)?(0,d.jsx)(Qe,{columns:t}):(0,d.jsx)(Je,{links:t})}var et=n(9324);const tt="footerLogoLink_BH7S";function nt(e){let{logo:t}=e;const{withBaseUrl:n}=(0,J.hH)(),a={light:n(t.src),dark:n(t.srcDark??t.src)};return(0,d.jsx)(et.A,{className:(0,o.A)("footer__logo",t.className),alt:t.alt,sources:a,width:t.width,height:t.height,style:t.style})}function at(e){let{logo:t}=e;return t.href?(0,d.jsx)(X.A,{href:t.href,className:tt,target:t.target,children:(0,d.jsx)(nt,{logo:t})}):(0,d.jsx)(nt,{logo:t})}function ot(e){let{copyright:t}=e;return(0,d.jsx)("div",{className:"footer__copyright",dangerouslySetInnerHTML:{__html:t}})}function it(e){let{style:t,links:n,logo:a,copyright:i}=e;return(0,d.jsx)("footer",{className:(0,o.A)("footer",{"footer--dark":"dark"===t}),children:(0,d.jsxs)("div",{className:"container container-fluid",children:[n,(a||i)&&(0,d.jsxs)("div",{className:"footer__bottom text--center",children:[a&&(0,d.jsx)("div",{className:"margin-bottom--sm",children:a}),i]})]})})}function rt(){const{footer:e}=(0,v.p)();if(!e)return null;const{copyright:t,links:n,logo:a,style:o}=e;return(0,d.jsx)(it,{style:o,links:n&&n.length>0&&(0,d.jsx)(Ze,{links:n}),logo:a&&(0,d.jsx)(at,{logo:a}),copyright:t&&(0,d.jsx)(ot,{copyright:t})})}const st=a.memo(rt),ct=(0,O.fM)([I.a,P.o,D.Tv,Se.VQ,r.Jx,function(e){let{children:t}=e;return(0,d.jsx)(F.y_,{children:(0,d.jsx)(C.e,{children:(0,d.jsx)(N,{children:t})})})}]);function lt(e){let{children:t}=e;return(0,d.jsx)(ct,{children:t})}var dt=n(9303);function ut(e){let{error:t,tryAgain:n}=e;return(0,d.jsx)("main",{className:"container margin-vert--xl",children:(0,d.jsx)("div",{className:"row",children:(0,d.jsxs)("div",{className:"col col--6 col--offset-3",children:[(0,d.jsx)(dt.A,{as:"h1",className:"hero__title",children:(0,d.jsx)(c.A,{id:"theme.ErrorPageContent.title",description:"The title of the fallback page when the page crashed",children:"This page crashed."})}),(0,d.jsx)("div",{className:"margin-vert--lg",children:(0,d.jsx)(je,{onClick:n,className:"button button--primary shadow--lw"})}),(0,d.jsx)("hr",{}),(0,d.jsx)("div",{className:"margin-vert--md",children:(0,d.jsx)(Me,{error:t})})]})})})}const pt={mainWrapper:"mainWrapper_z2l0"};function ht(e){const{children:t,noFooter:n,wrapperClassName:a,title:s,description:c}=e;return(0,m.J)(),(0,d.jsxs)(lt,{children:[(0,d.jsx)(r.be,{title:s,description:c}),(0,d.jsx)(_,{}),(0,d.jsx)(T,{}),(0,d.jsx)(He,{}),(0,d.jsx)("div",{id:u,className:(0,o.A)(f.G.wrapper.main,pt.mainWrapper,a),children:(0,d.jsx)(i.A,{fallback:e=>(0,d.jsx)(ut,{...e}),children:t})}),!n&&(0,d.jsx)(st,{})]})}},2862:(e,t,n)=>{"use strict";n.d(t,{A:()=>d});n(6540);var a=n(6289),o=n(9030),i=n(797),r=n(3115),s=n(9324),c=n(4848);function l(e){let{logo:t,alt:n,imageClassName:a}=e;const i={light:(0,o.Ay)(t.src),dark:(0,o.Ay)(t.srcDark||t.src)},r=(0,c.jsx)(s.A,{className:t.className,sources:i,height:t.height,width:t.width,alt:n,style:t.style});return a?(0,c.jsx)("div",{className:a,children:r}):r}function d(e){const{siteConfig:{title:t}}=(0,i.A)(),{navbar:{title:n,logo:s}}=(0,r.p)(),{imageClassName:d,titleClassName:u,...p}=e,h=(0,o.Ay)(s?.href||"/"),y=n?"":t,g=s?.alt??y;return(0,c.jsxs)(a.A,{to:h,...p,...s?.target&&{target:s.target},children:[s&&(0,c.jsx)(l,{logo:s,alt:g,imageClassName:d}),null!=n&&(0,c.jsx)("b",{className:u,children:n})]})}},7220:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});n(6540);var a=n(7143),o=n(4848);function i(e){let{locale:t,version:n,tag:i}=e;const r=t;return(0,o.jsxs)(a.A,{children:[t&&(0,o.jsx)("meta",{name:"docusaurus_locale",content:t}),n&&(0,o.jsx)("meta",{name:"docusaurus_version",content:n}),i&&(0,o.jsx)("meta",{name:"docusaurus_tag",content:i}),r&&(0,o.jsx)("meta",{name:"docsearch:language",content:r}),n&&(0,o.jsx)("meta",{name:"docsearch:version",content:n}),i&&(0,o.jsx)("meta",{name:"docsearch:docusaurus_tag",content:i})]})}},9324:(e,t,n)=>{"use strict";n.d(t,{A:()=>d});var a=n(6540),o=n(4164),i=n(9136),r=n(8532);const s={themedComponent:"themedComponent_mlkZ","themedComponent--light":"themedComponent--light_NVdE","themedComponent--dark":"themedComponent--dark_xIcU"};var c=n(4848);function l(e){let{className:t,children:n}=e;const l=(0,i.A)(),{colorMode:d}=(0,r.G)();return(0,c.jsx)(c.Fragment,{children:(l?"dark"===d?["dark"]:["light"]:["light","dark"]).map((e=>{const i=n({theme:e,className:(0,o.A)(t,s.themedComponent,s[`themedComponent--${e}`])});return(0,c.jsx)(a.Fragment,{children:i},e)}))})}function d(e){const{sources:t,className:n,alt:a,...o}=e;return(0,c.jsx)(l,{className:n,children:e=>{let{theme:n,className:i}=e;return(0,c.jsx)("img",{src:t[n],alt:a,className:i,...o})}})}},3535:(e,t,n)=>{"use strict";n.d(t,{N:()=>m,u:()=>l});var a=n(6540),o=n(9136),i=n(372),r=n(4924),s=n(4848);const c="ease-in-out";function l(e){let{initialState:t}=e;const[n,o]=(0,a.useState)(t??!1),i=(0,a.useCallback)((()=>{o((e=>!e))}),[]);return{collapsed:n,setCollapsed:o,toggleCollapsed:i}}const d={display:"none",overflow:"hidden",height:"0px"},u={display:"block",overflow:"visible",height:"auto"};function p(e,t){const n=t?d:u;e.style.display=n.display,e.style.overflow=n.overflow,e.style.height=n.height}function h(e){let{collapsibleRef:t,collapsed:n,animation:o}=e;const i=(0,a.useRef)(!1);(0,a.useEffect)((()=>{const e=t.current;function a(){const t=e.scrollHeight,n=o?.duration??function(e){if((0,r.O)())return 1;const t=e/36;return Math.round(10*(4+15*t**.25+t/5))}(t);return{transition:`height ${n}ms ${o?.easing??c}`,height:`${t}px`}}function s(){const t=a();e.style.transition=t.transition,e.style.height=t.height}if(!i.current)return p(e,n),void(i.current=!0);return e.style.willChange="height",function(){const t=requestAnimationFrame((()=>{n?(s(),requestAnimationFrame((()=>{e.style.height=d.height,e.style.overflow=d.overflow}))):(e.style.display="block",requestAnimationFrame((()=>{s()})))}));return()=>cancelAnimationFrame(t)}()}),[t,n,o])}function y(e){let{collapsed:t,isBrowser:n}=e;if(!n)return t?d:u}function g(e){let{as:t="div",collapsed:n,children:i,animation:r,onCollapseTransitionEnd:c,className:l,disableSSRStyle:d}=e;const u=(0,o.A)(),g=(0,a.useRef)(null);return h({collapsibleRef:g,collapsed:n,animation:r}),(0,s.jsx)(t,{ref:g,style:d?void 0:y({collapsed:n,isBrowser:u}),onTransitionEnd:e=>{"height"===e.propertyName&&(p(g.current,n),c?.(n))},className:l,children:i})}function f(e){let{collapsed:t,...n}=e;const[o,r]=(0,a.useState)(!t),[c,l]=(0,a.useState)(t);return(0,i.A)((()=>{t||r(!0)}),[t]),(0,i.A)((()=>{o&&l(t)}),[o,t]),o?(0,s.jsx)(g,{...n,collapsed:c}):null}function m(e){let{lazy:t,...n}=e;const a=t?f:g;return(0,s.jsx)(a,{...n})}},3380:(e,t,n)=>{"use strict";n.d(t,{M:()=>g,o:()=>y});var a=n(6540),o=n(9136),i=n(8749),r=n(6849),s=n(3115),c=n(4848);const l=(0,i.Wf)("docusaurus.announcement.dismiss"),d=(0,i.Wf)("docusaurus.announcement.id"),u=()=>"true"===l.get(),p=e=>l.set(String(e)),h=a.createContext(null);function y(e){let{children:t}=e;const n=function(){const{announcementBar:e}=(0,s.p)(),t=(0,o.A)(),[n,i]=(0,a.useState)((()=>!!t&&u()));(0,a.useEffect)((()=>{i(u())}),[]);const r=(0,a.useCallback)((()=>{p(!0),i(!0)}),[]);return(0,a.useEffect)((()=>{if(!e)return;const{id:t}=e;let n=d.get();"annoucement-bar"===n&&(n="announcement-bar");const a=t!==n;d.set(t),a&&p(!1),!a&&u()||i(!1)}),[e]),(0,a.useMemo)((()=>({isActive:!!e&&!n,close:r})),[e,n,r])}();return(0,c.jsx)(h.Provider,{value:n,children:t})}function g(){const e=(0,a.useContext)(h);if(!e)throw new r.dV("AnnouncementBarProvider");return e}},8532:(e,t,n)=>{"use strict";n.d(t,{G:()=>m,a:()=>f});var a=n(6540),o=n(1934),i=n(6849),r=n(8749),s=n(3115),c=n(4848);const l=a.createContext(void 0),d="theme",u=(0,r.Wf)(d),p={light:"light",dark:"dark"},h=e=>e===p.dark?p.dark:p.light,y=e=>o.A.canUseDOM?h(document.documentElement.getAttribute("data-theme")):h(e),g=e=>{u.set(h(e))};function f(e){let{children:t}=e;const n=function(){const{colorMode:{defaultMode:e,disableSwitch:t,respectPrefersColorScheme:n}}=(0,s.p)(),[o,i]=(0,a.useState)(y(e));(0,a.useEffect)((()=>{t&&u.del()}),[t]);const r=(0,a.useCallback)((function(t,a){void 0===a&&(a={});const{persist:o=!0}=a;t?(i(t),o&&g(t)):(i(n?window.matchMedia("(prefers-color-scheme: dark)").matches?p.dark:p.light:e),u.del())}),[n,e]);(0,a.useEffect)((()=>{document.documentElement.setAttribute("data-theme",h(o))}),[o]),(0,a.useEffect)((()=>{if(t)return;const e=e=>{if(e.key!==d)return;const t=u.get();null!==t&&r(h(t))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)}),[t,r]);const c=(0,a.useRef)(!1);return(0,a.useEffect)((()=>{if(t&&!n)return;const e=window.matchMedia("(prefers-color-scheme: dark)"),a=()=>{window.matchMedia("print").matches||c.current?c.current=window.matchMedia("print").matches:r(null)};return e.addListener(a),()=>e.removeListener(a)}),[r,t,n]),(0,a.useMemo)((()=>({colorMode:o,setColorMode:r,get isDarkTheme(){return o===p.dark},setLightTheme(){r(p.light)},setDarkTheme(){r(p.dark)}})),[o,r])}();return(0,c.jsx)(l.Provider,{value:n,children:t})}function m(){const e=(0,a.useContext)(l);if(null==e)throw new i.dV("ColorModeProvider","Please see https://docusaurus.io/docs/api/themes/configuration#use-color-mode.");return e}},4635:(e,t,n)=>{"use strict";n.d(t,{e:()=>h,M:()=>y});var a=n(6540),o=n(3065),i=n(6682),r=n(6347),s=n(6849);function c(e){!function(e){const t=(0,r.W6)(),n=(0,s._q)(e);(0,a.useEffect)((()=>t.block(((e,t)=>n(e,t)))),[t,n])}(((t,n)=>{if("POP"===n)return e(t,n)}))}var l=n(3115),d=n(4848);const u=a.createContext(void 0);function p(){const e=function(){const e=(0,o.YL)(),{items:t}=(0,l.p)().navbar;return 0===t.length&&!e.component}(),t=(0,i.l)(),n=!e&&"mobile"===t,[r,s]=(0,a.useState)(!1);c((()=>{if(r)return s(!1),!1}));const d=(0,a.useCallback)((()=>{s((e=>!e))}),[]);return(0,a.useEffect)((()=>{"desktop"===t&&s(!1)}),[t]),(0,a.useMemo)((()=>({disabled:e,shouldRender:n,toggle:d,shown:r})),[e,n,d,r])}function h(e){let{children:t}=e;const n=p();return(0,d.jsx)(u.Provider,{value:n,children:t})}function y(){const e=a.useContext(u);if(void 0===e)throw new s.dV("NavbarMobileSidebarProvider");return e}},3065:(e,t,n)=>{"use strict";n.d(t,{GX:()=>l,YL:()=>c,y_:()=>s});var a=n(6540),o=n(6849),i=n(4848);const r=a.createContext(null);function s(e){let{children:t}=e;const n=(0,a.useState)({component:null,props:null});return(0,i.jsx)(r.Provider,{value:n,children:t})}function c(){const e=(0,a.useContext)(r);if(!e)throw new o.dV("NavbarSecondaryMenuContentProvider");return e[0]}function l(e){let{component:t,props:n}=e;const i=(0,a.useContext)(r);if(!i)throw new o.dV("NavbarSecondaryMenuContentProvider");const[,s]=i,c=(0,o.Be)(n);return(0,a.useEffect)((()=>{s({component:t,props:c})}),[s,t,c]),(0,a.useEffect)((()=>()=>s({component:null,props:null})),[s]),null}},7788:(e,t,n)=>{"use strict";n.d(t,{w:()=>o,J:()=>i});var a=n(6540);const o="navigation-with-keyboard";function i(){(0,a.useEffect)((()=>{function e(e){"keydown"===e.type&&"Tab"===e.key&&document.body.classList.add(o),"mousedown"===e.type&&document.body.classList.remove(o)}return document.addEventListener("keydown",e),document.addEventListener("mousedown",e),()=>{document.body.classList.remove(o),document.removeEventListener("keydown",e),document.removeEventListener("mousedown",e)}}),[])}},6682:(e,t,n)=>{"use strict";n.d(t,{l:()=>s});var a=n(6540),o=n(1934);const i={desktop:"desktop",mobile:"mobile",ssr:"ssr"},r=996;function s(e){let{desktopBreakpoint:t=r}=void 0===e?{}:e;const[n,s]=(0,a.useState)((()=>"ssr"));return(0,a.useEffect)((()=>{function e(){s(function(e){if(!o.A.canUseDOM)throw new Error("getWindowSize() should only be called after React hydration");return window.innerWidth>e?i.desktop:i.mobile}(t))}return e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}}),[t]),n}},204:(e,t,n)=>{"use strict";n.d(t,{G:()=>a});const a={page:{blogListPage:"blog-list-page",blogPostPage:"blog-post-page",blogTagsListPage:"blog-tags-list-page",blogTagPostListPage:"blog-tags-post-list-page",blogAuthorsListPage:"blog-authors-list-page",blogAuthorsPostsPage:"blog-authors-posts-page",docsDocPage:"docs-doc-page",docsTagsListPage:"docs-tags-list-page",docsTagDocListPage:"docs-tags-doc-list-page",mdxPage:"mdx-page"},wrapper:{main:"main-wrapper",blogPages:"blog-wrapper",docsPages:"docs-wrapper",mdxPages:"mdx-wrapper"},common:{editThisPage:"theme-edit-this-page",lastUpdated:"theme-last-updated",backToTopButton:"theme-back-to-top-button",codeBlock:"theme-code-block",admonition:"theme-admonition",unlistedBanner:"theme-unlisted-banner",draftBanner:"theme-draft-banner",admonitionType:e=>`theme-admonition-${e}`},layout:{},docs:{docVersionBanner:"theme-doc-version-banner",docVersionBadge:"theme-doc-version-badge",docBreadcrumbs:"theme-doc-breadcrumbs",docMarkdown:"theme-doc-markdown",docTocMobile:"theme-doc-toc-mobile",docTocDesktop:"theme-doc-toc-desktop",docFooter:"theme-doc-footer",docFooterTagsRow:"theme-doc-footer-tags-row",docFooterEditMetaRow:"theme-doc-footer-edit-meta-row",docSidebarContainer:"theme-doc-sidebar-container",docSidebarMenu:"theme-doc-sidebar-menu",docSidebarItemCategory:"theme-doc-sidebar-item-category",docSidebarItemLink:"theme-doc-sidebar-item-link",docSidebarItemCategoryLevel:e=>`theme-doc-sidebar-item-category-level-${e}`,docSidebarItemLinkLevel:e=>`theme-doc-sidebar-item-link-level-${e}`},blog:{blogFooterTagsRow:"theme-blog-footer-tags-row",blogFooterEditMetaRow:"theme-blog-footer-edit-meta-row"},pages:{pageFooterEditMetaRow:"theme-pages-footer-edit-meta-row"}}},4924:(e,t,n)=>{"use strict";function a(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}n.d(t,{O:()=>a})},1861:(e,t,n)=>{"use strict";function a(e){return Array.from(new Set(e))}function o(e,t){const n={};let a=0;for(const o of e){const e=t(o,a);n[e]??=[],n[e].push(o),a+=1}return n}n.d(t,{$z:()=>o,sb:()=>a})},1082:(e,t,n)=>{"use strict";n.d(t,{e3:()=>p,be:()=>d,Jx:()=>h});var a=n(6540),o=n(4164),i=n(7143),r=n(9062),s=n(9030),c=n(797);var l=n(4848);function d(e){let{title:t,description:n,keywords:a,image:o,children:r}=e;const d=function(e){const{siteConfig:t}=(0,c.A)(),{title:n,titleDelimiter:a}=t;return e?.trim().length?`${e.trim()} ${a} ${n}`:n}(t),{withBaseUrl:u}=(0,s.hH)(),p=o?u(o,{absolute:!0}):void 0;return(0,l.jsxs)(i.A,{children:[t&&(0,l.jsx)("title",{children:d}),t&&(0,l.jsx)("meta",{property:"og:title",content:d}),n&&(0,l.jsx)("meta",{name:"description",content:n}),n&&(0,l.jsx)("meta",{property:"og:description",content:n}),a&&(0,l.jsx)("meta",{name:"keywords",content:Array.isArray(a)?a.join(","):a}),p&&(0,l.jsx)("meta",{property:"og:image",content:p}),p&&(0,l.jsx)("meta",{name:"twitter:image",content:p}),r]})}const u=a.createContext(void 0);function p(e){let{className:t,children:n}=e;const r=a.useContext(u),s=(0,o.A)(r,t);return(0,l.jsxs)(u.Provider,{value:s,children:[(0,l.jsx)(i.A,{children:(0,l.jsx)("html",{className:s})}),n]})}function h(e){let{children:t}=e;const n=(0,r.A)(),a=`plugin-${n.plugin.name.replace(/docusaurus-(?:plugin|theme)-(?:content-)?/gi,"")}`;const i=`plugin-id-${n.plugin.id}`;return(0,l.jsx)(p,{className:(0,o.A)(a,i),children:t})}},6849:(e,t,n)=>{"use strict";n.d(t,{Be:()=>l,ZC:()=>s,_q:()=>r,dV:()=>c,fM:()=>d});var a=n(6540),o=n(372),i=n(4848);function r(e){const t=(0,a.useRef)(e);return(0,o.A)((()=>{t.current=e}),[e]),(0,a.useCallback)((function(){return t.current(...arguments)}),[])}function s(e){const t=(0,a.useRef)();return(0,o.A)((()=>{t.current=e})),t.current}class c extends Error{constructor(e,t){super(),this.name="ReactContextError",this.message=`Hook ${this.stack?.split("\n")[1]?.match(/at (?:\w+\.)?(?\w+)/)?.groups.name??""} is called outside the <${e}>. ${t??""}`}}function l(e){const t=Object.entries(e);return t.sort(((e,t)=>e[0].localeCompare(t[0]))),(0,a.useMemo)((()=>e),t.flat())}function d(e){return t=>{let{children:n}=t;return(0,i.jsx)(i.Fragment,{children:e.reduceRight(((e,t)=>(0,i.jsx)(t,{children:e})),n)})}}},214:(e,t,n)=>{"use strict";n.d(t,{Dt:()=>s,ys:()=>r});var a=n(6540),o=n(8912),i=n(797);function r(e,t){const n=e=>(!e||e.endsWith("/")?e:`${e}/`)?.toLowerCase();return n(e)===n(t)}function s(){const{baseUrl:e}=(0,i.A)().siteConfig;return(0,a.useMemo)((()=>function(e){let{baseUrl:t,routes:n}=e;function a(e){return e.path===t&&!0===e.exact}function o(e){return e.path===t&&!e.exact}return function e(t){if(0===t.length)return;return t.find(a)||e(t.filter(o).flatMap((e=>e.routes??[])))}(n)}({routes:o.A,baseUrl:e})),[e])}},5627:(e,t,n)=>{"use strict";n.d(t,{Mq:()=>p,Tv:()=>l,gk:()=>h});var a=n(6540),o=n(1934),i=n(9136),r=(n(372),n(6849)),s=n(4848);const c=a.createContext(void 0);function l(e){let{children:t}=e;const n=function(){const e=(0,a.useRef)(!0);return(0,a.useMemo)((()=>({scrollEventsEnabledRef:e,enableScrollEvents:()=>{e.current=!0},disableScrollEvents:()=>{e.current=!1}})),[])}();return(0,s.jsx)(c.Provider,{value:n,children:t})}function d(){const e=(0,a.useContext)(c);if(null==e)throw new r.dV("ScrollControllerProvider");return e}const u=()=>o.A.canUseDOM?{scrollX:window.pageXOffset,scrollY:window.pageYOffset}:null;function p(e,t){void 0===t&&(t=[]);const{scrollEventsEnabledRef:n}=d(),o=(0,a.useRef)(u()),i=(0,r._q)(e);(0,a.useEffect)((()=>{const e=()=>{if(!n.current)return;const e=u();i(e,o.current),o.current=e},t={passive:!0};return e(),window.addEventListener("scroll",e,t),()=>window.removeEventListener("scroll",e,t)}),[i,n,...t])}function h(){const e=(0,a.useRef)(null),t=(0,i.A)()&&"smooth"===getComputedStyle(document.documentElement).scrollBehavior;return{startScroll:n=>{e.current=t?function(e){return window.scrollTo({top:e,behavior:"smooth"}),()=>{}}(n):function(e){let t=null;const n=document.documentElement.scrollTop>e;return function a(){const o=document.documentElement.scrollTop;(n&&o>e||!n&&ot&&cancelAnimationFrame(t)}(n)},cancelScroll:()=>e.current?.()}}},8749:(e,t,n)=>{"use strict";n.d(t,{Wf:()=>l});n(6540);const a=JSON.parse('{"N":"localStorage","M":""}'),o=a.N;function i(e){let{key:t,oldValue:n,newValue:a,storage:o}=e;if(n===a)return;const i=document.createEvent("StorageEvent");i.initStorageEvent("storage",!1,!1,t,n,a,window.location.href,o),window.dispatchEvent(i)}function r(e){if(void 0===e&&(e=o),"undefined"==typeof window)throw new Error("Browser storage is not available on Node.js/Docusaurus SSR process.");if("none"===e)return null;try{return window[e]}catch(n){return t=n,s||(console.warn("Docusaurus browser storage is not available.\nPossible reasons: running Docusaurus in an iframe, in an incognito browser session, or using too strict browser privacy settings.",t),s=!0),null}var t}let s=!1;const c={get:()=>null,set:()=>{},del:()=>{},listen:()=>()=>{}};function l(e,t){const n=`${e}${a.M}`;if("undefined"==typeof window)return function(e){function t(){throw new Error(`Illegal storage API usage for storage key "${e}".\nDocusaurus storage APIs are not supposed to be called on the server-rendering process.\nPlease only call storage APIs in effects and event handlers.`)}return{get:t,set:t,del:t,listen:t}}(n);const o=r(t?.persistence);return null===o?c:{get:()=>{try{return o.getItem(n)}catch(e){return console.error(`Docusaurus storage error, can't get key=${n}`,e),null}},set:e=>{try{const t=o.getItem(n);o.setItem(n,e),i({key:n,oldValue:t,newValue:e,storage:o})}catch(t){console.error(`Docusaurus storage error, can't set ${n}=${e}`,t)}},del:()=>{try{const e=o.getItem(n);o.removeItem(n),i({key:n,oldValue:e,newValue:null,storage:o})}catch(e){console.error(`Docusaurus storage error, can't delete key=${n}`,e)}},listen:e=>{try{const t=t=>{t.storageArea===o&&t.key===n&&e(t)};return window.addEventListener("storage",t),()=>window.removeEventListener("storage",t)}catch(t){return console.error(`Docusaurus storage error, can't listen for changes of key=${n}`,t),()=>{}}}}}},7976:(e,t,n)=>{"use strict";n.d(t,{o:()=>r});var a=n(797),o=n(6347),i=n(99);function r(){const{siteConfig:{baseUrl:e,url:t,trailingSlash:n},i18n:{defaultLocale:r,currentLocale:s}}=(0,a.A)(),{pathname:c}=(0,o.zy)(),l=(0,i.Ks)(c,{trailingSlash:n,baseUrl:e}),d=s===r?e:e.replace(`/${s}/`,"/"),u=l.replace(e,"");return{createUrl:function(e){let{locale:n,fullyQualified:a}=e;return`${a?t:""}${function(e){return e===r?`${d}`:`${d}${e}/`}(n)}${u}`}}}},7685:(e,t,n)=>{"use strict";n.d(t,{$:()=>r});var a=n(6540),o=n(6347),i=n(6849);function r(e){const t=(0,o.zy)(),n=(0,i.ZC)(t),r=(0,i._q)(e);(0,a.useEffect)((()=>{n&&t!==n&&r({location:t,previousLocation:n})}),[r,t,n])}},3115:(e,t,n)=>{"use strict";n.d(t,{p:()=>o});var a=n(797);function o(){return(0,a.A)().siteConfig.themeConfig}},2562:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.addTrailingSlash=o,t.default=function(e,t){const{trailingSlash:n,baseUrl:a}=t;if(e.startsWith("#"))return e;if(void 0===n)return e;const[r]=e.split(/[#?]/),s="/"===r||r===a?r:(c=r,l=n,l?o(c):i(c));var c,l;return e.replace(r,s)},t.addLeadingSlash=function(e){return(0,a.addPrefix)(e,"/")},t.removeTrailingSlash=i;const a=n(7149);function o(e){return e.endsWith("/")?e:`${e}/`}function i(e){return(0,a.removeSuffix)(e,"/")}},2528:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=function e(t){if(t.cause)return[t,...e(t.cause)];return[t]}},99:(e,t,n)=>{"use strict";t.rA=t.Ks=t.LU=void 0;const a=n(1635);t.LU="__blog-post-container";var o=n(2562);Object.defineProperty(t,"Ks",{enumerable:!0,get:function(){return a.__importDefault(o).default}});var i=n(7149);var r=n(2528);Object.defineProperty(t,"rA",{enumerable:!0,get:function(){return r.getErrorCausalChain}})},7149:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.addPrefix=function(e,t){return e.startsWith(t)?e:`${t}${e}`},t.removeSuffix=function(e,t){if(""===t)return e;return e.endsWith(t)?e.slice(0,-t.length):e},t.addSuffix=function(e,t){return e.endsWith(t)?e:`${e}${t}`},t.removePrefix=function(e,t){return e.startsWith(t)?e.slice(t.length):e}},1513:(e,t,n)=>{"use strict";n.d(t,{zR:()=>v,TM:()=>A,yJ:()=>h,sC:()=>T,AO:()=>p});var a=n(8168);function o(e){return"/"===e.charAt(0)}function i(e,t){for(var n=t,a=n+1,o=e.length;a=0;p--){var h=r[p];"."===h?i(r,p):".."===h?(i(r,p),u++):u&&(i(r,p),u--)}if(!l)for(;u--;u)r.unshift("..");!l||""===r[0]||r[0]&&o(r[0])||r.unshift("");var y=r.join("/");return n&&"/"!==y.substr(-1)&&(y+="/"),y};var s=n(1561);function c(e){return"/"===e.charAt(0)?e:"/"+e}function l(e){return"/"===e.charAt(0)?e.substr(1):e}function d(e,t){return function(e,t){return 0===e.toLowerCase().indexOf(t.toLowerCase())&&-1!=="/?#".indexOf(e.charAt(t.length))}(e,t)?e.substr(t.length):e}function u(e){return"/"===e.charAt(e.length-1)?e.slice(0,-1):e}function p(e){var t=e.pathname,n=e.search,a=e.hash,o=t||"/";return n&&"?"!==n&&(o+="?"===n.charAt(0)?n:"?"+n),a&&"#"!==a&&(o+="#"===a.charAt(0)?a:"#"+a),o}function h(e,t,n,o){var i;"string"==typeof e?(i=function(e){var t=e||"/",n="",a="",o=t.indexOf("#");-1!==o&&(a=t.substr(o),t=t.substr(0,o));var i=t.indexOf("?");return-1!==i&&(n=t.substr(i),t=t.substr(0,i)),{pathname:t,search:"?"===n?"":n,hash:"#"===a?"":a}}(e),i.state=t):(void 0===(i=(0,a.A)({},e)).pathname&&(i.pathname=""),i.search?"?"!==i.search.charAt(0)&&(i.search="?"+i.search):i.search="",i.hash?"#"!==i.hash.charAt(0)&&(i.hash="#"+i.hash):i.hash="",void 0!==t&&void 0===i.state&&(i.state=t));try{i.pathname=decodeURI(i.pathname)}catch(s){throw s instanceof URIError?new URIError('Pathname "'+i.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):s}return n&&(i.key=n),o?i.pathname?"/"!==i.pathname.charAt(0)&&(i.pathname=r(i.pathname,o.pathname)):i.pathname=o.pathname:i.pathname||(i.pathname="/"),i}function y(){var e=null;var t=[];return{setPrompt:function(t){return e=t,function(){e===t&&(e=null)}},confirmTransitionTo:function(t,n,a,o){if(null!=e){var i="function"==typeof e?e(t,n):e;"string"==typeof i?"function"==typeof a?a(i,o):o(!0):o(!1!==i)}else o(!0)},appendListener:function(e){var n=!0;function a(){n&&e.apply(void 0,arguments)}return t.push(a),function(){n=!1,t=t.filter((function(e){return e!==a}))}},notifyListeners:function(){for(var e=arguments.length,n=new Array(e),a=0;at?n.splice(t,n.length-t,o):n.push(o),u({action:a,location:o,index:t,entries:n})}}))},replace:function(e,t){var a="REPLACE",o=h(e,t,g(),v.location);d.confirmTransitionTo(o,a,n,(function(e){e&&(v.entries[v.index]=o,u({action:a,location:o}))}))},go:_,goBack:function(){_(-1)},goForward:function(){_(1)},canGo:function(e){var t=v.index+e;return t>=0&&t{"use strict";var a=n(4363),o={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},i={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},r={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function c(e){return a.isMemo(e)?r:s[e.$$typeof]||o}s[a.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[a.Memo]=r;var l=Object.defineProperty,d=Object.getOwnPropertyNames,u=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,h=Object.getPrototypeOf,y=Object.prototype;e.exports=function e(t,n,a){if("string"!=typeof n){if(y){var o=h(n);o&&o!==y&&e(t,o,a)}var r=d(n);u&&(r=r.concat(u(n)));for(var s=c(t),g=c(n),f=0;f{"use strict";e.exports=function(e,t,n,a,o,i,r,s){if(!e){var c;if(void 0===t)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var l=[n,a,o,i,r,s],d=0;(c=new Error(t.replace(/%s/g,(function(){return l[d++]})))).name="Invariant Violation"}throw c.framesToPop=1,c}}},4634:e=>{e.exports=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)}},7378:(e,t,n)=>{"use strict";n.r(t)},2094:(e,t,n)=>{"use strict";n.r(t)},5947:function(e,t,n){var a,o;a=function(){var e,t,n={version:"0.2.0"},a=n.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'
'};function o(e,t,n){return en?n:e}function i(e){return 100*(-1+e)}function r(e,t,n){var o;return(o="translate3d"===a.positionUsing?{transform:"translate3d("+i(e)+"%,0,0)"}:"translate"===a.positionUsing?{transform:"translate("+i(e)+"%,0)"}:{"margin-left":i(e)+"%"}).transition="all "+t+"ms "+n,o}n.configure=function(e){var t,n;for(t in e)void 0!==(n=e[t])&&e.hasOwnProperty(t)&&(a[t]=n);return this},n.status=null,n.set=function(e){var t=n.isStarted();e=o(e,a.minimum,1),n.status=1===e?null:e;var i=n.render(!t),l=i.querySelector(a.barSelector),d=a.speed,u=a.easing;return i.offsetWidth,s((function(t){""===a.positionUsing&&(a.positionUsing=n.getPositioningCSS()),c(l,r(e,d,u)),1===e?(c(i,{transition:"none",opacity:1}),i.offsetWidth,setTimeout((function(){c(i,{transition:"all "+d+"ms linear",opacity:0}),setTimeout((function(){n.remove(),t()}),d)}),d)):setTimeout(t,d)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var e=function(){setTimeout((function(){n.status&&(n.trickle(),e())}),a.trickleSpeed)};return a.trickle&&e(),this},n.done=function(e){return e||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(e){var t=n.status;return t?("number"!=typeof e&&(e=(1-t)*o(Math.random()*t,.1,.95)),t=o(t+e,0,.994),n.set(t)):n.start()},n.trickle=function(){return n.inc(Math.random()*a.trickleRate)},e=0,t=0,n.promise=function(a){return a&&"resolved"!==a.state()?(0===t&&n.start(),e++,t++,a.always((function(){0==--t?(e=0,n.done()):n.set((e-t)/e)})),this):this},n.render=function(e){if(n.isRendered())return document.getElementById("nprogress");d(document.documentElement,"nprogress-busy");var t=document.createElement("div");t.id="nprogress",t.innerHTML=a.template;var o,r=t.querySelector(a.barSelector),s=e?"-100":i(n.status||0),l=document.querySelector(a.parent);return c(r,{transition:"all 0 linear",transform:"translate3d("+s+"%,0,0)"}),a.showSpinner||(o=t.querySelector(a.spinnerSelector))&&h(o),l!=document.body&&d(l,"nprogress-custom-parent"),l.appendChild(t),t},n.remove=function(){u(document.documentElement,"nprogress-busy"),u(document.querySelector(a.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&h(e)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var e=document.body.style,t="WebkitTransform"in e?"Webkit":"MozTransform"in e?"Moz":"msTransform"in e?"ms":"OTransform"in e?"O":"";return t+"Perspective"in e?"translate3d":t+"Transform"in e?"translate":"margin"};var s=function(){var e=[];function t(){var n=e.shift();n&&n(t)}return function(n){e.push(n),1==e.length&&t()}}(),c=function(){var e=["Webkit","O","Moz","ms"],t={};function n(e){return e.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(e,t){return t.toUpperCase()}))}function a(t){var n=document.body.style;if(t in n)return t;for(var a,o=e.length,i=t.charAt(0).toUpperCase()+t.slice(1);o--;)if((a=e[o]+i)in n)return a;return t}function o(e){return e=n(e),t[e]||(t[e]=a(e))}function i(e,t,n){t=o(t),e.style[t]=n}return function(e,t){var n,a,o=arguments;if(2==o.length)for(n in t)void 0!==(a=t[n])&&t.hasOwnProperty(n)&&i(e,n,a);else i(e,o[1],o[2])}}();function l(e,t){return("string"==typeof e?e:p(e)).indexOf(" "+t+" ")>=0}function d(e,t){var n=p(e),a=n+t;l(n,t)||(e.className=a.substring(1))}function u(e,t){var n,a=p(e);l(e,t)&&(n=a.replace(" "+t+" "," "),e.className=n.substring(1,n.length-1))}function p(e){return(" "+(e.className||"")+" ").replace(/\s+/gi," ")}function h(e){e&&e.parentNode&&e.parentNode.removeChild(e)}return n},void 0===(o="function"==typeof a?a.call(t,n,t,e):a)||(e.exports=o)},5302:(e,t,n)=>{var a=n(4634);e.exports=y,e.exports.parse=i,e.exports.compile=function(e,t){return c(i(e,t),t)},e.exports.tokensToFunction=c,e.exports.tokensToRegExp=h;var o=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function i(e,t){for(var n,a=[],i=0,s=0,c="",l=t&&t.delimiter||"/";null!=(n=o.exec(e));){var u=n[0],p=n[1],h=n.index;if(c+=e.slice(s,h),s=h+u.length,p)c+=p[1];else{var y=e[s],g=n[2],f=n[3],m=n[4],b=n[5],_=n[6],v=n[7];c&&(a.push(c),c="");var P=null!=g&&null!=y&&y!==g,S="+"===_||"*"===_,w="?"===_||"*"===_,k=g||l,x=m||b,A=g||("string"==typeof a[a.length-1]?a[a.length-1]:"");a.push({name:f||i++,prefix:g||"",delimiter:k,optional:w,repeat:S,partial:P,asterisk:!!v,pattern:x?d(x):v?".*":r(k,A)})}}return s-1?"[^"+l(e)+"]+?":l(t)+"|(?:(?!"+l(t)+")[^"+l(e)+"])+?"}function s(e){return encodeURI(e).replace(/[\/?#]/g,(function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()}))}function c(e,t){for(var n=new Array(e.length),o=0;o{e.exports&&(e.exports={core:{meta:{path:"components/prism-core.js",option:"mandatory"},core:"Core"},themes:{meta:{path:"themes/{id}.css",link:"index.html?theme={id}",exclusive:!0},prism:{title:"Default",option:"default"},"prism-dark":"Dark","prism-funky":"Funky","prism-okaidia":{title:"Okaidia",owner:"ocodia"},"prism-twilight":{title:"Twilight",owner:"remybach"},"prism-coy":{title:"Coy",owner:"tshedor"},"prism-solarizedlight":{title:"Solarized Light",owner:"hectormatos2011 "},"prism-tomorrow":{title:"Tomorrow Night",owner:"Rosey"}},languages:{meta:{path:"components/prism-{id}",noCSS:!0,examplesPath:"examples/prism-{id}",addCheckAll:!0},markup:{title:"Markup",alias:["html","xml","svg","mathml","ssml","atom","rss"],aliasTitles:{html:"HTML",xml:"XML",svg:"SVG",mathml:"MathML",ssml:"SSML",atom:"Atom",rss:"RSS"},option:"default"},css:{title:"CSS",option:"default",modify:"markup"},clike:{title:"C-like",option:"default"},javascript:{title:"JavaScript",require:"clike",modify:"markup",optional:"regex",alias:"js",option:"default"},abap:{title:"ABAP",owner:"dellagustin"},abnf:{title:"ABNF",owner:"RunDevelopment"},actionscript:{title:"ActionScript",require:"javascript",modify:"markup",owner:"Golmote"},ada:{title:"Ada",owner:"Lucretia"},agda:{title:"Agda",owner:"xy-ren"},al:{title:"AL",owner:"RunDevelopment"},antlr4:{title:"ANTLR4",alias:"g4",owner:"RunDevelopment"},apacheconf:{title:"Apache Configuration",owner:"GuiTeK"},apex:{title:"Apex",require:["clike","sql"],owner:"RunDevelopment"},apl:{title:"APL",owner:"ngn"},applescript:{title:"AppleScript",owner:"Golmote"},aql:{title:"AQL",owner:"RunDevelopment"},arduino:{title:"Arduino",require:"cpp",alias:"ino",owner:"dkern"},arff:{title:"ARFF",owner:"Golmote"},armasm:{title:"ARM Assembly",alias:"arm-asm",owner:"RunDevelopment"},arturo:{title:"Arturo",alias:"art",optional:["bash","css","javascript","markup","markdown","sql"],owner:"drkameleon"},asciidoc:{alias:"adoc",title:"AsciiDoc",owner:"Golmote"},aspnet:{title:"ASP.NET (C#)",require:["markup","csharp"],owner:"nauzilus"},asm6502:{title:"6502 Assembly",owner:"kzurawel"},asmatmel:{title:"Atmel AVR Assembly",owner:"cerkit"},autohotkey:{title:"AutoHotkey",owner:"aviaryan"},autoit:{title:"AutoIt",owner:"Golmote"},avisynth:{title:"AviSynth",alias:"avs",owner:"Zinfidel"},"avro-idl":{title:"Avro IDL",alias:"avdl",owner:"RunDevelopment"},awk:{title:"AWK",alias:"gawk",aliasTitles:{gawk:"GAWK"},owner:"RunDevelopment"},bash:{title:"Bash",alias:["sh","shell"],aliasTitles:{sh:"Shell",shell:"Shell"},owner:"zeitgeist87"},basic:{title:"BASIC",owner:"Golmote"},batch:{title:"Batch",owner:"Golmote"},bbcode:{title:"BBcode",alias:"shortcode",aliasTitles:{shortcode:"Shortcode"},owner:"RunDevelopment"},bbj:{title:"BBj",owner:"hyyan"},bicep:{title:"Bicep",owner:"johnnyreilly"},birb:{title:"Birb",require:"clike",owner:"Calamity210"},bison:{title:"Bison",require:"c",owner:"Golmote"},bnf:{title:"BNF",alias:"rbnf",aliasTitles:{rbnf:"RBNF"},owner:"RunDevelopment"},bqn:{title:"BQN",owner:"yewscion"},brainfuck:{title:"Brainfuck",owner:"Golmote"},brightscript:{title:"BrightScript",owner:"RunDevelopment"},bro:{title:"Bro",owner:"wayward710"},bsl:{title:"BSL (1C:Enterprise)",alias:"oscript",aliasTitles:{oscript:"OneScript"},owner:"Diversus23"},c:{title:"C",require:"clike",owner:"zeitgeist87"},csharp:{title:"C#",require:"clike",alias:["cs","dotnet"],owner:"mvalipour"},cpp:{title:"C++",require:"c",owner:"zeitgeist87"},cfscript:{title:"CFScript",require:"clike",alias:"cfc",owner:"mjclemente"},chaiscript:{title:"ChaiScript",require:["clike","cpp"],owner:"RunDevelopment"},cil:{title:"CIL",owner:"sbrl"},cilkc:{title:"Cilk/C",require:"c",alias:"cilk-c",owner:"OpenCilk"},cilkcpp:{title:"Cilk/C++",require:"cpp",alias:["cilk-cpp","cilk"],owner:"OpenCilk"},clojure:{title:"Clojure",owner:"troglotit"},cmake:{title:"CMake",owner:"mjrogozinski"},cobol:{title:"COBOL",owner:"RunDevelopment"},coffeescript:{title:"CoffeeScript",require:"javascript",alias:"coffee",owner:"R-osey"},concurnas:{title:"Concurnas",alias:"conc",owner:"jasontatton"},csp:{title:"Content-Security-Policy",owner:"ScottHelme"},cooklang:{title:"Cooklang",owner:"ahue"},coq:{title:"Coq",owner:"RunDevelopment"},crystal:{title:"Crystal",require:"ruby",owner:"MakeNowJust"},"css-extras":{title:"CSS Extras",require:"css",modify:"css",owner:"milesj"},csv:{title:"CSV",owner:"RunDevelopment"},cue:{title:"CUE",owner:"RunDevelopment"},cypher:{title:"Cypher",owner:"RunDevelopment"},d:{title:"D",require:"clike",owner:"Golmote"},dart:{title:"Dart",require:"clike",owner:"Golmote"},dataweave:{title:"DataWeave",owner:"machaval"},dax:{title:"DAX",owner:"peterbud"},dhall:{title:"Dhall",owner:"RunDevelopment"},diff:{title:"Diff",owner:"uranusjr"},django:{title:"Django/Jinja2",require:"markup-templating",alias:"jinja2",owner:"romanvm"},"dns-zone-file":{title:"DNS zone file",owner:"RunDevelopment",alias:"dns-zone"},docker:{title:"Docker",alias:"dockerfile",owner:"JustinBeckwith"},dot:{title:"DOT (Graphviz)",alias:"gv",optional:"markup",owner:"RunDevelopment"},ebnf:{title:"EBNF",owner:"RunDevelopment"},editorconfig:{title:"EditorConfig",owner:"osipxd"},eiffel:{title:"Eiffel",owner:"Conaclos"},ejs:{title:"EJS",require:["javascript","markup-templating"],owner:"RunDevelopment",alias:"eta",aliasTitles:{eta:"Eta"}},elixir:{title:"Elixir",owner:"Golmote"},elm:{title:"Elm",owner:"zwilias"},etlua:{title:"Embedded Lua templating",require:["lua","markup-templating"],owner:"RunDevelopment"},erb:{title:"ERB",require:["ruby","markup-templating"],owner:"Golmote"},erlang:{title:"Erlang",owner:"Golmote"},"excel-formula":{title:"Excel Formula",alias:["xlsx","xls"],owner:"RunDevelopment"},fsharp:{title:"F#",require:"clike",owner:"simonreynolds7"},factor:{title:"Factor",owner:"catb0t"},false:{title:"False",owner:"edukisto"},"firestore-security-rules":{title:"Firestore security rules",require:"clike",owner:"RunDevelopment"},flow:{title:"Flow",require:"javascript",owner:"Golmote"},fortran:{title:"Fortran",owner:"Golmote"},ftl:{title:"FreeMarker Template Language",require:"markup-templating",owner:"RunDevelopment"},gml:{title:"GameMaker Language",alias:"gamemakerlanguage",require:"clike",owner:"LiarOnce"},gap:{title:"GAP (CAS)",owner:"RunDevelopment"},gcode:{title:"G-code",owner:"RunDevelopment"},gdscript:{title:"GDScript",owner:"RunDevelopment"},gedcom:{title:"GEDCOM",owner:"Golmote"},gettext:{title:"gettext",alias:"po",owner:"RunDevelopment"},gherkin:{title:"Gherkin",owner:"hason"},git:{title:"Git",owner:"lgiraudel"},glsl:{title:"GLSL",require:"c",owner:"Golmote"},gn:{title:"GN",alias:"gni",owner:"RunDevelopment"},"linker-script":{title:"GNU Linker Script",alias:"ld",owner:"RunDevelopment"},go:{title:"Go",require:"clike",owner:"arnehormann"},"go-module":{title:"Go module",alias:"go-mod",owner:"RunDevelopment"},gradle:{title:"Gradle",require:"clike",owner:"zeabdelkhalek-badido18"},graphql:{title:"GraphQL",optional:"markdown",owner:"Golmote"},groovy:{title:"Groovy",require:"clike",owner:"robfletcher"},haml:{title:"Haml",require:"ruby",optional:["css","css-extras","coffeescript","erb","javascript","less","markdown","scss","textile"],owner:"Golmote"},handlebars:{title:"Handlebars",require:"markup-templating",alias:["hbs","mustache"],aliasTitles:{mustache:"Mustache"},owner:"Golmote"},haskell:{title:"Haskell",alias:"hs",owner:"bholst"},haxe:{title:"Haxe",require:"clike",optional:"regex",owner:"Golmote"},hcl:{title:"HCL",owner:"outsideris"},hlsl:{title:"HLSL",require:"c",owner:"RunDevelopment"},hoon:{title:"Hoon",owner:"matildepark"},http:{title:"HTTP",optional:["csp","css","hpkp","hsts","javascript","json","markup","uri"],owner:"danielgtaylor"},hpkp:{title:"HTTP Public-Key-Pins",owner:"ScottHelme"},hsts:{title:"HTTP Strict-Transport-Security",owner:"ScottHelme"},ichigojam:{title:"IchigoJam",owner:"BlueCocoa"},icon:{title:"Icon",owner:"Golmote"},"icu-message-format":{title:"ICU Message Format",owner:"RunDevelopment"},idris:{title:"Idris",alias:"idr",owner:"KeenS",require:"haskell"},ignore:{title:".ignore",owner:"osipxd",alias:["gitignore","hgignore","npmignore"],aliasTitles:{gitignore:".gitignore",hgignore:".hgignore",npmignore:".npmignore"}},inform7:{title:"Inform 7",owner:"Golmote"},ini:{title:"Ini",owner:"aviaryan"},io:{title:"Io",owner:"AlesTsurko"},j:{title:"J",owner:"Golmote"},java:{title:"Java",require:"clike",owner:"sherblot"},javadoc:{title:"JavaDoc",require:["markup","java","javadoclike"],modify:"java",optional:"scala",owner:"RunDevelopment"},javadoclike:{title:"JavaDoc-like",modify:["java","javascript","php"],owner:"RunDevelopment"},javastacktrace:{title:"Java stack trace",owner:"RunDevelopment"},jexl:{title:"Jexl",owner:"czosel"},jolie:{title:"Jolie",require:"clike",owner:"thesave"},jq:{title:"JQ",owner:"RunDevelopment"},jsdoc:{title:"JSDoc",require:["javascript","javadoclike","typescript"],modify:"javascript",optional:["actionscript","coffeescript"],owner:"RunDevelopment"},"js-extras":{title:"JS Extras",require:"javascript",modify:"javascript",optional:["actionscript","coffeescript","flow","n4js","typescript"],owner:"RunDevelopment"},json:{title:"JSON",alias:"webmanifest",aliasTitles:{webmanifest:"Web App Manifest"},owner:"CupOfTea696"},json5:{title:"JSON5",require:"json",owner:"RunDevelopment"},jsonp:{title:"JSONP",require:"json",owner:"RunDevelopment"},jsstacktrace:{title:"JS stack trace",owner:"sbrl"},"js-templates":{title:"JS Templates",require:"javascript",modify:"javascript",optional:["css","css-extras","graphql","markdown","markup","sql"],owner:"RunDevelopment"},julia:{title:"Julia",owner:"cdagnino"},keepalived:{title:"Keepalived Configure",owner:"dev-itsheng"},keyman:{title:"Keyman",owner:"mcdurdin"},kotlin:{title:"Kotlin",alias:["kt","kts"],aliasTitles:{kts:"Kotlin Script"},require:"clike",owner:"Golmote"},kumir:{title:"KuMir (\u041a\u0443\u041c\u0438\u0440)",alias:"kum",owner:"edukisto"},kusto:{title:"Kusto",owner:"RunDevelopment"},latex:{title:"LaTeX",alias:["tex","context"],aliasTitles:{tex:"TeX",context:"ConTeXt"},owner:"japborst"},latte:{title:"Latte",require:["clike","markup-templating","php"],owner:"nette"},less:{title:"Less",require:"css",optional:"css-extras",owner:"Golmote"},lilypond:{title:"LilyPond",require:"scheme",alias:"ly",owner:"RunDevelopment"},liquid:{title:"Liquid",require:"markup-templating",owner:"cinhtau"},lisp:{title:"Lisp",alias:["emacs","elisp","emacs-lisp"],owner:"JuanCaicedo"},livescript:{title:"LiveScript",owner:"Golmote"},llvm:{title:"LLVM IR",owner:"porglezomp"},log:{title:"Log file",optional:"javastacktrace",owner:"RunDevelopment"},lolcode:{title:"LOLCODE",owner:"Golmote"},lua:{title:"Lua",owner:"Golmote"},magma:{title:"Magma (CAS)",owner:"RunDevelopment"},makefile:{title:"Makefile",owner:"Golmote"},markdown:{title:"Markdown",require:"markup",optional:"yaml",alias:"md",owner:"Golmote"},"markup-templating":{title:"Markup templating",require:"markup",owner:"Golmote"},mata:{title:"Mata",owner:"RunDevelopment"},matlab:{title:"MATLAB",owner:"Golmote"},maxscript:{title:"MAXScript",owner:"RunDevelopment"},mel:{title:"MEL",owner:"Golmote"},mermaid:{title:"Mermaid",owner:"RunDevelopment"},metafont:{title:"METAFONT",owner:"LaeriExNihilo"},mizar:{title:"Mizar",owner:"Golmote"},mongodb:{title:"MongoDB",owner:"airs0urce",require:"javascript"},monkey:{title:"Monkey",owner:"Golmote"},moonscript:{title:"MoonScript",alias:"moon",owner:"RunDevelopment"},n1ql:{title:"N1QL",owner:"TMWilds"},n4js:{title:"N4JS",require:"javascript",optional:"jsdoc",alias:"n4jsd",owner:"bsmith-n4"},"nand2tetris-hdl":{title:"Nand To Tetris HDL",owner:"stephanmax"},naniscript:{title:"Naninovel Script",owner:"Elringus",alias:"nani"},nasm:{title:"NASM",owner:"rbmj"},neon:{title:"NEON",owner:"nette"},nevod:{title:"Nevod",owner:"nezaboodka"},nginx:{title:"nginx",owner:"volado"},nim:{title:"Nim",owner:"Golmote"},nix:{title:"Nix",owner:"Golmote"},nsis:{title:"NSIS",owner:"idleberg"},objectivec:{title:"Objective-C",require:"c",alias:"objc",owner:"uranusjr"},ocaml:{title:"OCaml",owner:"Golmote"},odin:{title:"Odin",owner:"edukisto"},opencl:{title:"OpenCL",require:"c",modify:["c","cpp"],owner:"Milania1"},openqasm:{title:"OpenQasm",alias:"qasm",owner:"RunDevelopment"},oz:{title:"Oz",owner:"Golmote"},parigp:{title:"PARI/GP",owner:"Golmote"},parser:{title:"Parser",require:"markup",owner:"Golmote"},pascal:{title:"Pascal",alias:"objectpascal",aliasTitles:{objectpascal:"Object Pascal"},owner:"Golmote"},pascaligo:{title:"Pascaligo",owner:"DefinitelyNotAGoat"},psl:{title:"PATROL Scripting Language",owner:"bertysentry"},pcaxis:{title:"PC-Axis",alias:"px",owner:"RunDevelopment"},peoplecode:{title:"PeopleCode",alias:"pcode",owner:"RunDevelopment"},perl:{title:"Perl",owner:"Golmote"},php:{title:"PHP",require:"markup-templating",owner:"milesj"},phpdoc:{title:"PHPDoc",require:["php","javadoclike"],modify:"php",owner:"RunDevelopment"},"php-extras":{title:"PHP Extras",require:"php",modify:"php",owner:"milesj"},"plant-uml":{title:"PlantUML",alias:"plantuml",owner:"RunDevelopment"},plsql:{title:"PL/SQL",require:"sql",owner:"Golmote"},powerquery:{title:"PowerQuery",alias:["pq","mscript"],owner:"peterbud"},powershell:{title:"PowerShell",owner:"nauzilus"},processing:{title:"Processing",require:"clike",owner:"Golmote"},prolog:{title:"Prolog",owner:"Golmote"},promql:{title:"PromQL",owner:"arendjr"},properties:{title:".properties",owner:"Golmote"},protobuf:{title:"Protocol Buffers",require:"clike",owner:"just-boris"},pug:{title:"Pug",require:["markup","javascript"],optional:["coffeescript","ejs","handlebars","less","livescript","markdown","scss","stylus","twig"],owner:"Golmote"},puppet:{title:"Puppet",owner:"Golmote"},pure:{title:"Pure",optional:["c","cpp","fortran"],owner:"Golmote"},purebasic:{title:"PureBasic",require:"clike",alias:"pbfasm",owner:"HeX0R101"},purescript:{title:"PureScript",require:"haskell",alias:"purs",owner:"sriharshachilakapati"},python:{title:"Python",alias:"py",owner:"multipetros"},qsharp:{title:"Q#",require:"clike",alias:"qs",owner:"fedonman"},q:{title:"Q (kdb+ database)",owner:"Golmote"},qml:{title:"QML",require:"javascript",owner:"RunDevelopment"},qore:{title:"Qore",require:"clike",owner:"temnroegg"},r:{title:"R",owner:"Golmote"},racket:{title:"Racket",require:"scheme",alias:"rkt",owner:"RunDevelopment"},cshtml:{title:"Razor C#",alias:"razor",require:["markup","csharp"],optional:["css","css-extras","javascript","js-extras"],owner:"RunDevelopment"},jsx:{title:"React JSX",require:["markup","javascript"],optional:["jsdoc","js-extras","js-templates"],owner:"vkbansal"},tsx:{title:"React TSX",require:["jsx","typescript"]},reason:{title:"Reason",require:"clike",owner:"Golmote"},regex:{title:"Regex",owner:"RunDevelopment"},rego:{title:"Rego",owner:"JordanSh"},renpy:{title:"Ren'py",alias:"rpy",owner:"HyuchiaDiego"},rescript:{title:"ReScript",alias:"res",owner:"vmarcosp"},rest:{title:"reST (reStructuredText)",owner:"Golmote"},rip:{title:"Rip",owner:"ravinggenius"},roboconf:{title:"Roboconf",owner:"Golmote"},robotframework:{title:"Robot Framework",alias:"robot",owner:"RunDevelopment"},ruby:{title:"Ruby",require:"clike",alias:"rb",owner:"samflores"},rust:{title:"Rust",owner:"Golmote"},sas:{title:"SAS",optional:["groovy","lua","sql"],owner:"Golmote"},sass:{title:"Sass (Sass)",require:"css",optional:"css-extras",owner:"Golmote"},scss:{title:"Sass (SCSS)",require:"css",optional:"css-extras",owner:"MoOx"},scala:{title:"Scala",require:"java",owner:"jozic"},scheme:{title:"Scheme",owner:"bacchus123"},"shell-session":{title:"Shell session",require:"bash",alias:["sh-session","shellsession"],owner:"RunDevelopment"},smali:{title:"Smali",owner:"RunDevelopment"},smalltalk:{title:"Smalltalk",owner:"Golmote"},smarty:{title:"Smarty",require:"markup-templating",optional:"php",owner:"Golmote"},sml:{title:"SML",alias:"smlnj",aliasTitles:{smlnj:"SML/NJ"},owner:"RunDevelopment"},solidity:{title:"Solidity (Ethereum)",alias:"sol",require:"clike",owner:"glachaud"},"solution-file":{title:"Solution file",alias:"sln",owner:"RunDevelopment"},soy:{title:"Soy (Closure Template)",require:"markup-templating",owner:"Golmote"},sparql:{title:"SPARQL",require:"turtle",owner:"Triply-Dev",alias:"rq"},"splunk-spl":{title:"Splunk SPL",owner:"RunDevelopment"},sqf:{title:"SQF: Status Quo Function (Arma 3)",require:"clike",owner:"RunDevelopment"},sql:{title:"SQL",owner:"multipetros"},squirrel:{title:"Squirrel",require:"clike",owner:"RunDevelopment"},stan:{title:"Stan",owner:"RunDevelopment"},stata:{title:"Stata Ado",require:["mata","java","python"],owner:"RunDevelopment"},iecst:{title:"Structured Text (IEC 61131-3)",owner:"serhioromano"},stylus:{title:"Stylus",owner:"vkbansal"},supercollider:{title:"SuperCollider",alias:"sclang",owner:"RunDevelopment"},swift:{title:"Swift",owner:"chrischares"},systemd:{title:"Systemd configuration file",owner:"RunDevelopment"},"t4-templating":{title:"T4 templating",owner:"RunDevelopment"},"t4-cs":{title:"T4 Text Templates (C#)",require:["t4-templating","csharp"],alias:"t4",owner:"RunDevelopment"},"t4-vb":{title:"T4 Text Templates (VB)",require:["t4-templating","vbnet"],owner:"RunDevelopment"},tap:{title:"TAP",owner:"isaacs",require:"yaml"},tcl:{title:"Tcl",owner:"PeterChaplin"},tt2:{title:"Template Toolkit 2",require:["clike","markup-templating"],owner:"gflohr"},textile:{title:"Textile",require:"markup",optional:"css",owner:"Golmote"},toml:{title:"TOML",owner:"RunDevelopment"},tremor:{title:"Tremor",alias:["trickle","troy"],owner:"darach",aliasTitles:{trickle:"trickle",troy:"troy"}},turtle:{title:"Turtle",alias:"trig",aliasTitles:{trig:"TriG"},owner:"jakubklimek"},twig:{title:"Twig",require:"markup-templating",owner:"brandonkelly"},typescript:{title:"TypeScript",require:"javascript",optional:"js-templates",alias:"ts",owner:"vkbansal"},typoscript:{title:"TypoScript",alias:"tsconfig",aliasTitles:{tsconfig:"TSConfig"},owner:"dkern"},unrealscript:{title:"UnrealScript",alias:["uscript","uc"],owner:"RunDevelopment"},uorazor:{title:"UO Razor Script",owner:"jaseowns"},uri:{title:"URI",alias:"url",aliasTitles:{url:"URL"},owner:"RunDevelopment"},v:{title:"V",require:"clike",owner:"taggon"},vala:{title:"Vala",require:"clike",optional:"regex",owner:"TemplarVolk"},vbnet:{title:"VB.Net",require:"basic",owner:"Bigsby"},velocity:{title:"Velocity",require:"markup",owner:"Golmote"},verilog:{title:"Verilog",owner:"a-rey"},vhdl:{title:"VHDL",owner:"a-rey"},vim:{title:"vim",owner:"westonganger"},"visual-basic":{title:"Visual Basic",alias:["vb","vba"],aliasTitles:{vba:"VBA"},owner:"Golmote"},warpscript:{title:"WarpScript",owner:"RunDevelopment"},wasm:{title:"WebAssembly",owner:"Golmote"},"web-idl":{title:"Web IDL",alias:"webidl",owner:"RunDevelopment"},wgsl:{title:"WGSL",owner:"Dr4gonthree"},wiki:{title:"Wiki markup",require:"markup",owner:"Golmote"},wolfram:{title:"Wolfram language",alias:["mathematica","nb","wl"],aliasTitles:{mathematica:"Mathematica",nb:"Mathematica Notebook"},owner:"msollami"},wren:{title:"Wren",owner:"clsource"},xeora:{title:"Xeora",require:"markup",alias:"xeoracube",aliasTitles:{xeoracube:"XeoraCube"},owner:"freakmaxi"},"xml-doc":{title:"XML doc (.net)",require:"markup",modify:["csharp","fsharp","vbnet"],owner:"RunDevelopment"},xojo:{title:"Xojo (REALbasic)",owner:"Golmote"},xquery:{title:"XQuery",require:"markup",owner:"Golmote"},yaml:{title:"YAML",alias:"yml",owner:"hason"},yang:{title:"YANG",owner:"RunDevelopment"},zig:{title:"Zig",owner:"RunDevelopment"}},plugins:{meta:{path:"plugins/{id}/prism-{id}",link:"plugins/{id}/"},"line-highlight":{title:"Line Highlight",description:"Highlights specific lines and/or line ranges."},"line-numbers":{title:"Line Numbers",description:"Line number at the beginning of code lines.",owner:"kuba-kubula"},"show-invisibles":{title:"Show Invisibles",description:"Show hidden characters such as tabs and line breaks.",optional:["autolinker","data-uri-highlight"]},autolinker:{title:"Autolinker",description:"Converts URLs and emails in code to clickable links. Parses Markdown links in comments."},wpd:{title:"WebPlatform Docs",description:'Makes tokens link to WebPlatform.org documentation. The links open in a new tab.'},"custom-class":{title:"Custom Class",description:"This plugin allows you to prefix Prism's default classes (.comment can become .namespace--comment) or replace them with your defined ones (like .editor__comment). You can even add new classes.",owner:"dvkndn",noCSS:!0},"file-highlight":{title:"File Highlight",description:"Fetch external files and highlight them with Prism. Used on the Prism website itself.",noCSS:!0},"show-language":{title:"Show Language",description:"Display the highlighted language in code blocks (inline code does not show the label).",owner:"nauzilus",noCSS:!0,require:"toolbar"},"jsonp-highlight":{title:"JSONP Highlight",description:"Fetch content with JSONP and highlight some interesting content (e.g. GitHub/Gists or Bitbucket API).",noCSS:!0,owner:"nauzilus"},"highlight-keywords":{title:"Highlight Keywords",description:"Adds special CSS classes for each keyword for fine-grained highlighting.",owner:"vkbansal",noCSS:!0},"remove-initial-line-feed":{title:"Remove initial line feed",description:"Removes the initial line feed in code blocks.",owner:"Golmote",noCSS:!0},"inline-color":{title:"Inline color",description:"Adds a small inline preview for colors in style sheets.",require:"css-extras",owner:"RunDevelopment"},previewers:{title:"Previewers",description:"Previewers for angles, colors, gradients, easing and time.",require:"css-extras",owner:"Golmote"},autoloader:{title:"Autoloader",description:"Automatically loads the needed languages to highlight the code blocks.",owner:"Golmote",noCSS:!0},"keep-markup":{title:"Keep Markup",description:"Prevents custom markup from being dropped out during highlighting.",owner:"Golmote",optional:"normalize-whitespace",noCSS:!0},"command-line":{title:"Command Line",description:"Display a command line with a prompt and, optionally, the output/response from the commands.",owner:"chriswells0"},"unescaped-markup":{title:"Unescaped Markup",description:"Write markup without having to escape anything."},"normalize-whitespace":{title:"Normalize Whitespace",description:"Supports multiple operations to normalize whitespace in code blocks.",owner:"zeitgeist87",optional:"unescaped-markup",noCSS:!0},"data-uri-highlight":{title:"Data-URI Highlight",description:"Highlights data-URI contents.",owner:"Golmote",noCSS:!0},toolbar:{title:"Toolbar",description:"Attach a toolbar for plugins to easily register buttons on the top of a code block.",owner:"mAAdhaTTah"},"copy-to-clipboard":{title:"Copy to Clipboard Button",description:"Add a button that copies the code block to the clipboard when clicked.",owner:"mAAdhaTTah",require:"toolbar",noCSS:!0},"download-button":{title:"Download Button",description:"A button in the toolbar of a code block adding a convenient way to download a code file.",owner:"Golmote",require:"toolbar",noCSS:!0},"match-braces":{title:"Match braces",description:"Highlights matching braces.",owner:"RunDevelopment"},"diff-highlight":{title:"Diff Highlight",description:"Highlights the code inside diff blocks.",owner:"RunDevelopment",require:"diff"},"filter-highlight-all":{title:"Filter highlightAll",description:"Filters the elements the highlightAll and highlightAllUnder methods actually highlight.",owner:"RunDevelopment",noCSS:!0},treeview:{title:"Treeview",description:"A language with special styles to highlight file system tree structures.",owner:"Golmote"}}})},8722:(e,t,n)=>{const a=n(6969),o=n(8380),i=new Set;function r(e){void 0===e?e=Object.keys(a.languages).filter((e=>"meta"!=e)):Array.isArray(e)||(e=[e]);const t=[...i,...Object.keys(Prism.languages)];o(a,e,t).load((e=>{if(!(e in a.languages))return void(r.silent||console.warn("Language does not exist: "+e));const t="./prism-"+e;delete n.c[n(3157).resolve(t)],delete Prism.languages[e],n(3157)(t),i.add(e)}))}r.silent=!1,e.exports=r},9700:()=>{!function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(n,a,o,i){if(n.language===a){var r=n.tokenStack=[];n.code=n.code.replace(o,(function(e){if("function"==typeof i&&!i(e))return e;for(var o,s=r.length;-1!==n.code.indexOf(o=t(a,s));)++s;return r[s]=e,o})),n.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(n,a){if(n.language===a&&n.tokenStack){n.grammar=e.languages[a];var o=0,i=Object.keys(n.tokenStack);!function r(s){for(var c=0;c=i.length);c++){var l=s[c];if("string"==typeof l||l.content&&"string"==typeof l.content){var d=i[o],u=n.tokenStack[d],p="string"==typeof l?l:l.content,h=t(a,d),y=p.indexOf(h);if(y>-1){++o;var g=p.substring(0,y),f=new e.Token(a,e.tokenize(u,n.grammar),"language-"+a,u),m=p.substring(y+h.length),b=[];g&&b.push.apply(b,r([g])),b.push(f),m&&b.push.apply(b,r([m])),"string"==typeof l?s.splice.apply(s,[c,1].concat(b)):l.content=b}}else l.content&&r(l.content)}return s}(n.tokens)}}}})}(Prism)},8692:(e,t,n)=>{var a={"./":8722};function o(e){var t=i(e);return n(t)}function i(e){if(!n.o(a,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return a[e]}o.keys=function(){return Object.keys(a)},o.resolve=i,e.exports=o,o.id=8692},3157:(e,t,n)=>{var a={"./":8722};function o(e){var t=i(e);return n(t)}function i(e){if(!n.o(a,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return a[e]}o.keys=function(){return Object.keys(a)},o.resolve=i,e.exports=o,o.id=3157},8380:e=>{"use strict";var t=function(){var e=function(){};function t(e,t){Array.isArray(e)?e.forEach(t):null!=e&&t(e,0)}function n(e){for(var t={},n=0,a=e.length;n "));var s={},c=e[a];if(c){function l(t){if(!(t in e))throw new Error(a+" depends on an unknown component "+t);if(!(t in s))for(var r in o(t,i),s[t]=!0,n[t])s[r]=!0}t(c.require,l),t(c.optional,l),t(c.modify,l)}n[a]=s,i.pop()}}return function(e){var t=n[e];return t||(o(e,a),t=n[e]),t}}function o(e){for(var t in e)return!0;return!1}return function(i,r,s){var c=function(e){var t={};for(var n in e){var a=e[n];for(var o in a)if("meta"!=o){var i=a[o];t[o]="string"==typeof i?{title:i}:i}}return t}(i),l=function(e){var n;return function(a){if(a in e)return a;if(!n)for(var o in n={},e){var i=e[o];t(i&&i.alias,(function(t){if(t in n)throw new Error(t+" cannot be alias for both "+o+" and "+n[t]);if(t in e)throw new Error(t+" cannot be alias of "+o+" because it is a component.");n[t]=o}))}return n[a]||a}}(c);r=r.map(l),s=(s||[]).map(l);var d=n(r),u=n(s);r.forEach((function e(n){var a=c[n];t(a&&a.require,(function(t){t in u||(d[t]=!0,e(t))}))}));for(var p,h=a(c),y=d;o(y);){for(var g in p={},y){var f=c[g];t(f&&f.modify,(function(e){e in u&&(p[e]=!0)}))}for(var m in u)if(!(m in d))for(var b in h(m))if(b in d){p[m]=!0;break}for(var _ in y=p)d[_]=!0}var v={getIds:function(){var e=[];return v.load((function(t){e.push(t)})),e},load:function(t,n){return function(t,n,a,o){var i=o?o.series:void 0,r=o?o.parallel:e,s={},c={};function l(e){if(e in s)return s[e];c[e]=!0;var o,d=[];for(var u in t(e))u in n&&d.push(u);if(0===d.length)o=a(e);else{var p=r(d.map((function(e){var t=l(e);return delete c[e],t})));i?o=i(p,(function(){return a(e)})):a(e)}return s[e]=o}for(var d in n)l(d);var u=[];for(var p in c)u.push(s[p]);return r(u)}(h,d,t,n)}};return v}}();e.exports=t},2694:(e,t,n)=>{"use strict";var a=n(6925);function o(){}function i(){}i.resetWarningCache=o,e.exports=function(){function e(e,t,n,o,i,r){if(r!==a){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:o};return n.PropTypes=n,n}},5556:(e,t,n)=>{e.exports=n(2694)()},6925:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},1247:(e,t,n)=>{"use strict";var a=n(9982),o=n(6540),i=n(961);function r(e){var t="https://react.dev/errors/"+e;if(1)":-1--o||c[a]!==l[o]){var d="\n"+c[a].replace(" at new "," at ");return e.displayName&&d.includes("")&&(d=d.replace("",e.displayName)),d}}while(1<=a&&0<=o);break}}}finally{R=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?F(n):""}function j(e){switch(e.tag){case 26:case 27:case 5:return F(e.type);case 16:return F("Lazy");case 13:return F("Suspense");case 19:return F("SuspenseList");case 0:case 15:return e=N(e.type,!1);case 11:return e=N(e.type.render,!1);case 1:return e=N(e.type,!0);default:return""}}function M(e){try{var t="";do{t+=j(e),e=e.return}while(e);return t}catch(n){return"\nError generating stack: "+n.message+"\n"+n.stack}}function L(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{!!(4098&(t=e).flags)&&(n=t.return),e=t.return}while(e)}return 3===t.tag?n:null}function I(e){if(13===e.tag){var t=e.memoizedState;if(null===t&&(null!==(e=e.alternate)&&(t=e.memoizedState)),null!==t)return t.dehydrated}return null}function B(e){if(L(e)!==e)throw Error(r(188))}function z(e){var t=e.tag;if(5===t||26===t||27===t||6===t)return e;for(e=e.child;null!==e;){if(null!==(t=z(e)))return t;e=e.sibling}return null}var U=Array.isArray,$=i.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,q={pending:!1,data:null,method:null,action:null},V=[],H=-1;function G(e){return{current:e}}function W(e){0>H||(e.current=V[H],V[H]=null,H--)}function K(e,t){H++,V[H]=e.current,e.current=t}var Q=G(null),Y=G(null),X=G(null),J=G(null);function Z(e,t){switch(K(X,t),K(Y,e),K(Q,null),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)&&(t=t.namespaceURI)?Yd(t):0;break;default:if(t=(e=8===e?t.parentNode:t).tagName,e=e.namespaceURI)t=Xd(e=Yd(e),t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}W(Q),K(Q,t)}function ee(){W(Q),W(Y),W(X)}function te(e){null!==e.memoizedState&&K(J,e);var t=Q.current,n=Xd(t,e.type);t!==n&&(K(Y,e),K(Q,n))}function ne(e){Y.current===e&&(W(Q),W(Y)),J.current===e&&(W(J),Mu._currentValue=q)}var ae=Object.prototype.hasOwnProperty,oe=a.unstable_scheduleCallback,ie=a.unstable_cancelCallback,re=a.unstable_shouldYield,se=a.unstable_requestPaint,ce=a.unstable_now,le=a.unstable_getCurrentPriorityLevel,de=a.unstable_ImmediatePriority,ue=a.unstable_UserBlockingPriority,pe=a.unstable_NormalPriority,he=a.unstable_LowPriority,ye=a.unstable_IdlePriority,ge=a.log,fe=a.unstable_setDisableYieldValue,me=null,be=null;function _e(e){if("function"==typeof ge&&fe(e),be&&"function"==typeof be.setStrictMode)try{be.setStrictMode(me,e)}catch(t){}}var ve=Math.clz32?Math.clz32:function(e){return 0===(e>>>=0)?32:31-(Pe(e)/Se|0)|0},Pe=Math.log,Se=Math.LN2;var we=128,ke=4194304;function xe(e){var t=42&e;if(0!==t)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194176&e;case 4194304:case 8388608:case 16777216:case 33554432:return 62914560&e;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Ae(e,t){var n=e.pendingLanes;if(0===n)return 0;var a=0,o=e.suspendedLanes,i=e.pingedLanes,r=e.warmLanes;e=0!==e.finishedLanes;var s=134217727&n;return 0!==s?0!==(n=s&~o)?a=xe(n):0!==(i&=s)?a=xe(i):e||0!==(r=s&~r)&&(a=xe(r)):0!==(s=n&~o)?a=xe(s):0!==i?a=xe(i):e||0!==(r=n&~r)&&(a=xe(r)),0===a?0:0!==t&&t!==a&&!(t&o)&&((o=a&-a)>=(r=t&-t)||32===o&&4194176&r)?t:a}function Ee(e,t){return!(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)}function Te(e,t){switch(e){case 1:case 2:case 4:case 8:return t+250;case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;default:return-1}}function Ce(){var e=we;return!(4194176&(we<<=1))&&(we=128),e}function De(){var e=ke;return!(62914560&(ke<<=1))&&(ke=4194304),e}function Oe(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Fe(e,t){e.pendingLanes|=t,268435456!==t&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Re(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var a=31-ve(t);e.entangledLanes|=t,e.entanglements[a]=1073741824|e.entanglements[a]|4194218&n}function Ne(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var a=31-ve(n),o=1<=Sn),xn=String.fromCharCode(32),An=!1;function En(e,t){switch(e){case"keyup":return-1!==vn.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Tn(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var Cn=!1;var Dn={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function On(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Dn[e.type]:"textarea"===t}function Fn(e,t,n,a){Ft?Rt?Rt.push(a):Rt=[a]:Ft=a,0<(t=Md(t,"onChange")).length&&(n=new Jt("onChange","change",null,n,a),e.push({event:n,listeners:t}))}var Rn=null,Nn=null;function jn(e){Td(e,0)}function Mn(e){if(pt(Qe(e)))return e}function Ln(e,t){if("change"===e)return t}var In=!1;if(nt){var Bn;if(nt){var zn="oninput"in document;if(!zn){var Un=document.createElement("div");Un.setAttribute("oninput","return;"),zn="function"==typeof Un.oninput}Bn=zn}else Bn=!1;In=Bn&&(!document.documentMode||9=t)return{node:a,offset:t-e};e=n}e:{for(;a;){if(a.nextSibling){a=a.nextSibling;break e}a=a.parentNode}a=void 0}a=Yn(a)}}function Jn(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?Jn(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function Zn(e){for(var t=ht((e=null!=e&&null!=e.ownerDocument&&null!=e.ownerDocument.defaultView?e.ownerDocument.defaultView:window).document);t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(a){n=!1}if(!n)break;t=ht((e=t.contentWindow).document)}return t}function ea(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}function ta(e,t){var n=Zn(t);t=e.focusedElem;var a=e.selectionRange;if(n!==t&&t&&t.ownerDocument&&Jn(t.ownerDocument.documentElement,t)){if(null!==a&&ea(t))if(e=a.start,void 0===(n=a.end)&&(n=e),"selectionStart"in t)t.selectionStart=e,t.selectionEnd=Math.min(n,t.value.length);else if((n=(e=t.ownerDocument||document)&&e.defaultView||window).getSelection){n=n.getSelection();var o=t.textContent.length,i=Math.min(a.start,o);a=void 0===a.end?i:Math.min(a.end,o),!n.extend&&i>a&&(o=a,a=i,i=o),o=Xn(t,i);var r=Xn(t,a);o&&r&&(1!==n.rangeCount||n.anchorNode!==o.node||n.anchorOffset!==o.offset||n.focusNode!==r.node||n.focusOffset!==r.offset)&&((e=e.createRange()).setStart(o.node,o.offset),n.removeAllRanges(),i>a?(n.addRange(e),n.extend(r.node,r.offset)):(e.setEnd(r.node,r.offset),n.addRange(e)))}for(e=[],n=t;n=n.parentNode;)1===n.nodeType&&e.push({element:n,left:n.scrollLeft,top:n.scrollTop});for("function"==typeof t.focus&&t.focus(),t=0;t=document.documentMode,aa=null,oa=null,ia=null,ra=!1;function sa(e,t,n){var a=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;ra||null==aa||aa!==ht(a)||("selectionStart"in(a=aa)&&ea(a)?a={start:a.selectionStart,end:a.selectionEnd}:a={anchorNode:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset},ia&&Qn(ia,a)||(ia=a,0<(a=Md(oa,"onSelect")).length&&(t=new Jt("onSelect","select",null,t,n),e.push({event:t,listeners:a}),t.target=aa)))}function ca(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var la={animationend:ca("Animation","AnimationEnd"),animationiteration:ca("Animation","AnimationIteration"),animationstart:ca("Animation","AnimationStart"),transitionrun:ca("Transition","TransitionRun"),transitionstart:ca("Transition","TransitionStart"),transitioncancel:ca("Transition","TransitionCancel"),transitionend:ca("Transition","TransitionEnd")},da={},ua={};function pa(e){if(da[e])return da[e];if(!la[e])return e;var t,n=la[e];for(t in n)if(n.hasOwnProperty(t)&&t in ua)return da[e]=n[t];return e}nt&&(ua=document.createElement("div").style,"AnimationEvent"in window||(delete la.animationend.animation,delete la.animationiteration.animation,delete la.animationstart.animation),"TransitionEvent"in window||delete la.transitionend.transition);var ha=pa("animationend"),ya=pa("animationiteration"),ga=pa("animationstart"),fa=pa("transitionrun"),ma=pa("transitionstart"),ba=pa("transitioncancel"),_a=pa("transitionend"),va=new Map,Pa="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll scrollEnd toggle touchMove waiting wheel".split(" ");function Sa(e,t){va.set(e,t),et(t,[e])}var wa=[],ka=0,xa=0;function Aa(){for(var e=ka,t=xa=ka=0;t>=r,o-=r,$a=1<<32-ve(t)+o|n<p?(h=u,u=null):h=u.sibling;var y=m(o,u,s[p],c);if(null===y){null===u&&(u=h);break}e&&u&&null===y.alternate&&t(o,u),r=i(y,r,p),null===d?l=y:d.sibling=y,d=y,u=h}if(p===s.length)return n(o,u),Ya&&Va(o,p),l;if(null===u){for(;ph?(y=p,p=null):y=p.sibling;var _=m(o,p,f.value,l);if(null===_){null===p&&(p=y);break}e&&p&&null===_.alternate&&t(o,p),s=i(_,s,h),null===u?d=_:u.sibling=_,u=_,p=y}if(f.done)return n(o,p),Ya&&Va(o,h),d;if(null===p){for(;!f.done;h++,f=c.next())null!==(f=g(o,f.value,l))&&(s=i(f,s,h),null===u?d=f:u.sibling=f,u=f);return Ya&&Va(o,h),d}for(p=a(p);!f.done;h++,f=c.next())null!==(f=b(p,o,h,f.value,l))&&(e&&null!==f.alternate&&p.delete(null===f.key?h:f.key),s=i(f,s,h),null===u?d=f:u.sibling=f,u=f);return e&&p.forEach((function(e){return t(o,e)})),Ya&&Va(o,h),d}(c,p,h=v.call(h),y)}if("function"==typeof h.then)return _(c,p,mo(h),y);if(h.$$typeof===f)return _(c,p,As(c,h),y);_o(c,h)}return"string"==typeof h&&""!==h||"number"==typeof h||"bigint"==typeof h?(h=""+h,null!==p&&6===p.tag?(n(c,p.sibling),(y=o(p,h)).return=c,c=y):(n(c,p),(y=$c(h,c.mode,y)).return=c,c=y),s(c)):n(c,p)}return function(e,t,n,a){try{fo=0;var o=_(e,t,n,a);return go=null,o}catch(r){if(r===ro)throw r;var i=jc(29,r,null,e.mode);return i.lanes=a,i.return=e,i}}}var So=Po(!0),wo=Po(!1),ko=G(null),xo=G(0);function Ao(e,t){K(xo,e=ll),K(ko,t),ll=e|t.baseLanes}function Eo(){K(xo,ll),K(ko,ko.current)}function To(){ll=xo.current,W(ko),W(xo)}var Co=G(null),Do=null;function Oo(e){var t=e.alternate;K(jo,1&jo.current),K(Co,e),null===Do&&(null===t||null!==ko.current||null!==t.memoizedState)&&(Do=e)}function Fo(e){if(22===e.tag){if(K(jo,jo.current),K(Co,e),null===Do){var t=e.alternate;null!==t&&null!==t.memoizedState&&(Do=e)}}else Ro()}function Ro(){K(jo,jo.current),K(Co,Co.current)}function No(e){W(Co),Do===e&&(Do=null),W(jo)}var jo=G(0);function Mo(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(128&t.flags)return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Lo="undefined"!=typeof AbortController?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(t,n){e.push(n)}};this.abort=function(){t.aborted=!0,e.forEach((function(e){return e()}))}},Io=a.unstable_scheduleCallback,Bo=a.unstable_NormalPriority,zo={$$typeof:f,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Uo(){return{controller:new Lo,data:new Map,refCount:0}}function $o(e){e.refCount--,0===e.refCount&&Io(Bo,(function(){e.controller.abort()}))}var qo=null,Vo=0,Ho=0,Go=null;function Wo(){if(0==--Vo&&null!==qo){null!==Go&&(Go.status="fulfilled");var e=qo;qo=null,Ho=0,Go=null;for(var t=0;ti?i:8;var r,s,c,l=D.T,d={};D.T=d,Pr(e,!1,t,n);try{var u=o(),p=D.S;if(null!==p&&p(d,u),null!==u&&"object"==typeof u&&"function"==typeof u.then)vr(e,t,(r=a,s=[],c={status:"pending",value:null,reason:null,then:function(e){s.push(e)}},u.then((function(){c.status="fulfilled",c.value=r;for(var e=0;e title"))),Gd(i,a,n),i[Ie]=e,Xe(i),a=i;break e;case"link":var s=Eu("link","href",o).get(a+(n.href||""));if(s)for(var c=0;c<\/script>",e=e.removeChild(e.firstChild);break;case"select":e="string"==typeof a.is?o.createElement("select",{is:a.is}):o.createElement("select"),a.multiple?e.multiple=!0:a.size&&(e.size=a.size);break;default:e="string"==typeof a.is?o.createElement(n,{is:a.is}):o.createElement(n)}}e[Ie]=t,e[Be]=a;e:for(o=t.child;null!==o;){if(5===o.tag||6===o.tag)e.appendChild(o.stateNode);else if(4!==o.tag&&27!==o.tag&&null!==o.child){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;null===o.sibling;){if(null===o.return||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=e;e:switch(Gd(e,n,a),n){case"button":case"input":case"select":case"textarea":e=!!a.autoFocus;break e;case"img":e=!0;break e;default:e=!1}e&&Vc(t)}}return Kc(t),t.flags&=-16777217,null;case 6:if(e&&null!=t.stateNode)e.memoizedProps!==a&&Vc(t);else{if("string"!=typeof a&&null===t.stateNode)throw Error(r(166));if(e=X.current,ao(t)){if(e=t.stateNode,n=t.memoizedProps,a=null,null!==(o=Ka))switch(o.tag){case 27:case 5:a=o.memoizedProps}e[Ie]=t,(e=!!(e.nodeValue===n||null!==a&&!0===a.suppressHydrationWarning||$d(e.nodeValue,n)))||eo(t)}else(e=Qd(e).createTextNode(a))[Ie]=t,t.stateNode=e}return Kc(t),null;case 13:if(a=t.memoizedState,null===e||null!==e.memoizedState&&null!==e.memoizedState.dehydrated){if(o=ao(t),null!==a&&null!==a.dehydrated){if(null===e){if(!o)throw Error(r(318));if(!(o=null!==(o=t.memoizedState)?o.dehydrated:null))throw Error(r(317));o[Ie]=t}else oo(),!(128&t.flags)&&(t.memoizedState=null),t.flags|=4;Kc(t),o=!1}else null!==Xa&&(Nl(Xa),Xa=null),o=!0;if(!o)return 256&t.flags?(No(t),t):(No(t),null)}if(No(t),128&t.flags)return t.lanes=n,t;if(n=null!==a,e=null!==e&&null!==e.memoizedState,n){o=null,null!==(a=t.child).alternate&&null!==a.alternate.memoizedState&&null!==a.alternate.memoizedState.cachePool&&(o=a.alternate.memoizedState.cachePool.pool);var i=null;null!==a.memoizedState&&null!==a.memoizedState.cachePool&&(i=a.memoizedState.cachePool.pool),i!==o&&(a.flags|=2048)}return n!==e&&n&&(t.child.flags|=8192),Gc(t,t.updateQueue),Kc(t),null;case 4:return ee(),null===e&&Fd(t.stateNode.containerInfo),Kc(t),null;case 10:return _s(t.type),Kc(t),null;case 19:if(W(jo),null===(o=t.memoizedState))return Kc(t),null;if(a=!!(128&t.flags),null===(i=o.rendering))if(a)Wc(o,!1);else{if(0!==dl||null!==e&&128&e.flags)for(e=t.child;null!==e;){if(null!==(i=Mo(e))){for(t.flags|=128,Wc(o,!1),e=i.updateQueue,t.updateQueue=e,Gc(t,e),t.subtreeFlags=0,e=n,n=t.child;null!==n;)Ic(n,e),n=n.sibling;return K(jo,1&jo.current|2),t.child}e=e.sibling}null!==o.tail&&ce()>vl&&(t.flags|=128,a=!0,Wc(o,!1),t.lanes=4194304)}else{if(!a)if(null!==(e=Mo(i))){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Gc(t,e),Wc(o,!0),null===o.tail&&"hidden"===o.tailMode&&!i.alternate&&!Ya)return Kc(t),null}else 2*ce()-o.renderingStartTime>vl&&536870912!==n&&(t.flags|=128,a=!0,Wc(o,!1),t.lanes=4194304);o.isBackwards?(i.sibling=t.child,t.child=i):(null!==(e=o.last)?e.sibling=i:t.child=i,o.last=i)}return null!==o.tail?(t=o.tail,o.rendering=t,o.tail=t.sibling,o.renderingStartTime=ce(),t.sibling=null,e=jo.current,K(jo,a?1&e|2:1&e),t):(Kc(t),null);case 22:case 23:return No(t),To(),a=null!==t.memoizedState,null!==e?null!==e.memoizedState!==a&&(t.flags|=8192):a&&(t.flags|=8192),a?!!(536870912&n)&&!(128&t.flags)&&(Kc(t),6&t.subtreeFlags&&(t.flags|=8192)):Kc(t),null!==(n=t.updateQueue)&&Gc(t,n.retryQueue),n=null,null!==e&&null!==e.memoizedState&&null!==e.memoizedState.cachePool&&(n=e.memoizedState.cachePool.pool),a=null,null!==t.memoizedState&&null!==t.memoizedState.cachePool&&(a=t.memoizedState.cachePool.pool),a!==n&&(t.flags|=2048),null!==e&&W(Qo),null;case 24:return n=null,null!==e&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),_s(zo),Kc(t),null;case 25:return null}throw Error(r(156,t.tag))}function Yc(e,t){switch(Wa(t),t.tag){case 1:return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return _s(zo),ee(),65536&(e=t.flags)&&!(128&e)?(t.flags=-65537&e|128,t):null;case 26:case 27:case 5:return ne(t),null;case 13:if(No(t),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(r(340));oo()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return W(jo),null;case 4:return ee(),null;case 10:return _s(t.type),null;case 22:case 23:return No(t),To(),null!==e&&W(Qo),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 24:return _s(zo),null;default:return null}}function Xc(e,t){switch(Wa(t),t.tag){case 3:_s(zo),ee();break;case 26:case 27:case 5:ne(t);break;case 4:ee();break;case 13:No(t);break;case 19:W(jo);break;case 10:_s(t.type);break;case 22:case 23:No(t),To(),null!==e&&W(Qo);break;case 24:_s(zo)}}var Jc={getCacheForType:function(e){var t=xs(zo),n=t.data.get(e);return void 0===n&&(n=e(),t.data.set(e,n)),n}},Zc="function"==typeof WeakMap?WeakMap:Map,el=0,tl=null,nl=null,al=0,ol=0,il=null,rl=!1,sl=!1,cl=!1,ll=0,dl=0,ul=0,pl=0,hl=0,yl=0,gl=0,fl=null,ml=null,bl=!1,_l=0,vl=1/0,Pl=null,Sl=null,wl=!1,kl=null,xl=0,Al=0,El=null,Tl=0,Cl=null;function Dl(){if(2&el&&0!==al)return al&-al;if(null!==D.T){return 0!==Ho?Ho:Pd()}return Me()}function Ol(){0===yl&&(yl=536870912&al&&!Ya?536870912:Ce());var e=Co.current;return null!==e&&(e.flags|=32),yl}function Fl(e,t,n){(e===tl&&2===ol||null!==e.cancelPendingCommit)&&(zl(e,0),Ll(e,al,yl,!1)),Fe(e,n),2&el&&e===tl||(e===tl&&(!(2&el)&&(pl|=n),4===dl&&Ll(e,al,yl,!1)),gd(e))}function Rl(e,t,n){if(6&el)throw Error(r(327));for(var a=!n&&!(60&t)&&!(t&e.expiredLanes)||Ee(e,t),o=a?function(e,t){var n=el;el|=2;var a=$l(),o=ql();tl!==e||al!==t?(Pl=null,vl=ce()+500,zl(e,t)):sl=Ee(e,t);e:for(;;)try{if(0!==ol&&null!==nl){t=nl;var i=il;t:switch(ol){case 1:ol=0,il=null,Yl(e,t,i,1);break;case 2:if(lo(i)){ol=0,il=null,Ql(t);break}t=function(){2===ol&&tl===e&&(ol=7),gd(e)},i.then(t,t);break e;case 3:ol=7;break e;case 4:ol=5;break e;case 7:lo(i)?(ol=0,il=null,Ql(t)):(ol=0,il=null,Yl(e,t,i,7));break;case 5:var s=null;switch(nl.tag){case 26:s=nl.memoizedState;case 5:case 27:var c=nl;if(!s||Cu(s)){ol=0,il=null;var l=c.sibling;if(null!==l)nl=l;else{var d=c.return;null!==d?(nl=d,Xl(d)):nl=null}break t}}ol=0,il=null,Yl(e,t,i,5);break;case 6:ol=0,il=null,Yl(e,t,i,6);break;case 8:Bl(),dl=6;break e;default:throw Error(r(462))}}Wl();break}catch(u){Ul(e,u)}return ms=fs=null,D.H=a,D.A=o,el=n,null!==nl?0:(tl=null,al=0,Aa(),dl)}(e,t):Hl(e,t,!0),i=a;;){if(0===o){sl&&!a&&Ll(e,t,0,!1);break}if(6===o)Ll(e,t,0,!rl);else{if(n=e.current.alternate,i&&!Ml(n)){o=Hl(e,t,!1),i=!1;continue}if(2===o){if(i=t,e.errorRecoveryDisabledLanes&i)var s=0;else s=0!==(s=-536870913&e.pendingLanes)?s:536870912&s?536870912:0;if(0!==s){t=s;e:{var c=e;o=fl;var l=c.current.memoizedState.isDehydrated;if(l&&(zl(c,s).flags|=256),2!==(s=Hl(c,s,!1))){if(cl&&!l){c.errorRecoveryDisabledLanes|=i,pl|=i,o=4;break e}i=ml,ml=o,null!==i&&Nl(i)}o=s}if(i=!1,2!==o)continue}}if(1===o){zl(e,0),Ll(e,t,0,!0);break}e:{switch(a=e,o){case 0:case 1:throw Error(r(345));case 4:if((4194176&t)===t){Ll(a,t,yl,!rl);break e}break;case 2:ml=null;break;case 3:case 5:break;default:throw Error(r(329))}if(a.finishedWork=n,a.finishedLanes=t,(62914560&t)===t&&10<(i=_l+300-ce())){if(Ll(a,t,yl,!rl),0!==Ae(a,0))break e;a.timeoutHandle=eu(jl.bind(null,a,n,ml,Pl,bl,t,yl,pl,gl,rl,2,-0,0),i)}else jl(a,n,ml,Pl,bl,t,yl,pl,gl,rl,0,-0,0)}}break}gd(e)}function Nl(e){null===ml?ml=e:ml.push.apply(ml,e)}function jl(e,t,n,a,o,i,s,c,l,d,u,p,h){var y=t.subtreeFlags;if((8192&y||!(16785408&~y))&&(Du={stylesheets:null,count:0,unsuspend:Ou},Tc(t),null!==(t=function(){if(null===Du)throw Error(r(475));var e=Du;return e.stylesheets&&0===e.count&&Nu(e,e.stylesheets),0n?32:n,D.T=null,null===kl)var i=!1;else{n=El,El=null;var s=kl,c=xl;if(kl=null,xl=0,6&el)throw Error(r(331));var l=el;if(el|=4,Oc(s.current),wc(s,s.current,c,n),el=l,fd(0,!1),be&&"function"==typeof be.onPostCommitFiberRoot)try{be.onPostCommitFiberRoot(me,s)}catch(d){}i=!0}return i}finally{$.p=o,D.T=a,ed(e,t)}}return!1}function nd(e,t,n){t=Na(n,t),null!==(e=Fs(e,t=zr(e.stateNode,t,2),2))&&(Fe(e,2),gd(e))}function ad(e,t,n){if(3===e.tag)nd(e,e,n);else for(;null!==t;){if(3===t.tag){nd(t,e,n);break}if(1===t.tag){var a=t.stateNode;if("function"==typeof t.type.getDerivedStateFromError||"function"==typeof a.componentDidCatch&&(null===Sl||!Sl.has(a))){e=Na(n,e),null!==(a=Fs(t,n=Ur(2),2))&&($r(n,a,t,e),Fe(a,2),gd(a));break}}t=t.return}}function od(e,t,n){var a=e.pingCache;if(null===a){a=e.pingCache=new Zc;var o=new Set;a.set(t,o)}else void 0===(o=a.get(t))&&(o=new Set,a.set(t,o));o.has(n)||(cl=!0,o.add(n),e=id.bind(null,e,t,n),t.then(e,e))}function id(e,t,n){var a=e.pingCache;null!==a&&a.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,tl===e&&(al&n)===n&&(4===dl||3===dl&&(62914560&al)===al&&300>ce()-_l?!(2&el)&&zl(e,0):hl|=n,gl===al&&(gl=0)),gd(e)}function rd(e,t){0===t&&(t=De()),null!==(e=Ca(e,t))&&(Fe(e,t),gd(e))}function sd(e){var t=e.memoizedState,n=0;null!==t&&(n=t.retryLane),rd(e,n)}function cd(e,t){var n=0;switch(e.tag){case 13:var a=e.stateNode,o=e.memoizedState;null!==o&&(n=o.retryLane);break;case 19:a=e.stateNode;break;case 22:a=e.stateNode._retryCache;break;default:throw Error(r(314))}null!==a&&a.delete(t),rd(e,n)}var ld=null,dd=null,ud=!1,pd=!1,hd=!1,yd=0;function gd(e){var t;e!==dd&&null===e.next&&(null===dd?ld=dd=e:dd=dd.next=e),pd=!0,ud||(ud=!0,t=md,au((function(){6&el?oe(de,t):t()})))}function fd(e,t){if(!hd&&pd){hd=!0;do{for(var n=!1,a=ld;null!==a;){if(!t)if(0!==e){var o=a.pendingLanes;if(0===o)var i=0;else{var r=a.suspendedLanes,s=a.pingedLanes;i=(1<<31-ve(42|e)+1)-1,i=201326677&(i&=o&~(r&~s))?201326677&i|1:i?2|i:0}0!==i&&(n=!0,vd(a,i))}else i=al,!(3&(i=Ae(a,a===tl?i:0)))||Ee(a,i)||(n=!0,vd(a,i));a=a.next}}while(n);hd=!1}}function md(){pd=ud=!1;var e=0;0!==yd&&(function(){var e=window.event;if(e&&"popstate"===e.type)return e!==Zd&&(Zd=e,!0);return Zd=null,!1}()&&(e=yd),yd=0);for(var t=ce(),n=null,a=ld;null!==a;){var o=a.next,i=bd(a,t);0===i?(a.next=null,null===n?ld=o:n.next=o,null===o&&(dd=n)):(n=a,(0!==e||3&i)&&(pd=!0)),a=o}fd(e,!1)}function bd(e,t){for(var n=e.suspendedLanes,a=e.pingedLanes,o=e.expirationTimes,i=-62914561&e.pendingLanes;0 title"):null)}function Cu(e){return!!("stylesheet"!==e.type||3&e.state.loading)}var Du=null;function Ou(){}function Fu(){if(this.count--,0===this.count)if(this.stylesheets)Nu(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}var Ru=null;function Nu(e,t){e.stylesheets=null,null!==e.unsuspend&&(e.count++,Ru=new Map,t.forEach(ju,e),Ru=null,Fu.call(e))}function ju(e,t){if(!(4&t.state.loading)){var n=Ru.get(e);if(n)var a=n.get(null);else{n=new Map,Ru.set(e,n);for(var o=e.querySelectorAll("link[data-precedence],style[data-precedence]"),i=0;i{"use strict";var a=n(6540);function o(e){var t="https://react.dev/errors/"+e;if(1{"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}(),e.exports=n(1247)},961:(e,t,n)=>{"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}(),e.exports=n(6221)},115:e=>{var t="undefined"!=typeof Element,n="function"==typeof Map,a="function"==typeof Set,o="function"==typeof ArrayBuffer&&!!ArrayBuffer.isView;function i(e,r){if(e===r)return!0;if(e&&r&&"object"==typeof e&&"object"==typeof r){if(e.constructor!==r.constructor)return!1;var s,c,l,d;if(Array.isArray(e)){if((s=e.length)!=r.length)return!1;for(c=s;0!=c--;)if(!i(e[c],r[c]))return!1;return!0}if(n&&e instanceof Map&&r instanceof Map){if(e.size!==r.size)return!1;for(d=e.entries();!(c=d.next()).done;)if(!r.has(c.value[0]))return!1;for(d=e.entries();!(c=d.next()).done;)if(!i(c.value[1],r.get(c.value[0])))return!1;return!0}if(a&&e instanceof Set&&r instanceof Set){if(e.size!==r.size)return!1;for(d=e.entries();!(c=d.next()).done;)if(!r.has(c.value[0]))return!1;return!0}if(o&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(r)){if((s=e.length)!=r.length)return!1;for(c=s;0!=c--;)if(e[c]!==r[c])return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf&&"function"==typeof e.valueOf&&"function"==typeof r.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString&&"function"==typeof e.toString&&"function"==typeof r.toString)return e.toString()===r.toString();if((s=(l=Object.keys(e)).length)!==Object.keys(r).length)return!1;for(c=s;0!=c--;)if(!Object.prototype.hasOwnProperty.call(r,l[c]))return!1;if(t&&e instanceof Element)return!1;for(c=s;0!=c--;)if(("_owner"!==l[c]&&"__v"!==l[c]&&"__o"!==l[c]||!e.$$typeof)&&!i(e[l[c]],r[l[c]]))return!1;return!0}return e!=e&&r!=r}e.exports=function(e,t){try{return i(e,t)}catch(n){if((n.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw n}}},545:(e,t,n)=>{"use strict";n.d(t,{mg:()=>Z,vd:()=>H});var a=n(6540),o=n(5556),i=n.n(o),r=n(115),s=n.n(r),c=n(311),l=n.n(c),d=n(2833),u=n.n(d);function p(){return p=Object.assign||function(e){for(var t=1;t=0||(o[n]=e[n]);return o}var f={BASE:"base",BODY:"body",HEAD:"head",HTML:"html",LINK:"link",META:"meta",NOSCRIPT:"noscript",SCRIPT:"script",STYLE:"style",TITLE:"title",FRAGMENT:"Symbol(react.fragment)"},m={rel:["amphtml","canonical","alternate"]},b={type:["application/ld+json"]},_={charset:"",name:["robots","description"],property:["og:type","og:title","og:url","og:image","og:image:alt","og:description","twitter:url","twitter:title","twitter:description","twitter:image","twitter:image:alt","twitter:card","twitter:site"]},v=Object.keys(f).map((function(e){return f[e]})),P={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},S=Object.keys(P).reduce((function(e,t){return e[P[t]]=t,e}),{}),w=function(e,t){for(var n=e.length-1;n>=0;n-=1){var a=e[n];if(Object.prototype.hasOwnProperty.call(a,t))return a[t]}return null},k=function(e){var t=w(e,f.TITLE),n=w(e,"titleTemplate");if(Array.isArray(t)&&(t=t.join("")),n&&t)return n.replace(/%s/g,(function(){return t}));var a=w(e,"defaultTitle");return t||a||void 0},x=function(e){return w(e,"onChangeClientState")||function(){}},A=function(e,t){return t.filter((function(t){return void 0!==t[e]})).map((function(t){return t[e]})).reduce((function(e,t){return p({},e,t)}),{})},E=function(e,t){return t.filter((function(e){return void 0!==e[f.BASE]})).map((function(e){return e[f.BASE]})).reverse().reduce((function(t,n){if(!t.length)for(var a=Object.keys(n),o=0;o/g,">").replace(/"/g,""").replace(/'/g,"'")},j=function(e){return Object.keys(e).reduce((function(t,n){var a=void 0!==e[n]?n+'="'+e[n]+'"':""+n;return t?t+" "+a:a}),"")},M=function(e,t){return void 0===t&&(t={}),Object.keys(e).reduce((function(t,n){return t[P[n]||n]=e[n],t}),t)},L=function(e,t){return t.map((function(t,n){var o,i=((o={key:n})["data-rh"]=!0,o);return Object.keys(t).forEach((function(e){var n=P[e]||e;"innerHTML"===n||"cssText"===n?i.dangerouslySetInnerHTML={__html:t.innerHTML||t.cssText}:i[n]=t[e]})),a.createElement(e,i)}))},I=function(e,t,n){switch(e){case f.TITLE:return{toComponent:function(){return n=t.titleAttributes,(o={key:e=t.title})["data-rh"]=!0,i=M(n,o),[a.createElement(f.TITLE,i,e)];var e,n,o,i},toString:function(){return function(e,t,n,a){var o=j(n),i=D(t);return o?"<"+e+' data-rh="true" '+o+">"+N(i,a)+"":"<"+e+' data-rh="true">'+N(i,a)+""}(e,t.title,t.titleAttributes,n)}};case"bodyAttributes":case"htmlAttributes":return{toComponent:function(){return M(t)},toString:function(){return j(t)}};default:return{toComponent:function(){return L(e,t)},toString:function(){return function(e,t,n){return t.reduce((function(t,a){var o=Object.keys(a).filter((function(e){return!("innerHTML"===e||"cssText"===e)})).reduce((function(e,t){var o=void 0===a[t]?t:t+'="'+N(a[t],n)+'"';return e?e+" "+o:o}),""),i=a.innerHTML||a.cssText||"",r=-1===R.indexOf(e);return t+"<"+e+' data-rh="true" '+o+(r?"/>":">"+i+"")}),"")}(e,t,n)}}}},B=function(e){var t=e.baseTag,n=e.bodyAttributes,a=e.encode,o=e.htmlAttributes,i=e.noscriptTags,r=e.styleTags,s=e.title,c=void 0===s?"":s,l=e.titleAttributes,d=e.linkTags,u=e.metaTags,p=e.scriptTags,h={toComponent:function(){},toString:function(){return""}};if(e.prioritizeSeoTags){var y=function(e){var t=e.linkTags,n=e.scriptTags,a=e.encode,o=O(e.metaTags,_),i=O(t,m),r=O(n,b);return{priorityMethods:{toComponent:function(){return[].concat(L(f.META,o.priority),L(f.LINK,i.priority),L(f.SCRIPT,r.priority))},toString:function(){return I(f.META,o.priority,a)+" "+I(f.LINK,i.priority,a)+" "+I(f.SCRIPT,r.priority,a)}},metaTags:o.default,linkTags:i.default,scriptTags:r.default}}(e);h=y.priorityMethods,d=y.linkTags,u=y.metaTags,p=y.scriptTags}return{priority:h,base:I(f.BASE,t,a),bodyAttributes:I("bodyAttributes",n,a),htmlAttributes:I("htmlAttributes",o,a),link:I(f.LINK,d,a),meta:I(f.META,u,a),noscript:I(f.NOSCRIPT,i,a),script:I(f.SCRIPT,p,a),style:I(f.STYLE,r,a),title:I(f.TITLE,{title:c,titleAttributes:l},a)}},z=[],U=function(e,t){var n=this;void 0===t&&(t="undefined"!=typeof document),this.instances=[],this.value={setHelmet:function(e){n.context.helmet=e},helmetInstances:{get:function(){return n.canUseDOM?z:n.instances},add:function(e){(n.canUseDOM?z:n.instances).push(e)},remove:function(e){var t=(n.canUseDOM?z:n.instances).indexOf(e);(n.canUseDOM?z:n.instances).splice(t,1)}}},this.context=e,this.canUseDOM=t,t||(e.helmet=B({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))},$=a.createContext({}),q=i().shape({setHelmet:i().func,helmetInstances:i().shape({get:i().func,add:i().func,remove:i().func})}),V="undefined"!=typeof document,H=function(e){function t(n){var a;return(a=e.call(this,n)||this).helmetData=new U(a.props.context,t.canUseDOM),a}return h(t,e),t.prototype.render=function(){return a.createElement($.Provider,{value:this.helmetData.value},this.props.children)},t}(a.Component);H.canUseDOM=V,H.propTypes={context:i().shape({helmet:i().shape()}),children:i().node.isRequired},H.defaultProps={context:{}},H.displayName="HelmetProvider";var G=function(e,t){var n,a=document.head||document.querySelector(f.HEAD),o=a.querySelectorAll(e+"[data-rh]"),i=[].slice.call(o),r=[];return t&&t.length&&t.forEach((function(t){var a=document.createElement(e);for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&("innerHTML"===o?a.innerHTML=t.innerHTML:"cssText"===o?a.styleSheet?a.styleSheet.cssText=t.cssText:a.appendChild(document.createTextNode(t.cssText)):a.setAttribute(o,void 0===t[o]?"":t[o]));a.setAttribute("data-rh","true"),i.some((function(e,t){return n=t,a.isEqualNode(e)}))?i.splice(n,1):r.push(a)})),i.forEach((function(e){return e.parentNode.removeChild(e)})),r.forEach((function(e){return a.appendChild(e)})),{oldTags:i,newTags:r}},W=function(e,t){var n=document.getElementsByTagName(e)[0];if(n){for(var a=n.getAttribute("data-rh"),o=a?a.split(","):[],i=[].concat(o),r=Object.keys(t),s=0;s=0;u-=1)n.removeAttribute(i[u]);o.length===i.length?n.removeAttribute("data-rh"):n.getAttribute("data-rh")!==r.join(",")&&n.setAttribute("data-rh",r.join(","))}},K=function(e,t){var n=e.baseTag,a=e.htmlAttributes,o=e.linkTags,i=e.metaTags,r=e.noscriptTags,s=e.onChangeClientState,c=e.scriptTags,l=e.styleTags,d=e.title,u=e.titleAttributes;W(f.BODY,e.bodyAttributes),W(f.HTML,a),function(e,t){void 0!==e&&document.title!==e&&(document.title=D(e)),W(f.TITLE,t)}(d,u);var p={baseTag:G(f.BASE,n),linkTags:G(f.LINK,o),metaTags:G(f.META,i),noscriptTags:G(f.NOSCRIPT,r),scriptTags:G(f.SCRIPT,c),styleTags:G(f.STYLE,l)},h={},y={};Object.keys(p).forEach((function(e){var t=p[e],n=t.newTags,a=t.oldTags;n.length&&(h[e]=n),a.length&&(y[e]=p[e].oldTags)})),t&&t(),s(e,h,y)},Q=null,Y=function(e){function t(){for(var t,n=arguments.length,a=new Array(n),o=0;o elements are self-closing and can not contain children. Refer to our API for more information.")}},n.flattenArrayTypeChildren=function(e){var t,n=e.child,a=e.arrayTypeChildren;return p({},a,((t={})[n.type]=[].concat(a[n.type]||[],[p({},e.newChildProps,this.mapNestedChildrenToProps(n,e.nestedChildren))]),t))},n.mapObjectTypeChildren=function(e){var t,n,a=e.child,o=e.newProps,i=e.newChildProps,r=e.nestedChildren;switch(a.type){case f.TITLE:return p({},o,((t={})[a.type]=r,t.titleAttributes=p({},i),t));case f.BODY:return p({},o,{bodyAttributes:p({},i)});case f.HTML:return p({},o,{htmlAttributes:p({},i)});default:return p({},o,((n={})[a.type]=p({},i),n))}},n.mapArrayTypeChildrenToProps=function(e,t){var n=p({},t);return Object.keys(e).forEach((function(t){var a;n=p({},n,((a={})[t]=e[t],a))})),n},n.warnOnInvalidChildren=function(e,t){return l()(v.some((function(t){return e.type===t})),"function"==typeof e.type?"You may be attempting to nest components within each other, which is not allowed. Refer to our API for more information.":"Only elements types "+v.join(", ")+" are allowed. Helmet does not support rendering <"+e.type+"> elements. Refer to our API for more information."),l()(!t||"string"==typeof t||Array.isArray(t)&&!t.some((function(e){return"string"!=typeof e})),"Helmet expects a string as a child of <"+e.type+">. Did you forget to wrap your children in braces? ( <"+e.type+">{``} ) Refer to our API for more information."),!0},n.mapChildrenToProps=function(e,t){var n=this,o={};return a.Children.forEach(e,(function(e){if(e&&e.props){var a=e.props,i=a.children,r=g(a,X),s=Object.keys(r).reduce((function(e,t){return e[S[t]||t]=r[t],e}),{}),c=e.type;switch("symbol"==typeof c?c=c.toString():n.warnOnInvalidChildren(e,i),c){case f.FRAGMENT:t=n.mapChildrenToProps(i,t);break;case f.LINK:case f.META:case f.NOSCRIPT:case f.SCRIPT:case f.STYLE:o=n.flattenArrayTypeChildren({child:e,arrayTypeChildren:o,newChildProps:s,nestedChildren:i});break;default:t=n.mapObjectTypeChildren({child:e,newProps:t,newChildProps:s,nestedChildren:i})}}})),this.mapArrayTypeChildrenToProps(o,t)},n.render=function(){var e=this.props,t=e.children,n=g(e,J),o=p({},n),i=n.helmetData;return t&&(o=this.mapChildrenToProps(t,o)),!i||i instanceof U||(i=new U(i.context,i.instances)),i?a.createElement(Y,p({},o,{context:i.value,helmetData:void 0})):a.createElement($.Consumer,null,(function(e){return a.createElement(Y,p({},o,{context:e}))}))},t}(a.Component);Z.propTypes={base:i().object,bodyAttributes:i().object,children:i().oneOfType([i().arrayOf(i().node),i().node]),defaultTitle:i().string,defer:i().bool,encodeSpecialCharacters:i().bool,htmlAttributes:i().object,link:i().arrayOf(i().object),meta:i().arrayOf(i().object),noscript:i().arrayOf(i().object),onChangeClientState:i().func,script:i().arrayOf(i().object),style:i().arrayOf(i().object),title:i().string,titleAttributes:i().object,titleTemplate:i().string,prioritizeSeoTags:i().bool,helmetData:i().object},Z.defaultProps={defer:!0,encodeSpecialCharacters:!0,prioritizeSeoTags:!1},Z.displayName="Helmet"},2799:(e,t)=>{"use strict";var n="function"==typeof Symbol&&Symbol.for,a=n?Symbol.for("react.element"):60103,o=n?Symbol.for("react.portal"):60106,i=n?Symbol.for("react.fragment"):60107,r=n?Symbol.for("react.strict_mode"):60108,s=n?Symbol.for("react.profiler"):60114,c=n?Symbol.for("react.provider"):60109,l=n?Symbol.for("react.context"):60110,d=n?Symbol.for("react.async_mode"):60111,u=n?Symbol.for("react.concurrent_mode"):60111,p=n?Symbol.for("react.forward_ref"):60112,h=n?Symbol.for("react.suspense"):60113,y=n?Symbol.for("react.suspense_list"):60120,g=n?Symbol.for("react.memo"):60115,f=n?Symbol.for("react.lazy"):60116,m=n?Symbol.for("react.block"):60121,b=n?Symbol.for("react.fundamental"):60117,_=n?Symbol.for("react.responder"):60118,v=n?Symbol.for("react.scope"):60119;function P(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case a:switch(e=e.type){case d:case u:case i:case s:case r:case h:return e;default:switch(e=e&&e.$$typeof){case l:case p:case f:case g:case c:return e;default:return t}}case o:return t}}}function S(e){return P(e)===u}t.AsyncMode=d,t.ConcurrentMode=u,t.ContextConsumer=l,t.ContextProvider=c,t.Element=a,t.ForwardRef=p,t.Fragment=i,t.Lazy=f,t.Memo=g,t.Portal=o,t.Profiler=s,t.StrictMode=r,t.Suspense=h,t.isAsyncMode=function(e){return S(e)||P(e)===d},t.isConcurrentMode=S,t.isContextConsumer=function(e){return P(e)===l},t.isContextProvider=function(e){return P(e)===c},t.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===a},t.isForwardRef=function(e){return P(e)===p},t.isFragment=function(e){return P(e)===i},t.isLazy=function(e){return P(e)===f},t.isMemo=function(e){return P(e)===g},t.isPortal=function(e){return P(e)===o},t.isProfiler=function(e){return P(e)===s},t.isStrictMode=function(e){return P(e)===r},t.isSuspense=function(e){return P(e)===h},t.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===i||e===u||e===s||e===r||e===h||e===y||"object"==typeof e&&null!==e&&(e.$$typeof===f||e.$$typeof===g||e.$$typeof===c||e.$$typeof===l||e.$$typeof===p||e.$$typeof===b||e.$$typeof===_||e.$$typeof===v||e.$$typeof===m)},t.typeOf=P},4363:(e,t,n)=>{"use strict";e.exports=n(2799)},3259:(e,t,n)=>{"use strict";function a(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function o(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(){return r=Object.assign||function(e){for(var t=1;t{"use strict";n.d(t,{u:()=>r,v:()=>s});var a=n(6347),o=n(8168),i=n(6540);function r(e,t,n){return void 0===n&&(n=[]),e.some((function(e){var o=e.path?(0,a.B6)(t,e):n.length?n[n.length-1].match:a.Ix.computeRootMatch(t);return o&&(n.push({route:e,match:o}),e.routes&&r(e.routes,t,n)),o})),n}function s(e,t,n){return void 0===t&&(t={}),void 0===n&&(n={}),e?i.createElement(a.dO,n,e.map((function(e,n){return i.createElement(a.qh,{key:e.key||n,path:e.path,exact:e.exact,strict:e.strict,render:function(n){return e.render?e.render((0,o.A)({},n,{},t,{route:e})):i.createElement(e.component,(0,o.A)({},n,t,{route:e}))}})}))):null}},4625:(e,t,n)=>{"use strict";n.d(t,{I9:()=>u,Kd:()=>d,N_:()=>m,k2:()=>v});var a=n(6347),o=n(2892),i=n(6540),r=n(1513),s=n(8168),c=n(8587),l=n(1561),d=function(e){function t(){for(var t,n=arguments.length,a=new Array(n),o=0;o{"use strict";n.d(t,{B6:()=>w,Ix:()=>_,W6:()=>F,XZ:()=>b,dO:()=>D,qh:()=>k,zy:()=>R});var a=n(2892),o=n(6540),i=n(5556),r=n.n(i),s=n(1513),c=n(1561),l=n(8168),d=n(5302),u=n.n(d),p=(n(4363),n(8587)),h=(n(4146),1073741823),y="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==n.g?n.g:{};var g=o.createContext||function(e,t){var n,i,s="__create-react-context-"+function(){var e="__global_unique_id__";return y[e]=(y[e]||0)+1}()+"__",c=function(e){function n(){for(var t,n,a,o=arguments.length,i=new Array(o),r=0;r{"use strict";var n=Symbol.for("react.transitional.element"),a=Symbol.for("react.fragment");function o(e,t,a){var o=null;if(void 0!==a&&(o=""+a),void 0!==t.key&&(o=""+t.key),"key"in t)for(var i in a={},t)"key"!==i&&(a[i]=t[i]);else a=t;return t=a.ref,{$$typeof:n,type:e,key:o,ref:void 0!==t?t:null,props:a}}t.Fragment=a,t.jsx=o,t.jsxs=o},9869:(e,t)=>{"use strict";var n=Symbol.for("react.transitional.element"),a=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),s=Symbol.for("react.consumer"),c=Symbol.for("react.context"),l=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),u=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),h=Symbol.iterator;var y={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,f={};function m(e,t,n){this.props=e,this.context=t,this.refs=f,this.updater=n||y}function b(){}function _(e,t,n){this.props=e,this.context=t,this.refs=f,this.updater=n||y}m.prototype.isReactComponent={},m.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},m.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},b.prototype=m.prototype;var v=_.prototype=new b;v.constructor=_,g(v,m.prototype),v.isPureReactComponent=!0;var P=Array.isArray,S={H:null,A:null,T:null,S:null},w=Object.prototype.hasOwnProperty;function k(e,t,a,o,i,r){return a=r.ref,{$$typeof:n,type:e,key:t,ref:void 0!==a?a:null,props:r}}function x(e){return"object"==typeof e&&null!==e&&e.$$typeof===n}var A=/\/+/g;function E(e,t){return"object"==typeof e&&null!==e&&null!=e.key?(n=""+e.key,a={"=":"=0",":":"=2"},"$"+n.replace(/[=:]/g,(function(e){return a[e]}))):t.toString(36);var n,a}function T(){}function C(e,t,o,i,r){var s=typeof e;"undefined"!==s&&"boolean"!==s||(e=null);var c,l,d=!1;if(null===e)d=!0;else switch(s){case"bigint":case"string":case"number":d=!0;break;case"object":switch(e.$$typeof){case n:case a:d=!0;break;case p:return C((d=e._init)(e._payload),t,o,i,r)}}if(d)return r=r(e),d=""===i?"."+E(e,0):i,P(r)?(o="",null!=d&&(o=d.replace(A,"$&/")+"/"),C(r,t,o,"",(function(e){return e}))):null!=r&&(x(r)&&(c=r,l=o+(null==r.key||e&&e.key===r.key?"":(""+r.key).replace(A,"$&/")+"/")+d,r=k(c.type,l,void 0,0,0,c.props)),t.push(r)),1;d=0;var u,y=""===i?".":i+":";if(P(e))for(var g=0;g{"use strict";e.exports=n(9869)},4848:(e,t,n)=>{"use strict";e.exports=n(9698)},4477:(e,t)=>{"use strict";function n(e,t){var n=e.length;e.push(t);e:for(;0>>1,o=e[a];if(!(0>>1;ai(c,n))li(d,c)?(e[a]=d,e[l]=n,a=l):(e[a]=c,e[s]=n,a=s);else{if(!(li(d,n)))break e;e[a]=d,e[l]=n,a=l}}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}if(t.unstable_now=void 0,"object"==typeof performance&&"function"==typeof performance.now){var r=performance;t.unstable_now=function(){return r.now()}}else{var s=Date,c=s.now();t.unstable_now=function(){return s.now()-c}}var l=[],d=[],u=1,p=null,h=3,y=!1,g=!1,f=!1,m="function"==typeof setTimeout?setTimeout:null,b="function"==typeof clearTimeout?clearTimeout:null,_="undefined"!=typeof setImmediate?setImmediate:null;function v(e){for(var t=a(d);null!==t;){if(null===t.callback)o(d);else{if(!(t.startTime<=e))break;o(d),t.sortIndex=t.expirationTime,n(l,t)}t=a(d)}}function P(e){if(f=!1,v(e),!g)if(null!==a(l))g=!0,O();else{var t=a(d);null!==t&&F(P,t.startTime-e)}}var S,w=!1,k=-1,x=5,A=-1;function E(){return!(t.unstable_now()-Ae&&E());){var r=p.callback;if("function"==typeof r){p.callback=null,h=p.priorityLevel;var s=r(p.expirationTime<=e);if(e=t.unstable_now(),"function"==typeof s){p.callback=s,v(e),n=!0;break t}p===a(l)&&o(l),v(e)}else o(l);p=a(l)}if(null!==p)n=!0;else{var c=a(d);null!==c&&F(P,c.startTime-e),n=!1}}break e}finally{p=null,h=i,y=!1}n=void 0}}finally{n?S():w=!1}}}if("function"==typeof _)S=function(){_(T)};else if("undefined"!=typeof MessageChannel){var C=new MessageChannel,D=C.port2;C.port1.onmessage=T,S=function(){D.postMessage(null)}}else S=function(){m(T,0)};function O(){w||(w=!0,S())}function F(e,n){k=m((function(){e(t.unstable_now())}),n)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_continueExecution=function(){g||y||(g=!0,O())},t.unstable_forceFrameRate=function(e){0>e||125r?(e.sortIndex=i,n(d,e),null===a(l)&&e===a(d)&&(f?(b(k),k=-1):f=!0,F(P,i-r))):(e.sortIndex=s,n(l,e),g||y||(g=!0,O())),e},t.unstable_shouldYield=E,t.unstable_wrapCallback=function(e){var t=h;return function(){var n=h;h=t;try{return e.apply(this,arguments)}finally{h=n}}}},9982:(e,t,n)=>{"use strict";e.exports=n(4477)},2833:e=>{e.exports=function(e,t,n,a){var o=n?n.call(a,e,t):void 0;if(void 0!==o)return!!o;if(e===t)return!0;if("object"!=typeof e||!e||"object"!=typeof t||!t)return!1;var i=Object.keys(e),r=Object.keys(t);if(i.length!==r.length)return!1;for(var s=Object.prototype.hasOwnProperty.bind(t),c=0;c{"use strict";n.r(t),n.d(t,{default:()=>a});const a={title:"Python Guide",tagline:" ",favicon:"img/favicon.ico",url:"https://CagriCatik.github.io",baseUrl:"/Python/",organizationName:"CagriCatik",deploymentBranch:"gh-pages",onBrokenLinks:"ignore",onBrokenMarkdownLinks:"ignore",i18n:{defaultLocale:"en",locales:["en"],path:"i18n",localeConfigs:{}},presets:[["classic",{docs:{sidebarPath:"./sidebars.js",editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/"},blog:{showReadingTime:!0,feedOptions:{type:["rss","atom"],xslt:!0},editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/",onInlineTags:"warn",onInlineAuthors:"warn",onUntruncatedBlogPosts:"warn"},theme:{customCss:"./src/css/custom.css"}}]],themeConfig:{image:"img/docusaurus-social-card.jpg",navbar:{title:" ",logo:{alt:"My Site Logo",src:"img/logo.png"},items:[{type:"docSidebar",sidebarId:"guideSidebar",position:"left",label:"\ud83d\udc0d Developer Guide"},{type:"docSidebar",sidebarId:"dataAnalysisSidebar",position:"left",label:"\ud83d\udc0d Data Analysis"},{type:"docSidebar",sidebarId:"designPatternsSidebar",position:"left",label:"\ud83d\udc0d Design Patterns"},{type:"docSidebar",sidebarId:"guiSidebar",position:"left",label:"\ud83d\udc0d GUI"},{type:"docSidebar",sidebarId:"restAPISidebar",position:"left",label:"\ud83d\udc0d REST-API"},{type:"docSidebar",sidebarId:"cicdSidebar",position:"left",label:"\ud83d\udc0d CI/CD"},{type:"docSidebar",sidebarId:"tipsAndTricksSidebar",position:"left",label:"\ud83d\udc0d Tips & Tricks"},{to:"/blog",label:"\ud83d\udc0d Blog",position:"left"},{href:"https://github.com/CagriCatik/Python",label:"GitHub",position:"right"}],hideOnScroll:!1},footer:{style:"dark",links:[{title:"Docs",items:[{label:"Tutorial",to:"/docs/intro"}]},{title:"Community",items:[{label:"Stack Overflow",href:"https://stackoverflow.com/questions/tagged/docusaurus"},{label:"Discord",href:"https://discordapp.com/invite/docusaurus"},{label:"X",href:"https://x.com/docusaurus"}]},{title:"More",items:[{label:"Blog",to:"/blog"},{label:"GitHub",href:"https://github.com/CagriCatik/Python"}]}],copyright:"Copyright \xa9 2025"},prism:{theme:{plain:{color:"#393A34",backgroundColor:"#f6f8fa"},styles:[{types:["comment","prolog","doctype","cdata"],style:{color:"#999988",fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}},{types:["string","attr-value"],style:{color:"#e3116c"}},{types:["punctuation","operator"],style:{color:"#393A34"}},{types:["entity","url","symbol","number","boolean","variable","constant","property","regex","inserted"],style:{color:"#36acaa"}},{types:["atrule","keyword","attr-name","selector"],style:{color:"#00a4db"}},{types:["function","deleted","tag"],style:{color:"#d73a49"}},{types:["function-variable"],style:{color:"#6f42c1"}},{types:["tag","selector","keyword"],style:{color:"#00009f"}}]},darkTheme:{plain:{color:"#F8F8F2",backgroundColor:"#282A36"},styles:[{types:["prolog","constant","builtin"],style:{color:"rgb(189, 147, 249)"}},{types:["inserted","function"],style:{color:"rgb(80, 250, 123)"}},{types:["deleted"],style:{color:"rgb(255, 85, 85)"}},{types:["changed"],style:{color:"rgb(255, 184, 108)"}},{types:["punctuation","symbol"],style:{color:"rgb(248, 248, 242)"}},{types:["string","char","tag","selector"],style:{color:"rgb(255, 121, 198)"}},{types:["keyword","variable"],style:{color:"rgb(189, 147, 249)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(98, 114, 164)"}},{types:["attr-name"],style:{color:"rgb(241, 250, 140)"}}]},additionalLanguages:[],magicComments:[{className:"theme-code-block-highlighted-line",line:"highlight-next-line",block:{start:"highlight-start",end:"highlight-end"}}]},colorMode:{defaultMode:"light",disableSwitch:!1,respectPrefersColorScheme:!1},docs:{versionPersistence:"localStorage",sidebar:{hideable:!1,autoCollapseCategories:!1}},blog:{sidebar:{groupByYear:!0}},metadata:[],tableOfContents:{minHeadingLevel:2,maxHeadingLevel:3}},baseUrlIssueBanner:!0,future:{experimental_faster:{swcJsLoader:!1,swcJsMinimizer:!1,swcHtmlMinimizer:!1,lightningCssMinimizer:!1,mdxCrossCompilerCache:!1,rspackBundler:!1},experimental_storage:{type:"localStorage",namespace:!1},experimental_router:"browser"},onBrokenAnchors:"warn",onDuplicateRoutes:"warn",staticDirectories:["static"],customFields:{},plugins:[],themes:[],scripts:[],headTags:[],stylesheets:[],clientModules:[],titleDelimiter:"|",noIndex:!1,markdown:{format:"mdx",mermaid:!1,mdx1Compat:{comments:!0,admonitions:!0,headingIds:!0},anchors:{maintainCase:!1}}}},8168:(e,t,n)=>{"use strict";function a(){return a=Object.assign?Object.assign.bind():function(e){for(var t=1;ta})},2892:(e,t,n)=>{"use strict";function a(e,t){return a=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},a(e,t)}function o(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,a(e,t)}n.d(t,{A:()=>o})},8587:(e,t,n)=>{"use strict";function a(e,t){if(null==e)return{};var n={};for(var a in e)if({}.hasOwnProperty.call(e,a)){if(t.includes(a))continue;n[a]=e[a]}return n}n.d(t,{A:()=>a})},4164:(e,t,n)=>{"use strict";function a(e){var t,n,o="";if("string"==typeof e||"number"==typeof e)o+=e;else if("object"==typeof e)if(Array.isArray(e)){var i=e.length;for(t=0;to});const o=function(){for(var e,t,n=0,o="",i=arguments.length;n{"use strict";n.d(t,{My:()=>E,f4:()=>ne});var a,o,i,r,s,c,l,d=n(6540),u=n(4164),p=Object.create,h=Object.defineProperty,y=Object.defineProperties,g=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyDescriptors,m=Object.getOwnPropertyNames,b=Object.getOwnPropertySymbols,_=Object.getPrototypeOf,v=Object.prototype.hasOwnProperty,P=Object.prototype.propertyIsEnumerable,S=(e,t,n)=>t in e?h(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,w=(e,t)=>{for(var n in t||(t={}))v.call(t,n)&&S(e,n,t[n]);if(b)for(var n of b(t))P.call(t,n)&&S(e,n,t[n]);return e},k=(e,t)=>y(e,f(t)),x=(e,t)=>{var n={};for(var a in e)v.call(e,a)&&t.indexOf(a)<0&&(n[a]=e[a]);if(null!=e&&b)for(var a of b(e))t.indexOf(a)<0&&P.call(e,a)&&(n[a]=e[a]);return n},A=(a={"../../node_modules/.pnpm/prismjs@1.29.0_patch_hash=vrxx3pzkik6jpmgpayxfjunetu/node_modules/prismjs/prism.js"(e,t){var n=function(){var e=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,t=0,n={},a={util:{encode:function e(t){return t instanceof o?new o(t.type,e(t.content),t.alias):Array.isArray(t)?t.map(e):t.replace(/&/g,"&").replace(/=u.reach);w+=S.value.length,S=S.next){var k=S.value;if(t.length>e.length)return;if(!(k instanceof o)){var x,A=1;if(b){if(!(x=i(P,w,e,m))||x.index>=e.length)break;var E=x.index,T=x.index+x[0].length,C=w;for(C+=S.value.length;E>=C;)C+=(S=S.next).value.length;if(w=C-=S.value.length,S.value instanceof o)continue;for(var D=S;D!==t.tail&&(Cu.reach&&(u.reach=N);var j=S.prev;if(F&&(j=c(t,j,F),w+=F.length),l(t,j,A),S=c(t,j,new o(p,f?a.tokenize(O,f):O,_,O)),R&&c(t,S,R),A>1){var M={cause:p+","+y,reach:N};r(e,t,n,S.prev,w,M),u&&M.reach>u.reach&&(u.reach=M.reach)}}}}}}function s(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function c(e,t,n){var a=t.next,o={value:n,prev:t,next:a};return t.next=o,a.prev=o,e.length++,o}function l(e,t,n){for(var a=t.next,o=0;o"+i.content+""},a}();t.exports=n,n.default=n}},function(){return o||(0,a[m(a)[0]])((o={exports:{}}).exports,o),o.exports}),E=((e,t,n)=>(n=null!=e?p(_(e)):{},((e,t,n,a)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let o of m(t))v.call(e,o)||o===n||h(e,o,{get:()=>t[o],enumerable:!(a=g(t,o))||a.enumerable});return e})(!t&&e&&e.__esModule?n:h(n,"default",{value:e,enumerable:!0}),e)))(A());E.languages.markup={comment:{pattern://,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},E.languages.markup.tag.inside["attr-value"].inside.entity=E.languages.markup.entity,E.languages.markup.doctype.inside["internal-subset"].inside=E.languages.markup,E.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(E.languages.markup.tag,"addInlined",{value:function(e,t){var n;(t=((n=((n={})["language-"+t]={pattern:/(^$)/i,lookbehind:!0,inside:E.languages[t]},n.cdata=/^$/i,{"included-cdata":{pattern://i,inside:n}}))["language-"+t]={pattern:/[\s\S]+/,inside:E.languages[t]},{}))[e]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:n},E.languages.insertBefore("markup","cdata",t)}}),Object.defineProperty(E.languages.markup.tag,"addAttribute",{value:function(e,t){E.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+e+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[t,"language-"+t],inside:E.languages[t]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),E.languages.html=E.languages.markup,E.languages.mathml=E.languages.markup,E.languages.svg=E.languages.markup,E.languages.xml=E.languages.extend("markup",{}),E.languages.ssml=E.languages.xml,E.languages.atom=E.languages.xml,E.languages.rss=E.languages.xml,i=E,r={pattern:/\\[\\(){}[\]^$+*?|.]/,alias:"escape"},c="(?:[^\\\\-]|"+(s=/\\(?:x[\da-fA-F]{2}|u[\da-fA-F]{4}|u\{[\da-fA-F]+\}|0[0-7]{0,2}|[123][0-7]{2}|c[a-zA-Z]|.)/).source+")",c=RegExp(c+"-"+c),l={pattern:/(<|')[^<>']+(?=[>']$)/,lookbehind:!0,alias:"variable"},i.languages.regex={"char-class":{pattern:/((?:^|[^\\])(?:\\\\)*)\[(?:[^\\\]]|\\[\s\S])*\]/,lookbehind:!0,inside:{"char-class-negation":{pattern:/(^\[)\^/,lookbehind:!0,alias:"operator"},"char-class-punctuation":{pattern:/^\[|\]$/,alias:"punctuation"},range:{pattern:c,inside:{escape:s,"range-punctuation":{pattern:/-/,alias:"operator"}}},"special-escape":r,"char-set":{pattern:/\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},escape:s}},"special-escape":r,"char-set":{pattern:/\.|\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},backreference:[{pattern:/\\(?![123][0-7]{2})[1-9]/,alias:"keyword"},{pattern:/\\k<[^<>']+>/,alias:"keyword",inside:{"group-name":l}}],anchor:{pattern:/[$^]|\\[ABbGZz]/,alias:"function"},escape:s,group:[{pattern:/\((?:\?(?:<[^<>']+>|'[^<>']+'|[>:]|]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},E.languages.javascript=E.languages.extend("clike",{"class-name":[E.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),E.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,E.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:E.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:E.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:E.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:E.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:E.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),E.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:E.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),E.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),E.languages.markup&&(E.languages.markup.tag.addInlined("script","javascript"),E.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),E.languages.js=E.languages.javascript,E.languages.actionscript=E.languages.extend("javascript",{keyword:/\b(?:as|break|case|catch|class|const|default|delete|do|dynamic|each|else|extends|final|finally|for|function|get|if|implements|import|in|include|instanceof|interface|internal|is|namespace|native|new|null|override|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|use|var|void|while|with)\b/,operator:/\+\+|--|(?:[+\-*\/%^]|&&?|\|\|?|<>?>?|[!=]=?)=?|[~?@]/}),E.languages.actionscript["class-name"].alias="function",delete E.languages.actionscript.parameter,delete E.languages.actionscript["literal-property"],E.languages.markup&&E.languages.insertBefore("actionscript","string",{xml:{pattern:/(^|[^.])<\/?\w+(?:\s+[^\s>\/=]+=("|')(?:\\[\s\S]|(?!\2)[^\\])*\2)*\s*\/?>/,lookbehind:!0,inside:E.languages.markup}}),function(e){var t=/#(?!\{).+/,n={pattern:/#\{[^}]+\}/,alias:"variable"};e.languages.coffeescript=e.languages.extend("javascript",{comment:t,string:[{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,inside:{interpolation:n}}],keyword:/\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,"class-member":{pattern:/@(?!\d)\w+/,alias:"variable"}}),e.languages.insertBefore("coffeescript","comment",{"multiline-comment":{pattern:/###[\s\S]+?###/,alias:"comment"},"block-regex":{pattern:/\/{3}[\s\S]*?\/{3}/,alias:"regex",inside:{comment:t,interpolation:n}}}),e.languages.insertBefore("coffeescript","string",{"inline-javascript":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,inside:{delimiter:{pattern:/^`|`$/,alias:"punctuation"},script:{pattern:/[\s\S]+/,alias:"language-javascript",inside:e.languages.javascript}}},"multiline-string":[{pattern:/'''[\s\S]*?'''/,greedy:!0,alias:"string"},{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string",inside:{interpolation:n}}]}),e.languages.insertBefore("coffeescript","keyword",{property:/(?!\d)\w+(?=\s*:(?!:))/}),delete e.languages.coffeescript["template-string"],e.languages.coffee=e.languages.coffeescript}(E),function(e){var t=e.languages.javadoclike={parameter:{pattern:/(^[\t ]*(?:\/{3}|\*|\/\*\*)\s*@(?:arg|arguments|param)\s+)\w+/m,lookbehind:!0},keyword:{pattern:/(^[\t ]*(?:\/{3}|\*|\/\*\*)\s*|\{)@[a-z][a-zA-Z-]+\b/m,lookbehind:!0},punctuation:/[{}]/};Object.defineProperty(t,"addSupport",{value:function(t,n){(t="string"==typeof t?[t]:t).forEach((function(t){var a=function(e){e.inside||(e.inside={}),e.inside.rest=n},o="doc-comment";if(i=e.languages[t]){var i,r=i[o];if((r=r||(i=e.languages.insertBefore(t,"comment",{"doc-comment":{pattern:/(^|[^\\])\/\*\*[^/][\s\S]*?(?:\*\/|$)/,lookbehind:!0,alias:"comment"}}))[o])instanceof RegExp&&(r=i[o]={pattern:r}),Array.isArray(r))for(var s=0,c=r.length;s|\+|~|\|\|/,punctuation:/[(),]/}},e.languages.css.atrule.inside["selector-function-argument"].inside=t,e.languages.insertBefore("css","property",{variable:{pattern:/(^|[^-\w\xA0-\uFFFF])--(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*/i,lookbehind:!0}}),{pattern:/(\b\d+)(?:%|[a-z]+(?![\w-]))/,lookbehind:!0}),{pattern:/(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,lookbehind:!0});e.languages.insertBefore("css","function",{operator:{pattern:/(\s)[+\-*\/](?=\s)/,lookbehind:!0},hexcode:{pattern:/\B#[\da-f]{3,8}\b/i,alias:"color"},color:[{pattern:/(^|[^\w-])(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|RebeccaPurple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)(?![\w-])/i,lookbehind:!0},{pattern:/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,inside:{unit:t,number:n,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:t,number:n})}(E),function(e){var t=/[*&][^\s[\]{},]+/,n=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,a="(?:"+n.source+"(?:[ \t]+"+t.source+")?|"+t.source+"(?:[ \t]+"+n.source+")?)",o=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-])(?:[ \t]*(?:(?![#:])|:))*/.source.replace(//g,(function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source})),i=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function r(e,t){t=(t||"").replace(/m/g,"")+"m";var n=/([:\-,[{]\s*(?:\s<>[ \t]+)?)(?:<>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<>/g,(function(){return a})).replace(/<>/g,(function(){return e}));return RegExp(n,t)}e.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<>/g,(function(){return a}))),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<>[ \t]+)?)<>(?=\s*:\s)/.source.replace(/<>/g,(function(){return a})).replace(/<>/g,(function(){return"(?:"+o+"|"+i+")"}))),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:r(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:r(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:r(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:r(i),lookbehind:!0,greedy:!0},number:{pattern:r(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:n,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml}(E),function(e){var t=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function n(e){return e=e.replace(//g,(function(){return t})),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+e+")")}var a=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,o=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,(function(){return a})),i=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source,r=(e.languages.markdown=e.languages.extend("markup",{}),e.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:e.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+o+i+"(?:"+o+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+o+i+")(?:"+o+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(a),inside:e.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+o+")"+i+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+o+"$"),inside:{"table-header":{pattern:RegExp(a),alias:"important",inside:e.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:n(/\b__(?:(?!_)|_(?:(?!_))+_)+__\b|\*\*(?:(?!\*)|\*(?:(?!\*))+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:n(/\b_(?:(?!_)|__(?:(?!_))+__)+_\b|\*(?:(?!\*)|\*\*(?:(?!\*))+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:n(/(~~?)(?:(?!~))+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:n(/!?\[(?:(?!\]))+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\]))+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach((function(t){["url","bold","italic","strike","code-snippet"].forEach((function(n){t!==n&&(e.languages.markdown[t].inside.content.inside[n]=e.languages.markdown[n])}))})),e.hooks.add("after-tokenize",(function(e){"markdown"!==e.language&&"md"!==e.language||function e(t){if(t&&"string"!=typeof t)for(var n=0,a=t.length;n",quot:'"'},c=String.fromCodePoint||String.fromCharCode;e.languages.md=e.languages.markdown}(E),E.languages.graphql={comment:/#.*/,description:{pattern:/(?:"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*")(?=\s*[a-z_])/i,greedy:!0,alias:"string",inside:{"language-markdown":{pattern:/(^"(?:"")?)(?!\1)[\s\S]+(?=\1$)/,lookbehind:!0,inside:E.languages.markdown}}},string:{pattern:/"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},number:/(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,boolean:/\b(?:false|true)\b/,variable:/\$[a-z_]\w*/i,directive:{pattern:/@[a-z_]\w*/i,alias:"function"},"attr-name":{pattern:/\b[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i,greedy:!0},"atom-input":{pattern:/\b[A-Z]\w*Input\b/,alias:"class-name"},scalar:/\b(?:Boolean|Float|ID|Int|String)\b/,constant:/\b[A-Z][A-Z_\d]*\b/,"class-name":{pattern:/(\b(?:enum|implements|interface|on|scalar|type|union)\s+|&\s*|:\s*|\[)[A-Z_]\w*/,lookbehind:!0},fragment:{pattern:/(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-mutation":{pattern:/(\bmutation\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-query":{pattern:/(\bquery\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},keyword:/\b(?:directive|enum|extend|fragment|implements|input|interface|mutation|on|query|repeatable|scalar|schema|subscription|type|union)\b/,operator:/[!=|&]|\.{3}/,"property-query":/\w+(?=\s*\()/,object:/\w+(?=\s*\{)/,punctuation:/[!(){}\[\]:=,]/,property:/\w+/},E.hooks.add("after-tokenize",(function(e){if("graphql"===e.language)for(var t=e.tokens.filter((function(e){return"string"!=typeof e&&"comment"!==e.type&&"scalar"!==e.type})),n=0;n?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/},function(e){var t=e.languages.javascript["template-string"],n=t.pattern.source,a=t.inside.interpolation,o=a.inside["interpolation-punctuation"],i=a.pattern.source;function r(t,a){if(e.languages[t])return{pattern:RegExp("((?:"+a+")\\s*)"+n),lookbehind:!0,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},"embedded-code":{pattern:/[\s\S]+/,alias:t}}}}function s(t,n,a){return t={code:t,grammar:n,language:a},e.hooks.run("before-tokenize",t),t.tokens=e.tokenize(t.code,t.grammar),e.hooks.run("after-tokenize",t),t.tokens}function c(t,n,r){var c=e.tokenize(t,{interpolation:{pattern:RegExp(i),lookbehind:!0}}),l=0,d={},u=(c=s(c.map((function(e){if("string"==typeof e)return e;var n,a;for(e=e.content;-1!==t.indexOf((a=l++,n="___"+r.toUpperCase()+"_"+a+"___")););return d[n]=e,n})).join(""),n,r),Object.keys(d));return l=0,function t(n){for(var i=0;i=u.length)return;var r,c,p,h,y,g,f,m=n[i];"string"==typeof m||"string"==typeof m.content?(r=u[l],-1!==(f=(g="string"==typeof m?m:m.content).indexOf(r))&&(++l,c=g.substring(0,f),y=d[r],p=void 0,(h={})["interpolation-punctuation"]=o,3===(h=e.tokenize(y,h)).length&&((p=[1,1]).push.apply(p,s(h[1],e.languages.javascript,"javascript")),h.splice.apply(h,p)),p=new e.Token("interpolation",h,a.alias,y),h=g.substring(f+r.length),y=[],c&&y.push(c),y.push(p),h&&(t(g=[h]),y.push.apply(y,g)),"string"==typeof m?(n.splice.apply(n,[i,1].concat(y)),i+=y.length-1):m.content=y)):(f=m.content,Array.isArray(f)?t(f):t([f]))}}(c),new e.Token(r,c,"language-"+r,t)}e.languages.javascript["template-string"]=[r("css",/\b(?:styled(?:\([^)]*\))?(?:\s*\.\s*\w+(?:\([^)]*\))*)*|css(?:\s*\.\s*(?:global|resolve))?|createGlobalStyle|keyframes)/.source),r("html",/\bhtml|\.\s*(?:inner|outer)HTML\s*\+?=/.source),r("svg",/\bsvg/.source),r("markdown",/\b(?:markdown|md)/.source),r("graphql",/\b(?:gql|graphql(?:\s*\.\s*experimental)?)/.source),r("sql",/\bsql/.source),t].filter(Boolean);var l={javascript:!0,js:!0,typescript:!0,ts:!0,jsx:!0,tsx:!0};function d(e){return"string"==typeof e?e:Array.isArray(e)?e.map(d).join(""):d(e.content)}e.hooks.add("after-tokenize",(function(t){t.language in l&&function t(n){for(var a=0,o=n.length;a]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),e.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete e.languages.typescript.parameter,delete e.languages.typescript["literal-property"];var t=e.languages.extend("typescript",{});delete t["class-name"],e.languages.typescript["class-name"].inside=t,e.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:t}}}}),e.languages.ts=e.languages.typescript}(E),function(e){var t=e.languages.javascript,n=/\{(?:[^{}]|\{(?:[^{}]|\{[^{}]*\})*\})+\}/.source,a="(@(?:arg|argument|param|property)\\s+(?:"+n+"\\s+)?)";e.languages.jsdoc=e.languages.extend("javadoclike",{parameter:{pattern:RegExp(a+/(?:(?!\s)[$\w\xA0-\uFFFF.])+(?=\s|$)/.source),lookbehind:!0,inside:{punctuation:/\./}}}),e.languages.insertBefore("jsdoc","keyword",{"optional-parameter":{pattern:RegExp(a+/\[(?:(?!\s)[$\w\xA0-\uFFFF.])+(?:=[^[\]]+)?\](?=\s|$)/.source),lookbehind:!0,inside:{parameter:{pattern:/(^\[)[$\w\xA0-\uFFFF\.]+/,lookbehind:!0,inside:{punctuation:/\./}},code:{pattern:/(=)[\s\S]*(?=\]$)/,lookbehind:!0,inside:t,alias:"language-javascript"},punctuation:/[=[\]]/}},"class-name":[{pattern:RegExp(/(@(?:augments|class|extends|interface|memberof!?|template|this|typedef)\s+(?:\s+)?)[A-Z]\w*(?:\.[A-Z]\w*)*/.source.replace(//g,(function(){return n}))),lookbehind:!0,inside:{punctuation:/\./}},{pattern:RegExp("(@[a-z]+\\s+)"+n),lookbehind:!0,inside:{string:t.string,number:t.number,boolean:t.boolean,keyword:e.languages.typescript.keyword,operator:/=>|\.\.\.|[&|?:*]/,punctuation:/[.,;=<>{}()[\]]/}}],example:{pattern:/(@example\s+(?!\s))(?:[^@\s]|\s+(?!\s))+?(?=\s*(?:\*\s*)?(?:@\w|\*\/))/,lookbehind:!0,inside:{code:{pattern:/^([\t ]*(?:\*\s*)?)\S.*$/m,lookbehind:!0,inside:t,alias:"language-javascript"}}}}),e.languages.javadoclike.addSupport("javascript",e.languages.jsdoc)}(E),function(e){e.languages.flow=e.languages.extend("javascript",{}),e.languages.insertBefore("flow","keyword",{type:[{pattern:/\b(?:[Bb]oolean|Function|[Nn]umber|[Ss]tring|[Ss]ymbol|any|mixed|null|void)\b/,alias:"class-name"}]}),e.languages.flow["function-variable"].pattern=/(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=\s*(?:function\b|(?:\([^()]*\)(?:\s*:\s*\w+)?|(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/i,delete e.languages.flow.parameter,e.languages.insertBefore("flow","operator",{"flow-punctuation":{pattern:/\{\||\|\}/,alias:"punctuation"}}),Array.isArray(e.languages.flow.keyword)||(e.languages.flow.keyword=[e.languages.flow.keyword]),e.languages.flow.keyword.unshift({pattern:/(^|[^$]\b)(?:Class|declare|opaque|type)\b(?!\$)/,lookbehind:!0},{pattern:/(^|[^$]\B)\$(?:Diff|Enum|Exact|Keys|ObjMap|PropertyType|Record|Shape|Subtype|Supertype|await)\b(?!\$)/,lookbehind:!0})}(E),E.languages.n4js=E.languages.extend("javascript",{keyword:/\b(?:Array|any|boolean|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|false|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|module|new|null|number|package|private|protected|public|return|set|static|string|super|switch|this|throw|true|try|typeof|var|void|while|with|yield)\b/}),E.languages.insertBefore("n4js","constant",{annotation:{pattern:/@+\w+/,alias:"operator"}}),E.languages.n4jsd=E.languages.n4js,function(e){function t(e,t){return RegExp(e.replace(//g,(function(){return/(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/.source})),t)}e.languages.insertBefore("javascript","function-variable",{"method-variable":{pattern:RegExp("(\\.\\s*)"+e.languages.javascript["function-variable"].pattern.source),lookbehind:!0,alias:["function-variable","method","function","property-access"]}}),e.languages.insertBefore("javascript","function",{method:{pattern:RegExp("(\\.\\s*)"+e.languages.javascript.function.source),lookbehind:!0,alias:["function","property-access"]}}),e.languages.insertBefore("javascript","constant",{"known-class-name":[{pattern:/\b(?:(?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)?Array|ArrayBuffer|BigInt|Boolean|DataView|Date|Error|Function|Intl|JSON|(?:Weak)?(?:Map|Set)|Math|Number|Object|Promise|Proxy|Reflect|RegExp|String|Symbol|WebAssembly)\b/,alias:"class-name"},{pattern:/\b(?:[A-Z]\w*)Error\b/,alias:"class-name"}]}),e.languages.insertBefore("javascript","keyword",{imports:{pattern:t(/(\bimport\b\s*)(?:(?:\s*,\s*(?:\*\s*as\s+|\{[^{}]*\}))?|\*\s*as\s+|\{[^{}]*\})(?=\s*\bfrom\b)/.source),lookbehind:!0,inside:e.languages.javascript},exports:{pattern:t(/(\bexport\b\s*)(?:\*(?:\s*as\s+)?(?=\s*\bfrom\b)|\{[^{}]*\})/.source),lookbehind:!0,inside:e.languages.javascript}}),e.languages.javascript.keyword.unshift({pattern:/\b(?:as|default|export|from|import)\b/,alias:"module"},{pattern:/\b(?:await|break|catch|continue|do|else|finally|for|if|return|switch|throw|try|while|yield)\b/,alias:"control-flow"},{pattern:/\bnull\b/,alias:["null","nil"]},{pattern:/\bundefined\b/,alias:"nil"}),e.languages.insertBefore("javascript","operator",{spread:{pattern:/\.{3}/,alias:"operator"},arrow:{pattern:/=>/,alias:"operator"}}),e.languages.insertBefore("javascript","punctuation",{"property-access":{pattern:t(/(\.\s*)#?/.source),lookbehind:!0},"maybe-class-name":{pattern:/(^|[^$\w\xA0-\uFFFF])[A-Z][$\w\xA0-\uFFFF]+/,lookbehind:!0},dom:{pattern:/\b(?:document|(?:local|session)Storage|location|navigator|performance|window)\b/,alias:"variable"},console:{pattern:/\bconsole(?=\s*\.)/,alias:"class-name"}});for(var n=["function","function-variable","method","method-variable","property-access"],a=0;a*\.{3}(?:[^{}]|)*\})/.source;function i(e,t){return e=e.replace(//g,(function(){return n})).replace(//g,(function(){return a})).replace(//g,(function(){return o})),RegExp(e,t)}function r(t){for(var n=[],a=0;a"!==o.content[o.content.length-1].content&&n.push({tagName:s(o.content[0].content[1]),openedBraces:0}):0+(?:[\w.:$-]+(?:=(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s{'"/>=]+|))?|))**\/?)?>/.source),e.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/,e.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s'">]+)/,e.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*(?:\.[A-Z]\w*)*$/,e.languages.jsx.tag.inside.comment=t.comment,e.languages.insertBefore("inside","attr-name",{spread:{pattern:i(//.source),inside:e.languages.jsx}},e.languages.jsx.tag),e.languages.insertBefore("inside","special-attr",{script:{pattern:i(/=/.source),alias:"language-javascript",inside:{"script-punctuation":{pattern:/^=(?=\{)/,alias:"punctuation"},rest:e.languages.jsx}}},e.languages.jsx.tag);var s=function(e){return e?"string"==typeof e?e:"string"==typeof e.content?e.content:e.content.map(s).join(""):""};e.hooks.add("after-tokenize",(function(e){"jsx"!==e.language&&"tsx"!==e.language||r(e.tokens)}))}(E),function(e){var t=e.util.clone(e.languages.typescript);(t=(e.languages.tsx=e.languages.extend("jsx",t),delete e.languages.tsx.parameter,delete e.languages.tsx["literal-property"],e.languages.tsx.tag)).pattern=RegExp(/(^|[^\w$]|(?=<\/))/.source+"(?:"+t.pattern.source+")",t.pattern.flags),t.lookbehind=!0}(E),E.languages.swift={comment:{pattern:/(^|[^\\:])(?:\/\/.*|\/\*(?:[^/*]|\/(?!\*)|\*(?!\/)|\/\*(?:[^*]|\*(?!\/))*\*\/)*\*\/)/,lookbehind:!0,greedy:!0},"string-literal":[{pattern:RegExp(/(^|[^"#])/.source+"(?:"+/"(?:\\(?:\((?:[^()]|\([^()]*\))*\)|\r\n|[^(])|[^\\\r\n"])*"/.source+"|"+/"""(?:\\(?:\((?:[^()]|\([^()]*\))*\)|[^(])|[^\\"]|"(?!""))*"""/.source+")"+/(?!["#])/.source),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\\($/,alias:"punctuation"},punctuation:/\\(?=[\r\n])/,string:/[\s\S]+/}},{pattern:RegExp(/(^|[^"#])(#+)/.source+"(?:"+/"(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|\r\n|[^#])|[^\\\r\n])*?"/.source+"|"+/"""(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|[^#])|[^\\])*?"""/.source+")\\2"),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\#+\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\#+\($/,alias:"punctuation"},string:/[\s\S]+/}}],directive:{pattern:RegExp(/#/.source+"(?:"+/(?:elseif|if)\b/.source+"(?:[ \t]*"+/(?:![ \t]*)?(?:\b\w+\b(?:[ \t]*\((?:[^()]|\([^()]*\))*\))?|\((?:[^()]|\([^()]*\))*\))(?:[ \t]*(?:&&|\|\|))?/.source+")+|"+/(?:else|endif)\b/.source+")"),alias:"property",inside:{"directive-name":/^#\w+/,boolean:/\b(?:false|true)\b/,number:/\b\d+(?:\.\d+)*\b/,operator:/!|&&|\|\||[<>]=?/,punctuation:/[(),]/}},literal:{pattern:/#(?:colorLiteral|column|dsohandle|file(?:ID|Literal|Path)?|function|imageLiteral|line)\b/,alias:"constant"},"other-directive":{pattern:/#\w+\b/,alias:"property"},attribute:{pattern:/@\w+/,alias:"atrule"},"function-definition":{pattern:/(\bfunc\s+)\w+/,lookbehind:!0,alias:"function"},label:{pattern:/\b(break|continue)\s+\w+|\b[a-zA-Z_]\w*(?=\s*:\s*(?:for|repeat|while)\b)/,lookbehind:!0,alias:"important"},keyword:/\b(?:Any|Protocol|Self|Type|actor|as|assignment|associatedtype|associativity|async|await|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic|else|enum|extension|fallthrough|fileprivate|final|for|func|get|guard|higherThan|if|import|in|indirect|infix|init|inout|internal|is|isolated|lazy|left|let|lowerThan|mutating|none|nonisolated|nonmutating|open|operator|optional|override|postfix|precedencegroup|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|set|some|static|struct|subscript|super|switch|throw|throws|try|typealias|unowned|unsafe|var|weak|where|while|willSet)\b/,boolean:/\b(?:false|true)\b/,nil:{pattern:/\bnil\b/,alias:"constant"},"short-argument":/\$\d+\b/,omit:{pattern:/\b_\b/,alias:"keyword"},number:/\b(?:[\d_]+(?:\.[\de_]+)?|0x[a-f0-9_]+(?:\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i,"class-name":/\b[A-Z](?:[A-Z_\d]*[a-z]\w*)?\b/,function:/\b[a-z_]\w*(?=\s*\()/i,constant:/\b(?:[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/,operator:/[-+*/%=!<>&|^~?]+|\.[.\-+*/%=!<>&|^~?]+/,punctuation:/[{}[\]();,.:\\]/},E.languages.swift["string-literal"].forEach((function(e){e.inside.interpolation.inside=E.languages.swift})),function(e){e.languages.kotlin=e.languages.extend("clike",{keyword:{pattern:/(^|[^.])\b(?:abstract|actual|annotation|as|break|by|catch|class|companion|const|constructor|continue|crossinline|data|do|dynamic|else|enum|expect|external|final|finally|for|fun|get|if|import|in|infix|init|inline|inner|interface|internal|is|lateinit|noinline|null|object|open|operator|out|override|package|private|protected|public|reified|return|sealed|set|super|suspend|tailrec|this|throw|to|try|typealias|val|var|vararg|when|where|while)\b/,lookbehind:!0},function:[{pattern:/(?:`[^\r\n`]+`|\b\w+)(?=\s*\()/,greedy:!0},{pattern:/(\.)(?:`[^\r\n`]+`|\w+)(?=\s*\{)/,lookbehind:!0,greedy:!0}],number:/\b(?:0[xX][\da-fA-F]+(?:_[\da-fA-F]+)*|0[bB][01]+(?:_[01]+)*|\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?[fFL]?)\b/,operator:/\+[+=]?|-[-=>]?|==?=?|!(?:!|==?)?|[\/*%<>]=?|[?:]:?|\.\.|&&|\|\||\b(?:and|inv|or|shl|shr|ushr|xor)\b/}),delete e.languages.kotlin["class-name"];var t={"interpolation-punctuation":{pattern:/^\$\{?|\}$/,alias:"punctuation"},expression:{pattern:/[\s\S]+/,inside:e.languages.kotlin}};e.languages.insertBefore("kotlin","string",{"string-literal":[{pattern:/"""(?:[^$]|\$(?:(?!\{)|\{[^{}]*\}))*?"""/,alias:"multiline",inside:{interpolation:{pattern:/\$(?:[a-z_]\w*|\{[^{}]*\})/i,inside:t},string:/[\s\S]+/}},{pattern:/"(?:[^"\\\r\n$]|\\.|\$(?:(?!\{)|\{[^{}]*\}))*"/,alias:"singleline",inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$(?:[a-z_]\w*|\{[^{}]*\})/i,lookbehind:!0,inside:t},string:/[\s\S]+/}}],char:{pattern:/'(?:[^'\\\r\n]|\\(?:.|u[a-fA-F0-9]{0,4}))'/,greedy:!0}}),delete e.languages.kotlin.string,e.languages.insertBefore("kotlin","keyword",{annotation:{pattern:/\B@(?:\w+:)?(?:[A-Z]\w*|\[[^\]]+\])/,alias:"builtin"}}),e.languages.insertBefore("kotlin","function",{label:{pattern:/\b\w+@|@\w+\b/,alias:"symbol"}}),e.languages.kt=e.languages.kotlin,e.languages.kts=e.languages.kotlin}(E),E.languages.c=E.languages.extend("clike",{comment:{pattern:/\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},"class-name":{pattern:/(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:/(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/}),E.languages.insertBefore("c","string",{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),E.languages.insertBefore("c","string",{macro:{pattern:/(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,greedy:!0,alias:"property",inside:{string:[{pattern:/^(#\s*include\s*)<[^>]+>/,lookbehind:!0},E.languages.c.string],char:E.languages.c.char,comment:E.languages.c.comment,"macro-name":[{pattern:/(^#\s*define\s+)\w+\b(?!\()/i,lookbehind:!0},{pattern:/(^#\s*define\s+)\w+\b(?=\()/i,lookbehind:!0,alias:"function"}],directive:{pattern:/^(#\s*)[a-z]+/,lookbehind:!0,alias:"keyword"},"directive-hash":/^#/,punctuation:/##|\\(?=[\r\n])/,expression:{pattern:/\S[\s\S]*/,inside:E.languages.c}}}}),E.languages.insertBefore("c","function",{constant:/\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/}),delete E.languages.c.boolean,E.languages.objectivec=E.languages.extend("c",{string:{pattern:/@?"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},keyword:/\b(?:asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|in|inline|int|long|register|return|self|short|signed|sizeof|static|struct|super|switch|typedef|typeof|union|unsigned|void|volatile|while)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/,operator:/-[->]?|\+\+?|!=?|<>?=?|==?|&&?|\|\|?|[~^%?*\/@]/}),delete E.languages.objectivec["class-name"],E.languages.objc=E.languages.objectivec,E.languages.reason=E.languages.extend("clike",{string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^\\\r\n"])*"/,greedy:!0},"class-name":/\b[A-Z]\w*/,keyword:/\b(?:and|as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|method|module|mutable|new|nonrec|object|of|open|or|private|rec|sig|struct|switch|then|to|try|type|val|virtual|when|while|with)\b/,operator:/\.{3}|:[:=]|\|>|->|=(?:==?|>)?|<=?|>=?|[|^?'#!~`]|[+\-*\/]\.?|\b(?:asr|land|lor|lsl|lsr|lxor|mod)\b/}),E.languages.insertBefore("reason","class-name",{char:{pattern:/'(?:\\x[\da-f]{2}|\\o[0-3][0-7][0-7]|\\\d{3}|\\.|[^'\\\r\n])'/,greedy:!0},constructor:/\b[A-Z]\w*\b(?!\s*\.)/,label:{pattern:/\b[a-z]\w*(?=::)/,alias:"symbol"}}),delete E.languages.reason.function,function(e){for(var t=/\/\*(?:[^*/]|\*(?!\/)|\/(?!\*)|)*\*\//.source,n=0;n<2;n++)t=t.replace(//g,(function(){return t}));t=t.replace(//g,(function(){return/[^\s\S]/.source})),e.languages.rust={comment:[{pattern:RegExp(/(^|[^\\])/.source+t),lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/b?"(?:\\[\s\S]|[^\\"])*"|b?r(#*)"(?:[^"]|"(?!\1))*"\1/,greedy:!0},char:{pattern:/b?'(?:\\(?:x[0-7][\da-fA-F]|u\{(?:[\da-fA-F]_*){1,6}\}|.)|[^\\\r\n\t'])'/,greedy:!0},attribute:{pattern:/#!?\[(?:[^\[\]"]|"(?:\\[\s\S]|[^\\"])*")*\]/,greedy:!0,alias:"attr-name",inside:{string:null}},"closure-params":{pattern:/([=(,:]\s*|\bmove\s*)\|[^|]*\||\|[^|]*\|(?=\s*(?:\{|->))/,lookbehind:!0,greedy:!0,inside:{"closure-punctuation":{pattern:/^\||\|$/,alias:"punctuation"},rest:null}},"lifetime-annotation":{pattern:/'\w+/,alias:"symbol"},"fragment-specifier":{pattern:/(\$\w+:)[a-z]+/,lookbehind:!0,alias:"punctuation"},variable:/\$\w+/,"function-definition":{pattern:/(\bfn\s+)\w+/,lookbehind:!0,alias:"function"},"type-definition":{pattern:/(\b(?:enum|struct|trait|type|union)\s+)\w+/,lookbehind:!0,alias:"class-name"},"module-declaration":[{pattern:/(\b(?:crate|mod)\s+)[a-z][a-z_\d]*/,lookbehind:!0,alias:"namespace"},{pattern:/(\b(?:crate|self|super)\s*)::\s*[a-z][a-z_\d]*\b(?:\s*::(?:\s*[a-z][a-z_\d]*\s*::)*)?/,lookbehind:!0,alias:"namespace",inside:{punctuation:/::/}}],keyword:[/\b(?:Self|abstract|as|async|await|become|box|break|const|continue|crate|do|dyn|else|enum|extern|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|override|priv|pub|ref|return|self|static|struct|super|trait|try|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/,/\b(?:bool|char|f(?:32|64)|[ui](?:8|16|32|64|128|size)|str)\b/],function:/\b[a-z_]\w*(?=\s*(?:::\s*<|\())/,macro:{pattern:/\b\w+!/,alias:"property"},constant:/\b[A-Z_][A-Z_\d]+\b/,"class-name":/\b[A-Z]\w*\b/,namespace:{pattern:/(?:\b[a-z][a-z_\d]*\s*::\s*)*\b[a-z][a-z_\d]*\s*::(?!\s*<)/,inside:{punctuation:/::/}},number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:f32|f64|[iu](?:8|16|32|64|size)?))?\b/,boolean:/\b(?:false|true)\b/,punctuation:/->|\.\.=|\.{1,3}|::|[{}[\];(),:]/,operator:/[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<>?=?|[@?]/},e.languages.rust["closure-params"].inside.rest=e.languages.rust,e.languages.rust.attribute.inside.string=e.languages.rust.string}(E),E.languages.go=E.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"|`[^`]*`/,lookbehind:!0,greedy:!0},keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,boolean:/\b(?:_|false|iota|nil|true)\b/,number:[/\b0(?:b[01_]+|o[0-7_]+)i?\b/i,/\b0x(?:[a-f\d_]+(?:\.[a-f\d_]*)?|\.[a-f\d_]+)(?:p[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,/(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?[\d_]+)?i?(?!\w)/i],operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,builtin:/\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\b/}),E.languages.insertBefore("go","string",{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete E.languages.go["class-name"],function(e){var t=/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,n=/\b(?!)\w+(?:\s*\.\s*\w+)*\b/.source.replace(//g,(function(){return t.source}));e.languages.cpp=e.languages.extend("c",{"class-name":[{pattern:RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!)\w+/.source.replace(//g,(function(){return t.source}))),lookbehind:!0},/\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,/\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,/\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/],keyword:t,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,greedy:!0},operator:/>>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:false|true)\b/}),e.languages.insertBefore("cpp","string",{module:{pattern:RegExp(/(\b(?:import|module)\s+)/.source+"(?:"+/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|<[^<>\r\n]*>/.source+"|"+/(?:\s*:\s*)?|:\s*/.source.replace(//g,(function(){return n}))+")"),lookbehind:!0,greedy:!0,inside:{string:/^[<"][\s\S]+/,operator:/:/,punctuation:/\./}},"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),e.languages.insertBefore("cpp","keyword",{"generic-function":{pattern:/\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,inside:{function:/^\w+/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:e.languages.cpp}}}}),e.languages.insertBefore("cpp","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}}),e.languages.insertBefore("cpp","class-name",{"base-clause":{pattern:/(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:e.languages.extend("cpp",{})}}),e.languages.insertBefore("inside","double-colon",{"class-name":/\b[a-z_]\w*\b(?!\s*::)/i},e.languages.cpp["base-clause"])}(E),E.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},E.languages.python["string-interpolation"].inside.interpolation.inside.rest=E.languages.python,E.languages.py=E.languages.python,E.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}},E.languages.webmanifest=E.languages.json;((e,t)=>{for(var n in t)h(e,n,{get:t[n],enumerable:!0})})({},{dracula:()=>T,duotoneDark:()=>C,duotoneLight:()=>D,github:()=>O,gruvboxMaterialDark:()=>K,gruvboxMaterialLight:()=>Q,jettwaveDark:()=>V,jettwaveLight:()=>H,nightOwl:()=>F,nightOwlLight:()=>R,oceanicNext:()=>M,okaidia:()=>L,oneDark:()=>G,oneLight:()=>W,palenight:()=>I,shadesOfPurple:()=>B,synthwave84:()=>z,ultramin:()=>U,vsDark:()=>$,vsLight:()=>q});var T={plain:{color:"#F8F8F2",backgroundColor:"#282A36"},styles:[{types:["prolog","constant","builtin"],style:{color:"rgb(189, 147, 249)"}},{types:["inserted","function"],style:{color:"rgb(80, 250, 123)"}},{types:["deleted"],style:{color:"rgb(255, 85, 85)"}},{types:["changed"],style:{color:"rgb(255, 184, 108)"}},{types:["punctuation","symbol"],style:{color:"rgb(248, 248, 242)"}},{types:["string","char","tag","selector"],style:{color:"rgb(255, 121, 198)"}},{types:["keyword","variable"],style:{color:"rgb(189, 147, 249)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(98, 114, 164)"}},{types:["attr-name"],style:{color:"rgb(241, 250, 140)"}}]},C={plain:{backgroundColor:"#2a2734",color:"#9a86fd"},styles:[{types:["comment","prolog","doctype","cdata","punctuation"],style:{color:"#6c6783"}},{types:["namespace"],style:{opacity:.7}},{types:["tag","operator","number"],style:{color:"#e09142"}},{types:["property","function"],style:{color:"#9a86fd"}},{types:["tag-id","selector","atrule-id"],style:{color:"#eeebff"}},{types:["attr-name"],style:{color:"#c4b9fe"}},{types:["boolean","string","entity","url","attr-value","keyword","control","directive","unit","statement","regex","atrule","placeholder","variable"],style:{color:"#ffcc99"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"#c4b9fe"}}]},D={plain:{backgroundColor:"#faf8f5",color:"#728fcb"},styles:[{types:["comment","prolog","doctype","cdata","punctuation"],style:{color:"#b6ad9a"}},{types:["namespace"],style:{opacity:.7}},{types:["tag","operator","number"],style:{color:"#063289"}},{types:["property","function"],style:{color:"#b29762"}},{types:["tag-id","selector","atrule-id"],style:{color:"#2d2006"}},{types:["attr-name"],style:{color:"#896724"}},{types:["boolean","string","entity","url","attr-value","keyword","control","directive","unit","statement","regex","atrule"],style:{color:"#728fcb"}},{types:["placeholder","variable"],style:{color:"#93abdc"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"#896724"}}]},O={plain:{color:"#393A34",backgroundColor:"#f6f8fa"},styles:[{types:["comment","prolog","doctype","cdata"],style:{color:"#999988",fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}},{types:["string","attr-value"],style:{color:"#e3116c"}},{types:["punctuation","operator"],style:{color:"#393A34"}},{types:["entity","url","symbol","number","boolean","variable","constant","property","regex","inserted"],style:{color:"#36acaa"}},{types:["atrule","keyword","attr-name","selector"],style:{color:"#00a4db"}},{types:["function","deleted","tag"],style:{color:"#d73a49"}},{types:["function-variable"],style:{color:"#6f42c1"}},{types:["tag","selector","keyword"],style:{color:"#00009f"}}]},F={plain:{color:"#d6deeb",backgroundColor:"#011627"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)",fontStyle:"italic"}},{types:["inserted","attr-name"],style:{color:"rgb(173, 219, 103)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(99, 119, 119)",fontStyle:"italic"}},{types:["string","url"],style:{color:"rgb(173, 219, 103)"}},{types:["variable"],style:{color:"rgb(214, 222, 235)"}},{types:["number"],style:{color:"rgb(247, 140, 108)"}},{types:["builtin","char","constant","function"],style:{color:"rgb(130, 170, 255)"}},{types:["punctuation"],style:{color:"rgb(199, 146, 234)"}},{types:["selector","doctype"],style:{color:"rgb(199, 146, 234)",fontStyle:"italic"}},{types:["class-name"],style:{color:"rgb(255, 203, 139)"}},{types:["tag","operator","keyword"],style:{color:"rgb(127, 219, 202)"}},{types:["boolean"],style:{color:"rgb(255, 88, 116)"}},{types:["property"],style:{color:"rgb(128, 203, 196)"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)"}}]},R={plain:{color:"#403f53",backgroundColor:"#FBFBFB"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)",fontStyle:"italic"}},{types:["inserted","attr-name"],style:{color:"rgb(72, 118, 214)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(152, 159, 177)",fontStyle:"italic"}},{types:["string","builtin","char","constant","url"],style:{color:"rgb(72, 118, 214)"}},{types:["variable"],style:{color:"rgb(201, 103, 101)"}},{types:["number"],style:{color:"rgb(170, 9, 130)"}},{types:["punctuation"],style:{color:"rgb(153, 76, 195)"}},{types:["function","selector","doctype"],style:{color:"rgb(153, 76, 195)",fontStyle:"italic"}},{types:["class-name"],style:{color:"rgb(17, 17, 17)"}},{types:["tag"],style:{color:"rgb(153, 76, 195)"}},{types:["operator","property","keyword","namespace"],style:{color:"rgb(12, 150, 155)"}},{types:["boolean"],style:{color:"rgb(188, 84, 84)"}}]},N="#c5a5c5",j="#8dc891",M={plain:{backgroundColor:"#282c34",color:"#ffffff"},styles:[{types:["attr-name"],style:{color:N}},{types:["attr-value"],style:{color:j}},{types:["comment","block-comment","prolog","doctype","cdata","shebang"],style:{color:"#999999"}},{types:["property","number","function-name","constant","symbol","deleted"],style:{color:"#5a9bcf"}},{types:["boolean"],style:{color:"#ff8b50"}},{types:["tag"],style:{color:"#fc929e"}},{types:["string"],style:{color:j}},{types:["punctuation"],style:{color:j}},{types:["selector","char","builtin","inserted"],style:{color:"#D8DEE9"}},{types:["function"],style:{color:"#79b6f2"}},{types:["operator","entity","url","variable"],style:{color:"#d7deea"}},{types:["keyword"],style:{color:N}},{types:["atrule","class-name"],style:{color:"#FAC863"}},{types:["important"],style:{fontWeight:"400"}},{types:["bold"],style:{fontWeight:"bold"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}}]},L={plain:{color:"#f8f8f2",backgroundColor:"#272822"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"#f92672",fontStyle:"italic"}},{types:["inserted"],style:{color:"rgb(173, 219, 103)",fontStyle:"italic"}},{types:["comment"],style:{color:"#8292a2",fontStyle:"italic"}},{types:["string","url"],style:{color:"#a6e22e"}},{types:["variable"],style:{color:"#f8f8f2"}},{types:["number"],style:{color:"#ae81ff"}},{types:["builtin","char","constant","function","class-name"],style:{color:"#e6db74"}},{types:["punctuation"],style:{color:"#f8f8f2"}},{types:["selector","doctype"],style:{color:"#a6e22e",fontStyle:"italic"}},{types:["tag","operator","keyword"],style:{color:"#66d9ef"}},{types:["boolean"],style:{color:"#ae81ff"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)",opacity:.7}},{types:["tag","property"],style:{color:"#f92672"}},{types:["attr-name"],style:{color:"#a6e22e !important"}},{types:["doctype"],style:{color:"#8292a2"}},{types:["rule"],style:{color:"#e6db74"}}]},I={plain:{color:"#bfc7d5",backgroundColor:"#292d3e"},styles:[{types:["comment"],style:{color:"rgb(105, 112, 152)",fontStyle:"italic"}},{types:["string","inserted"],style:{color:"rgb(195, 232, 141)"}},{types:["number"],style:{color:"rgb(247, 140, 108)"}},{types:["builtin","char","constant","function"],style:{color:"rgb(130, 170, 255)"}},{types:["punctuation","selector"],style:{color:"rgb(199, 146, 234)"}},{types:["variable"],style:{color:"rgb(191, 199, 213)"}},{types:["class-name","attr-name"],style:{color:"rgb(255, 203, 107)"}},{types:["tag","deleted"],style:{color:"rgb(255, 85, 114)"}},{types:["operator"],style:{color:"rgb(137, 221, 255)"}},{types:["boolean"],style:{color:"rgb(255, 88, 116)"}},{types:["keyword"],style:{fontStyle:"italic"}},{types:["doctype"],style:{color:"rgb(199, 146, 234)",fontStyle:"italic"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)"}},{types:["url"],style:{color:"rgb(221, 221, 221)"}}]},B={plain:{color:"#9EFEFF",backgroundColor:"#2D2A55"},styles:[{types:["changed"],style:{color:"rgb(255, 238, 128)"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)"}},{types:["inserted"],style:{color:"rgb(173, 219, 103)"}},{types:["comment"],style:{color:"rgb(179, 98, 255)",fontStyle:"italic"}},{types:["punctuation"],style:{color:"rgb(255, 255, 255)"}},{types:["constant"],style:{color:"rgb(255, 98, 140)"}},{types:["string","url"],style:{color:"rgb(165, 255, 144)"}},{types:["variable"],style:{color:"rgb(255, 238, 128)"}},{types:["number","boolean"],style:{color:"rgb(255, 98, 140)"}},{types:["attr-name"],style:{color:"rgb(255, 180, 84)"}},{types:["keyword","operator","property","namespace","tag","selector","doctype"],style:{color:"rgb(255, 157, 0)"}},{types:["builtin","char","constant","function","class-name"],style:{color:"rgb(250, 208, 0)"}}]},z={plain:{backgroundColor:"linear-gradient(to bottom, #2a2139 75%, #34294f)",backgroundImage:"#34294f",color:"#f92aad",textShadow:"0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3"},styles:[{types:["comment","block-comment","prolog","doctype","cdata"],style:{color:"#495495",fontStyle:"italic"}},{types:["punctuation"],style:{color:"#ccc"}},{types:["tag","attr-name","namespace","number","unit","hexcode","deleted"],style:{color:"#e2777a"}},{types:["property","selector"],style:{color:"#72f1b8",textShadow:"0 0 2px #100c0f, 0 0 10px #257c5575, 0 0 35px #21272475"}},{types:["function-name"],style:{color:"#6196cc"}},{types:["boolean","selector-id","function"],style:{color:"#fdfdfd",textShadow:"0 0 2px #001716, 0 0 3px #03edf975, 0 0 5px #03edf975, 0 0 8px #03edf975"}},{types:["class-name","maybe-class-name","builtin"],style:{color:"#fff5f6",textShadow:"0 0 2px #000, 0 0 10px #fc1f2c75, 0 0 5px #fc1f2c75, 0 0 25px #fc1f2c75"}},{types:["constant","symbol"],style:{color:"#f92aad",textShadow:"0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3"}},{types:["important","atrule","keyword","selector-class"],style:{color:"#f4eee4",textShadow:"0 0 2px #393a33, 0 0 8px #f39f0575, 0 0 2px #f39f0575"}},{types:["string","char","attr-value","regex","variable"],style:{color:"#f87c32"}},{types:["parameter"],style:{fontStyle:"italic"}},{types:["entity","url"],style:{color:"#67cdcc"}},{types:["operator"],style:{color:"ffffffee"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["entity"],style:{cursor:"help"}},{types:["inserted"],style:{color:"green"}}]},U={plain:{color:"#282a2e",backgroundColor:"#ffffff"},styles:[{types:["comment"],style:{color:"rgb(197, 200, 198)"}},{types:["string","number","builtin","variable"],style:{color:"rgb(150, 152, 150)"}},{types:["class-name","function","tag","attr-name"],style:{color:"rgb(40, 42, 46)"}}]},$={plain:{color:"#9CDCFE",backgroundColor:"#1E1E1E"},styles:[{types:["prolog"],style:{color:"rgb(0, 0, 128)"}},{types:["comment"],style:{color:"rgb(106, 153, 85)"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"rgb(86, 156, 214)"}},{types:["number","inserted"],style:{color:"rgb(181, 206, 168)"}},{types:["constant"],style:{color:"rgb(100, 102, 149)"}},{types:["attr-name","variable"],style:{color:"rgb(156, 220, 254)"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"rgb(206, 145, 120)"}},{types:["selector"],style:{color:"rgb(215, 186, 125)"}},{types:["tag"],style:{color:"rgb(78, 201, 176)"}},{types:["tag"],languages:["markup"],style:{color:"rgb(86, 156, 214)"}},{types:["punctuation","operator"],style:{color:"rgb(212, 212, 212)"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"rgb(220, 220, 170)"}},{types:["class-name"],style:{color:"rgb(78, 201, 176)"}},{types:["char"],style:{color:"rgb(209, 105, 105)"}}]},q={plain:{color:"#000000",backgroundColor:"#ffffff"},styles:[{types:["comment"],style:{color:"rgb(0, 128, 0)"}},{types:["builtin"],style:{color:"rgb(0, 112, 193)"}},{types:["number","variable","inserted"],style:{color:"rgb(9, 134, 88)"}},{types:["operator"],style:{color:"rgb(0, 0, 0)"}},{types:["constant","char"],style:{color:"rgb(129, 31, 63)"}},{types:["tag"],style:{color:"rgb(128, 0, 0)"}},{types:["attr-name"],style:{color:"rgb(255, 0, 0)"}},{types:["deleted","string"],style:{color:"rgb(163, 21, 21)"}},{types:["changed","punctuation"],style:{color:"rgb(4, 81, 165)"}},{types:["function","keyword"],style:{color:"rgb(0, 0, 255)"}},{types:["class-name"],style:{color:"rgb(38, 127, 153)"}}]},V={plain:{color:"#f8fafc",backgroundColor:"#011627"},styles:[{types:["prolog"],style:{color:"#000080"}},{types:["comment"],style:{color:"#6A9955"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"#569CD6"}},{types:["number","inserted"],style:{color:"#B5CEA8"}},{types:["constant"],style:{color:"#f8fafc"}},{types:["attr-name","variable"],style:{color:"#9CDCFE"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"#cbd5e1"}},{types:["selector"],style:{color:"#D7BA7D"}},{types:["tag"],style:{color:"#0ea5e9"}},{types:["tag"],languages:["markup"],style:{color:"#0ea5e9"}},{types:["punctuation","operator"],style:{color:"#D4D4D4"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"#7dd3fc"}},{types:["class-name"],style:{color:"#0ea5e9"}},{types:["char"],style:{color:"#D16969"}}]},H={plain:{color:"#0f172a",backgroundColor:"#f1f5f9"},styles:[{types:["prolog"],style:{color:"#000080"}},{types:["comment"],style:{color:"#6A9955"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"#0c4a6e"}},{types:["number","inserted"],style:{color:"#B5CEA8"}},{types:["constant"],style:{color:"#0f172a"}},{types:["attr-name","variable"],style:{color:"#0c4a6e"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"#64748b"}},{types:["selector"],style:{color:"#D7BA7D"}},{types:["tag"],style:{color:"#0ea5e9"}},{types:["tag"],languages:["markup"],style:{color:"#0ea5e9"}},{types:["punctuation","operator"],style:{color:"#475569"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"#0e7490"}},{types:["class-name"],style:{color:"#0ea5e9"}},{types:["char"],style:{color:"#D16969"}}]},G={plain:{backgroundColor:"hsl(220, 13%, 18%)",color:"hsl(220, 14%, 71%)",textShadow:"0 1px rgba(0, 0, 0, 0.3)"},styles:[{types:["comment","prolog","cdata"],style:{color:"hsl(220, 10%, 40%)"}},{types:["doctype","punctuation","entity"],style:{color:"hsl(220, 14%, 71%)"}},{types:["attr-name","class-name","maybe-class-name","boolean","constant","number","atrule"],style:{color:"hsl(29, 54%, 61%)"}},{types:["keyword"],style:{color:"hsl(286, 60%, 67%)"}},{types:["property","tag","symbol","deleted","important"],style:{color:"hsl(355, 65%, 65%)"}},{types:["selector","string","char","builtin","inserted","regex","attr-value"],style:{color:"hsl(95, 38%, 62%)"}},{types:["variable","operator","function"],style:{color:"hsl(207, 82%, 66%)"}},{types:["url"],style:{color:"hsl(187, 47%, 55%)"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"hsl(220, 14%, 71%)"}}]},W={plain:{backgroundColor:"hsl(230, 1%, 98%)",color:"hsl(230, 8%, 24%)"},styles:[{types:["comment","prolog","cdata"],style:{color:"hsl(230, 4%, 64%)"}},{types:["doctype","punctuation","entity"],style:{color:"hsl(230, 8%, 24%)"}},{types:["attr-name","class-name","boolean","constant","number","atrule"],style:{color:"hsl(35, 99%, 36%)"}},{types:["keyword"],style:{color:"hsl(301, 63%, 40%)"}},{types:["property","tag","symbol","deleted","important"],style:{color:"hsl(5, 74%, 59%)"}},{types:["selector","string","char","builtin","inserted","regex","attr-value","punctuation"],style:{color:"hsl(119, 34%, 47%)"}},{types:["variable","operator","function"],style:{color:"hsl(221, 87%, 60%)"}},{types:["url"],style:{color:"hsl(198, 99%, 37%)"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"hsl(230, 8%, 24%)"}}]},K={plain:{color:"#ebdbb2",backgroundColor:"#292828"},styles:[{types:["imports","class-name","maybe-class-name","constant","doctype","builtin","function"],style:{color:"#d8a657"}},{types:["property-access"],style:{color:"#7daea3"}},{types:["tag"],style:{color:"#e78a4e"}},{types:["attr-name","char","url","regex"],style:{color:"#a9b665"}},{types:["attr-value","string"],style:{color:"#89b482"}},{types:["comment","prolog","cdata","operator","inserted"],style:{color:"#a89984"}},{types:["delimiter","boolean","keyword","selector","important","atrule","property","variable","deleted"],style:{color:"#ea6962"}},{types:["entity","number","symbol"],style:{color:"#d3869b"}}]},Q={plain:{color:"#654735",backgroundColor:"#f9f5d7"},styles:[{types:["delimiter","boolean","keyword","selector","important","atrule","property","variable","deleted"],style:{color:"#af2528"}},{types:["imports","class-name","maybe-class-name","constant","doctype","builtin"],style:{color:"#b4730e"}},{types:["string","attr-value"],style:{color:"#477a5b"}},{types:["property-access"],style:{color:"#266b79"}},{types:["function","attr-name","char","url"],style:{color:"#72761e"}},{types:["tag"],style:{color:"#b94c07"}},{types:["comment","prolog","cdata","operator","inserted"],style:{color:"#a89984"}},{types:["entity","number","symbol"],style:{color:"#924f79"}}]},Y=/\r\n|\r|\n/,X=e=>{0===e.length?e.push({types:["plain"],content:"\n",empty:!0}):1===e.length&&""===e[0].content&&(e[0].content="\n",e[0].empty=!0)},J=(e,t)=>{const n=e.length;return n>0&&e[n-1]===t?e:e.concat(t)},Z=e=>{const t=[[]],n=[e],a=[0],o=[e.length];let i=0,r=0,s=[];const c=[s];for(;r>-1;){for(;(i=a[r]++)0?l:["plain"],e=d):(l=J(l,d.type),d.alias&&(l=J(l,d.alias)),e=d.content),"string"!=typeof e){r++,t.push(l),n.push(e),a.push(0),o.push(e.length);continue}const u=e.split(Y),p=u.length;s.push({types:l,content:u[0]});for(let t=1;t{const{plain:n}=e,a=e.styles.reduce(((e,n)=>{const{languages:a,style:o}=n;return a&&!a.includes(t)||n.types.forEach((t=>{const n=w(w({},e[t]),o);e[t]=n})),e}),{});return a.root=n,a.plain=k(w({},n),{backgroundColor:void 0}),a},te=({children:e,language:t,code:n,theme:a,prism:o})=>{const i=t.toLowerCase(),r=ee(a,i),s=(e=>(0,d.useCallback)((t=>{var n=t,{className:a,style:o,line:i}=n,r=x(n,["className","style","line"]);const s=k(w({},r),{className:(0,u.A)("token-line",a)});return"object"==typeof e&&"plain"in e&&(s.style=e.plain),"object"==typeof o&&(s.style=w(w({},s.style||{}),o)),s}),[e]))(r),c=(e=>{const t=(0,d.useCallback)((({types:t,empty:n})=>{if(null!=e)return 1===t.length&&"plain"===t[0]?null!=n?{display:"inline-block"}:void 0:1===t.length&&null!=n?e[t[0]]:Object.assign(null!=n?{display:"inline-block"}:{},...t.map((t=>e[t])))}),[e]);return(0,d.useCallback)((e=>{var n=e,{token:a,className:o,style:i}=n,r=x(n,["token","className","style"]);const s=k(w({},r),{className:(0,u.A)("token",...a.types,o),children:a.content,style:t(a)});return null!=i&&(s.style=w(w({},s.style||{}),i)),s}),[t])})(r),l=(({prism:e,code:t,grammar:n,language:a})=>(0,d.useMemo)((()=>{if(null==n)return Z([t]);const o={code:t,grammar:n,language:a,tokens:[]};return e.hooks.run("before-tokenize",o),o.tokens=e.tokenize(t,n),e.hooks.run("after-tokenize",o),Z(o.tokens)}),[t,n,a,e]))({prism:o,language:i,code:n,grammar:o.languages[i]});return e({tokens:l,className:`prism-code language-${i}`,style:null!=r?r.root:{},getLineProps:s,getTokenProps:c})},ne=e=>(0,d.createElement)(te,k(w({},e),{prism:e.prism||E,theme:e.theme||$,code:e.code,language:e.language}))},1561:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var a=!0,o="Invariant failed";function i(e,t){if(!e){if(a)throw new Error(o);var n="function"==typeof t?t():t,i=n?"".concat(o,": ").concat(n):o;throw new Error(i)}}},1635:(e,t,n)=>{"use strict";n.r(t),n.d(t,{__addDisposableResource:()=>j,__assign:()=>i,__asyncDelegator:()=>x,__asyncGenerator:()=>k,__asyncValues:()=>A,__await:()=>w,__awaiter:()=>y,__classPrivateFieldGet:()=>F,__classPrivateFieldIn:()=>N,__classPrivateFieldSet:()=>R,__createBinding:()=>f,__decorate:()=>s,__disposeResources:()=>L,__esDecorate:()=>l,__exportStar:()=>m,__extends:()=>o,__generator:()=>g,__importDefault:()=>O,__importStar:()=>D,__makeTemplateObject:()=>E,__metadata:()=>h,__param:()=>c,__propKey:()=>u,__read:()=>_,__rest:()=>r,__rewriteRelativeImportExtension:()=>I,__runInitializers:()=>d,__setFunctionName:()=>p,__spread:()=>v,__spreadArray:()=>S,__spreadArrays:()=>P,__values:()=>b,default:()=>B});var a=function(e,t){return a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},a(e,t)};function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}a(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var i=function(){return i=Object.assign||function(e){for(var t,n=1,a=arguments.length;n=0;s--)(o=e[s])&&(r=(i<3?o(r):i>3?o(t,n,r):o(t,n))||r);return i>3&&r&&Object.defineProperty(t,n,r),r}function c(e,t){return function(n,a){t(n,a,e)}}function l(e,t,n,a,o,i){function r(e){if(void 0!==e&&"function"!=typeof e)throw new TypeError("Function expected");return e}for(var s,c=a.kind,l="getter"===c?"get":"setter"===c?"set":"value",d=!t&&e?a.static?e:e.prototype:null,u=t||(d?Object.getOwnPropertyDescriptor(d,a.name):{}),p=!1,h=n.length-1;h>=0;h--){var y={};for(var g in a)y[g]="access"===g?{}:a[g];for(var g in a.access)y.access[g]=a.access[g];y.addInitializer=function(e){if(p)throw new TypeError("Cannot add initializers after decoration has completed");i.push(r(e||null))};var f=(0,n[h])("accessor"===c?{get:u.get,set:u.set}:u[l],y);if("accessor"===c){if(void 0===f)continue;if(null===f||"object"!=typeof f)throw new TypeError("Object expected");(s=r(f.get))&&(u.get=s),(s=r(f.set))&&(u.set=s),(s=r(f.init))&&o.unshift(s)}else(s=r(f))&&("field"===c?o.unshift(s):u[l]=s)}d&&Object.defineProperty(d,a.name,u),p=!0}function d(e,t,n){for(var a=arguments.length>2,o=0;o0&&o[o.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]=e.length&&(e=void 0),{value:e&&e[a++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function _(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var a,o,i=n.call(e),r=[];try{for(;(void 0===t||t-- >0)&&!(a=i.next()).done;)r.push(a.value)}catch(s){o={error:s}}finally{try{a&&!a.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return r}function v(){for(var e=[],t=0;t1||s(e,t)}))},t&&(a[e]=t(a[e])))}function s(e,t){try{(n=o[e](t)).value instanceof w?Promise.resolve(n.value.v).then(c,l):d(i[0][2],n)}catch(a){d(i[0][3],a)}var n}function c(e){s("next",e)}function l(e){s("throw",e)}function d(e,t){e(t),i.shift(),i.length&&s(i[0][0],i[0][1])}}function x(e){var t,n;return t={},a("next"),a("throw",(function(e){throw e})),a("return"),t[Symbol.iterator]=function(){return this},t;function a(a,o){t[a]=e[a]?function(t){return(n=!n)?{value:w(e[a](t)),done:!1}:o?o(t):t}:o}}function A(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e=b(e),t={},a("next"),a("throw"),a("return"),t[Symbol.asyncIterator]=function(){return this},t);function a(n){t[n]=e[n]&&function(t){return new Promise((function(a,o){(function(e,t,n,a){Promise.resolve(a).then((function(t){e({value:t,done:n})}),t)})(a,o,(t=e[n](t)).done,t.value)}))}}}function E(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}var T=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t},C=function(e){return C=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},C(e)};function D(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n=C(e),a=0;a{"use strict";e.exports={}},4054:e=>{"use strict";e.exports=JSON.parse('{"/Python/blog-3c2":{"__comp":"a6aa9e1f","__context":{"plugin":"36994c47"},"sidebar":"814f3328","items":[{"content":"1d2e1535"},{"content":"c5c2dcde"}],"__props":"bd241fa9"},"/Python/blog/archive-9d7":{"__comp":"9e4087bc","__context":{"plugin":"36994c47"},"__props":"90067a5c"},"/Python/blog/authors-2ee":{"__comp":"621db11d","__context":{"data":{"blogMetadata":"acecf23e"},"plugin":"36994c47"},"sidebar":"814f3328","__props":"6dbed542"},"/Python/blog/authors/ccatik-f40":{"__comp":"33fc5bb8","__context":{"data":{"blogMetadata":"acecf23e"},"plugin":"36994c47"},"items":[{"content":"1d2e1535"},{"content":"c5c2dcde"}],"sidebar":"814f3328","__props":"1064f048"},"/Python/blog/importance-of-software-architecture-6d5":{"__comp":"ccc49370","__context":{"data":{"blogMetadata":"acecf23e"},"plugin":"36994c47"},"sidebar":"814f3328","content":"35fb5052"},"/Python/blog/tags-585":{"__comp":"01a85c17","__context":{"plugin":"36994c47"},"sidebar":"814f3328","__props":"66d0f264"},"/Python/blog/tags/docusaurus-2c0":{"__comp":"6875c492","__context":{"plugin":"36994c47"},"sidebar":"814f3328","items":[{"content":"1d2e1535"},{"content":"c5c2dcde"}],"__props":"ff59fe86"},"/Python/blog/tags/hello-f2f":{"__comp":"6875c492","__context":{"plugin":"36994c47"},"sidebar":"814f3328","items":[{"content":"1d2e1535"},{"content":"c5c2dcde"}],"__props":"2ce245f5"},"/Python/blog/why-python-guide-over-gpt-e44":{"__comp":"ccc49370","__context":{"data":{"blogMetadata":"acecf23e"},"plugin":"36994c47"},"sidebar":"814f3328","content":"2dda9ef5"},"/Python/markdown-page-301":{"__comp":"1f391b9e","__context":{"plugin":"a7456010"},"content":"393be207"},"/Python/docs-aba":{"__comp":"5e95c892","__context":{"plugin":"aba21aa0"}},"/Python/docs-c01":{"__comp":"a7bd4aaa","__props":"7789c0d7"},"/Python/docs-d9a":{"__comp":"a94703ab"},"/Python/docs/category/advanced-4cc":{"__comp":"14eb3368","__props":"4499c641"},"/Python/docs/category/asyncio-95b":{"__comp":"14eb3368","__props":"ab47cacc"},"/Python/docs/category/behavioral-design-patterns-9f0":{"__comp":"14eb3368","__props":"6171ec9d"},"/Python/docs/category/building-rest-apis-854":{"__comp":"14eb3368","__props":"2eb0321d"},"/Python/docs/category/built-in-functions-430":{"__comp":"14eb3368","__props":"888e3f85"},"/Python/docs/category/cicd-2e6":{"__comp":"14eb3368","__props":"dd3cd1de"},"/Python/docs/category/combining-datasets-cb4":{"__comp":"14eb3368","__props":"cec50c49"},"/Python/docs/category/control-flow-7c9":{"__comp":"14eb3368","__props":"e5bab151"},"/Python/docs/category/creational-design-patterns-6d2":{"__comp":"14eb3368","__props":"d76f2668"},"/Python/docs/category/data-frames-953":{"__comp":"14eb3368","__props":"789d323c"},"/Python/docs/category/data-visualization-69a":{"__comp":"14eb3368","__props":"2ff77cc8"},"/Python/docs/category/dataclasses-a3b":{"__comp":"14eb3368","__props":"93cba1c9"},"/Python/docs/category/designing-rest-apis-b50":{"__comp":"14eb3368","__props":"0b60ca86"},"/Python/docs/category/enhancing-actions-21d":{"__comp":"14eb3368","__props":"ab448cd4"},"/Python/docs/category/errors-93d":{"__comp":"14eb3368","__props":"34cbd55a"},"/Python/docs/category/fastapi-actions-37e":{"__comp":"14eb3368","__props":"5a7f151d"},"/Python/docs/category/file-management-c3f":{"__comp":"14eb3368","__props":"8d6874b1"},"/Python/docs/category/functions-483":{"__comp":"14eb3368","__props":"236be2e6"},"/Python/docs/category/how-cicd-revolutionized-software-development-a79":{"__comp":"14eb3368","__props":"c944b66c"},"/Python/docs/category/introduction-23e":{"__comp":"14eb3368","__props":"d92ce060"},"/Python/docs/category/lists-e60":{"__comp":"14eb3368","__props":"2f2fa6f1"},"/Python/docs/category/modules-89b":{"__comp":"14eb3368","__props":"e91cae89"},"/Python/docs/category/multi-threading-223":{"__comp":"14eb3368","__props":"83e5db84"},"/Python/docs/category/multiprocessing-552":{"__comp":"14eb3368","__props":"9dcd38ca"},"/Python/docs/category/numpy-4f6":{"__comp":"14eb3368","__props":"a574756a"},"/Python/docs/category/oop-538":{"__comp":"14eb3368","__props":"2476f821"},"/Python/docs/category/python-basics-dec":{"__comp":"14eb3368","__props":"6362c7e0"},"/Python/docs/category/reshaping-datasets-df4":{"__comp":"14eb3368","__props":"3d383523"},"/Python/docs/category/series-021":{"__comp":"14eb3368","__props":"0dab5e76"},"/Python/docs/category/setting-up-767":{"__comp":"14eb3368","__props":"8d6d8b61"},"/Python/docs/category/string-operators-656":{"__comp":"14eb3368","__props":"e0dc80b4"},"/Python/docs/category/structural-design-patterns-198":{"__comp":"14eb3368","__props":"81a0c3ab"},"/Python/docs/category/time-series-818":{"__comp":"14eb3368","__props":"94622a99"},"/Python/docs/category/unit-testing-d53":{"__comp":"14eb3368","__props":"b4a66da9"},"/Python/docs/ci-cd/enhancing-actions/01-4a1":{"__comp":"17896441","content":"f8aca2ea"},"/Python/docs/ci-cd/fastapi-actions/01-e94":{"__comp":"17896441","content":"4f7742b9"},"/Python/docs/ci-cd/getting-started-256":{"__comp":"17896441","content":"837e41de"},"/Python/docs/ci-cd/introduction/cicd/cd-92b":{"__comp":"17896441","content":"5f5f0651"},"/Python/docs/ci-cd/introduction/cicd/cdp-99a":{"__comp":"17896441","content":"4bece594"},"/Python/docs/ci-cd/introduction/cicd/ci-f75":{"__comp":"17896441","content":"32e82d59"},"/Python/docs/ci-cd/introduction/cicd/cicd-7e2":{"__comp":"17896441","content":"bd999cea"},"/Python/docs/ci-cd/introduction/cicd/introduction-github-actions-47d":{"__comp":"17896441","content":"555c4724"},"/Python/docs/ci-cd/introduction/cicd/key_components-a08":{"__comp":"17896441","content":"ab8be871"},"/Python/docs/ci-cd/introduction/cicd/practices-ab3":{"__comp":"17896441","content":"b4a018b2"},"/Python/docs/ci-cd/introduction/revolution_ci_cd/cdp-4fa":{"__comp":"17896441","content":"02279664"},"/Python/docs/ci-cd/introduction/revolution_ci_cd/ci-95b":{"__comp":"17896441","content":"294b7f6a"},"/Python/docs/ci-cd/setting-up/01-2ca":{"__comp":"17896441","content":"06d8f224"},"/Python/docs/data-analysis/Combining_Datasets/concat()-cd9":{"__comp":"17896441","content":"aa6ffcca"},"/Python/docs/data-analysis/Combining_Datasets/inner_join-8f7":{"__comp":"17896441","content":"a18aec92"},"/Python/docs/data-analysis/Combining_Datasets/Intro-f6e":{"__comp":"17896441","content":"e2977010"},"/Python/docs/data-analysis/Combining_Datasets/left_right_join-8dd":{"__comp":"17896441","content":"0e157602"},"/Python/docs/data-analysis/Combining_Datasets/left_right_minus-03c":{"__comp":"17896441","content":"dfd8392f"},"/Python/docs/data-analysis/Combining_Datasets/merge()-322":{"__comp":"17896441","content":"fa44d2a0"},"/Python/docs/data-analysis/Combining_Datasets/Merging_Different_Column-42d":{"__comp":"17896441","content":"59df60c1"},"/Python/docs/data-analysis/Combining_Datasets/outer_join-f6f":{"__comp":"17896441","content":"4499ec13"},"/Python/docs/data-analysis/Combining_Datasets/outer_join_minus-ceb":{"__comp":"17896441","content":"55781ecd"},"/Python/docs/data-analysis/Data_Frames/adding-columns-34b":{"__comp":"17896441","content":"ed0b4b51"},"/Python/docs/data-analysis/Data_Frames/descripe-info-4a7":{"__comp":"17896441","content":"0da3a2d9"},"/Python/docs/data-analysis/Data_Frames/dropna-1c1":{"__comp":"17896441","content":"3e900806"},"/Python/docs/data-analysis/Data_Frames/fillna-950":{"__comp":"17896441","content":"e3aefa38"},"/Python/docs/data-analysis/Data_Frames/intro-009":{"__comp":"17896441","content":"48e2860f"},"/Python/docs/data-analysis/Data_Frames/methods-563":{"__comp":"17896441","content":"629ec2bb"},"/Python/docs/data-analysis/Data_Frames/nlargest-nsmallest-b58":{"__comp":"17896441","content":"31d1cae9"},"/Python/docs/data-analysis/Data_Frames/removing-columns-rows-372":{"__comp":"17896441","content":"017bef9f"},"/Python/docs/data-analysis/Data_Frames/set_index-reset_index-147":{"__comp":"17896441","content":"b618cf9c"},"/Python/docs/data-analysis/Data-Visualization/Bar_Chart_Race-c9e":{"__comp":"17896441","content":"030c3c62"},"/Python/docs/data-analysis/Data-Visualization/Bar_Plots-6ce":{"__comp":"17896441","content":"7e90e893"},"/Python/docs/data-analysis/Data-Visualization/Candlestick_Charts-c09":{"__comp":"17896441","content":"3ec98c88"},"/Python/docs/data-analysis/Data-Visualization/Color_by_Value-f93":{"__comp":"17896441","content":"f6a804ea"},"/Python/docs/data-analysis/Data-Visualization/Histograms-dd8":{"__comp":"17896441","content":"bd9da85c"},"/Python/docs/data-analysis/Data-Visualization/Interactive_Plots-df7":{"__comp":"17896441","content":"4366146e"},"/Python/docs/data-analysis/Data-Visualization/Line_Plots-41d":{"__comp":"17896441","content":"ee32e7ca"},"/Python/docs/data-analysis/Data-Visualization/Pie_Charts-a2b":{"__comp":"17896441","content":"49be0ba8"},"/Python/docs/data-analysis/Data-Visualization/Scatter-75c":{"__comp":"17896441","content":"2622d6bc"},"/Python/docs/data-analysis/Data-Visualization/Styles-732":{"__comp":"17896441","content":"57b180af"},"/Python/docs/data-analysis/getting-started-2e1":{"__comp":"17896441","content":"e9e27faf"},"/Python/docs/data-analysis/NumPy/Add_New_Axis-481":{"__comp":"17896441","content":"ee076e89"},"/Python/docs/data-analysis/NumPy/Arrays-561":{"__comp":"17896441","content":"475d6da7"},"/Python/docs/data-analysis/NumPy/Basic_Operations-37f":{"__comp":"17896441","content":"0d75afaf"},"/Python/docs/data-analysis/NumPy/Broadcasting-6df":{"__comp":"17896441","content":"4d2986d4"},"/Python/docs/data-analysis/NumPy/Creating_Arrays-de9":{"__comp":"17896441","content":"9f1ccea8"},"/Python/docs/data-analysis/NumPy/Finding_Unique_Elements-35f":{"__comp":"17896441","content":"263c1a40"},"/Python/docs/data-analysis/NumPy/Generating_Random_Numbers-e15":{"__comp":"17896441","content":"63ba0684"},"/Python/docs/data-analysis/NumPy/Indexing_Slicing-8ff":{"__comp":"17896441","content":"85b17cde"},"/Python/docs/data-analysis/NumPy/Lists_vs_NumPy-f84":{"__comp":"17896441","content":"8cfe2489"},"/Python/docs/data-analysis/NumPy/Matrices-c16":{"__comp":"17896441","content":"0edcc700"},"/Python/docs/data-analysis/NumPy/Reshaping-56a":{"__comp":"17896441","content":"0d139d63"},"/Python/docs/data-analysis/NumPy/Reshaping_Flattening-98f":{"__comp":"17896441","content":"afd94412"},"/Python/docs/data-analysis/NumPy/Reversing_Arrays-c84":{"__comp":"17896441","content":"043db0b1"},"/Python/docs/data-analysis/NumPy/Saving_Loading_Arrays-a66":{"__comp":"17896441","content":"8acbafb2"},"/Python/docs/data-analysis/NumPy/Shape_and_Size-231":{"__comp":"17896441","content":"71ebce2a"},"/Python/docs/data-analysis/NumPy/Sorting_Concatenating-851":{"__comp":"17896441","content":"7811e216"},"/Python/docs/data-analysis/Reshaping_Datasets/groupby-be2":{"__comp":"17896441","content":"2a5468dc"},"/Python/docs/data-analysis/Reshaping_Datasets/introduction-483":{"__comp":"17896441","content":"c6e8a128"},"/Python/docs/data-analysis/Reshaping_Datasets/melt-c0d":{"__comp":"17896441","content":"2522d3c7"},"/Python/docs/data-analysis/Reshaping_Datasets/pivot-7de":{"__comp":"17896441","content":"806ba571"},"/Python/docs/data-analysis/Reshaping_Datasets/pivot-table-9e8":{"__comp":"17896441","content":"3f2b3237"},"/Python/docs/data-analysis/Reshaping_Datasets/stack-unstack-668":{"__comp":"17896441","content":"e5095d98"},"/Python/docs/data-analysis/Reshaping_Datasets/transpose-970":{"__comp":"17896441","content":"6d67a33f"},"/Python/docs/data-analysis/Series/accessing_elements_index-b1d":{"__comp":"17896441","content":"c96fe195"},"/Python/docs/data-analysis/Series/accessing_elements_position-2bc":{"__comp":"17896441","content":"5d00fa63"},"/Python/docs/data-analysis/Series/attributes-0cd":{"__comp":"17896441","content":"4dd92639"},"/Python/docs/data-analysis/Series/counting_values-6c7":{"__comp":"17896441","content":"996e16ac"},"/Python/docs/data-analysis/Series/handling_csv_files-a01":{"__comp":"17896441","content":"392e7e20"},"/Python/docs/data-analysis/Series/head-and-tail-7bd":{"__comp":"17896441","content":"e716e54f"},"/Python/docs/data-analysis/Series/intro-8c8":{"__comp":"17896441","content":"09f396b9"},"/Python/docs/data-analysis/Series/methods-c8a":{"__comp":"17896441","content":"5912db3d"},"/Python/docs/data-analysis/Series/sorting_values-647":{"__comp":"17896441","content":"80176b24"},"/Python/docs/data-analysis/String_Operators/index-columns-08d":{"__comp":"17896441","content":"b650f3af"},"/Python/docs/data-analysis/String_Operators/startswith-endswith-fc3":{"__comp":"17896441","content":"97888c38"},"/Python/docs/data-analysis/String_Operators/str-409":{"__comp":"17896441","content":"c5b485d2"},"/Python/docs/data-analysis/Time_Series/Accessing_Time_Attributes-824":{"__comp":"17896441","content":"84f46ccb"},"/Python/docs/data-analysis/Time_Series/date_range()-2d7":{"__comp":"17896441","content":"a55fb7e1"},"/Python/docs/data-analysis/Time_Series/loc_iloc_DatetimeIndex-7a1":{"__comp":"17896441","content":"9a1cf803"},"/Python/docs/data-analysis/Time_Series/Period_PeriodIndex-9de":{"__comp":"17896441","content":"5e6e778b"},"/Python/docs/data-analysis/Time_Series/Project-4a3":{"__comp":"17896441","content":"1780ca50"},"/Python/docs/data-analysis/Time_Series/reindex-11c":{"__comp":"17896441","content":"92f0f0d9"},"/Python/docs/data-analysis/Time_Series/resample-d4d":{"__comp":"17896441","content":"b0685d08"},"/Python/docs/data-analysis/Time_Series/Time_Series-24f":{"__comp":"17896441","content":"d04368bf"},"/Python/docs/data-analysis/Time_Series/Timedelta_TimedeltaIndex-51b":{"__comp":"17896441","content":"aa4345da"},"/Python/docs/data-analysis/Time_Series/Timestamp_DatetimeIndex-901":{"__comp":"17896441","content":"e72316f9"},"/Python/docs/data-analysis/Time_Series/Timestap_Methods_Attributes-3ce":{"__comp":"17896441","content":"4da8d02e"},"/Python/docs/design-patterns/behavioral/behavioral-6cb":{"__comp":"17896441","content":"e182db80"},"/Python/docs/design-patterns/creational/-220":{"__comp":"17896441","content":"1d27f193"},"/Python/docs/design-patterns/creational/abstract_factory-088":{"__comp":"17896441","content":"e9abefc4"},"/Python/docs/design-patterns/creational/builder-526":{"__comp":"17896441","content":"00a4a69b"},"/Python/docs/design-patterns/creational/factory_method-92e":{"__comp":"17896441","content":"bf286b78"},"/Python/docs/design-patterns/creational/prototype-148":{"__comp":"17896441","content":"d91c278b"},"/Python/docs/design-patterns/creational/singleton-491":{"__comp":"17896441","content":"49fe9afd"},"/Python/docs/design-patterns/getting-started-113":{"__comp":"17896441","content":"801c5c2a"},"/Python/docs/design-patterns/structural/structural-5e8":{"__comp":"17896441","content":"0f0ba0d3"},"/Python/docs/getting-started-e05":{"__comp":"17896441","content":"c0e9904c"},"/Python/docs/gui-development/getting-started-3dd":{"__comp":"17896441","content":"4591fb16"},"/Python/docs/gui-development/introduction/gui_development-ac2":{"__comp":"17896441","content":"b4c39990"},"/Python/docs/gui-development/introduction/gui_frameworks-80f":{"__comp":"17896441","content":"3613df99"},"/Python/docs/gui-development/introduction/right_framework-6f7":{"__comp":"17896441","content":"50a3b692"},"/Python/docs/gui-development/introduction/setting-up-5be":{"__comp":"17896441","content":"40a5a7ee"},"/Python/docs/python-guide/Advanced/Generators/-566":{"__comp":"17896441","content":"8aa97a9d"},"/Python/docs/python-guide/Advanced/Lambda_Functions/-797":{"__comp":"17896441","content":"8162aee2"},"/Python/docs/python-guide/Advanced/Mypy/-d01":{"__comp":"17896441","content":"fd743662"},"/Python/docs/python-guide/Advanced/Walrus_Operator/-924":{"__comp":"17896441","content":"58b97900"},"/Python/docs/python-guide/AsyncIO/Gather-303":{"__comp":"17896441","content":"ef91d723"},"/Python/docs/python-guide/AsyncIO/Getting_Started-d23":{"__comp":"17896441","content":"c5fc0896"},"/Python/docs/python-guide/AsyncIO/Intro-15f":{"__comp":"17896441","content":"c13d5729"},"/Python/docs/python-guide/AsyncIO/Tasks-70c":{"__comp":"17896441","content":"f336a35c"},"/Python/docs/python-guide/AsyncIO/Website_Status-5b8":{"__comp":"17896441","content":"5269bdec"},"/Python/docs/python-guide/Built_in_Functions/all()/-7df":{"__comp":"17896441","content":"af03e5ca"},"/Python/docs/python-guide/Built_in_Functions/any()/-20c":{"__comp":"17896441","content":"c3a6df41"},"/Python/docs/python-guide/Built_in_Functions/callable()/-b3f":{"__comp":"17896441","content":"c6132cfa"},"/Python/docs/python-guide/Built_in_Functions/dunder_methods/-d62":{"__comp":"17896441","content":"293fcfde"},"/Python/docs/python-guide/Built_in_Functions/enumerate()/-19a":{"__comp":"17896441","content":"4a7981ee"},"/Python/docs/python-guide/Built_in_Functions/eval()/-dfb":{"__comp":"17896441","content":"f51fa222"},"/Python/docs/python-guide/Built_in_Functions/exec()/-3ef":{"__comp":"17896441","content":"a9a6ff67"},"/Python/docs/python-guide/Built_in_Functions/filter()/-31d":{"__comp":"17896441","content":"b5e55e9a"},"/Python/docs/python-guide/Built_in_Functions/globals()/-6dd":{"__comp":"17896441","content":"191284a0"},"/Python/docs/python-guide/Built_in_Functions/Improved_Chat_Bot/-009":{"__comp":"17896441","content":"308dd3a4"},"/Python/docs/python-guide/Built_in_Functions/isinstance()/-796":{"__comp":"17896441","content":"9b7a5f45"},"/Python/docs/python-guide/Built_in_Functions/locals()/-b03":{"__comp":"17896441","content":"d5a770b9"},"/Python/docs/python-guide/Built_in_Functions/map()/-88a":{"__comp":"17896441","content":"0ef765be"},"/Python/docs/python-guide/Built_in_Functions/print()/-54d":{"__comp":"17896441","content":"c1e6e7cd"},"/Python/docs/python-guide/Built_in_Functions/range()/-edc":{"__comp":"17896441","content":"6d047011"},"/Python/docs/python-guide/Built_in_Functions/round()/-f70":{"__comp":"17896441","content":"26d9c0ab"},"/Python/docs/python-guide/Built_in_Functions/slice()/-ae4":{"__comp":"17896441","content":"b77d8450"},"/Python/docs/python-guide/Built_in_Functions/sorted()/-8c0":{"__comp":"17896441","content":"a08c090c"},"/Python/docs/python-guide/Built_in_Functions/zip()/-d46":{"__comp":"17896441","content":"a3d57dda"},"/Python/docs/python-guide/Control_Flow/Break_and_Continue-286":{"__comp":"17896441","content":"1ddfe61b"},"/Python/docs/python-guide/Control_Flow/For_Loop-7a4":{"__comp":"17896441","content":"ceebdb4d"},"/Python/docs/python-guide/Control_Flow/If_Elif_Else-3c6":{"__comp":"17896441","content":"3750b354"},"/Python/docs/python-guide/Control_Flow/If_Else_Shorthand-ae8":{"__comp":"17896441","content":"068f8030"},"/Python/docs/python-guide/Control_Flow/Loop-Else-0c1":{"__comp":"17896441","content":"5359b4aa"},"/Python/docs/python-guide/Control_Flow/Rock_Paper_Scissors-074":{"__comp":"17896441","content":"8db21432"},"/Python/docs/python-guide/Control_Flow/While_Loop-d6c":{"__comp":"17896441","content":"913b297b"},"/Python/docs/python-guide/Dataclasses/@dataclass/-3f3":{"__comp":"17896441","content":"d27d873d"},"/Python/docs/python-guide/Dataclasses/@property/-4eb":{"__comp":"17896441","content":"740379d1"},"/Python/docs/python-guide/Dataclasses/Fields/-e90":{"__comp":"17896441","content":"f69e91c2"},"/Python/docs/python-guide/Dataclasses/InitVar/-5e3":{"__comp":"17896441","content":"3ebcdea2"},"/Python/docs/python-guide/Dataclasses/Notes_App/-509":{"__comp":"17896441","content":"1d1c07cf"},"/Python/docs/python-guide/Dataclasses/post_init/-050":{"__comp":"17896441","content":"7ec4d135"},"/Python/docs/python-guide/Errors/Else_Finally/-d90":{"__comp":"17896441","content":"a0acb491"},"/Python/docs/python-guide/Errors/Letters_Only/-0b8":{"__comp":"17896441","content":"c8011c9d"},"/Python/docs/python-guide/Errors/Raise/-3e6":{"__comp":"17896441","content":"19f81c0f"},"/Python/docs/python-guide/Errors/Try_Except/-958":{"__comp":"17896441","content":"342f73ce"},"/Python/docs/python-guide/Errors/Unknown_Errors/-3d6":{"__comp":"17896441","content":"a2ad7e19"},"/Python/docs/python-guide/Errors/User_Input/-c1d":{"__comp":"17896441","content":"8b2026ac"},"/Python/docs/python-guide/File-Management/Caching-JSON-7b0":{"__comp":"17896441","content":"8b6c5ce0"},"/Python/docs/python-guide/File-Management/Deleting_Files-9f7":{"__comp":"17896441","content":"579b3ab9"},"/Python/docs/python-guide/File-Management/File-Handling-5fa":{"__comp":"17896441","content":"a352be79"},"/Python/docs/python-guide/File-Management/Glob-480":{"__comp":"17896441","content":"9dbba695"},"/Python/docs/python-guide/File-Management/Handling-JSON-ba3":{"__comp":"17896441","content":"876678a4"},"/Python/docs/python-guide/File-Management/JSON-3b7":{"__comp":"17896441","content":"a4f0fafb"},"/Python/docs/python-guide/File-Management/Pickling-96a":{"__comp":"17896441","content":"5d990bfa"},"/Python/docs/python-guide/File-Management/Reading-Files-35f":{"__comp":"17896441","content":"cf307268"},"/Python/docs/python-guide/File-Management/toml-c66":{"__comp":"17896441","content":"4e9edaf3"},"/Python/docs/python-guide/File-Management/Writing-Creating-Files-ddd":{"__comp":"17896441","content":"5d0961f8"},"/Python/docs/python-guide/File-Management/yaml-c0f":{"__comp":"17896441","content":"40b0ebf5"},"/Python/docs/python-guide/Functions/Args_and_Kwargs-5df":{"__comp":"17896441","content":"3cd7aa5b"},"/Python/docs/python-guide/Functions/Creating_a_Function-91b":{"__comp":"17896441","content":"91c7a9a3"},"/Python/docs/python-guide/Functions/Parameters_and_Arguments-9ea":{"__comp":"17896441","content":"f14c1d17"},"/Python/docs/python-guide/Functions/Pass-849":{"__comp":"17896441","content":"9092f47c"},"/Python/docs/python-guide/Functions/Recursion-faa":{"__comp":"17896441","content":"6204e49d"},"/Python/docs/python-guide/Functions/Return_Functions-589":{"__comp":"17896441","content":"f552d686"},"/Python/docs/python-guide/Functions/Star_and_Slash-591":{"__comp":"17896441","content":"02be6242"},"/Python/docs/python-guide/getting-started-50c":{"__comp":"17896441","content":"924da9a5"},"/Python/docs/python-guide/Lists/Dont_Loop_Modify-cfd":{"__comp":"17896441","content":"4234000d"},"/Python/docs/python-guide/Lists/getting-started-9db":{"__comp":"17896441","content":"b7deb2ea"},"/Python/docs/python-guide/Lists/Grocery_List-ddd":{"__comp":"17896441","content":"f631f71f"},"/Python/docs/python-guide/Lists/List_Comprehensions-398":{"__comp":"17896441","content":"f13b2968"},"/Python/docs/python-guide/Lists/Slicing-192":{"__comp":"17896441","content":"1e26fa38"},"/Python/docs/python-guide/Modules/if_name_main/-65c":{"__comp":"17896441","content":"3d0f2262"},"/Python/docs/python-guide/Modules/Importing/-18c":{"__comp":"17896441","content":"85e353e6"},"/Python/docs/python-guide/Modules/Libraries/-e4f":{"__comp":"17896441","content":"510a290c"},"/Python/docs/python-guide/Modules/Modules/-c97":{"__comp":"17896441","content":"4cb30d22"},"/Python/docs/python-guide/Modules/Packages/code/-7d0":{"__comp":"17896441","content":"533304a1"},"/Python/docs/python-guide/Modules/Website_Status/-c1f":{"__comp":"17896441","content":"e7dc1672"},"/Python/docs/python-guide/Multiprocessing/Data-Sharing-Issue-6ef":{"__comp":"17896441","content":"5555e077"},"/Python/docs/python-guide/Multiprocessing/Intro-56c":{"__comp":"17896441","content":"5e8a9b70"},"/Python/docs/python-guide/Multiprocessing/Lock-Semaphores-d15":{"__comp":"17896441","content":"c66eba8b"},"/Python/docs/python-guide/Multiprocessing/Pipes-dc8":{"__comp":"17896441","content":"72bbb82c"},"/Python/docs/python-guide/Multiprocessing/Pools-Map-4bc":{"__comp":"17896441","content":"5a5349b1"},"/Python/docs/python-guide/Multiprocessing/Pools-Multiple-Functions-3ab":{"__comp":"17896441","content":"ca3ad580"},"/Python/docs/python-guide/Multiprocessing/Pools-Starmap-682":{"__comp":"17896441","content":"b7280f47"},"/Python/docs/python-guide/Multiprocessing/Processes-5fe":{"__comp":"17896441","content":"2979f838"},"/Python/docs/python-guide/Multiprocessing/Queues-85f":{"__comp":"17896441","content":"dd2920d7"},"/Python/docs/python-guide/Multithreading/Daemon-Threads-fb5":{"__comp":"17896441","content":"145e3d85"},"/Python/docs/python-guide/Multithreading/Locks-d00":{"__comp":"17896441","content":"de3f77b7"},"/Python/docs/python-guide/Multithreading/Race-Conditions-235":{"__comp":"17896441","content":"5cc55060"},"/Python/docs/python-guide/Multithreading/Semaphores-dae":{"__comp":"17896441","content":"9f19cdfb"},"/Python/docs/python-guide/Multithreading/Threads-96b":{"__comp":"17896441","content":"4b77b884"},"/Python/docs/python-guide/Multithreading/With-Lock-Semaphore-686":{"__comp":"17896441","content":"1c5ae7d9"},"/Python/docs/python-guide/OOP/@abstractmethod-72f":{"__comp":"17896441","content":"8452f48b"},"/Python/docs/python-guide/OOP/@classmethod-d45":{"__comp":"17896441","content":"0e087ba8"},"/Python/docs/python-guide/OOP/@staticmethod-171":{"__comp":"17896441","content":"b56cf611"},"/Python/docs/python-guide/OOP/Attributes_Class_and_Instance-ad2":{"__comp":"17896441","content":"56686996"},"/Python/docs/python-guide/OOP/Classes_and_Objects-115":{"__comp":"17896441","content":"7bfe3df9"},"/Python/docs/python-guide/OOP/Dunder_Methods-e50":{"__comp":"17896441","content":"d0532420"},"/Python/docs/python-guide/OOP/eq__()-62e":{"__comp":"17896441","content":"e1deef93"},"/Python/docs/python-guide/OOP/Inheritance-acb":{"__comp":"17896441","content":"62946fa7"},"/Python/docs/python-guide/OOP/init-6a3":{"__comp":"17896441","content":"31aaf742"},"/Python/docs/python-guide/OOP/Methods_Functions-e12":{"__comp":"17896441","content":"e43813f1"},"/Python/docs/python-guide/OOP/Name_Mangling-8f3":{"__comp":"17896441","content":"e4aa94b3"},"/Python/docs/python-guide/OOP/OOP-f96":{"__comp":"17896441","content":"e535263e"},"/Python/docs/python-guide/OOP/self-10d":{"__comp":"17896441","content":"d986f9a5"},"/Python/docs/python-guide/OOP/str()_repr()-a07":{"__comp":"17896441","content":"30425f75"},"/Python/docs/python-guide/OOP/super()-e8a":{"__comp":"17896441","content":"f9e7c98a"},"/Python/docs/python-guide/Python_Basics/Assertions-204":{"__comp":"17896441","content":"86e7d73b"},"/Python/docs/python-guide/Python_Basics/Booleans-87c":{"__comp":"17896441","content":"445d53c3"},"/Python/docs/python-guide/Python_Basics/Comments-fd2":{"__comp":"17896441","content":"be373491"},"/Python/docs/python-guide/Python_Basics/Comparing_Floats-4b0":{"__comp":"17896441","content":"74f339b8"},"/Python/docs/python-guide/Python_Basics/Constants-bdb":{"__comp":"17896441","content":"0fcdd45c"},"/Python/docs/python-guide/Python_Basics/Data_Types-fba":{"__comp":"17896441","content":"f9c8ab04"},"/Python/docs/python-guide/Python_Basics/Dictionaries-671":{"__comp":"17896441","content":"bb454858"},"/Python/docs/python-guide/Python_Basics/Doc_Strings-1ac":{"__comp":"17896441","content":"9dd7c8b4"},"/Python/docs/python-guide/Python_Basics/F-Strings-10b":{"__comp":"17896441","content":"62167d47"},"/Python/docs/python-guide/Python_Basics/Floats-c39":{"__comp":"17896441","content":"ec17db3e"},"/Python/docs/python-guide/Python_Basics/Frozensets-8cd":{"__comp":"17896441","content":"67abe04d"},"/Python/docs/python-guide/Python_Basics/Global-041":{"__comp":"17896441","content":"ac14fcce"},"/Python/docs/python-guide/Python_Basics/Integers-852":{"__comp":"17896441","content":"266e7ad2"},"/Python/docs/python-guide/Python_Basics/Lists-f40":{"__comp":"17896441","content":"62464792"},"/Python/docs/python-guide/Python_Basics/Mad_Libs_Project-e43":{"__comp":"17896441","content":"b56c59c7"},"/Python/docs/python-guide/Python_Basics/None-52e":{"__comp":"17896441","content":"ddd5109d"},"/Python/docs/python-guide/Python_Basics/Nonlocal-729":{"__comp":"17896441","content":"9ac61ab1"},"/Python/docs/python-guide/Python_Basics/Operators-084":{"__comp":"17896441","content":"68fb21db"},"/Python/docs/python-guide/Python_Basics/Scopes-162":{"__comp":"17896441","content":"98d1ce75"},"/Python/docs/python-guide/Python_Basics/Sets-dd3":{"__comp":"17896441","content":"52dc5d24"},"/Python/docs/python-guide/Python_Basics/Shortcut_Format-be7":{"__comp":"17896441","content":"492a8641"},"/Python/docs/python-guide/Python_Basics/Simple_Adder_Project-9f6":{"__comp":"17896441","content":"7a695929"},"/Python/docs/python-guide/Python_Basics/Strings-a0b":{"__comp":"17896441","content":"e688c8d1"},"/Python/docs/python-guide/Python_Basics/Syntax-487":{"__comp":"17896441","content":"30c3d9f2"},"/Python/docs/python-guide/Python_Basics/Truthy_and_Falsy-b1b":{"__comp":"17896441","content":"92fa72b8"},"/Python/docs/python-guide/Python_Basics/Tuples-713":{"__comp":"17896441","content":"ef6e47f0"},"/Python/docs/python-guide/Python_Basics/Type_Conversion-fae":{"__comp":"17896441","content":"333ec80d"},"/Python/docs/python-guide/Python_Basics/Type_Hints-f11":{"__comp":"17896441","content":"efd9c176"},"/Python/docs/python-guide/Python_Basics/Unpacking-5c2":{"__comp":"17896441","content":"3df59a35"},"/Python/docs/python-guide/Python_Basics/Variables-285":{"__comp":"17896441","content":"1b452ad4"},"/Python/docs/python-guide/Python_Basics/VS_Is-198":{"__comp":"17896441","content":"9852a806"},"/Python/docs/python-guide/Unit-Testing/Conftest-279":{"__comp":"17896441","content":"51ed8f9b"},"/Python/docs/python-guide/Unit-Testing/Fixtures-9dd":{"__comp":"17896441","content":"780b2cf7"},"/Python/docs/python-guide/Unit-Testing/Intro-de9":{"__comp":"17896441","content":"9c2f15da"},"/Python/docs/python-guide/Unit-Testing/Marks-853":{"__comp":"17896441","content":"2a6b03ac"},"/Python/docs/python-guide/Unit-Testing/Parametrize-489":{"__comp":"17896441","content":"53ff09af"},"/Python/docs/python-guide/Unit-Testing/TestingErrors-dc6":{"__comp":"17896441","content":"f96f815e"},"/Python/docs/rest-api/Building-REST-API/08-e61":{"__comp":"17896441","content":"be8d3379"},"/Python/docs/rest-api/Building-REST-API/adding_urls-7b8":{"__comp":"17896441","content":"82ae4d28"},"/Python/docs/rest-api/Building-REST-API/building_rest_api-8f6":{"__comp":"17896441","content":"4312c302"},"/Python/docs/rest-api/Building-REST-API/django_rest-533":{"__comp":"17896441","content":"4a2e78da"},"/Python/docs/rest-api/Building-REST-API/expanding_using_flask-9a5":{"__comp":"17896441","content":"207eed4d"},"/Python/docs/rest-api/Building-REST-API/fastapi-eda":{"__comp":"17896441","content":"0de1b55f"},"/Python/docs/rest-api/Building-REST-API/loading_serializing_drf-17b":{"__comp":"17896441","content":"818979f3"},"/Python/docs/rest-api/Building-REST-API/using_fastapi-0ff":{"__comp":"17896441","content":"8b5b43dd"},"/Python/docs/rest-api/CRUD-1ef":{"__comp":"17896441","content":"a7d3ada0"},"/Python/docs/rest-api/Designing-REST-API/designing_data_exchange-b12":{"__comp":"17896441","content":"5461ab07"},"/Python/docs/rest-api/Designing-REST-API/designing_error_responses-ccc":{"__comp":"17896441","content":"d08a13c4"},"/Python/docs/rest-api/Designing-REST-API/designing_rest_api-635":{"__comp":"17896441","content":"a473d1ab"},"/Python/docs/rest-api/Designing-REST-API/get_post-a70":{"__comp":"17896441","content":"ec380046"},"/Python/docs/rest-api/Designing-REST-API/interacting_with_rest-b7d":{"__comp":"17896441","content":"e56f6ccc"},"/Python/docs/rest-api/Designing-REST-API/put_patch_delete-57e":{"__comp":"17896441","content":"93edebbc"},"/Python/docs/rest-api/Designing-REST-API/understanding_rest_api-782":{"__comp":"17896441","content":"79c4db13"},"/Python/docs/rest-api/getting-started-064":{"__comp":"17896441","content":"e19a070d"},"/Python/docs/tips-and-tricks/common-errors-36d":{"__comp":"17896441","content":"62bbb2a0"},"/Python/docs/tips-and-tricks/critical-mistakes-to-avoid-16d":{"__comp":"17896441","content":"7e7eebeb"},"/Python/docs/tips-and-tricks/decorators-e51":{"__comp":"17896441","content":"b6ef7ae4"},"/Python/docs/tips-and-tricks/dont-dry-3de":{"__comp":"17896441","content":"7f6c326a"},"/Python/docs/tips-and-tricks/dunder-methods-cb6":{"__comp":"17896441","content":"eb52afdc"},"/Python/docs/tips-and-tricks/easter-eggs-a73":{"__comp":"17896441","content":"1be9de02"},"/Python/docs/tips-and-tricks/F-String-Tricks-961":{"__comp":"17896441","content":"277fcbe8"},"/Python/docs/tips-and-tricks/granularity-cohesion-d1d":{"__comp":"17896441","content":"594f8c30"},"/Python/docs/tips-and-tricks/itemgetter-884":{"__comp":"17896441","content":"b666f56a"},"/Python/docs/tips-and-tricks/iterable-iterator-9a2":{"__comp":"17896441","content":"43fdad46"},"/Python/docs/tips-and-tricks/Keywords-90a":{"__comp":"17896441","content":"3200b7d5"},"/Python/docs/tips-and-tricks/linux-commands-dfc":{"__comp":"17896441","content":"c95127d5"},"/Python/docs/tips-and-tricks/match-case-e41":{"__comp":"17896441","content":"b3a4baaf"},"/Python/docs/tips-and-tricks/methodcaller-1ea":{"__comp":"17896441","content":"d707847b"},"/Python/docs/tips-and-tricks/methods-d35":{"__comp":"17896441","content":"6fc57f84"},"/Python/docs/tips-and-tricks/python-is-python3-443":{"__comp":"17896441","content":"e784a889"},"/Python/docs/tips-and-tricks/rip-gil-442":{"__comp":"17896441","content":"a432c62c"},"/Python/docs/tips-and-tricks/seven-code-habbits-82d":{"__comp":"17896441","content":"af0efa6c"},"/Python/docs/tips-and-tricks/tips-and-tricks-291":{"__comp":"17896441","content":"bc257119"},"/Python/docs/tips-and-tricks/worst-Features-fd9":{"__comp":"17896441","content":"dd2a7a4b"},"/Python/docs/tips-and-tricks/wtf-is-self-0a7":{"__comp":"17896441","content":"72eceac8"},"/Python/docs/tips-and-tricks/yield-937":{"__comp":"17896441","content":"8ee4e10f"},"/Python/-6cd":{"__comp":"c4f5d8e4","__context":{"plugin":"a7456010"},"config":"5e9f5e1a"}}')}},e=>{e.O(0,[1869],(()=>{return t=5161,e(e.s=t);var t}));e.O()}]); \ No newline at end of file +/*! For license information please see main.e87c1819.js.LICENSE.txt */ +(self.webpackChunkmy_docusaurus_site=self.webpackChunkmy_docusaurus_site||[]).push([[8792],{8912:(e,t,n)=>{"use strict";n.d(t,{A:()=>p});n(6540);var a=n(3259),o=n.n(a),i=n(4054);const r={"00a4a69b":[()=>n.e(928).then(n.bind(n,3342)),"@site/docs/design-patterns/01_creational/05_builder.md",3342],"017bef9f":[()=>n.e(6669).then(n.bind(n,3416)),"@site/docs/data-analysis/02_Data_Frames/06_removing-columns-rows.md",3416],"01a85c17":[()=>Promise.all([n.e(1869),n.e(8209)]).then(n.bind(n,4941)),"@theme/BlogTagsListPage",4941],"02279664":[()=>n.e(3703).then(n.bind(n,8337)),"@site/docs/ci-cd/01_introduction/02_revolution_ci_cd/02_cdp.md",8337],"02be6242":[()=>n.e(9452).then(n.bind(n,2403)),"@site/docs/python-guide/03_Functions/07_Star_and_Slash.md",2403],"030c3c62":[()=>n.e(3917).then(n.bind(n,5214)),"@site/docs/data-analysis/07_Data-Visualization/10_Bar_Chart_Race.md",5214],"043db0b1":[()=>n.e(6875).then(n.bind(n,3673)),"@site/docs/data-analysis/08_NumPy/14_Reversing_Arrays.md",3673],"068f8030":[()=>n.e(3434).then(n.bind(n,4607)),"@site/docs/python-guide/02_Control_Flow/02_If_Else_Shorthand.md",4607],"06d8f224":[()=>n.e(6775).then(n.bind(n,1947)),"@site/docs/ci-cd/02_setting-up/01.md",1947],"09f396b9":[()=>n.e(4565).then(n.bind(n,1085)),"@site/docs/data-analysis/01_Series/01_intro.md",1085],"0b60ca86":[()=>n.e(9761).then(n.t.bind(n,5931,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-designing-rest-apis-62d.json",5931],"0d139d63":[()=>n.e(9765).then(n.bind(n,5312)),"@site/docs/data-analysis/08_NumPy/05_Reshaping.md",5312],"0d75afaf":[()=>n.e(1155).then(n.bind(n,5423)),"@site/docs/data-analysis/08_NumPy/09_Basic_Operations.md",5423],"0da3a2d9":[()=>n.e(1167).then(n.bind(n,5690)),"@site/docs/data-analysis/02_Data_Frames/03_descripe-info.md",5690],"0dab5e76":[()=>n.e(2183).then(n.t.bind(n,3043,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-series-b95.json",3043],"0de1b55f":[()=>n.e(2847).then(n.bind(n,1021)),"@site/docs/rest-api/Building-REST-API/07_fastapi.md",1021],"0e087ba8":[()=>n.e(7390).then(n.bind(n,271)),"@site/docs/python-guide/07_OOP/14_@classmethod.md",271],"0e157602":[()=>n.e(3897).then(n.bind(n,2134)),"@site/docs/data-analysis/05_Combining_Datasets/06_left_right_join.md",2134],"0edcc700":[()=>n.e(1691).then(n.bind(n,2667)),"@site/docs/data-analysis/08_NumPy/11_Matrices.md",2667],"0ef765be":[()=>n.e(6583).then(n.bind(n,5621)),"@site/docs/python-guide/08_Built_in_Functions/14_map()/README.md",5621],"0f0ba0d3":[()=>n.e(7951).then(n.bind(n,2091)),"@site/docs/design-patterns/02_structural/01_structural.md",2091],"0fcdd45c":[()=>n.e(8600).then(n.bind(n,5679)),"@site/docs/python-guide/01_Python_Basics/04_Constants.md",5679],"1064f048":[()=>n.e(3140).then(n.t.bind(n,3742,19)),"@generated/docusaurus-plugin-content-blog/default/p/python-blog-authors-ccatik-5f6.json",3742],"145e3d85":[()=>n.e(9726).then(n.bind(n,9571)),"@site/docs/python-guide/13_Multithreading/03_Daemon-Threads.md",9571],"14eb3368":[()=>Promise.all([n.e(1869),n.e(6969)]).then(n.bind(n,7981)),"@theme/DocCategoryGeneratedIndexPage",7981],"1780ca50":[()=>n.e(4944).then(n.bind(n,4378)),"@site/docs/data-analysis/06_Time_Series/11_Project.md",4378],17896441:[()=>Promise.all([n.e(1869),n.e(9392),n.e(8401)]).then(n.bind(n,6648)),"@theme/DocItem",6648],"191284a0":[()=>n.e(4655).then(n.bind(n,2394)),"@site/docs/python-guide/08_Built_in_Functions/06_globals()/README.md",2394],"19f81c0f":[()=>n.e(3837).then(n.bind(n,8760)),"@site/docs/python-guide/04_Errors/04_Raise/README.md",8760],"1b452ad4":[()=>n.e(5684).then(n.bind(n,8142)),"@site/docs/python-guide/01_Python_Basics/03_Variables.md",8142],"1be9de02":[()=>n.e(6927).then(n.bind(n,9764)),"@site/docs/tips-and-tricks/easter-eggs.md",9764],"1c5ae7d9":[()=>n.e(9776).then(n.bind(n,5402)),"@site/docs/python-guide/13_Multithreading/05_With-Lock-Semaphore.md",5402],"1d1c07cf":[()=>n.e(1452).then(n.bind(n,1395)),"@site/docs/python-guide/09_Dataclasses/06_Notes_App/README.md",1395],"1d27f193":[()=>n.e(370).then(n.bind(n,5964)),"@site/docs/design-patterns/01_creational/01_creational.md",5964],"1d2e1535":[()=>n.e(5209).then(n.bind(n,7558)),"@site/blog/2025-01-22-swa.md?truncated=true",7558],"1ddfe61b":[()=>n.e(9366).then(n.bind(n,902)),"@site/docs/python-guide/02_Control_Flow/05_Break_and_Continue.md",902],"1e26fa38":[()=>n.e(1055).then(n.bind(n,6890)),"@site/docs/python-guide/06_Lists/02_Slicing.md",6890],"1f391b9e":[()=>Promise.all([n.e(1869),n.e(9392),n.e(6061)]).then(n.bind(n,9181)),"@theme/MDXPage",9181],"207eed4d":[()=>n.e(7474).then(n.bind(n,2082)),"@site/docs/rest-api/Building-REST-API/02_expanding_using_flask.md",2082],"236be2e6":[()=>n.e(3294).then(n.t.bind(n,5771,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-functions-491.json",5771],"2476f821":[()=>n.e(5231).then(n.t.bind(n,9335,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-oop-47b.json",9335],"2522d3c7":[()=>n.e(857).then(n.bind(n,5397)),"@site/docs/data-analysis/04_Reshaping_Datasets/04_melt.md",5397],"2622d6bc":[()=>n.e(8464).then(n.bind(n,1554)),"@site/docs/data-analysis/07_Data-Visualization/07_Scatter.md",1554],"263c1a40":[()=>n.e(2527).then(n.bind(n,340)),"@site/docs/data-analysis/08_NumPy/13_Finding_Unique_Elements.md",340],"266e7ad2":[()=>n.e(6546).then(n.bind(n,2973)),"@site/docs/python-guide/01_Python_Basics/08_Integers.md",2973],"26d9c0ab":[()=>n.e(4978).then(n.bind(n,3020)),"@site/docs/python-guide/08_Built_in_Functions/03_round()/README.md",3020],"277fcbe8":[()=>n.e(4341).then(n.bind(n,2814)),"@site/docs/tips-and-tricks/5-F-String-Tricks.md",2814],"293fcfde":[()=>n.e(9177).then(n.bind(n,5050)),"@site/docs/python-guide/08_Built_in_Functions/19_dunder_methods/README.md",5050],"294b7f6a":[()=>n.e(2426).then(n.bind(n,6047)),"@site/docs/ci-cd/01_introduction/02_revolution_ci_cd/01_ci.md",6047],"2979f838":[()=>n.e(3079).then(n.bind(n,1779)),"@site/docs/python-guide/12_Multiprocessing/02_Processes.md",1779],"2a5468dc":[()=>n.e(1838).then(n.bind(n,9690)),"@site/docs/data-analysis/04_Reshaping_Datasets/07_groupby.md",9690],"2a6b03ac":[()=>n.e(175).then(n.bind(n,3291)),"@site/docs/python-guide/14_Unit-Testing/04_Marks.md",3291],"2ce245f5":[()=>n.e(897).then(n.t.bind(n,3815,19)),"@generated/docusaurus-plugin-content-blog/default/p/python-blog-tags-hello-921.json",3815],"2dda9ef5":[()=>n.e(1477).then(n.bind(n,1298)),"@site/blog/2025-01-22-swa.md",1298],"2eb0321d":[()=>n.e(2674).then(n.t.bind(n,3667,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-building-rest-apis-9c0.json",3667],"2f2fa6f1":[()=>n.e(2193).then(n.t.bind(n,7721,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-lists-691.json",7721],"2ff77cc8":[()=>n.e(2321).then(n.t.bind(n,1207,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-data-visualization-057.json",1207],"30425f75":[()=>n.e(9581).then(n.bind(n,5127)),"@site/docs/python-guide/07_OOP/07_str()_repr().md",5127],"308dd3a4":[()=>n.e(7882).then(n.bind(n,2686)),"@site/docs/python-guide/08_Built_in_Functions/11_Improved_Chat_Bot/README.md",2686],"30c3d9f2":[()=>n.e(9069).then(n.bind(n,2480)),"@site/docs/python-guide/01_Python_Basics/01_Syntax.md",2480],"31aaf742":[()=>n.e(9070).then(n.bind(n,4018)),"@site/docs/python-guide/07_OOP/03_init.md",4018],"31d1cae9":[()=>n.e(6576).then(n.bind(n,2589)),"@site/docs/data-analysis/02_Data_Frames/04_nlargest-nsmallest.md",2589],"3200b7d5":[()=>n.e(6832).then(n.bind(n,919)),"@site/docs/tips-and-tricks/39-Keywords.md",919],"32e82d59":[()=>n.e(659).then(n.bind(n,9770)),"@site/docs/ci-cd/01_introduction/01_cicd/03_ci.md",9770],"333ec80d":[()=>n.e(4040).then(n.bind(n,2438)),"@site/docs/python-guide/01_Python_Basics/12_Type_Conversion.md",2438],"33fc5bb8":[()=>Promise.all([n.e(1869),n.e(9392),n.e(4622),n.e(867)]).then(n.bind(n,4003)),"@theme/Blog/Pages/BlogAuthorsPostsPage",4003],"342f73ce":[()=>n.e(816).then(n.bind(n,3634)),"@site/docs/python-guide/04_Errors/02_Try_Except/README.md",3634],"34cbd55a":[()=>n.e(126).then(n.t.bind(n,2533,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-errors-956.json",2533],"35fb5052":[()=>n.e(5465).then(n.bind(n,481)),"@site/blog/2025-01-22-why.md",481],"3613df99":[()=>n.e(1440).then(n.bind(n,159)),"@site/docs/gui-development/01_introduction/02_gui_frameworks.md",159],"36994c47":[()=>n.e(9858).then(n.t.bind(n,5516,19)),"@generated/docusaurus-plugin-content-blog/default/__plugin.json",5516],"3750b354":[()=>n.e(2824).then(n.bind(n,2544)),"@site/docs/python-guide/02_Control_Flow/01_If_Elif_Else.md",2544],"392e7e20":[()=>n.e(6706).then(n.bind(n,9681)),"@site/docs/data-analysis/01_Series/04_handling_csv_files.md",9681],"393be207":[()=>n.e(4134).then(n.bind(n,1943)),"@site/src/pages/markdown-page.md",1943],"3cd7aa5b":[()=>n.e(5777).then(n.bind(n,5990)),"@site/docs/python-guide/03_Functions/06_Args_and_Kwargs.md",5990],"3d0f2262":[()=>n.e(6908).then(n.bind(n,5647)),"@site/docs/python-guide/05_Modules/03_if_name_main/README.md",5647],"3d383523":[()=>n.e(3650).then(n.t.bind(n,9573,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-reshaping-datasets-e32.json",9573],"3df59a35":[()=>n.e(3055).then(n.bind(n,3213)),"@site/docs/python-guide/01_Python_Basics/30_Unpacking.md",3213],"3e900806":[()=>n.e(7210).then(n.bind(n,480)),"@site/docs/data-analysis/02_Data_Frames/08_dropna.md",480],"3ebcdea2":[()=>n.e(8046).then(n.bind(n,6247)),"@site/docs/python-guide/09_Dataclasses/04_InitVar/README.md",6247],"3ec98c88":[()=>n.e(7304).then(n.bind(n,2164)),"@site/docs/data-analysis/07_Data-Visualization/08_Candlestick_Charts.md",2164],"3f2b3237":[()=>n.e(9089).then(n.bind(n,6740)),"@site/docs/data-analysis/04_Reshaping_Datasets/06_pivot-table.md",6740],"40a5a7ee":[()=>n.e(7171).then(n.bind(n,4068)),"@site/docs/gui-development/01_introduction/04_setting-up.md",4068],"40b0ebf5":[()=>n.e(6815).then(n.bind(n,6070)),"@site/docs/python-guide/15_File-Management/10_yaml.md",6070],"4234000d":[()=>n.e(5808).then(n.bind(n,8171)),"@site/docs/python-guide/06_Lists/03_Dont_Loop_Modify.md",8171],"4312c302":[()=>n.e(8817).then(n.bind(n,7054)),"@site/docs/rest-api/Building-REST-API/01_building_rest_api.md",7054],"4366146e":[()=>n.e(9208).then(n.bind(n,7991)),"@site/docs/data-analysis/07_Data-Visualization/06_Interactive_Plots.md",7991],"43fdad46":[()=>n.e(9927).then(n.bind(n,5795)),"@site/docs/tips-and-tricks/iterable-iterator.md",5795],"445d53c3":[()=>n.e(4386).then(n.bind(n,1218)),"@site/docs/python-guide/01_Python_Basics/14_Booleans.md",1218],"4499c641":[()=>n.e(2343).then(n.t.bind(n,5567,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-advanced-b18.json",5567],"4499ec13":[()=>n.e(2929).then(n.bind(n,9452)),"@site/docs/data-analysis/05_Combining_Datasets/04_outer_join.md",9452],"4591fb16":[()=>n.e(2909).then(n.bind(n,771)),"@site/docs/gui-development/00_getting-started.md",771],"475d6da7":[()=>n.e(9493).then(n.bind(n,8324)),"@site/docs/data-analysis/08_NumPy/02_Arrays.md",8324],"48e2860f":[()=>n.e(9014).then(n.bind(n,2801)),"@site/docs/data-analysis/02_Data_Frames/01_intro.md",2801],"492a8641":[()=>n.e(9334).then(n.bind(n,9236)),"@site/docs/python-guide/01_Python_Basics/07_Shortcut_Format.md",9236],"49be0ba8":[()=>n.e(5960).then(n.bind(n,2844)),"@site/docs/data-analysis/07_Data-Visualization/04_Pie_Charts.md",2844],"49fe9afd":[()=>n.e(3721).then(n.bind(n,1464)),"@site/docs/design-patterns/01_creational/02_singleton.md",1464],"4a2e78da":[()=>n.e(5513).then(n.bind(n,1507)),"@site/docs/rest-api/Building-REST-API/03_django_rest.md",1507],"4a7981ee":[()=>n.e(5785).then(n.bind(n,4862)),"@site/docs/python-guide/08_Built_in_Functions/02_enumerate()/README.md",4862],"4b77b884":[()=>n.e(9645).then(n.bind(n,9433)),"@site/docs/python-guide/13_Multithreading/01_Threads.md",9433],"4bece594":[()=>n.e(7168).then(n.bind(n,5082)),"@site/docs/ci-cd/01_introduction/01_cicd/05_cdp.md",5082],"4cb30d22":[()=>n.e(9345).then(n.bind(n,7871)),"@site/docs/python-guide/05_Modules/01_Modules/README.md",7871],"4d2986d4":[()=>n.e(8034).then(n.bind(n,4770)),"@site/docs/data-analysis/08_NumPy/10_Broadcasting.md",4770],"4da8d02e":[()=>n.e(3955).then(n.bind(n,3336)),"@site/docs/data-analysis/06_Time_Series/06_Timestap_Methods_Attributes.md",3336],"4dd92639":[()=>n.e(6422).then(n.bind(n,6997)),"@site/docs/data-analysis/01_Series/02_attributes.md",6997],"4e9edaf3":[()=>n.e(2900).then(n.bind(n,9039)),"@site/docs/python-guide/15_File-Management/11_toml.md",9039],"4f7742b9":[()=>n.e(2642).then(n.bind(n,2256)),"@site/docs/ci-cd/04_fastapi-actions/01.md",2256],"50a3b692":[()=>n.e(8801).then(n.bind(n,4469)),"@site/docs/gui-development/01_introduction/03_right_framework.md",4469],"510a290c":[()=>n.e(6604).then(n.bind(n,8207)),"@site/docs/python-guide/05_Modules/05_Libraries/README.md",8207],"51ed8f9b":[()=>n.e(9225).then(n.bind(n,7878)),"@site/docs/python-guide/14_Unit-Testing/03_Conftest.md",7878],"5269bdec":[()=>n.e(2019).then(n.bind(n,1236)),"@site/docs/python-guide/11_AsyncIO/05_Website_Status.md",1236],"52dc5d24":[()=>n.e(6192).then(n.bind(n,1598)),"@site/docs/python-guide/01_Python_Basics/17_Sets.md",1598],"533304a1":[()=>n.e(4095).then(n.bind(n,636)),"@site/docs/python-guide/05_Modules/04_Packages/code/README.md",636],"5359b4aa":[()=>n.e(1145).then(n.bind(n,3695)),"@site/docs/python-guide/02_Control_Flow/06_Loop-Else.md",3695],"53ff09af":[()=>n.e(211).then(n.bind(n,5582)),"@site/docs/python-guide/14_Unit-Testing/05_Parametrize.md",5582],"5461ab07":[()=>n.e(7913).then(n.bind(n,7039)),"@site/docs/rest-api/Designing-REST-API/06_designing_data_exchange.md",7039],"5555e077":[()=>n.e(6654).then(n.bind(n,4920)),"@site/docs/python-guide/12_Multiprocessing/06_Data-Sharing-Issue.md",4920],"555c4724":[()=>n.e(2044).then(n.bind(n,8683)),"@site/docs/ci-cd/01_introduction/01_cicd/01_introduction-github-actions.md",8683],"55781ecd":[()=>n.e(4223).then(n.bind(n,7824)),"@site/docs/data-analysis/05_Combining_Datasets/08_outer_join_minus.md",7824],56686996:[()=>n.e(3234).then(n.bind(n,7962)),"@site/docs/python-guide/07_OOP/05_Attributes_Class_and_Instance.md",7962],"579b3ab9":[()=>n.e(2189).then(n.bind(n,1855)),"@site/docs/python-guide/15_File-Management/04_Deleting_Files.md",1855],"57b180af":[()=>n.e(113).then(n.bind(n,732)),"@site/docs/data-analysis/07_Data-Visualization/05_Styles.md",732],"58b97900":[()=>n.e(8031).then(n.bind(n,4417)),"@site/docs/python-guide/10_Advanced/02_Walrus_Operator/README.md",4417],"5912db3d":[()=>n.e(1571).then(n.bind(n,5472)),"@site/docs/data-analysis/01_Series/03_methods.md",5472],"594f8c30":[()=>n.e(8665).then(n.bind(n,5337)),"@site/docs/tips-and-tricks/granularity-cohesion.md",5337],"59df60c1":[()=>n.e(8141).then(n.bind(n,9437)),"@site/docs/data-analysis/05_Combining_Datasets/09_Merging_Different_Column.md",9437],"5a5349b1":[()=>n.e(9227).then(n.bind(n,6622)),"@site/docs/python-guide/12_Multiprocessing/03_Pools-Map.md",6622],"5a7f151d":[()=>n.e(6199).then(n.t.bind(n,3499,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-fastapi-actions-153.json",3499],"5cc55060":[()=>n.e(4246).then(n.bind(n,5583)),"@site/docs/python-guide/13_Multithreading/06_Race-Conditions.md",5583],"5d00fa63":[()=>n.e(210).then(n.bind(n,2330)),"@site/docs/data-analysis/01_Series/08_accessing_elements_position.md",2330],"5d0961f8":[()=>n.e(8968).then(n.bind(n,5124)),"@site/docs/python-guide/15_File-Management/03_Writing-Creating-Files.md",5124],"5d990bfa":[()=>n.e(2231).then(n.bind(n,3067)),"@site/docs/python-guide/15_File-Management/09_Pickling.md",3067],"5e6e778b":[()=>n.e(5594).then(n.bind(n,6553)),"@site/docs/data-analysis/06_Time_Series/03_Period_PeriodIndex.md",6553],"5e8a9b70":[()=>n.e(8816).then(n.bind(n,1684)),"@site/docs/python-guide/12_Multiprocessing/01_Intro.md",1684],"5e95c892":[()=>n.e(9647).then(n.bind(n,8122)),"@theme/DocsRoot",8122],"5e9f5e1a":[()=>Promise.resolve().then(n.bind(n,4784)),"@generated/docusaurus.config",4784],"5f5f0651":[()=>n.e(4191).then(n.bind(n,9950)),"@site/docs/ci-cd/01_introduction/01_cicd/04_cd.md",9950],"6171ec9d":[()=>n.e(4535).then(n.t.bind(n,1852,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-behavioral-design-patterns-05e.json",1852],"6204e49d":[()=>n.e(7107).then(n.bind(n,1791)),"@site/docs/python-guide/03_Functions/05_Recursion.md",1791],"62167d47":[()=>n.e(3752).then(n.bind(n,3296)),"@site/docs/python-guide/01_Python_Basics/28_F-Strings.md",3296],"621db11d":[()=>Promise.all([n.e(1869),n.e(4622),n.e(4212)]).then(n.bind(n,217)),"@theme/Blog/Pages/BlogAuthorsListPage",217],62464792:[()=>n.e(735).then(n.bind(n,2924)),"@site/docs/python-guide/01_Python_Basics/15_Lists.md",2924],"62946fa7":[()=>n.e(4468).then(n.bind(n,664)),"@site/docs/python-guide/07_OOP/11_Inheritance.md",664],"629ec2bb":[()=>n.e(6970).then(n.bind(n,1482)),"@site/docs/data-analysis/02_Data_Frames/02_methods.md",1482],"62bbb2a0":[()=>n.e(7232).then(n.bind(n,9508)),"@site/docs/tips-and-tricks/10-common-errors.md",9508],"6362c7e0":[()=>n.e(5719).then(n.t.bind(n,2371,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-python-basics-4d7.json",2371],"63ba0684":[()=>n.e(6084).then(n.bind(n,6441)),"@site/docs/data-analysis/08_NumPy/12_Generating_Random_Numbers.md",6441],"66d0f264":[()=>n.e(165).then(n.t.bind(n,7109,19)),"@generated/docusaurus-plugin-content-blog/default/p/python-blog-tags-065.json",7109],"67abe04d":[()=>n.e(4988).then(n.bind(n,2357)),"@site/docs/python-guide/01_Python_Basics/18_Frozensets.md",2357],"6875c492":[()=>Promise.all([n.e(1869),n.e(9392),n.e(4622),n.e(4813)]).then(n.bind(n,6956)),"@theme/BlogTagsPostsPage",6956],"68fb21db":[()=>n.e(552).then(n.bind(n,9632)),"@site/docs/python-guide/01_Python_Basics/10_Operators.md",9632],"6d047011":[()=>n.e(3310).then(n.bind(n,5901)),"@site/docs/python-guide/08_Built_in_Functions/04_range()/README.md",5901],"6d67a33f":[()=>n.e(6611).then(n.bind(n,6470)),"@site/docs/data-analysis/04_Reshaping_Datasets/02_transpose.md",6470],"6dbed542":[()=>n.e(6837).then(n.t.bind(n,1368,19)),"@generated/docusaurus-plugin-content-blog/default/p/python-blog-authors-7ca.json",1368],"6fc57f84":[()=>n.e(9732).then(n.bind(n,7468)),"@site/docs/tips-and-tricks/methods.md",7468],"71ebce2a":[()=>n.e(989).then(n.bind(n,729)),"@site/docs/data-analysis/08_NumPy/04_Shape_and_Size.md",729],"72bbb82c":[()=>n.e(1099).then(n.bind(n,1309)),"@site/docs/python-guide/12_Multiprocessing/07_Pipes.md",1309],"72eceac8":[()=>n.e(1875).then(n.bind(n,3537)),"@site/docs/tips-and-tricks/wtf-is-self.md",3537],"740379d1":[()=>n.e(6416).then(n.bind(n,9911)),"@site/docs/python-guide/09_Dataclasses/05_@property/README.md",9911],"74f339b8":[()=>n.e(6485).then(n.bind(n,6010)),"@site/docs/python-guide/01_Python_Basics/23_Comparing_Floats.md",6010],"7789c0d7":[()=>n.e(6578).then(n.t.bind(n,7996,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-a81.json",7996],"780b2cf7":[()=>n.e(4920).then(n.bind(n,5685)),"@site/docs/python-guide/14_Unit-Testing/02_Fixtures.md",5685],"7811e216":[()=>n.e(2372).then(n.bind(n,6764)),"@site/docs/data-analysis/08_NumPy/03_Sorting_Concatenating.md",6764],"789d323c":[()=>n.e(216).then(n.t.bind(n,2147,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-data-frames-65c.json",2147],"79c4db13":[()=>n.e(3080).then(n.bind(n,9515)),"@site/docs/rest-api/Designing-REST-API/02_understanding_rest_api.md",9515],"7a695929":[()=>n.e(3249).then(n.bind(n,9043)),"@site/docs/python-guide/01_Python_Basics/13_Simple_Adder_Project.md",9043],"7bfe3df9":[()=>n.e(5630).then(n.bind(n,9459)),"@site/docs/python-guide/07_OOP/02_Classes_and_Objects.md",9459],"7e7eebeb":[()=>n.e(5899).then(n.bind(n,6568)),"@site/docs/tips-and-tricks/5-critical-mistakes-to-avoid.md",6568],"7e90e893":[()=>n.e(319).then(n.bind(n,5822)),"@site/docs/data-analysis/07_Data-Visualization/02_Bar_Plots.md",5822],"7ec4d135":[()=>n.e(4503).then(n.bind(n,3837)),"@site/docs/python-guide/09_Dataclasses/03_post_init/README.md",3837],"7f6c326a":[()=>n.e(7113).then(n.bind(n,6115)),"@site/docs/tips-and-tricks/dont-dry.md",6115],"80176b24":[()=>n.e(249).then(n.bind(n,2051)),"@site/docs/data-analysis/01_Series/06_sorting_values.md",2051],"801c5c2a":[()=>n.e(6328).then(n.bind(n,438)),"@site/docs/design-patterns/00_getting-started.md",438],"806ba571":[()=>n.e(9121).then(n.bind(n,1672)),"@site/docs/data-analysis/04_Reshaping_Datasets/05_pivot.md",1672],"814f3328":[()=>n.e(7472).then(n.t.bind(n,5513,19)),"~blog/default/blog-post-list-prop-default.json",5513],"8162aee2":[()=>n.e(8049).then(n.bind(n,7061)),"@site/docs/python-guide/10_Advanced/03_Lambda_Functions/README.md",7061],"818979f3":[()=>n.e(6994).then(n.bind(n,3711)),"@site/docs/rest-api/Building-REST-API/04_loading_serializing_drf.md",3711],"81a0c3ab":[()=>n.e(8530).then(n.t.bind(n,7983,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-structural-design-patterns-5d6.json",7983],"82ae4d28":[()=>n.e(7981).then(n.bind(n,4010)),"@site/docs/rest-api/Building-REST-API/05_adding_urls.md",4010],"837e41de":[()=>n.e(6472).then(n.bind(n,1530)),"@site/docs/ci-cd/00_getting-started.md",1530],"83e5db84":[()=>n.e(1876).then(n.t.bind(n,5089,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-multi-threading-142.json",5089],"8452f48b":[()=>n.e(4482).then(n.bind(n,5135)),"@site/docs/python-guide/07_OOP/15_@abstractmethod.md",5135],"84f46ccb":[()=>n.e(1959).then(n.bind(n,877)),"@site/docs/data-analysis/06_Time_Series/05_Accessing_Time_Attributes.md",877],"85b17cde":[()=>n.e(8258).then(n.bind(n,9350)),"@site/docs/data-analysis/08_NumPy/07_Indexing_Slicing.md",9350],"85e353e6":[()=>n.e(2935).then(n.bind(n,9535)),"@site/docs/python-guide/05_Modules/02_Importing/README.md",9535],"86e7d73b":[()=>n.e(2649).then(n.bind(n,6203)),"@site/docs/python-guide/01_Python_Basics/29_Assertions.md",6203],"876678a4":[()=>n.e(1930).then(n.bind(n,1611)),"@site/docs/python-guide/15_File-Management/06_Handling-JSON.md",1611],"888e3f85":[()=>n.e(1076).then(n.t.bind(n,9331,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-built-in-functions-133.json",9331],"8aa97a9d":[()=>n.e(1795).then(n.bind(n,7571)),"@site/docs/python-guide/10_Advanced/04_Generators/README.md",7571],"8acbafb2":[()=>n.e(660).then(n.bind(n,7835)),"@site/docs/data-analysis/08_NumPy/16_Saving_Loading_Arrays.md",7835],"8b2026ac":[()=>n.e(3331).then(n.bind(n,8968)),"@site/docs/python-guide/04_Errors/01_User_Input/README.md",8968],"8b5b43dd":[()=>n.e(1483).then(n.bind(n,3718)),"@site/docs/rest-api/Building-REST-API/06_using_fastapi.md",3718],"8b6c5ce0":[()=>n.e(9523).then(n.bind(n,2319)),"@site/docs/python-guide/15_File-Management/07_Caching-JSON.md",2319],"8cfe2489":[()=>n.e(8212).then(n.bind(n,3282)),"@site/docs/data-analysis/08_NumPy/01_Lists_vs_NumPy.md",3282],"8d6874b1":[()=>n.e(3547).then(n.t.bind(n,3405,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-file-management-6f5.json",3405],"8d6d8b61":[()=>n.e(8724).then(n.t.bind(n,592,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-setting-up-358.json",592],"8db21432":[()=>n.e(4575).then(n.bind(n,7441)),"@site/docs/python-guide/02_Control_Flow/07_Rock_Paper_Scissors.md",7441],"8ee4e10f":[()=>n.e(2369).then(n.bind(n,178)),"@site/docs/tips-and-tricks/yield.md",178],"90067a5c":[()=>n.e(4250).then(n.t.bind(n,8601,19)),"@generated/docusaurus-plugin-content-blog/default/p/python-blog-archive-f6f.json",8601],"9092f47c":[()=>n.e(8877).then(n.bind(n,7792)),"@site/docs/python-guide/03_Functions/02_Pass.md",7792],"913b297b":[()=>n.e(3782).then(n.bind(n,6304)),"@site/docs/python-guide/02_Control_Flow/04_While_Loop.md",6304],"91c7a9a3":[()=>n.e(4570).then(n.bind(n,7765)),"@site/docs/python-guide/03_Functions/01_Creating_a_Function.md",7765],"924da9a5":[()=>n.e(8902).then(n.bind(n,6205)),"@site/docs/python-guide/00_getting-started.md",6205],"92f0f0d9":[()=>n.e(8499).then(n.bind(n,8560)),"@site/docs/data-analysis/06_Time_Series/09_reindex.md",8560],"92fa72b8":[()=>n.e(3828).then(n.bind(n,7600)),"@site/docs/python-guide/01_Python_Basics/22_Truthy_and_Falsy.md",7600],"93cba1c9":[()=>n.e(3734).then(n.t.bind(n,5003,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-dataclasses-27f.json",5003],"93edebbc":[()=>n.e(488).then(n.bind(n,7942)),"@site/docs/rest-api/Designing-REST-API/04_put_patch_delete.md",7942],"94622a99":[()=>n.e(2146).then(n.t.bind(n,2753,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-time-series-1d5.json",2753],"97888c38":[()=>n.e(5713).then(n.bind(n,9356)),"@site/docs/data-analysis/03_String_Operators/02_startswith-endswith.md",9356],"9852a806":[()=>n.e(2664).then(n.bind(n,190)),"@site/docs/python-guide/01_Python_Basics/31_VS_Is.md",190],"98d1ce75":[()=>n.e(4245).then(n.bind(n,2908)),"@site/docs/python-guide/01_Python_Basics/24_Scopes.md",2908],"996e16ac":[()=>n.e(6079).then(n.bind(n,6633)),"@site/docs/data-analysis/01_Series/07_counting_values.md",6633],"9a1cf803":[()=>n.e(788).then(n.bind(n,3539)),"@site/docs/data-analysis/06_Time_Series/08_loc_iloc_DatetimeIndex.md",3539],"9ac61ab1":[()=>n.e(2275).then(n.bind(n,5615)),"@site/docs/python-guide/01_Python_Basics/26_Nonlocal.md",5615],"9b7a5f45":[()=>n.e(8714).then(n.bind(n,3704)),"@site/docs/python-guide/08_Built_in_Functions/10_isinstance()/README.md",3704],"9c2f15da":[()=>n.e(5848).then(n.bind(n,2993)),"@site/docs/python-guide/14_Unit-Testing/01_Intro.md",2993],"9dbba695":[()=>n.e(5155).then(n.bind(n,6933)),"@site/docs/python-guide/15_File-Management/08_Glob.md",6933],"9dcd38ca":[()=>n.e(4108).then(n.t.bind(n,1215,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-multiprocessing-d90.json",1215],"9dd7c8b4":[()=>n.e(9020).then(n.bind(n,8502)),"@site/docs/python-guide/01_Python_Basics/27_Doc_Strings.md",8502],"9e4087bc":[()=>n.e(2711).then(n.bind(n,4750)),"@theme/BlogArchivePage",4750],"9f19cdfb":[()=>n.e(6421).then(n.bind(n,6828)),"@site/docs/python-guide/13_Multithreading/04_Semaphores.md",6828],"9f1ccea8":[()=>n.e(6505).then(n.bind(n,4497)),"@site/docs/data-analysis/08_NumPy/08_Creating_Arrays.md",4497],a08c090c:[()=>n.e(925).then(n.bind(n,8265)),"@site/docs/python-guide/08_Built_in_Functions/15_sorted()/README.md",8265],a0acb491:[()=>n.e(3728).then(n.bind(n,4603)),"@site/docs/python-guide/04_Errors/03_Else_Finally/README.md",4603],a18aec92:[()=>n.e(513).then(n.bind(n,2846)),"@site/docs/data-analysis/05_Combining_Datasets/05_inner_join.md",2846],a2ad7e19:[()=>n.e(179).then(n.bind(n,1199)),"@site/docs/python-guide/04_Errors/05_Unknown_Errors/README.md",1199],a352be79:[()=>n.e(861).then(n.bind(n,5259)),"@site/docs/python-guide/15_File-Management/01_File-Handling.md",5259],a3d57dda:[()=>n.e(566).then(n.bind(n,2389)),"@site/docs/python-guide/08_Built_in_Functions/18_zip()/README.md",2389],a432c62c:[()=>n.e(6869).then(n.bind(n,6400)),"@site/docs/tips-and-tricks/rip-gil.md",6400],a473d1ab:[()=>n.e(8466).then(n.bind(n,3403)),"@site/docs/rest-api/Designing-REST-API/05_designing_rest_api.md",3403],a4f0fafb:[()=>n.e(1517).then(n.bind(n,3413)),"@site/docs/python-guide/15_File-Management/05_JSON.md",3413],a55fb7e1:[()=>n.e(2567).then(n.bind(n,142)),"@site/docs/data-analysis/06_Time_Series/02_date_range().md",142],a574756a:[()=>n.e(2955).then(n.t.bind(n,2266,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-numpy-308.json",2266],a6aa9e1f:[()=>Promise.all([n.e(1869),n.e(9392),n.e(4622),n.e(7643)]).then(n.bind(n,5631)),"@theme/BlogListPage",5631],a7456010:[()=>n.e(1235).then(n.t.bind(n,8552,19)),"@generated/docusaurus-plugin-content-pages/default/__plugin.json",8552],a7bd4aaa:[()=>n.e(7098).then(n.bind(n,7419)),"@theme/DocVersionRoot",7419],a7d3ada0:[()=>n.e(1744).then(n.bind(n,7849)),"@site/docs/rest-api/CRUD.md",7849],a94703ab:[()=>Promise.all([n.e(1869),n.e(9048)]).then(n.bind(n,1841)),"@theme/DocRoot",1841],a9a6ff67:[()=>n.e(4125).then(n.bind(n,5551)),"@site/docs/python-guide/08_Built_in_Functions/17_exec()/README.md",5551],aa4345da:[()=>n.e(3406).then(n.bind(n,1347)),"@site/docs/data-analysis/06_Time_Series/04_Timedelta_TimedeltaIndex.md",1347],aa6ffcca:[()=>n.e(192).then(n.bind(n,3398)),"@site/docs/data-analysis/05_Combining_Datasets/02_concat().md",3398],ab448cd4:[()=>n.e(9709).then(n.t.bind(n,4585,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-enhancing-actions-eba.json",4585],ab47cacc:[()=>n.e(8455).then(n.t.bind(n,1147,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-asyncio-1ce.json",1147],ab8be871:[()=>n.e(5363).then(n.bind(n,7404)),"@site/docs/ci-cd/01_introduction/01_cicd/07_key_components.md",7404],aba21aa0:[()=>n.e(5742).then(n.t.bind(n,7093,19)),"@generated/docusaurus-plugin-content-docs/default/__plugin.json",7093],ac14fcce:[()=>n.e(7709).then(n.bind(n,7030)),"@site/docs/python-guide/01_Python_Basics/25_Global.md",7030],acecf23e:[()=>n.e(1903).then(n.t.bind(n,1912,19)),"~blog/default/blogMetadata-default.json",1912],af03e5ca:[()=>n.e(4323).then(n.bind(n,6914)),"@site/docs/python-guide/08_Built_in_Functions/08_all()/README.md",6914],af0efa6c:[()=>n.e(9721).then(n.bind(n,121)),"@site/docs/tips-and-tricks/seven-code-habbits.md",121],afd94412:[()=>n.e(3966).then(n.bind(n,1174)),"@site/docs/data-analysis/08_NumPy/15_Reshaping_Flattening.md",1174],b0685d08:[()=>n.e(5640).then(n.bind(n,152)),"@site/docs/data-analysis/06_Time_Series/10_resample.md",152],b3a4baaf:[()=>n.e(1151).then(n.bind(n,2994)),"@site/docs/tips-and-tricks/match-case.md",2994],b4a018b2:[()=>n.e(1321).then(n.bind(n,2041)),"@site/docs/ci-cd/01_introduction/01_cicd/06_practices.md",2041],b4a66da9:[()=>n.e(4208).then(n.t.bind(n,9149,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-unit-testing-702.json",9149],b4c39990:[()=>n.e(3014).then(n.bind(n,5032)),"@site/docs/gui-development/01_introduction/01_gui_development.md",5032],b56c59c7:[()=>n.e(3145).then(n.bind(n,901)),"@site/docs/python-guide/01_Python_Basics/21_Mad_Libs_Project.md",901],b56cf611:[()=>n.e(4471).then(n.bind(n,6757)),"@site/docs/python-guide/07_OOP/13_@staticmethod.md",6757],b5e55e9a:[()=>n.e(8126).then(n.bind(n,8116)),"@site/docs/python-guide/08_Built_in_Functions/13_filter()/README.md",8116],b618cf9c:[()=>n.e(6679).then(n.bind(n,8101)),"@site/docs/data-analysis/02_Data_Frames/05_set_index-reset_index.md",8101],b650f3af:[()=>n.e(8836).then(n.bind(n,8396)),"@site/docs/data-analysis/03_String_Operators/03_index-columns.md",8396],b666f56a:[()=>n.e(6971).then(n.bind(n,7743)),"@site/docs/tips-and-tricks/itemgetter.md",7743],b6ef7ae4:[()=>n.e(725).then(n.bind(n,8987)),"@site/docs/tips-and-tricks/decorators.md",8987],b7280f47:[()=>n.e(2201).then(n.bind(n,8793)),"@site/docs/python-guide/12_Multiprocessing/04_Pools-Starmap.md",8793],b77d8450:[()=>n.e(8500).then(n.bind(n,7226)),"@site/docs/python-guide/08_Built_in_Functions/05_slice()/README.md",7226],b7deb2ea:[()=>n.e(5005).then(n.bind(n,3036)),"@site/docs/python-guide/06_Lists/00_getting-started.md",3036],bb454858:[()=>n.e(1009).then(n.bind(n,7125)),"@site/docs/python-guide/01_Python_Basics/19_Dictionaries.md",7125],bc257119:[()=>n.e(1199).then(n.bind(n,5831)),"@site/docs/tips-and-tricks/20-tips-and-tricks.md",5831],bd241fa9:[()=>n.e(8068).then(n.t.bind(n,5044,19)),"@generated/docusaurus-plugin-content-blog/default/p/python-blog-c50.json",5044],bd999cea:[()=>n.e(1977).then(n.bind(n,3776)),"@site/docs/ci-cd/01_introduction/01_cicd/02_cicd.md",3776],bd9da85c:[()=>n.e(9445).then(n.bind(n,5469)),"@site/docs/data-analysis/07_Data-Visualization/03_Histograms.md",5469],be373491:[()=>n.e(3749).then(n.bind(n,1467)),"@site/docs/python-guide/01_Python_Basics/02_Comments.md",1467],be8d3379:[()=>n.e(7318).then(n.bind(n,2580)),"@site/docs/rest-api/Building-REST-API/08.md",2580],bf286b78:[()=>n.e(9856).then(n.bind(n,4516)),"@site/docs/design-patterns/01_creational/03_factory_method.md",4516],c0e9904c:[()=>n.e(5020).then(n.bind(n,9884)),"@site/docs/00_getting-started.md",9884],c13d5729:[()=>n.e(7425).then(n.bind(n,6337)),"@site/docs/python-guide/11_AsyncIO/01_Intro.md",6337],c1e6e7cd:[()=>n.e(7239).then(n.bind(n,2496)),"@site/docs/python-guide/08_Built_in_Functions/01_print()/README.md",2496],c3a6df41:[()=>n.e(5575).then(n.bind(n,3690)),"@site/docs/python-guide/08_Built_in_Functions/09_any()/README.md",3690],c4f5d8e4:[()=>Promise.all([n.e(1869),n.e(2634)]).then(n.bind(n,5)),"@site/src/pages/index.js",5],c5b485d2:[()=>n.e(8522).then(n.bind(n,8352)),"@site/docs/data-analysis/03_String_Operators/01_str.md",8352],c5c2dcde:[()=>n.e(462).then(n.bind(n,2755)),"@site/blog/2025-01-22-why.md?truncated=true",2755],c5fc0896:[()=>n.e(4195).then(n.bind(n,380)),"@site/docs/python-guide/11_AsyncIO/02_Getting_Started.md",380],c6132cfa:[()=>n.e(7622).then(n.bind(n,197)),"@site/docs/python-guide/08_Built_in_Functions/12_callable()/README.md",197],c66eba8b:[()=>n.e(6354).then(n.bind(n,1163)),"@site/docs/python-guide/12_Multiprocessing/09_Lock-Semaphores.md",1163],c6e8a128:[()=>n.e(2171).then(n.bind(n,2620)),"@site/docs/data-analysis/04_Reshaping_Datasets/01_introduction.md",2620],c8011c9d:[()=>n.e(7028).then(n.bind(n,7512)),"@site/docs/python-guide/04_Errors/06_Letters_Only/README.md",7512],c944b66c:[()=>n.e(7538).then(n.t.bind(n,4076,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-how-cicd-revolutionized-software-development-2ae.json",4076],c95127d5:[()=>n.e(153).then(n.bind(n,1084)),"@site/docs/tips-and-tricks/50-linux-commands.md",1084],c96fe195:[()=>n.e(2959).then(n.bind(n,1893)),"@site/docs/data-analysis/01_Series/09_accessing_elements_index.md",1893],ca3ad580:[()=>n.e(9702).then(n.bind(n,4311)),"@site/docs/python-guide/12_Multiprocessing/05_Pools-Multiple-Functions.md",4311],ccc49370:[()=>Promise.all([n.e(1869),n.e(9392),n.e(4622),n.e(8011)]).then(n.bind(n,7191)),"@theme/BlogPostPage",7191],cec50c49:[()=>n.e(1281).then(n.t.bind(n,7839,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-combining-datasets-784.json",7839],ceebdb4d:[()=>n.e(8252).then(n.bind(n,3384)),"@site/docs/python-guide/02_Control_Flow/03_For_Loop.md",3384],cf307268:[()=>n.e(5368).then(n.bind(n,2342)),"@site/docs/python-guide/15_File-Management/02_Reading-Files.md",2342],d04368bf:[()=>n.e(7894).then(n.bind(n,5672)),"@site/docs/data-analysis/06_Time_Series/07_Time_Series.md",5672],d0532420:[()=>n.e(9256).then(n.bind(n,2985)),"@site/docs/python-guide/07_OOP/06_Dunder_Methods.md",2985],d08a13c4:[()=>n.e(3743).then(n.bind(n,3890)),"@site/docs/rest-api/Designing-REST-API/07_designing_error_responses.md",3890],d27d873d:[()=>n.e(5014).then(n.bind(n,7939)),"@site/docs/python-guide/09_Dataclasses/01_@dataclass/README.md",7939],d5a770b9:[()=>n.e(7740).then(n.bind(n,7085)),"@site/docs/python-guide/08_Built_in_Functions/07_locals()/README.md",7085],d707847b:[()=>n.e(5940).then(n.bind(n,3946)),"@site/docs/tips-and-tricks/methodcaller.md",3946],d76f2668:[()=>n.e(9954).then(n.t.bind(n,8298,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-creational-design-patterns-fcf.json",8298],d91c278b:[()=>n.e(4549).then(n.bind(n,6975)),"@site/docs/design-patterns/01_creational/06_prototype.md",6975],d92ce060:[()=>n.e(8018).then(n.t.bind(n,1169,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-introduction-087.json",1169],d986f9a5:[()=>n.e(8497).then(n.bind(n,6451)),"@site/docs/python-guide/07_OOP/04_self.md",6451],dd2920d7:[()=>n.e(1449).then(n.bind(n,4269)),"@site/docs/python-guide/12_Multiprocessing/08_Queues.md",4269],dd2a7a4b:[()=>n.e(2462).then(n.bind(n,320)),"@site/docs/tips-and-tricks/5-worst-Features.md",320],dd3cd1de:[()=>n.e(8037).then(n.t.bind(n,3522,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-cicd-c46.json",3522],ddd5109d:[()=>n.e(4130).then(n.bind(n,4536)),"@site/docs/python-guide/01_Python_Basics/20_None.md",4536],de3f77b7:[()=>n.e(4122).then(n.bind(n,4900)),"@site/docs/python-guide/13_Multithreading/02_Locks.md",4900],dfd8392f:[()=>n.e(3421).then(n.bind(n,4026)),"@site/docs/data-analysis/05_Combining_Datasets/07_left_right_minus.md",4026],e0dc80b4:[()=>n.e(6001).then(n.t.bind(n,2604,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-string-operators-deb.json",2604],e182db80:[()=>n.e(6925).then(n.bind(n,1634)),"@site/docs/design-patterns/03_behavioral/01_behavioral.md",1634],e19a070d:[()=>n.e(2676).then(n.bind(n,8285)),"@site/docs/rest-api/00_getting-started.md",8285],e1deef93:[()=>n.e(9725).then(n.bind(n,6067)),"@site/docs/python-guide/07_OOP/08__eq__().md",6067],e2977010:[()=>n.e(5568).then(n.bind(n,3940)),"@site/docs/data-analysis/05_Combining_Datasets/01_Intro.md",3940],e3aefa38:[()=>n.e(991).then(n.bind(n,7884)),"@site/docs/data-analysis/02_Data_Frames/09_fillna.md",7884],e43813f1:[()=>n.e(4966).then(n.bind(n,6157)),"@site/docs/python-guide/07_OOP/09_Methods_Functions.md",6157],e4aa94b3:[()=>n.e(644).then(n.bind(n,6951)),"@site/docs/python-guide/07_OOP/16_Name_Mangling.md",6951],e5095d98:[()=>n.e(9876).then(n.bind(n,7079)),"@site/docs/data-analysis/04_Reshaping_Datasets/03_stack-unstack.md",7079],e535263e:[()=>n.e(6953).then(n.bind(n,513)),"@site/docs/python-guide/07_OOP/01_OOP.md",513],e56f6ccc:[()=>n.e(5946).then(n.bind(n,4009)),"@site/docs/rest-api/Designing-REST-API/01_interacting_with_rest.md",4009],e5bab151:[()=>n.e(3003).then(n.t.bind(n,5628,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-control-flow-f66.json",5628],e688c8d1:[()=>n.e(9326).then(n.bind(n,2189)),"@site/docs/python-guide/01_Python_Basics/11_Strings.md",2189],e716e54f:[()=>n.e(2526).then(n.bind(n,1427)),"@site/docs/data-analysis/01_Series/05_head-and-tail.md",1427],e72316f9:[()=>n.e(1160).then(n.bind(n,4959)),"@site/docs/data-analysis/06_Time_Series/01_Timestamp_DatetimeIndex.md",4959],e784a889:[()=>n.e(8009).then(n.bind(n,1018)),"@site/docs/tips-and-tricks/python-is-python3.md",1018],e7dc1672:[()=>n.e(3354).then(n.bind(n,6408)),"@site/docs/python-guide/05_Modules/06_Website_Status/README.md",6408],e91cae89:[()=>n.e(9822).then(n.t.bind(n,2180,19)),"@generated/docusaurus-plugin-content-docs/default/p/python-docs-category-modules-977.json",2180],e9abefc4:[()=>n.e(2784).then(n.bind(n,5010)),"@site/docs/design-patterns/01_creational/04_abstract_factory.md",5010],e9e27faf:[()=>n.e(2246).then(n.bind(n,6350)),"@site/docs/data-analysis/00_getting-started.md",6350],eb52afdc:[()=>n.e(3433).then(n.bind(n,4708)),"@site/docs/tips-and-tricks/dunder-methods.md",4708],ec17db3e:[()=>n.e(3781).then(n.bind(n,1758)),"@site/docs/python-guide/01_Python_Basics/09_Floats.md",1758],ec380046:[()=>n.e(1700).then(n.bind(n,2633)),"@site/docs/rest-api/Designing-REST-API/03_get_post.md",2633],ed0b4b51:[()=>n.e(7246).then(n.bind(n,1357)),"@site/docs/data-analysis/02_Data_Frames/07_adding-columns.md",1357],ee076e89:[()=>n.e(9716).then(n.bind(n,2311)),"@site/docs/data-analysis/08_NumPy/06_Add_New_Axis.md",2311],ee32e7ca:[()=>n.e(4958).then(n.bind(n,522)),"@site/docs/data-analysis/07_Data-Visualization/01_Line_Plots.md",522],ef6e47f0:[()=>n.e(4494).then(n.bind(n,2349)),"@site/docs/python-guide/01_Python_Basics/16_Tuples.md",2349],ef91d723:[()=>n.e(1146).then(n.bind(n,7051)),"@site/docs/python-guide/11_AsyncIO/04_Gather.md",7051],efd9c176:[()=>n.e(4176).then(n.bind(n,363)),"@site/docs/python-guide/01_Python_Basics/06_Type_Hints.md",363],f13b2968:[()=>n.e(8546).then(n.bind(n,1152)),"@site/docs/python-guide/06_Lists/01_List_Comprehensions.md",1152],f14c1d17:[()=>n.e(1660).then(n.bind(n,2615)),"@site/docs/python-guide/03_Functions/03_Parameters_and_Arguments.md",2615],f336a35c:[()=>n.e(8597).then(n.bind(n,6681)),"@site/docs/python-guide/11_AsyncIO/03_Tasks.md",6681],f51fa222:[()=>n.e(6400).then(n.bind(n,477)),"@site/docs/python-guide/08_Built_in_Functions/16_eval()/README.md",477],f552d686:[()=>n.e(3853).then(n.bind(n,5988)),"@site/docs/python-guide/03_Functions/04_Return_Functions.md",5988],f631f71f:[()=>n.e(5563).then(n.bind(n,2560)),"@site/docs/python-guide/06_Lists/04_Grocery_List.md",2560],f69e91c2:[()=>n.e(9088).then(n.bind(n,1579)),"@site/docs/python-guide/09_Dataclasses/02_Fields/README.md",1579],f6a804ea:[()=>n.e(7110).then(n.bind(n,1644)),"@site/docs/data-analysis/07_Data-Visualization/09_Color_by_Value.md",1644],f8aca2ea:[()=>n.e(5318).then(n.bind(n,1359)),"@site/docs/ci-cd/03_enhancing-actions/01.md",1359],f96f815e:[()=>n.e(5067).then(n.bind(n,2542)),"@site/docs/python-guide/14_Unit-Testing/06_TestingErrors.md",2542],f9c8ab04:[()=>n.e(5584).then(n.bind(n,4512)),"@site/docs/python-guide/01_Python_Basics/05_Data_Types.md",4512],f9e7c98a:[()=>n.e(6633).then(n.bind(n,3147)),"@site/docs/python-guide/07_OOP/12_super().md",3147],fa44d2a0:[()=>n.e(9369).then(n.bind(n,3246)),"@site/docs/data-analysis/05_Combining_Datasets/03_merge().md",3246],fd743662:[()=>n.e(463).then(n.bind(n,2205)),"@site/docs/python-guide/10_Advanced/01_Mypy/README.md",2205],ff59fe86:[()=>n.e(1540).then(n.t.bind(n,7405,19)),"@generated/docusaurus-plugin-content-blog/default/p/python-blog-tags-docusaurus-b39.json",7405]};var s=n(4848);function c(e){let{error:t,retry:n,pastDelay:a}=e;return t?(0,s.jsxs)("div",{style:{textAlign:"center",color:"#fff",backgroundColor:"#fa383e",borderColor:"#fa383e",borderStyle:"solid",borderRadius:"0.25rem",borderWidth:"1px",boxSizing:"border-box",display:"block",padding:"1rem",flex:"0 0 50%",marginLeft:"25%",marginRight:"25%",marginTop:"5rem",maxWidth:"50%",width:"100%"},children:[(0,s.jsx)("p",{children:String(t)}),(0,s.jsx)("div",{children:(0,s.jsx)("button",{type:"button",onClick:n,children:"Retry"})})]}):a?(0,s.jsx)("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:(0,s.jsx)("svg",{id:"loader",style:{width:128,height:110,position:"absolute",top:"calc(100vh - 64%)"},viewBox:"0 0 45 45",xmlns:"http://www.w3.org/2000/svg",stroke:"#61dafb",children:(0,s.jsxs)("g",{fill:"none",fillRule:"evenodd",transform:"translate(1 1)",strokeWidth:"2",children:[(0,s.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,s.jsx)("animate",{attributeName:"r",begin:"1.5s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-opacity",begin:"1.5s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-width",begin:"1.5s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,s.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,s.jsx)("animate",{attributeName:"r",begin:"3s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-opacity",begin:"3s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-width",begin:"3s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,s.jsx)("circle",{cx:"22",cy:"22",r:"8",children:(0,s.jsx)("animate",{attributeName:"r",begin:"0s",dur:"1.5s",values:"6;1;2;3;4;5;6",calcMode:"linear",repeatCount:"indefinite"})})]})})}):null}var l=n(3722),d=n(5313);function u(e,t){if("*"===e)return o()({loading:c,loader:()=>n.e(3042).then(n.bind(n,3042)),modules:["@theme/NotFound"],webpack:()=>[3042],render(e,t){const n=e.default;return(0,s.jsx)(d.W,{value:{plugin:{name:"native",id:"default"}},children:(0,s.jsx)(n,{...t})})}});const a=i[`${e}-${t}`],u={},p=[],h=[],y=(0,l.A)(a);return Object.entries(y).forEach((e=>{let[t,n]=e;const a=r[n];a&&(u[t]=a[0],p.push(a[1]),h.push(a[2]))})),o().Map({loading:c,loader:u,modules:p,webpack:()=>h,render(t,n){const o=JSON.parse(JSON.stringify(a));Object.entries(t).forEach((t=>{let[n,a]=t;const i=a.default;if(!i)throw new Error(`The page component at ${e} doesn't have a default export. This makes it impossible to render anything. Consider default-exporting a React component.`);"object"!=typeof i&&"function"!=typeof i||Object.keys(a).filter((e=>"default"!==e)).forEach((e=>{i[e]=a[e]}));let r=o;const s=n.split(".");s.slice(0,-1).forEach((e=>{r=r[e]})),r[s[s.length-1]]=i}));const i=o.__comp;delete o.__comp;const r=o.__context;delete o.__context;const c=o.__props;return delete o.__props,(0,s.jsx)(d.W,{value:r,children:(0,s.jsx)(i,{...o,...c,...n})})}})}const p=[{path:"/Python/blog",component:u("/Python/blog","3c2"),exact:!0},{path:"/Python/blog/archive",component:u("/Python/blog/archive","9d7"),exact:!0},{path:"/Python/blog/authors",component:u("/Python/blog/authors","2ee"),exact:!0},{path:"/Python/blog/authors/ccatik",component:u("/Python/blog/authors/ccatik","f40"),exact:!0},{path:"/Python/blog/importance-of-software-architecture",component:u("/Python/blog/importance-of-software-architecture","6d5"),exact:!0},{path:"/Python/blog/tags",component:u("/Python/blog/tags","585"),exact:!0},{path:"/Python/blog/tags/docusaurus",component:u("/Python/blog/tags/docusaurus","2c0"),exact:!0},{path:"/Python/blog/tags/hello",component:u("/Python/blog/tags/hello","f2f"),exact:!0},{path:"/Python/blog/why-python-guide-over-gpt",component:u("/Python/blog/why-python-guide-over-gpt","e44"),exact:!0},{path:"/Python/markdown-page",component:u("/Python/markdown-page","301"),exact:!0},{path:"/Python/docs",component:u("/Python/docs","aba"),routes:[{path:"/Python/docs",component:u("/Python/docs","c01"),routes:[{path:"/Python/docs",component:u("/Python/docs","d9a"),routes:[{path:"/Python/docs/category/advanced",component:u("/Python/docs/category/advanced","4cc"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/asyncio",component:u("/Python/docs/category/asyncio","95b"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/behavioral-design-patterns",component:u("/Python/docs/category/behavioral-design-patterns","9f0"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/category/building-rest-apis",component:u("/Python/docs/category/building-rest-apis","854"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/category/built-in-functions",component:u("/Python/docs/category/built-in-functions","430"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/cicd",component:u("/Python/docs/category/cicd","2e6"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/category/combining-datasets",component:u("/Python/docs/category/combining-datasets","cb4"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/category/control-flow",component:u("/Python/docs/category/control-flow","7c9"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/creational-design-patterns",component:u("/Python/docs/category/creational-design-patterns","6d2"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/category/data-frames",component:u("/Python/docs/category/data-frames","953"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/category/data-visualization",component:u("/Python/docs/category/data-visualization","69a"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/category/dataclasses",component:u("/Python/docs/category/dataclasses","a3b"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/designing-rest-apis",component:u("/Python/docs/category/designing-rest-apis","b50"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/category/enhancing-actions",component:u("/Python/docs/category/enhancing-actions","21d"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/category/errors",component:u("/Python/docs/category/errors","93d"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/fastapi-actions",component:u("/Python/docs/category/fastapi-actions","37e"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/category/file-management",component:u("/Python/docs/category/file-management","c3f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/functions",component:u("/Python/docs/category/functions","483"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/how-cicd-revolutionized-software-development",component:u("/Python/docs/category/how-cicd-revolutionized-software-development","a79"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/category/introduction",component:u("/Python/docs/category/introduction","23e"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/category/lists",component:u("/Python/docs/category/lists","e60"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/modules",component:u("/Python/docs/category/modules","89b"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/multi-threading",component:u("/Python/docs/category/multi-threading","223"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/multiprocessing",component:u("/Python/docs/category/multiprocessing","552"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/numpy",component:u("/Python/docs/category/numpy","4f6"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/category/oop",component:u("/Python/docs/category/oop","538"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/python-basics",component:u("/Python/docs/category/python-basics","dec"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/category/reshaping-datasets",component:u("/Python/docs/category/reshaping-datasets","df4"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/category/series",component:u("/Python/docs/category/series","021"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/category/setting-up",component:u("/Python/docs/category/setting-up","767"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/category/string-operators",component:u("/Python/docs/category/string-operators","656"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/category/structural-design-patterns",component:u("/Python/docs/category/structural-design-patterns","198"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/category/time-series",component:u("/Python/docs/category/time-series","818"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/category/unit-testing",component:u("/Python/docs/category/unit-testing","d53"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/ci-cd/enhancing-actions/01",component:u("/Python/docs/ci-cd/enhancing-actions/01","4a1"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/fastapi-actions/01",component:u("/Python/docs/ci-cd/fastapi-actions/01","e94"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/getting-started",component:u("/Python/docs/ci-cd/getting-started","256"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/cicd/cd",component:u("/Python/docs/ci-cd/introduction/cicd/cd","92b"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/cicd/cdp",component:u("/Python/docs/ci-cd/introduction/cicd/cdp","99a"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/cicd/ci",component:u("/Python/docs/ci-cd/introduction/cicd/ci","f75"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/cicd/cicd",component:u("/Python/docs/ci-cd/introduction/cicd/cicd","7e2"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/cicd/introduction-github-actions",component:u("/Python/docs/ci-cd/introduction/cicd/introduction-github-actions","47d"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/cicd/key_components",component:u("/Python/docs/ci-cd/introduction/cicd/key_components","a08"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/cicd/practices",component:u("/Python/docs/ci-cd/introduction/cicd/practices","ab3"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/revolution_ci_cd/cdp",component:u("/Python/docs/ci-cd/introduction/revolution_ci_cd/cdp","4fa"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/introduction/revolution_ci_cd/ci",component:u("/Python/docs/ci-cd/introduction/revolution_ci_cd/ci","95b"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/ci-cd/setting-up/01",component:u("/Python/docs/ci-cd/setting-up/01","2ca"),exact:!0,sidebar:"cicdSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/concat()",component:u("/Python/docs/data-analysis/Combining_Datasets/concat()","cd9"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/inner_join",component:u("/Python/docs/data-analysis/Combining_Datasets/inner_join","8f7"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/Intro",component:u("/Python/docs/data-analysis/Combining_Datasets/Intro","f6e"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/left_right_join",component:u("/Python/docs/data-analysis/Combining_Datasets/left_right_join","8dd"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/left_right_minus",component:u("/Python/docs/data-analysis/Combining_Datasets/left_right_minus","03c"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/merge()",component:u("/Python/docs/data-analysis/Combining_Datasets/merge()","322"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/Merging_Different_Column",component:u("/Python/docs/data-analysis/Combining_Datasets/Merging_Different_Column","42d"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/outer_join",component:u("/Python/docs/data-analysis/Combining_Datasets/outer_join","f6f"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Combining_Datasets/outer_join_minus",component:u("/Python/docs/data-analysis/Combining_Datasets/outer_join_minus","ceb"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/adding-columns",component:u("/Python/docs/data-analysis/Data_Frames/adding-columns","34b"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/descripe-info",component:u("/Python/docs/data-analysis/Data_Frames/descripe-info","4a7"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/dropna",component:u("/Python/docs/data-analysis/Data_Frames/dropna","1c1"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/fillna",component:u("/Python/docs/data-analysis/Data_Frames/fillna","950"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/intro",component:u("/Python/docs/data-analysis/Data_Frames/intro","009"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/methods",component:u("/Python/docs/data-analysis/Data_Frames/methods","563"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/nlargest-nsmallest",component:u("/Python/docs/data-analysis/Data_Frames/nlargest-nsmallest","b58"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/removing-columns-rows",component:u("/Python/docs/data-analysis/Data_Frames/removing-columns-rows","372"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data_Frames/set_index-reset_index",component:u("/Python/docs/data-analysis/Data_Frames/set_index-reset_index","147"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Bar_Chart_Race",component:u("/Python/docs/data-analysis/Data-Visualization/Bar_Chart_Race","c9e"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Bar_Plots",component:u("/Python/docs/data-analysis/Data-Visualization/Bar_Plots","6ce"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Candlestick_Charts",component:u("/Python/docs/data-analysis/Data-Visualization/Candlestick_Charts","c09"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Color_by_Value",component:u("/Python/docs/data-analysis/Data-Visualization/Color_by_Value","f93"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Histograms",component:u("/Python/docs/data-analysis/Data-Visualization/Histograms","dd8"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Interactive_Plots",component:u("/Python/docs/data-analysis/Data-Visualization/Interactive_Plots","df7"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Line_Plots",component:u("/Python/docs/data-analysis/Data-Visualization/Line_Plots","41d"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Pie_Charts",component:u("/Python/docs/data-analysis/Data-Visualization/Pie_Charts","a2b"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Scatter",component:u("/Python/docs/data-analysis/Data-Visualization/Scatter","75c"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Data-Visualization/Styles",component:u("/Python/docs/data-analysis/Data-Visualization/Styles","732"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/getting-started",component:u("/Python/docs/data-analysis/getting-started","2e1"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Add_New_Axis",component:u("/Python/docs/data-analysis/NumPy/Add_New_Axis","481"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Arrays",component:u("/Python/docs/data-analysis/NumPy/Arrays","561"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Basic_Operations",component:u("/Python/docs/data-analysis/NumPy/Basic_Operations","37f"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Broadcasting",component:u("/Python/docs/data-analysis/NumPy/Broadcasting","6df"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Creating_Arrays",component:u("/Python/docs/data-analysis/NumPy/Creating_Arrays","de9"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Finding_Unique_Elements",component:u("/Python/docs/data-analysis/NumPy/Finding_Unique_Elements","35f"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Generating_Random_Numbers",component:u("/Python/docs/data-analysis/NumPy/Generating_Random_Numbers","e15"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Indexing_Slicing",component:u("/Python/docs/data-analysis/NumPy/Indexing_Slicing","8ff"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Lists_vs_NumPy",component:u("/Python/docs/data-analysis/NumPy/Lists_vs_NumPy","f84"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Matrices",component:u("/Python/docs/data-analysis/NumPy/Matrices","c16"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Reshaping",component:u("/Python/docs/data-analysis/NumPy/Reshaping","56a"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Reshaping_Flattening",component:u("/Python/docs/data-analysis/NumPy/Reshaping_Flattening","98f"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Reversing_Arrays",component:u("/Python/docs/data-analysis/NumPy/Reversing_Arrays","c84"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Saving_Loading_Arrays",component:u("/Python/docs/data-analysis/NumPy/Saving_Loading_Arrays","a66"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Shape_and_Size",component:u("/Python/docs/data-analysis/NumPy/Shape_and_Size","231"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/NumPy/Sorting_Concatenating",component:u("/Python/docs/data-analysis/NumPy/Sorting_Concatenating","851"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Reshaping_Datasets/groupby",component:u("/Python/docs/data-analysis/Reshaping_Datasets/groupby","be2"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Reshaping_Datasets/introduction",component:u("/Python/docs/data-analysis/Reshaping_Datasets/introduction","483"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Reshaping_Datasets/melt",component:u("/Python/docs/data-analysis/Reshaping_Datasets/melt","c0d"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Reshaping_Datasets/pivot",component:u("/Python/docs/data-analysis/Reshaping_Datasets/pivot","7de"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Reshaping_Datasets/pivot-table",component:u("/Python/docs/data-analysis/Reshaping_Datasets/pivot-table","9e8"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Reshaping_Datasets/stack-unstack",component:u("/Python/docs/data-analysis/Reshaping_Datasets/stack-unstack","668"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Reshaping_Datasets/transpose",component:u("/Python/docs/data-analysis/Reshaping_Datasets/transpose","970"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/accessing_elements_index",component:u("/Python/docs/data-analysis/Series/accessing_elements_index","b1d"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/accessing_elements_position",component:u("/Python/docs/data-analysis/Series/accessing_elements_position","2bc"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/attributes",component:u("/Python/docs/data-analysis/Series/attributes","0cd"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/counting_values",component:u("/Python/docs/data-analysis/Series/counting_values","6c7"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/handling_csv_files",component:u("/Python/docs/data-analysis/Series/handling_csv_files","a01"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/head-and-tail",component:u("/Python/docs/data-analysis/Series/head-and-tail","7bd"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/intro",component:u("/Python/docs/data-analysis/Series/intro","8c8"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/methods",component:u("/Python/docs/data-analysis/Series/methods","c8a"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Series/sorting_values",component:u("/Python/docs/data-analysis/Series/sorting_values","647"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/String_Operators/index-columns",component:u("/Python/docs/data-analysis/String_Operators/index-columns","08d"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/String_Operators/startswith-endswith",component:u("/Python/docs/data-analysis/String_Operators/startswith-endswith","fc3"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/String_Operators/str",component:u("/Python/docs/data-analysis/String_Operators/str","409"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/Accessing_Time_Attributes",component:u("/Python/docs/data-analysis/Time_Series/Accessing_Time_Attributes","824"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/date_range()",component:u("/Python/docs/data-analysis/Time_Series/date_range()","2d7"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/loc_iloc_DatetimeIndex",component:u("/Python/docs/data-analysis/Time_Series/loc_iloc_DatetimeIndex","7a1"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/Period_PeriodIndex",component:u("/Python/docs/data-analysis/Time_Series/Period_PeriodIndex","9de"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/Project",component:u("/Python/docs/data-analysis/Time_Series/Project","4a3"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/reindex",component:u("/Python/docs/data-analysis/Time_Series/reindex","11c"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/resample",component:u("/Python/docs/data-analysis/Time_Series/resample","d4d"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/Time_Series",component:u("/Python/docs/data-analysis/Time_Series/Time_Series","24f"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/Timedelta_TimedeltaIndex",component:u("/Python/docs/data-analysis/Time_Series/Timedelta_TimedeltaIndex","51b"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/Timestamp_DatetimeIndex",component:u("/Python/docs/data-analysis/Time_Series/Timestamp_DatetimeIndex","901"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/data-analysis/Time_Series/Timestap_Methods_Attributes",component:u("/Python/docs/data-analysis/Time_Series/Timestap_Methods_Attributes","3ce"),exact:!0,sidebar:"dataAnalysisSidebar"},{path:"/Python/docs/design-patterns/behavioral/behavioral",component:u("/Python/docs/design-patterns/behavioral/behavioral","6cb"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/design-patterns/creational/",component:u("/Python/docs/design-patterns/creational/","220"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/design-patterns/creational/abstract_factory",component:u("/Python/docs/design-patterns/creational/abstract_factory","088"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/design-patterns/creational/builder",component:u("/Python/docs/design-patterns/creational/builder","526"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/design-patterns/creational/factory_method",component:u("/Python/docs/design-patterns/creational/factory_method","92e"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/design-patterns/creational/prototype",component:u("/Python/docs/design-patterns/creational/prototype","148"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/design-patterns/creational/singleton",component:u("/Python/docs/design-patterns/creational/singleton","491"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/design-patterns/getting-started",component:u("/Python/docs/design-patterns/getting-started","113"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/design-patterns/structural/structural",component:u("/Python/docs/design-patterns/structural/structural","5e8"),exact:!0,sidebar:"designPatternsSidebar"},{path:"/Python/docs/getting-started",component:u("/Python/docs/getting-started","e05"),exact:!0},{path:"/Python/docs/gui-development/getting-started",component:u("/Python/docs/gui-development/getting-started","3dd"),exact:!0,sidebar:"guiSidebar"},{path:"/Python/docs/gui-development/introduction/gui_development",component:u("/Python/docs/gui-development/introduction/gui_development","ac2"),exact:!0,sidebar:"guiSidebar"},{path:"/Python/docs/gui-development/introduction/gui_frameworks",component:u("/Python/docs/gui-development/introduction/gui_frameworks","80f"),exact:!0,sidebar:"guiSidebar"},{path:"/Python/docs/gui-development/introduction/right_framework",component:u("/Python/docs/gui-development/introduction/right_framework","6f7"),exact:!0,sidebar:"guiSidebar"},{path:"/Python/docs/gui-development/introduction/setting-up",component:u("/Python/docs/gui-development/introduction/setting-up","5be"),exact:!0,sidebar:"guiSidebar"},{path:"/Python/docs/python-guide/Advanced/Generators/",component:u("/Python/docs/python-guide/Advanced/Generators/","566"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Advanced/Lambda_Functions/",component:u("/Python/docs/python-guide/Advanced/Lambda_Functions/","797"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Advanced/Mypy/",component:u("/Python/docs/python-guide/Advanced/Mypy/","d01"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Advanced/Walrus_Operator/",component:u("/Python/docs/python-guide/Advanced/Walrus_Operator/","924"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/AsyncIO/Gather",component:u("/Python/docs/python-guide/AsyncIO/Gather","303"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/AsyncIO/Getting_Started",component:u("/Python/docs/python-guide/AsyncIO/Getting_Started","d23"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/AsyncIO/Intro",component:u("/Python/docs/python-guide/AsyncIO/Intro","15f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/AsyncIO/Tasks",component:u("/Python/docs/python-guide/AsyncIO/Tasks","70c"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/AsyncIO/Website_Status",component:u("/Python/docs/python-guide/AsyncIO/Website_Status","5b8"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/all()/",component:u("/Python/docs/python-guide/Built_in_Functions/all()/","7df"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/any()/",component:u("/Python/docs/python-guide/Built_in_Functions/any()/","20c"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/callable()/",component:u("/Python/docs/python-guide/Built_in_Functions/callable()/","b3f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/dunder_methods/",component:u("/Python/docs/python-guide/Built_in_Functions/dunder_methods/","d62"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/enumerate()/",component:u("/Python/docs/python-guide/Built_in_Functions/enumerate()/","19a"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/eval()/",component:u("/Python/docs/python-guide/Built_in_Functions/eval()/","dfb"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/exec()/",component:u("/Python/docs/python-guide/Built_in_Functions/exec()/","3ef"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/filter()/",component:u("/Python/docs/python-guide/Built_in_Functions/filter()/","31d"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/globals()/",component:u("/Python/docs/python-guide/Built_in_Functions/globals()/","6dd"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/Improved_Chat_Bot/",component:u("/Python/docs/python-guide/Built_in_Functions/Improved_Chat_Bot/","009"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/isinstance()/",component:u("/Python/docs/python-guide/Built_in_Functions/isinstance()/","796"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/locals()/",component:u("/Python/docs/python-guide/Built_in_Functions/locals()/","b03"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/map()/",component:u("/Python/docs/python-guide/Built_in_Functions/map()/","88a"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/print()/",component:u("/Python/docs/python-guide/Built_in_Functions/print()/","54d"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/range()/",component:u("/Python/docs/python-guide/Built_in_Functions/range()/","edc"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/round()/",component:u("/Python/docs/python-guide/Built_in_Functions/round()/","f70"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/slice()/",component:u("/Python/docs/python-guide/Built_in_Functions/slice()/","ae4"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/sorted()/",component:u("/Python/docs/python-guide/Built_in_Functions/sorted()/","8c0"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Built_in_Functions/zip()/",component:u("/Python/docs/python-guide/Built_in_Functions/zip()/","d46"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Control_Flow/Break_and_Continue",component:u("/Python/docs/python-guide/Control_Flow/Break_and_Continue","286"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Control_Flow/For_Loop",component:u("/Python/docs/python-guide/Control_Flow/For_Loop","7a4"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Control_Flow/If_Elif_Else",component:u("/Python/docs/python-guide/Control_Flow/If_Elif_Else","3c6"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Control_Flow/If_Else_Shorthand",component:u("/Python/docs/python-guide/Control_Flow/If_Else_Shorthand","ae8"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Control_Flow/Loop-Else",component:u("/Python/docs/python-guide/Control_Flow/Loop-Else","0c1"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Control_Flow/Rock_Paper_Scissors",component:u("/Python/docs/python-guide/Control_Flow/Rock_Paper_Scissors","074"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Control_Flow/While_Loop",component:u("/Python/docs/python-guide/Control_Flow/While_Loop","d6c"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Dataclasses/@dataclass/",component:u("/Python/docs/python-guide/Dataclasses/@dataclass/","3f3"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Dataclasses/@property/",component:u("/Python/docs/python-guide/Dataclasses/@property/","4eb"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Dataclasses/Fields/",component:u("/Python/docs/python-guide/Dataclasses/Fields/","e90"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Dataclasses/InitVar/",component:u("/Python/docs/python-guide/Dataclasses/InitVar/","5e3"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Dataclasses/Notes_App/",component:u("/Python/docs/python-guide/Dataclasses/Notes_App/","509"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Dataclasses/post_init/",component:u("/Python/docs/python-guide/Dataclasses/post_init/","050"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Errors/Else_Finally/",component:u("/Python/docs/python-guide/Errors/Else_Finally/","d90"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Errors/Letters_Only/",component:u("/Python/docs/python-guide/Errors/Letters_Only/","0b8"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Errors/Raise/",component:u("/Python/docs/python-guide/Errors/Raise/","3e6"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Errors/Try_Except/",component:u("/Python/docs/python-guide/Errors/Try_Except/","958"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Errors/Unknown_Errors/",component:u("/Python/docs/python-guide/Errors/Unknown_Errors/","3d6"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Errors/User_Input/",component:u("/Python/docs/python-guide/Errors/User_Input/","c1d"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/Caching-JSON",component:u("/Python/docs/python-guide/File-Management/Caching-JSON","7b0"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/Deleting_Files",component:u("/Python/docs/python-guide/File-Management/Deleting_Files","9f7"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/File-Handling",component:u("/Python/docs/python-guide/File-Management/File-Handling","5fa"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/Glob",component:u("/Python/docs/python-guide/File-Management/Glob","480"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/Handling-JSON",component:u("/Python/docs/python-guide/File-Management/Handling-JSON","ba3"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/JSON",component:u("/Python/docs/python-guide/File-Management/JSON","3b7"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/Pickling",component:u("/Python/docs/python-guide/File-Management/Pickling","96a"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/Reading-Files",component:u("/Python/docs/python-guide/File-Management/Reading-Files","35f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/toml",component:u("/Python/docs/python-guide/File-Management/toml","c66"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/Writing-Creating-Files",component:u("/Python/docs/python-guide/File-Management/Writing-Creating-Files","ddd"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/File-Management/yaml",component:u("/Python/docs/python-guide/File-Management/yaml","c0f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Functions/Args_and_Kwargs",component:u("/Python/docs/python-guide/Functions/Args_and_Kwargs","5df"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Functions/Creating_a_Function",component:u("/Python/docs/python-guide/Functions/Creating_a_Function","91b"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Functions/Parameters_and_Arguments",component:u("/Python/docs/python-guide/Functions/Parameters_and_Arguments","9ea"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Functions/Pass",component:u("/Python/docs/python-guide/Functions/Pass","849"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Functions/Recursion",component:u("/Python/docs/python-guide/Functions/Recursion","faa"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Functions/Return_Functions",component:u("/Python/docs/python-guide/Functions/Return_Functions","589"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Functions/Star_and_Slash",component:u("/Python/docs/python-guide/Functions/Star_and_Slash","591"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/getting-started",component:u("/Python/docs/python-guide/getting-started","50c"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Lists/Dont_Loop_Modify",component:u("/Python/docs/python-guide/Lists/Dont_Loop_Modify","cfd"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Lists/getting-started",component:u("/Python/docs/python-guide/Lists/getting-started","9db"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Lists/Grocery_List",component:u("/Python/docs/python-guide/Lists/Grocery_List","ddd"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Lists/List_Comprehensions",component:u("/Python/docs/python-guide/Lists/List_Comprehensions","398"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Lists/Slicing",component:u("/Python/docs/python-guide/Lists/Slicing","192"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Modules/if_name_main/",component:u("/Python/docs/python-guide/Modules/if_name_main/","65c"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Modules/Importing/",component:u("/Python/docs/python-guide/Modules/Importing/","18c"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Modules/Libraries/",component:u("/Python/docs/python-guide/Modules/Libraries/","e4f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Modules/Modules/",component:u("/Python/docs/python-guide/Modules/Modules/","c97"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Modules/Packages/code/",component:u("/Python/docs/python-guide/Modules/Packages/code/","7d0"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Modules/Website_Status/",component:u("/Python/docs/python-guide/Modules/Website_Status/","c1f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Data-Sharing-Issue",component:u("/Python/docs/python-guide/Multiprocessing/Data-Sharing-Issue","6ef"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Intro",component:u("/Python/docs/python-guide/Multiprocessing/Intro","56c"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Lock-Semaphores",component:u("/Python/docs/python-guide/Multiprocessing/Lock-Semaphores","d15"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Pipes",component:u("/Python/docs/python-guide/Multiprocessing/Pipes","dc8"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Pools-Map",component:u("/Python/docs/python-guide/Multiprocessing/Pools-Map","4bc"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Pools-Multiple-Functions",component:u("/Python/docs/python-guide/Multiprocessing/Pools-Multiple-Functions","3ab"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Pools-Starmap",component:u("/Python/docs/python-guide/Multiprocessing/Pools-Starmap","682"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Processes",component:u("/Python/docs/python-guide/Multiprocessing/Processes","5fe"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multiprocessing/Queues",component:u("/Python/docs/python-guide/Multiprocessing/Queues","85f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multithreading/Daemon-Threads",component:u("/Python/docs/python-guide/Multithreading/Daemon-Threads","fb5"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multithreading/Locks",component:u("/Python/docs/python-guide/Multithreading/Locks","d00"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multithreading/Race-Conditions",component:u("/Python/docs/python-guide/Multithreading/Race-Conditions","235"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multithreading/Semaphores",component:u("/Python/docs/python-guide/Multithreading/Semaphores","dae"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multithreading/Threads",component:u("/Python/docs/python-guide/Multithreading/Threads","96b"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Multithreading/With-Lock-Semaphore",component:u("/Python/docs/python-guide/Multithreading/With-Lock-Semaphore","686"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/@abstractmethod",component:u("/Python/docs/python-guide/OOP/@abstractmethod","72f"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/@classmethod",component:u("/Python/docs/python-guide/OOP/@classmethod","d45"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/@staticmethod",component:u("/Python/docs/python-guide/OOP/@staticmethod","171"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/Attributes_Class_and_Instance",component:u("/Python/docs/python-guide/OOP/Attributes_Class_and_Instance","ad2"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/Classes_and_Objects",component:u("/Python/docs/python-guide/OOP/Classes_and_Objects","115"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/Dunder_Methods",component:u("/Python/docs/python-guide/OOP/Dunder_Methods","e50"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/eq__()",component:u("/Python/docs/python-guide/OOP/eq__()","62e"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/Inheritance",component:u("/Python/docs/python-guide/OOP/Inheritance","acb"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/init",component:u("/Python/docs/python-guide/OOP/init","6a3"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/Methods_Functions",component:u("/Python/docs/python-guide/OOP/Methods_Functions","e12"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/Name_Mangling",component:u("/Python/docs/python-guide/OOP/Name_Mangling","8f3"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/OOP",component:u("/Python/docs/python-guide/OOP/OOP","f96"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/self",component:u("/Python/docs/python-guide/OOP/self","10d"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/str()_repr()",component:u("/Python/docs/python-guide/OOP/str()_repr()","a07"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/OOP/super()",component:u("/Python/docs/python-guide/OOP/super()","e8a"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Assertions",component:u("/Python/docs/python-guide/Python_Basics/Assertions","204"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Booleans",component:u("/Python/docs/python-guide/Python_Basics/Booleans","87c"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Comments",component:u("/Python/docs/python-guide/Python_Basics/Comments","fd2"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Comparing_Floats",component:u("/Python/docs/python-guide/Python_Basics/Comparing_Floats","4b0"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Constants",component:u("/Python/docs/python-guide/Python_Basics/Constants","bdb"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Data_Types",component:u("/Python/docs/python-guide/Python_Basics/Data_Types","fba"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Dictionaries",component:u("/Python/docs/python-guide/Python_Basics/Dictionaries","671"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Doc_Strings",component:u("/Python/docs/python-guide/Python_Basics/Doc_Strings","1ac"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/F-Strings",component:u("/Python/docs/python-guide/Python_Basics/F-Strings","10b"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Floats",component:u("/Python/docs/python-guide/Python_Basics/Floats","c39"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Frozensets",component:u("/Python/docs/python-guide/Python_Basics/Frozensets","8cd"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Global",component:u("/Python/docs/python-guide/Python_Basics/Global","041"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Integers",component:u("/Python/docs/python-guide/Python_Basics/Integers","852"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Lists",component:u("/Python/docs/python-guide/Python_Basics/Lists","f40"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Mad_Libs_Project",component:u("/Python/docs/python-guide/Python_Basics/Mad_Libs_Project","e43"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/None",component:u("/Python/docs/python-guide/Python_Basics/None","52e"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Nonlocal",component:u("/Python/docs/python-guide/Python_Basics/Nonlocal","729"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Operators",component:u("/Python/docs/python-guide/Python_Basics/Operators","084"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Scopes",component:u("/Python/docs/python-guide/Python_Basics/Scopes","162"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Sets",component:u("/Python/docs/python-guide/Python_Basics/Sets","dd3"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Shortcut_Format",component:u("/Python/docs/python-guide/Python_Basics/Shortcut_Format","be7"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Simple_Adder_Project",component:u("/Python/docs/python-guide/Python_Basics/Simple_Adder_Project","9f6"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Strings",component:u("/Python/docs/python-guide/Python_Basics/Strings","a0b"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Syntax",component:u("/Python/docs/python-guide/Python_Basics/Syntax","487"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Truthy_and_Falsy",component:u("/Python/docs/python-guide/Python_Basics/Truthy_and_Falsy","b1b"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Tuples",component:u("/Python/docs/python-guide/Python_Basics/Tuples","713"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Type_Conversion",component:u("/Python/docs/python-guide/Python_Basics/Type_Conversion","fae"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Type_Hints",component:u("/Python/docs/python-guide/Python_Basics/Type_Hints","f11"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Unpacking",component:u("/Python/docs/python-guide/Python_Basics/Unpacking","5c2"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/Variables",component:u("/Python/docs/python-guide/Python_Basics/Variables","285"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Python_Basics/VS_Is",component:u("/Python/docs/python-guide/Python_Basics/VS_Is","198"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Unit-Testing/Conftest",component:u("/Python/docs/python-guide/Unit-Testing/Conftest","279"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Unit-Testing/Fixtures",component:u("/Python/docs/python-guide/Unit-Testing/Fixtures","9dd"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Unit-Testing/Intro",component:u("/Python/docs/python-guide/Unit-Testing/Intro","de9"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Unit-Testing/Marks",component:u("/Python/docs/python-guide/Unit-Testing/Marks","853"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Unit-Testing/Parametrize",component:u("/Python/docs/python-guide/Unit-Testing/Parametrize","489"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/python-guide/Unit-Testing/TestingErrors",component:u("/Python/docs/python-guide/Unit-Testing/TestingErrors","dc6"),exact:!0,sidebar:"guideSidebar"},{path:"/Python/docs/rest-api/Building-REST-API/08",component:u("/Python/docs/rest-api/Building-REST-API/08","e61"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Building-REST-API/adding_urls",component:u("/Python/docs/rest-api/Building-REST-API/adding_urls","7b8"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Building-REST-API/building_rest_api",component:u("/Python/docs/rest-api/Building-REST-API/building_rest_api","8f6"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Building-REST-API/django_rest",component:u("/Python/docs/rest-api/Building-REST-API/django_rest","533"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Building-REST-API/expanding_using_flask",component:u("/Python/docs/rest-api/Building-REST-API/expanding_using_flask","9a5"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Building-REST-API/fastapi",component:u("/Python/docs/rest-api/Building-REST-API/fastapi","eda"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Building-REST-API/loading_serializing_drf",component:u("/Python/docs/rest-api/Building-REST-API/loading_serializing_drf","17b"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Building-REST-API/using_fastapi",component:u("/Python/docs/rest-api/Building-REST-API/using_fastapi","0ff"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/CRUD",component:u("/Python/docs/rest-api/CRUD","1ef"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Designing-REST-API/designing_data_exchange",component:u("/Python/docs/rest-api/Designing-REST-API/designing_data_exchange","b12"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Designing-REST-API/designing_error_responses",component:u("/Python/docs/rest-api/Designing-REST-API/designing_error_responses","ccc"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Designing-REST-API/designing_rest_api",component:u("/Python/docs/rest-api/Designing-REST-API/designing_rest_api","635"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Designing-REST-API/get_post",component:u("/Python/docs/rest-api/Designing-REST-API/get_post","a70"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Designing-REST-API/interacting_with_rest",component:u("/Python/docs/rest-api/Designing-REST-API/interacting_with_rest","b7d"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Designing-REST-API/put_patch_delete",component:u("/Python/docs/rest-api/Designing-REST-API/put_patch_delete","57e"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/Designing-REST-API/understanding_rest_api",component:u("/Python/docs/rest-api/Designing-REST-API/understanding_rest_api","782"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/rest-api/getting-started",component:u("/Python/docs/rest-api/getting-started","064"),exact:!0,sidebar:"restAPISidebar"},{path:"/Python/docs/tips-and-tricks/common-errors",component:u("/Python/docs/tips-and-tricks/common-errors","36d"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/critical-mistakes-to-avoid",component:u("/Python/docs/tips-and-tricks/critical-mistakes-to-avoid","16d"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/decorators",component:u("/Python/docs/tips-and-tricks/decorators","e51"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/dont-dry",component:u("/Python/docs/tips-and-tricks/dont-dry","3de"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/dunder-methods",component:u("/Python/docs/tips-and-tricks/dunder-methods","cb6"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/easter-eggs",component:u("/Python/docs/tips-and-tricks/easter-eggs","a73"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/F-String-Tricks",component:u("/Python/docs/tips-and-tricks/F-String-Tricks","961"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/granularity-cohesion",component:u("/Python/docs/tips-and-tricks/granularity-cohesion","d1d"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/itemgetter",component:u("/Python/docs/tips-and-tricks/itemgetter","884"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/iterable-iterator",component:u("/Python/docs/tips-and-tricks/iterable-iterator","9a2"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/Keywords",component:u("/Python/docs/tips-and-tricks/Keywords","90a"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/linux-commands",component:u("/Python/docs/tips-and-tricks/linux-commands","dfc"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/match-case",component:u("/Python/docs/tips-and-tricks/match-case","e41"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/methodcaller",component:u("/Python/docs/tips-and-tricks/methodcaller","1ea"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/methods",component:u("/Python/docs/tips-and-tricks/methods","d35"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/python-is-python3",component:u("/Python/docs/tips-and-tricks/python-is-python3","443"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/rip-gil",component:u("/Python/docs/tips-and-tricks/rip-gil","442"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/seven-code-habbits",component:u("/Python/docs/tips-and-tricks/seven-code-habbits","82d"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/tips-and-tricks",component:u("/Python/docs/tips-and-tricks/tips-and-tricks","291"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/worst-Features",component:u("/Python/docs/tips-and-tricks/worst-Features","fd9"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/wtf-is-self",component:u("/Python/docs/tips-and-tricks/wtf-is-self","0a7"),exact:!0,sidebar:"tipsAndTricksSidebar"},{path:"/Python/docs/tips-and-tricks/yield",component:u("/Python/docs/tips-and-tricks/yield","937"),exact:!0,sidebar:"tipsAndTricksSidebar"}]}]}]},{path:"/Python/",component:u("/Python/","6cd"),exact:!0},{path:"*",component:u("*")}]},4974:(e,t,n)=>{"use strict";n.d(t,{o:()=>i,x:()=>r});var a=n(6540),o=n(4848);const i=a.createContext(!1);function r(e){let{children:t}=e;const[n,r]=(0,a.useState)(!1);return(0,a.useEffect)((()=>{r(!0)}),[]),(0,o.jsx)(i.Provider,{value:n,children:t})}},5161:(e,t,n)=>{"use strict";var a=n(6540),o=n(5338),i=n(545),r=n(4625),s=n(4784),c=n(1934);const l=[n(7378),n(7264),n(8867),n(2094)];var d=n(8912),u=n(6347),p=n(2831),h=n(4848);function y(e){let{children:t}=e;return(0,h.jsx)(h.Fragment,{children:t})}var g=n(7143),f=n(797),m=n(9030),b=n(3115),_=n(1082),v=n(7976),P=n(7788);var S=n(99),w=n(7220);function k(){const{i18n:{currentLocale:e,defaultLocale:t,localeConfigs:n}}=(0,f.A)(),a=(0,v.o)(),o=n[e].htmlLang,i=e=>e.replace("-","_");return(0,h.jsxs)(g.A,{children:[Object.entries(n).map((e=>{let[t,{htmlLang:n}]=e;return(0,h.jsx)("link",{rel:"alternate",href:a.createUrl({locale:t,fullyQualified:!0}),hrefLang:n},t)})),(0,h.jsx)("link",{rel:"alternate",href:a.createUrl({locale:t,fullyQualified:!0}),hrefLang:"x-default"}),(0,h.jsx)("meta",{property:"og:locale",content:i(o)}),Object.values(n).filter((e=>o!==e.htmlLang)).map((e=>(0,h.jsx)("meta",{property:"og:locale:alternate",content:i(e.htmlLang)},`meta-og-${e.htmlLang}`)))]})}function x(e){let{permalink:t}=e;const{siteConfig:{url:n}}=(0,f.A)(),a=function(){const{siteConfig:{url:e,baseUrl:t,trailingSlash:n}}=(0,f.A)(),{pathname:a}=(0,u.zy)();return e+(0,S.Ks)((0,m.Ay)(a),{trailingSlash:n,baseUrl:t})}(),o=t?`${n}${t}`:a;return(0,h.jsxs)(g.A,{children:[(0,h.jsx)("meta",{property:"og:url",content:o}),(0,h.jsx)("link",{rel:"canonical",href:o})]})}function A(){const{i18n:{currentLocale:e}}=(0,f.A)(),{metadata:t,image:n}=(0,b.p)();return(0,h.jsxs)(h.Fragment,{children:[(0,h.jsxs)(g.A,{children:[(0,h.jsx)("meta",{name:"twitter:card",content:"summary_large_image"}),(0,h.jsx)("body",{className:P.w})]}),n&&(0,h.jsx)(_.be,{image:n}),(0,h.jsx)(x,{}),(0,h.jsx)(k,{}),(0,h.jsx)(w.A,{tag:"default",locale:e}),(0,h.jsx)(g.A,{children:t.map(((e,t)=>(0,h.jsx)("meta",{...e},t)))})]})}const E=new Map;var T=n(4974),C=n(6193),D=n(372);function O(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a{const a=t.default?.[e]??t[e];return a?.(...n)}));return()=>o.forEach((e=>e?.()))}const F=function(e){let{children:t,location:n,previousLocation:a}=e;return(0,D.A)((()=>{a!==n&&(!function(e){let{location:t,previousLocation:n}=e;if(!n)return;const a=t.pathname===n.pathname,o=t.hash===n.hash,i=t.search===n.search;if(a&&o&&!i)return;const{hash:r}=t;if(r){const e=decodeURIComponent(r.substring(1)),t=document.getElementById(e);t?.scrollIntoView()}else window.scrollTo(0,0)}({location:n,previousLocation:a}),O("onRouteDidUpdate",{previousLocation:a,location:n}))}),[a,n]),t};function R(e){const t=Array.from(new Set([e,decodeURI(e)])).map((e=>(0,p.u)(d.A,e))).flat();return Promise.all(t.map((e=>e.route.component.preload?.())))}class N extends a.Component{previousLocation;routeUpdateCleanupCb;constructor(e){super(e),this.previousLocation=null,this.routeUpdateCleanupCb=c.A.canUseDOM?O("onRouteUpdate",{previousLocation:null,location:this.props.location}):()=>{},this.state={nextRouteHasLoaded:!0}}shouldComponentUpdate(e,t){if(e.location===this.props.location)return t.nextRouteHasLoaded;const n=e.location;return this.previousLocation=this.props.location,this.setState({nextRouteHasLoaded:!1}),this.routeUpdateCleanupCb=O("onRouteUpdate",{previousLocation:this.previousLocation,location:n}),R(n.pathname).then((()=>{this.routeUpdateCleanupCb(),this.setState({nextRouteHasLoaded:!0})})).catch((e=>{console.warn(e),window.location.reload()})),!1}render(){const{children:e,location:t}=this.props;return(0,h.jsx)(F,{previousLocation:this.previousLocation,location:t,children:(0,h.jsx)(u.qh,{location:t,render:()=>e})})}}const j=N,M="__docusaurus-base-url-issue-banner-suggestion-container";function L(e){return`\ndocument.addEventListener('DOMContentLoaded', function maybeInsertBanner() {\n var shouldInsert = typeof window['docusaurus'] === 'undefined';\n shouldInsert && insertBanner();\n});\n\nfunction insertBanner() {\n var bannerContainer = document.createElement('div');\n bannerContainer.id = '__docusaurus-base-url-issue-banner-container';\n var bannerHtml = ${JSON.stringify(function(e){return`\n
\n

Your Docusaurus site did not load properly.

\n

A very common reason is a wrong site baseUrl configuration.

\n

Current configured baseUrl = ${e} ${"/"===e?" (default value)":""}

\n

We suggest trying baseUrl =

\n
\n`}(e)).replace(/{let{route:t}=e;return!0===t.exact})))return E.set(e.pathname,e.pathname),e;const t=e.pathname.trim().replace(/(?:\/index)?\.html$/,"")||"/";return E.set(e.pathname,t),{...e,pathname:t}}((0,u.zy)());return(0,h.jsx)(j,{location:e,children:V})}function G(){return(0,h.jsx)(U.A,{children:(0,h.jsx)(C.l,{children:(0,h.jsxs)(T.x,{children:[(0,h.jsxs)(y,{children:[(0,h.jsx)(z,{}),(0,h.jsx)(A,{}),(0,h.jsx)(B,{}),(0,h.jsx)(H,{})]}),(0,h.jsx)(q,{})]})})})}var W=n(4054);const K=function(e){try{return document.createElement("link").relList.supports(e)}catch{return!1}}("prefetch")?function(e){return new Promise(((t,n)=>{if("undefined"==typeof document)return void n();const a=document.createElement("link");a.setAttribute("rel","prefetch"),a.setAttribute("href",e),a.onload=()=>t(),a.onerror=()=>n();const o=document.getElementsByTagName("head")[0]??document.getElementsByName("script")[0]?.parentNode;o?.appendChild(a)}))}:function(e){return new Promise(((t,n)=>{const a=new XMLHttpRequest;a.open("GET",e,!0),a.withCredentials=!0,a.onload=()=>{200===a.status?t():n()},a.send(null)}))};var Q=n(3722);const Y=new Set,X=new Set,J=()=>navigator.connection?.effectiveType.includes("2g")||navigator.connection?.saveData,Z={prefetch:e=>{if(!(e=>!J()&&!X.has(e)&&!Y.has(e))(e))return!1;Y.add(e);const t=(0,p.u)(d.A,e).flatMap((e=>{return t=e.route.path,Object.entries(W).filter((e=>{let[n]=e;return n.replace(/-[^-]+$/,"")===t})).flatMap((e=>{let[,t]=e;return Object.values((0,Q.A)(t))}));var t}));return Promise.all(t.map((e=>{const t=n.gca(e);return t&&!t.includes("undefined")?K(t).catch((()=>{})):Promise.resolve()})))},preload:e=>!!(e=>!J()&&!X.has(e))(e)&&(X.add(e),R(e))},ee=Object.freeze(Z);function te(e){let{children:t}=e;return"hash"===s.default.future.experimental_router?(0,h.jsx)(r.I9,{children:t}):(0,h.jsx)(r.Kd,{children:t})}const ne=Boolean(!0);if(c.A.canUseDOM){window.docusaurus=ee;const e=document.getElementById("__docusaurus"),t=(0,h.jsx)(i.vd,{children:(0,h.jsx)(te,{children:(0,h.jsx)(G,{})})}),n=(e,t)=>{console.error("Docusaurus React Root onRecoverableError:",e,t)},r=()=>{if(window.docusaurusRoot)window.docusaurusRoot.render(t);else if(ne)window.docusaurusRoot=o.hydrateRoot(e,t,{onRecoverableError:n});else{const a=o.createRoot(e,{onRecoverableError:n});a.render(t),window.docusaurusRoot=a}};R(window.location.pathname).then((()=>{(0,a.startTransition)(r)}))}},6193:(e,t,n)=>{"use strict";n.d(t,{o:()=>u,l:()=>p});var a=n(6540),o=n(4784);const i=JSON.parse('{"docusaurus-plugin-content-docs":{"default":{"path":"/Python/docs","versions":[{"name":"current","label":"Next","isLast":true,"path":"/Python/docs","mainDocId":"python-guide/getting-started","docs":[{"id":"ci-cd/enhancing-actions/01","path":"/Python/docs/ci-cd/enhancing-actions/01","sidebar":"cicdSidebar"},{"id":"ci-cd/fastapi-actions/01","path":"/Python/docs/ci-cd/fastapi-actions/01","sidebar":"cicdSidebar"},{"id":"ci-cd/getting-started","path":"/Python/docs/ci-cd/getting-started","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/cicd/cd","path":"/Python/docs/ci-cd/introduction/cicd/cd","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/cicd/cdp","path":"/Python/docs/ci-cd/introduction/cicd/cdp","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/cicd/ci","path":"/Python/docs/ci-cd/introduction/cicd/ci","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/cicd/cicd","path":"/Python/docs/ci-cd/introduction/cicd/cicd","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/cicd/introduction-github-actions","path":"/Python/docs/ci-cd/introduction/cicd/introduction-github-actions","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/cicd/key_components","path":"/Python/docs/ci-cd/introduction/cicd/key_components","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/cicd/practices","path":"/Python/docs/ci-cd/introduction/cicd/practices","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/revolution_ci_cd/cdp","path":"/Python/docs/ci-cd/introduction/revolution_ci_cd/cdp","sidebar":"cicdSidebar"},{"id":"ci-cd/introduction/revolution_ci_cd/ci","path":"/Python/docs/ci-cd/introduction/revolution_ci_cd/ci","sidebar":"cicdSidebar"},{"id":"ci-cd/setting-up/01","path":"/Python/docs/ci-cd/setting-up/01","sidebar":"cicdSidebar"},{"id":"data-analysis/Combining_Datasets/concat()","path":"/Python/docs/data-analysis/Combining_Datasets/concat()","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Combining_Datasets/inner_join","path":"/Python/docs/data-analysis/Combining_Datasets/inner_join","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Combining_Datasets/Intro","path":"/Python/docs/data-analysis/Combining_Datasets/Intro","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Combining_Datasets/left_right_join","path":"/Python/docs/data-analysis/Combining_Datasets/left_right_join","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Combining_Datasets/left_right_minus","path":"/Python/docs/data-analysis/Combining_Datasets/left_right_minus","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Combining_Datasets/merge()","path":"/Python/docs/data-analysis/Combining_Datasets/merge()","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Combining_Datasets/Merging_Different_Column","path":"/Python/docs/data-analysis/Combining_Datasets/Merging_Different_Column","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Combining_Datasets/outer_join","path":"/Python/docs/data-analysis/Combining_Datasets/outer_join","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Combining_Datasets/outer_join_minus","path":"/Python/docs/data-analysis/Combining_Datasets/outer_join_minus","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/adding-columns","path":"/Python/docs/data-analysis/Data_Frames/adding-columns","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/descripe-info","path":"/Python/docs/data-analysis/Data_Frames/descripe-info","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/dropna","path":"/Python/docs/data-analysis/Data_Frames/dropna","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/fillna","path":"/Python/docs/data-analysis/Data_Frames/fillna","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/intro","path":"/Python/docs/data-analysis/Data_Frames/intro","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/methods","path":"/Python/docs/data-analysis/Data_Frames/methods","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/nlargest-nsmallest","path":"/Python/docs/data-analysis/Data_Frames/nlargest-nsmallest","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/removing-columns-rows","path":"/Python/docs/data-analysis/Data_Frames/removing-columns-rows","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data_Frames/set_index-reset_index","path":"/Python/docs/data-analysis/Data_Frames/set_index-reset_index","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Bar_Chart_Race","path":"/Python/docs/data-analysis/Data-Visualization/Bar_Chart_Race","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Bar_Plots","path":"/Python/docs/data-analysis/Data-Visualization/Bar_Plots","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Candlestick_Charts","path":"/Python/docs/data-analysis/Data-Visualization/Candlestick_Charts","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Color_by_Value","path":"/Python/docs/data-analysis/Data-Visualization/Color_by_Value","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Histograms","path":"/Python/docs/data-analysis/Data-Visualization/Histograms","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Interactive_Plots","path":"/Python/docs/data-analysis/Data-Visualization/Interactive_Plots","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Line_Plots","path":"/Python/docs/data-analysis/Data-Visualization/Line_Plots","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Pie_Charts","path":"/Python/docs/data-analysis/Data-Visualization/Pie_Charts","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Scatter","path":"/Python/docs/data-analysis/Data-Visualization/Scatter","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Data-Visualization/Styles","path":"/Python/docs/data-analysis/Data-Visualization/Styles","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/getting-started","path":"/Python/docs/data-analysis/getting-started","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Add_New_Axis","path":"/Python/docs/data-analysis/NumPy/Add_New_Axis","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Arrays","path":"/Python/docs/data-analysis/NumPy/Arrays","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Basic_Operations","path":"/Python/docs/data-analysis/NumPy/Basic_Operations","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Broadcasting","path":"/Python/docs/data-analysis/NumPy/Broadcasting","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Creating_Arrays","path":"/Python/docs/data-analysis/NumPy/Creating_Arrays","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Finding_Unique_Elements","path":"/Python/docs/data-analysis/NumPy/Finding_Unique_Elements","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Generating_Random_Numbers","path":"/Python/docs/data-analysis/NumPy/Generating_Random_Numbers","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Indexing_Slicing","path":"/Python/docs/data-analysis/NumPy/Indexing_Slicing","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Lists_vs_NumPy","path":"/Python/docs/data-analysis/NumPy/Lists_vs_NumPy","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Matrices","path":"/Python/docs/data-analysis/NumPy/Matrices","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Reshaping","path":"/Python/docs/data-analysis/NumPy/Reshaping","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Reshaping_Flattening","path":"/Python/docs/data-analysis/NumPy/Reshaping_Flattening","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Reversing_Arrays","path":"/Python/docs/data-analysis/NumPy/Reversing_Arrays","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Saving_Loading_Arrays","path":"/Python/docs/data-analysis/NumPy/Saving_Loading_Arrays","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Shape_and_Size","path":"/Python/docs/data-analysis/NumPy/Shape_and_Size","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/NumPy/Sorting_Concatenating","path":"/Python/docs/data-analysis/NumPy/Sorting_Concatenating","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Reshaping_Datasets/groupby","path":"/Python/docs/data-analysis/Reshaping_Datasets/groupby","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Reshaping_Datasets/introduction","path":"/Python/docs/data-analysis/Reshaping_Datasets/introduction","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Reshaping_Datasets/melt","path":"/Python/docs/data-analysis/Reshaping_Datasets/melt","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Reshaping_Datasets/pivot","path":"/Python/docs/data-analysis/Reshaping_Datasets/pivot","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Reshaping_Datasets/pivot-table","path":"/Python/docs/data-analysis/Reshaping_Datasets/pivot-table","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Reshaping_Datasets/stack-unstack","path":"/Python/docs/data-analysis/Reshaping_Datasets/stack-unstack","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Reshaping_Datasets/transpose","path":"/Python/docs/data-analysis/Reshaping_Datasets/transpose","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/accessing_elements_index","path":"/Python/docs/data-analysis/Series/accessing_elements_index","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/accessing_elements_position","path":"/Python/docs/data-analysis/Series/accessing_elements_position","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/attributes","path":"/Python/docs/data-analysis/Series/attributes","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/counting_values","path":"/Python/docs/data-analysis/Series/counting_values","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/handling_csv_files","path":"/Python/docs/data-analysis/Series/handling_csv_files","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/head-and-tail","path":"/Python/docs/data-analysis/Series/head-and-tail","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/intro","path":"/Python/docs/data-analysis/Series/intro","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/methods","path":"/Python/docs/data-analysis/Series/methods","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Series/sorting_values","path":"/Python/docs/data-analysis/Series/sorting_values","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/String_Operators/index-columns","path":"/Python/docs/data-analysis/String_Operators/index-columns","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/String_Operators/startswith-endswith","path":"/Python/docs/data-analysis/String_Operators/startswith-endswith","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/String_Operators/str","path":"/Python/docs/data-analysis/String_Operators/str","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/Accessing_Time_Attributes","path":"/Python/docs/data-analysis/Time_Series/Accessing_Time_Attributes","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/date_range()","path":"/Python/docs/data-analysis/Time_Series/date_range()","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/loc_iloc_DatetimeIndex","path":"/Python/docs/data-analysis/Time_Series/loc_iloc_DatetimeIndex","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/Period_PeriodIndex","path":"/Python/docs/data-analysis/Time_Series/Period_PeriodIndex","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/Project","path":"/Python/docs/data-analysis/Time_Series/Project","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/reindex","path":"/Python/docs/data-analysis/Time_Series/reindex","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/resample","path":"/Python/docs/data-analysis/Time_Series/resample","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/Time_Series","path":"/Python/docs/data-analysis/Time_Series/Time_Series","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/Timedelta_TimedeltaIndex","path":"/Python/docs/data-analysis/Time_Series/Timedelta_TimedeltaIndex","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/Timestamp_DatetimeIndex","path":"/Python/docs/data-analysis/Time_Series/Timestamp_DatetimeIndex","sidebar":"dataAnalysisSidebar"},{"id":"data-analysis/Time_Series/Timestap_Methods_Attributes","path":"/Python/docs/data-analysis/Time_Series/Timestap_Methods_Attributes","sidebar":"dataAnalysisSidebar"},{"id":"design-patterns/behavioral/behavioral","path":"/Python/docs/design-patterns/behavioral/behavioral","sidebar":"designPatternsSidebar"},{"id":"design-patterns/creational/abstract_factory","path":"/Python/docs/design-patterns/creational/abstract_factory","sidebar":"designPatternsSidebar"},{"id":"design-patterns/creational/builder","path":"/Python/docs/design-patterns/creational/builder","sidebar":"designPatternsSidebar"},{"id":"design-patterns/creational/creational","path":"/Python/docs/design-patterns/creational/","sidebar":"designPatternsSidebar"},{"id":"design-patterns/creational/factory_method","path":"/Python/docs/design-patterns/creational/factory_method","sidebar":"designPatternsSidebar"},{"id":"design-patterns/creational/prototype","path":"/Python/docs/design-patterns/creational/prototype","sidebar":"designPatternsSidebar"},{"id":"design-patterns/creational/singleton","path":"/Python/docs/design-patterns/creational/singleton","sidebar":"designPatternsSidebar"},{"id":"design-patterns/getting-started","path":"/Python/docs/design-patterns/getting-started","sidebar":"designPatternsSidebar"},{"id":"design-patterns/structural/structural","path":"/Python/docs/design-patterns/structural/structural","sidebar":"designPatternsSidebar"},{"id":"getting-started","path":"/Python/docs/getting-started"},{"id":"gui-development/getting-started","path":"/Python/docs/gui-development/getting-started","sidebar":"guiSidebar"},{"id":"gui-development/introduction/gui_development","path":"/Python/docs/gui-development/introduction/gui_development","sidebar":"guiSidebar"},{"id":"gui-development/introduction/gui_frameworks","path":"/Python/docs/gui-development/introduction/gui_frameworks","sidebar":"guiSidebar"},{"id":"gui-development/introduction/right_framework","path":"/Python/docs/gui-development/introduction/right_framework","sidebar":"guiSidebar"},{"id":"gui-development/introduction/setting-up","path":"/Python/docs/gui-development/introduction/setting-up","sidebar":"guiSidebar"},{"id":"python-guide/Advanced/Generators/README","path":"/Python/docs/python-guide/Advanced/Generators/","sidebar":"guideSidebar"},{"id":"python-guide/Advanced/Lambda_Functions/README","path":"/Python/docs/python-guide/Advanced/Lambda_Functions/","sidebar":"guideSidebar"},{"id":"python-guide/Advanced/Mypy/README","path":"/Python/docs/python-guide/Advanced/Mypy/","sidebar":"guideSidebar"},{"id":"python-guide/Advanced/Walrus_Operator/README","path":"/Python/docs/python-guide/Advanced/Walrus_Operator/","sidebar":"guideSidebar"},{"id":"python-guide/AsyncIO/Gather","path":"/Python/docs/python-guide/AsyncIO/Gather","sidebar":"guideSidebar"},{"id":"python-guide/AsyncIO/Getting_Started","path":"/Python/docs/python-guide/AsyncIO/Getting_Started","sidebar":"guideSidebar"},{"id":"python-guide/AsyncIO/Intro","path":"/Python/docs/python-guide/AsyncIO/Intro","sidebar":"guideSidebar"},{"id":"python-guide/AsyncIO/Tasks","path":"/Python/docs/python-guide/AsyncIO/Tasks","sidebar":"guideSidebar"},{"id":"python-guide/AsyncIO/Website_Status","path":"/Python/docs/python-guide/AsyncIO/Website_Status","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/all()/README","path":"/Python/docs/python-guide/Built_in_Functions/all()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/any()/README","path":"/Python/docs/python-guide/Built_in_Functions/any()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/callable()/README","path":"/Python/docs/python-guide/Built_in_Functions/callable()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/dunder_methods/README","path":"/Python/docs/python-guide/Built_in_Functions/dunder_methods/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/enumerate()/README","path":"/Python/docs/python-guide/Built_in_Functions/enumerate()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/eval()/README","path":"/Python/docs/python-guide/Built_in_Functions/eval()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/exec()/README","path":"/Python/docs/python-guide/Built_in_Functions/exec()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/filter()/README","path":"/Python/docs/python-guide/Built_in_Functions/filter()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/globals()/README","path":"/Python/docs/python-guide/Built_in_Functions/globals()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/Improved_Chat_Bot/README","path":"/Python/docs/python-guide/Built_in_Functions/Improved_Chat_Bot/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/isinstance()/README","path":"/Python/docs/python-guide/Built_in_Functions/isinstance()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/locals()/README","path":"/Python/docs/python-guide/Built_in_Functions/locals()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/map()/README","path":"/Python/docs/python-guide/Built_in_Functions/map()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/print()/README","path":"/Python/docs/python-guide/Built_in_Functions/print()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/range()/README","path":"/Python/docs/python-guide/Built_in_Functions/range()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/round()/README","path":"/Python/docs/python-guide/Built_in_Functions/round()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/slice()/README","path":"/Python/docs/python-guide/Built_in_Functions/slice()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/sorted()/README","path":"/Python/docs/python-guide/Built_in_Functions/sorted()/","sidebar":"guideSidebar"},{"id":"python-guide/Built_in_Functions/zip()/README","path":"/Python/docs/python-guide/Built_in_Functions/zip()/","sidebar":"guideSidebar"},{"id":"python-guide/Control_Flow/Break_and_Continue","path":"/Python/docs/python-guide/Control_Flow/Break_and_Continue","sidebar":"guideSidebar"},{"id":"python-guide/Control_Flow/For_Loop","path":"/Python/docs/python-guide/Control_Flow/For_Loop","sidebar":"guideSidebar"},{"id":"python-guide/Control_Flow/If_Elif_Else","path":"/Python/docs/python-guide/Control_Flow/If_Elif_Else","sidebar":"guideSidebar"},{"id":"python-guide/Control_Flow/If_Else_Shorthand","path":"/Python/docs/python-guide/Control_Flow/If_Else_Shorthand","sidebar":"guideSidebar"},{"id":"python-guide/Control_Flow/Loop-Else","path":"/Python/docs/python-guide/Control_Flow/Loop-Else","sidebar":"guideSidebar"},{"id":"python-guide/Control_Flow/Rock_Paper_Scissors","path":"/Python/docs/python-guide/Control_Flow/Rock_Paper_Scissors","sidebar":"guideSidebar"},{"id":"python-guide/Control_Flow/While_Loop","path":"/Python/docs/python-guide/Control_Flow/While_Loop","sidebar":"guideSidebar"},{"id":"python-guide/Dataclasses/@dataclass/README","path":"/Python/docs/python-guide/Dataclasses/@dataclass/","sidebar":"guideSidebar"},{"id":"python-guide/Dataclasses/@property/README","path":"/Python/docs/python-guide/Dataclasses/@property/","sidebar":"guideSidebar"},{"id":"python-guide/Dataclasses/Fields/README","path":"/Python/docs/python-guide/Dataclasses/Fields/","sidebar":"guideSidebar"},{"id":"python-guide/Dataclasses/InitVar/README","path":"/Python/docs/python-guide/Dataclasses/InitVar/","sidebar":"guideSidebar"},{"id":"python-guide/Dataclasses/Notes_App/README","path":"/Python/docs/python-guide/Dataclasses/Notes_App/","sidebar":"guideSidebar"},{"id":"python-guide/Dataclasses/post_init/README","path":"/Python/docs/python-guide/Dataclasses/post_init/","sidebar":"guideSidebar"},{"id":"python-guide/Errors/Else_Finally/README","path":"/Python/docs/python-guide/Errors/Else_Finally/","sidebar":"guideSidebar"},{"id":"python-guide/Errors/Letters_Only/README","path":"/Python/docs/python-guide/Errors/Letters_Only/","sidebar":"guideSidebar"},{"id":"python-guide/Errors/Raise/README","path":"/Python/docs/python-guide/Errors/Raise/","sidebar":"guideSidebar"},{"id":"python-guide/Errors/Try_Except/README","path":"/Python/docs/python-guide/Errors/Try_Except/","sidebar":"guideSidebar"},{"id":"python-guide/Errors/Unknown_Errors/README","path":"/Python/docs/python-guide/Errors/Unknown_Errors/","sidebar":"guideSidebar"},{"id":"python-guide/Errors/User_Input/README","path":"/Python/docs/python-guide/Errors/User_Input/","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/Caching-JSON","path":"/Python/docs/python-guide/File-Management/Caching-JSON","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/Deleting_Files","path":"/Python/docs/python-guide/File-Management/Deleting_Files","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/File-Handling","path":"/Python/docs/python-guide/File-Management/File-Handling","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/Glob","path":"/Python/docs/python-guide/File-Management/Glob","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/Handling-JSON","path":"/Python/docs/python-guide/File-Management/Handling-JSON","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/JSON","path":"/Python/docs/python-guide/File-Management/JSON","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/Pickling","path":"/Python/docs/python-guide/File-Management/Pickling","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/Reading-Files","path":"/Python/docs/python-guide/File-Management/Reading-Files","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/toml","path":"/Python/docs/python-guide/File-Management/toml","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/Writing-Creating-Files","path":"/Python/docs/python-guide/File-Management/Writing-Creating-Files","sidebar":"guideSidebar"},{"id":"python-guide/File-Management/yaml","path":"/Python/docs/python-guide/File-Management/yaml","sidebar":"guideSidebar"},{"id":"python-guide/Functions/Args_and_Kwargs","path":"/Python/docs/python-guide/Functions/Args_and_Kwargs","sidebar":"guideSidebar"},{"id":"python-guide/Functions/Creating_a_Function","path":"/Python/docs/python-guide/Functions/Creating_a_Function","sidebar":"guideSidebar"},{"id":"python-guide/Functions/Parameters_and_Arguments","path":"/Python/docs/python-guide/Functions/Parameters_and_Arguments","sidebar":"guideSidebar"},{"id":"python-guide/Functions/Pass","path":"/Python/docs/python-guide/Functions/Pass","sidebar":"guideSidebar"},{"id":"python-guide/Functions/Recursion","path":"/Python/docs/python-guide/Functions/Recursion","sidebar":"guideSidebar"},{"id":"python-guide/Functions/Return_Functions","path":"/Python/docs/python-guide/Functions/Return_Functions","sidebar":"guideSidebar"},{"id":"python-guide/Functions/Star_and_Slash","path":"/Python/docs/python-guide/Functions/Star_and_Slash","sidebar":"guideSidebar"},{"id":"python-guide/getting-started","path":"/Python/docs/python-guide/getting-started","sidebar":"guideSidebar"},{"id":"python-guide/Lists/Dont_Loop_Modify","path":"/Python/docs/python-guide/Lists/Dont_Loop_Modify","sidebar":"guideSidebar"},{"id":"python-guide/Lists/getting-started","path":"/Python/docs/python-guide/Lists/getting-started","sidebar":"guideSidebar"},{"id":"python-guide/Lists/Grocery_List","path":"/Python/docs/python-guide/Lists/Grocery_List","sidebar":"guideSidebar"},{"id":"python-guide/Lists/List_Comprehensions","path":"/Python/docs/python-guide/Lists/List_Comprehensions","sidebar":"guideSidebar"},{"id":"python-guide/Lists/Slicing","path":"/Python/docs/python-guide/Lists/Slicing","sidebar":"guideSidebar"},{"id":"python-guide/Modules/if_name_main/README","path":"/Python/docs/python-guide/Modules/if_name_main/","sidebar":"guideSidebar"},{"id":"python-guide/Modules/Importing/README","path":"/Python/docs/python-guide/Modules/Importing/","sidebar":"guideSidebar"},{"id":"python-guide/Modules/Libraries/README","path":"/Python/docs/python-guide/Modules/Libraries/","sidebar":"guideSidebar"},{"id":"python-guide/Modules/Modules/README","path":"/Python/docs/python-guide/Modules/Modules/","sidebar":"guideSidebar"},{"id":"python-guide/Modules/Packages/code/README","path":"/Python/docs/python-guide/Modules/Packages/code/","sidebar":"guideSidebar"},{"id":"python-guide/Modules/Website_Status/README","path":"/Python/docs/python-guide/Modules/Website_Status/","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Data-Sharing-Issue","path":"/Python/docs/python-guide/Multiprocessing/Data-Sharing-Issue","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Intro","path":"/Python/docs/python-guide/Multiprocessing/Intro","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Lock-Semaphores","path":"/Python/docs/python-guide/Multiprocessing/Lock-Semaphores","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Pipes","path":"/Python/docs/python-guide/Multiprocessing/Pipes","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Pools-Map","path":"/Python/docs/python-guide/Multiprocessing/Pools-Map","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Pools-Multiple-Functions","path":"/Python/docs/python-guide/Multiprocessing/Pools-Multiple-Functions","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Pools-Starmap","path":"/Python/docs/python-guide/Multiprocessing/Pools-Starmap","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Processes","path":"/Python/docs/python-guide/Multiprocessing/Processes","sidebar":"guideSidebar"},{"id":"python-guide/Multiprocessing/Queues","path":"/Python/docs/python-guide/Multiprocessing/Queues","sidebar":"guideSidebar"},{"id":"python-guide/Multithreading/Daemon-Threads","path":"/Python/docs/python-guide/Multithreading/Daemon-Threads","sidebar":"guideSidebar"},{"id":"python-guide/Multithreading/Locks","path":"/Python/docs/python-guide/Multithreading/Locks","sidebar":"guideSidebar"},{"id":"python-guide/Multithreading/Race-Conditions","path":"/Python/docs/python-guide/Multithreading/Race-Conditions","sidebar":"guideSidebar"},{"id":"python-guide/Multithreading/Semaphores","path":"/Python/docs/python-guide/Multithreading/Semaphores","sidebar":"guideSidebar"},{"id":"python-guide/Multithreading/Threads","path":"/Python/docs/python-guide/Multithreading/Threads","sidebar":"guideSidebar"},{"id":"python-guide/Multithreading/With-Lock-Semaphore","path":"/Python/docs/python-guide/Multithreading/With-Lock-Semaphore","sidebar":"guideSidebar"},{"id":"python-guide/OOP/@abstractmethod","path":"/Python/docs/python-guide/OOP/@abstractmethod","sidebar":"guideSidebar"},{"id":"python-guide/OOP/@classmethod","path":"/Python/docs/python-guide/OOP/@classmethod","sidebar":"guideSidebar"},{"id":"python-guide/OOP/@staticmethod","path":"/Python/docs/python-guide/OOP/@staticmethod","sidebar":"guideSidebar"},{"id":"python-guide/OOP/Attributes_Class_and_Instance","path":"/Python/docs/python-guide/OOP/Attributes_Class_and_Instance","sidebar":"guideSidebar"},{"id":"python-guide/OOP/Classes_and_Objects","path":"/Python/docs/python-guide/OOP/Classes_and_Objects","sidebar":"guideSidebar"},{"id":"python-guide/OOP/Dunder_Methods","path":"/Python/docs/python-guide/OOP/Dunder_Methods","sidebar":"guideSidebar"},{"id":"python-guide/OOP/eq__()","path":"/Python/docs/python-guide/OOP/eq__()","sidebar":"guideSidebar"},{"id":"python-guide/OOP/Inheritance","path":"/Python/docs/python-guide/OOP/Inheritance","sidebar":"guideSidebar"},{"id":"python-guide/OOP/init","path":"/Python/docs/python-guide/OOP/init","sidebar":"guideSidebar"},{"id":"python-guide/OOP/Methods_Functions","path":"/Python/docs/python-guide/OOP/Methods_Functions","sidebar":"guideSidebar"},{"id":"python-guide/OOP/Name_Mangling","path":"/Python/docs/python-guide/OOP/Name_Mangling","sidebar":"guideSidebar"},{"id":"python-guide/OOP/OOP","path":"/Python/docs/python-guide/OOP/OOP","sidebar":"guideSidebar"},{"id":"python-guide/OOP/self","path":"/Python/docs/python-guide/OOP/self","sidebar":"guideSidebar"},{"id":"python-guide/OOP/str()_repr()","path":"/Python/docs/python-guide/OOP/str()_repr()","sidebar":"guideSidebar"},{"id":"python-guide/OOP/super()","path":"/Python/docs/python-guide/OOP/super()","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Assertions","path":"/Python/docs/python-guide/Python_Basics/Assertions","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Booleans","path":"/Python/docs/python-guide/Python_Basics/Booleans","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Comments","path":"/Python/docs/python-guide/Python_Basics/Comments","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Comparing_Floats","path":"/Python/docs/python-guide/Python_Basics/Comparing_Floats","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Constants","path":"/Python/docs/python-guide/Python_Basics/Constants","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Data_Types","path":"/Python/docs/python-guide/Python_Basics/Data_Types","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Dictionaries","path":"/Python/docs/python-guide/Python_Basics/Dictionaries","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Doc_Strings","path":"/Python/docs/python-guide/Python_Basics/Doc_Strings","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/F-Strings","path":"/Python/docs/python-guide/Python_Basics/F-Strings","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Floats","path":"/Python/docs/python-guide/Python_Basics/Floats","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Frozensets","path":"/Python/docs/python-guide/Python_Basics/Frozensets","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Global","path":"/Python/docs/python-guide/Python_Basics/Global","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Integers","path":"/Python/docs/python-guide/Python_Basics/Integers","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Lists","path":"/Python/docs/python-guide/Python_Basics/Lists","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Mad_Libs_Project","path":"/Python/docs/python-guide/Python_Basics/Mad_Libs_Project","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/None","path":"/Python/docs/python-guide/Python_Basics/None","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Nonlocal","path":"/Python/docs/python-guide/Python_Basics/Nonlocal","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Operators","path":"/Python/docs/python-guide/Python_Basics/Operators","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Scopes","path":"/Python/docs/python-guide/Python_Basics/Scopes","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Sets","path":"/Python/docs/python-guide/Python_Basics/Sets","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Shortcut_Format","path":"/Python/docs/python-guide/Python_Basics/Shortcut_Format","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Simple_Adder_Project","path":"/Python/docs/python-guide/Python_Basics/Simple_Adder_Project","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Strings","path":"/Python/docs/python-guide/Python_Basics/Strings","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Syntax","path":"/Python/docs/python-guide/Python_Basics/Syntax","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Truthy_and_Falsy","path":"/Python/docs/python-guide/Python_Basics/Truthy_and_Falsy","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Tuples","path":"/Python/docs/python-guide/Python_Basics/Tuples","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Type_Conversion","path":"/Python/docs/python-guide/Python_Basics/Type_Conversion","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Type_Hints","path":"/Python/docs/python-guide/Python_Basics/Type_Hints","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Unpacking","path":"/Python/docs/python-guide/Python_Basics/Unpacking","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/Variables","path":"/Python/docs/python-guide/Python_Basics/Variables","sidebar":"guideSidebar"},{"id":"python-guide/Python_Basics/VS_Is","path":"/Python/docs/python-guide/Python_Basics/VS_Is","sidebar":"guideSidebar"},{"id":"python-guide/Unit-Testing/Conftest","path":"/Python/docs/python-guide/Unit-Testing/Conftest","sidebar":"guideSidebar"},{"id":"python-guide/Unit-Testing/Fixtures","path":"/Python/docs/python-guide/Unit-Testing/Fixtures","sidebar":"guideSidebar"},{"id":"python-guide/Unit-Testing/Intro","path":"/Python/docs/python-guide/Unit-Testing/Intro","sidebar":"guideSidebar"},{"id":"python-guide/Unit-Testing/Marks","path":"/Python/docs/python-guide/Unit-Testing/Marks","sidebar":"guideSidebar"},{"id":"python-guide/Unit-Testing/Parametrize","path":"/Python/docs/python-guide/Unit-Testing/Parametrize","sidebar":"guideSidebar"},{"id":"python-guide/Unit-Testing/TestingErrors","path":"/Python/docs/python-guide/Unit-Testing/TestingErrors","sidebar":"guideSidebar"},{"id":"rest-api/Building-REST-API/08","path":"/Python/docs/rest-api/Building-REST-API/08","sidebar":"restAPISidebar"},{"id":"rest-api/Building-REST-API/adding_urls","path":"/Python/docs/rest-api/Building-REST-API/adding_urls","sidebar":"restAPISidebar"},{"id":"rest-api/Building-REST-API/building_rest_api","path":"/Python/docs/rest-api/Building-REST-API/building_rest_api","sidebar":"restAPISidebar"},{"id":"rest-api/Building-REST-API/django_rest","path":"/Python/docs/rest-api/Building-REST-API/django_rest","sidebar":"restAPISidebar"},{"id":"rest-api/Building-REST-API/expanding_using_flask","path":"/Python/docs/rest-api/Building-REST-API/expanding_using_flask","sidebar":"restAPISidebar"},{"id":"rest-api/Building-REST-API/fastapi","path":"/Python/docs/rest-api/Building-REST-API/fastapi","sidebar":"restAPISidebar"},{"id":"rest-api/Building-REST-API/loading_serializing_drf","path":"/Python/docs/rest-api/Building-REST-API/loading_serializing_drf","sidebar":"restAPISidebar"},{"id":"rest-api/Building-REST-API/using_fastapi","path":"/Python/docs/rest-api/Building-REST-API/using_fastapi","sidebar":"restAPISidebar"},{"id":"rest-api/CRUD","path":"/Python/docs/rest-api/CRUD","sidebar":"restAPISidebar"},{"id":"rest-api/Designing-REST-API/designing_data_exchange","path":"/Python/docs/rest-api/Designing-REST-API/designing_data_exchange","sidebar":"restAPISidebar"},{"id":"rest-api/Designing-REST-API/designing_error_responses","path":"/Python/docs/rest-api/Designing-REST-API/designing_error_responses","sidebar":"restAPISidebar"},{"id":"rest-api/Designing-REST-API/designing_rest_api","path":"/Python/docs/rest-api/Designing-REST-API/designing_rest_api","sidebar":"restAPISidebar"},{"id":"rest-api/Designing-REST-API/get_post","path":"/Python/docs/rest-api/Designing-REST-API/get_post","sidebar":"restAPISidebar"},{"id":"rest-api/Designing-REST-API/interacting_with_rest","path":"/Python/docs/rest-api/Designing-REST-API/interacting_with_rest","sidebar":"restAPISidebar"},{"id":"rest-api/Designing-REST-API/put_patch_delete","path":"/Python/docs/rest-api/Designing-REST-API/put_patch_delete","sidebar":"restAPISidebar"},{"id":"rest-api/Designing-REST-API/understanding_rest_api","path":"/Python/docs/rest-api/Designing-REST-API/understanding_rest_api","sidebar":"restAPISidebar"},{"id":"rest-api/getting-started","path":"/Python/docs/rest-api/getting-started","sidebar":"restAPISidebar"},{"id":"tips-and-tricks/common-errors","path":"/Python/docs/tips-and-tricks/common-errors","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/critical-mistakes-to-avoid","path":"/Python/docs/tips-and-tricks/critical-mistakes-to-avoid","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/decorators","path":"/Python/docs/tips-and-tricks/decorators","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/dont-dry","path":"/Python/docs/tips-and-tricks/dont-dry","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/dunder-methods","path":"/Python/docs/tips-and-tricks/dunder-methods","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/easter-eggs","path":"/Python/docs/tips-and-tricks/easter-eggs","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/F-String-Tricks","path":"/Python/docs/tips-and-tricks/F-String-Tricks","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/granularity-cohesion","path":"/Python/docs/tips-and-tricks/granularity-cohesion","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/itemgetter","path":"/Python/docs/tips-and-tricks/itemgetter","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/iterable-iterator","path":"/Python/docs/tips-and-tricks/iterable-iterator","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/Keywords","path":"/Python/docs/tips-and-tricks/Keywords","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/linux-commands","path":"/Python/docs/tips-and-tricks/linux-commands","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/match-case","path":"/Python/docs/tips-and-tricks/match-case","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/methodcaller","path":"/Python/docs/tips-and-tricks/methodcaller","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/methods","path":"/Python/docs/tips-and-tricks/methods","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/python-is-python3","path":"/Python/docs/tips-and-tricks/python-is-python3","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/rip-gil","path":"/Python/docs/tips-and-tricks/rip-gil","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/seven-code-habbits","path":"/Python/docs/tips-and-tricks/seven-code-habbits","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/tips-and-tricks","path":"/Python/docs/tips-and-tricks/tips-and-tricks","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/worst-Features","path":"/Python/docs/tips-and-tricks/worst-Features","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/wtf-is-self","path":"/Python/docs/tips-and-tricks/wtf-is-self","sidebar":"tipsAndTricksSidebar"},{"id":"tips-and-tricks/yield","path":"/Python/docs/tips-and-tricks/yield","sidebar":"tipsAndTricksSidebar"},{"id":"/category/python-basics","path":"/Python/docs/category/python-basics","sidebar":"guideSidebar"},{"id":"/category/control-flow","path":"/Python/docs/category/control-flow","sidebar":"guideSidebar"},{"id":"/category/functions","path":"/Python/docs/category/functions","sidebar":"guideSidebar"},{"id":"/category/errors","path":"/Python/docs/category/errors","sidebar":"guideSidebar"},{"id":"/category/modules","path":"/Python/docs/category/modules","sidebar":"guideSidebar"},{"id":"/category/lists","path":"/Python/docs/category/lists","sidebar":"guideSidebar"},{"id":"/category/oop","path":"/Python/docs/category/oop","sidebar":"guideSidebar"},{"id":"/category/built-in-functions","path":"/Python/docs/category/built-in-functions","sidebar":"guideSidebar"},{"id":"/category/dataclasses","path":"/Python/docs/category/dataclasses","sidebar":"guideSidebar"},{"id":"/category/advanced","path":"/Python/docs/category/advanced","sidebar":"guideSidebar"},{"id":"/category/asyncio","path":"/Python/docs/category/asyncio","sidebar":"guideSidebar"},{"id":"/category/multiprocessing","path":"/Python/docs/category/multiprocessing","sidebar":"guideSidebar"},{"id":"/category/multi-threading","path":"/Python/docs/category/multi-threading","sidebar":"guideSidebar"},{"id":"/category/unit-testing","path":"/Python/docs/category/unit-testing","sidebar":"guideSidebar"},{"id":"/category/file-management","path":"/Python/docs/category/file-management","sidebar":"guideSidebar"},{"id":"/category/series","path":"/Python/docs/category/series","sidebar":"dataAnalysisSidebar"},{"id":"/category/data-frames","path":"/Python/docs/category/data-frames","sidebar":"dataAnalysisSidebar"},{"id":"/category/string-operators","path":"/Python/docs/category/string-operators","sidebar":"dataAnalysisSidebar"},{"id":"/category/reshaping-datasets","path":"/Python/docs/category/reshaping-datasets","sidebar":"dataAnalysisSidebar"},{"id":"/category/combining-datasets","path":"/Python/docs/category/combining-datasets","sidebar":"dataAnalysisSidebar"},{"id":"/category/time-series","path":"/Python/docs/category/time-series","sidebar":"dataAnalysisSidebar"},{"id":"/category/data-visualization","path":"/Python/docs/category/data-visualization","sidebar":"dataAnalysisSidebar"},{"id":"/category/numpy","path":"/Python/docs/category/numpy","sidebar":"dataAnalysisSidebar"},{"id":"/category/creational-design-patterns","path":"/Python/docs/category/creational-design-patterns","sidebar":"designPatternsSidebar"},{"id":"/category/structural-design-patterns","path":"/Python/docs/category/structural-design-patterns","sidebar":"designPatternsSidebar"},{"id":"/category/behavioral-design-patterns","path":"/Python/docs/category/behavioral-design-patterns","sidebar":"designPatternsSidebar"},{"id":"/category/designing-rest-apis","path":"/Python/docs/category/designing-rest-apis","sidebar":"restAPISidebar"},{"id":"/category/building-rest-apis","path":"/Python/docs/category/building-rest-apis","sidebar":"restAPISidebar"},{"id":"/category/introduction","path":"/Python/docs/category/introduction","sidebar":"cicdSidebar"},{"id":"/category/cicd","path":"/Python/docs/category/cicd","sidebar":"cicdSidebar"},{"id":"/category/how-cicd-revolutionized-software-development","path":"/Python/docs/category/how-cicd-revolutionized-software-development","sidebar":"cicdSidebar"},{"id":"/category/setting-up","path":"/Python/docs/category/setting-up","sidebar":"cicdSidebar"},{"id":"/category/enhancing-actions","path":"/Python/docs/category/enhancing-actions","sidebar":"cicdSidebar"},{"id":"/category/fastapi-actions","path":"/Python/docs/category/fastapi-actions","sidebar":"cicdSidebar"}],"draftIds":[],"sidebars":{"guideSidebar":{"link":{"path":"/Python/docs/python-guide/getting-started","label":"python-guide/getting-started"}},"dataAnalysisSidebar":{"link":{"path":"/Python/docs/data-analysis/getting-started","label":"data-analysis/getting-started"}},"designPatternsSidebar":{"link":{"path":"/Python/docs/design-patterns/getting-started","label":"design-patterns/getting-started"}},"guiSidebar":{"link":{"path":"/Python/docs/gui-development/getting-started","label":"gui-development/getting-started"}},"restAPISidebar":{"link":{"path":"/Python/docs/rest-api/getting-started","label":"rest-api/getting-started"}},"cicdSidebar":{"link":{"path":"/Python/docs/ci-cd/getting-started","label":"ci-cd/getting-started"}},"tipsAndTricksSidebar":{"link":{"path":"/Python/docs/tips-and-tricks/F-String-Tricks","label":"tips-and-tricks/F-String-Tricks"}}}}],"breadcrumbs":true}}}'),r=JSON.parse('{"defaultLocale":"en","locales":["en"],"path":"i18n","currentLocale":"en","localeConfigs":{"en":{"label":"English","direction":"ltr","htmlLang":"en","calendar":"gregory","path":"en"}}}');var s=n(2654);const c=JSON.parse('{"docusaurusVersion":"3.7.0","siteVersion":"0.0.0","pluginVersions":{"docusaurus-plugin-content-docs":{"type":"package","name":"@docusaurus/plugin-content-docs","version":"3.7.0"},"docusaurus-plugin-content-blog":{"type":"package","name":"@docusaurus/plugin-content-blog","version":"3.7.0"},"docusaurus-plugin-content-pages":{"type":"package","name":"@docusaurus/plugin-content-pages","version":"3.7.0"},"docusaurus-plugin-sitemap":{"type":"package","name":"@docusaurus/plugin-sitemap","version":"3.7.0"},"docusaurus-plugin-svgr":{"type":"package","name":"@docusaurus/plugin-svgr","version":"3.7.0"},"docusaurus-theme-classic":{"type":"package","name":"@docusaurus/theme-classic","version":"3.7.0"}}}');var l=n(4848);const d={siteConfig:o.default,siteMetadata:c,globalData:i,i18n:r,codeTranslations:s},u=a.createContext(d);function p(e){let{children:t}=e;return(0,l.jsx)(u.Provider,{value:d,children:t})}},4023:(e,t,n)=>{"use strict";n.d(t,{A:()=>g});var a=n(6540),o=n(1934),i=n(7143),r=n(99),s=n(1410),c=n(5313),l=n(4848);function d(e){let{error:t,tryAgain:n}=e;return(0,l.jsxs)("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"flex-start",minHeight:"100vh",width:"100%",maxWidth:"80ch",fontSize:"20px",margin:"0 auto",padding:"1rem"},children:[(0,l.jsx)("h1",{style:{fontSize:"3rem"},children:"This page crashed"}),(0,l.jsx)("button",{type:"button",onClick:n,style:{margin:"1rem 0",fontSize:"2rem",cursor:"pointer",borderRadius:20,padding:"1rem"},children:"Try again"}),(0,l.jsx)(u,{error:t})]})}function u(e){let{error:t}=e;const n=(0,r.rA)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,l.jsx)("p",{style:{whiteSpace:"pre-wrap"},children:n})}function p(e){let{children:t}=e;return(0,l.jsx)(c.W,{value:{plugin:{name:"docusaurus-core-error-boundary",id:"default"}},children:t})}function h(e){let{error:t,tryAgain:n}=e;return(0,l.jsx)(p,{children:(0,l.jsxs)(g,{fallback:()=>(0,l.jsx)(d,{error:t,tryAgain:n}),children:[(0,l.jsx)(i.A,{children:(0,l.jsx)("title",{children:"Page Error"})}),(0,l.jsx)(s.A,{children:(0,l.jsx)(d,{error:t,tryAgain:n})})]})})}const y=e=>(0,l.jsx)(h,{...e});class g extends a.Component{constructor(e){super(e),this.state={error:null}}componentDidCatch(e){o.A.canUseDOM&&this.setState({error:e})}render(){const{children:e}=this.props,{error:t}=this.state;if(t){const e={error:t,tryAgain:()=>this.setState({error:null})};return(this.props.fallback??y)(e)}return e??null}}},1934:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});const a="undefined"!=typeof window&&"document"in window&&"createElement"in window.document,o={canUseDOM:a,canUseEventListeners:a&&("addEventListener"in window||"attachEvent"in window),canUseIntersectionObserver:a&&"IntersectionObserver"in window,canUseViewport:a&&"screen"in window}},7143:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});n(6540);var a=n(545),o=n(4848);function i(e){return(0,o.jsx)(a.mg,{...e})}},6289:(e,t,n)=>{"use strict";n.d(t,{A:()=>h});var a=n(6540),o=n(4625),i=n(99),r=n(797),s=n(2887),c=n(1934),l=n(5246),d=n(9030),u=n(4848);function p(e,t){let{isNavLink:n,to:p,href:h,activeClassName:y,isActive:g,"data-noBrokenLinkCheck":f,autoAddBaseUrl:m=!0,...b}=e;const{siteConfig:_}=(0,r.A)(),{trailingSlash:v,baseUrl:P}=_,S=_.future.experimental_router,{withBaseUrl:w}=(0,d.hH)(),k=(0,l.A)(),x=(0,a.useRef)(null);(0,a.useImperativeHandle)(t,(()=>x.current));const A=p||h;const E=(0,s.A)(A),T=A?.replace("pathname://","");let C=void 0!==T?(D=T,m&&(e=>e.startsWith("/"))(D)?w(D):D):void 0;var D;"hash"===S&&C?.startsWith("./")&&(C=C?.slice(1)),C&&E&&(C=(0,i.Ks)(C,{trailingSlash:v,baseUrl:P}));const O=(0,a.useRef)(!1),F=n?o.k2:o.N_,R=c.A.canUseIntersectionObserver,N=(0,a.useRef)(),j=()=>{O.current||null==C||(window.docusaurus.preload(C),O.current=!0)};(0,a.useEffect)((()=>(!R&&E&&c.A.canUseDOM&&null!=C&&window.docusaurus.prefetch(C),()=>{R&&N.current&&N.current.disconnect()})),[N,C,R,E]);const M=C?.startsWith("#")??!1,L=!b.target||"_self"===b.target,I=!C||!E||!L||M&&"hash"!==S;f||!M&&I||k.collectLink(C),b.id&&k.collectAnchor(b.id);const B={};return I?(0,u.jsx)("a",{ref:x,href:C,...A&&!E&&{target:"_blank",rel:"noopener noreferrer"},...b,...B}):(0,u.jsx)(F,{...b,onMouseEnter:j,onTouchStart:j,innerRef:e=>{x.current=e,R&&e&&E&&(N.current=new window.IntersectionObserver((t=>{t.forEach((t=>{e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(N.current.unobserve(e),N.current.disconnect(),null!=C&&window.docusaurus.prefetch(C))}))})),N.current.observe(e))},to:C,...n&&{isActive:g,activeClassName:y},...B})}const h=a.forwardRef(p)},205:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});const a=()=>null},539:(e,t,n)=>{"use strict";n.d(t,{A:()=>l,T:()=>c});var a=n(6540),o=n(4848);function i(e,t){const n=e.split(/(\{\w+\})/).map(((e,n)=>{if(n%2==1){const n=t?.[e.slice(1,-1)];if(void 0!==n)return n}return e}));return n.some((e=>(0,a.isValidElement)(e)))?n.map(((e,t)=>(0,a.isValidElement)(e)?a.cloneElement(e,{key:t}):e)).filter((e=>""!==e)):n.join("")}var r=n(2654);function s(e){let{id:t,message:n}=e;if(void 0===t&&void 0===n)throw new Error("Docusaurus translation declarations must have at least a translation id or a default translation message");return r[t??n]??n??t}function c(e,t){let{message:n,id:a}=e;return i(s({message:n,id:a}),t)}function l(e){let{children:t,id:n,values:a}=e;if(t&&"string"!=typeof t)throw console.warn("Illegal children",t),new Error("The Docusaurus component only accept simple string values");const r=s({message:t,id:n});return(0,o.jsx)(o.Fragment,{children:i(r,a)})}},4332:(e,t,n)=>{"use strict";n.d(t,{W:()=>a});const a="default"},2887:(e,t,n)=>{"use strict";function a(e){return/^(?:\w*:|\/\/)/.test(e)}function o(e){return void 0!==e&&!a(e)}n.d(t,{A:()=>o,z:()=>a})},9030:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>s,hH:()=>r});var a=n(6540),o=n(797),i=n(2887);function r(){const{siteConfig:e}=(0,o.A)(),{baseUrl:t,url:n}=e,r=e.future.experimental_router,s=(0,a.useCallback)(((e,a)=>function(e){let{siteUrl:t,baseUrl:n,url:a,options:{forcePrependBaseUrl:o=!1,absolute:r=!1}={},router:s}=e;if(!a||a.startsWith("#")||(0,i.z)(a))return a;if("hash"===s)return a.startsWith("/")?`.${a}`:`./${a}`;if(o)return n+a.replace(/^\//,"");if(a===n.replace(/\/$/,""))return n;const c=a.startsWith(n)?a:n+a.replace(/^\//,"");return r?t+c:c}({siteUrl:n,baseUrl:t,url:e,options:a,router:r})),[n,t,r]);return{withBaseUrl:s}}function s(e,t){void 0===t&&(t={});const{withBaseUrl:n}=r();return n(e,t)}},5246:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});var a=n(6540);n(4848);const o=a.createContext({collectAnchor:()=>{},collectLink:()=>{}}),i=()=>(0,a.useContext)(o);function r(){return i()}},797:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var a=n(6540),o=n(6193);function i(){return(0,a.useContext)(o.o)}},9136:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var a=n(6540),o=n(4974);function i(){return(0,a.useContext)(o.o)}},372:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var a=n(6540);const o=n(1934).A.canUseDOM?a.useLayoutEffect:a.useEffect},9062:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var a=n(6540),o=n(5313);function i(){const e=a.useContext(o.o);if(!e)throw new Error("Unexpected: no Docusaurus route context found");return e}},3722:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});const a=e=>"object"==typeof e&&!!e&&Object.keys(e).length>0;function o(e){const t={};return function e(n,o){Object.entries(n).forEach((n=>{let[i,r]=n;const s=o?`${o}.${i}`:i;a(r)?e(r,s):t[s]=r}))}(e),t}},5313:(e,t,n)=>{"use strict";n.d(t,{W:()=>r,o:()=>i});var a=n(6540),o=n(4848);const i=a.createContext(null);function r(e){let{children:t,value:n}=e;const r=a.useContext(i),s=(0,a.useMemo)((()=>function(e){let{parent:t,value:n}=e;if(!t){if(!n)throw new Error("Unexpected: no Docusaurus route context found");if(!("plugin"in n))throw new Error("Unexpected: Docusaurus topmost route context has no `plugin` attribute");return n}const a={...t.data,...n?.data};return{plugin:t.plugin,data:a}}({parent:r,value:n})),[r,n]);return(0,o.jsx)(i.Provider,{value:s,children:t})}},6351:(e,t,n)=>{"use strict";n.d(t,{VQ:()=>f,g1:()=>b});var a=n(6540),o=n(6942),i=n(4332),r=n(3115),s=n(8749),c=n(6849),l=n(4848);const d=e=>`docs-preferred-version-${e}`,u={save:(e,t,n)=>{(0,s.Wf)(d(e),{persistence:t}).set(n)},read:(e,t)=>(0,s.Wf)(d(e),{persistence:t}).get(),clear:(e,t)=>{(0,s.Wf)(d(e),{persistence:t}).del()}},p=e=>Object.fromEntries(e.map((e=>[e,{preferredVersionName:null}])));const h=a.createContext(null);function y(){const e=(0,o.Gy)(),t=(0,r.p)().docs.versionPersistence,n=(0,a.useMemo)((()=>Object.keys(e)),[e]),[i,s]=(0,a.useState)((()=>p(n)));(0,a.useEffect)((()=>{s(function(e){let{pluginIds:t,versionPersistence:n,allDocsData:a}=e;function o(e){const t=u.read(e,n);return a[e].versions.some((e=>e.name===t))?{preferredVersionName:t}:(u.clear(e,n),{preferredVersionName:null})}return Object.fromEntries(t.map((e=>[e,o(e)])))}({allDocsData:e,versionPersistence:t,pluginIds:n}))}),[e,t,n]);return[i,(0,a.useMemo)((()=>({savePreferredVersion:function(e,n){u.save(e,t,n),s((t=>({...t,[e]:{preferredVersionName:n}})))}})),[t])]}function g(e){let{children:t}=e;const n=y();return(0,l.jsx)(h.Provider,{value:n,children:t})}function f(e){let{children:t}=e;return(0,l.jsx)(g,{children:t})}function m(){const e=(0,a.useContext)(h);if(!e)throw new c.dV("DocsPreferredVersionContextProvider");return e}function b(e){void 0===e&&(e=i.W);const t=(0,o.ht)(e),[n,r]=m(),{preferredVersionName:s}=n[e];return{preferredVersion:t.versions.find((e=>e.name===s))??null,savePreferredVersionName:(0,a.useCallback)((t=>{r.savePreferredVersion(e,t)}),[r,e])}}},2306:(e,t,n)=>{"use strict";n.d(t,{V:()=>c,t:()=>l});var a=n(6540),o=n(6849),i=n(4848);const r=Symbol("EmptyContext"),s=a.createContext(r);function c(e){let{children:t,name:n,items:o}=e;const r=(0,a.useMemo)((()=>n&&o?{name:n,items:o}:null),[n,o]);return(0,i.jsx)(s.Provider,{value:r,children:t})}function l(){const e=(0,a.useContext)(s);if(e===r)throw new o.dV("DocsSidebarProvider");return e}},3751:(e,t,n)=>{"use strict";n.d(t,{$S:()=>y,B5:()=>x,Nr:()=>h,OF:()=>P,QB:()=>k,Vd:()=>S,Y:()=>_,cC:()=>p,d1:()=>A,fW:()=>w,w8:()=>m});var a=n(6540),o=n(6347),i=n(2831),r=n(6942),s=n(214),c=n(1861),l=n(6351),d=n(1858),u=n(2306);function p(e){const t=(0,d.r)();if(!e)return;const n=t.docs[e];if(!n)throw new Error(`no version doc found by id=${e}`);return n}function h(e){return"link"!==e.type||e.unlisted?"category"===e.type?function(e){if(e.href&&!e.linkUnlisted)return e.href;for(const t of e.items){const e=h(t);if(e)return e}}(e):void 0:e.href}function y(){const{pathname:e}=(0,o.zy)(),t=(0,u.t)();if(!t)throw new Error("Unexpected: cant find current sidebar in context");const n=v({sidebarItems:t.items,pathname:e,onlyCategories:!0}).slice(-1)[0];if(!n)throw new Error(`${e} is not associated with a category. useCurrentSidebarCategory() should only be used on category index pages.`);return n}const g=(e,t)=>void 0!==e&&(0,s.ys)(e,t),f=(e,t)=>e.some((e=>m(e,t)));function m(e,t){return"link"===e.type?g(e.href,t):"category"===e.type&&(g(e.href,t)||f(e.items,t))}function b(e,t){switch(e.type){case"category":return m(e,t)||void 0!==e.href&&!e.linkUnlisted||e.items.some((e=>b(e,t)));case"link":return!e.unlisted||m(e,t);default:return!0}}function _(e,t){return(0,a.useMemo)((()=>e.filter((e=>b(e,t)))),[e,t])}function v(e){let{sidebarItems:t,pathname:n,onlyCategories:a=!1}=e;const o=[];return function e(t){for(const i of t)if("category"===i.type&&((0,s.ys)(i.href,n)||e(i.items))||"link"===i.type&&(0,s.ys)(i.href,n)){return a&&"category"!==i.type||o.unshift(i),!0}return!1}(t),o}function P(){const e=(0,u.t)(),{pathname:t}=(0,o.zy)(),n=(0,r.vT)()?.pluginData.breadcrumbs;return!1!==n&&e?v({sidebarItems:e.items,pathname:t}):null}function S(e){const{activeVersion:t}=(0,r.zK)(e),{preferredVersion:n}=(0,l.g1)(e),o=(0,r.r7)(e);return(0,a.useMemo)((()=>(0,c.sb)([t,n,o].filter(Boolean))),[t,n,o])}function w(e,t){const n=S(t);return(0,a.useMemo)((()=>{const t=n.flatMap((e=>e.sidebars?Object.entries(e.sidebars):[])),a=t.find((t=>t[0]===e));if(!a)throw new Error(`Can't find any sidebar with id "${e}" in version${n.length>1?"s":""} ${n.map((e=>e.name)).join(", ")}".\nAvailable sidebar ids are:\n- ${t.map((e=>e[0])).join("\n- ")}`);return a[1]}),[e,n])}function k(e,t){const n=S(t);return(0,a.useMemo)((()=>{const t=n.flatMap((e=>e.docs)),a=t.find((t=>t.id===e));if(!a){if(n.flatMap((e=>e.draftIds)).includes(e))return null;throw new Error(`Couldn't find any doc with id "${e}" in version${n.length>1?"s":""} "${n.map((e=>e.name)).join(", ")}".\nAvailable doc ids are:\n- ${(0,c.sb)(t.map((e=>e.id))).join("\n- ")}`)}return a}),[e,n])}function x(e){let{route:t}=e;const n=(0,o.zy)(),a=(0,d.r)(),r=t.routes,s=r.find((e=>(0,o.B6)(n.pathname,e)));if(!s)return null;const c=s.sidebar,l=c?a.docsSidebars[c]:void 0;return{docElement:(0,i.v)(r),sidebarName:c,sidebarItems:l}}function A(e){return e.filter((e=>!("category"===e.type||"link"===e.type)||!!h(e)))}},1858:(e,t,n)=>{"use strict";n.d(t,{n:()=>s,r:()=>c});var a=n(6540),o=n(6849),i=n(4848);const r=a.createContext(null);function s(e){let{children:t,version:n}=e;return(0,i.jsx)(r.Provider,{value:n,children:t})}function c(){const e=(0,a.useContext)(r);if(null===e)throw new o.dV("DocsVersionProvider");return e}},6942:(e,t,n)=>{"use strict";n.d(t,{zK:()=>g,vT:()=>p,Gy:()=>d,HW:()=>f,ht:()=>u,r7:()=>y,jh:()=>h});var a=n(6347),o=n(797),i=n(4332);function r(e,t){void 0===t&&(t={});const n=function(){const{globalData:e}=(0,o.A)();return e}()[e];if(!n&&t.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin.`);return n}const s=e=>e.versions.find((e=>e.isLast));function c(e,t){const n=function(e,t){return[...e.versions].sort(((e,t)=>e.path===t.path?0:e.path.includes(t.path)?-1:t.path.includes(e.path)?1:0)).find((e=>!!(0,a.B6)(t,{path:e.path,exact:!1,strict:!1})))}(e,t),o=n?.docs.find((e=>!!(0,a.B6)(t,{path:e.path,exact:!0,strict:!1})));return{activeVersion:n,activeDoc:o,alternateDocVersions:o?function(t){const n={};return e.versions.forEach((e=>{e.docs.forEach((a=>{a.id===t&&(n[e.name]=a)}))})),n}(o.id):{}}}const l={},d=()=>r("docusaurus-plugin-content-docs")??l,u=e=>{try{return function(e,t,n){void 0===t&&(t=i.W),void 0===n&&(n={});const a=r(e),o=a?.[t];if(!o&&n.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin with id "${t}".`);return o}("docusaurus-plugin-content-docs",e,{failfast:!0})}catch(t){throw new Error("You are using a feature of the Docusaurus docs plugin, but this plugin does not seem to be enabled"+("Default"===e?"":` (pluginId=${e}`),{cause:t})}};function p(e){void 0===e&&(e={});const t=d(),{pathname:n}=(0,a.zy)();return function(e,t,n){void 0===n&&(n={});const o=Object.entries(e).sort(((e,t)=>t[1].path.localeCompare(e[1].path))).find((e=>{let[,n]=e;return!!(0,a.B6)(t,{path:n.path,exact:!1,strict:!1})})),i=o?{pluginId:o[0],pluginData:o[1]}:void 0;if(!i&&n.failfast)throw new Error(`Can't find active docs plugin for "${t}" pathname, while it was expected to be found. Maybe you tried to use a docs feature that can only be used on a docs-related page? Existing docs plugin paths are: ${Object.values(e).map((e=>e.path)).join(", ")}`);return i}(t,n,e)}function h(e){return u(e).versions}function y(e){const t=u(e);return s(t)}function g(e){const t=u(e),{pathname:n}=(0,a.zy)();return c(t,n)}function f(e){const t=u(e),{pathname:n}=(0,a.zy)();return function(e,t){const n=s(e);return{latestDocSuggestion:c(e,t).alternateDocVersions[n.name],latestVersionSuggestion:n}}(t,n)}},8867:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>i});var a=n(5947),o=n.n(a);o().configure({showSpinner:!1});const i={onRouteUpdate(e){let{location:t,previousLocation:n}=e;if(n&&t.pathname!==n.pathname){const e=window.setTimeout((()=>{o().start()}),200);return()=>window.clearTimeout(e)}},onRouteDidUpdate(){o().done()}}},7264:(e,t,n)=>{"use strict";var a=n(1765),o=n(4784);!function(e){const{themeConfig:{prism:t}}=o.default,{additionalLanguages:a}=t,i=globalThis.Prism;globalThis.Prism=e,a.forEach((e=>{"php"===e&&n(9700),n(8692)(`./prism-${e}`)})),delete globalThis.Prism,void 0!==i&&(globalThis.Prism=e)}(a.My)},9303:(e,t,n)=>{"use strict";n.d(t,{A:()=>d});n(6540);var a=n(4164),o=n(539),i=n(3115),r=n(6289),s=n(5246);const c={anchorWithStickyNavbar:"anchorWithStickyNavbar_LWe7",anchorWithHideOnScrollNavbar:"anchorWithHideOnScrollNavbar_WYt5"};var l=n(4848);function d(e){let{as:t,id:n,...d}=e;const u=(0,s.A)(),{navbar:{hideOnScroll:p}}=(0,i.p)();if("h1"===t||!n)return(0,l.jsx)(t,{...d,id:void 0});u.collectAnchor(n);const h=(0,o.T)({id:"theme.common.headingLinkTitle",message:"Direct link to {heading}",description:"Title for link to heading"},{heading:"string"==typeof d.children?d.children:n});return(0,l.jsxs)(t,{...d,className:(0,a.A)("anchor",p?c.anchorWithHideOnScrollNavbar:c.anchorWithStickyNavbar,d.className),id:n,children:[d.children,(0,l.jsx)(r.A,{className:"hash-link",to:`#${n}`,"aria-label":h,title:h,children:"\u200b"})]})}},5891:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});n(6540);const a={iconExternalLink:"iconExternalLink_nPIU"};var o=n(4848);function i(e){let{width:t=13.5,height:n=13.5}=e;return(0,o.jsx)("svg",{width:t,height:n,"aria-hidden":"true",viewBox:"0 0 24 24",className:a.iconExternalLink,children:(0,o.jsx)("path",{fill:"currentColor",d:"M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"})})}},1410:(e,t,n)=>{"use strict";n.d(t,{A:()=>ht});var a=n(6540),o=n(4164),i=n(4023),r=n(1082),s=n(6347),c=n(539),l=n(7685),d=n(4848);const u="__docusaurus_skipToContent_fallback";function p(e){e.setAttribute("tabindex","-1"),e.focus(),e.removeAttribute("tabindex")}function h(){const e=(0,a.useRef)(null),{action:t}=(0,s.W6)(),n=(0,a.useCallback)((e=>{e.preventDefault();const t=document.querySelector("main:first-of-type")??document.getElementById(u);t&&p(t)}),[]);return(0,l.$)((n=>{let{location:a}=n;e.current&&!a.hash&&"PUSH"===t&&p(e.current)})),{containerRef:e,onClick:n}}const y=(0,c.T)({id:"theme.common.skipToMainContent",description:"The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation",message:"Skip to main content"});function g(e){const t=e.children??y,{containerRef:n,onClick:a}=h();return(0,d.jsx)("div",{ref:n,role:"region","aria-label":y,children:(0,d.jsx)("a",{...e,href:`#${u}`,onClick:a,children:t})})}var f=n(204),m=n(7788);const b={skipToContent:"skipToContent_fXgn"};function _(){return(0,d.jsx)(g,{className:b.skipToContent})}var v=n(3115),P=n(3380);function S(e){let{width:t=21,height:n=21,color:a="currentColor",strokeWidth:o=1.2,className:i,...r}=e;return(0,d.jsx)("svg",{viewBox:"0 0 15 15",width:t,height:n,...r,children:(0,d.jsx)("g",{stroke:a,strokeWidth:o,children:(0,d.jsx)("path",{d:"M.75.75l13.5 13.5M14.25.75L.75 14.25"})})})}const w={closeButton:"closeButton_CVFx"};function k(e){return(0,d.jsx)("button",{type:"button","aria-label":(0,c.T)({id:"theme.AnnouncementBar.closeButtonAriaLabel",message:"Close",description:"The ARIA label for close button of announcement bar"}),...e,className:(0,o.A)("clean-btn close",w.closeButton,e.className),children:(0,d.jsx)(S,{width:14,height:14,strokeWidth:3.1})})}const x={content:"content_knG7"};function A(e){const{announcementBar:t}=(0,v.p)(),{content:n}=t;return(0,d.jsx)("div",{...e,className:(0,o.A)(x.content,e.className),dangerouslySetInnerHTML:{__html:n}})}const E={announcementBar:"announcementBar_mb4j",announcementBarPlaceholder:"announcementBarPlaceholder_vyr4",announcementBarClose:"announcementBarClose_gvF7",announcementBarContent:"announcementBarContent_xLdY"};function T(){const{announcementBar:e}=(0,v.p)(),{isActive:t,close:n}=(0,P.M)();if(!t)return null;const{backgroundColor:a,textColor:o,isCloseable:i}=e;return(0,d.jsxs)("div",{className:E.announcementBar,style:{backgroundColor:a,color:o},role:"banner",children:[i&&(0,d.jsx)("div",{className:E.announcementBarPlaceholder}),(0,d.jsx)(A,{className:E.announcementBarContent}),i&&(0,d.jsx)(k,{onClick:n,className:E.announcementBarClose})]})}var C=n(4635),D=n(5627);var O=n(6849),F=n(3065);const R=a.createContext(null);function N(e){let{children:t}=e;const n=function(){const e=(0,C.M)(),t=(0,F.YL)(),[n,o]=(0,a.useState)(!1),i=null!==t.component,r=(0,O.ZC)(i);return(0,a.useEffect)((()=>{i&&!r&&o(!0)}),[i,r]),(0,a.useEffect)((()=>{i?e.shown||o(!0):o(!1)}),[e.shown,i]),(0,a.useMemo)((()=>[n,o]),[n])}();return(0,d.jsx)(R.Provider,{value:n,children:t})}function j(e){if(e.component){const t=e.component;return(0,d.jsx)(t,{...e.props})}}function M(){const e=(0,a.useContext)(R);if(!e)throw new O.dV("NavbarSecondaryMenuDisplayProvider");const[t,n]=e,o=(0,a.useCallback)((()=>n(!1)),[n]),i=(0,F.YL)();return(0,a.useMemo)((()=>({shown:t,hide:o,content:j(i)})),[o,i,t])}function L(e){let{header:t,primaryMenu:n,secondaryMenu:a}=e;const{shown:i}=M();return(0,d.jsxs)("div",{className:"navbar-sidebar",children:[t,(0,d.jsxs)("div",{className:(0,o.A)("navbar-sidebar__items",{"navbar-sidebar__items--show-secondary":i}),children:[(0,d.jsx)("div",{className:"navbar-sidebar__item menu",children:n}),(0,d.jsx)("div",{className:"navbar-sidebar__item menu",children:a})]})]})}var I=n(8532),B=n(9136);function z(e){return(0,d.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,d.jsx)("path",{fill:"currentColor",d:"M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"})})}function U(e){return(0,d.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,d.jsx)("path",{fill:"currentColor",d:"M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"})})}const $={toggle:"toggle_vylO",toggleButton:"toggleButton_gllP",darkToggleIcon:"darkToggleIcon_wfgR",lightToggleIcon:"lightToggleIcon_pyhR",toggleButtonDisabled:"toggleButtonDisabled_aARS"};function q(e){let{className:t,buttonClassName:n,value:a,onChange:i}=e;const r=(0,B.A)(),s=(0,c.T)({message:"Switch between dark and light mode (currently {mode})",id:"theme.colorToggle.ariaLabel",description:"The ARIA label for the navbar color mode toggle"},{mode:"dark"===a?(0,c.T)({message:"dark mode",id:"theme.colorToggle.ariaLabel.mode.dark",description:"The name for the dark color mode"}):(0,c.T)({message:"light mode",id:"theme.colorToggle.ariaLabel.mode.light",description:"The name for the light color mode"})});return(0,d.jsx)("div",{className:(0,o.A)($.toggle,t),children:(0,d.jsxs)("button",{className:(0,o.A)("clean-btn",$.toggleButton,!r&&$.toggleButtonDisabled,n),type:"button",onClick:()=>i("dark"===a?"light":"dark"),disabled:!r,title:s,"aria-label":s,"aria-live":"polite","aria-pressed":"dark"===a?"true":"false",children:[(0,d.jsx)(z,{className:(0,o.A)($.toggleIcon,$.lightToggleIcon)}),(0,d.jsx)(U,{className:(0,o.A)($.toggleIcon,$.darkToggleIcon)})]})})}const V=a.memo(q),H={darkNavbarColorModeToggle:"darkNavbarColorModeToggle_X3D1"};function G(e){let{className:t}=e;const n=(0,v.p)().navbar.style,a=(0,v.p)().colorMode.disableSwitch,{colorMode:o,setColorMode:i}=(0,I.G)();return a?null:(0,d.jsx)(V,{className:t,buttonClassName:"dark"===n?H.darkNavbarColorModeToggle:void 0,value:o,onChange:i})}var W=n(2862);function K(){return(0,d.jsx)(W.A,{className:"navbar__brand",imageClassName:"navbar__logo",titleClassName:"navbar__title text--truncate"})}function Q(){const e=(0,C.M)();return(0,d.jsx)("button",{type:"button","aria-label":(0,c.T)({id:"theme.docs.sidebar.closeSidebarButtonAriaLabel",message:"Close navigation bar",description:"The ARIA label for close button of mobile sidebar"}),className:"clean-btn navbar-sidebar__close",onClick:()=>e.toggle(),children:(0,d.jsx)(S,{color:"var(--ifm-color-emphasis-600)"})})}function Y(){return(0,d.jsxs)("div",{className:"navbar-sidebar__brand",children:[(0,d.jsx)(K,{}),(0,d.jsx)(G,{className:"margin-right--md"}),(0,d.jsx)(Q,{})]})}var X=n(6289),J=n(9030),Z=n(2887);function ee(e,t){return void 0!==e&&void 0!==t&&new RegExp(e,"gi").test(t)}var te=n(5891);function ne(e){let{activeBasePath:t,activeBaseRegex:n,to:a,href:o,label:i,html:r,isDropdownLink:s,prependBaseUrlToHref:c,...l}=e;const u=(0,J.Ay)(a),p=(0,J.Ay)(t),h=(0,J.Ay)(o,{forcePrependBaseUrl:!0}),y=i&&o&&!(0,Z.A)(o),g=r?{dangerouslySetInnerHTML:{__html:r}}:{children:(0,d.jsxs)(d.Fragment,{children:[i,y&&(0,d.jsx)(te.A,{...s&&{width:12,height:12}})]})};return o?(0,d.jsx)(X.A,{href:c?h:o,...l,...g}):(0,d.jsx)(X.A,{to:u,isNavLink:!0,...(t||n)&&{isActive:(e,t)=>n?ee(n,t.pathname):t.pathname.startsWith(p)},...l,...g})}function ae(e){let{className:t,isDropdownItem:n=!1,...a}=e;const i=(0,d.jsx)(ne,{className:(0,o.A)(n?"dropdown__link":"navbar__item navbar__link",t),isDropdownLink:n,...a});return n?(0,d.jsx)("li",{children:i}):i}function oe(e){let{className:t,isDropdownItem:n,...a}=e;return(0,d.jsx)("li",{className:"menu__list-item",children:(0,d.jsx)(ne,{className:(0,o.A)("menu__link",t),...a})})}function ie(e){let{mobile:t=!1,position:n,...a}=e;const o=t?oe:ae;return(0,d.jsx)(o,{...a,activeClassName:a.activeClassName??(t?"menu__link--active":"navbar__link--active")})}var re=n(3535),se=n(214),ce=n(797);const le="dropdownNavbarItemMobile_S0Fm";function de(e,t){return e.some((e=>function(e,t){return!!(0,se.ys)(e.to,t)||!!ee(e.activeBaseRegex,t)||!(!e.activeBasePath||!t.startsWith(e.activeBasePath))}(e,t)))}function ue(e){let{items:t,position:n,className:i,onClick:r,...s}=e;const c=(0,a.useRef)(null),[l,u]=(0,a.useState)(!1);return(0,a.useEffect)((()=>{const e=e=>{c.current&&!c.current.contains(e.target)&&u(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),document.addEventListener("focusin",e),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),document.removeEventListener("focusin",e)}}),[c]),(0,d.jsxs)("div",{ref:c,className:(0,o.A)("navbar__item","dropdown","dropdown--hoverable",{"dropdown--right":"right"===n,"dropdown--show":l}),children:[(0,d.jsx)(ne,{"aria-haspopup":"true","aria-expanded":l,role:"button",href:s.to?void 0:"#",className:(0,o.A)("navbar__link",i),...s,onClick:s.to?void 0:e=>e.preventDefault(),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),u(!l))},children:s.children??s.label}),(0,d.jsx)("ul",{className:"dropdown__menu",children:t.map(((e,t)=>(0,a.createElement)(xe,{isDropdownItem:!0,activeClassName:"dropdown__link--active",...e,key:t})))})]})}function pe(e){let{items:t,className:n,position:i,onClick:r,...c}=e;const l=function(){const{siteConfig:{baseUrl:e}}=(0,ce.A)(),{pathname:t}=(0,s.zy)();return t.replace(e,"/")}(),u=de(t,l),{collapsed:p,toggleCollapsed:h,setCollapsed:y}=(0,re.u)({initialState:()=>!u});return(0,a.useEffect)((()=>{u&&y(!u)}),[l,u,y]),(0,d.jsxs)("li",{className:(0,o.A)("menu__list-item",{"menu__list-item--collapsed":p}),children:[(0,d.jsx)(ne,{role:"button",className:(0,o.A)(le,"menu__link menu__link--sublist menu__link--sublist-caret",n),...c,onClick:e=>{e.preventDefault(),h()},children:c.children??c.label}),(0,d.jsx)(re.N,{lazy:!0,as:"ul",className:"menu__list",collapsed:p,children:t.map(((e,t)=>(0,a.createElement)(xe,{mobile:!0,isDropdownItem:!0,onClick:r,activeClassName:"menu__link--active",...e,key:t})))})]})}function he(e){let{mobile:t=!1,...n}=e;const a=t?pe:ue;return(0,d.jsx)(a,{...n})}var ye=n(7976);function ge(e){let{width:t=20,height:n=20,...a}=e;return(0,d.jsx)("svg",{viewBox:"0 0 24 24",width:t,height:n,"aria-hidden":!0,...a,children:(0,d.jsx)("path",{fill:"currentColor",d:"M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"})})}const fe="iconLanguage_nlXk";var me=n(205);const be={navbarSearchContainer:"navbarSearchContainer_Bca1"};function _e(e){let{children:t,className:n}=e;return(0,d.jsx)("div",{className:(0,o.A)(n,be.navbarSearchContainer),children:t})}var ve=n(6942),Pe=n(3751);var Se=n(6351);function we(e,t){return t.alternateDocVersions[e.name]??function(e){return e.docs.find((t=>t.id===e.mainDocId))}(e)}const ke={default:ie,localeDropdown:function(e){let{mobile:t,dropdownItemsBefore:n,dropdownItemsAfter:a,queryString:o="",...i}=e;const{i18n:{currentLocale:r,locales:l,localeConfigs:u}}=(0,ce.A)(),p=(0,ye.o)(),{search:h,hash:y}=(0,s.zy)(),g=[...n,...l.map((e=>{const n=`${`pathname://${p.createUrl({locale:e,fullyQualified:!1})}`}${h}${y}${o}`;return{label:u[e].label,lang:u[e].htmlLang,to:n,target:"_self",autoAddBaseUrl:!1,className:e===r?t?"menu__link--active":"dropdown__link--active":""}})),...a],f=t?(0,c.T)({message:"Languages",id:"theme.navbar.mobileLanguageDropdown.label",description:"The label for the mobile language switcher dropdown"}):u[r].label;return(0,d.jsx)(he,{...i,mobile:t,label:(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(ge,{className:fe}),f]}),items:g})},search:function(e){let{mobile:t,className:n}=e;return t?null:(0,d.jsx)(_e,{className:n,children:(0,d.jsx)(me.A,{})})},dropdown:he,html:function(e){let{value:t,className:n,mobile:a=!1,isDropdownItem:i=!1}=e;const r=i?"li":"div";return(0,d.jsx)(r,{className:(0,o.A)({navbar__item:!a&&!i,"menu__list-item":a},n),dangerouslySetInnerHTML:{__html:t}})},doc:function(e){let{docId:t,label:n,docsPluginId:a,...o}=e;const{activeDoc:i}=(0,ve.zK)(a),r=(0,Pe.QB)(t,a),s=i?.path===r?.path;return null===r||r.unlisted&&!s?null:(0,d.jsx)(ie,{exact:!0,...o,isActive:()=>s||!!i?.sidebar&&i.sidebar===r.sidebar,label:n??r.id,to:r.path})},docSidebar:function(e){let{sidebarId:t,label:n,docsPluginId:a,...o}=e;const{activeDoc:i}=(0,ve.zK)(a),r=(0,Pe.fW)(t,a).link;if(!r)throw new Error(`DocSidebarNavbarItem: Sidebar with ID "${t}" doesn't have anything to be linked to.`);return(0,d.jsx)(ie,{exact:!0,...o,isActive:()=>i?.sidebar===t,label:n??r.label,to:r.path})},docsVersion:function(e){let{label:t,to:n,docsPluginId:a,...o}=e;const i=(0,Pe.Vd)(a)[0],r=t??i.label,s=n??(e=>e.docs.find((t=>t.id===e.mainDocId)))(i).path;return(0,d.jsx)(ie,{...o,label:r,to:s})},docsVersionDropdown:function(e){let{mobile:t,docsPluginId:n,dropdownActiveClassDisabled:a,dropdownItemsBefore:o,dropdownItemsAfter:i,...r}=e;const{search:l,hash:u}=(0,s.zy)(),p=(0,ve.zK)(n),h=(0,ve.jh)(n),{savePreferredVersionName:y}=(0,Se.g1)(n),g=[...o,...h.map((function(e){const t=we(e,p);return{label:e.label,to:`${t.path}${l}${u}`,isActive:()=>e===p.activeVersion,onClick:()=>y(e.name)}})),...i],f=(0,Pe.Vd)(n)[0],m=t&&g.length>1?(0,c.T)({id:"theme.navbar.mobileVersionsDropdown.label",message:"Versions",description:"The label for the navbar versions dropdown on mobile view"}):f.label,b=t&&g.length>1?void 0:we(f,p).path;return g.length<=1?(0,d.jsx)(ie,{...r,mobile:t,label:m,to:b,isActive:a?()=>!1:void 0}):(0,d.jsx)(he,{...r,mobile:t,label:m,to:b,items:g,isActive:a?()=>!1:void 0})}};function xe(e){let{type:t,...n}=e;const a=function(e,t){return e&&"default"!==e?e:"items"in t?"dropdown":"default"}(t,n),o=ke[a];if(!o)throw new Error(`No NavbarItem component found for type "${t}".`);return(0,d.jsx)(o,{...n})}function Ae(){const e=(0,C.M)(),t=(0,v.p)().navbar.items;return(0,d.jsx)("ul",{className:"menu__list",children:t.map(((t,n)=>(0,a.createElement)(xe,{mobile:!0,...t,onClick:()=>e.toggle(),key:n})))})}function Ee(e){return(0,d.jsx)("button",{...e,type:"button",className:"clean-btn navbar-sidebar__back",children:(0,d.jsx)(c.A,{id:"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel",description:"The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)",children:"\u2190 Back to main menu"})})}function Te(){const e=0===(0,v.p)().navbar.items.length,t=M();return(0,d.jsxs)(d.Fragment,{children:[!e&&(0,d.jsx)(Ee,{onClick:()=>t.hide()}),t.content]})}function Ce(){const e=(0,C.M)();var t;return void 0===(t=e.shown)&&(t=!0),(0,a.useEffect)((()=>(document.body.style.overflow=t?"hidden":"visible",()=>{document.body.style.overflow="visible"})),[t]),e.shouldRender?(0,d.jsx)(L,{header:(0,d.jsx)(Y,{}),primaryMenu:(0,d.jsx)(Ae,{}),secondaryMenu:(0,d.jsx)(Te,{})}):null}const De={navbarHideable:"navbarHideable_m1mJ",navbarHidden:"navbarHidden_jGov"};function Oe(e){return(0,d.jsx)("div",{role:"presentation",...e,className:(0,o.A)("navbar-sidebar__backdrop",e.className)})}function Fe(e){let{children:t}=e;const{navbar:{hideOnScroll:n,style:i}}=(0,v.p)(),r=(0,C.M)(),{navbarRef:s,isNavbarVisible:u}=function(e){const[t,n]=(0,a.useState)(e),o=(0,a.useRef)(!1),i=(0,a.useRef)(0),r=(0,a.useCallback)((e=>{null!==e&&(i.current=e.getBoundingClientRect().height)}),[]);return(0,D.Mq)(((t,a)=>{let{scrollY:r}=t;if(!e)return;if(r=s?n(!1):r+l{if(!e)return;const a=t.location.hash;if(a?document.getElementById(a.substring(1)):void 0)return o.current=!0,void n(!1);n(!0)})),{navbarRef:r,isNavbarVisible:t}}(n);return(0,d.jsxs)("nav",{ref:s,"aria-label":(0,c.T)({id:"theme.NavBar.navAriaLabel",message:"Main",description:"The ARIA label for the main navigation"}),className:(0,o.A)("navbar","navbar--fixed-top",n&&[De.navbarHideable,!u&&De.navbarHidden],{"navbar--dark":"dark"===i,"navbar--primary":"primary"===i,"navbar-sidebar--show":r.shown}),children:[t,(0,d.jsx)(Oe,{onClick:r.toggle}),(0,d.jsx)(Ce,{})]})}var Re=n(99);const Ne={errorBoundaryError:"errorBoundaryError_a6uf",errorBoundaryFallback:"errorBoundaryFallback_VBag"};function je(e){return(0,d.jsx)("button",{type:"button",...e,children:(0,d.jsx)(c.A,{id:"theme.ErrorPageContent.tryAgain",description:"The label of the button to try again rendering when the React error boundary captures an error",children:"Try again"})})}function Me(e){let{error:t}=e;const n=(0,Re.rA)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,d.jsx)("p",{className:Ne.errorBoundaryError,children:n})}class Le extends a.Component{componentDidCatch(e,t){throw this.props.onError(e,t)}render(){return this.props.children}}const Ie="right";function Be(e){let{width:t=30,height:n=30,className:a,...o}=e;return(0,d.jsx)("svg",{className:a,width:t,height:n,viewBox:"0 0 30 30","aria-hidden":"true",...o,children:(0,d.jsx)("path",{stroke:"currentColor",strokeLinecap:"round",strokeMiterlimit:"10",strokeWidth:"2",d:"M4 7h22M4 15h22M4 23h22"})})}function ze(){const{toggle:e,shown:t}=(0,C.M)();return(0,d.jsx)("button",{onClick:e,"aria-label":(0,c.T)({id:"theme.docs.sidebar.toggleSidebarButtonAriaLabel",message:"Toggle navigation bar",description:"The ARIA label for hamburger menu button of mobile navigation"}),"aria-expanded":t,className:"navbar__toggle clean-btn",type:"button",children:(0,d.jsx)(Be,{})})}const Ue={colorModeToggle:"colorModeToggle_DEke"};function $e(e){let{items:t}=e;return(0,d.jsx)(d.Fragment,{children:t.map(((e,t)=>(0,d.jsx)(Le,{onError:t=>new Error(`A theme navbar item failed to render.\nPlease double-check the following navbar item (themeConfig.navbar.items) of your Docusaurus config:\n${JSON.stringify(e,null,2)}`,{cause:t}),children:(0,d.jsx)(xe,{...e})},t)))})}function qe(e){let{left:t,right:n}=e;return(0,d.jsxs)("div",{className:"navbar__inner",children:[(0,d.jsx)("div",{className:"navbar__items",children:t}),(0,d.jsx)("div",{className:"navbar__items navbar__items--right",children:n})]})}function Ve(){const e=(0,C.M)(),t=(0,v.p)().navbar.items,[n,a]=function(e){function t(e){return"left"===(e.position??Ie)}return[e.filter(t),e.filter((e=>!t(e)))]}(t),o=t.find((e=>"search"===e.type));return(0,d.jsx)(qe,{left:(0,d.jsxs)(d.Fragment,{children:[!e.disabled&&(0,d.jsx)(ze,{}),(0,d.jsx)(K,{}),(0,d.jsx)($e,{items:n})]}),right:(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)($e,{items:a}),(0,d.jsx)(G,{className:Ue.colorModeToggle}),!o&&(0,d.jsx)(_e,{children:(0,d.jsx)(me.A,{})})]})})}function He(){return(0,d.jsx)(Fe,{children:(0,d.jsx)(Ve,{})})}function Ge(e){let{item:t}=e;const{to:n,href:a,label:i,prependBaseUrlToHref:r,className:s,...c}=t,l=(0,J.Ay)(n),u=(0,J.Ay)(a,{forcePrependBaseUrl:!0});return(0,d.jsxs)(X.A,{className:(0,o.A)("footer__link-item",s),...a?{href:r?u:a}:{to:l},...c,children:[i,a&&!(0,Z.A)(a)&&(0,d.jsx)(te.A,{})]})}function We(e){let{item:t}=e;return t.html?(0,d.jsx)("li",{className:(0,o.A)("footer__item",t.className),dangerouslySetInnerHTML:{__html:t.html}}):(0,d.jsx)("li",{className:"footer__item",children:(0,d.jsx)(Ge,{item:t})},t.href??t.to)}function Ke(e){let{column:t}=e;return(0,d.jsxs)("div",{className:(0,o.A)("col footer__col",t.className),children:[(0,d.jsx)("div",{className:"footer__title",children:t.title}),(0,d.jsx)("ul",{className:"footer__items clean-list",children:t.items.map(((e,t)=>(0,d.jsx)(We,{item:e},t)))})]})}function Qe(e){let{columns:t}=e;return(0,d.jsx)("div",{className:"row footer__links",children:t.map(((e,t)=>(0,d.jsx)(Ke,{column:e},t)))})}function Ye(){return(0,d.jsx)("span",{className:"footer__link-separator",children:"\xb7"})}function Xe(e){let{item:t}=e;return t.html?(0,d.jsx)("span",{className:(0,o.A)("footer__link-item",t.className),dangerouslySetInnerHTML:{__html:t.html}}):(0,d.jsx)(Ge,{item:t})}function Je(e){let{links:t}=e;return(0,d.jsx)("div",{className:"footer__links text--center",children:(0,d.jsx)("div",{className:"footer__links",children:t.map(((e,n)=>(0,d.jsxs)(a.Fragment,{children:[(0,d.jsx)(Xe,{item:e}),t.length!==n+1&&(0,d.jsx)(Ye,{})]},n)))})})}function Ze(e){let{links:t}=e;return function(e){return"title"in e[0]}(t)?(0,d.jsx)(Qe,{columns:t}):(0,d.jsx)(Je,{links:t})}var et=n(9324);const tt="footerLogoLink_BH7S";function nt(e){let{logo:t}=e;const{withBaseUrl:n}=(0,J.hH)(),a={light:n(t.src),dark:n(t.srcDark??t.src)};return(0,d.jsx)(et.A,{className:(0,o.A)("footer__logo",t.className),alt:t.alt,sources:a,width:t.width,height:t.height,style:t.style})}function at(e){let{logo:t}=e;return t.href?(0,d.jsx)(X.A,{href:t.href,className:tt,target:t.target,children:(0,d.jsx)(nt,{logo:t})}):(0,d.jsx)(nt,{logo:t})}function ot(e){let{copyright:t}=e;return(0,d.jsx)("div",{className:"footer__copyright",dangerouslySetInnerHTML:{__html:t}})}function it(e){let{style:t,links:n,logo:a,copyright:i}=e;return(0,d.jsx)("footer",{className:(0,o.A)("footer",{"footer--dark":"dark"===t}),children:(0,d.jsxs)("div",{className:"container container-fluid",children:[n,(a||i)&&(0,d.jsxs)("div",{className:"footer__bottom text--center",children:[a&&(0,d.jsx)("div",{className:"margin-bottom--sm",children:a}),i]})]})})}function rt(){const{footer:e}=(0,v.p)();if(!e)return null;const{copyright:t,links:n,logo:a,style:o}=e;return(0,d.jsx)(it,{style:o,links:n&&n.length>0&&(0,d.jsx)(Ze,{links:n}),logo:a&&(0,d.jsx)(at,{logo:a}),copyright:t&&(0,d.jsx)(ot,{copyright:t})})}const st=a.memo(rt),ct=(0,O.fM)([I.a,P.o,D.Tv,Se.VQ,r.Jx,function(e){let{children:t}=e;return(0,d.jsx)(F.y_,{children:(0,d.jsx)(C.e,{children:(0,d.jsx)(N,{children:t})})})}]);function lt(e){let{children:t}=e;return(0,d.jsx)(ct,{children:t})}var dt=n(9303);function ut(e){let{error:t,tryAgain:n}=e;return(0,d.jsx)("main",{className:"container margin-vert--xl",children:(0,d.jsx)("div",{className:"row",children:(0,d.jsxs)("div",{className:"col col--6 col--offset-3",children:[(0,d.jsx)(dt.A,{as:"h1",className:"hero__title",children:(0,d.jsx)(c.A,{id:"theme.ErrorPageContent.title",description:"The title of the fallback page when the page crashed",children:"This page crashed."})}),(0,d.jsx)("div",{className:"margin-vert--lg",children:(0,d.jsx)(je,{onClick:n,className:"button button--primary shadow--lw"})}),(0,d.jsx)("hr",{}),(0,d.jsx)("div",{className:"margin-vert--md",children:(0,d.jsx)(Me,{error:t})})]})})})}const pt={mainWrapper:"mainWrapper_z2l0"};function ht(e){const{children:t,noFooter:n,wrapperClassName:a,title:s,description:c}=e;return(0,m.J)(),(0,d.jsxs)(lt,{children:[(0,d.jsx)(r.be,{title:s,description:c}),(0,d.jsx)(_,{}),(0,d.jsx)(T,{}),(0,d.jsx)(He,{}),(0,d.jsx)("div",{id:u,className:(0,o.A)(f.G.wrapper.main,pt.mainWrapper,a),children:(0,d.jsx)(i.A,{fallback:e=>(0,d.jsx)(ut,{...e}),children:t})}),!n&&(0,d.jsx)(st,{})]})}},2862:(e,t,n)=>{"use strict";n.d(t,{A:()=>d});n(6540);var a=n(6289),o=n(9030),i=n(797),r=n(3115),s=n(9324),c=n(4848);function l(e){let{logo:t,alt:n,imageClassName:a}=e;const i={light:(0,o.Ay)(t.src),dark:(0,o.Ay)(t.srcDark||t.src)},r=(0,c.jsx)(s.A,{className:t.className,sources:i,height:t.height,width:t.width,alt:n,style:t.style});return a?(0,c.jsx)("div",{className:a,children:r}):r}function d(e){const{siteConfig:{title:t}}=(0,i.A)(),{navbar:{title:n,logo:s}}=(0,r.p)(),{imageClassName:d,titleClassName:u,...p}=e,h=(0,o.Ay)(s?.href||"/"),y=n?"":t,g=s?.alt??y;return(0,c.jsxs)(a.A,{to:h,...p,...s?.target&&{target:s.target},children:[s&&(0,c.jsx)(l,{logo:s,alt:g,imageClassName:d}),null!=n&&(0,c.jsx)("b",{className:u,children:n})]})}},7220:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});n(6540);var a=n(7143),o=n(4848);function i(e){let{locale:t,version:n,tag:i}=e;const r=t;return(0,o.jsxs)(a.A,{children:[t&&(0,o.jsx)("meta",{name:"docusaurus_locale",content:t}),n&&(0,o.jsx)("meta",{name:"docusaurus_version",content:n}),i&&(0,o.jsx)("meta",{name:"docusaurus_tag",content:i}),r&&(0,o.jsx)("meta",{name:"docsearch:language",content:r}),n&&(0,o.jsx)("meta",{name:"docsearch:version",content:n}),i&&(0,o.jsx)("meta",{name:"docsearch:docusaurus_tag",content:i})]})}},9324:(e,t,n)=>{"use strict";n.d(t,{A:()=>d});var a=n(6540),o=n(4164),i=n(9136),r=n(8532);const s={themedComponent:"themedComponent_mlkZ","themedComponent--light":"themedComponent--light_NVdE","themedComponent--dark":"themedComponent--dark_xIcU"};var c=n(4848);function l(e){let{className:t,children:n}=e;const l=(0,i.A)(),{colorMode:d}=(0,r.G)();return(0,c.jsx)(c.Fragment,{children:(l?"dark"===d?["dark"]:["light"]:["light","dark"]).map((e=>{const i=n({theme:e,className:(0,o.A)(t,s.themedComponent,s[`themedComponent--${e}`])});return(0,c.jsx)(a.Fragment,{children:i},e)}))})}function d(e){const{sources:t,className:n,alt:a,...o}=e;return(0,c.jsx)(l,{className:n,children:e=>{let{theme:n,className:i}=e;return(0,c.jsx)("img",{src:t[n],alt:a,className:i,...o})}})}},3535:(e,t,n)=>{"use strict";n.d(t,{N:()=>m,u:()=>l});var a=n(6540),o=n(9136),i=n(372),r=n(4924),s=n(4848);const c="ease-in-out";function l(e){let{initialState:t}=e;const[n,o]=(0,a.useState)(t??!1),i=(0,a.useCallback)((()=>{o((e=>!e))}),[]);return{collapsed:n,setCollapsed:o,toggleCollapsed:i}}const d={display:"none",overflow:"hidden",height:"0px"},u={display:"block",overflow:"visible",height:"auto"};function p(e,t){const n=t?d:u;e.style.display=n.display,e.style.overflow=n.overflow,e.style.height=n.height}function h(e){let{collapsibleRef:t,collapsed:n,animation:o}=e;const i=(0,a.useRef)(!1);(0,a.useEffect)((()=>{const e=t.current;function a(){const t=e.scrollHeight,n=o?.duration??function(e){if((0,r.O)())return 1;const t=e/36;return Math.round(10*(4+15*t**.25+t/5))}(t);return{transition:`height ${n}ms ${o?.easing??c}`,height:`${t}px`}}function s(){const t=a();e.style.transition=t.transition,e.style.height=t.height}if(!i.current)return p(e,n),void(i.current=!0);return e.style.willChange="height",function(){const t=requestAnimationFrame((()=>{n?(s(),requestAnimationFrame((()=>{e.style.height=d.height,e.style.overflow=d.overflow}))):(e.style.display="block",requestAnimationFrame((()=>{s()})))}));return()=>cancelAnimationFrame(t)}()}),[t,n,o])}function y(e){let{collapsed:t,isBrowser:n}=e;if(!n)return t?d:u}function g(e){let{as:t="div",collapsed:n,children:i,animation:r,onCollapseTransitionEnd:c,className:l,disableSSRStyle:d}=e;const u=(0,o.A)(),g=(0,a.useRef)(null);return h({collapsibleRef:g,collapsed:n,animation:r}),(0,s.jsx)(t,{ref:g,style:d?void 0:y({collapsed:n,isBrowser:u}),onTransitionEnd:e=>{"height"===e.propertyName&&(p(g.current,n),c?.(n))},className:l,children:i})}function f(e){let{collapsed:t,...n}=e;const[o,r]=(0,a.useState)(!t),[c,l]=(0,a.useState)(t);return(0,i.A)((()=>{t||r(!0)}),[t]),(0,i.A)((()=>{o&&l(t)}),[o,t]),o?(0,s.jsx)(g,{...n,collapsed:c}):null}function m(e){let{lazy:t,...n}=e;const a=t?f:g;return(0,s.jsx)(a,{...n})}},3380:(e,t,n)=>{"use strict";n.d(t,{M:()=>g,o:()=>y});var a=n(6540),o=n(9136),i=n(8749),r=n(6849),s=n(3115),c=n(4848);const l=(0,i.Wf)("docusaurus.announcement.dismiss"),d=(0,i.Wf)("docusaurus.announcement.id"),u=()=>"true"===l.get(),p=e=>l.set(String(e)),h=a.createContext(null);function y(e){let{children:t}=e;const n=function(){const{announcementBar:e}=(0,s.p)(),t=(0,o.A)(),[n,i]=(0,a.useState)((()=>!!t&&u()));(0,a.useEffect)((()=>{i(u())}),[]);const r=(0,a.useCallback)((()=>{p(!0),i(!0)}),[]);return(0,a.useEffect)((()=>{if(!e)return;const{id:t}=e;let n=d.get();"annoucement-bar"===n&&(n="announcement-bar");const a=t!==n;d.set(t),a&&p(!1),!a&&u()||i(!1)}),[e]),(0,a.useMemo)((()=>({isActive:!!e&&!n,close:r})),[e,n,r])}();return(0,c.jsx)(h.Provider,{value:n,children:t})}function g(){const e=(0,a.useContext)(h);if(!e)throw new r.dV("AnnouncementBarProvider");return e}},8532:(e,t,n)=>{"use strict";n.d(t,{G:()=>m,a:()=>f});var a=n(6540),o=n(1934),i=n(6849),r=n(8749),s=n(3115),c=n(4848);const l=a.createContext(void 0),d="theme",u=(0,r.Wf)(d),p={light:"light",dark:"dark"},h=e=>e===p.dark?p.dark:p.light,y=e=>o.A.canUseDOM?h(document.documentElement.getAttribute("data-theme")):h(e),g=e=>{u.set(h(e))};function f(e){let{children:t}=e;const n=function(){const{colorMode:{defaultMode:e,disableSwitch:t,respectPrefersColorScheme:n}}=(0,s.p)(),[o,i]=(0,a.useState)(y(e));(0,a.useEffect)((()=>{t&&u.del()}),[t]);const r=(0,a.useCallback)((function(t,a){void 0===a&&(a={});const{persist:o=!0}=a;t?(i(t),o&&g(t)):(i(n?window.matchMedia("(prefers-color-scheme: dark)").matches?p.dark:p.light:e),u.del())}),[n,e]);(0,a.useEffect)((()=>{document.documentElement.setAttribute("data-theme",h(o))}),[o]),(0,a.useEffect)((()=>{if(t)return;const e=e=>{if(e.key!==d)return;const t=u.get();null!==t&&r(h(t))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)}),[t,r]);const c=(0,a.useRef)(!1);return(0,a.useEffect)((()=>{if(t&&!n)return;const e=window.matchMedia("(prefers-color-scheme: dark)"),a=()=>{window.matchMedia("print").matches||c.current?c.current=window.matchMedia("print").matches:r(null)};return e.addListener(a),()=>e.removeListener(a)}),[r,t,n]),(0,a.useMemo)((()=>({colorMode:o,setColorMode:r,get isDarkTheme(){return o===p.dark},setLightTheme(){r(p.light)},setDarkTheme(){r(p.dark)}})),[o,r])}();return(0,c.jsx)(l.Provider,{value:n,children:t})}function m(){const e=(0,a.useContext)(l);if(null==e)throw new i.dV("ColorModeProvider","Please see https://docusaurus.io/docs/api/themes/configuration#use-color-mode.");return e}},4635:(e,t,n)=>{"use strict";n.d(t,{e:()=>h,M:()=>y});var a=n(6540),o=n(3065),i=n(6682),r=n(6347),s=n(6849);function c(e){!function(e){const t=(0,r.W6)(),n=(0,s._q)(e);(0,a.useEffect)((()=>t.block(((e,t)=>n(e,t)))),[t,n])}(((t,n)=>{if("POP"===n)return e(t,n)}))}var l=n(3115),d=n(4848);const u=a.createContext(void 0);function p(){const e=function(){const e=(0,o.YL)(),{items:t}=(0,l.p)().navbar;return 0===t.length&&!e.component}(),t=(0,i.l)(),n=!e&&"mobile"===t,[r,s]=(0,a.useState)(!1);c((()=>{if(r)return s(!1),!1}));const d=(0,a.useCallback)((()=>{s((e=>!e))}),[]);return(0,a.useEffect)((()=>{"desktop"===t&&s(!1)}),[t]),(0,a.useMemo)((()=>({disabled:e,shouldRender:n,toggle:d,shown:r})),[e,n,d,r])}function h(e){let{children:t}=e;const n=p();return(0,d.jsx)(u.Provider,{value:n,children:t})}function y(){const e=a.useContext(u);if(void 0===e)throw new s.dV("NavbarMobileSidebarProvider");return e}},3065:(e,t,n)=>{"use strict";n.d(t,{GX:()=>l,YL:()=>c,y_:()=>s});var a=n(6540),o=n(6849),i=n(4848);const r=a.createContext(null);function s(e){let{children:t}=e;const n=(0,a.useState)({component:null,props:null});return(0,i.jsx)(r.Provider,{value:n,children:t})}function c(){const e=(0,a.useContext)(r);if(!e)throw new o.dV("NavbarSecondaryMenuContentProvider");return e[0]}function l(e){let{component:t,props:n}=e;const i=(0,a.useContext)(r);if(!i)throw new o.dV("NavbarSecondaryMenuContentProvider");const[,s]=i,c=(0,o.Be)(n);return(0,a.useEffect)((()=>{s({component:t,props:c})}),[s,t,c]),(0,a.useEffect)((()=>()=>s({component:null,props:null})),[s]),null}},7788:(e,t,n)=>{"use strict";n.d(t,{w:()=>o,J:()=>i});var a=n(6540);const o="navigation-with-keyboard";function i(){(0,a.useEffect)((()=>{function e(e){"keydown"===e.type&&"Tab"===e.key&&document.body.classList.add(o),"mousedown"===e.type&&document.body.classList.remove(o)}return document.addEventListener("keydown",e),document.addEventListener("mousedown",e),()=>{document.body.classList.remove(o),document.removeEventListener("keydown",e),document.removeEventListener("mousedown",e)}}),[])}},6682:(e,t,n)=>{"use strict";n.d(t,{l:()=>s});var a=n(6540),o=n(1934);const i={desktop:"desktop",mobile:"mobile",ssr:"ssr"},r=996;function s(e){let{desktopBreakpoint:t=r}=void 0===e?{}:e;const[n,s]=(0,a.useState)((()=>"ssr"));return(0,a.useEffect)((()=>{function e(){s(function(e){if(!o.A.canUseDOM)throw new Error("getWindowSize() should only be called after React hydration");return window.innerWidth>e?i.desktop:i.mobile}(t))}return e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}}),[t]),n}},204:(e,t,n)=>{"use strict";n.d(t,{G:()=>a});const a={page:{blogListPage:"blog-list-page",blogPostPage:"blog-post-page",blogTagsListPage:"blog-tags-list-page",blogTagPostListPage:"blog-tags-post-list-page",blogAuthorsListPage:"blog-authors-list-page",blogAuthorsPostsPage:"blog-authors-posts-page",docsDocPage:"docs-doc-page",docsTagsListPage:"docs-tags-list-page",docsTagDocListPage:"docs-tags-doc-list-page",mdxPage:"mdx-page"},wrapper:{main:"main-wrapper",blogPages:"blog-wrapper",docsPages:"docs-wrapper",mdxPages:"mdx-wrapper"},common:{editThisPage:"theme-edit-this-page",lastUpdated:"theme-last-updated",backToTopButton:"theme-back-to-top-button",codeBlock:"theme-code-block",admonition:"theme-admonition",unlistedBanner:"theme-unlisted-banner",draftBanner:"theme-draft-banner",admonitionType:e=>`theme-admonition-${e}`},layout:{},docs:{docVersionBanner:"theme-doc-version-banner",docVersionBadge:"theme-doc-version-badge",docBreadcrumbs:"theme-doc-breadcrumbs",docMarkdown:"theme-doc-markdown",docTocMobile:"theme-doc-toc-mobile",docTocDesktop:"theme-doc-toc-desktop",docFooter:"theme-doc-footer",docFooterTagsRow:"theme-doc-footer-tags-row",docFooterEditMetaRow:"theme-doc-footer-edit-meta-row",docSidebarContainer:"theme-doc-sidebar-container",docSidebarMenu:"theme-doc-sidebar-menu",docSidebarItemCategory:"theme-doc-sidebar-item-category",docSidebarItemLink:"theme-doc-sidebar-item-link",docSidebarItemCategoryLevel:e=>`theme-doc-sidebar-item-category-level-${e}`,docSidebarItemLinkLevel:e=>`theme-doc-sidebar-item-link-level-${e}`},blog:{blogFooterTagsRow:"theme-blog-footer-tags-row",blogFooterEditMetaRow:"theme-blog-footer-edit-meta-row"},pages:{pageFooterEditMetaRow:"theme-pages-footer-edit-meta-row"}}},4924:(e,t,n)=>{"use strict";function a(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}n.d(t,{O:()=>a})},1861:(e,t,n)=>{"use strict";function a(e){return Array.from(new Set(e))}function o(e,t){const n={};let a=0;for(const o of e){const e=t(o,a);n[e]??=[],n[e].push(o),a+=1}return n}n.d(t,{$z:()=>o,sb:()=>a})},1082:(e,t,n)=>{"use strict";n.d(t,{e3:()=>p,be:()=>d,Jx:()=>h});var a=n(6540),o=n(4164),i=n(7143),r=n(9062),s=n(9030),c=n(797);var l=n(4848);function d(e){let{title:t,description:n,keywords:a,image:o,children:r}=e;const d=function(e){const{siteConfig:t}=(0,c.A)(),{title:n,titleDelimiter:a}=t;return e?.trim().length?`${e.trim()} ${a} ${n}`:n}(t),{withBaseUrl:u}=(0,s.hH)(),p=o?u(o,{absolute:!0}):void 0;return(0,l.jsxs)(i.A,{children:[t&&(0,l.jsx)("title",{children:d}),t&&(0,l.jsx)("meta",{property:"og:title",content:d}),n&&(0,l.jsx)("meta",{name:"description",content:n}),n&&(0,l.jsx)("meta",{property:"og:description",content:n}),a&&(0,l.jsx)("meta",{name:"keywords",content:Array.isArray(a)?a.join(","):a}),p&&(0,l.jsx)("meta",{property:"og:image",content:p}),p&&(0,l.jsx)("meta",{name:"twitter:image",content:p}),r]})}const u=a.createContext(void 0);function p(e){let{className:t,children:n}=e;const r=a.useContext(u),s=(0,o.A)(r,t);return(0,l.jsxs)(u.Provider,{value:s,children:[(0,l.jsx)(i.A,{children:(0,l.jsx)("html",{className:s})}),n]})}function h(e){let{children:t}=e;const n=(0,r.A)(),a=`plugin-${n.plugin.name.replace(/docusaurus-(?:plugin|theme)-(?:content-)?/gi,"")}`;const i=`plugin-id-${n.plugin.id}`;return(0,l.jsx)(p,{className:(0,o.A)(a,i),children:t})}},6849:(e,t,n)=>{"use strict";n.d(t,{Be:()=>l,ZC:()=>s,_q:()=>r,dV:()=>c,fM:()=>d});var a=n(6540),o=n(372),i=n(4848);function r(e){const t=(0,a.useRef)(e);return(0,o.A)((()=>{t.current=e}),[e]),(0,a.useCallback)((function(){return t.current(...arguments)}),[])}function s(e){const t=(0,a.useRef)();return(0,o.A)((()=>{t.current=e})),t.current}class c extends Error{constructor(e,t){super(),this.name="ReactContextError",this.message=`Hook ${this.stack?.split("\n")[1]?.match(/at (?:\w+\.)?(?\w+)/)?.groups.name??""} is called outside the <${e}>. ${t??""}`}}function l(e){const t=Object.entries(e);return t.sort(((e,t)=>e[0].localeCompare(t[0]))),(0,a.useMemo)((()=>e),t.flat())}function d(e){return t=>{let{children:n}=t;return(0,i.jsx)(i.Fragment,{children:e.reduceRight(((e,t)=>(0,i.jsx)(t,{children:e})),n)})}}},214:(e,t,n)=>{"use strict";n.d(t,{Dt:()=>s,ys:()=>r});var a=n(6540),o=n(8912),i=n(797);function r(e,t){const n=e=>(!e||e.endsWith("/")?e:`${e}/`)?.toLowerCase();return n(e)===n(t)}function s(){const{baseUrl:e}=(0,i.A)().siteConfig;return(0,a.useMemo)((()=>function(e){let{baseUrl:t,routes:n}=e;function a(e){return e.path===t&&!0===e.exact}function o(e){return e.path===t&&!e.exact}return function e(t){if(0===t.length)return;return t.find(a)||e(t.filter(o).flatMap((e=>e.routes??[])))}(n)}({routes:o.A,baseUrl:e})),[e])}},5627:(e,t,n)=>{"use strict";n.d(t,{Mq:()=>p,Tv:()=>l,gk:()=>h});var a=n(6540),o=n(1934),i=n(9136),r=(n(372),n(6849)),s=n(4848);const c=a.createContext(void 0);function l(e){let{children:t}=e;const n=function(){const e=(0,a.useRef)(!0);return(0,a.useMemo)((()=>({scrollEventsEnabledRef:e,enableScrollEvents:()=>{e.current=!0},disableScrollEvents:()=>{e.current=!1}})),[])}();return(0,s.jsx)(c.Provider,{value:n,children:t})}function d(){const e=(0,a.useContext)(c);if(null==e)throw new r.dV("ScrollControllerProvider");return e}const u=()=>o.A.canUseDOM?{scrollX:window.pageXOffset,scrollY:window.pageYOffset}:null;function p(e,t){void 0===t&&(t=[]);const{scrollEventsEnabledRef:n}=d(),o=(0,a.useRef)(u()),i=(0,r._q)(e);(0,a.useEffect)((()=>{const e=()=>{if(!n.current)return;const e=u();i(e,o.current),o.current=e},t={passive:!0};return e(),window.addEventListener("scroll",e,t),()=>window.removeEventListener("scroll",e,t)}),[i,n,...t])}function h(){const e=(0,a.useRef)(null),t=(0,i.A)()&&"smooth"===getComputedStyle(document.documentElement).scrollBehavior;return{startScroll:n=>{e.current=t?function(e){return window.scrollTo({top:e,behavior:"smooth"}),()=>{}}(n):function(e){let t=null;const n=document.documentElement.scrollTop>e;return function a(){const o=document.documentElement.scrollTop;(n&&o>e||!n&&ot&&cancelAnimationFrame(t)}(n)},cancelScroll:()=>e.current?.()}}},8749:(e,t,n)=>{"use strict";n.d(t,{Wf:()=>l});n(6540);const a=JSON.parse('{"N":"localStorage","M":""}'),o=a.N;function i(e){let{key:t,oldValue:n,newValue:a,storage:o}=e;if(n===a)return;const i=document.createEvent("StorageEvent");i.initStorageEvent("storage",!1,!1,t,n,a,window.location.href,o),window.dispatchEvent(i)}function r(e){if(void 0===e&&(e=o),"undefined"==typeof window)throw new Error("Browser storage is not available on Node.js/Docusaurus SSR process.");if("none"===e)return null;try{return window[e]}catch(n){return t=n,s||(console.warn("Docusaurus browser storage is not available.\nPossible reasons: running Docusaurus in an iframe, in an incognito browser session, or using too strict browser privacy settings.",t),s=!0),null}var t}let s=!1;const c={get:()=>null,set:()=>{},del:()=>{},listen:()=>()=>{}};function l(e,t){const n=`${e}${a.M}`;if("undefined"==typeof window)return function(e){function t(){throw new Error(`Illegal storage API usage for storage key "${e}".\nDocusaurus storage APIs are not supposed to be called on the server-rendering process.\nPlease only call storage APIs in effects and event handlers.`)}return{get:t,set:t,del:t,listen:t}}(n);const o=r(t?.persistence);return null===o?c:{get:()=>{try{return o.getItem(n)}catch(e){return console.error(`Docusaurus storage error, can't get key=${n}`,e),null}},set:e=>{try{const t=o.getItem(n);o.setItem(n,e),i({key:n,oldValue:t,newValue:e,storage:o})}catch(t){console.error(`Docusaurus storage error, can't set ${n}=${e}`,t)}},del:()=>{try{const e=o.getItem(n);o.removeItem(n),i({key:n,oldValue:e,newValue:null,storage:o})}catch(e){console.error(`Docusaurus storage error, can't delete key=${n}`,e)}},listen:e=>{try{const t=t=>{t.storageArea===o&&t.key===n&&e(t)};return window.addEventListener("storage",t),()=>window.removeEventListener("storage",t)}catch(t){return console.error(`Docusaurus storage error, can't listen for changes of key=${n}`,t),()=>{}}}}}},7976:(e,t,n)=>{"use strict";n.d(t,{o:()=>r});var a=n(797),o=n(6347),i=n(99);function r(){const{siteConfig:{baseUrl:e,url:t,trailingSlash:n},i18n:{defaultLocale:r,currentLocale:s}}=(0,a.A)(),{pathname:c}=(0,o.zy)(),l=(0,i.Ks)(c,{trailingSlash:n,baseUrl:e}),d=s===r?e:e.replace(`/${s}/`,"/"),u=l.replace(e,"");return{createUrl:function(e){let{locale:n,fullyQualified:a}=e;return`${a?t:""}${function(e){return e===r?`${d}`:`${d}${e}/`}(n)}${u}`}}}},7685:(e,t,n)=>{"use strict";n.d(t,{$:()=>r});var a=n(6540),o=n(6347),i=n(6849);function r(e){const t=(0,o.zy)(),n=(0,i.ZC)(t),r=(0,i._q)(e);(0,a.useEffect)((()=>{n&&t!==n&&r({location:t,previousLocation:n})}),[r,t,n])}},3115:(e,t,n)=>{"use strict";n.d(t,{p:()=>o});var a=n(797);function o(){return(0,a.A)().siteConfig.themeConfig}},2562:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.addTrailingSlash=o,t.default=function(e,t){const{trailingSlash:n,baseUrl:a}=t;if(e.startsWith("#"))return e;if(void 0===n)return e;const[r]=e.split(/[#?]/),s="/"===r||r===a?r:(c=r,l=n,l?o(c):i(c));var c,l;return e.replace(r,s)},t.addLeadingSlash=function(e){return(0,a.addPrefix)(e,"/")},t.removeTrailingSlash=i;const a=n(7149);function o(e){return e.endsWith("/")?e:`${e}/`}function i(e){return(0,a.removeSuffix)(e,"/")}},2528:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=function e(t){if(t.cause)return[t,...e(t.cause)];return[t]}},99:(e,t,n)=>{"use strict";t.rA=t.Ks=t.LU=void 0;const a=n(1635);t.LU="__blog-post-container";var o=n(2562);Object.defineProperty(t,"Ks",{enumerable:!0,get:function(){return a.__importDefault(o).default}});var i=n(7149);var r=n(2528);Object.defineProperty(t,"rA",{enumerable:!0,get:function(){return r.getErrorCausalChain}})},7149:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.addPrefix=function(e,t){return e.startsWith(t)?e:`${t}${e}`},t.removeSuffix=function(e,t){if(""===t)return e;return e.endsWith(t)?e.slice(0,-t.length):e},t.addSuffix=function(e,t){return e.endsWith(t)?e:`${e}${t}`},t.removePrefix=function(e,t){return e.startsWith(t)?e.slice(t.length):e}},1513:(e,t,n)=>{"use strict";n.d(t,{zR:()=>v,TM:()=>A,yJ:()=>h,sC:()=>T,AO:()=>p});var a=n(8168);function o(e){return"/"===e.charAt(0)}function i(e,t){for(var n=t,a=n+1,o=e.length;a=0;p--){var h=r[p];"."===h?i(r,p):".."===h?(i(r,p),u++):u&&(i(r,p),u--)}if(!l)for(;u--;u)r.unshift("..");!l||""===r[0]||r[0]&&o(r[0])||r.unshift("");var y=r.join("/");return n&&"/"!==y.substr(-1)&&(y+="/"),y};var s=n(1561);function c(e){return"/"===e.charAt(0)?e:"/"+e}function l(e){return"/"===e.charAt(0)?e.substr(1):e}function d(e,t){return function(e,t){return 0===e.toLowerCase().indexOf(t.toLowerCase())&&-1!=="/?#".indexOf(e.charAt(t.length))}(e,t)?e.substr(t.length):e}function u(e){return"/"===e.charAt(e.length-1)?e.slice(0,-1):e}function p(e){var t=e.pathname,n=e.search,a=e.hash,o=t||"/";return n&&"?"!==n&&(o+="?"===n.charAt(0)?n:"?"+n),a&&"#"!==a&&(o+="#"===a.charAt(0)?a:"#"+a),o}function h(e,t,n,o){var i;"string"==typeof e?(i=function(e){var t=e||"/",n="",a="",o=t.indexOf("#");-1!==o&&(a=t.substr(o),t=t.substr(0,o));var i=t.indexOf("?");return-1!==i&&(n=t.substr(i),t=t.substr(0,i)),{pathname:t,search:"?"===n?"":n,hash:"#"===a?"":a}}(e),i.state=t):(void 0===(i=(0,a.A)({},e)).pathname&&(i.pathname=""),i.search?"?"!==i.search.charAt(0)&&(i.search="?"+i.search):i.search="",i.hash?"#"!==i.hash.charAt(0)&&(i.hash="#"+i.hash):i.hash="",void 0!==t&&void 0===i.state&&(i.state=t));try{i.pathname=decodeURI(i.pathname)}catch(s){throw s instanceof URIError?new URIError('Pathname "'+i.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):s}return n&&(i.key=n),o?i.pathname?"/"!==i.pathname.charAt(0)&&(i.pathname=r(i.pathname,o.pathname)):i.pathname=o.pathname:i.pathname||(i.pathname="/"),i}function y(){var e=null;var t=[];return{setPrompt:function(t){return e=t,function(){e===t&&(e=null)}},confirmTransitionTo:function(t,n,a,o){if(null!=e){var i="function"==typeof e?e(t,n):e;"string"==typeof i?"function"==typeof a?a(i,o):o(!0):o(!1!==i)}else o(!0)},appendListener:function(e){var n=!0;function a(){n&&e.apply(void 0,arguments)}return t.push(a),function(){n=!1,t=t.filter((function(e){return e!==a}))}},notifyListeners:function(){for(var e=arguments.length,n=new Array(e),a=0;at?n.splice(t,n.length-t,o):n.push(o),u({action:a,location:o,index:t,entries:n})}}))},replace:function(e,t){var a="REPLACE",o=h(e,t,g(),v.location);d.confirmTransitionTo(o,a,n,(function(e){e&&(v.entries[v.index]=o,u({action:a,location:o}))}))},go:_,goBack:function(){_(-1)},goForward:function(){_(1)},canGo:function(e){var t=v.index+e;return t>=0&&t{"use strict";var a=n(4363),o={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},i={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},r={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function c(e){return a.isMemo(e)?r:s[e.$$typeof]||o}s[a.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[a.Memo]=r;var l=Object.defineProperty,d=Object.getOwnPropertyNames,u=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,h=Object.getPrototypeOf,y=Object.prototype;e.exports=function e(t,n,a){if("string"!=typeof n){if(y){var o=h(n);o&&o!==y&&e(t,o,a)}var r=d(n);u&&(r=r.concat(u(n)));for(var s=c(t),g=c(n),f=0;f{"use strict";e.exports=function(e,t,n,a,o,i,r,s){if(!e){var c;if(void 0===t)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var l=[n,a,o,i,r,s],d=0;(c=new Error(t.replace(/%s/g,(function(){return l[d++]})))).name="Invariant Violation"}throw c.framesToPop=1,c}}},4634:e=>{e.exports=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)}},7378:(e,t,n)=>{"use strict";n.r(t)},2094:(e,t,n)=>{"use strict";n.r(t)},5947:function(e,t,n){var a,o;a=function(){var e,t,n={version:"0.2.0"},a=n.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'
'};function o(e,t,n){return en?n:e}function i(e){return 100*(-1+e)}function r(e,t,n){var o;return(o="translate3d"===a.positionUsing?{transform:"translate3d("+i(e)+"%,0,0)"}:"translate"===a.positionUsing?{transform:"translate("+i(e)+"%,0)"}:{"margin-left":i(e)+"%"}).transition="all "+t+"ms "+n,o}n.configure=function(e){var t,n;for(t in e)void 0!==(n=e[t])&&e.hasOwnProperty(t)&&(a[t]=n);return this},n.status=null,n.set=function(e){var t=n.isStarted();e=o(e,a.minimum,1),n.status=1===e?null:e;var i=n.render(!t),l=i.querySelector(a.barSelector),d=a.speed,u=a.easing;return i.offsetWidth,s((function(t){""===a.positionUsing&&(a.positionUsing=n.getPositioningCSS()),c(l,r(e,d,u)),1===e?(c(i,{transition:"none",opacity:1}),i.offsetWidth,setTimeout((function(){c(i,{transition:"all "+d+"ms linear",opacity:0}),setTimeout((function(){n.remove(),t()}),d)}),d)):setTimeout(t,d)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var e=function(){setTimeout((function(){n.status&&(n.trickle(),e())}),a.trickleSpeed)};return a.trickle&&e(),this},n.done=function(e){return e||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(e){var t=n.status;return t?("number"!=typeof e&&(e=(1-t)*o(Math.random()*t,.1,.95)),t=o(t+e,0,.994),n.set(t)):n.start()},n.trickle=function(){return n.inc(Math.random()*a.trickleRate)},e=0,t=0,n.promise=function(a){return a&&"resolved"!==a.state()?(0===t&&n.start(),e++,t++,a.always((function(){0==--t?(e=0,n.done()):n.set((e-t)/e)})),this):this},n.render=function(e){if(n.isRendered())return document.getElementById("nprogress");d(document.documentElement,"nprogress-busy");var t=document.createElement("div");t.id="nprogress",t.innerHTML=a.template;var o,r=t.querySelector(a.barSelector),s=e?"-100":i(n.status||0),l=document.querySelector(a.parent);return c(r,{transition:"all 0 linear",transform:"translate3d("+s+"%,0,0)"}),a.showSpinner||(o=t.querySelector(a.spinnerSelector))&&h(o),l!=document.body&&d(l,"nprogress-custom-parent"),l.appendChild(t),t},n.remove=function(){u(document.documentElement,"nprogress-busy"),u(document.querySelector(a.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&h(e)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var e=document.body.style,t="WebkitTransform"in e?"Webkit":"MozTransform"in e?"Moz":"msTransform"in e?"ms":"OTransform"in e?"O":"";return t+"Perspective"in e?"translate3d":t+"Transform"in e?"translate":"margin"};var s=function(){var e=[];function t(){var n=e.shift();n&&n(t)}return function(n){e.push(n),1==e.length&&t()}}(),c=function(){var e=["Webkit","O","Moz","ms"],t={};function n(e){return e.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(e,t){return t.toUpperCase()}))}function a(t){var n=document.body.style;if(t in n)return t;for(var a,o=e.length,i=t.charAt(0).toUpperCase()+t.slice(1);o--;)if((a=e[o]+i)in n)return a;return t}function o(e){return e=n(e),t[e]||(t[e]=a(e))}function i(e,t,n){t=o(t),e.style[t]=n}return function(e,t){var n,a,o=arguments;if(2==o.length)for(n in t)void 0!==(a=t[n])&&t.hasOwnProperty(n)&&i(e,n,a);else i(e,o[1],o[2])}}();function l(e,t){return("string"==typeof e?e:p(e)).indexOf(" "+t+" ")>=0}function d(e,t){var n=p(e),a=n+t;l(n,t)||(e.className=a.substring(1))}function u(e,t){var n,a=p(e);l(e,t)&&(n=a.replace(" "+t+" "," "),e.className=n.substring(1,n.length-1))}function p(e){return(" "+(e.className||"")+" ").replace(/\s+/gi," ")}function h(e){e&&e.parentNode&&e.parentNode.removeChild(e)}return n},void 0===(o="function"==typeof a?a.call(t,n,t,e):a)||(e.exports=o)},5302:(e,t,n)=>{var a=n(4634);e.exports=y,e.exports.parse=i,e.exports.compile=function(e,t){return c(i(e,t),t)},e.exports.tokensToFunction=c,e.exports.tokensToRegExp=h;var o=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function i(e,t){for(var n,a=[],i=0,s=0,c="",l=t&&t.delimiter||"/";null!=(n=o.exec(e));){var u=n[0],p=n[1],h=n.index;if(c+=e.slice(s,h),s=h+u.length,p)c+=p[1];else{var y=e[s],g=n[2],f=n[3],m=n[4],b=n[5],_=n[6],v=n[7];c&&(a.push(c),c="");var P=null!=g&&null!=y&&y!==g,S="+"===_||"*"===_,w="?"===_||"*"===_,k=g||l,x=m||b,A=g||("string"==typeof a[a.length-1]?a[a.length-1]:"");a.push({name:f||i++,prefix:g||"",delimiter:k,optional:w,repeat:S,partial:P,asterisk:!!v,pattern:x?d(x):v?".*":r(k,A)})}}return s-1?"[^"+l(e)+"]+?":l(t)+"|(?:(?!"+l(t)+")[^"+l(e)+"])+?"}function s(e){return encodeURI(e).replace(/[\/?#]/g,(function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()}))}function c(e,t){for(var n=new Array(e.length),o=0;o{e.exports&&(e.exports={core:{meta:{path:"components/prism-core.js",option:"mandatory"},core:"Core"},themes:{meta:{path:"themes/{id}.css",link:"index.html?theme={id}",exclusive:!0},prism:{title:"Default",option:"default"},"prism-dark":"Dark","prism-funky":"Funky","prism-okaidia":{title:"Okaidia",owner:"ocodia"},"prism-twilight":{title:"Twilight",owner:"remybach"},"prism-coy":{title:"Coy",owner:"tshedor"},"prism-solarizedlight":{title:"Solarized Light",owner:"hectormatos2011 "},"prism-tomorrow":{title:"Tomorrow Night",owner:"Rosey"}},languages:{meta:{path:"components/prism-{id}",noCSS:!0,examplesPath:"examples/prism-{id}",addCheckAll:!0},markup:{title:"Markup",alias:["html","xml","svg","mathml","ssml","atom","rss"],aliasTitles:{html:"HTML",xml:"XML",svg:"SVG",mathml:"MathML",ssml:"SSML",atom:"Atom",rss:"RSS"},option:"default"},css:{title:"CSS",option:"default",modify:"markup"},clike:{title:"C-like",option:"default"},javascript:{title:"JavaScript",require:"clike",modify:"markup",optional:"regex",alias:"js",option:"default"},abap:{title:"ABAP",owner:"dellagustin"},abnf:{title:"ABNF",owner:"RunDevelopment"},actionscript:{title:"ActionScript",require:"javascript",modify:"markup",owner:"Golmote"},ada:{title:"Ada",owner:"Lucretia"},agda:{title:"Agda",owner:"xy-ren"},al:{title:"AL",owner:"RunDevelopment"},antlr4:{title:"ANTLR4",alias:"g4",owner:"RunDevelopment"},apacheconf:{title:"Apache Configuration",owner:"GuiTeK"},apex:{title:"Apex",require:["clike","sql"],owner:"RunDevelopment"},apl:{title:"APL",owner:"ngn"},applescript:{title:"AppleScript",owner:"Golmote"},aql:{title:"AQL",owner:"RunDevelopment"},arduino:{title:"Arduino",require:"cpp",alias:"ino",owner:"dkern"},arff:{title:"ARFF",owner:"Golmote"},armasm:{title:"ARM Assembly",alias:"arm-asm",owner:"RunDevelopment"},arturo:{title:"Arturo",alias:"art",optional:["bash","css","javascript","markup","markdown","sql"],owner:"drkameleon"},asciidoc:{alias:"adoc",title:"AsciiDoc",owner:"Golmote"},aspnet:{title:"ASP.NET (C#)",require:["markup","csharp"],owner:"nauzilus"},asm6502:{title:"6502 Assembly",owner:"kzurawel"},asmatmel:{title:"Atmel AVR Assembly",owner:"cerkit"},autohotkey:{title:"AutoHotkey",owner:"aviaryan"},autoit:{title:"AutoIt",owner:"Golmote"},avisynth:{title:"AviSynth",alias:"avs",owner:"Zinfidel"},"avro-idl":{title:"Avro IDL",alias:"avdl",owner:"RunDevelopment"},awk:{title:"AWK",alias:"gawk",aliasTitles:{gawk:"GAWK"},owner:"RunDevelopment"},bash:{title:"Bash",alias:["sh","shell"],aliasTitles:{sh:"Shell",shell:"Shell"},owner:"zeitgeist87"},basic:{title:"BASIC",owner:"Golmote"},batch:{title:"Batch",owner:"Golmote"},bbcode:{title:"BBcode",alias:"shortcode",aliasTitles:{shortcode:"Shortcode"},owner:"RunDevelopment"},bbj:{title:"BBj",owner:"hyyan"},bicep:{title:"Bicep",owner:"johnnyreilly"},birb:{title:"Birb",require:"clike",owner:"Calamity210"},bison:{title:"Bison",require:"c",owner:"Golmote"},bnf:{title:"BNF",alias:"rbnf",aliasTitles:{rbnf:"RBNF"},owner:"RunDevelopment"},bqn:{title:"BQN",owner:"yewscion"},brainfuck:{title:"Brainfuck",owner:"Golmote"},brightscript:{title:"BrightScript",owner:"RunDevelopment"},bro:{title:"Bro",owner:"wayward710"},bsl:{title:"BSL (1C:Enterprise)",alias:"oscript",aliasTitles:{oscript:"OneScript"},owner:"Diversus23"},c:{title:"C",require:"clike",owner:"zeitgeist87"},csharp:{title:"C#",require:"clike",alias:["cs","dotnet"],owner:"mvalipour"},cpp:{title:"C++",require:"c",owner:"zeitgeist87"},cfscript:{title:"CFScript",require:"clike",alias:"cfc",owner:"mjclemente"},chaiscript:{title:"ChaiScript",require:["clike","cpp"],owner:"RunDevelopment"},cil:{title:"CIL",owner:"sbrl"},cilkc:{title:"Cilk/C",require:"c",alias:"cilk-c",owner:"OpenCilk"},cilkcpp:{title:"Cilk/C++",require:"cpp",alias:["cilk-cpp","cilk"],owner:"OpenCilk"},clojure:{title:"Clojure",owner:"troglotit"},cmake:{title:"CMake",owner:"mjrogozinski"},cobol:{title:"COBOL",owner:"RunDevelopment"},coffeescript:{title:"CoffeeScript",require:"javascript",alias:"coffee",owner:"R-osey"},concurnas:{title:"Concurnas",alias:"conc",owner:"jasontatton"},csp:{title:"Content-Security-Policy",owner:"ScottHelme"},cooklang:{title:"Cooklang",owner:"ahue"},coq:{title:"Coq",owner:"RunDevelopment"},crystal:{title:"Crystal",require:"ruby",owner:"MakeNowJust"},"css-extras":{title:"CSS Extras",require:"css",modify:"css",owner:"milesj"},csv:{title:"CSV",owner:"RunDevelopment"},cue:{title:"CUE",owner:"RunDevelopment"},cypher:{title:"Cypher",owner:"RunDevelopment"},d:{title:"D",require:"clike",owner:"Golmote"},dart:{title:"Dart",require:"clike",owner:"Golmote"},dataweave:{title:"DataWeave",owner:"machaval"},dax:{title:"DAX",owner:"peterbud"},dhall:{title:"Dhall",owner:"RunDevelopment"},diff:{title:"Diff",owner:"uranusjr"},django:{title:"Django/Jinja2",require:"markup-templating",alias:"jinja2",owner:"romanvm"},"dns-zone-file":{title:"DNS zone file",owner:"RunDevelopment",alias:"dns-zone"},docker:{title:"Docker",alias:"dockerfile",owner:"JustinBeckwith"},dot:{title:"DOT (Graphviz)",alias:"gv",optional:"markup",owner:"RunDevelopment"},ebnf:{title:"EBNF",owner:"RunDevelopment"},editorconfig:{title:"EditorConfig",owner:"osipxd"},eiffel:{title:"Eiffel",owner:"Conaclos"},ejs:{title:"EJS",require:["javascript","markup-templating"],owner:"RunDevelopment",alias:"eta",aliasTitles:{eta:"Eta"}},elixir:{title:"Elixir",owner:"Golmote"},elm:{title:"Elm",owner:"zwilias"},etlua:{title:"Embedded Lua templating",require:["lua","markup-templating"],owner:"RunDevelopment"},erb:{title:"ERB",require:["ruby","markup-templating"],owner:"Golmote"},erlang:{title:"Erlang",owner:"Golmote"},"excel-formula":{title:"Excel Formula",alias:["xlsx","xls"],owner:"RunDevelopment"},fsharp:{title:"F#",require:"clike",owner:"simonreynolds7"},factor:{title:"Factor",owner:"catb0t"},false:{title:"False",owner:"edukisto"},"firestore-security-rules":{title:"Firestore security rules",require:"clike",owner:"RunDevelopment"},flow:{title:"Flow",require:"javascript",owner:"Golmote"},fortran:{title:"Fortran",owner:"Golmote"},ftl:{title:"FreeMarker Template Language",require:"markup-templating",owner:"RunDevelopment"},gml:{title:"GameMaker Language",alias:"gamemakerlanguage",require:"clike",owner:"LiarOnce"},gap:{title:"GAP (CAS)",owner:"RunDevelopment"},gcode:{title:"G-code",owner:"RunDevelopment"},gdscript:{title:"GDScript",owner:"RunDevelopment"},gedcom:{title:"GEDCOM",owner:"Golmote"},gettext:{title:"gettext",alias:"po",owner:"RunDevelopment"},gherkin:{title:"Gherkin",owner:"hason"},git:{title:"Git",owner:"lgiraudel"},glsl:{title:"GLSL",require:"c",owner:"Golmote"},gn:{title:"GN",alias:"gni",owner:"RunDevelopment"},"linker-script":{title:"GNU Linker Script",alias:"ld",owner:"RunDevelopment"},go:{title:"Go",require:"clike",owner:"arnehormann"},"go-module":{title:"Go module",alias:"go-mod",owner:"RunDevelopment"},gradle:{title:"Gradle",require:"clike",owner:"zeabdelkhalek-badido18"},graphql:{title:"GraphQL",optional:"markdown",owner:"Golmote"},groovy:{title:"Groovy",require:"clike",owner:"robfletcher"},haml:{title:"Haml",require:"ruby",optional:["css","css-extras","coffeescript","erb","javascript","less","markdown","scss","textile"],owner:"Golmote"},handlebars:{title:"Handlebars",require:"markup-templating",alias:["hbs","mustache"],aliasTitles:{mustache:"Mustache"},owner:"Golmote"},haskell:{title:"Haskell",alias:"hs",owner:"bholst"},haxe:{title:"Haxe",require:"clike",optional:"regex",owner:"Golmote"},hcl:{title:"HCL",owner:"outsideris"},hlsl:{title:"HLSL",require:"c",owner:"RunDevelopment"},hoon:{title:"Hoon",owner:"matildepark"},http:{title:"HTTP",optional:["csp","css","hpkp","hsts","javascript","json","markup","uri"],owner:"danielgtaylor"},hpkp:{title:"HTTP Public-Key-Pins",owner:"ScottHelme"},hsts:{title:"HTTP Strict-Transport-Security",owner:"ScottHelme"},ichigojam:{title:"IchigoJam",owner:"BlueCocoa"},icon:{title:"Icon",owner:"Golmote"},"icu-message-format":{title:"ICU Message Format",owner:"RunDevelopment"},idris:{title:"Idris",alias:"idr",owner:"KeenS",require:"haskell"},ignore:{title:".ignore",owner:"osipxd",alias:["gitignore","hgignore","npmignore"],aliasTitles:{gitignore:".gitignore",hgignore:".hgignore",npmignore:".npmignore"}},inform7:{title:"Inform 7",owner:"Golmote"},ini:{title:"Ini",owner:"aviaryan"},io:{title:"Io",owner:"AlesTsurko"},j:{title:"J",owner:"Golmote"},java:{title:"Java",require:"clike",owner:"sherblot"},javadoc:{title:"JavaDoc",require:["markup","java","javadoclike"],modify:"java",optional:"scala",owner:"RunDevelopment"},javadoclike:{title:"JavaDoc-like",modify:["java","javascript","php"],owner:"RunDevelopment"},javastacktrace:{title:"Java stack trace",owner:"RunDevelopment"},jexl:{title:"Jexl",owner:"czosel"},jolie:{title:"Jolie",require:"clike",owner:"thesave"},jq:{title:"JQ",owner:"RunDevelopment"},jsdoc:{title:"JSDoc",require:["javascript","javadoclike","typescript"],modify:"javascript",optional:["actionscript","coffeescript"],owner:"RunDevelopment"},"js-extras":{title:"JS Extras",require:"javascript",modify:"javascript",optional:["actionscript","coffeescript","flow","n4js","typescript"],owner:"RunDevelopment"},json:{title:"JSON",alias:"webmanifest",aliasTitles:{webmanifest:"Web App Manifest"},owner:"CupOfTea696"},json5:{title:"JSON5",require:"json",owner:"RunDevelopment"},jsonp:{title:"JSONP",require:"json",owner:"RunDevelopment"},jsstacktrace:{title:"JS stack trace",owner:"sbrl"},"js-templates":{title:"JS Templates",require:"javascript",modify:"javascript",optional:["css","css-extras","graphql","markdown","markup","sql"],owner:"RunDevelopment"},julia:{title:"Julia",owner:"cdagnino"},keepalived:{title:"Keepalived Configure",owner:"dev-itsheng"},keyman:{title:"Keyman",owner:"mcdurdin"},kotlin:{title:"Kotlin",alias:["kt","kts"],aliasTitles:{kts:"Kotlin Script"},require:"clike",owner:"Golmote"},kumir:{title:"KuMir (\u041a\u0443\u041c\u0438\u0440)",alias:"kum",owner:"edukisto"},kusto:{title:"Kusto",owner:"RunDevelopment"},latex:{title:"LaTeX",alias:["tex","context"],aliasTitles:{tex:"TeX",context:"ConTeXt"},owner:"japborst"},latte:{title:"Latte",require:["clike","markup-templating","php"],owner:"nette"},less:{title:"Less",require:"css",optional:"css-extras",owner:"Golmote"},lilypond:{title:"LilyPond",require:"scheme",alias:"ly",owner:"RunDevelopment"},liquid:{title:"Liquid",require:"markup-templating",owner:"cinhtau"},lisp:{title:"Lisp",alias:["emacs","elisp","emacs-lisp"],owner:"JuanCaicedo"},livescript:{title:"LiveScript",owner:"Golmote"},llvm:{title:"LLVM IR",owner:"porglezomp"},log:{title:"Log file",optional:"javastacktrace",owner:"RunDevelopment"},lolcode:{title:"LOLCODE",owner:"Golmote"},lua:{title:"Lua",owner:"Golmote"},magma:{title:"Magma (CAS)",owner:"RunDevelopment"},makefile:{title:"Makefile",owner:"Golmote"},markdown:{title:"Markdown",require:"markup",optional:"yaml",alias:"md",owner:"Golmote"},"markup-templating":{title:"Markup templating",require:"markup",owner:"Golmote"},mata:{title:"Mata",owner:"RunDevelopment"},matlab:{title:"MATLAB",owner:"Golmote"},maxscript:{title:"MAXScript",owner:"RunDevelopment"},mel:{title:"MEL",owner:"Golmote"},mermaid:{title:"Mermaid",owner:"RunDevelopment"},metafont:{title:"METAFONT",owner:"LaeriExNihilo"},mizar:{title:"Mizar",owner:"Golmote"},mongodb:{title:"MongoDB",owner:"airs0urce",require:"javascript"},monkey:{title:"Monkey",owner:"Golmote"},moonscript:{title:"MoonScript",alias:"moon",owner:"RunDevelopment"},n1ql:{title:"N1QL",owner:"TMWilds"},n4js:{title:"N4JS",require:"javascript",optional:"jsdoc",alias:"n4jsd",owner:"bsmith-n4"},"nand2tetris-hdl":{title:"Nand To Tetris HDL",owner:"stephanmax"},naniscript:{title:"Naninovel Script",owner:"Elringus",alias:"nani"},nasm:{title:"NASM",owner:"rbmj"},neon:{title:"NEON",owner:"nette"},nevod:{title:"Nevod",owner:"nezaboodka"},nginx:{title:"nginx",owner:"volado"},nim:{title:"Nim",owner:"Golmote"},nix:{title:"Nix",owner:"Golmote"},nsis:{title:"NSIS",owner:"idleberg"},objectivec:{title:"Objective-C",require:"c",alias:"objc",owner:"uranusjr"},ocaml:{title:"OCaml",owner:"Golmote"},odin:{title:"Odin",owner:"edukisto"},opencl:{title:"OpenCL",require:"c",modify:["c","cpp"],owner:"Milania1"},openqasm:{title:"OpenQasm",alias:"qasm",owner:"RunDevelopment"},oz:{title:"Oz",owner:"Golmote"},parigp:{title:"PARI/GP",owner:"Golmote"},parser:{title:"Parser",require:"markup",owner:"Golmote"},pascal:{title:"Pascal",alias:"objectpascal",aliasTitles:{objectpascal:"Object Pascal"},owner:"Golmote"},pascaligo:{title:"Pascaligo",owner:"DefinitelyNotAGoat"},psl:{title:"PATROL Scripting Language",owner:"bertysentry"},pcaxis:{title:"PC-Axis",alias:"px",owner:"RunDevelopment"},peoplecode:{title:"PeopleCode",alias:"pcode",owner:"RunDevelopment"},perl:{title:"Perl",owner:"Golmote"},php:{title:"PHP",require:"markup-templating",owner:"milesj"},phpdoc:{title:"PHPDoc",require:["php","javadoclike"],modify:"php",owner:"RunDevelopment"},"php-extras":{title:"PHP Extras",require:"php",modify:"php",owner:"milesj"},"plant-uml":{title:"PlantUML",alias:"plantuml",owner:"RunDevelopment"},plsql:{title:"PL/SQL",require:"sql",owner:"Golmote"},powerquery:{title:"PowerQuery",alias:["pq","mscript"],owner:"peterbud"},powershell:{title:"PowerShell",owner:"nauzilus"},processing:{title:"Processing",require:"clike",owner:"Golmote"},prolog:{title:"Prolog",owner:"Golmote"},promql:{title:"PromQL",owner:"arendjr"},properties:{title:".properties",owner:"Golmote"},protobuf:{title:"Protocol Buffers",require:"clike",owner:"just-boris"},pug:{title:"Pug",require:["markup","javascript"],optional:["coffeescript","ejs","handlebars","less","livescript","markdown","scss","stylus","twig"],owner:"Golmote"},puppet:{title:"Puppet",owner:"Golmote"},pure:{title:"Pure",optional:["c","cpp","fortran"],owner:"Golmote"},purebasic:{title:"PureBasic",require:"clike",alias:"pbfasm",owner:"HeX0R101"},purescript:{title:"PureScript",require:"haskell",alias:"purs",owner:"sriharshachilakapati"},python:{title:"Python",alias:"py",owner:"multipetros"},qsharp:{title:"Q#",require:"clike",alias:"qs",owner:"fedonman"},q:{title:"Q (kdb+ database)",owner:"Golmote"},qml:{title:"QML",require:"javascript",owner:"RunDevelopment"},qore:{title:"Qore",require:"clike",owner:"temnroegg"},r:{title:"R",owner:"Golmote"},racket:{title:"Racket",require:"scheme",alias:"rkt",owner:"RunDevelopment"},cshtml:{title:"Razor C#",alias:"razor",require:["markup","csharp"],optional:["css","css-extras","javascript","js-extras"],owner:"RunDevelopment"},jsx:{title:"React JSX",require:["markup","javascript"],optional:["jsdoc","js-extras","js-templates"],owner:"vkbansal"},tsx:{title:"React TSX",require:["jsx","typescript"]},reason:{title:"Reason",require:"clike",owner:"Golmote"},regex:{title:"Regex",owner:"RunDevelopment"},rego:{title:"Rego",owner:"JordanSh"},renpy:{title:"Ren'py",alias:"rpy",owner:"HyuchiaDiego"},rescript:{title:"ReScript",alias:"res",owner:"vmarcosp"},rest:{title:"reST (reStructuredText)",owner:"Golmote"},rip:{title:"Rip",owner:"ravinggenius"},roboconf:{title:"Roboconf",owner:"Golmote"},robotframework:{title:"Robot Framework",alias:"robot",owner:"RunDevelopment"},ruby:{title:"Ruby",require:"clike",alias:"rb",owner:"samflores"},rust:{title:"Rust",owner:"Golmote"},sas:{title:"SAS",optional:["groovy","lua","sql"],owner:"Golmote"},sass:{title:"Sass (Sass)",require:"css",optional:"css-extras",owner:"Golmote"},scss:{title:"Sass (SCSS)",require:"css",optional:"css-extras",owner:"MoOx"},scala:{title:"Scala",require:"java",owner:"jozic"},scheme:{title:"Scheme",owner:"bacchus123"},"shell-session":{title:"Shell session",require:"bash",alias:["sh-session","shellsession"],owner:"RunDevelopment"},smali:{title:"Smali",owner:"RunDevelopment"},smalltalk:{title:"Smalltalk",owner:"Golmote"},smarty:{title:"Smarty",require:"markup-templating",optional:"php",owner:"Golmote"},sml:{title:"SML",alias:"smlnj",aliasTitles:{smlnj:"SML/NJ"},owner:"RunDevelopment"},solidity:{title:"Solidity (Ethereum)",alias:"sol",require:"clike",owner:"glachaud"},"solution-file":{title:"Solution file",alias:"sln",owner:"RunDevelopment"},soy:{title:"Soy (Closure Template)",require:"markup-templating",owner:"Golmote"},sparql:{title:"SPARQL",require:"turtle",owner:"Triply-Dev",alias:"rq"},"splunk-spl":{title:"Splunk SPL",owner:"RunDevelopment"},sqf:{title:"SQF: Status Quo Function (Arma 3)",require:"clike",owner:"RunDevelopment"},sql:{title:"SQL",owner:"multipetros"},squirrel:{title:"Squirrel",require:"clike",owner:"RunDevelopment"},stan:{title:"Stan",owner:"RunDevelopment"},stata:{title:"Stata Ado",require:["mata","java","python"],owner:"RunDevelopment"},iecst:{title:"Structured Text (IEC 61131-3)",owner:"serhioromano"},stylus:{title:"Stylus",owner:"vkbansal"},supercollider:{title:"SuperCollider",alias:"sclang",owner:"RunDevelopment"},swift:{title:"Swift",owner:"chrischares"},systemd:{title:"Systemd configuration file",owner:"RunDevelopment"},"t4-templating":{title:"T4 templating",owner:"RunDevelopment"},"t4-cs":{title:"T4 Text Templates (C#)",require:["t4-templating","csharp"],alias:"t4",owner:"RunDevelopment"},"t4-vb":{title:"T4 Text Templates (VB)",require:["t4-templating","vbnet"],owner:"RunDevelopment"},tap:{title:"TAP",owner:"isaacs",require:"yaml"},tcl:{title:"Tcl",owner:"PeterChaplin"},tt2:{title:"Template Toolkit 2",require:["clike","markup-templating"],owner:"gflohr"},textile:{title:"Textile",require:"markup",optional:"css",owner:"Golmote"},toml:{title:"TOML",owner:"RunDevelopment"},tremor:{title:"Tremor",alias:["trickle","troy"],owner:"darach",aliasTitles:{trickle:"trickle",troy:"troy"}},turtle:{title:"Turtle",alias:"trig",aliasTitles:{trig:"TriG"},owner:"jakubklimek"},twig:{title:"Twig",require:"markup-templating",owner:"brandonkelly"},typescript:{title:"TypeScript",require:"javascript",optional:"js-templates",alias:"ts",owner:"vkbansal"},typoscript:{title:"TypoScript",alias:"tsconfig",aliasTitles:{tsconfig:"TSConfig"},owner:"dkern"},unrealscript:{title:"UnrealScript",alias:["uscript","uc"],owner:"RunDevelopment"},uorazor:{title:"UO Razor Script",owner:"jaseowns"},uri:{title:"URI",alias:"url",aliasTitles:{url:"URL"},owner:"RunDevelopment"},v:{title:"V",require:"clike",owner:"taggon"},vala:{title:"Vala",require:"clike",optional:"regex",owner:"TemplarVolk"},vbnet:{title:"VB.Net",require:"basic",owner:"Bigsby"},velocity:{title:"Velocity",require:"markup",owner:"Golmote"},verilog:{title:"Verilog",owner:"a-rey"},vhdl:{title:"VHDL",owner:"a-rey"},vim:{title:"vim",owner:"westonganger"},"visual-basic":{title:"Visual Basic",alias:["vb","vba"],aliasTitles:{vba:"VBA"},owner:"Golmote"},warpscript:{title:"WarpScript",owner:"RunDevelopment"},wasm:{title:"WebAssembly",owner:"Golmote"},"web-idl":{title:"Web IDL",alias:"webidl",owner:"RunDevelopment"},wgsl:{title:"WGSL",owner:"Dr4gonthree"},wiki:{title:"Wiki markup",require:"markup",owner:"Golmote"},wolfram:{title:"Wolfram language",alias:["mathematica","nb","wl"],aliasTitles:{mathematica:"Mathematica",nb:"Mathematica Notebook"},owner:"msollami"},wren:{title:"Wren",owner:"clsource"},xeora:{title:"Xeora",require:"markup",alias:"xeoracube",aliasTitles:{xeoracube:"XeoraCube"},owner:"freakmaxi"},"xml-doc":{title:"XML doc (.net)",require:"markup",modify:["csharp","fsharp","vbnet"],owner:"RunDevelopment"},xojo:{title:"Xojo (REALbasic)",owner:"Golmote"},xquery:{title:"XQuery",require:"markup",owner:"Golmote"},yaml:{title:"YAML",alias:"yml",owner:"hason"},yang:{title:"YANG",owner:"RunDevelopment"},zig:{title:"Zig",owner:"RunDevelopment"}},plugins:{meta:{path:"plugins/{id}/prism-{id}",link:"plugins/{id}/"},"line-highlight":{title:"Line Highlight",description:"Highlights specific lines and/or line ranges."},"line-numbers":{title:"Line Numbers",description:"Line number at the beginning of code lines.",owner:"kuba-kubula"},"show-invisibles":{title:"Show Invisibles",description:"Show hidden characters such as tabs and line breaks.",optional:["autolinker","data-uri-highlight"]},autolinker:{title:"Autolinker",description:"Converts URLs and emails in code to clickable links. Parses Markdown links in comments."},wpd:{title:"WebPlatform Docs",description:'Makes tokens link to WebPlatform.org documentation. The links open in a new tab.'},"custom-class":{title:"Custom Class",description:"This plugin allows you to prefix Prism's default classes (.comment can become .namespace--comment) or replace them with your defined ones (like .editor__comment). You can even add new classes.",owner:"dvkndn",noCSS:!0},"file-highlight":{title:"File Highlight",description:"Fetch external files and highlight them with Prism. Used on the Prism website itself.",noCSS:!0},"show-language":{title:"Show Language",description:"Display the highlighted language in code blocks (inline code does not show the label).",owner:"nauzilus",noCSS:!0,require:"toolbar"},"jsonp-highlight":{title:"JSONP Highlight",description:"Fetch content with JSONP and highlight some interesting content (e.g. GitHub/Gists or Bitbucket API).",noCSS:!0,owner:"nauzilus"},"highlight-keywords":{title:"Highlight Keywords",description:"Adds special CSS classes for each keyword for fine-grained highlighting.",owner:"vkbansal",noCSS:!0},"remove-initial-line-feed":{title:"Remove initial line feed",description:"Removes the initial line feed in code blocks.",owner:"Golmote",noCSS:!0},"inline-color":{title:"Inline color",description:"Adds a small inline preview for colors in style sheets.",require:"css-extras",owner:"RunDevelopment"},previewers:{title:"Previewers",description:"Previewers for angles, colors, gradients, easing and time.",require:"css-extras",owner:"Golmote"},autoloader:{title:"Autoloader",description:"Automatically loads the needed languages to highlight the code blocks.",owner:"Golmote",noCSS:!0},"keep-markup":{title:"Keep Markup",description:"Prevents custom markup from being dropped out during highlighting.",owner:"Golmote",optional:"normalize-whitespace",noCSS:!0},"command-line":{title:"Command Line",description:"Display a command line with a prompt and, optionally, the output/response from the commands.",owner:"chriswells0"},"unescaped-markup":{title:"Unescaped Markup",description:"Write markup without having to escape anything."},"normalize-whitespace":{title:"Normalize Whitespace",description:"Supports multiple operations to normalize whitespace in code blocks.",owner:"zeitgeist87",optional:"unescaped-markup",noCSS:!0},"data-uri-highlight":{title:"Data-URI Highlight",description:"Highlights data-URI contents.",owner:"Golmote",noCSS:!0},toolbar:{title:"Toolbar",description:"Attach a toolbar for plugins to easily register buttons on the top of a code block.",owner:"mAAdhaTTah"},"copy-to-clipboard":{title:"Copy to Clipboard Button",description:"Add a button that copies the code block to the clipboard when clicked.",owner:"mAAdhaTTah",require:"toolbar",noCSS:!0},"download-button":{title:"Download Button",description:"A button in the toolbar of a code block adding a convenient way to download a code file.",owner:"Golmote",require:"toolbar",noCSS:!0},"match-braces":{title:"Match braces",description:"Highlights matching braces.",owner:"RunDevelopment"},"diff-highlight":{title:"Diff Highlight",description:"Highlights the code inside diff blocks.",owner:"RunDevelopment",require:"diff"},"filter-highlight-all":{title:"Filter highlightAll",description:"Filters the elements the highlightAll and highlightAllUnder methods actually highlight.",owner:"RunDevelopment",noCSS:!0},treeview:{title:"Treeview",description:"A language with special styles to highlight file system tree structures.",owner:"Golmote"}}})},8722:(e,t,n)=>{const a=n(6969),o=n(8380),i=new Set;function r(e){void 0===e?e=Object.keys(a.languages).filter((e=>"meta"!=e)):Array.isArray(e)||(e=[e]);const t=[...i,...Object.keys(Prism.languages)];o(a,e,t).load((e=>{if(!(e in a.languages))return void(r.silent||console.warn("Language does not exist: "+e));const t="./prism-"+e;delete n.c[n(3157).resolve(t)],delete Prism.languages[e],n(3157)(t),i.add(e)}))}r.silent=!1,e.exports=r},9700:()=>{!function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(n,a,o,i){if(n.language===a){var r=n.tokenStack=[];n.code=n.code.replace(o,(function(e){if("function"==typeof i&&!i(e))return e;for(var o,s=r.length;-1!==n.code.indexOf(o=t(a,s));)++s;return r[s]=e,o})),n.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(n,a){if(n.language===a&&n.tokenStack){n.grammar=e.languages[a];var o=0,i=Object.keys(n.tokenStack);!function r(s){for(var c=0;c=i.length);c++){var l=s[c];if("string"==typeof l||l.content&&"string"==typeof l.content){var d=i[o],u=n.tokenStack[d],p="string"==typeof l?l:l.content,h=t(a,d),y=p.indexOf(h);if(y>-1){++o;var g=p.substring(0,y),f=new e.Token(a,e.tokenize(u,n.grammar),"language-"+a,u),m=p.substring(y+h.length),b=[];g&&b.push.apply(b,r([g])),b.push(f),m&&b.push.apply(b,r([m])),"string"==typeof l?s.splice.apply(s,[c,1].concat(b)):l.content=b}}else l.content&&r(l.content)}return s}(n.tokens)}}}})}(Prism)},8692:(e,t,n)=>{var a={"./":8722};function o(e){var t=i(e);return n(t)}function i(e){if(!n.o(a,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return a[e]}o.keys=function(){return Object.keys(a)},o.resolve=i,e.exports=o,o.id=8692},3157:(e,t,n)=>{var a={"./":8722};function o(e){var t=i(e);return n(t)}function i(e){if(!n.o(a,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return a[e]}o.keys=function(){return Object.keys(a)},o.resolve=i,e.exports=o,o.id=3157},8380:e=>{"use strict";var t=function(){var e=function(){};function t(e,t){Array.isArray(e)?e.forEach(t):null!=e&&t(e,0)}function n(e){for(var t={},n=0,a=e.length;n "));var s={},c=e[a];if(c){function l(t){if(!(t in e))throw new Error(a+" depends on an unknown component "+t);if(!(t in s))for(var r in o(t,i),s[t]=!0,n[t])s[r]=!0}t(c.require,l),t(c.optional,l),t(c.modify,l)}n[a]=s,i.pop()}}return function(e){var t=n[e];return t||(o(e,a),t=n[e]),t}}function o(e){for(var t in e)return!0;return!1}return function(i,r,s){var c=function(e){var t={};for(var n in e){var a=e[n];for(var o in a)if("meta"!=o){var i=a[o];t[o]="string"==typeof i?{title:i}:i}}return t}(i),l=function(e){var n;return function(a){if(a in e)return a;if(!n)for(var o in n={},e){var i=e[o];t(i&&i.alias,(function(t){if(t in n)throw new Error(t+" cannot be alias for both "+o+" and "+n[t]);if(t in e)throw new Error(t+" cannot be alias of "+o+" because it is a component.");n[t]=o}))}return n[a]||a}}(c);r=r.map(l),s=(s||[]).map(l);var d=n(r),u=n(s);r.forEach((function e(n){var a=c[n];t(a&&a.require,(function(t){t in u||(d[t]=!0,e(t))}))}));for(var p,h=a(c),y=d;o(y);){for(var g in p={},y){var f=c[g];t(f&&f.modify,(function(e){e in u&&(p[e]=!0)}))}for(var m in u)if(!(m in d))for(var b in h(m))if(b in d){p[m]=!0;break}for(var _ in y=p)d[_]=!0}var v={getIds:function(){var e=[];return v.load((function(t){e.push(t)})),e},load:function(t,n){return function(t,n,a,o){var i=o?o.series:void 0,r=o?o.parallel:e,s={},c={};function l(e){if(e in s)return s[e];c[e]=!0;var o,d=[];for(var u in t(e))u in n&&d.push(u);if(0===d.length)o=a(e);else{var p=r(d.map((function(e){var t=l(e);return delete c[e],t})));i?o=i(p,(function(){return a(e)})):a(e)}return s[e]=o}for(var d in n)l(d);var u=[];for(var p in c)u.push(s[p]);return r(u)}(h,d,t,n)}};return v}}();e.exports=t},2694:(e,t,n)=>{"use strict";var a=n(6925);function o(){}function i(){}i.resetWarningCache=o,e.exports=function(){function e(e,t,n,o,i,r){if(r!==a){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:o};return n.PropTypes=n,n}},5556:(e,t,n)=>{e.exports=n(2694)()},6925:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},1247:(e,t,n)=>{"use strict";var a=n(9982),o=n(6540),i=n(961);function r(e){var t="https://react.dev/errors/"+e;if(1)":-1--o||c[a]!==l[o]){var d="\n"+c[a].replace(" at new "," at ");return e.displayName&&d.includes("")&&(d=d.replace("",e.displayName)),d}}while(1<=a&&0<=o);break}}}finally{R=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?F(n):""}function j(e){switch(e.tag){case 26:case 27:case 5:return F(e.type);case 16:return F("Lazy");case 13:return F("Suspense");case 19:return F("SuspenseList");case 0:case 15:return e=N(e.type,!1);case 11:return e=N(e.type.render,!1);case 1:return e=N(e.type,!0);default:return""}}function M(e){try{var t="";do{t+=j(e),e=e.return}while(e);return t}catch(n){return"\nError generating stack: "+n.message+"\n"+n.stack}}function L(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{!!(4098&(t=e).flags)&&(n=t.return),e=t.return}while(e)}return 3===t.tag?n:null}function I(e){if(13===e.tag){var t=e.memoizedState;if(null===t&&(null!==(e=e.alternate)&&(t=e.memoizedState)),null!==t)return t.dehydrated}return null}function B(e){if(L(e)!==e)throw Error(r(188))}function z(e){var t=e.tag;if(5===t||26===t||27===t||6===t)return e;for(e=e.child;null!==e;){if(null!==(t=z(e)))return t;e=e.sibling}return null}var U=Array.isArray,$=i.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,q={pending:!1,data:null,method:null,action:null},V=[],H=-1;function G(e){return{current:e}}function W(e){0>H||(e.current=V[H],V[H]=null,H--)}function K(e,t){H++,V[H]=e.current,e.current=t}var Q=G(null),Y=G(null),X=G(null),J=G(null);function Z(e,t){switch(K(X,t),K(Y,e),K(Q,null),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)&&(t=t.namespaceURI)?Yd(t):0;break;default:if(t=(e=8===e?t.parentNode:t).tagName,e=e.namespaceURI)t=Xd(e=Yd(e),t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}W(Q),K(Q,t)}function ee(){W(Q),W(Y),W(X)}function te(e){null!==e.memoizedState&&K(J,e);var t=Q.current,n=Xd(t,e.type);t!==n&&(K(Y,e),K(Q,n))}function ne(e){Y.current===e&&(W(Q),W(Y)),J.current===e&&(W(J),Mu._currentValue=q)}var ae=Object.prototype.hasOwnProperty,oe=a.unstable_scheduleCallback,ie=a.unstable_cancelCallback,re=a.unstable_shouldYield,se=a.unstable_requestPaint,ce=a.unstable_now,le=a.unstable_getCurrentPriorityLevel,de=a.unstable_ImmediatePriority,ue=a.unstable_UserBlockingPriority,pe=a.unstable_NormalPriority,he=a.unstable_LowPriority,ye=a.unstable_IdlePriority,ge=a.log,fe=a.unstable_setDisableYieldValue,me=null,be=null;function _e(e){if("function"==typeof ge&&fe(e),be&&"function"==typeof be.setStrictMode)try{be.setStrictMode(me,e)}catch(t){}}var ve=Math.clz32?Math.clz32:function(e){return 0===(e>>>=0)?32:31-(Pe(e)/Se|0)|0},Pe=Math.log,Se=Math.LN2;var we=128,ke=4194304;function xe(e){var t=42&e;if(0!==t)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194176&e;case 4194304:case 8388608:case 16777216:case 33554432:return 62914560&e;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Ae(e,t){var n=e.pendingLanes;if(0===n)return 0;var a=0,o=e.suspendedLanes,i=e.pingedLanes,r=e.warmLanes;e=0!==e.finishedLanes;var s=134217727&n;return 0!==s?0!==(n=s&~o)?a=xe(n):0!==(i&=s)?a=xe(i):e||0!==(r=s&~r)&&(a=xe(r)):0!==(s=n&~o)?a=xe(s):0!==i?a=xe(i):e||0!==(r=n&~r)&&(a=xe(r)),0===a?0:0!==t&&t!==a&&!(t&o)&&((o=a&-a)>=(r=t&-t)||32===o&&4194176&r)?t:a}function Ee(e,t){return!(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)}function Te(e,t){switch(e){case 1:case 2:case 4:case 8:return t+250;case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;default:return-1}}function Ce(){var e=we;return!(4194176&(we<<=1))&&(we=128),e}function De(){var e=ke;return!(62914560&(ke<<=1))&&(ke=4194304),e}function Oe(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Fe(e,t){e.pendingLanes|=t,268435456!==t&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Re(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var a=31-ve(t);e.entangledLanes|=t,e.entanglements[a]=1073741824|e.entanglements[a]|4194218&n}function Ne(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var a=31-ve(n),o=1<=Sn),xn=String.fromCharCode(32),An=!1;function En(e,t){switch(e){case"keyup":return-1!==vn.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Tn(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var Cn=!1;var Dn={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function On(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Dn[e.type]:"textarea"===t}function Fn(e,t,n,a){Ft?Rt?Rt.push(a):Rt=[a]:Ft=a,0<(t=Md(t,"onChange")).length&&(n=new Jt("onChange","change",null,n,a),e.push({event:n,listeners:t}))}var Rn=null,Nn=null;function jn(e){Td(e,0)}function Mn(e){if(pt(Qe(e)))return e}function Ln(e,t){if("change"===e)return t}var In=!1;if(nt){var Bn;if(nt){var zn="oninput"in document;if(!zn){var Un=document.createElement("div");Un.setAttribute("oninput","return;"),zn="function"==typeof Un.oninput}Bn=zn}else Bn=!1;In=Bn&&(!document.documentMode||9=t)return{node:a,offset:t-e};e=n}e:{for(;a;){if(a.nextSibling){a=a.nextSibling;break e}a=a.parentNode}a=void 0}a=Yn(a)}}function Jn(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?Jn(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function Zn(e){for(var t=ht((e=null!=e&&null!=e.ownerDocument&&null!=e.ownerDocument.defaultView?e.ownerDocument.defaultView:window).document);t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(a){n=!1}if(!n)break;t=ht((e=t.contentWindow).document)}return t}function ea(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}function ta(e,t){var n=Zn(t);t=e.focusedElem;var a=e.selectionRange;if(n!==t&&t&&t.ownerDocument&&Jn(t.ownerDocument.documentElement,t)){if(null!==a&&ea(t))if(e=a.start,void 0===(n=a.end)&&(n=e),"selectionStart"in t)t.selectionStart=e,t.selectionEnd=Math.min(n,t.value.length);else if((n=(e=t.ownerDocument||document)&&e.defaultView||window).getSelection){n=n.getSelection();var o=t.textContent.length,i=Math.min(a.start,o);a=void 0===a.end?i:Math.min(a.end,o),!n.extend&&i>a&&(o=a,a=i,i=o),o=Xn(t,i);var r=Xn(t,a);o&&r&&(1!==n.rangeCount||n.anchorNode!==o.node||n.anchorOffset!==o.offset||n.focusNode!==r.node||n.focusOffset!==r.offset)&&((e=e.createRange()).setStart(o.node,o.offset),n.removeAllRanges(),i>a?(n.addRange(e),n.extend(r.node,r.offset)):(e.setEnd(r.node,r.offset),n.addRange(e)))}for(e=[],n=t;n=n.parentNode;)1===n.nodeType&&e.push({element:n,left:n.scrollLeft,top:n.scrollTop});for("function"==typeof t.focus&&t.focus(),t=0;t=document.documentMode,aa=null,oa=null,ia=null,ra=!1;function sa(e,t,n){var a=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;ra||null==aa||aa!==ht(a)||("selectionStart"in(a=aa)&&ea(a)?a={start:a.selectionStart,end:a.selectionEnd}:a={anchorNode:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset},ia&&Qn(ia,a)||(ia=a,0<(a=Md(oa,"onSelect")).length&&(t=new Jt("onSelect","select",null,t,n),e.push({event:t,listeners:a}),t.target=aa)))}function ca(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var la={animationend:ca("Animation","AnimationEnd"),animationiteration:ca("Animation","AnimationIteration"),animationstart:ca("Animation","AnimationStart"),transitionrun:ca("Transition","TransitionRun"),transitionstart:ca("Transition","TransitionStart"),transitioncancel:ca("Transition","TransitionCancel"),transitionend:ca("Transition","TransitionEnd")},da={},ua={};function pa(e){if(da[e])return da[e];if(!la[e])return e;var t,n=la[e];for(t in n)if(n.hasOwnProperty(t)&&t in ua)return da[e]=n[t];return e}nt&&(ua=document.createElement("div").style,"AnimationEvent"in window||(delete la.animationend.animation,delete la.animationiteration.animation,delete la.animationstart.animation),"TransitionEvent"in window||delete la.transitionend.transition);var ha=pa("animationend"),ya=pa("animationiteration"),ga=pa("animationstart"),fa=pa("transitionrun"),ma=pa("transitionstart"),ba=pa("transitioncancel"),_a=pa("transitionend"),va=new Map,Pa="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll scrollEnd toggle touchMove waiting wheel".split(" ");function Sa(e,t){va.set(e,t),et(t,[e])}var wa=[],ka=0,xa=0;function Aa(){for(var e=ka,t=xa=ka=0;t>=r,o-=r,$a=1<<32-ve(t)+o|n<p?(h=u,u=null):h=u.sibling;var y=m(o,u,s[p],c);if(null===y){null===u&&(u=h);break}e&&u&&null===y.alternate&&t(o,u),r=i(y,r,p),null===d?l=y:d.sibling=y,d=y,u=h}if(p===s.length)return n(o,u),Ya&&Va(o,p),l;if(null===u){for(;ph?(y=p,p=null):y=p.sibling;var _=m(o,p,f.value,l);if(null===_){null===p&&(p=y);break}e&&p&&null===_.alternate&&t(o,p),s=i(_,s,h),null===u?d=_:u.sibling=_,u=_,p=y}if(f.done)return n(o,p),Ya&&Va(o,h),d;if(null===p){for(;!f.done;h++,f=c.next())null!==(f=g(o,f.value,l))&&(s=i(f,s,h),null===u?d=f:u.sibling=f,u=f);return Ya&&Va(o,h),d}for(p=a(p);!f.done;h++,f=c.next())null!==(f=b(p,o,h,f.value,l))&&(e&&null!==f.alternate&&p.delete(null===f.key?h:f.key),s=i(f,s,h),null===u?d=f:u.sibling=f,u=f);return e&&p.forEach((function(e){return t(o,e)})),Ya&&Va(o,h),d}(c,p,h=v.call(h),y)}if("function"==typeof h.then)return _(c,p,mo(h),y);if(h.$$typeof===f)return _(c,p,As(c,h),y);_o(c,h)}return"string"==typeof h&&""!==h||"number"==typeof h||"bigint"==typeof h?(h=""+h,null!==p&&6===p.tag?(n(c,p.sibling),(y=o(p,h)).return=c,c=y):(n(c,p),(y=$c(h,c.mode,y)).return=c,c=y),s(c)):n(c,p)}return function(e,t,n,a){try{fo=0;var o=_(e,t,n,a);return go=null,o}catch(r){if(r===ro)throw r;var i=jc(29,r,null,e.mode);return i.lanes=a,i.return=e,i}}}var So=Po(!0),wo=Po(!1),ko=G(null),xo=G(0);function Ao(e,t){K(xo,e=ll),K(ko,t),ll=e|t.baseLanes}function Eo(){K(xo,ll),K(ko,ko.current)}function To(){ll=xo.current,W(ko),W(xo)}var Co=G(null),Do=null;function Oo(e){var t=e.alternate;K(jo,1&jo.current),K(Co,e),null===Do&&(null===t||null!==ko.current||null!==t.memoizedState)&&(Do=e)}function Fo(e){if(22===e.tag){if(K(jo,jo.current),K(Co,e),null===Do){var t=e.alternate;null!==t&&null!==t.memoizedState&&(Do=e)}}else Ro()}function Ro(){K(jo,jo.current),K(Co,Co.current)}function No(e){W(Co),Do===e&&(Do=null),W(jo)}var jo=G(0);function Mo(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(128&t.flags)return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Lo="undefined"!=typeof AbortController?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(t,n){e.push(n)}};this.abort=function(){t.aborted=!0,e.forEach((function(e){return e()}))}},Io=a.unstable_scheduleCallback,Bo=a.unstable_NormalPriority,zo={$$typeof:f,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Uo(){return{controller:new Lo,data:new Map,refCount:0}}function $o(e){e.refCount--,0===e.refCount&&Io(Bo,(function(){e.controller.abort()}))}var qo=null,Vo=0,Ho=0,Go=null;function Wo(){if(0==--Vo&&null!==qo){null!==Go&&(Go.status="fulfilled");var e=qo;qo=null,Ho=0,Go=null;for(var t=0;ti?i:8;var r,s,c,l=D.T,d={};D.T=d,Pr(e,!1,t,n);try{var u=o(),p=D.S;if(null!==p&&p(d,u),null!==u&&"object"==typeof u&&"function"==typeof u.then)vr(e,t,(r=a,s=[],c={status:"pending",value:null,reason:null,then:function(e){s.push(e)}},u.then((function(){c.status="fulfilled",c.value=r;for(var e=0;e title"))),Gd(i,a,n),i[Ie]=e,Xe(i),a=i;break e;case"link":var s=Eu("link","href",o).get(a+(n.href||""));if(s)for(var c=0;c<\/script>",e=e.removeChild(e.firstChild);break;case"select":e="string"==typeof a.is?o.createElement("select",{is:a.is}):o.createElement("select"),a.multiple?e.multiple=!0:a.size&&(e.size=a.size);break;default:e="string"==typeof a.is?o.createElement(n,{is:a.is}):o.createElement(n)}}e[Ie]=t,e[Be]=a;e:for(o=t.child;null!==o;){if(5===o.tag||6===o.tag)e.appendChild(o.stateNode);else if(4!==o.tag&&27!==o.tag&&null!==o.child){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;null===o.sibling;){if(null===o.return||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=e;e:switch(Gd(e,n,a),n){case"button":case"input":case"select":case"textarea":e=!!a.autoFocus;break e;case"img":e=!0;break e;default:e=!1}e&&Vc(t)}}return Kc(t),t.flags&=-16777217,null;case 6:if(e&&null!=t.stateNode)e.memoizedProps!==a&&Vc(t);else{if("string"!=typeof a&&null===t.stateNode)throw Error(r(166));if(e=X.current,ao(t)){if(e=t.stateNode,n=t.memoizedProps,a=null,null!==(o=Ka))switch(o.tag){case 27:case 5:a=o.memoizedProps}e[Ie]=t,(e=!!(e.nodeValue===n||null!==a&&!0===a.suppressHydrationWarning||$d(e.nodeValue,n)))||eo(t)}else(e=Qd(e).createTextNode(a))[Ie]=t,t.stateNode=e}return Kc(t),null;case 13:if(a=t.memoizedState,null===e||null!==e.memoizedState&&null!==e.memoizedState.dehydrated){if(o=ao(t),null!==a&&null!==a.dehydrated){if(null===e){if(!o)throw Error(r(318));if(!(o=null!==(o=t.memoizedState)?o.dehydrated:null))throw Error(r(317));o[Ie]=t}else oo(),!(128&t.flags)&&(t.memoizedState=null),t.flags|=4;Kc(t),o=!1}else null!==Xa&&(Nl(Xa),Xa=null),o=!0;if(!o)return 256&t.flags?(No(t),t):(No(t),null)}if(No(t),128&t.flags)return t.lanes=n,t;if(n=null!==a,e=null!==e&&null!==e.memoizedState,n){o=null,null!==(a=t.child).alternate&&null!==a.alternate.memoizedState&&null!==a.alternate.memoizedState.cachePool&&(o=a.alternate.memoizedState.cachePool.pool);var i=null;null!==a.memoizedState&&null!==a.memoizedState.cachePool&&(i=a.memoizedState.cachePool.pool),i!==o&&(a.flags|=2048)}return n!==e&&n&&(t.child.flags|=8192),Gc(t,t.updateQueue),Kc(t),null;case 4:return ee(),null===e&&Fd(t.stateNode.containerInfo),Kc(t),null;case 10:return _s(t.type),Kc(t),null;case 19:if(W(jo),null===(o=t.memoizedState))return Kc(t),null;if(a=!!(128&t.flags),null===(i=o.rendering))if(a)Wc(o,!1);else{if(0!==dl||null!==e&&128&e.flags)for(e=t.child;null!==e;){if(null!==(i=Mo(e))){for(t.flags|=128,Wc(o,!1),e=i.updateQueue,t.updateQueue=e,Gc(t,e),t.subtreeFlags=0,e=n,n=t.child;null!==n;)Ic(n,e),n=n.sibling;return K(jo,1&jo.current|2),t.child}e=e.sibling}null!==o.tail&&ce()>vl&&(t.flags|=128,a=!0,Wc(o,!1),t.lanes=4194304)}else{if(!a)if(null!==(e=Mo(i))){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Gc(t,e),Wc(o,!0),null===o.tail&&"hidden"===o.tailMode&&!i.alternate&&!Ya)return Kc(t),null}else 2*ce()-o.renderingStartTime>vl&&536870912!==n&&(t.flags|=128,a=!0,Wc(o,!1),t.lanes=4194304);o.isBackwards?(i.sibling=t.child,t.child=i):(null!==(e=o.last)?e.sibling=i:t.child=i,o.last=i)}return null!==o.tail?(t=o.tail,o.rendering=t,o.tail=t.sibling,o.renderingStartTime=ce(),t.sibling=null,e=jo.current,K(jo,a?1&e|2:1&e),t):(Kc(t),null);case 22:case 23:return No(t),To(),a=null!==t.memoizedState,null!==e?null!==e.memoizedState!==a&&(t.flags|=8192):a&&(t.flags|=8192),a?!!(536870912&n)&&!(128&t.flags)&&(Kc(t),6&t.subtreeFlags&&(t.flags|=8192)):Kc(t),null!==(n=t.updateQueue)&&Gc(t,n.retryQueue),n=null,null!==e&&null!==e.memoizedState&&null!==e.memoizedState.cachePool&&(n=e.memoizedState.cachePool.pool),a=null,null!==t.memoizedState&&null!==t.memoizedState.cachePool&&(a=t.memoizedState.cachePool.pool),a!==n&&(t.flags|=2048),null!==e&&W(Qo),null;case 24:return n=null,null!==e&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),_s(zo),Kc(t),null;case 25:return null}throw Error(r(156,t.tag))}function Yc(e,t){switch(Wa(t),t.tag){case 1:return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return _s(zo),ee(),65536&(e=t.flags)&&!(128&e)?(t.flags=-65537&e|128,t):null;case 26:case 27:case 5:return ne(t),null;case 13:if(No(t),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(r(340));oo()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return W(jo),null;case 4:return ee(),null;case 10:return _s(t.type),null;case 22:case 23:return No(t),To(),null!==e&&W(Qo),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 24:return _s(zo),null;default:return null}}function Xc(e,t){switch(Wa(t),t.tag){case 3:_s(zo),ee();break;case 26:case 27:case 5:ne(t);break;case 4:ee();break;case 13:No(t);break;case 19:W(jo);break;case 10:_s(t.type);break;case 22:case 23:No(t),To(),null!==e&&W(Qo);break;case 24:_s(zo)}}var Jc={getCacheForType:function(e){var t=xs(zo),n=t.data.get(e);return void 0===n&&(n=e(),t.data.set(e,n)),n}},Zc="function"==typeof WeakMap?WeakMap:Map,el=0,tl=null,nl=null,al=0,ol=0,il=null,rl=!1,sl=!1,cl=!1,ll=0,dl=0,ul=0,pl=0,hl=0,yl=0,gl=0,fl=null,ml=null,bl=!1,_l=0,vl=1/0,Pl=null,Sl=null,wl=!1,kl=null,xl=0,Al=0,El=null,Tl=0,Cl=null;function Dl(){if(2&el&&0!==al)return al&-al;if(null!==D.T){return 0!==Ho?Ho:Pd()}return Me()}function Ol(){0===yl&&(yl=536870912&al&&!Ya?536870912:Ce());var e=Co.current;return null!==e&&(e.flags|=32),yl}function Fl(e,t,n){(e===tl&&2===ol||null!==e.cancelPendingCommit)&&(zl(e,0),Ll(e,al,yl,!1)),Fe(e,n),2&el&&e===tl||(e===tl&&(!(2&el)&&(pl|=n),4===dl&&Ll(e,al,yl,!1)),gd(e))}function Rl(e,t,n){if(6&el)throw Error(r(327));for(var a=!n&&!(60&t)&&!(t&e.expiredLanes)||Ee(e,t),o=a?function(e,t){var n=el;el|=2;var a=$l(),o=ql();tl!==e||al!==t?(Pl=null,vl=ce()+500,zl(e,t)):sl=Ee(e,t);e:for(;;)try{if(0!==ol&&null!==nl){t=nl;var i=il;t:switch(ol){case 1:ol=0,il=null,Yl(e,t,i,1);break;case 2:if(lo(i)){ol=0,il=null,Ql(t);break}t=function(){2===ol&&tl===e&&(ol=7),gd(e)},i.then(t,t);break e;case 3:ol=7;break e;case 4:ol=5;break e;case 7:lo(i)?(ol=0,il=null,Ql(t)):(ol=0,il=null,Yl(e,t,i,7));break;case 5:var s=null;switch(nl.tag){case 26:s=nl.memoizedState;case 5:case 27:var c=nl;if(!s||Cu(s)){ol=0,il=null;var l=c.sibling;if(null!==l)nl=l;else{var d=c.return;null!==d?(nl=d,Xl(d)):nl=null}break t}}ol=0,il=null,Yl(e,t,i,5);break;case 6:ol=0,il=null,Yl(e,t,i,6);break;case 8:Bl(),dl=6;break e;default:throw Error(r(462))}}Wl();break}catch(u){Ul(e,u)}return ms=fs=null,D.H=a,D.A=o,el=n,null!==nl?0:(tl=null,al=0,Aa(),dl)}(e,t):Hl(e,t,!0),i=a;;){if(0===o){sl&&!a&&Ll(e,t,0,!1);break}if(6===o)Ll(e,t,0,!rl);else{if(n=e.current.alternate,i&&!Ml(n)){o=Hl(e,t,!1),i=!1;continue}if(2===o){if(i=t,e.errorRecoveryDisabledLanes&i)var s=0;else s=0!==(s=-536870913&e.pendingLanes)?s:536870912&s?536870912:0;if(0!==s){t=s;e:{var c=e;o=fl;var l=c.current.memoizedState.isDehydrated;if(l&&(zl(c,s).flags|=256),2!==(s=Hl(c,s,!1))){if(cl&&!l){c.errorRecoveryDisabledLanes|=i,pl|=i,o=4;break e}i=ml,ml=o,null!==i&&Nl(i)}o=s}if(i=!1,2!==o)continue}}if(1===o){zl(e,0),Ll(e,t,0,!0);break}e:{switch(a=e,o){case 0:case 1:throw Error(r(345));case 4:if((4194176&t)===t){Ll(a,t,yl,!rl);break e}break;case 2:ml=null;break;case 3:case 5:break;default:throw Error(r(329))}if(a.finishedWork=n,a.finishedLanes=t,(62914560&t)===t&&10<(i=_l+300-ce())){if(Ll(a,t,yl,!rl),0!==Ae(a,0))break e;a.timeoutHandle=eu(jl.bind(null,a,n,ml,Pl,bl,t,yl,pl,gl,rl,2,-0,0),i)}else jl(a,n,ml,Pl,bl,t,yl,pl,gl,rl,0,-0,0)}}break}gd(e)}function Nl(e){null===ml?ml=e:ml.push.apply(ml,e)}function jl(e,t,n,a,o,i,s,c,l,d,u,p,h){var y=t.subtreeFlags;if((8192&y||!(16785408&~y))&&(Du={stylesheets:null,count:0,unsuspend:Ou},Tc(t),null!==(t=function(){if(null===Du)throw Error(r(475));var e=Du;return e.stylesheets&&0===e.count&&Nu(e,e.stylesheets),0n?32:n,D.T=null,null===kl)var i=!1;else{n=El,El=null;var s=kl,c=xl;if(kl=null,xl=0,6&el)throw Error(r(331));var l=el;if(el|=4,Oc(s.current),wc(s,s.current,c,n),el=l,fd(0,!1),be&&"function"==typeof be.onPostCommitFiberRoot)try{be.onPostCommitFiberRoot(me,s)}catch(d){}i=!0}return i}finally{$.p=o,D.T=a,ed(e,t)}}return!1}function nd(e,t,n){t=Na(n,t),null!==(e=Fs(e,t=zr(e.stateNode,t,2),2))&&(Fe(e,2),gd(e))}function ad(e,t,n){if(3===e.tag)nd(e,e,n);else for(;null!==t;){if(3===t.tag){nd(t,e,n);break}if(1===t.tag){var a=t.stateNode;if("function"==typeof t.type.getDerivedStateFromError||"function"==typeof a.componentDidCatch&&(null===Sl||!Sl.has(a))){e=Na(n,e),null!==(a=Fs(t,n=Ur(2),2))&&($r(n,a,t,e),Fe(a,2),gd(a));break}}t=t.return}}function od(e,t,n){var a=e.pingCache;if(null===a){a=e.pingCache=new Zc;var o=new Set;a.set(t,o)}else void 0===(o=a.get(t))&&(o=new Set,a.set(t,o));o.has(n)||(cl=!0,o.add(n),e=id.bind(null,e,t,n),t.then(e,e))}function id(e,t,n){var a=e.pingCache;null!==a&&a.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,tl===e&&(al&n)===n&&(4===dl||3===dl&&(62914560&al)===al&&300>ce()-_l?!(2&el)&&zl(e,0):hl|=n,gl===al&&(gl=0)),gd(e)}function rd(e,t){0===t&&(t=De()),null!==(e=Ca(e,t))&&(Fe(e,t),gd(e))}function sd(e){var t=e.memoizedState,n=0;null!==t&&(n=t.retryLane),rd(e,n)}function cd(e,t){var n=0;switch(e.tag){case 13:var a=e.stateNode,o=e.memoizedState;null!==o&&(n=o.retryLane);break;case 19:a=e.stateNode;break;case 22:a=e.stateNode._retryCache;break;default:throw Error(r(314))}null!==a&&a.delete(t),rd(e,n)}var ld=null,dd=null,ud=!1,pd=!1,hd=!1,yd=0;function gd(e){var t;e!==dd&&null===e.next&&(null===dd?ld=dd=e:dd=dd.next=e),pd=!0,ud||(ud=!0,t=md,au((function(){6&el?oe(de,t):t()})))}function fd(e,t){if(!hd&&pd){hd=!0;do{for(var n=!1,a=ld;null!==a;){if(!t)if(0!==e){var o=a.pendingLanes;if(0===o)var i=0;else{var r=a.suspendedLanes,s=a.pingedLanes;i=(1<<31-ve(42|e)+1)-1,i=201326677&(i&=o&~(r&~s))?201326677&i|1:i?2|i:0}0!==i&&(n=!0,vd(a,i))}else i=al,!(3&(i=Ae(a,a===tl?i:0)))||Ee(a,i)||(n=!0,vd(a,i));a=a.next}}while(n);hd=!1}}function md(){pd=ud=!1;var e=0;0!==yd&&(function(){var e=window.event;if(e&&"popstate"===e.type)return e!==Zd&&(Zd=e,!0);return Zd=null,!1}()&&(e=yd),yd=0);for(var t=ce(),n=null,a=ld;null!==a;){var o=a.next,i=bd(a,t);0===i?(a.next=null,null===n?ld=o:n.next=o,null===o&&(dd=n)):(n=a,(0!==e||3&i)&&(pd=!0)),a=o}fd(e,!1)}function bd(e,t){for(var n=e.suspendedLanes,a=e.pingedLanes,o=e.expirationTimes,i=-62914561&e.pendingLanes;0 title"):null)}function Cu(e){return!!("stylesheet"!==e.type||3&e.state.loading)}var Du=null;function Ou(){}function Fu(){if(this.count--,0===this.count)if(this.stylesheets)Nu(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}var Ru=null;function Nu(e,t){e.stylesheets=null,null!==e.unsuspend&&(e.count++,Ru=new Map,t.forEach(ju,e),Ru=null,Fu.call(e))}function ju(e,t){if(!(4&t.state.loading)){var n=Ru.get(e);if(n)var a=n.get(null);else{n=new Map,Ru.set(e,n);for(var o=e.querySelectorAll("link[data-precedence],style[data-precedence]"),i=0;i{"use strict";var a=n(6540);function o(e){var t="https://react.dev/errors/"+e;if(1{"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}(),e.exports=n(1247)},961:(e,t,n)=>{"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}(),e.exports=n(6221)},115:e=>{var t="undefined"!=typeof Element,n="function"==typeof Map,a="function"==typeof Set,o="function"==typeof ArrayBuffer&&!!ArrayBuffer.isView;function i(e,r){if(e===r)return!0;if(e&&r&&"object"==typeof e&&"object"==typeof r){if(e.constructor!==r.constructor)return!1;var s,c,l,d;if(Array.isArray(e)){if((s=e.length)!=r.length)return!1;for(c=s;0!=c--;)if(!i(e[c],r[c]))return!1;return!0}if(n&&e instanceof Map&&r instanceof Map){if(e.size!==r.size)return!1;for(d=e.entries();!(c=d.next()).done;)if(!r.has(c.value[0]))return!1;for(d=e.entries();!(c=d.next()).done;)if(!i(c.value[1],r.get(c.value[0])))return!1;return!0}if(a&&e instanceof Set&&r instanceof Set){if(e.size!==r.size)return!1;for(d=e.entries();!(c=d.next()).done;)if(!r.has(c.value[0]))return!1;return!0}if(o&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(r)){if((s=e.length)!=r.length)return!1;for(c=s;0!=c--;)if(e[c]!==r[c])return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf&&"function"==typeof e.valueOf&&"function"==typeof r.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString&&"function"==typeof e.toString&&"function"==typeof r.toString)return e.toString()===r.toString();if((s=(l=Object.keys(e)).length)!==Object.keys(r).length)return!1;for(c=s;0!=c--;)if(!Object.prototype.hasOwnProperty.call(r,l[c]))return!1;if(t&&e instanceof Element)return!1;for(c=s;0!=c--;)if(("_owner"!==l[c]&&"__v"!==l[c]&&"__o"!==l[c]||!e.$$typeof)&&!i(e[l[c]],r[l[c]]))return!1;return!0}return e!=e&&r!=r}e.exports=function(e,t){try{return i(e,t)}catch(n){if((n.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw n}}},545:(e,t,n)=>{"use strict";n.d(t,{mg:()=>Z,vd:()=>H});var a=n(6540),o=n(5556),i=n.n(o),r=n(115),s=n.n(r),c=n(311),l=n.n(c),d=n(2833),u=n.n(d);function p(){return p=Object.assign||function(e){for(var t=1;t=0||(o[n]=e[n]);return o}var f={BASE:"base",BODY:"body",HEAD:"head",HTML:"html",LINK:"link",META:"meta",NOSCRIPT:"noscript",SCRIPT:"script",STYLE:"style",TITLE:"title",FRAGMENT:"Symbol(react.fragment)"},m={rel:["amphtml","canonical","alternate"]},b={type:["application/ld+json"]},_={charset:"",name:["robots","description"],property:["og:type","og:title","og:url","og:image","og:image:alt","og:description","twitter:url","twitter:title","twitter:description","twitter:image","twitter:image:alt","twitter:card","twitter:site"]},v=Object.keys(f).map((function(e){return f[e]})),P={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},S=Object.keys(P).reduce((function(e,t){return e[P[t]]=t,e}),{}),w=function(e,t){for(var n=e.length-1;n>=0;n-=1){var a=e[n];if(Object.prototype.hasOwnProperty.call(a,t))return a[t]}return null},k=function(e){var t=w(e,f.TITLE),n=w(e,"titleTemplate");if(Array.isArray(t)&&(t=t.join("")),n&&t)return n.replace(/%s/g,(function(){return t}));var a=w(e,"defaultTitle");return t||a||void 0},x=function(e){return w(e,"onChangeClientState")||function(){}},A=function(e,t){return t.filter((function(t){return void 0!==t[e]})).map((function(t){return t[e]})).reduce((function(e,t){return p({},e,t)}),{})},E=function(e,t){return t.filter((function(e){return void 0!==e[f.BASE]})).map((function(e){return e[f.BASE]})).reverse().reduce((function(t,n){if(!t.length)for(var a=Object.keys(n),o=0;o/g,">").replace(/"/g,""").replace(/'/g,"'")},j=function(e){return Object.keys(e).reduce((function(t,n){var a=void 0!==e[n]?n+'="'+e[n]+'"':""+n;return t?t+" "+a:a}),"")},M=function(e,t){return void 0===t&&(t={}),Object.keys(e).reduce((function(t,n){return t[P[n]||n]=e[n],t}),t)},L=function(e,t){return t.map((function(t,n){var o,i=((o={key:n})["data-rh"]=!0,o);return Object.keys(t).forEach((function(e){var n=P[e]||e;"innerHTML"===n||"cssText"===n?i.dangerouslySetInnerHTML={__html:t.innerHTML||t.cssText}:i[n]=t[e]})),a.createElement(e,i)}))},I=function(e,t,n){switch(e){case f.TITLE:return{toComponent:function(){return n=t.titleAttributes,(o={key:e=t.title})["data-rh"]=!0,i=M(n,o),[a.createElement(f.TITLE,i,e)];var e,n,o,i},toString:function(){return function(e,t,n,a){var o=j(n),i=D(t);return o?"<"+e+' data-rh="true" '+o+">"+N(i,a)+"":"<"+e+' data-rh="true">'+N(i,a)+""}(e,t.title,t.titleAttributes,n)}};case"bodyAttributes":case"htmlAttributes":return{toComponent:function(){return M(t)},toString:function(){return j(t)}};default:return{toComponent:function(){return L(e,t)},toString:function(){return function(e,t,n){return t.reduce((function(t,a){var o=Object.keys(a).filter((function(e){return!("innerHTML"===e||"cssText"===e)})).reduce((function(e,t){var o=void 0===a[t]?t:t+'="'+N(a[t],n)+'"';return e?e+" "+o:o}),""),i=a.innerHTML||a.cssText||"",r=-1===R.indexOf(e);return t+"<"+e+' data-rh="true" '+o+(r?"/>":">"+i+"")}),"")}(e,t,n)}}}},B=function(e){var t=e.baseTag,n=e.bodyAttributes,a=e.encode,o=e.htmlAttributes,i=e.noscriptTags,r=e.styleTags,s=e.title,c=void 0===s?"":s,l=e.titleAttributes,d=e.linkTags,u=e.metaTags,p=e.scriptTags,h={toComponent:function(){},toString:function(){return""}};if(e.prioritizeSeoTags){var y=function(e){var t=e.linkTags,n=e.scriptTags,a=e.encode,o=O(e.metaTags,_),i=O(t,m),r=O(n,b);return{priorityMethods:{toComponent:function(){return[].concat(L(f.META,o.priority),L(f.LINK,i.priority),L(f.SCRIPT,r.priority))},toString:function(){return I(f.META,o.priority,a)+" "+I(f.LINK,i.priority,a)+" "+I(f.SCRIPT,r.priority,a)}},metaTags:o.default,linkTags:i.default,scriptTags:r.default}}(e);h=y.priorityMethods,d=y.linkTags,u=y.metaTags,p=y.scriptTags}return{priority:h,base:I(f.BASE,t,a),bodyAttributes:I("bodyAttributes",n,a),htmlAttributes:I("htmlAttributes",o,a),link:I(f.LINK,d,a),meta:I(f.META,u,a),noscript:I(f.NOSCRIPT,i,a),script:I(f.SCRIPT,p,a),style:I(f.STYLE,r,a),title:I(f.TITLE,{title:c,titleAttributes:l},a)}},z=[],U=function(e,t){var n=this;void 0===t&&(t="undefined"!=typeof document),this.instances=[],this.value={setHelmet:function(e){n.context.helmet=e},helmetInstances:{get:function(){return n.canUseDOM?z:n.instances},add:function(e){(n.canUseDOM?z:n.instances).push(e)},remove:function(e){var t=(n.canUseDOM?z:n.instances).indexOf(e);(n.canUseDOM?z:n.instances).splice(t,1)}}},this.context=e,this.canUseDOM=t,t||(e.helmet=B({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))},$=a.createContext({}),q=i().shape({setHelmet:i().func,helmetInstances:i().shape({get:i().func,add:i().func,remove:i().func})}),V="undefined"!=typeof document,H=function(e){function t(n){var a;return(a=e.call(this,n)||this).helmetData=new U(a.props.context,t.canUseDOM),a}return h(t,e),t.prototype.render=function(){return a.createElement($.Provider,{value:this.helmetData.value},this.props.children)},t}(a.Component);H.canUseDOM=V,H.propTypes={context:i().shape({helmet:i().shape()}),children:i().node.isRequired},H.defaultProps={context:{}},H.displayName="HelmetProvider";var G=function(e,t){var n,a=document.head||document.querySelector(f.HEAD),o=a.querySelectorAll(e+"[data-rh]"),i=[].slice.call(o),r=[];return t&&t.length&&t.forEach((function(t){var a=document.createElement(e);for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&("innerHTML"===o?a.innerHTML=t.innerHTML:"cssText"===o?a.styleSheet?a.styleSheet.cssText=t.cssText:a.appendChild(document.createTextNode(t.cssText)):a.setAttribute(o,void 0===t[o]?"":t[o]));a.setAttribute("data-rh","true"),i.some((function(e,t){return n=t,a.isEqualNode(e)}))?i.splice(n,1):r.push(a)})),i.forEach((function(e){return e.parentNode.removeChild(e)})),r.forEach((function(e){return a.appendChild(e)})),{oldTags:i,newTags:r}},W=function(e,t){var n=document.getElementsByTagName(e)[0];if(n){for(var a=n.getAttribute("data-rh"),o=a?a.split(","):[],i=[].concat(o),r=Object.keys(t),s=0;s=0;u-=1)n.removeAttribute(i[u]);o.length===i.length?n.removeAttribute("data-rh"):n.getAttribute("data-rh")!==r.join(",")&&n.setAttribute("data-rh",r.join(","))}},K=function(e,t){var n=e.baseTag,a=e.htmlAttributes,o=e.linkTags,i=e.metaTags,r=e.noscriptTags,s=e.onChangeClientState,c=e.scriptTags,l=e.styleTags,d=e.title,u=e.titleAttributes;W(f.BODY,e.bodyAttributes),W(f.HTML,a),function(e,t){void 0!==e&&document.title!==e&&(document.title=D(e)),W(f.TITLE,t)}(d,u);var p={baseTag:G(f.BASE,n),linkTags:G(f.LINK,o),metaTags:G(f.META,i),noscriptTags:G(f.NOSCRIPT,r),scriptTags:G(f.SCRIPT,c),styleTags:G(f.STYLE,l)},h={},y={};Object.keys(p).forEach((function(e){var t=p[e],n=t.newTags,a=t.oldTags;n.length&&(h[e]=n),a.length&&(y[e]=p[e].oldTags)})),t&&t(),s(e,h,y)},Q=null,Y=function(e){function t(){for(var t,n=arguments.length,a=new Array(n),o=0;o elements are self-closing and can not contain children. Refer to our API for more information.")}},n.flattenArrayTypeChildren=function(e){var t,n=e.child,a=e.arrayTypeChildren;return p({},a,((t={})[n.type]=[].concat(a[n.type]||[],[p({},e.newChildProps,this.mapNestedChildrenToProps(n,e.nestedChildren))]),t))},n.mapObjectTypeChildren=function(e){var t,n,a=e.child,o=e.newProps,i=e.newChildProps,r=e.nestedChildren;switch(a.type){case f.TITLE:return p({},o,((t={})[a.type]=r,t.titleAttributes=p({},i),t));case f.BODY:return p({},o,{bodyAttributes:p({},i)});case f.HTML:return p({},o,{htmlAttributes:p({},i)});default:return p({},o,((n={})[a.type]=p({},i),n))}},n.mapArrayTypeChildrenToProps=function(e,t){var n=p({},t);return Object.keys(e).forEach((function(t){var a;n=p({},n,((a={})[t]=e[t],a))})),n},n.warnOnInvalidChildren=function(e,t){return l()(v.some((function(t){return e.type===t})),"function"==typeof e.type?"You may be attempting to nest components within each other, which is not allowed. Refer to our API for more information.":"Only elements types "+v.join(", ")+" are allowed. Helmet does not support rendering <"+e.type+"> elements. Refer to our API for more information."),l()(!t||"string"==typeof t||Array.isArray(t)&&!t.some((function(e){return"string"!=typeof e})),"Helmet expects a string as a child of <"+e.type+">. Did you forget to wrap your children in braces? ( <"+e.type+">{``} ) Refer to our API for more information."),!0},n.mapChildrenToProps=function(e,t){var n=this,o={};return a.Children.forEach(e,(function(e){if(e&&e.props){var a=e.props,i=a.children,r=g(a,X),s=Object.keys(r).reduce((function(e,t){return e[S[t]||t]=r[t],e}),{}),c=e.type;switch("symbol"==typeof c?c=c.toString():n.warnOnInvalidChildren(e,i),c){case f.FRAGMENT:t=n.mapChildrenToProps(i,t);break;case f.LINK:case f.META:case f.NOSCRIPT:case f.SCRIPT:case f.STYLE:o=n.flattenArrayTypeChildren({child:e,arrayTypeChildren:o,newChildProps:s,nestedChildren:i});break;default:t=n.mapObjectTypeChildren({child:e,newProps:t,newChildProps:s,nestedChildren:i})}}})),this.mapArrayTypeChildrenToProps(o,t)},n.render=function(){var e=this.props,t=e.children,n=g(e,J),o=p({},n),i=n.helmetData;return t&&(o=this.mapChildrenToProps(t,o)),!i||i instanceof U||(i=new U(i.context,i.instances)),i?a.createElement(Y,p({},o,{context:i.value,helmetData:void 0})):a.createElement($.Consumer,null,(function(e){return a.createElement(Y,p({},o,{context:e}))}))},t}(a.Component);Z.propTypes={base:i().object,bodyAttributes:i().object,children:i().oneOfType([i().arrayOf(i().node),i().node]),defaultTitle:i().string,defer:i().bool,encodeSpecialCharacters:i().bool,htmlAttributes:i().object,link:i().arrayOf(i().object),meta:i().arrayOf(i().object),noscript:i().arrayOf(i().object),onChangeClientState:i().func,script:i().arrayOf(i().object),style:i().arrayOf(i().object),title:i().string,titleAttributes:i().object,titleTemplate:i().string,prioritizeSeoTags:i().bool,helmetData:i().object},Z.defaultProps={defer:!0,encodeSpecialCharacters:!0,prioritizeSeoTags:!1},Z.displayName="Helmet"},2799:(e,t)=>{"use strict";var n="function"==typeof Symbol&&Symbol.for,a=n?Symbol.for("react.element"):60103,o=n?Symbol.for("react.portal"):60106,i=n?Symbol.for("react.fragment"):60107,r=n?Symbol.for("react.strict_mode"):60108,s=n?Symbol.for("react.profiler"):60114,c=n?Symbol.for("react.provider"):60109,l=n?Symbol.for("react.context"):60110,d=n?Symbol.for("react.async_mode"):60111,u=n?Symbol.for("react.concurrent_mode"):60111,p=n?Symbol.for("react.forward_ref"):60112,h=n?Symbol.for("react.suspense"):60113,y=n?Symbol.for("react.suspense_list"):60120,g=n?Symbol.for("react.memo"):60115,f=n?Symbol.for("react.lazy"):60116,m=n?Symbol.for("react.block"):60121,b=n?Symbol.for("react.fundamental"):60117,_=n?Symbol.for("react.responder"):60118,v=n?Symbol.for("react.scope"):60119;function P(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case a:switch(e=e.type){case d:case u:case i:case s:case r:case h:return e;default:switch(e=e&&e.$$typeof){case l:case p:case f:case g:case c:return e;default:return t}}case o:return t}}}function S(e){return P(e)===u}t.AsyncMode=d,t.ConcurrentMode=u,t.ContextConsumer=l,t.ContextProvider=c,t.Element=a,t.ForwardRef=p,t.Fragment=i,t.Lazy=f,t.Memo=g,t.Portal=o,t.Profiler=s,t.StrictMode=r,t.Suspense=h,t.isAsyncMode=function(e){return S(e)||P(e)===d},t.isConcurrentMode=S,t.isContextConsumer=function(e){return P(e)===l},t.isContextProvider=function(e){return P(e)===c},t.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===a},t.isForwardRef=function(e){return P(e)===p},t.isFragment=function(e){return P(e)===i},t.isLazy=function(e){return P(e)===f},t.isMemo=function(e){return P(e)===g},t.isPortal=function(e){return P(e)===o},t.isProfiler=function(e){return P(e)===s},t.isStrictMode=function(e){return P(e)===r},t.isSuspense=function(e){return P(e)===h},t.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===i||e===u||e===s||e===r||e===h||e===y||"object"==typeof e&&null!==e&&(e.$$typeof===f||e.$$typeof===g||e.$$typeof===c||e.$$typeof===l||e.$$typeof===p||e.$$typeof===b||e.$$typeof===_||e.$$typeof===v||e.$$typeof===m)},t.typeOf=P},4363:(e,t,n)=>{"use strict";e.exports=n(2799)},3259:(e,t,n)=>{"use strict";function a(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function o(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(){return r=Object.assign||function(e){for(var t=1;t{"use strict";n.d(t,{u:()=>r,v:()=>s});var a=n(6347),o=n(8168),i=n(6540);function r(e,t,n){return void 0===n&&(n=[]),e.some((function(e){var o=e.path?(0,a.B6)(t,e):n.length?n[n.length-1].match:a.Ix.computeRootMatch(t);return o&&(n.push({route:e,match:o}),e.routes&&r(e.routes,t,n)),o})),n}function s(e,t,n){return void 0===t&&(t={}),void 0===n&&(n={}),e?i.createElement(a.dO,n,e.map((function(e,n){return i.createElement(a.qh,{key:e.key||n,path:e.path,exact:e.exact,strict:e.strict,render:function(n){return e.render?e.render((0,o.A)({},n,{},t,{route:e})):i.createElement(e.component,(0,o.A)({},n,t,{route:e}))}})}))):null}},4625:(e,t,n)=>{"use strict";n.d(t,{I9:()=>u,Kd:()=>d,N_:()=>m,k2:()=>v});var a=n(6347),o=n(2892),i=n(6540),r=n(1513),s=n(8168),c=n(8587),l=n(1561),d=function(e){function t(){for(var t,n=arguments.length,a=new Array(n),o=0;o{"use strict";n.d(t,{B6:()=>w,Ix:()=>_,W6:()=>F,XZ:()=>b,dO:()=>D,qh:()=>k,zy:()=>R});var a=n(2892),o=n(6540),i=n(5556),r=n.n(i),s=n(1513),c=n(1561),l=n(8168),d=n(5302),u=n.n(d),p=(n(4363),n(8587)),h=(n(4146),1073741823),y="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==n.g?n.g:{};var g=o.createContext||function(e,t){var n,i,s="__create-react-context-"+function(){var e="__global_unique_id__";return y[e]=(y[e]||0)+1}()+"__",c=function(e){function n(){for(var t,n,a,o=arguments.length,i=new Array(o),r=0;r{"use strict";var n=Symbol.for("react.transitional.element"),a=Symbol.for("react.fragment");function o(e,t,a){var o=null;if(void 0!==a&&(o=""+a),void 0!==t.key&&(o=""+t.key),"key"in t)for(var i in a={},t)"key"!==i&&(a[i]=t[i]);else a=t;return t=a.ref,{$$typeof:n,type:e,key:o,ref:void 0!==t?t:null,props:a}}t.Fragment=a,t.jsx=o,t.jsxs=o},9869:(e,t)=>{"use strict";var n=Symbol.for("react.transitional.element"),a=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),s=Symbol.for("react.consumer"),c=Symbol.for("react.context"),l=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),u=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),h=Symbol.iterator;var y={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,f={};function m(e,t,n){this.props=e,this.context=t,this.refs=f,this.updater=n||y}function b(){}function _(e,t,n){this.props=e,this.context=t,this.refs=f,this.updater=n||y}m.prototype.isReactComponent={},m.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},m.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},b.prototype=m.prototype;var v=_.prototype=new b;v.constructor=_,g(v,m.prototype),v.isPureReactComponent=!0;var P=Array.isArray,S={H:null,A:null,T:null,S:null},w=Object.prototype.hasOwnProperty;function k(e,t,a,o,i,r){return a=r.ref,{$$typeof:n,type:e,key:t,ref:void 0!==a?a:null,props:r}}function x(e){return"object"==typeof e&&null!==e&&e.$$typeof===n}var A=/\/+/g;function E(e,t){return"object"==typeof e&&null!==e&&null!=e.key?(n=""+e.key,a={"=":"=0",":":"=2"},"$"+n.replace(/[=:]/g,(function(e){return a[e]}))):t.toString(36);var n,a}function T(){}function C(e,t,o,i,r){var s=typeof e;"undefined"!==s&&"boolean"!==s||(e=null);var c,l,d=!1;if(null===e)d=!0;else switch(s){case"bigint":case"string":case"number":d=!0;break;case"object":switch(e.$$typeof){case n:case a:d=!0;break;case p:return C((d=e._init)(e._payload),t,o,i,r)}}if(d)return r=r(e),d=""===i?"."+E(e,0):i,P(r)?(o="",null!=d&&(o=d.replace(A,"$&/")+"/"),C(r,t,o,"",(function(e){return e}))):null!=r&&(x(r)&&(c=r,l=o+(null==r.key||e&&e.key===r.key?"":(""+r.key).replace(A,"$&/")+"/")+d,r=k(c.type,l,void 0,0,0,c.props)),t.push(r)),1;d=0;var u,y=""===i?".":i+":";if(P(e))for(var g=0;g{"use strict";e.exports=n(9869)},4848:(e,t,n)=>{"use strict";e.exports=n(9698)},4477:(e,t)=>{"use strict";function n(e,t){var n=e.length;e.push(t);e:for(;0>>1,o=e[a];if(!(0>>1;ai(c,n))li(d,c)?(e[a]=d,e[l]=n,a=l):(e[a]=c,e[s]=n,a=s);else{if(!(li(d,n)))break e;e[a]=d,e[l]=n,a=l}}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}if(t.unstable_now=void 0,"object"==typeof performance&&"function"==typeof performance.now){var r=performance;t.unstable_now=function(){return r.now()}}else{var s=Date,c=s.now();t.unstable_now=function(){return s.now()-c}}var l=[],d=[],u=1,p=null,h=3,y=!1,g=!1,f=!1,m="function"==typeof setTimeout?setTimeout:null,b="function"==typeof clearTimeout?clearTimeout:null,_="undefined"!=typeof setImmediate?setImmediate:null;function v(e){for(var t=a(d);null!==t;){if(null===t.callback)o(d);else{if(!(t.startTime<=e))break;o(d),t.sortIndex=t.expirationTime,n(l,t)}t=a(d)}}function P(e){if(f=!1,v(e),!g)if(null!==a(l))g=!0,O();else{var t=a(d);null!==t&&F(P,t.startTime-e)}}var S,w=!1,k=-1,x=5,A=-1;function E(){return!(t.unstable_now()-Ae&&E());){var r=p.callback;if("function"==typeof r){p.callback=null,h=p.priorityLevel;var s=r(p.expirationTime<=e);if(e=t.unstable_now(),"function"==typeof s){p.callback=s,v(e),n=!0;break t}p===a(l)&&o(l),v(e)}else o(l);p=a(l)}if(null!==p)n=!0;else{var c=a(d);null!==c&&F(P,c.startTime-e),n=!1}}break e}finally{p=null,h=i,y=!1}n=void 0}}finally{n?S():w=!1}}}if("function"==typeof _)S=function(){_(T)};else if("undefined"!=typeof MessageChannel){var C=new MessageChannel,D=C.port2;C.port1.onmessage=T,S=function(){D.postMessage(null)}}else S=function(){m(T,0)};function O(){w||(w=!0,S())}function F(e,n){k=m((function(){e(t.unstable_now())}),n)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_continueExecution=function(){g||y||(g=!0,O())},t.unstable_forceFrameRate=function(e){0>e||125r?(e.sortIndex=i,n(d,e),null===a(l)&&e===a(d)&&(f?(b(k),k=-1):f=!0,F(P,i-r))):(e.sortIndex=s,n(l,e),g||y||(g=!0,O())),e},t.unstable_shouldYield=E,t.unstable_wrapCallback=function(e){var t=h;return function(){var n=h;h=t;try{return e.apply(this,arguments)}finally{h=n}}}},9982:(e,t,n)=>{"use strict";e.exports=n(4477)},2833:e=>{e.exports=function(e,t,n,a){var o=n?n.call(a,e,t):void 0;if(void 0!==o)return!!o;if(e===t)return!0;if("object"!=typeof e||!e||"object"!=typeof t||!t)return!1;var i=Object.keys(e),r=Object.keys(t);if(i.length!==r.length)return!1;for(var s=Object.prototype.hasOwnProperty.bind(t),c=0;c{"use strict";n.r(t),n.d(t,{default:()=>a});const a={title:"Python Guide",tagline:" ",favicon:"img/favicon.ico",url:"https://CagriCatik.github.io",baseUrl:"/Python/",organizationName:"CagriCatik",deploymentBranch:"gh-pages",onBrokenLinks:"ignore",onBrokenMarkdownLinks:"ignore",i18n:{defaultLocale:"en",locales:["en"],path:"i18n",localeConfigs:{}},presets:[["classic",{docs:{sidebarPath:"./sidebars.js",editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/"},blog:{showReadingTime:!0,feedOptions:{type:["rss","atom"],xslt:!0},editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/",onInlineTags:"warn",onInlineAuthors:"warn",onUntruncatedBlogPosts:"warn"},theme:{customCss:"./src/css/custom.css"}}]],themeConfig:{image:"img/docusaurus-social-card.jpg",navbar:{title:" ",logo:{alt:"My Site Logo",src:"img/logo.png"},items:[{type:"docSidebar",sidebarId:"guideSidebar",position:"left",label:"\ud83d\udc0d Developer Guide"},{type:"docSidebar",sidebarId:"dataAnalysisSidebar",position:"left",label:"\ud83d\udc0d Data Analysis"},{type:"docSidebar",sidebarId:"designPatternsSidebar",position:"left",label:"\ud83d\udc0d Design Patterns"},{type:"docSidebar",sidebarId:"guiSidebar",position:"left",label:"\ud83d\udc0d GUI"},{type:"docSidebar",sidebarId:"restAPISidebar",position:"left",label:"\ud83d\udc0d REST-API"},{type:"docSidebar",sidebarId:"cicdSidebar",position:"left",label:"\ud83d\udc0d CI/CD"},{type:"docSidebar",sidebarId:"tipsAndTricksSidebar",position:"left",label:"\ud83d\udc0d Tips & Tricks"},{to:"/blog",label:"\ud83d\udc0d Blog",position:"left"},{href:"https://github.com/CagriCatik/Python",label:"GitHub",position:"right"}],hideOnScroll:!1},footer:{style:"dark",links:[],copyright:"Copyright \xa9 2025"},prism:{theme:{plain:{color:"#393A34",backgroundColor:"#f6f8fa"},styles:[{types:["comment","prolog","doctype","cdata"],style:{color:"#999988",fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}},{types:["string","attr-value"],style:{color:"#e3116c"}},{types:["punctuation","operator"],style:{color:"#393A34"}},{types:["entity","url","symbol","number","boolean","variable","constant","property","regex","inserted"],style:{color:"#36acaa"}},{types:["atrule","keyword","attr-name","selector"],style:{color:"#00a4db"}},{types:["function","deleted","tag"],style:{color:"#d73a49"}},{types:["function-variable"],style:{color:"#6f42c1"}},{types:["tag","selector","keyword"],style:{color:"#00009f"}}]},darkTheme:{plain:{color:"#F8F8F2",backgroundColor:"#282A36"},styles:[{types:["prolog","constant","builtin"],style:{color:"rgb(189, 147, 249)"}},{types:["inserted","function"],style:{color:"rgb(80, 250, 123)"}},{types:["deleted"],style:{color:"rgb(255, 85, 85)"}},{types:["changed"],style:{color:"rgb(255, 184, 108)"}},{types:["punctuation","symbol"],style:{color:"rgb(248, 248, 242)"}},{types:["string","char","tag","selector"],style:{color:"rgb(255, 121, 198)"}},{types:["keyword","variable"],style:{color:"rgb(189, 147, 249)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(98, 114, 164)"}},{types:["attr-name"],style:{color:"rgb(241, 250, 140)"}}]},additionalLanguages:[],magicComments:[{className:"theme-code-block-highlighted-line",line:"highlight-next-line",block:{start:"highlight-start",end:"highlight-end"}}]},colorMode:{defaultMode:"light",disableSwitch:!1,respectPrefersColorScheme:!1},docs:{versionPersistence:"localStorage",sidebar:{hideable:!1,autoCollapseCategories:!1}},blog:{sidebar:{groupByYear:!0}},metadata:[],tableOfContents:{minHeadingLevel:2,maxHeadingLevel:3}},baseUrlIssueBanner:!0,future:{experimental_faster:{swcJsLoader:!1,swcJsMinimizer:!1,swcHtmlMinimizer:!1,lightningCssMinimizer:!1,mdxCrossCompilerCache:!1,rspackBundler:!1},experimental_storage:{type:"localStorage",namespace:!1},experimental_router:"browser"},onBrokenAnchors:"warn",onDuplicateRoutes:"warn",staticDirectories:["static"],customFields:{},plugins:[],themes:[],scripts:[],headTags:[],stylesheets:[],clientModules:[],titleDelimiter:"|",noIndex:!1,markdown:{format:"mdx",mermaid:!1,mdx1Compat:{comments:!0,admonitions:!0,headingIds:!0},anchors:{maintainCase:!1}}}},8168:(e,t,n)=>{"use strict";function a(){return a=Object.assign?Object.assign.bind():function(e){for(var t=1;ta})},2892:(e,t,n)=>{"use strict";function a(e,t){return a=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},a(e,t)}function o(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,a(e,t)}n.d(t,{A:()=>o})},8587:(e,t,n)=>{"use strict";function a(e,t){if(null==e)return{};var n={};for(var a in e)if({}.hasOwnProperty.call(e,a)){if(t.includes(a))continue;n[a]=e[a]}return n}n.d(t,{A:()=>a})},4164:(e,t,n)=>{"use strict";function a(e){var t,n,o="";if("string"==typeof e||"number"==typeof e)o+=e;else if("object"==typeof e)if(Array.isArray(e)){var i=e.length;for(t=0;to});const o=function(){for(var e,t,n=0,o="",i=arguments.length;n{"use strict";n.d(t,{My:()=>E,f4:()=>ne});var a,o,i,r,s,c,l,d=n(6540),u=n(4164),p=Object.create,h=Object.defineProperty,y=Object.defineProperties,g=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyDescriptors,m=Object.getOwnPropertyNames,b=Object.getOwnPropertySymbols,_=Object.getPrototypeOf,v=Object.prototype.hasOwnProperty,P=Object.prototype.propertyIsEnumerable,S=(e,t,n)=>t in e?h(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,w=(e,t)=>{for(var n in t||(t={}))v.call(t,n)&&S(e,n,t[n]);if(b)for(var n of b(t))P.call(t,n)&&S(e,n,t[n]);return e},k=(e,t)=>y(e,f(t)),x=(e,t)=>{var n={};for(var a in e)v.call(e,a)&&t.indexOf(a)<0&&(n[a]=e[a]);if(null!=e&&b)for(var a of b(e))t.indexOf(a)<0&&P.call(e,a)&&(n[a]=e[a]);return n},A=(a={"../../node_modules/.pnpm/prismjs@1.29.0_patch_hash=vrxx3pzkik6jpmgpayxfjunetu/node_modules/prismjs/prism.js"(e,t){var n=function(){var e=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,t=0,n={},a={util:{encode:function e(t){return t instanceof o?new o(t.type,e(t.content),t.alias):Array.isArray(t)?t.map(e):t.replace(/&/g,"&").replace(/=u.reach);w+=S.value.length,S=S.next){var k=S.value;if(t.length>e.length)return;if(!(k instanceof o)){var x,A=1;if(b){if(!(x=i(P,w,e,m))||x.index>=e.length)break;var E=x.index,T=x.index+x[0].length,C=w;for(C+=S.value.length;E>=C;)C+=(S=S.next).value.length;if(w=C-=S.value.length,S.value instanceof o)continue;for(var D=S;D!==t.tail&&(Cu.reach&&(u.reach=N);var j=S.prev;if(F&&(j=c(t,j,F),w+=F.length),l(t,j,A),S=c(t,j,new o(p,f?a.tokenize(O,f):O,_,O)),R&&c(t,S,R),A>1){var M={cause:p+","+y,reach:N};r(e,t,n,S.prev,w,M),u&&M.reach>u.reach&&(u.reach=M.reach)}}}}}}function s(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function c(e,t,n){var a=t.next,o={value:n,prev:t,next:a};return t.next=o,a.prev=o,e.length++,o}function l(e,t,n){for(var a=t.next,o=0;o"+i.content+""},a}();t.exports=n,n.default=n}},function(){return o||(0,a[m(a)[0]])((o={exports:{}}).exports,o),o.exports}),E=((e,t,n)=>(n=null!=e?p(_(e)):{},((e,t,n,a)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let o of m(t))v.call(e,o)||o===n||h(e,o,{get:()=>t[o],enumerable:!(a=g(t,o))||a.enumerable});return e})(!t&&e&&e.__esModule?n:h(n,"default",{value:e,enumerable:!0}),e)))(A());E.languages.markup={comment:{pattern://,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},E.languages.markup.tag.inside["attr-value"].inside.entity=E.languages.markup.entity,E.languages.markup.doctype.inside["internal-subset"].inside=E.languages.markup,E.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(E.languages.markup.tag,"addInlined",{value:function(e,t){var n;(t=((n=((n={})["language-"+t]={pattern:/(^$)/i,lookbehind:!0,inside:E.languages[t]},n.cdata=/^$/i,{"included-cdata":{pattern://i,inside:n}}))["language-"+t]={pattern:/[\s\S]+/,inside:E.languages[t]},{}))[e]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:n},E.languages.insertBefore("markup","cdata",t)}}),Object.defineProperty(E.languages.markup.tag,"addAttribute",{value:function(e,t){E.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+e+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[t,"language-"+t],inside:E.languages[t]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),E.languages.html=E.languages.markup,E.languages.mathml=E.languages.markup,E.languages.svg=E.languages.markup,E.languages.xml=E.languages.extend("markup",{}),E.languages.ssml=E.languages.xml,E.languages.atom=E.languages.xml,E.languages.rss=E.languages.xml,i=E,r={pattern:/\\[\\(){}[\]^$+*?|.]/,alias:"escape"},c="(?:[^\\\\-]|"+(s=/\\(?:x[\da-fA-F]{2}|u[\da-fA-F]{4}|u\{[\da-fA-F]+\}|0[0-7]{0,2}|[123][0-7]{2}|c[a-zA-Z]|.)/).source+")",c=RegExp(c+"-"+c),l={pattern:/(<|')[^<>']+(?=[>']$)/,lookbehind:!0,alias:"variable"},i.languages.regex={"char-class":{pattern:/((?:^|[^\\])(?:\\\\)*)\[(?:[^\\\]]|\\[\s\S])*\]/,lookbehind:!0,inside:{"char-class-negation":{pattern:/(^\[)\^/,lookbehind:!0,alias:"operator"},"char-class-punctuation":{pattern:/^\[|\]$/,alias:"punctuation"},range:{pattern:c,inside:{escape:s,"range-punctuation":{pattern:/-/,alias:"operator"}}},"special-escape":r,"char-set":{pattern:/\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},escape:s}},"special-escape":r,"char-set":{pattern:/\.|\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},backreference:[{pattern:/\\(?![123][0-7]{2})[1-9]/,alias:"keyword"},{pattern:/\\k<[^<>']+>/,alias:"keyword",inside:{"group-name":l}}],anchor:{pattern:/[$^]|\\[ABbGZz]/,alias:"function"},escape:s,group:[{pattern:/\((?:\?(?:<[^<>']+>|'[^<>']+'|[>:]|]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},E.languages.javascript=E.languages.extend("clike",{"class-name":[E.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),E.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,E.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:E.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:E.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:E.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:E.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:E.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),E.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:E.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),E.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),E.languages.markup&&(E.languages.markup.tag.addInlined("script","javascript"),E.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),E.languages.js=E.languages.javascript,E.languages.actionscript=E.languages.extend("javascript",{keyword:/\b(?:as|break|case|catch|class|const|default|delete|do|dynamic|each|else|extends|final|finally|for|function|get|if|implements|import|in|include|instanceof|interface|internal|is|namespace|native|new|null|override|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|use|var|void|while|with)\b/,operator:/\+\+|--|(?:[+\-*\/%^]|&&?|\|\|?|<>?>?|[!=]=?)=?|[~?@]/}),E.languages.actionscript["class-name"].alias="function",delete E.languages.actionscript.parameter,delete E.languages.actionscript["literal-property"],E.languages.markup&&E.languages.insertBefore("actionscript","string",{xml:{pattern:/(^|[^.])<\/?\w+(?:\s+[^\s>\/=]+=("|')(?:\\[\s\S]|(?!\2)[^\\])*\2)*\s*\/?>/,lookbehind:!0,inside:E.languages.markup}}),function(e){var t=/#(?!\{).+/,n={pattern:/#\{[^}]+\}/,alias:"variable"};e.languages.coffeescript=e.languages.extend("javascript",{comment:t,string:[{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,inside:{interpolation:n}}],keyword:/\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,"class-member":{pattern:/@(?!\d)\w+/,alias:"variable"}}),e.languages.insertBefore("coffeescript","comment",{"multiline-comment":{pattern:/###[\s\S]+?###/,alias:"comment"},"block-regex":{pattern:/\/{3}[\s\S]*?\/{3}/,alias:"regex",inside:{comment:t,interpolation:n}}}),e.languages.insertBefore("coffeescript","string",{"inline-javascript":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,inside:{delimiter:{pattern:/^`|`$/,alias:"punctuation"},script:{pattern:/[\s\S]+/,alias:"language-javascript",inside:e.languages.javascript}}},"multiline-string":[{pattern:/'''[\s\S]*?'''/,greedy:!0,alias:"string"},{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string",inside:{interpolation:n}}]}),e.languages.insertBefore("coffeescript","keyword",{property:/(?!\d)\w+(?=\s*:(?!:))/}),delete e.languages.coffeescript["template-string"],e.languages.coffee=e.languages.coffeescript}(E),function(e){var t=e.languages.javadoclike={parameter:{pattern:/(^[\t ]*(?:\/{3}|\*|\/\*\*)\s*@(?:arg|arguments|param)\s+)\w+/m,lookbehind:!0},keyword:{pattern:/(^[\t ]*(?:\/{3}|\*|\/\*\*)\s*|\{)@[a-z][a-zA-Z-]+\b/m,lookbehind:!0},punctuation:/[{}]/};Object.defineProperty(t,"addSupport",{value:function(t,n){(t="string"==typeof t?[t]:t).forEach((function(t){var a=function(e){e.inside||(e.inside={}),e.inside.rest=n},o="doc-comment";if(i=e.languages[t]){var i,r=i[o];if((r=r||(i=e.languages.insertBefore(t,"comment",{"doc-comment":{pattern:/(^|[^\\])\/\*\*[^/][\s\S]*?(?:\*\/|$)/,lookbehind:!0,alias:"comment"}}))[o])instanceof RegExp&&(r=i[o]={pattern:r}),Array.isArray(r))for(var s=0,c=r.length;s|\+|~|\|\|/,punctuation:/[(),]/}},e.languages.css.atrule.inside["selector-function-argument"].inside=t,e.languages.insertBefore("css","property",{variable:{pattern:/(^|[^-\w\xA0-\uFFFF])--(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*/i,lookbehind:!0}}),{pattern:/(\b\d+)(?:%|[a-z]+(?![\w-]))/,lookbehind:!0}),{pattern:/(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,lookbehind:!0});e.languages.insertBefore("css","function",{operator:{pattern:/(\s)[+\-*\/](?=\s)/,lookbehind:!0},hexcode:{pattern:/\B#[\da-f]{3,8}\b/i,alias:"color"},color:[{pattern:/(^|[^\w-])(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|RebeccaPurple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)(?![\w-])/i,lookbehind:!0},{pattern:/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,inside:{unit:t,number:n,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:t,number:n})}(E),function(e){var t=/[*&][^\s[\]{},]+/,n=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,a="(?:"+n.source+"(?:[ \t]+"+t.source+")?|"+t.source+"(?:[ \t]+"+n.source+")?)",o=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-])(?:[ \t]*(?:(?![#:])|:))*/.source.replace(//g,(function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source})),i=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function r(e,t){t=(t||"").replace(/m/g,"")+"m";var n=/([:\-,[{]\s*(?:\s<>[ \t]+)?)(?:<>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<>/g,(function(){return a})).replace(/<>/g,(function(){return e}));return RegExp(n,t)}e.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<>/g,(function(){return a}))),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<>[ \t]+)?)<>(?=\s*:\s)/.source.replace(/<>/g,(function(){return a})).replace(/<>/g,(function(){return"(?:"+o+"|"+i+")"}))),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:r(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:r(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:r(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:r(i),lookbehind:!0,greedy:!0},number:{pattern:r(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:n,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml}(E),function(e){var t=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function n(e){return e=e.replace(//g,(function(){return t})),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+e+")")}var a=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,o=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,(function(){return a})),i=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source,r=(e.languages.markdown=e.languages.extend("markup",{}),e.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:e.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+o+i+"(?:"+o+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+o+i+")(?:"+o+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(a),inside:e.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+o+")"+i+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+o+"$"),inside:{"table-header":{pattern:RegExp(a),alias:"important",inside:e.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:n(/\b__(?:(?!_)|_(?:(?!_))+_)+__\b|\*\*(?:(?!\*)|\*(?:(?!\*))+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:n(/\b_(?:(?!_)|__(?:(?!_))+__)+_\b|\*(?:(?!\*)|\*\*(?:(?!\*))+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:n(/(~~?)(?:(?!~))+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:n(/!?\[(?:(?!\]))+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\]))+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach((function(t){["url","bold","italic","strike","code-snippet"].forEach((function(n){t!==n&&(e.languages.markdown[t].inside.content.inside[n]=e.languages.markdown[n])}))})),e.hooks.add("after-tokenize",(function(e){"markdown"!==e.language&&"md"!==e.language||function e(t){if(t&&"string"!=typeof t)for(var n=0,a=t.length;n",quot:'"'},c=String.fromCodePoint||String.fromCharCode;e.languages.md=e.languages.markdown}(E),E.languages.graphql={comment:/#.*/,description:{pattern:/(?:"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*")(?=\s*[a-z_])/i,greedy:!0,alias:"string",inside:{"language-markdown":{pattern:/(^"(?:"")?)(?!\1)[\s\S]+(?=\1$)/,lookbehind:!0,inside:E.languages.markdown}}},string:{pattern:/"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},number:/(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,boolean:/\b(?:false|true)\b/,variable:/\$[a-z_]\w*/i,directive:{pattern:/@[a-z_]\w*/i,alias:"function"},"attr-name":{pattern:/\b[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i,greedy:!0},"atom-input":{pattern:/\b[A-Z]\w*Input\b/,alias:"class-name"},scalar:/\b(?:Boolean|Float|ID|Int|String)\b/,constant:/\b[A-Z][A-Z_\d]*\b/,"class-name":{pattern:/(\b(?:enum|implements|interface|on|scalar|type|union)\s+|&\s*|:\s*|\[)[A-Z_]\w*/,lookbehind:!0},fragment:{pattern:/(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-mutation":{pattern:/(\bmutation\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-query":{pattern:/(\bquery\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},keyword:/\b(?:directive|enum|extend|fragment|implements|input|interface|mutation|on|query|repeatable|scalar|schema|subscription|type|union)\b/,operator:/[!=|&]|\.{3}/,"property-query":/\w+(?=\s*\()/,object:/\w+(?=\s*\{)/,punctuation:/[!(){}\[\]:=,]/,property:/\w+/},E.hooks.add("after-tokenize",(function(e){if("graphql"===e.language)for(var t=e.tokens.filter((function(e){return"string"!=typeof e&&"comment"!==e.type&&"scalar"!==e.type})),n=0;n?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/},function(e){var t=e.languages.javascript["template-string"],n=t.pattern.source,a=t.inside.interpolation,o=a.inside["interpolation-punctuation"],i=a.pattern.source;function r(t,a){if(e.languages[t])return{pattern:RegExp("((?:"+a+")\\s*)"+n),lookbehind:!0,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},"embedded-code":{pattern:/[\s\S]+/,alias:t}}}}function s(t,n,a){return t={code:t,grammar:n,language:a},e.hooks.run("before-tokenize",t),t.tokens=e.tokenize(t.code,t.grammar),e.hooks.run("after-tokenize",t),t.tokens}function c(t,n,r){var c=e.tokenize(t,{interpolation:{pattern:RegExp(i),lookbehind:!0}}),l=0,d={},u=(c=s(c.map((function(e){if("string"==typeof e)return e;var n,a;for(e=e.content;-1!==t.indexOf((a=l++,n="___"+r.toUpperCase()+"_"+a+"___")););return d[n]=e,n})).join(""),n,r),Object.keys(d));return l=0,function t(n){for(var i=0;i=u.length)return;var r,c,p,h,y,g,f,m=n[i];"string"==typeof m||"string"==typeof m.content?(r=u[l],-1!==(f=(g="string"==typeof m?m:m.content).indexOf(r))&&(++l,c=g.substring(0,f),y=d[r],p=void 0,(h={})["interpolation-punctuation"]=o,3===(h=e.tokenize(y,h)).length&&((p=[1,1]).push.apply(p,s(h[1],e.languages.javascript,"javascript")),h.splice.apply(h,p)),p=new e.Token("interpolation",h,a.alias,y),h=g.substring(f+r.length),y=[],c&&y.push(c),y.push(p),h&&(t(g=[h]),y.push.apply(y,g)),"string"==typeof m?(n.splice.apply(n,[i,1].concat(y)),i+=y.length-1):m.content=y)):(f=m.content,Array.isArray(f)?t(f):t([f]))}}(c),new e.Token(r,c,"language-"+r,t)}e.languages.javascript["template-string"]=[r("css",/\b(?:styled(?:\([^)]*\))?(?:\s*\.\s*\w+(?:\([^)]*\))*)*|css(?:\s*\.\s*(?:global|resolve))?|createGlobalStyle|keyframes)/.source),r("html",/\bhtml|\.\s*(?:inner|outer)HTML\s*\+?=/.source),r("svg",/\bsvg/.source),r("markdown",/\b(?:markdown|md)/.source),r("graphql",/\b(?:gql|graphql(?:\s*\.\s*experimental)?)/.source),r("sql",/\bsql/.source),t].filter(Boolean);var l={javascript:!0,js:!0,typescript:!0,ts:!0,jsx:!0,tsx:!0};function d(e){return"string"==typeof e?e:Array.isArray(e)?e.map(d).join(""):d(e.content)}e.hooks.add("after-tokenize",(function(t){t.language in l&&function t(n){for(var a=0,o=n.length;a]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),e.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete e.languages.typescript.parameter,delete e.languages.typescript["literal-property"];var t=e.languages.extend("typescript",{});delete t["class-name"],e.languages.typescript["class-name"].inside=t,e.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:t}}}}),e.languages.ts=e.languages.typescript}(E),function(e){var t=e.languages.javascript,n=/\{(?:[^{}]|\{(?:[^{}]|\{[^{}]*\})*\})+\}/.source,a="(@(?:arg|argument|param|property)\\s+(?:"+n+"\\s+)?)";e.languages.jsdoc=e.languages.extend("javadoclike",{parameter:{pattern:RegExp(a+/(?:(?!\s)[$\w\xA0-\uFFFF.])+(?=\s|$)/.source),lookbehind:!0,inside:{punctuation:/\./}}}),e.languages.insertBefore("jsdoc","keyword",{"optional-parameter":{pattern:RegExp(a+/\[(?:(?!\s)[$\w\xA0-\uFFFF.])+(?:=[^[\]]+)?\](?=\s|$)/.source),lookbehind:!0,inside:{parameter:{pattern:/(^\[)[$\w\xA0-\uFFFF\.]+/,lookbehind:!0,inside:{punctuation:/\./}},code:{pattern:/(=)[\s\S]*(?=\]$)/,lookbehind:!0,inside:t,alias:"language-javascript"},punctuation:/[=[\]]/}},"class-name":[{pattern:RegExp(/(@(?:augments|class|extends|interface|memberof!?|template|this|typedef)\s+(?:\s+)?)[A-Z]\w*(?:\.[A-Z]\w*)*/.source.replace(//g,(function(){return n}))),lookbehind:!0,inside:{punctuation:/\./}},{pattern:RegExp("(@[a-z]+\\s+)"+n),lookbehind:!0,inside:{string:t.string,number:t.number,boolean:t.boolean,keyword:e.languages.typescript.keyword,operator:/=>|\.\.\.|[&|?:*]/,punctuation:/[.,;=<>{}()[\]]/}}],example:{pattern:/(@example\s+(?!\s))(?:[^@\s]|\s+(?!\s))+?(?=\s*(?:\*\s*)?(?:@\w|\*\/))/,lookbehind:!0,inside:{code:{pattern:/^([\t ]*(?:\*\s*)?)\S.*$/m,lookbehind:!0,inside:t,alias:"language-javascript"}}}}),e.languages.javadoclike.addSupport("javascript",e.languages.jsdoc)}(E),function(e){e.languages.flow=e.languages.extend("javascript",{}),e.languages.insertBefore("flow","keyword",{type:[{pattern:/\b(?:[Bb]oolean|Function|[Nn]umber|[Ss]tring|[Ss]ymbol|any|mixed|null|void)\b/,alias:"class-name"}]}),e.languages.flow["function-variable"].pattern=/(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=\s*(?:function\b|(?:\([^()]*\)(?:\s*:\s*\w+)?|(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/i,delete e.languages.flow.parameter,e.languages.insertBefore("flow","operator",{"flow-punctuation":{pattern:/\{\||\|\}/,alias:"punctuation"}}),Array.isArray(e.languages.flow.keyword)||(e.languages.flow.keyword=[e.languages.flow.keyword]),e.languages.flow.keyword.unshift({pattern:/(^|[^$]\b)(?:Class|declare|opaque|type)\b(?!\$)/,lookbehind:!0},{pattern:/(^|[^$]\B)\$(?:Diff|Enum|Exact|Keys|ObjMap|PropertyType|Record|Shape|Subtype|Supertype|await)\b(?!\$)/,lookbehind:!0})}(E),E.languages.n4js=E.languages.extend("javascript",{keyword:/\b(?:Array|any|boolean|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|false|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|module|new|null|number|package|private|protected|public|return|set|static|string|super|switch|this|throw|true|try|typeof|var|void|while|with|yield)\b/}),E.languages.insertBefore("n4js","constant",{annotation:{pattern:/@+\w+/,alias:"operator"}}),E.languages.n4jsd=E.languages.n4js,function(e){function t(e,t){return RegExp(e.replace(//g,(function(){return/(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/.source})),t)}e.languages.insertBefore("javascript","function-variable",{"method-variable":{pattern:RegExp("(\\.\\s*)"+e.languages.javascript["function-variable"].pattern.source),lookbehind:!0,alias:["function-variable","method","function","property-access"]}}),e.languages.insertBefore("javascript","function",{method:{pattern:RegExp("(\\.\\s*)"+e.languages.javascript.function.source),lookbehind:!0,alias:["function","property-access"]}}),e.languages.insertBefore("javascript","constant",{"known-class-name":[{pattern:/\b(?:(?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)?Array|ArrayBuffer|BigInt|Boolean|DataView|Date|Error|Function|Intl|JSON|(?:Weak)?(?:Map|Set)|Math|Number|Object|Promise|Proxy|Reflect|RegExp|String|Symbol|WebAssembly)\b/,alias:"class-name"},{pattern:/\b(?:[A-Z]\w*)Error\b/,alias:"class-name"}]}),e.languages.insertBefore("javascript","keyword",{imports:{pattern:t(/(\bimport\b\s*)(?:(?:\s*,\s*(?:\*\s*as\s+|\{[^{}]*\}))?|\*\s*as\s+|\{[^{}]*\})(?=\s*\bfrom\b)/.source),lookbehind:!0,inside:e.languages.javascript},exports:{pattern:t(/(\bexport\b\s*)(?:\*(?:\s*as\s+)?(?=\s*\bfrom\b)|\{[^{}]*\})/.source),lookbehind:!0,inside:e.languages.javascript}}),e.languages.javascript.keyword.unshift({pattern:/\b(?:as|default|export|from|import)\b/,alias:"module"},{pattern:/\b(?:await|break|catch|continue|do|else|finally|for|if|return|switch|throw|try|while|yield)\b/,alias:"control-flow"},{pattern:/\bnull\b/,alias:["null","nil"]},{pattern:/\bundefined\b/,alias:"nil"}),e.languages.insertBefore("javascript","operator",{spread:{pattern:/\.{3}/,alias:"operator"},arrow:{pattern:/=>/,alias:"operator"}}),e.languages.insertBefore("javascript","punctuation",{"property-access":{pattern:t(/(\.\s*)#?/.source),lookbehind:!0},"maybe-class-name":{pattern:/(^|[^$\w\xA0-\uFFFF])[A-Z][$\w\xA0-\uFFFF]+/,lookbehind:!0},dom:{pattern:/\b(?:document|(?:local|session)Storage|location|navigator|performance|window)\b/,alias:"variable"},console:{pattern:/\bconsole(?=\s*\.)/,alias:"class-name"}});for(var n=["function","function-variable","method","method-variable","property-access"],a=0;a*\.{3}(?:[^{}]|)*\})/.source;function i(e,t){return e=e.replace(//g,(function(){return n})).replace(//g,(function(){return a})).replace(//g,(function(){return o})),RegExp(e,t)}function r(t){for(var n=[],a=0;a"!==o.content[o.content.length-1].content&&n.push({tagName:s(o.content[0].content[1]),openedBraces:0}):0+(?:[\w.:$-]+(?:=(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s{'"/>=]+|))?|))**\/?)?>/.source),e.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/,e.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s'">]+)/,e.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*(?:\.[A-Z]\w*)*$/,e.languages.jsx.tag.inside.comment=t.comment,e.languages.insertBefore("inside","attr-name",{spread:{pattern:i(//.source),inside:e.languages.jsx}},e.languages.jsx.tag),e.languages.insertBefore("inside","special-attr",{script:{pattern:i(/=/.source),alias:"language-javascript",inside:{"script-punctuation":{pattern:/^=(?=\{)/,alias:"punctuation"},rest:e.languages.jsx}}},e.languages.jsx.tag);var s=function(e){return e?"string"==typeof e?e:"string"==typeof e.content?e.content:e.content.map(s).join(""):""};e.hooks.add("after-tokenize",(function(e){"jsx"!==e.language&&"tsx"!==e.language||r(e.tokens)}))}(E),function(e){var t=e.util.clone(e.languages.typescript);(t=(e.languages.tsx=e.languages.extend("jsx",t),delete e.languages.tsx.parameter,delete e.languages.tsx["literal-property"],e.languages.tsx.tag)).pattern=RegExp(/(^|[^\w$]|(?=<\/))/.source+"(?:"+t.pattern.source+")",t.pattern.flags),t.lookbehind=!0}(E),E.languages.swift={comment:{pattern:/(^|[^\\:])(?:\/\/.*|\/\*(?:[^/*]|\/(?!\*)|\*(?!\/)|\/\*(?:[^*]|\*(?!\/))*\*\/)*\*\/)/,lookbehind:!0,greedy:!0},"string-literal":[{pattern:RegExp(/(^|[^"#])/.source+"(?:"+/"(?:\\(?:\((?:[^()]|\([^()]*\))*\)|\r\n|[^(])|[^\\\r\n"])*"/.source+"|"+/"""(?:\\(?:\((?:[^()]|\([^()]*\))*\)|[^(])|[^\\"]|"(?!""))*"""/.source+")"+/(?!["#])/.source),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\\($/,alias:"punctuation"},punctuation:/\\(?=[\r\n])/,string:/[\s\S]+/}},{pattern:RegExp(/(^|[^"#])(#+)/.source+"(?:"+/"(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|\r\n|[^#])|[^\\\r\n])*?"/.source+"|"+/"""(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|[^#])|[^\\])*?"""/.source+")\\2"),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\#+\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\#+\($/,alias:"punctuation"},string:/[\s\S]+/}}],directive:{pattern:RegExp(/#/.source+"(?:"+/(?:elseif|if)\b/.source+"(?:[ \t]*"+/(?:![ \t]*)?(?:\b\w+\b(?:[ \t]*\((?:[^()]|\([^()]*\))*\))?|\((?:[^()]|\([^()]*\))*\))(?:[ \t]*(?:&&|\|\|))?/.source+")+|"+/(?:else|endif)\b/.source+")"),alias:"property",inside:{"directive-name":/^#\w+/,boolean:/\b(?:false|true)\b/,number:/\b\d+(?:\.\d+)*\b/,operator:/!|&&|\|\||[<>]=?/,punctuation:/[(),]/}},literal:{pattern:/#(?:colorLiteral|column|dsohandle|file(?:ID|Literal|Path)?|function|imageLiteral|line)\b/,alias:"constant"},"other-directive":{pattern:/#\w+\b/,alias:"property"},attribute:{pattern:/@\w+/,alias:"atrule"},"function-definition":{pattern:/(\bfunc\s+)\w+/,lookbehind:!0,alias:"function"},label:{pattern:/\b(break|continue)\s+\w+|\b[a-zA-Z_]\w*(?=\s*:\s*(?:for|repeat|while)\b)/,lookbehind:!0,alias:"important"},keyword:/\b(?:Any|Protocol|Self|Type|actor|as|assignment|associatedtype|associativity|async|await|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic|else|enum|extension|fallthrough|fileprivate|final|for|func|get|guard|higherThan|if|import|in|indirect|infix|init|inout|internal|is|isolated|lazy|left|let|lowerThan|mutating|none|nonisolated|nonmutating|open|operator|optional|override|postfix|precedencegroup|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|set|some|static|struct|subscript|super|switch|throw|throws|try|typealias|unowned|unsafe|var|weak|where|while|willSet)\b/,boolean:/\b(?:false|true)\b/,nil:{pattern:/\bnil\b/,alias:"constant"},"short-argument":/\$\d+\b/,omit:{pattern:/\b_\b/,alias:"keyword"},number:/\b(?:[\d_]+(?:\.[\de_]+)?|0x[a-f0-9_]+(?:\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i,"class-name":/\b[A-Z](?:[A-Z_\d]*[a-z]\w*)?\b/,function:/\b[a-z_]\w*(?=\s*\()/i,constant:/\b(?:[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/,operator:/[-+*/%=!<>&|^~?]+|\.[.\-+*/%=!<>&|^~?]+/,punctuation:/[{}[\]();,.:\\]/},E.languages.swift["string-literal"].forEach((function(e){e.inside.interpolation.inside=E.languages.swift})),function(e){e.languages.kotlin=e.languages.extend("clike",{keyword:{pattern:/(^|[^.])\b(?:abstract|actual|annotation|as|break|by|catch|class|companion|const|constructor|continue|crossinline|data|do|dynamic|else|enum|expect|external|final|finally|for|fun|get|if|import|in|infix|init|inline|inner|interface|internal|is|lateinit|noinline|null|object|open|operator|out|override|package|private|protected|public|reified|return|sealed|set|super|suspend|tailrec|this|throw|to|try|typealias|val|var|vararg|when|where|while)\b/,lookbehind:!0},function:[{pattern:/(?:`[^\r\n`]+`|\b\w+)(?=\s*\()/,greedy:!0},{pattern:/(\.)(?:`[^\r\n`]+`|\w+)(?=\s*\{)/,lookbehind:!0,greedy:!0}],number:/\b(?:0[xX][\da-fA-F]+(?:_[\da-fA-F]+)*|0[bB][01]+(?:_[01]+)*|\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?[fFL]?)\b/,operator:/\+[+=]?|-[-=>]?|==?=?|!(?:!|==?)?|[\/*%<>]=?|[?:]:?|\.\.|&&|\|\||\b(?:and|inv|or|shl|shr|ushr|xor)\b/}),delete e.languages.kotlin["class-name"];var t={"interpolation-punctuation":{pattern:/^\$\{?|\}$/,alias:"punctuation"},expression:{pattern:/[\s\S]+/,inside:e.languages.kotlin}};e.languages.insertBefore("kotlin","string",{"string-literal":[{pattern:/"""(?:[^$]|\$(?:(?!\{)|\{[^{}]*\}))*?"""/,alias:"multiline",inside:{interpolation:{pattern:/\$(?:[a-z_]\w*|\{[^{}]*\})/i,inside:t},string:/[\s\S]+/}},{pattern:/"(?:[^"\\\r\n$]|\\.|\$(?:(?!\{)|\{[^{}]*\}))*"/,alias:"singleline",inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$(?:[a-z_]\w*|\{[^{}]*\})/i,lookbehind:!0,inside:t},string:/[\s\S]+/}}],char:{pattern:/'(?:[^'\\\r\n]|\\(?:.|u[a-fA-F0-9]{0,4}))'/,greedy:!0}}),delete e.languages.kotlin.string,e.languages.insertBefore("kotlin","keyword",{annotation:{pattern:/\B@(?:\w+:)?(?:[A-Z]\w*|\[[^\]]+\])/,alias:"builtin"}}),e.languages.insertBefore("kotlin","function",{label:{pattern:/\b\w+@|@\w+\b/,alias:"symbol"}}),e.languages.kt=e.languages.kotlin,e.languages.kts=e.languages.kotlin}(E),E.languages.c=E.languages.extend("clike",{comment:{pattern:/\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},"class-name":{pattern:/(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:/(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/}),E.languages.insertBefore("c","string",{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),E.languages.insertBefore("c","string",{macro:{pattern:/(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,greedy:!0,alias:"property",inside:{string:[{pattern:/^(#\s*include\s*)<[^>]+>/,lookbehind:!0},E.languages.c.string],char:E.languages.c.char,comment:E.languages.c.comment,"macro-name":[{pattern:/(^#\s*define\s+)\w+\b(?!\()/i,lookbehind:!0},{pattern:/(^#\s*define\s+)\w+\b(?=\()/i,lookbehind:!0,alias:"function"}],directive:{pattern:/^(#\s*)[a-z]+/,lookbehind:!0,alias:"keyword"},"directive-hash":/^#/,punctuation:/##|\\(?=[\r\n])/,expression:{pattern:/\S[\s\S]*/,inside:E.languages.c}}}}),E.languages.insertBefore("c","function",{constant:/\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/}),delete E.languages.c.boolean,E.languages.objectivec=E.languages.extend("c",{string:{pattern:/@?"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},keyword:/\b(?:asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|in|inline|int|long|register|return|self|short|signed|sizeof|static|struct|super|switch|typedef|typeof|union|unsigned|void|volatile|while)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/,operator:/-[->]?|\+\+?|!=?|<>?=?|==?|&&?|\|\|?|[~^%?*\/@]/}),delete E.languages.objectivec["class-name"],E.languages.objc=E.languages.objectivec,E.languages.reason=E.languages.extend("clike",{string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^\\\r\n"])*"/,greedy:!0},"class-name":/\b[A-Z]\w*/,keyword:/\b(?:and|as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|method|module|mutable|new|nonrec|object|of|open|or|private|rec|sig|struct|switch|then|to|try|type|val|virtual|when|while|with)\b/,operator:/\.{3}|:[:=]|\|>|->|=(?:==?|>)?|<=?|>=?|[|^?'#!~`]|[+\-*\/]\.?|\b(?:asr|land|lor|lsl|lsr|lxor|mod)\b/}),E.languages.insertBefore("reason","class-name",{char:{pattern:/'(?:\\x[\da-f]{2}|\\o[0-3][0-7][0-7]|\\\d{3}|\\.|[^'\\\r\n])'/,greedy:!0},constructor:/\b[A-Z]\w*\b(?!\s*\.)/,label:{pattern:/\b[a-z]\w*(?=::)/,alias:"symbol"}}),delete E.languages.reason.function,function(e){for(var t=/\/\*(?:[^*/]|\*(?!\/)|\/(?!\*)|)*\*\//.source,n=0;n<2;n++)t=t.replace(//g,(function(){return t}));t=t.replace(//g,(function(){return/[^\s\S]/.source})),e.languages.rust={comment:[{pattern:RegExp(/(^|[^\\])/.source+t),lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/b?"(?:\\[\s\S]|[^\\"])*"|b?r(#*)"(?:[^"]|"(?!\1))*"\1/,greedy:!0},char:{pattern:/b?'(?:\\(?:x[0-7][\da-fA-F]|u\{(?:[\da-fA-F]_*){1,6}\}|.)|[^\\\r\n\t'])'/,greedy:!0},attribute:{pattern:/#!?\[(?:[^\[\]"]|"(?:\\[\s\S]|[^\\"])*")*\]/,greedy:!0,alias:"attr-name",inside:{string:null}},"closure-params":{pattern:/([=(,:]\s*|\bmove\s*)\|[^|]*\||\|[^|]*\|(?=\s*(?:\{|->))/,lookbehind:!0,greedy:!0,inside:{"closure-punctuation":{pattern:/^\||\|$/,alias:"punctuation"},rest:null}},"lifetime-annotation":{pattern:/'\w+/,alias:"symbol"},"fragment-specifier":{pattern:/(\$\w+:)[a-z]+/,lookbehind:!0,alias:"punctuation"},variable:/\$\w+/,"function-definition":{pattern:/(\bfn\s+)\w+/,lookbehind:!0,alias:"function"},"type-definition":{pattern:/(\b(?:enum|struct|trait|type|union)\s+)\w+/,lookbehind:!0,alias:"class-name"},"module-declaration":[{pattern:/(\b(?:crate|mod)\s+)[a-z][a-z_\d]*/,lookbehind:!0,alias:"namespace"},{pattern:/(\b(?:crate|self|super)\s*)::\s*[a-z][a-z_\d]*\b(?:\s*::(?:\s*[a-z][a-z_\d]*\s*::)*)?/,lookbehind:!0,alias:"namespace",inside:{punctuation:/::/}}],keyword:[/\b(?:Self|abstract|as|async|await|become|box|break|const|continue|crate|do|dyn|else|enum|extern|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|override|priv|pub|ref|return|self|static|struct|super|trait|try|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/,/\b(?:bool|char|f(?:32|64)|[ui](?:8|16|32|64|128|size)|str)\b/],function:/\b[a-z_]\w*(?=\s*(?:::\s*<|\())/,macro:{pattern:/\b\w+!/,alias:"property"},constant:/\b[A-Z_][A-Z_\d]+\b/,"class-name":/\b[A-Z]\w*\b/,namespace:{pattern:/(?:\b[a-z][a-z_\d]*\s*::\s*)*\b[a-z][a-z_\d]*\s*::(?!\s*<)/,inside:{punctuation:/::/}},number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:f32|f64|[iu](?:8|16|32|64|size)?))?\b/,boolean:/\b(?:false|true)\b/,punctuation:/->|\.\.=|\.{1,3}|::|[{}[\];(),:]/,operator:/[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<>?=?|[@?]/},e.languages.rust["closure-params"].inside.rest=e.languages.rust,e.languages.rust.attribute.inside.string=e.languages.rust.string}(E),E.languages.go=E.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"|`[^`]*`/,lookbehind:!0,greedy:!0},keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,boolean:/\b(?:_|false|iota|nil|true)\b/,number:[/\b0(?:b[01_]+|o[0-7_]+)i?\b/i,/\b0x(?:[a-f\d_]+(?:\.[a-f\d_]*)?|\.[a-f\d_]+)(?:p[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,/(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?[\d_]+)?i?(?!\w)/i],operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,builtin:/\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\b/}),E.languages.insertBefore("go","string",{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete E.languages.go["class-name"],function(e){var t=/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,n=/\b(?!)\w+(?:\s*\.\s*\w+)*\b/.source.replace(//g,(function(){return t.source}));e.languages.cpp=e.languages.extend("c",{"class-name":[{pattern:RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!)\w+/.source.replace(//g,(function(){return t.source}))),lookbehind:!0},/\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,/\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,/\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/],keyword:t,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,greedy:!0},operator:/>>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:false|true)\b/}),e.languages.insertBefore("cpp","string",{module:{pattern:RegExp(/(\b(?:import|module)\s+)/.source+"(?:"+/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|<[^<>\r\n]*>/.source+"|"+/(?:\s*:\s*)?|:\s*/.source.replace(//g,(function(){return n}))+")"),lookbehind:!0,greedy:!0,inside:{string:/^[<"][\s\S]+/,operator:/:/,punctuation:/\./}},"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),e.languages.insertBefore("cpp","keyword",{"generic-function":{pattern:/\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,inside:{function:/^\w+/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:e.languages.cpp}}}}),e.languages.insertBefore("cpp","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}}),e.languages.insertBefore("cpp","class-name",{"base-clause":{pattern:/(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:e.languages.extend("cpp",{})}}),e.languages.insertBefore("inside","double-colon",{"class-name":/\b[a-z_]\w*\b(?!\s*::)/i},e.languages.cpp["base-clause"])}(E),E.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},E.languages.python["string-interpolation"].inside.interpolation.inside.rest=E.languages.python,E.languages.py=E.languages.python,E.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}},E.languages.webmanifest=E.languages.json;((e,t)=>{for(var n in t)h(e,n,{get:t[n],enumerable:!0})})({},{dracula:()=>T,duotoneDark:()=>C,duotoneLight:()=>D,github:()=>O,gruvboxMaterialDark:()=>K,gruvboxMaterialLight:()=>Q,jettwaveDark:()=>V,jettwaveLight:()=>H,nightOwl:()=>F,nightOwlLight:()=>R,oceanicNext:()=>M,okaidia:()=>L,oneDark:()=>G,oneLight:()=>W,palenight:()=>I,shadesOfPurple:()=>B,synthwave84:()=>z,ultramin:()=>U,vsDark:()=>$,vsLight:()=>q});var T={plain:{color:"#F8F8F2",backgroundColor:"#282A36"},styles:[{types:["prolog","constant","builtin"],style:{color:"rgb(189, 147, 249)"}},{types:["inserted","function"],style:{color:"rgb(80, 250, 123)"}},{types:["deleted"],style:{color:"rgb(255, 85, 85)"}},{types:["changed"],style:{color:"rgb(255, 184, 108)"}},{types:["punctuation","symbol"],style:{color:"rgb(248, 248, 242)"}},{types:["string","char","tag","selector"],style:{color:"rgb(255, 121, 198)"}},{types:["keyword","variable"],style:{color:"rgb(189, 147, 249)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(98, 114, 164)"}},{types:["attr-name"],style:{color:"rgb(241, 250, 140)"}}]},C={plain:{backgroundColor:"#2a2734",color:"#9a86fd"},styles:[{types:["comment","prolog","doctype","cdata","punctuation"],style:{color:"#6c6783"}},{types:["namespace"],style:{opacity:.7}},{types:["tag","operator","number"],style:{color:"#e09142"}},{types:["property","function"],style:{color:"#9a86fd"}},{types:["tag-id","selector","atrule-id"],style:{color:"#eeebff"}},{types:["attr-name"],style:{color:"#c4b9fe"}},{types:["boolean","string","entity","url","attr-value","keyword","control","directive","unit","statement","regex","atrule","placeholder","variable"],style:{color:"#ffcc99"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"#c4b9fe"}}]},D={plain:{backgroundColor:"#faf8f5",color:"#728fcb"},styles:[{types:["comment","prolog","doctype","cdata","punctuation"],style:{color:"#b6ad9a"}},{types:["namespace"],style:{opacity:.7}},{types:["tag","operator","number"],style:{color:"#063289"}},{types:["property","function"],style:{color:"#b29762"}},{types:["tag-id","selector","atrule-id"],style:{color:"#2d2006"}},{types:["attr-name"],style:{color:"#896724"}},{types:["boolean","string","entity","url","attr-value","keyword","control","directive","unit","statement","regex","atrule"],style:{color:"#728fcb"}},{types:["placeholder","variable"],style:{color:"#93abdc"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"#896724"}}]},O={plain:{color:"#393A34",backgroundColor:"#f6f8fa"},styles:[{types:["comment","prolog","doctype","cdata"],style:{color:"#999988",fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}},{types:["string","attr-value"],style:{color:"#e3116c"}},{types:["punctuation","operator"],style:{color:"#393A34"}},{types:["entity","url","symbol","number","boolean","variable","constant","property","regex","inserted"],style:{color:"#36acaa"}},{types:["atrule","keyword","attr-name","selector"],style:{color:"#00a4db"}},{types:["function","deleted","tag"],style:{color:"#d73a49"}},{types:["function-variable"],style:{color:"#6f42c1"}},{types:["tag","selector","keyword"],style:{color:"#00009f"}}]},F={plain:{color:"#d6deeb",backgroundColor:"#011627"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)",fontStyle:"italic"}},{types:["inserted","attr-name"],style:{color:"rgb(173, 219, 103)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(99, 119, 119)",fontStyle:"italic"}},{types:["string","url"],style:{color:"rgb(173, 219, 103)"}},{types:["variable"],style:{color:"rgb(214, 222, 235)"}},{types:["number"],style:{color:"rgb(247, 140, 108)"}},{types:["builtin","char","constant","function"],style:{color:"rgb(130, 170, 255)"}},{types:["punctuation"],style:{color:"rgb(199, 146, 234)"}},{types:["selector","doctype"],style:{color:"rgb(199, 146, 234)",fontStyle:"italic"}},{types:["class-name"],style:{color:"rgb(255, 203, 139)"}},{types:["tag","operator","keyword"],style:{color:"rgb(127, 219, 202)"}},{types:["boolean"],style:{color:"rgb(255, 88, 116)"}},{types:["property"],style:{color:"rgb(128, 203, 196)"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)"}}]},R={plain:{color:"#403f53",backgroundColor:"#FBFBFB"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)",fontStyle:"italic"}},{types:["inserted","attr-name"],style:{color:"rgb(72, 118, 214)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(152, 159, 177)",fontStyle:"italic"}},{types:["string","builtin","char","constant","url"],style:{color:"rgb(72, 118, 214)"}},{types:["variable"],style:{color:"rgb(201, 103, 101)"}},{types:["number"],style:{color:"rgb(170, 9, 130)"}},{types:["punctuation"],style:{color:"rgb(153, 76, 195)"}},{types:["function","selector","doctype"],style:{color:"rgb(153, 76, 195)",fontStyle:"italic"}},{types:["class-name"],style:{color:"rgb(17, 17, 17)"}},{types:["tag"],style:{color:"rgb(153, 76, 195)"}},{types:["operator","property","keyword","namespace"],style:{color:"rgb(12, 150, 155)"}},{types:["boolean"],style:{color:"rgb(188, 84, 84)"}}]},N="#c5a5c5",j="#8dc891",M={plain:{backgroundColor:"#282c34",color:"#ffffff"},styles:[{types:["attr-name"],style:{color:N}},{types:["attr-value"],style:{color:j}},{types:["comment","block-comment","prolog","doctype","cdata","shebang"],style:{color:"#999999"}},{types:["property","number","function-name","constant","symbol","deleted"],style:{color:"#5a9bcf"}},{types:["boolean"],style:{color:"#ff8b50"}},{types:["tag"],style:{color:"#fc929e"}},{types:["string"],style:{color:j}},{types:["punctuation"],style:{color:j}},{types:["selector","char","builtin","inserted"],style:{color:"#D8DEE9"}},{types:["function"],style:{color:"#79b6f2"}},{types:["operator","entity","url","variable"],style:{color:"#d7deea"}},{types:["keyword"],style:{color:N}},{types:["atrule","class-name"],style:{color:"#FAC863"}},{types:["important"],style:{fontWeight:"400"}},{types:["bold"],style:{fontWeight:"bold"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}}]},L={plain:{color:"#f8f8f2",backgroundColor:"#272822"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"#f92672",fontStyle:"italic"}},{types:["inserted"],style:{color:"rgb(173, 219, 103)",fontStyle:"italic"}},{types:["comment"],style:{color:"#8292a2",fontStyle:"italic"}},{types:["string","url"],style:{color:"#a6e22e"}},{types:["variable"],style:{color:"#f8f8f2"}},{types:["number"],style:{color:"#ae81ff"}},{types:["builtin","char","constant","function","class-name"],style:{color:"#e6db74"}},{types:["punctuation"],style:{color:"#f8f8f2"}},{types:["selector","doctype"],style:{color:"#a6e22e",fontStyle:"italic"}},{types:["tag","operator","keyword"],style:{color:"#66d9ef"}},{types:["boolean"],style:{color:"#ae81ff"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)",opacity:.7}},{types:["tag","property"],style:{color:"#f92672"}},{types:["attr-name"],style:{color:"#a6e22e !important"}},{types:["doctype"],style:{color:"#8292a2"}},{types:["rule"],style:{color:"#e6db74"}}]},I={plain:{color:"#bfc7d5",backgroundColor:"#292d3e"},styles:[{types:["comment"],style:{color:"rgb(105, 112, 152)",fontStyle:"italic"}},{types:["string","inserted"],style:{color:"rgb(195, 232, 141)"}},{types:["number"],style:{color:"rgb(247, 140, 108)"}},{types:["builtin","char","constant","function"],style:{color:"rgb(130, 170, 255)"}},{types:["punctuation","selector"],style:{color:"rgb(199, 146, 234)"}},{types:["variable"],style:{color:"rgb(191, 199, 213)"}},{types:["class-name","attr-name"],style:{color:"rgb(255, 203, 107)"}},{types:["tag","deleted"],style:{color:"rgb(255, 85, 114)"}},{types:["operator"],style:{color:"rgb(137, 221, 255)"}},{types:["boolean"],style:{color:"rgb(255, 88, 116)"}},{types:["keyword"],style:{fontStyle:"italic"}},{types:["doctype"],style:{color:"rgb(199, 146, 234)",fontStyle:"italic"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)"}},{types:["url"],style:{color:"rgb(221, 221, 221)"}}]},B={plain:{color:"#9EFEFF",backgroundColor:"#2D2A55"},styles:[{types:["changed"],style:{color:"rgb(255, 238, 128)"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)"}},{types:["inserted"],style:{color:"rgb(173, 219, 103)"}},{types:["comment"],style:{color:"rgb(179, 98, 255)",fontStyle:"italic"}},{types:["punctuation"],style:{color:"rgb(255, 255, 255)"}},{types:["constant"],style:{color:"rgb(255, 98, 140)"}},{types:["string","url"],style:{color:"rgb(165, 255, 144)"}},{types:["variable"],style:{color:"rgb(255, 238, 128)"}},{types:["number","boolean"],style:{color:"rgb(255, 98, 140)"}},{types:["attr-name"],style:{color:"rgb(255, 180, 84)"}},{types:["keyword","operator","property","namespace","tag","selector","doctype"],style:{color:"rgb(255, 157, 0)"}},{types:["builtin","char","constant","function","class-name"],style:{color:"rgb(250, 208, 0)"}}]},z={plain:{backgroundColor:"linear-gradient(to bottom, #2a2139 75%, #34294f)",backgroundImage:"#34294f",color:"#f92aad",textShadow:"0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3"},styles:[{types:["comment","block-comment","prolog","doctype","cdata"],style:{color:"#495495",fontStyle:"italic"}},{types:["punctuation"],style:{color:"#ccc"}},{types:["tag","attr-name","namespace","number","unit","hexcode","deleted"],style:{color:"#e2777a"}},{types:["property","selector"],style:{color:"#72f1b8",textShadow:"0 0 2px #100c0f, 0 0 10px #257c5575, 0 0 35px #21272475"}},{types:["function-name"],style:{color:"#6196cc"}},{types:["boolean","selector-id","function"],style:{color:"#fdfdfd",textShadow:"0 0 2px #001716, 0 0 3px #03edf975, 0 0 5px #03edf975, 0 0 8px #03edf975"}},{types:["class-name","maybe-class-name","builtin"],style:{color:"#fff5f6",textShadow:"0 0 2px #000, 0 0 10px #fc1f2c75, 0 0 5px #fc1f2c75, 0 0 25px #fc1f2c75"}},{types:["constant","symbol"],style:{color:"#f92aad",textShadow:"0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3"}},{types:["important","atrule","keyword","selector-class"],style:{color:"#f4eee4",textShadow:"0 0 2px #393a33, 0 0 8px #f39f0575, 0 0 2px #f39f0575"}},{types:["string","char","attr-value","regex","variable"],style:{color:"#f87c32"}},{types:["parameter"],style:{fontStyle:"italic"}},{types:["entity","url"],style:{color:"#67cdcc"}},{types:["operator"],style:{color:"ffffffee"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["entity"],style:{cursor:"help"}},{types:["inserted"],style:{color:"green"}}]},U={plain:{color:"#282a2e",backgroundColor:"#ffffff"},styles:[{types:["comment"],style:{color:"rgb(197, 200, 198)"}},{types:["string","number","builtin","variable"],style:{color:"rgb(150, 152, 150)"}},{types:["class-name","function","tag","attr-name"],style:{color:"rgb(40, 42, 46)"}}]},$={plain:{color:"#9CDCFE",backgroundColor:"#1E1E1E"},styles:[{types:["prolog"],style:{color:"rgb(0, 0, 128)"}},{types:["comment"],style:{color:"rgb(106, 153, 85)"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"rgb(86, 156, 214)"}},{types:["number","inserted"],style:{color:"rgb(181, 206, 168)"}},{types:["constant"],style:{color:"rgb(100, 102, 149)"}},{types:["attr-name","variable"],style:{color:"rgb(156, 220, 254)"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"rgb(206, 145, 120)"}},{types:["selector"],style:{color:"rgb(215, 186, 125)"}},{types:["tag"],style:{color:"rgb(78, 201, 176)"}},{types:["tag"],languages:["markup"],style:{color:"rgb(86, 156, 214)"}},{types:["punctuation","operator"],style:{color:"rgb(212, 212, 212)"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"rgb(220, 220, 170)"}},{types:["class-name"],style:{color:"rgb(78, 201, 176)"}},{types:["char"],style:{color:"rgb(209, 105, 105)"}}]},q={plain:{color:"#000000",backgroundColor:"#ffffff"},styles:[{types:["comment"],style:{color:"rgb(0, 128, 0)"}},{types:["builtin"],style:{color:"rgb(0, 112, 193)"}},{types:["number","variable","inserted"],style:{color:"rgb(9, 134, 88)"}},{types:["operator"],style:{color:"rgb(0, 0, 0)"}},{types:["constant","char"],style:{color:"rgb(129, 31, 63)"}},{types:["tag"],style:{color:"rgb(128, 0, 0)"}},{types:["attr-name"],style:{color:"rgb(255, 0, 0)"}},{types:["deleted","string"],style:{color:"rgb(163, 21, 21)"}},{types:["changed","punctuation"],style:{color:"rgb(4, 81, 165)"}},{types:["function","keyword"],style:{color:"rgb(0, 0, 255)"}},{types:["class-name"],style:{color:"rgb(38, 127, 153)"}}]},V={plain:{color:"#f8fafc",backgroundColor:"#011627"},styles:[{types:["prolog"],style:{color:"#000080"}},{types:["comment"],style:{color:"#6A9955"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"#569CD6"}},{types:["number","inserted"],style:{color:"#B5CEA8"}},{types:["constant"],style:{color:"#f8fafc"}},{types:["attr-name","variable"],style:{color:"#9CDCFE"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"#cbd5e1"}},{types:["selector"],style:{color:"#D7BA7D"}},{types:["tag"],style:{color:"#0ea5e9"}},{types:["tag"],languages:["markup"],style:{color:"#0ea5e9"}},{types:["punctuation","operator"],style:{color:"#D4D4D4"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"#7dd3fc"}},{types:["class-name"],style:{color:"#0ea5e9"}},{types:["char"],style:{color:"#D16969"}}]},H={plain:{color:"#0f172a",backgroundColor:"#f1f5f9"},styles:[{types:["prolog"],style:{color:"#000080"}},{types:["comment"],style:{color:"#6A9955"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"#0c4a6e"}},{types:["number","inserted"],style:{color:"#B5CEA8"}},{types:["constant"],style:{color:"#0f172a"}},{types:["attr-name","variable"],style:{color:"#0c4a6e"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"#64748b"}},{types:["selector"],style:{color:"#D7BA7D"}},{types:["tag"],style:{color:"#0ea5e9"}},{types:["tag"],languages:["markup"],style:{color:"#0ea5e9"}},{types:["punctuation","operator"],style:{color:"#475569"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"#0e7490"}},{types:["class-name"],style:{color:"#0ea5e9"}},{types:["char"],style:{color:"#D16969"}}]},G={plain:{backgroundColor:"hsl(220, 13%, 18%)",color:"hsl(220, 14%, 71%)",textShadow:"0 1px rgba(0, 0, 0, 0.3)"},styles:[{types:["comment","prolog","cdata"],style:{color:"hsl(220, 10%, 40%)"}},{types:["doctype","punctuation","entity"],style:{color:"hsl(220, 14%, 71%)"}},{types:["attr-name","class-name","maybe-class-name","boolean","constant","number","atrule"],style:{color:"hsl(29, 54%, 61%)"}},{types:["keyword"],style:{color:"hsl(286, 60%, 67%)"}},{types:["property","tag","symbol","deleted","important"],style:{color:"hsl(355, 65%, 65%)"}},{types:["selector","string","char","builtin","inserted","regex","attr-value"],style:{color:"hsl(95, 38%, 62%)"}},{types:["variable","operator","function"],style:{color:"hsl(207, 82%, 66%)"}},{types:["url"],style:{color:"hsl(187, 47%, 55%)"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"hsl(220, 14%, 71%)"}}]},W={plain:{backgroundColor:"hsl(230, 1%, 98%)",color:"hsl(230, 8%, 24%)"},styles:[{types:["comment","prolog","cdata"],style:{color:"hsl(230, 4%, 64%)"}},{types:["doctype","punctuation","entity"],style:{color:"hsl(230, 8%, 24%)"}},{types:["attr-name","class-name","boolean","constant","number","atrule"],style:{color:"hsl(35, 99%, 36%)"}},{types:["keyword"],style:{color:"hsl(301, 63%, 40%)"}},{types:["property","tag","symbol","deleted","important"],style:{color:"hsl(5, 74%, 59%)"}},{types:["selector","string","char","builtin","inserted","regex","attr-value","punctuation"],style:{color:"hsl(119, 34%, 47%)"}},{types:["variable","operator","function"],style:{color:"hsl(221, 87%, 60%)"}},{types:["url"],style:{color:"hsl(198, 99%, 37%)"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"hsl(230, 8%, 24%)"}}]},K={plain:{color:"#ebdbb2",backgroundColor:"#292828"},styles:[{types:["imports","class-name","maybe-class-name","constant","doctype","builtin","function"],style:{color:"#d8a657"}},{types:["property-access"],style:{color:"#7daea3"}},{types:["tag"],style:{color:"#e78a4e"}},{types:["attr-name","char","url","regex"],style:{color:"#a9b665"}},{types:["attr-value","string"],style:{color:"#89b482"}},{types:["comment","prolog","cdata","operator","inserted"],style:{color:"#a89984"}},{types:["delimiter","boolean","keyword","selector","important","atrule","property","variable","deleted"],style:{color:"#ea6962"}},{types:["entity","number","symbol"],style:{color:"#d3869b"}}]},Q={plain:{color:"#654735",backgroundColor:"#f9f5d7"},styles:[{types:["delimiter","boolean","keyword","selector","important","atrule","property","variable","deleted"],style:{color:"#af2528"}},{types:["imports","class-name","maybe-class-name","constant","doctype","builtin"],style:{color:"#b4730e"}},{types:["string","attr-value"],style:{color:"#477a5b"}},{types:["property-access"],style:{color:"#266b79"}},{types:["function","attr-name","char","url"],style:{color:"#72761e"}},{types:["tag"],style:{color:"#b94c07"}},{types:["comment","prolog","cdata","operator","inserted"],style:{color:"#a89984"}},{types:["entity","number","symbol"],style:{color:"#924f79"}}]},Y=/\r\n|\r|\n/,X=e=>{0===e.length?e.push({types:["plain"],content:"\n",empty:!0}):1===e.length&&""===e[0].content&&(e[0].content="\n",e[0].empty=!0)},J=(e,t)=>{const n=e.length;return n>0&&e[n-1]===t?e:e.concat(t)},Z=e=>{const t=[[]],n=[e],a=[0],o=[e.length];let i=0,r=0,s=[];const c=[s];for(;r>-1;){for(;(i=a[r]++)0?l:["plain"],e=d):(l=J(l,d.type),d.alias&&(l=J(l,d.alias)),e=d.content),"string"!=typeof e){r++,t.push(l),n.push(e),a.push(0),o.push(e.length);continue}const u=e.split(Y),p=u.length;s.push({types:l,content:u[0]});for(let t=1;t{const{plain:n}=e,a=e.styles.reduce(((e,n)=>{const{languages:a,style:o}=n;return a&&!a.includes(t)||n.types.forEach((t=>{const n=w(w({},e[t]),o);e[t]=n})),e}),{});return a.root=n,a.plain=k(w({},n),{backgroundColor:void 0}),a},te=({children:e,language:t,code:n,theme:a,prism:o})=>{const i=t.toLowerCase(),r=ee(a,i),s=(e=>(0,d.useCallback)((t=>{var n=t,{className:a,style:o,line:i}=n,r=x(n,["className","style","line"]);const s=k(w({},r),{className:(0,u.A)("token-line",a)});return"object"==typeof e&&"plain"in e&&(s.style=e.plain),"object"==typeof o&&(s.style=w(w({},s.style||{}),o)),s}),[e]))(r),c=(e=>{const t=(0,d.useCallback)((({types:t,empty:n})=>{if(null!=e)return 1===t.length&&"plain"===t[0]?null!=n?{display:"inline-block"}:void 0:1===t.length&&null!=n?e[t[0]]:Object.assign(null!=n?{display:"inline-block"}:{},...t.map((t=>e[t])))}),[e]);return(0,d.useCallback)((e=>{var n=e,{token:a,className:o,style:i}=n,r=x(n,["token","className","style"]);const s=k(w({},r),{className:(0,u.A)("token",...a.types,o),children:a.content,style:t(a)});return null!=i&&(s.style=w(w({},s.style||{}),i)),s}),[t])})(r),l=(({prism:e,code:t,grammar:n,language:a})=>(0,d.useMemo)((()=>{if(null==n)return Z([t]);const o={code:t,grammar:n,language:a,tokens:[]};return e.hooks.run("before-tokenize",o),o.tokens=e.tokenize(t,n),e.hooks.run("after-tokenize",o),Z(o.tokens)}),[t,n,a,e]))({prism:o,language:i,code:n,grammar:o.languages[i]});return e({tokens:l,className:`prism-code language-${i}`,style:null!=r?r.root:{},getLineProps:s,getTokenProps:c})},ne=e=>(0,d.createElement)(te,k(w({},e),{prism:e.prism||E,theme:e.theme||$,code:e.code,language:e.language}))},1561:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var a=!0,o="Invariant failed";function i(e,t){if(!e){if(a)throw new Error(o);var n="function"==typeof t?t():t,i=n?"".concat(o,": ").concat(n):o;throw new Error(i)}}},1635:(e,t,n)=>{"use strict";n.r(t),n.d(t,{__addDisposableResource:()=>j,__assign:()=>i,__asyncDelegator:()=>x,__asyncGenerator:()=>k,__asyncValues:()=>A,__await:()=>w,__awaiter:()=>y,__classPrivateFieldGet:()=>F,__classPrivateFieldIn:()=>N,__classPrivateFieldSet:()=>R,__createBinding:()=>f,__decorate:()=>s,__disposeResources:()=>L,__esDecorate:()=>l,__exportStar:()=>m,__extends:()=>o,__generator:()=>g,__importDefault:()=>O,__importStar:()=>D,__makeTemplateObject:()=>E,__metadata:()=>h,__param:()=>c,__propKey:()=>u,__read:()=>_,__rest:()=>r,__rewriteRelativeImportExtension:()=>I,__runInitializers:()=>d,__setFunctionName:()=>p,__spread:()=>v,__spreadArray:()=>S,__spreadArrays:()=>P,__values:()=>b,default:()=>B});var a=function(e,t){return a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},a(e,t)};function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}a(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var i=function(){return i=Object.assign||function(e){for(var t,n=1,a=arguments.length;n=0;s--)(o=e[s])&&(r=(i<3?o(r):i>3?o(t,n,r):o(t,n))||r);return i>3&&r&&Object.defineProperty(t,n,r),r}function c(e,t){return function(n,a){t(n,a,e)}}function l(e,t,n,a,o,i){function r(e){if(void 0!==e&&"function"!=typeof e)throw new TypeError("Function expected");return e}for(var s,c=a.kind,l="getter"===c?"get":"setter"===c?"set":"value",d=!t&&e?a.static?e:e.prototype:null,u=t||(d?Object.getOwnPropertyDescriptor(d,a.name):{}),p=!1,h=n.length-1;h>=0;h--){var y={};for(var g in a)y[g]="access"===g?{}:a[g];for(var g in a.access)y.access[g]=a.access[g];y.addInitializer=function(e){if(p)throw new TypeError("Cannot add initializers after decoration has completed");i.push(r(e||null))};var f=(0,n[h])("accessor"===c?{get:u.get,set:u.set}:u[l],y);if("accessor"===c){if(void 0===f)continue;if(null===f||"object"!=typeof f)throw new TypeError("Object expected");(s=r(f.get))&&(u.get=s),(s=r(f.set))&&(u.set=s),(s=r(f.init))&&o.unshift(s)}else(s=r(f))&&("field"===c?o.unshift(s):u[l]=s)}d&&Object.defineProperty(d,a.name,u),p=!0}function d(e,t,n){for(var a=arguments.length>2,o=0;o0&&o[o.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]=e.length&&(e=void 0),{value:e&&e[a++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function _(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var a,o,i=n.call(e),r=[];try{for(;(void 0===t||t-- >0)&&!(a=i.next()).done;)r.push(a.value)}catch(s){o={error:s}}finally{try{a&&!a.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return r}function v(){for(var e=[],t=0;t1||s(e,t)}))},t&&(a[e]=t(a[e])))}function s(e,t){try{(n=o[e](t)).value instanceof w?Promise.resolve(n.value.v).then(c,l):d(i[0][2],n)}catch(a){d(i[0][3],a)}var n}function c(e){s("next",e)}function l(e){s("throw",e)}function d(e,t){e(t),i.shift(),i.length&&s(i[0][0],i[0][1])}}function x(e){var t,n;return t={},a("next"),a("throw",(function(e){throw e})),a("return"),t[Symbol.iterator]=function(){return this},t;function a(a,o){t[a]=e[a]?function(t){return(n=!n)?{value:w(e[a](t)),done:!1}:o?o(t):t}:o}}function A(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e=b(e),t={},a("next"),a("throw"),a("return"),t[Symbol.asyncIterator]=function(){return this},t);function a(n){t[n]=e[n]&&function(t){return new Promise((function(a,o){(function(e,t,n,a){Promise.resolve(a).then((function(t){e({value:t,done:n})}),t)})(a,o,(t=e[n](t)).done,t.value)}))}}}function E(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}var T=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t},C=function(e){return C=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},C(e)};function D(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n=C(e),a=0;a{"use strict";e.exports={}},4054:e=>{"use strict";e.exports=JSON.parse('{"/Python/blog-3c2":{"__comp":"a6aa9e1f","__context":{"plugin":"36994c47"},"sidebar":"814f3328","items":[{"content":"1d2e1535"},{"content":"c5c2dcde"}],"__props":"bd241fa9"},"/Python/blog/archive-9d7":{"__comp":"9e4087bc","__context":{"plugin":"36994c47"},"__props":"90067a5c"},"/Python/blog/authors-2ee":{"__comp":"621db11d","__context":{"data":{"blogMetadata":"acecf23e"},"plugin":"36994c47"},"sidebar":"814f3328","__props":"6dbed542"},"/Python/blog/authors/ccatik-f40":{"__comp":"33fc5bb8","__context":{"data":{"blogMetadata":"acecf23e"},"plugin":"36994c47"},"items":[{"content":"1d2e1535"},{"content":"c5c2dcde"}],"sidebar":"814f3328","__props":"1064f048"},"/Python/blog/importance-of-software-architecture-6d5":{"__comp":"ccc49370","__context":{"data":{"blogMetadata":"acecf23e"},"plugin":"36994c47"},"sidebar":"814f3328","content":"35fb5052"},"/Python/blog/tags-585":{"__comp":"01a85c17","__context":{"plugin":"36994c47"},"sidebar":"814f3328","__props":"66d0f264"},"/Python/blog/tags/docusaurus-2c0":{"__comp":"6875c492","__context":{"plugin":"36994c47"},"sidebar":"814f3328","items":[{"content":"1d2e1535"},{"content":"c5c2dcde"}],"__props":"ff59fe86"},"/Python/blog/tags/hello-f2f":{"__comp":"6875c492","__context":{"plugin":"36994c47"},"sidebar":"814f3328","items":[{"content":"1d2e1535"},{"content":"c5c2dcde"}],"__props":"2ce245f5"},"/Python/blog/why-python-guide-over-gpt-e44":{"__comp":"ccc49370","__context":{"data":{"blogMetadata":"acecf23e"},"plugin":"36994c47"},"sidebar":"814f3328","content":"2dda9ef5"},"/Python/markdown-page-301":{"__comp":"1f391b9e","__context":{"plugin":"a7456010"},"content":"393be207"},"/Python/docs-aba":{"__comp":"5e95c892","__context":{"plugin":"aba21aa0"}},"/Python/docs-c01":{"__comp":"a7bd4aaa","__props":"7789c0d7"},"/Python/docs-d9a":{"__comp":"a94703ab"},"/Python/docs/category/advanced-4cc":{"__comp":"14eb3368","__props":"4499c641"},"/Python/docs/category/asyncio-95b":{"__comp":"14eb3368","__props":"ab47cacc"},"/Python/docs/category/behavioral-design-patterns-9f0":{"__comp":"14eb3368","__props":"6171ec9d"},"/Python/docs/category/building-rest-apis-854":{"__comp":"14eb3368","__props":"2eb0321d"},"/Python/docs/category/built-in-functions-430":{"__comp":"14eb3368","__props":"888e3f85"},"/Python/docs/category/cicd-2e6":{"__comp":"14eb3368","__props":"dd3cd1de"},"/Python/docs/category/combining-datasets-cb4":{"__comp":"14eb3368","__props":"cec50c49"},"/Python/docs/category/control-flow-7c9":{"__comp":"14eb3368","__props":"e5bab151"},"/Python/docs/category/creational-design-patterns-6d2":{"__comp":"14eb3368","__props":"d76f2668"},"/Python/docs/category/data-frames-953":{"__comp":"14eb3368","__props":"789d323c"},"/Python/docs/category/data-visualization-69a":{"__comp":"14eb3368","__props":"2ff77cc8"},"/Python/docs/category/dataclasses-a3b":{"__comp":"14eb3368","__props":"93cba1c9"},"/Python/docs/category/designing-rest-apis-b50":{"__comp":"14eb3368","__props":"0b60ca86"},"/Python/docs/category/enhancing-actions-21d":{"__comp":"14eb3368","__props":"ab448cd4"},"/Python/docs/category/errors-93d":{"__comp":"14eb3368","__props":"34cbd55a"},"/Python/docs/category/fastapi-actions-37e":{"__comp":"14eb3368","__props":"5a7f151d"},"/Python/docs/category/file-management-c3f":{"__comp":"14eb3368","__props":"8d6874b1"},"/Python/docs/category/functions-483":{"__comp":"14eb3368","__props":"236be2e6"},"/Python/docs/category/how-cicd-revolutionized-software-development-a79":{"__comp":"14eb3368","__props":"c944b66c"},"/Python/docs/category/introduction-23e":{"__comp":"14eb3368","__props":"d92ce060"},"/Python/docs/category/lists-e60":{"__comp":"14eb3368","__props":"2f2fa6f1"},"/Python/docs/category/modules-89b":{"__comp":"14eb3368","__props":"e91cae89"},"/Python/docs/category/multi-threading-223":{"__comp":"14eb3368","__props":"83e5db84"},"/Python/docs/category/multiprocessing-552":{"__comp":"14eb3368","__props":"9dcd38ca"},"/Python/docs/category/numpy-4f6":{"__comp":"14eb3368","__props":"a574756a"},"/Python/docs/category/oop-538":{"__comp":"14eb3368","__props":"2476f821"},"/Python/docs/category/python-basics-dec":{"__comp":"14eb3368","__props":"6362c7e0"},"/Python/docs/category/reshaping-datasets-df4":{"__comp":"14eb3368","__props":"3d383523"},"/Python/docs/category/series-021":{"__comp":"14eb3368","__props":"0dab5e76"},"/Python/docs/category/setting-up-767":{"__comp":"14eb3368","__props":"8d6d8b61"},"/Python/docs/category/string-operators-656":{"__comp":"14eb3368","__props":"e0dc80b4"},"/Python/docs/category/structural-design-patterns-198":{"__comp":"14eb3368","__props":"81a0c3ab"},"/Python/docs/category/time-series-818":{"__comp":"14eb3368","__props":"94622a99"},"/Python/docs/category/unit-testing-d53":{"__comp":"14eb3368","__props":"b4a66da9"},"/Python/docs/ci-cd/enhancing-actions/01-4a1":{"__comp":"17896441","content":"f8aca2ea"},"/Python/docs/ci-cd/fastapi-actions/01-e94":{"__comp":"17896441","content":"4f7742b9"},"/Python/docs/ci-cd/getting-started-256":{"__comp":"17896441","content":"837e41de"},"/Python/docs/ci-cd/introduction/cicd/cd-92b":{"__comp":"17896441","content":"5f5f0651"},"/Python/docs/ci-cd/introduction/cicd/cdp-99a":{"__comp":"17896441","content":"4bece594"},"/Python/docs/ci-cd/introduction/cicd/ci-f75":{"__comp":"17896441","content":"32e82d59"},"/Python/docs/ci-cd/introduction/cicd/cicd-7e2":{"__comp":"17896441","content":"bd999cea"},"/Python/docs/ci-cd/introduction/cicd/introduction-github-actions-47d":{"__comp":"17896441","content":"555c4724"},"/Python/docs/ci-cd/introduction/cicd/key_components-a08":{"__comp":"17896441","content":"ab8be871"},"/Python/docs/ci-cd/introduction/cicd/practices-ab3":{"__comp":"17896441","content":"b4a018b2"},"/Python/docs/ci-cd/introduction/revolution_ci_cd/cdp-4fa":{"__comp":"17896441","content":"02279664"},"/Python/docs/ci-cd/introduction/revolution_ci_cd/ci-95b":{"__comp":"17896441","content":"294b7f6a"},"/Python/docs/ci-cd/setting-up/01-2ca":{"__comp":"17896441","content":"06d8f224"},"/Python/docs/data-analysis/Combining_Datasets/concat()-cd9":{"__comp":"17896441","content":"aa6ffcca"},"/Python/docs/data-analysis/Combining_Datasets/inner_join-8f7":{"__comp":"17896441","content":"a18aec92"},"/Python/docs/data-analysis/Combining_Datasets/Intro-f6e":{"__comp":"17896441","content":"e2977010"},"/Python/docs/data-analysis/Combining_Datasets/left_right_join-8dd":{"__comp":"17896441","content":"0e157602"},"/Python/docs/data-analysis/Combining_Datasets/left_right_minus-03c":{"__comp":"17896441","content":"dfd8392f"},"/Python/docs/data-analysis/Combining_Datasets/merge()-322":{"__comp":"17896441","content":"fa44d2a0"},"/Python/docs/data-analysis/Combining_Datasets/Merging_Different_Column-42d":{"__comp":"17896441","content":"59df60c1"},"/Python/docs/data-analysis/Combining_Datasets/outer_join-f6f":{"__comp":"17896441","content":"4499ec13"},"/Python/docs/data-analysis/Combining_Datasets/outer_join_minus-ceb":{"__comp":"17896441","content":"55781ecd"},"/Python/docs/data-analysis/Data_Frames/adding-columns-34b":{"__comp":"17896441","content":"ed0b4b51"},"/Python/docs/data-analysis/Data_Frames/descripe-info-4a7":{"__comp":"17896441","content":"0da3a2d9"},"/Python/docs/data-analysis/Data_Frames/dropna-1c1":{"__comp":"17896441","content":"3e900806"},"/Python/docs/data-analysis/Data_Frames/fillna-950":{"__comp":"17896441","content":"e3aefa38"},"/Python/docs/data-analysis/Data_Frames/intro-009":{"__comp":"17896441","content":"48e2860f"},"/Python/docs/data-analysis/Data_Frames/methods-563":{"__comp":"17896441","content":"629ec2bb"},"/Python/docs/data-analysis/Data_Frames/nlargest-nsmallest-b58":{"__comp":"17896441","content":"31d1cae9"},"/Python/docs/data-analysis/Data_Frames/removing-columns-rows-372":{"__comp":"17896441","content":"017bef9f"},"/Python/docs/data-analysis/Data_Frames/set_index-reset_index-147":{"__comp":"17896441","content":"b618cf9c"},"/Python/docs/data-analysis/Data-Visualization/Bar_Chart_Race-c9e":{"__comp":"17896441","content":"030c3c62"},"/Python/docs/data-analysis/Data-Visualization/Bar_Plots-6ce":{"__comp":"17896441","content":"7e90e893"},"/Python/docs/data-analysis/Data-Visualization/Candlestick_Charts-c09":{"__comp":"17896441","content":"3ec98c88"},"/Python/docs/data-analysis/Data-Visualization/Color_by_Value-f93":{"__comp":"17896441","content":"f6a804ea"},"/Python/docs/data-analysis/Data-Visualization/Histograms-dd8":{"__comp":"17896441","content":"bd9da85c"},"/Python/docs/data-analysis/Data-Visualization/Interactive_Plots-df7":{"__comp":"17896441","content":"4366146e"},"/Python/docs/data-analysis/Data-Visualization/Line_Plots-41d":{"__comp":"17896441","content":"ee32e7ca"},"/Python/docs/data-analysis/Data-Visualization/Pie_Charts-a2b":{"__comp":"17896441","content":"49be0ba8"},"/Python/docs/data-analysis/Data-Visualization/Scatter-75c":{"__comp":"17896441","content":"2622d6bc"},"/Python/docs/data-analysis/Data-Visualization/Styles-732":{"__comp":"17896441","content":"57b180af"},"/Python/docs/data-analysis/getting-started-2e1":{"__comp":"17896441","content":"e9e27faf"},"/Python/docs/data-analysis/NumPy/Add_New_Axis-481":{"__comp":"17896441","content":"ee076e89"},"/Python/docs/data-analysis/NumPy/Arrays-561":{"__comp":"17896441","content":"475d6da7"},"/Python/docs/data-analysis/NumPy/Basic_Operations-37f":{"__comp":"17896441","content":"0d75afaf"},"/Python/docs/data-analysis/NumPy/Broadcasting-6df":{"__comp":"17896441","content":"4d2986d4"},"/Python/docs/data-analysis/NumPy/Creating_Arrays-de9":{"__comp":"17896441","content":"9f1ccea8"},"/Python/docs/data-analysis/NumPy/Finding_Unique_Elements-35f":{"__comp":"17896441","content":"263c1a40"},"/Python/docs/data-analysis/NumPy/Generating_Random_Numbers-e15":{"__comp":"17896441","content":"63ba0684"},"/Python/docs/data-analysis/NumPy/Indexing_Slicing-8ff":{"__comp":"17896441","content":"85b17cde"},"/Python/docs/data-analysis/NumPy/Lists_vs_NumPy-f84":{"__comp":"17896441","content":"8cfe2489"},"/Python/docs/data-analysis/NumPy/Matrices-c16":{"__comp":"17896441","content":"0edcc700"},"/Python/docs/data-analysis/NumPy/Reshaping-56a":{"__comp":"17896441","content":"0d139d63"},"/Python/docs/data-analysis/NumPy/Reshaping_Flattening-98f":{"__comp":"17896441","content":"afd94412"},"/Python/docs/data-analysis/NumPy/Reversing_Arrays-c84":{"__comp":"17896441","content":"043db0b1"},"/Python/docs/data-analysis/NumPy/Saving_Loading_Arrays-a66":{"__comp":"17896441","content":"8acbafb2"},"/Python/docs/data-analysis/NumPy/Shape_and_Size-231":{"__comp":"17896441","content":"71ebce2a"},"/Python/docs/data-analysis/NumPy/Sorting_Concatenating-851":{"__comp":"17896441","content":"7811e216"},"/Python/docs/data-analysis/Reshaping_Datasets/groupby-be2":{"__comp":"17896441","content":"2a5468dc"},"/Python/docs/data-analysis/Reshaping_Datasets/introduction-483":{"__comp":"17896441","content":"c6e8a128"},"/Python/docs/data-analysis/Reshaping_Datasets/melt-c0d":{"__comp":"17896441","content":"2522d3c7"},"/Python/docs/data-analysis/Reshaping_Datasets/pivot-7de":{"__comp":"17896441","content":"806ba571"},"/Python/docs/data-analysis/Reshaping_Datasets/pivot-table-9e8":{"__comp":"17896441","content":"3f2b3237"},"/Python/docs/data-analysis/Reshaping_Datasets/stack-unstack-668":{"__comp":"17896441","content":"e5095d98"},"/Python/docs/data-analysis/Reshaping_Datasets/transpose-970":{"__comp":"17896441","content":"6d67a33f"},"/Python/docs/data-analysis/Series/accessing_elements_index-b1d":{"__comp":"17896441","content":"c96fe195"},"/Python/docs/data-analysis/Series/accessing_elements_position-2bc":{"__comp":"17896441","content":"5d00fa63"},"/Python/docs/data-analysis/Series/attributes-0cd":{"__comp":"17896441","content":"4dd92639"},"/Python/docs/data-analysis/Series/counting_values-6c7":{"__comp":"17896441","content":"996e16ac"},"/Python/docs/data-analysis/Series/handling_csv_files-a01":{"__comp":"17896441","content":"392e7e20"},"/Python/docs/data-analysis/Series/head-and-tail-7bd":{"__comp":"17896441","content":"e716e54f"},"/Python/docs/data-analysis/Series/intro-8c8":{"__comp":"17896441","content":"09f396b9"},"/Python/docs/data-analysis/Series/methods-c8a":{"__comp":"17896441","content":"5912db3d"},"/Python/docs/data-analysis/Series/sorting_values-647":{"__comp":"17896441","content":"80176b24"},"/Python/docs/data-analysis/String_Operators/index-columns-08d":{"__comp":"17896441","content":"b650f3af"},"/Python/docs/data-analysis/String_Operators/startswith-endswith-fc3":{"__comp":"17896441","content":"97888c38"},"/Python/docs/data-analysis/String_Operators/str-409":{"__comp":"17896441","content":"c5b485d2"},"/Python/docs/data-analysis/Time_Series/Accessing_Time_Attributes-824":{"__comp":"17896441","content":"84f46ccb"},"/Python/docs/data-analysis/Time_Series/date_range()-2d7":{"__comp":"17896441","content":"a55fb7e1"},"/Python/docs/data-analysis/Time_Series/loc_iloc_DatetimeIndex-7a1":{"__comp":"17896441","content":"9a1cf803"},"/Python/docs/data-analysis/Time_Series/Period_PeriodIndex-9de":{"__comp":"17896441","content":"5e6e778b"},"/Python/docs/data-analysis/Time_Series/Project-4a3":{"__comp":"17896441","content":"1780ca50"},"/Python/docs/data-analysis/Time_Series/reindex-11c":{"__comp":"17896441","content":"92f0f0d9"},"/Python/docs/data-analysis/Time_Series/resample-d4d":{"__comp":"17896441","content":"b0685d08"},"/Python/docs/data-analysis/Time_Series/Time_Series-24f":{"__comp":"17896441","content":"d04368bf"},"/Python/docs/data-analysis/Time_Series/Timedelta_TimedeltaIndex-51b":{"__comp":"17896441","content":"aa4345da"},"/Python/docs/data-analysis/Time_Series/Timestamp_DatetimeIndex-901":{"__comp":"17896441","content":"e72316f9"},"/Python/docs/data-analysis/Time_Series/Timestap_Methods_Attributes-3ce":{"__comp":"17896441","content":"4da8d02e"},"/Python/docs/design-patterns/behavioral/behavioral-6cb":{"__comp":"17896441","content":"e182db80"},"/Python/docs/design-patterns/creational/-220":{"__comp":"17896441","content":"1d27f193"},"/Python/docs/design-patterns/creational/abstract_factory-088":{"__comp":"17896441","content":"e9abefc4"},"/Python/docs/design-patterns/creational/builder-526":{"__comp":"17896441","content":"00a4a69b"},"/Python/docs/design-patterns/creational/factory_method-92e":{"__comp":"17896441","content":"bf286b78"},"/Python/docs/design-patterns/creational/prototype-148":{"__comp":"17896441","content":"d91c278b"},"/Python/docs/design-patterns/creational/singleton-491":{"__comp":"17896441","content":"49fe9afd"},"/Python/docs/design-patterns/getting-started-113":{"__comp":"17896441","content":"801c5c2a"},"/Python/docs/design-patterns/structural/structural-5e8":{"__comp":"17896441","content":"0f0ba0d3"},"/Python/docs/getting-started-e05":{"__comp":"17896441","content":"c0e9904c"},"/Python/docs/gui-development/getting-started-3dd":{"__comp":"17896441","content":"4591fb16"},"/Python/docs/gui-development/introduction/gui_development-ac2":{"__comp":"17896441","content":"b4c39990"},"/Python/docs/gui-development/introduction/gui_frameworks-80f":{"__comp":"17896441","content":"3613df99"},"/Python/docs/gui-development/introduction/right_framework-6f7":{"__comp":"17896441","content":"50a3b692"},"/Python/docs/gui-development/introduction/setting-up-5be":{"__comp":"17896441","content":"40a5a7ee"},"/Python/docs/python-guide/Advanced/Generators/-566":{"__comp":"17896441","content":"8aa97a9d"},"/Python/docs/python-guide/Advanced/Lambda_Functions/-797":{"__comp":"17896441","content":"8162aee2"},"/Python/docs/python-guide/Advanced/Mypy/-d01":{"__comp":"17896441","content":"fd743662"},"/Python/docs/python-guide/Advanced/Walrus_Operator/-924":{"__comp":"17896441","content":"58b97900"},"/Python/docs/python-guide/AsyncIO/Gather-303":{"__comp":"17896441","content":"ef91d723"},"/Python/docs/python-guide/AsyncIO/Getting_Started-d23":{"__comp":"17896441","content":"c5fc0896"},"/Python/docs/python-guide/AsyncIO/Intro-15f":{"__comp":"17896441","content":"c13d5729"},"/Python/docs/python-guide/AsyncIO/Tasks-70c":{"__comp":"17896441","content":"f336a35c"},"/Python/docs/python-guide/AsyncIO/Website_Status-5b8":{"__comp":"17896441","content":"5269bdec"},"/Python/docs/python-guide/Built_in_Functions/all()/-7df":{"__comp":"17896441","content":"af03e5ca"},"/Python/docs/python-guide/Built_in_Functions/any()/-20c":{"__comp":"17896441","content":"c3a6df41"},"/Python/docs/python-guide/Built_in_Functions/callable()/-b3f":{"__comp":"17896441","content":"c6132cfa"},"/Python/docs/python-guide/Built_in_Functions/dunder_methods/-d62":{"__comp":"17896441","content":"293fcfde"},"/Python/docs/python-guide/Built_in_Functions/enumerate()/-19a":{"__comp":"17896441","content":"4a7981ee"},"/Python/docs/python-guide/Built_in_Functions/eval()/-dfb":{"__comp":"17896441","content":"f51fa222"},"/Python/docs/python-guide/Built_in_Functions/exec()/-3ef":{"__comp":"17896441","content":"a9a6ff67"},"/Python/docs/python-guide/Built_in_Functions/filter()/-31d":{"__comp":"17896441","content":"b5e55e9a"},"/Python/docs/python-guide/Built_in_Functions/globals()/-6dd":{"__comp":"17896441","content":"191284a0"},"/Python/docs/python-guide/Built_in_Functions/Improved_Chat_Bot/-009":{"__comp":"17896441","content":"308dd3a4"},"/Python/docs/python-guide/Built_in_Functions/isinstance()/-796":{"__comp":"17896441","content":"9b7a5f45"},"/Python/docs/python-guide/Built_in_Functions/locals()/-b03":{"__comp":"17896441","content":"d5a770b9"},"/Python/docs/python-guide/Built_in_Functions/map()/-88a":{"__comp":"17896441","content":"0ef765be"},"/Python/docs/python-guide/Built_in_Functions/print()/-54d":{"__comp":"17896441","content":"c1e6e7cd"},"/Python/docs/python-guide/Built_in_Functions/range()/-edc":{"__comp":"17896441","content":"6d047011"},"/Python/docs/python-guide/Built_in_Functions/round()/-f70":{"__comp":"17896441","content":"26d9c0ab"},"/Python/docs/python-guide/Built_in_Functions/slice()/-ae4":{"__comp":"17896441","content":"b77d8450"},"/Python/docs/python-guide/Built_in_Functions/sorted()/-8c0":{"__comp":"17896441","content":"a08c090c"},"/Python/docs/python-guide/Built_in_Functions/zip()/-d46":{"__comp":"17896441","content":"a3d57dda"},"/Python/docs/python-guide/Control_Flow/Break_and_Continue-286":{"__comp":"17896441","content":"1ddfe61b"},"/Python/docs/python-guide/Control_Flow/For_Loop-7a4":{"__comp":"17896441","content":"ceebdb4d"},"/Python/docs/python-guide/Control_Flow/If_Elif_Else-3c6":{"__comp":"17896441","content":"3750b354"},"/Python/docs/python-guide/Control_Flow/If_Else_Shorthand-ae8":{"__comp":"17896441","content":"068f8030"},"/Python/docs/python-guide/Control_Flow/Loop-Else-0c1":{"__comp":"17896441","content":"5359b4aa"},"/Python/docs/python-guide/Control_Flow/Rock_Paper_Scissors-074":{"__comp":"17896441","content":"8db21432"},"/Python/docs/python-guide/Control_Flow/While_Loop-d6c":{"__comp":"17896441","content":"913b297b"},"/Python/docs/python-guide/Dataclasses/@dataclass/-3f3":{"__comp":"17896441","content":"d27d873d"},"/Python/docs/python-guide/Dataclasses/@property/-4eb":{"__comp":"17896441","content":"740379d1"},"/Python/docs/python-guide/Dataclasses/Fields/-e90":{"__comp":"17896441","content":"f69e91c2"},"/Python/docs/python-guide/Dataclasses/InitVar/-5e3":{"__comp":"17896441","content":"3ebcdea2"},"/Python/docs/python-guide/Dataclasses/Notes_App/-509":{"__comp":"17896441","content":"1d1c07cf"},"/Python/docs/python-guide/Dataclasses/post_init/-050":{"__comp":"17896441","content":"7ec4d135"},"/Python/docs/python-guide/Errors/Else_Finally/-d90":{"__comp":"17896441","content":"a0acb491"},"/Python/docs/python-guide/Errors/Letters_Only/-0b8":{"__comp":"17896441","content":"c8011c9d"},"/Python/docs/python-guide/Errors/Raise/-3e6":{"__comp":"17896441","content":"19f81c0f"},"/Python/docs/python-guide/Errors/Try_Except/-958":{"__comp":"17896441","content":"342f73ce"},"/Python/docs/python-guide/Errors/Unknown_Errors/-3d6":{"__comp":"17896441","content":"a2ad7e19"},"/Python/docs/python-guide/Errors/User_Input/-c1d":{"__comp":"17896441","content":"8b2026ac"},"/Python/docs/python-guide/File-Management/Caching-JSON-7b0":{"__comp":"17896441","content":"8b6c5ce0"},"/Python/docs/python-guide/File-Management/Deleting_Files-9f7":{"__comp":"17896441","content":"579b3ab9"},"/Python/docs/python-guide/File-Management/File-Handling-5fa":{"__comp":"17896441","content":"a352be79"},"/Python/docs/python-guide/File-Management/Glob-480":{"__comp":"17896441","content":"9dbba695"},"/Python/docs/python-guide/File-Management/Handling-JSON-ba3":{"__comp":"17896441","content":"876678a4"},"/Python/docs/python-guide/File-Management/JSON-3b7":{"__comp":"17896441","content":"a4f0fafb"},"/Python/docs/python-guide/File-Management/Pickling-96a":{"__comp":"17896441","content":"5d990bfa"},"/Python/docs/python-guide/File-Management/Reading-Files-35f":{"__comp":"17896441","content":"cf307268"},"/Python/docs/python-guide/File-Management/toml-c66":{"__comp":"17896441","content":"4e9edaf3"},"/Python/docs/python-guide/File-Management/Writing-Creating-Files-ddd":{"__comp":"17896441","content":"5d0961f8"},"/Python/docs/python-guide/File-Management/yaml-c0f":{"__comp":"17896441","content":"40b0ebf5"},"/Python/docs/python-guide/Functions/Args_and_Kwargs-5df":{"__comp":"17896441","content":"3cd7aa5b"},"/Python/docs/python-guide/Functions/Creating_a_Function-91b":{"__comp":"17896441","content":"91c7a9a3"},"/Python/docs/python-guide/Functions/Parameters_and_Arguments-9ea":{"__comp":"17896441","content":"f14c1d17"},"/Python/docs/python-guide/Functions/Pass-849":{"__comp":"17896441","content":"9092f47c"},"/Python/docs/python-guide/Functions/Recursion-faa":{"__comp":"17896441","content":"6204e49d"},"/Python/docs/python-guide/Functions/Return_Functions-589":{"__comp":"17896441","content":"f552d686"},"/Python/docs/python-guide/Functions/Star_and_Slash-591":{"__comp":"17896441","content":"02be6242"},"/Python/docs/python-guide/getting-started-50c":{"__comp":"17896441","content":"924da9a5"},"/Python/docs/python-guide/Lists/Dont_Loop_Modify-cfd":{"__comp":"17896441","content":"4234000d"},"/Python/docs/python-guide/Lists/getting-started-9db":{"__comp":"17896441","content":"b7deb2ea"},"/Python/docs/python-guide/Lists/Grocery_List-ddd":{"__comp":"17896441","content":"f631f71f"},"/Python/docs/python-guide/Lists/List_Comprehensions-398":{"__comp":"17896441","content":"f13b2968"},"/Python/docs/python-guide/Lists/Slicing-192":{"__comp":"17896441","content":"1e26fa38"},"/Python/docs/python-guide/Modules/if_name_main/-65c":{"__comp":"17896441","content":"3d0f2262"},"/Python/docs/python-guide/Modules/Importing/-18c":{"__comp":"17896441","content":"85e353e6"},"/Python/docs/python-guide/Modules/Libraries/-e4f":{"__comp":"17896441","content":"510a290c"},"/Python/docs/python-guide/Modules/Modules/-c97":{"__comp":"17896441","content":"4cb30d22"},"/Python/docs/python-guide/Modules/Packages/code/-7d0":{"__comp":"17896441","content":"533304a1"},"/Python/docs/python-guide/Modules/Website_Status/-c1f":{"__comp":"17896441","content":"e7dc1672"},"/Python/docs/python-guide/Multiprocessing/Data-Sharing-Issue-6ef":{"__comp":"17896441","content":"5555e077"},"/Python/docs/python-guide/Multiprocessing/Intro-56c":{"__comp":"17896441","content":"5e8a9b70"},"/Python/docs/python-guide/Multiprocessing/Lock-Semaphores-d15":{"__comp":"17896441","content":"c66eba8b"},"/Python/docs/python-guide/Multiprocessing/Pipes-dc8":{"__comp":"17896441","content":"72bbb82c"},"/Python/docs/python-guide/Multiprocessing/Pools-Map-4bc":{"__comp":"17896441","content":"5a5349b1"},"/Python/docs/python-guide/Multiprocessing/Pools-Multiple-Functions-3ab":{"__comp":"17896441","content":"ca3ad580"},"/Python/docs/python-guide/Multiprocessing/Pools-Starmap-682":{"__comp":"17896441","content":"b7280f47"},"/Python/docs/python-guide/Multiprocessing/Processes-5fe":{"__comp":"17896441","content":"2979f838"},"/Python/docs/python-guide/Multiprocessing/Queues-85f":{"__comp":"17896441","content":"dd2920d7"},"/Python/docs/python-guide/Multithreading/Daemon-Threads-fb5":{"__comp":"17896441","content":"145e3d85"},"/Python/docs/python-guide/Multithreading/Locks-d00":{"__comp":"17896441","content":"de3f77b7"},"/Python/docs/python-guide/Multithreading/Race-Conditions-235":{"__comp":"17896441","content":"5cc55060"},"/Python/docs/python-guide/Multithreading/Semaphores-dae":{"__comp":"17896441","content":"9f19cdfb"},"/Python/docs/python-guide/Multithreading/Threads-96b":{"__comp":"17896441","content":"4b77b884"},"/Python/docs/python-guide/Multithreading/With-Lock-Semaphore-686":{"__comp":"17896441","content":"1c5ae7d9"},"/Python/docs/python-guide/OOP/@abstractmethod-72f":{"__comp":"17896441","content":"8452f48b"},"/Python/docs/python-guide/OOP/@classmethod-d45":{"__comp":"17896441","content":"0e087ba8"},"/Python/docs/python-guide/OOP/@staticmethod-171":{"__comp":"17896441","content":"b56cf611"},"/Python/docs/python-guide/OOP/Attributes_Class_and_Instance-ad2":{"__comp":"17896441","content":"56686996"},"/Python/docs/python-guide/OOP/Classes_and_Objects-115":{"__comp":"17896441","content":"7bfe3df9"},"/Python/docs/python-guide/OOP/Dunder_Methods-e50":{"__comp":"17896441","content":"d0532420"},"/Python/docs/python-guide/OOP/eq__()-62e":{"__comp":"17896441","content":"e1deef93"},"/Python/docs/python-guide/OOP/Inheritance-acb":{"__comp":"17896441","content":"62946fa7"},"/Python/docs/python-guide/OOP/init-6a3":{"__comp":"17896441","content":"31aaf742"},"/Python/docs/python-guide/OOP/Methods_Functions-e12":{"__comp":"17896441","content":"e43813f1"},"/Python/docs/python-guide/OOP/Name_Mangling-8f3":{"__comp":"17896441","content":"e4aa94b3"},"/Python/docs/python-guide/OOP/OOP-f96":{"__comp":"17896441","content":"e535263e"},"/Python/docs/python-guide/OOP/self-10d":{"__comp":"17896441","content":"d986f9a5"},"/Python/docs/python-guide/OOP/str()_repr()-a07":{"__comp":"17896441","content":"30425f75"},"/Python/docs/python-guide/OOP/super()-e8a":{"__comp":"17896441","content":"f9e7c98a"},"/Python/docs/python-guide/Python_Basics/Assertions-204":{"__comp":"17896441","content":"86e7d73b"},"/Python/docs/python-guide/Python_Basics/Booleans-87c":{"__comp":"17896441","content":"445d53c3"},"/Python/docs/python-guide/Python_Basics/Comments-fd2":{"__comp":"17896441","content":"be373491"},"/Python/docs/python-guide/Python_Basics/Comparing_Floats-4b0":{"__comp":"17896441","content":"74f339b8"},"/Python/docs/python-guide/Python_Basics/Constants-bdb":{"__comp":"17896441","content":"0fcdd45c"},"/Python/docs/python-guide/Python_Basics/Data_Types-fba":{"__comp":"17896441","content":"f9c8ab04"},"/Python/docs/python-guide/Python_Basics/Dictionaries-671":{"__comp":"17896441","content":"bb454858"},"/Python/docs/python-guide/Python_Basics/Doc_Strings-1ac":{"__comp":"17896441","content":"9dd7c8b4"},"/Python/docs/python-guide/Python_Basics/F-Strings-10b":{"__comp":"17896441","content":"62167d47"},"/Python/docs/python-guide/Python_Basics/Floats-c39":{"__comp":"17896441","content":"ec17db3e"},"/Python/docs/python-guide/Python_Basics/Frozensets-8cd":{"__comp":"17896441","content":"67abe04d"},"/Python/docs/python-guide/Python_Basics/Global-041":{"__comp":"17896441","content":"ac14fcce"},"/Python/docs/python-guide/Python_Basics/Integers-852":{"__comp":"17896441","content":"266e7ad2"},"/Python/docs/python-guide/Python_Basics/Lists-f40":{"__comp":"17896441","content":"62464792"},"/Python/docs/python-guide/Python_Basics/Mad_Libs_Project-e43":{"__comp":"17896441","content":"b56c59c7"},"/Python/docs/python-guide/Python_Basics/None-52e":{"__comp":"17896441","content":"ddd5109d"},"/Python/docs/python-guide/Python_Basics/Nonlocal-729":{"__comp":"17896441","content":"9ac61ab1"},"/Python/docs/python-guide/Python_Basics/Operators-084":{"__comp":"17896441","content":"68fb21db"},"/Python/docs/python-guide/Python_Basics/Scopes-162":{"__comp":"17896441","content":"98d1ce75"},"/Python/docs/python-guide/Python_Basics/Sets-dd3":{"__comp":"17896441","content":"52dc5d24"},"/Python/docs/python-guide/Python_Basics/Shortcut_Format-be7":{"__comp":"17896441","content":"492a8641"},"/Python/docs/python-guide/Python_Basics/Simple_Adder_Project-9f6":{"__comp":"17896441","content":"7a695929"},"/Python/docs/python-guide/Python_Basics/Strings-a0b":{"__comp":"17896441","content":"e688c8d1"},"/Python/docs/python-guide/Python_Basics/Syntax-487":{"__comp":"17896441","content":"30c3d9f2"},"/Python/docs/python-guide/Python_Basics/Truthy_and_Falsy-b1b":{"__comp":"17896441","content":"92fa72b8"},"/Python/docs/python-guide/Python_Basics/Tuples-713":{"__comp":"17896441","content":"ef6e47f0"},"/Python/docs/python-guide/Python_Basics/Type_Conversion-fae":{"__comp":"17896441","content":"333ec80d"},"/Python/docs/python-guide/Python_Basics/Type_Hints-f11":{"__comp":"17896441","content":"efd9c176"},"/Python/docs/python-guide/Python_Basics/Unpacking-5c2":{"__comp":"17896441","content":"3df59a35"},"/Python/docs/python-guide/Python_Basics/Variables-285":{"__comp":"17896441","content":"1b452ad4"},"/Python/docs/python-guide/Python_Basics/VS_Is-198":{"__comp":"17896441","content":"9852a806"},"/Python/docs/python-guide/Unit-Testing/Conftest-279":{"__comp":"17896441","content":"51ed8f9b"},"/Python/docs/python-guide/Unit-Testing/Fixtures-9dd":{"__comp":"17896441","content":"780b2cf7"},"/Python/docs/python-guide/Unit-Testing/Intro-de9":{"__comp":"17896441","content":"9c2f15da"},"/Python/docs/python-guide/Unit-Testing/Marks-853":{"__comp":"17896441","content":"2a6b03ac"},"/Python/docs/python-guide/Unit-Testing/Parametrize-489":{"__comp":"17896441","content":"53ff09af"},"/Python/docs/python-guide/Unit-Testing/TestingErrors-dc6":{"__comp":"17896441","content":"f96f815e"},"/Python/docs/rest-api/Building-REST-API/08-e61":{"__comp":"17896441","content":"be8d3379"},"/Python/docs/rest-api/Building-REST-API/adding_urls-7b8":{"__comp":"17896441","content":"82ae4d28"},"/Python/docs/rest-api/Building-REST-API/building_rest_api-8f6":{"__comp":"17896441","content":"4312c302"},"/Python/docs/rest-api/Building-REST-API/django_rest-533":{"__comp":"17896441","content":"4a2e78da"},"/Python/docs/rest-api/Building-REST-API/expanding_using_flask-9a5":{"__comp":"17896441","content":"207eed4d"},"/Python/docs/rest-api/Building-REST-API/fastapi-eda":{"__comp":"17896441","content":"0de1b55f"},"/Python/docs/rest-api/Building-REST-API/loading_serializing_drf-17b":{"__comp":"17896441","content":"818979f3"},"/Python/docs/rest-api/Building-REST-API/using_fastapi-0ff":{"__comp":"17896441","content":"8b5b43dd"},"/Python/docs/rest-api/CRUD-1ef":{"__comp":"17896441","content":"a7d3ada0"},"/Python/docs/rest-api/Designing-REST-API/designing_data_exchange-b12":{"__comp":"17896441","content":"5461ab07"},"/Python/docs/rest-api/Designing-REST-API/designing_error_responses-ccc":{"__comp":"17896441","content":"d08a13c4"},"/Python/docs/rest-api/Designing-REST-API/designing_rest_api-635":{"__comp":"17896441","content":"a473d1ab"},"/Python/docs/rest-api/Designing-REST-API/get_post-a70":{"__comp":"17896441","content":"ec380046"},"/Python/docs/rest-api/Designing-REST-API/interacting_with_rest-b7d":{"__comp":"17896441","content":"e56f6ccc"},"/Python/docs/rest-api/Designing-REST-API/put_patch_delete-57e":{"__comp":"17896441","content":"93edebbc"},"/Python/docs/rest-api/Designing-REST-API/understanding_rest_api-782":{"__comp":"17896441","content":"79c4db13"},"/Python/docs/rest-api/getting-started-064":{"__comp":"17896441","content":"e19a070d"},"/Python/docs/tips-and-tricks/common-errors-36d":{"__comp":"17896441","content":"62bbb2a0"},"/Python/docs/tips-and-tricks/critical-mistakes-to-avoid-16d":{"__comp":"17896441","content":"7e7eebeb"},"/Python/docs/tips-and-tricks/decorators-e51":{"__comp":"17896441","content":"b6ef7ae4"},"/Python/docs/tips-and-tricks/dont-dry-3de":{"__comp":"17896441","content":"7f6c326a"},"/Python/docs/tips-and-tricks/dunder-methods-cb6":{"__comp":"17896441","content":"eb52afdc"},"/Python/docs/tips-and-tricks/easter-eggs-a73":{"__comp":"17896441","content":"1be9de02"},"/Python/docs/tips-and-tricks/F-String-Tricks-961":{"__comp":"17896441","content":"277fcbe8"},"/Python/docs/tips-and-tricks/granularity-cohesion-d1d":{"__comp":"17896441","content":"594f8c30"},"/Python/docs/tips-and-tricks/itemgetter-884":{"__comp":"17896441","content":"b666f56a"},"/Python/docs/tips-and-tricks/iterable-iterator-9a2":{"__comp":"17896441","content":"43fdad46"},"/Python/docs/tips-and-tricks/Keywords-90a":{"__comp":"17896441","content":"3200b7d5"},"/Python/docs/tips-and-tricks/linux-commands-dfc":{"__comp":"17896441","content":"c95127d5"},"/Python/docs/tips-and-tricks/match-case-e41":{"__comp":"17896441","content":"b3a4baaf"},"/Python/docs/tips-and-tricks/methodcaller-1ea":{"__comp":"17896441","content":"d707847b"},"/Python/docs/tips-and-tricks/methods-d35":{"__comp":"17896441","content":"6fc57f84"},"/Python/docs/tips-and-tricks/python-is-python3-443":{"__comp":"17896441","content":"e784a889"},"/Python/docs/tips-and-tricks/rip-gil-442":{"__comp":"17896441","content":"a432c62c"},"/Python/docs/tips-and-tricks/seven-code-habbits-82d":{"__comp":"17896441","content":"af0efa6c"},"/Python/docs/tips-and-tricks/tips-and-tricks-291":{"__comp":"17896441","content":"bc257119"},"/Python/docs/tips-and-tricks/worst-Features-fd9":{"__comp":"17896441","content":"dd2a7a4b"},"/Python/docs/tips-and-tricks/wtf-is-self-0a7":{"__comp":"17896441","content":"72eceac8"},"/Python/docs/tips-and-tricks/yield-937":{"__comp":"17896441","content":"8ee4e10f"},"/Python/-6cd":{"__comp":"c4f5d8e4","__context":{"plugin":"a7456010"},"config":"5e9f5e1a"}}')}},e=>{e.O(0,[1869],(()=>{return t=5161,e(e.s=t);var t}));e.O()}]); \ No newline at end of file diff --git a/assets/js/main.994a55b6.js.LICENSE.txt b/assets/js/main.e87c1819.js.LICENSE.txt similarity index 100% rename from assets/js/main.994a55b6.js.LICENSE.txt rename to assets/js/main.e87c1819.js.LICENSE.txt diff --git a/blog/archive/index.html b/blog/archive/index.html index f66fbe5f..5171465b 100644 --- a/blog/archive/index.html +++ b/blog/archive/index.html @@ -6,9 +6,9 @@ Archive | Python Guide - + - + \ No newline at end of file diff --git a/blog/authors/ccatik/index.html b/blog/authors/ccatik/index.html index d401ad31..fb1feffd 100644 --- a/blog/authors/ccatik/index.html +++ b/blog/authors/ccatik/index.html @@ -6,9 +6,9 @@ Γ‡ağrΔ± Γ‡atΔ±k - 2 posts | Python Guide - + -
View all authors

Why This Overburden Python Guide Besides GPT?

Β· 3 min read

In recent years, tools like GPT have transformed the way developers approach coding. With a simple prompt, you can generate functional code snippets for virtually any programming task. However, as incredible as this technology is, relying solely on AI-generated solutions without understanding the underlying concepts is a risky strategy. That’s where the Overburden Python Guide comes in.

The Importance of Software Architecture

Β· 4 min read

In the world of software development, the importance of software architecture often takes a backseat to code implementation and feature delivery. However, software architecture serves as the backbone of any successful project, defining the structure, scalability, and maintainability of your system. Understanding how to architect software is a cornerstone of creating reliable, efficient, and future-proof applications.

+
View all authors

Why This Overburden Python Guide Besides GPT?

Β· 3 min read

In recent years, tools like GPT have transformed the way developers approach coding. With a simple prompt, you can generate functional code snippets for virtually any programming task. However, as incredible as this technology is, relying solely on AI-generated solutions without understanding the underlying concepts is a risky strategy. That’s where the Overburden Python Guide comes in.

The Importance of Software Architecture

Β· 4 min read

In the world of software development, the importance of software architecture often takes a backseat to code implementation and feature delivery. However, software architecture serves as the backbone of any successful project, defining the structure, scalability, and maintainability of your system. Understanding how to architect software is a cornerstone of creating reliable, efficient, and future-proof applications.

\ No newline at end of file diff --git a/blog/authors/index.html b/blog/authors/index.html index 830bea53..fa2a1842 100644 --- a/blog/authors/index.html +++ b/blog/authors/index.html @@ -6,9 +6,9 @@ Authors | Python Guide - + - + \ No newline at end of file diff --git a/blog/importance-of-software-architecture/index.html b/blog/importance-of-software-architecture/index.html index 3ccbf9c7..8ebf7be2 100644 --- a/blog/importance-of-software-architecture/index.html +++ b/blog/importance-of-software-architecture/index.html @@ -6,7 +6,7 @@ The Importance of Software Architecture | Python Guide - +

The Importance of Software Architecture

Β· 4 min read

In the world of software development, the importance of software architecture often takes a backseat to code implementation and feature delivery. However, software architecture serves as the backbone of any successful project, defining the structure, scalability, and maintainability of your system. Understanding how to architect software is a cornerstone of creating reliable, efficient, and future-proof applications.

@@ -160,6 +160,6 @@

Conclusion​

-

Software architecture is not just about technical choices; it’s about creating a foundation for long-term success. By mastering architectural principles and patterns, you equip yourself to build systems that are robust, scalable, and adaptable. Remember, tools like GPT can assist in generating code and providing recommendations, but they lack the strategic vision and critical thinking of a real architect. Start investing in this critical skill today, and watch your projects flourish.

+

Software architecture is not just about technical choices; it’s about creating a foundation for long-term success. By mastering architectural principles and patterns, you equip yourself to build systems that are robust, scalable, and adaptable. Remember, tools like GPT can assist in generating code and providing recommendations, but they lack the strategic vision and critical thinking of a real architect. Start investing in this critical skill today, and watch your projects flourish.

\ No newline at end of file diff --git a/blog/index.html b/blog/index.html index ecc313ed..16646b7a 100644 --- a/blog/index.html +++ b/blog/index.html @@ -6,9 +6,9 @@ Blog | Python Guide - + -

Why This Overburden Python Guide Besides GPT?

Β· 3 min read

In recent years, tools like GPT have transformed the way developers approach coding. With a simple prompt, you can generate functional code snippets for virtually any programming task. However, as incredible as this technology is, relying solely on AI-generated solutions without understanding the underlying concepts is a risky strategy. That’s where the Overburden Python Guide comes in.

The Importance of Software Architecture

Β· 4 min read

In the world of software development, the importance of software architecture often takes a backseat to code implementation and feature delivery. However, software architecture serves as the backbone of any successful project, defining the structure, scalability, and maintainability of your system. Understanding how to architect software is a cornerstone of creating reliable, efficient, and future-proof applications.

+

Why This Overburden Python Guide Besides GPT?

Β· 3 min read

In recent years, tools like GPT have transformed the way developers approach coding. With a simple prompt, you can generate functional code snippets for virtually any programming task. However, as incredible as this technology is, relying solely on AI-generated solutions without understanding the underlying concepts is a risky strategy. That’s where the Overburden Python Guide comes in.

The Importance of Software Architecture

Β· 4 min read

In the world of software development, the importance of software architecture often takes a backseat to code implementation and feature delivery. However, software architecture serves as the backbone of any successful project, defining the structure, scalability, and maintainability of your system. Understanding how to architect software is a cornerstone of creating reliable, efficient, and future-proof applications.

\ No newline at end of file diff --git a/blog/tags/docusaurus/index.html b/blog/tags/docusaurus/index.html index 257e699f..5882f9aa 100644 --- a/blog/tags/docusaurus/index.html +++ b/blog/tags/docusaurus/index.html @@ -6,9 +6,9 @@ 2 posts tagged with "Docusaurus" | Python Guide - + -

2 posts tagged with "Docusaurus"

Docusaurus tag description

View All Tags

Why This Overburden Python Guide Besides GPT?

Β· 3 min read

In recent years, tools like GPT have transformed the way developers approach coding. With a simple prompt, you can generate functional code snippets for virtually any programming task. However, as incredible as this technology is, relying solely on AI-generated solutions without understanding the underlying concepts is a risky strategy. That’s where the Overburden Python Guide comes in.

The Importance of Software Architecture

Β· 4 min read

In the world of software development, the importance of software architecture often takes a backseat to code implementation and feature delivery. However, software architecture serves as the backbone of any successful project, defining the structure, scalability, and maintainability of your system. Understanding how to architect software is a cornerstone of creating reliable, efficient, and future-proof applications.

+

2 posts tagged with "Docusaurus"

Docusaurus tag description

View All Tags

Why This Overburden Python Guide Besides GPT?

Β· 3 min read

In recent years, tools like GPT have transformed the way developers approach coding. With a simple prompt, you can generate functional code snippets for virtually any programming task. However, as incredible as this technology is, relying solely on AI-generated solutions without understanding the underlying concepts is a risky strategy. That’s where the Overburden Python Guide comes in.

The Importance of Software Architecture

Β· 4 min read

In the world of software development, the importance of software architecture often takes a backseat to code implementation and feature delivery. However, software architecture serves as the backbone of any successful project, defining the structure, scalability, and maintainability of your system. Understanding how to architect software is a cornerstone of creating reliable, efficient, and future-proof applications.

\ No newline at end of file diff --git a/blog/tags/hello/index.html b/blog/tags/hello/index.html index e5374ba9..92cf44bd 100644 --- a/blog/tags/hello/index.html +++ b/blog/tags/hello/index.html @@ -6,9 +6,9 @@ 2 posts tagged with "Hello" | Python Guide - + -

2 posts tagged with "Hello"

Hello tag description

View All Tags

Why This Overburden Python Guide Besides GPT?

Β· 3 min read

In recent years, tools like GPT have transformed the way developers approach coding. With a simple prompt, you can generate functional code snippets for virtually any programming task. However, as incredible as this technology is, relying solely on AI-generated solutions without understanding the underlying concepts is a risky strategy. That’s where the Overburden Python Guide comes in.

The Importance of Software Architecture

Β· 4 min read

In the world of software development, the importance of software architecture often takes a backseat to code implementation and feature delivery. However, software architecture serves as the backbone of any successful project, defining the structure, scalability, and maintainability of your system. Understanding how to architect software is a cornerstone of creating reliable, efficient, and future-proof applications.

+

2 posts tagged with "Hello"

Hello tag description

View All Tags

Why This Overburden Python Guide Besides GPT?

Β· 3 min read

In recent years, tools like GPT have transformed the way developers approach coding. With a simple prompt, you can generate functional code snippets for virtually any programming task. However, as incredible as this technology is, relying solely on AI-generated solutions without understanding the underlying concepts is a risky strategy. That’s where the Overburden Python Guide comes in.

The Importance of Software Architecture

Β· 4 min read

In the world of software development, the importance of software architecture often takes a backseat to code implementation and feature delivery. However, software architecture serves as the backbone of any successful project, defining the structure, scalability, and maintainability of your system. Understanding how to architect software is a cornerstone of creating reliable, efficient, and future-proof applications.

\ No newline at end of file diff --git a/blog/tags/index.html b/blog/tags/index.html index 116c5fd7..5f67b691 100644 --- a/blog/tags/index.html +++ b/blog/tags/index.html @@ -6,9 +6,9 @@ Tags | Python Guide - + - + \ No newline at end of file diff --git a/blog/why-python-guide-over-gpt/index.html b/blog/why-python-guide-over-gpt/index.html index e55ddea6..27414730 100644 --- a/blog/why-python-guide-over-gpt/index.html +++ b/blog/why-python-guide-over-gpt/index.html @@ -6,7 +6,7 @@ Why This Overburden Python Guide Besides GPT? | Python Guide - +

Why This Overburden Python Guide Besides GPT?

Β· 3 min read

In recent years, tools like GPT have transformed the way developers approach coding. With a simple prompt, you can generate functional code snippets for virtually any programming task. However, as incredible as this technology is, relying solely on AI-generated solutions without understanding the underlying concepts is a risky strategy. That’s where the Overburden Python Guide comes in.

@@ -76,6 +76,6 @@

+
\ No newline at end of file diff --git a/docs/category/advanced/index.html b/docs/category/advanced/index.html index 76ca430e..426c1efb 100644 --- a/docs/category/advanced/index.html +++ b/docs/category/advanced/index.html @@ -6,9 +6,9 @@ Advanced | Python Guide - + -
+
\ No newline at end of file diff --git a/docs/category/asyncio/index.html b/docs/category/asyncio/index.html index da4ffda9..0de11e7c 100644 --- a/docs/category/asyncio/index.html +++ b/docs/category/asyncio/index.html @@ -6,9 +6,9 @@ AsyncIO | Python Guide - + -
+
\ No newline at end of file diff --git a/docs/category/behavioral-design-patterns/index.html b/docs/category/behavioral-design-patterns/index.html index 35d3addb..2133ec70 100644 --- a/docs/category/behavioral-design-patterns/index.html +++ b/docs/category/behavioral-design-patterns/index.html @@ -6,9 +6,9 @@ Behavioral Design Patterns | Python Guide - + - + \ No newline at end of file diff --git a/docs/category/building-rest-apis/index.html b/docs/category/building-rest-apis/index.html index ed950d04..b1cc96ba 100644 --- a/docs/category/building-rest-apis/index.html +++ b/docs/category/building-rest-apis/index.html @@ -6,9 +6,9 @@ Building REST APIs | Python Guide - + -

Building REST APIs

+

Building REST APIs

\ No newline at end of file diff --git a/docs/category/built-in-functions/index.html b/docs/category/built-in-functions/index.html index 8eaf91f6..e8ae435d 100644 --- a/docs/category/built-in-functions/index.html +++ b/docs/category/built-in-functions/index.html @@ -6,9 +6,9 @@ Built in Functions | Python Guide - + -

Built in Functions

+

Built in Functions

\ No newline at end of file diff --git a/docs/category/cicd/index.html b/docs/category/cicd/index.html index 9d291400..50d4e198 100644 --- a/docs/category/cicd/index.html +++ b/docs/category/cicd/index.html @@ -6,9 +6,9 @@ CI/CD | Python Guide - + -

CI/CD

+

CI/CD

\ No newline at end of file diff --git a/docs/category/combining-datasets/index.html b/docs/category/combining-datasets/index.html index b14a806b..e4f16aaf 100644 --- a/docs/category/combining-datasets/index.html +++ b/docs/category/combining-datasets/index.html @@ -6,9 +6,9 @@ Combining Datasets | Python Guide - + -

Combining Datasets

+

Combining Datasets

\ No newline at end of file diff --git a/docs/category/control-flow/index.html b/docs/category/control-flow/index.html index 4e442993..561e190d 100644 --- a/docs/category/control-flow/index.html +++ b/docs/category/control-flow/index.html @@ -6,9 +6,9 @@ Control Flow | Python Guide - + -

Control Flow

πŸ“„οΈ Shorthand If-Else Statements

In Python, there are several ways to write code that can optimize both its length and readability. One such technique is using shorthand if-else statements, which can help simplify simple boolean expressions into more concise one-liners. However, it is crucial to prioritize readability above all else. Shortened code may appear efficient at first glance but can lead to confusion and wasted time during later code reviews or debugging sessions. In this tutorial, we will explore the shorthand if-else statement in Python, understand its syntax, and discuss when to use it appropriately.

+

Control Flow

πŸ“„οΈ Shorthand If-Else Statements

In Python, there are several ways to write code that can optimize both its length and readability. One such technique is using shorthand if-else statements, which can help simplify simple boolean expressions into more concise one-liners. However, it is crucial to prioritize readability above all else. Shortened code may appear efficient at first glance but can lead to confusion and wasted time during later code reviews or debugging sessions. In this tutorial, we will explore the shorthand if-else statement in Python, understand its syntax, and discuss when to use it appropriately.

\ No newline at end of file diff --git a/docs/category/creational-design-patterns/index.html b/docs/category/creational-design-patterns/index.html index 4962a8e7..58e1ceae 100644 --- a/docs/category/creational-design-patterns/index.html +++ b/docs/category/creational-design-patterns/index.html @@ -6,9 +6,9 @@ Creational Design Patterns | Python Guide - + - + \ No newline at end of file diff --git a/docs/category/data-frames/index.html b/docs/category/data-frames/index.html index 60bbd2ce..639d7c49 100644 --- a/docs/category/data-frames/index.html +++ b/docs/category/data-frames/index.html @@ -6,9 +6,9 @@ Data Frames | Python Guide - + -

Data Frames

+

Data Frames

\ No newline at end of file diff --git a/docs/category/data-visualization/index.html b/docs/category/data-visualization/index.html index a9162332..8d3c2e4d 100644 --- a/docs/category/data-visualization/index.html +++ b/docs/category/data-visualization/index.html @@ -6,9 +6,9 @@ Data Visualization | Python Guide - + - + \ No newline at end of file diff --git a/docs/category/dataclasses/index.html b/docs/category/dataclasses/index.html index 6625c94d..2cbbc52a 100644 --- a/docs/category/dataclasses/index.html +++ b/docs/category/dataclasses/index.html @@ -6,9 +6,9 @@ Dataclasses | Python Guide - + -

Dataclasses

+

Dataclasses

\ No newline at end of file diff --git a/docs/category/designing-rest-apis/index.html b/docs/category/designing-rest-apis/index.html index 2adfbce4..f54b7bd4 100644 --- a/docs/category/designing-rest-apis/index.html +++ b/docs/category/designing-rest-apis/index.html @@ -6,9 +6,9 @@ Designing REST APIs | Python Guide - + -

Designing REST APIs

+

Designing REST APIs

\ No newline at end of file diff --git a/docs/category/enhancing-actions/index.html b/docs/category/enhancing-actions/index.html index 1c8dea29..d0e9e683 100644 --- a/docs/category/enhancing-actions/index.html +++ b/docs/category/enhancing-actions/index.html @@ -6,9 +6,9 @@ Enhancing Actions | Python Guide - + - + \ No newline at end of file diff --git a/docs/category/errors/index.html b/docs/category/errors/index.html index 86527974..c5bc9b33 100644 --- a/docs/category/errors/index.html +++ b/docs/category/errors/index.html @@ -6,9 +6,9 @@ Errors | Python Guide - + -

Errors

+

Errors

\ No newline at end of file diff --git a/docs/category/fastapi-actions/index.html b/docs/category/fastapi-actions/index.html index a6f34d6b..06aff863 100644 --- a/docs/category/fastapi-actions/index.html +++ b/docs/category/fastapi-actions/index.html @@ -6,9 +6,9 @@ FastAPI Actions | Python Guide - + - + \ No newline at end of file diff --git a/docs/category/file-management/index.html b/docs/category/file-management/index.html index 170dd256..a95e2e44 100644 --- a/docs/category/file-management/index.html +++ b/docs/category/file-management/index.html @@ -6,9 +6,9 @@ File-Management | Python Guide - + -

File-Management

+

File-Management

\ No newline at end of file diff --git a/docs/category/functions/index.html b/docs/category/functions/index.html index 41e34d3e..04bb2ded 100644 --- a/docs/category/functions/index.html +++ b/docs/category/functions/index.html @@ -6,9 +6,9 @@ Functions | Python Guide - + -
+
\ No newline at end of file diff --git a/docs/category/how-cicd-revolutionized-software-development/index.html b/docs/category/how-cicd-revolutionized-software-development/index.html index ab0cfd7d..3a96c83b 100644 --- a/docs/category/how-cicd-revolutionized-software-development/index.html +++ b/docs/category/how-cicd-revolutionized-software-development/index.html @@ -6,9 +6,9 @@ How CI/CD Revolutionized Software Development | Python Guide - + - + \ No newline at end of file diff --git a/docs/category/introduction/index.html b/docs/category/introduction/index.html index 654f751b..b73e070d 100644 --- a/docs/category/introduction/index.html +++ b/docs/category/introduction/index.html @@ -6,9 +6,9 @@ Introduction | Python Guide - + - + \ No newline at end of file diff --git a/docs/category/lists/index.html b/docs/category/lists/index.html index c5827715..79998ede 100644 --- a/docs/category/lists/index.html +++ b/docs/category/lists/index.html @@ -6,9 +6,9 @@ Lists | Python Guide - + -
+
\ No newline at end of file diff --git a/docs/category/modules/index.html b/docs/category/modules/index.html index 7f33c27e..41c94252 100644 --- a/docs/category/modules/index.html +++ b/docs/category/modules/index.html @@ -6,9 +6,9 @@ Modules | Python Guide - + -
+
\ No newline at end of file diff --git a/docs/category/multi-threading/index.html b/docs/category/multi-threading/index.html index 6c110a36..943f93c7 100644 --- a/docs/category/multi-threading/index.html +++ b/docs/category/multi-threading/index.html @@ -6,9 +6,9 @@ Multi Threading | Python Guide - + - + \ No newline at end of file diff --git a/docs/category/multiprocessing/index.html b/docs/category/multiprocessing/index.html index 972b09d6..db7282cf 100644 --- a/docs/category/multiprocessing/index.html +++ b/docs/category/multiprocessing/index.html @@ -6,9 +6,9 @@ Multiprocessing | Python Guide - + -

Multiprocessing

+

Multiprocessing

\ No newline at end of file diff --git a/docs/category/numpy/index.html b/docs/category/numpy/index.html index 47bc2afc..b47ca721 100644 --- a/docs/category/numpy/index.html +++ b/docs/category/numpy/index.html @@ -6,9 +6,9 @@ NumPy | Python Guide - + -
+
\ No newline at end of file diff --git a/docs/category/oop/index.html b/docs/category/oop/index.html index 8dbaf0dc..d278cb7f 100644 --- a/docs/category/oop/index.html +++ b/docs/category/oop/index.html @@ -6,9 +6,9 @@ OOP | Python Guide - + -

OOP

πŸ“„οΈ Dunder Methods

In this tutorial, we will explore the concept of dunder methods, also known as magic methods, and their application in Python classes. Dunder methods, short for "double underscore" methods, are special methods with double leading and trailing underscores (e.g., init). These methods are integral to defining the behavior of objects in Python. While we've already encountered the init method for initializing instances, we will delve deeper into other dunder methods that enhance the functionality and interactivity of our classes.

πŸ“„οΈ Abstract Methods and Classes

This tutorial provides an in-depth exploration of abstract methods and abstract classes in Python. These concepts are essential for creating structured and reusable code in object-oriented programming. Abstract classes allow developers to define blueprints for other classes, enforcing a consistent interface without implementing the functionality themselves. This ensures that derived classes adhere to a specific structure, which can be critical in larger and more complex software systems.

+

OOP

πŸ“„οΈ Dunder Methods

In this tutorial, we will explore the concept of dunder methods, also known as magic methods, and their application in Python classes. Dunder methods, short for "double underscore" methods, are special methods with double leading and trailing underscores (e.g., init). These methods are integral to defining the behavior of objects in Python. While we've already encountered the init method for initializing instances, we will delve deeper into other dunder methods that enhance the functionality and interactivity of our classes.

πŸ“„οΈ Abstract Methods and Classes

This tutorial provides an in-depth exploration of abstract methods and abstract classes in Python. These concepts are essential for creating structured and reusable code in object-oriented programming. Abstract classes allow developers to define blueprints for other classes, enforcing a consistent interface without implementing the functionality themselves. This ensures that derived classes adhere to a specific structure, which can be critical in larger and more complex software systems.

\ No newline at end of file diff --git a/docs/category/python-basics/index.html b/docs/category/python-basics/index.html index 8ee7f8a9..edd92064 100644 --- a/docs/category/python-basics/index.html +++ b/docs/category/python-basics/index.html @@ -6,9 +6,9 @@ Python Basics | Python Guide - + -

Python Basics

+

Python Basics

\ No newline at end of file diff --git a/docs/category/reshaping-datasets/index.html b/docs/category/reshaping-datasets/index.html index dbeb13ca..f520cc62 100644 --- a/docs/category/reshaping-datasets/index.html +++ b/docs/category/reshaping-datasets/index.html @@ -6,9 +6,9 @@ Reshaping Datasets | Python Guide - + - + \ No newline at end of file diff --git a/docs/category/series/index.html b/docs/category/series/index.html index 6432aa79..f83cc9b6 100644 --- a/docs/category/series/index.html +++ b/docs/category/series/index.html @@ -6,9 +6,9 @@ Series | Python Guide - + -

Series

πŸ“„οΈ Attributes

Pandas is a powerful library for data manipulation and analysis in Python. One of its core data structures is the Series, which is essentially a one-dimensional labeled array capable of holding any data type. Understanding the attributes associated with Series objects is crucial for effectively working with data in Pandas. In this tutorial, we'll delve into the most common attributes of Pandas Series, exploring their functionalities and how to utilize them in your data analysis workflows.

+

Series

πŸ“„οΈ Attributes

Pandas is a powerful library for data manipulation and analysis in Python. One of its core data structures is the Series, which is essentially a one-dimensional labeled array capable of holding any data type. Understanding the attributes associated with Series objects is crucial for effectively working with data in Pandas. In this tutorial, we'll delve into the most common attributes of Pandas Series, exploring their functionalities and how to utilize them in your data analysis workflows.

\ No newline at end of file diff --git a/docs/category/setting-up/index.html b/docs/category/setting-up/index.html index 5f61a9cf..2b10d0b4 100644 --- a/docs/category/setting-up/index.html +++ b/docs/category/setting-up/index.html @@ -6,9 +6,9 @@ Setting Up | Python Guide - + - + \ No newline at end of file diff --git a/docs/category/string-operators/index.html b/docs/category/string-operators/index.html index 735410e3..d5ca6242 100644 --- a/docs/category/string-operators/index.html +++ b/docs/category/string-operators/index.html @@ -6,9 +6,9 @@ String Operators | Python Guide - + - + \ No newline at end of file diff --git a/docs/category/structural-design-patterns/index.html b/docs/category/structural-design-patterns/index.html index 4774ef9a..06e4b657 100644 --- a/docs/category/structural-design-patterns/index.html +++ b/docs/category/structural-design-patterns/index.html @@ -6,9 +6,9 @@ Structural Design Patterns | Python Guide - + - + \ No newline at end of file diff --git a/docs/category/time-series/index.html b/docs/category/time-series/index.html index b837b4af..8f8d1718 100644 --- a/docs/category/time-series/index.html +++ b/docs/category/time-series/index.html @@ -6,9 +6,9 @@ Time Series | Python Guide - + - + \ No newline at end of file diff --git a/docs/category/unit-testing/index.html b/docs/category/unit-testing/index.html index c1e4bb13..a486319a 100644 --- a/docs/category/unit-testing/index.html +++ b/docs/category/unit-testing/index.html @@ -6,9 +6,9 @@ Unit-Testing | Python Guide - + - + \ No newline at end of file diff --git a/docs/ci-cd/enhancing-actions/01/index.html b/docs/ci-cd/enhancing-actions/01/index.html index 9650d204..258a8905 100644 --- a/docs/ci-cd/enhancing-actions/01/index.html +++ b/docs/ci-cd/enhancing-actions/01/index.html @@ -6,9 +6,9 @@ 01 | Python Guide - + - + \ No newline at end of file diff --git a/docs/ci-cd/fastapi-actions/01/index.html b/docs/ci-cd/fastapi-actions/01/index.html index f2418fad..6600c8e7 100644 --- a/docs/ci-cd/fastapi-actions/01/index.html +++ b/docs/ci-cd/fastapi-actions/01/index.html @@ -6,9 +6,9 @@ 01 | Python Guide - + - + \ No newline at end of file diff --git a/docs/ci-cd/getting-started/index.html b/docs/ci-cd/getting-started/index.html index 4d3509d0..83867668 100644 --- a/docs/ci-cd/getting-started/index.html +++ b/docs/ci-cd/getting-started/index.html @@ -6,7 +6,7 @@ Getting Started | Python Guide - + +
\ No newline at end of file diff --git a/docs/ci-cd/introduction/cicd/cd/index.html b/docs/ci-cd/introduction/cicd/cd/index.html index 9a037d6e..d7616a07 100644 --- a/docs/ci-cd/introduction/cicd/cd/index.html +++ b/docs/ci-cd/introduction/cicd/cd/index.html @@ -6,7 +6,7 @@ Continuous Delivery (CD) | Python Guide - + +

Continuous Delivery bridges the gap between development and operations, providing a streamlined and automated process for delivering high-quality software. By combining automation with manual control, CD ensures that teams can release updates efficiently, with reduced risk and enhanced reliability.

\ No newline at end of file diff --git a/docs/ci-cd/introduction/cicd/cdp/index.html b/docs/ci-cd/introduction/cicd/cdp/index.html index ff7c40a8..a927af1b 100644 --- a/docs/ci-cd/introduction/cicd/cdp/index.html +++ b/docs/ci-cd/introduction/cicd/cdp/index.html @@ -6,7 +6,7 @@ Continuous Deployment (CD) | Python Guide - +

Continuous Deployment (CD)

@@ -120,6 +120,6 @@ -

Continuous Deployment represents the pinnacle of automation in modern software development. By eliminating manual intervention and ensuring high-quality, frequent releases, it empowers teams to deliver value to users faster and with greater confidence. Implementing Continuous Deployment effectively requires a solid foundation of automated testing, robust monitoring, and deployment strategies to ensure smooth, reliable software delivery.

+

Continuous Deployment represents the pinnacle of automation in modern software development. By eliminating manual intervention and ensuring high-quality, frequent releases, it empowers teams to deliver value to users faster and with greater confidence. Implementing Continuous Deployment effectively requires a solid foundation of automated testing, robust monitoring, and deployment strategies to ensure smooth, reliable software delivery.

\ No newline at end of file diff --git a/docs/ci-cd/introduction/cicd/ci/index.html b/docs/ci-cd/introduction/cicd/ci/index.html index 88acbf7f..d3c98ed1 100644 --- a/docs/ci-cd/introduction/cicd/ci/index.html +++ b/docs/ci-cd/introduction/cicd/ci/index.html @@ -6,7 +6,7 @@ Continuous Integration (CI) | Python Guide - +

Continuous Integration (CI)

@@ -121,6 +121,6 @@
+

CI is a cornerstone of modern software development, ensuring that teams can deliver high-quality applications efficiently. By automating integration and testing processes, CI eliminates bottlenecks, fosters collaboration, and creates a solid foundation for scalable and reliable software delivery.

\ No newline at end of file diff --git a/docs/ci-cd/introduction/cicd/cicd/index.html b/docs/ci-cd/introduction/cicd/cicd/index.html index 64f64a82..42f06304 100644 --- a/docs/ci-cd/introduction/cicd/cicd/index.html +++ b/docs/ci-cd/introduction/cicd/cicd/index.html @@ -6,7 +6,7 @@ What Is CI/CD? | Python Guide - + +

By addressing these challenges, teams can maximize the benefits of CI/CD and streamline their software delivery process.

\ No newline at end of file diff --git a/docs/ci-cd/introduction/cicd/introduction-github-actions/index.html b/docs/ci-cd/introduction/cicd/introduction-github-actions/index.html index 069af74b..f746a8d0 100644 --- a/docs/ci-cd/introduction/cicd/introduction-github-actions/index.html +++ b/docs/ci-cd/introduction/cicd/introduction-github-actions/index.html @@ -6,7 +6,7 @@ Introduction | Python Guide - +

Introduction

@@ -65,6 +65,6 @@

Best Practices for CI/CD in Python

  • Enable Rollbacks: Prepare for quick rollbacks in case of issues during deployment.
  • Conclusion

    -

    CI/CD pipelines are indispensable for modern Python projects. They ensure that your codebase remains robust, deployment processes are efficient, and your team can deliver high-quality software rapidly. By following the outlined steps and best practices, you can streamline development workflows and achieve a seamless integration and deployment process for your Python projects.

    +

    CI/CD pipelines are indispensable for modern Python projects. They ensure that your codebase remains robust, deployment processes are efficient, and your team can deliver high-quality software rapidly. By following the outlined steps and best practices, you can streamline development workflows and achieve a seamless integration and deployment process for your Python projects.

    \ No newline at end of file diff --git a/docs/ci-cd/introduction/cicd/key_components/index.html b/docs/ci-cd/introduction/cicd/key_components/index.html index 5db4d6e7..c2430291 100644 --- a/docs/ci-cd/introduction/cicd/key_components/index.html +++ b/docs/ci-cd/introduction/cicd/key_components/index.html @@ -6,7 +6,7 @@ Key Components of CI/CD | Python Guide - + +

    When implemented effectively, a CI/CD pipeline transforms software development, enabling teams to focus on innovation and delivering value to end users.

    \ No newline at end of file diff --git a/docs/ci-cd/introduction/cicd/practices/index.html b/docs/ci-cd/introduction/cicd/practices/index.html index e6a59bcd..b1ecc3c3 100644 --- a/docs/ci-cd/introduction/cicd/practices/index.html +++ b/docs/ci-cd/introduction/cicd/practices/index.html @@ -6,7 +6,7 @@ Why Is CI/CD Important? | Python Guide - +

    Why Is CI/CD Important?

    @@ -53,6 +53,6 @@

    Risk Mitigat
  • Continuous Monitoring: Integrated monitoring tools ensure that performance and reliability issues are detected early.
  • Conclusion​

    -

    CI/CD practices are crucial for achieving efficient, high-quality software development. By automating key processes, CI/CD reduces manual effort, improves code quality, and accelerates delivery cycles. It fosters a culture of collaboration, consistency, and continuous improvement, enabling teams to deliver reliable software with confidence and agility.

    +

    CI/CD practices are crucial for achieving efficient, high-quality software development. By automating key processes, CI/CD reduces manual effort, improves code quality, and accelerates delivery cycles. It fosters a culture of collaboration, consistency, and continuous improvement, enabling teams to deliver reliable software with confidence and agility.

    \ No newline at end of file diff --git a/docs/ci-cd/introduction/revolution_ci_cd/cdp/index.html b/docs/ci-cd/introduction/revolution_ci_cd/cdp/index.html index 36f5db49..b5721998 100644 --- a/docs/ci-cd/introduction/revolution_ci_cd/cdp/index.html +++ b/docs/ci-cd/introduction/revolution_ci_cd/cdp/index.html @@ -6,9 +6,9 @@ cdp | Python Guide - + - + \ No newline at end of file diff --git a/docs/ci-cd/introduction/revolution_ci_cd/ci/index.html b/docs/ci-cd/introduction/revolution_ci_cd/ci/index.html index 295179fd..2e2096a3 100644 --- a/docs/ci-cd/introduction/revolution_ci_cd/ci/index.html +++ b/docs/ci-cd/introduction/revolution_ci_cd/ci/index.html @@ -6,9 +6,9 @@ ci | Python Guide - + - + \ No newline at end of file diff --git a/docs/ci-cd/setting-up/01/index.html b/docs/ci-cd/setting-up/01/index.html index a166da83..f9bad09f 100644 --- a/docs/ci-cd/setting-up/01/index.html +++ b/docs/ci-cd/setting-up/01/index.html @@ -6,9 +6,9 @@ 01 | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Combining_Datasets/Intro/index.html b/docs/data-analysis/Combining_Datasets/Intro/index.html index 7527f62d..1bef429a 100644 --- a/docs/data-analysis/Combining_Datasets/Intro/index.html +++ b/docs/data-analysis/Combining_Datasets/Intro/index.html @@ -6,7 +6,7 @@ Combining Datasets | Python Guide - + +

    By mastering these techniques and best practices, you can seamlessly integrate and analyze data from diverse sources using pandas.

    \ No newline at end of file diff --git a/docs/data-analysis/Combining_Datasets/Merging_Different_Column/index.html b/docs/data-analysis/Combining_Datasets/Merging_Different_Column/index.html index 245b86cd..d140afa0 100644 --- a/docs/data-analysis/Combining_Datasets/Merging_Different_Column/index.html +++ b/docs/data-analysis/Combining_Datasets/Merging_Different_Column/index.html @@ -6,9 +6,9 @@ Merging_Different_Column | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Combining_Datasets/concat()/index.html b/docs/data-analysis/Combining_Datasets/concat()/index.html index 28c70fc3..b3f11a5b 100644 --- a/docs/data-analysis/Combining_Datasets/concat()/index.html +++ b/docs/data-analysis/Combining_Datasets/concat()/index.html @@ -6,7 +6,7 @@ concat() | Python Guide - + +

    The concat() function in Pandas is essential for combining datasets in flexible and efficient ways. By understanding its parameters and behaviors, you can handle various real-world data integration tasks with ease.

    \ No newline at end of file diff --git a/docs/data-analysis/Combining_Datasets/inner_join/index.html b/docs/data-analysis/Combining_Datasets/inner_join/index.html index fbbc4066..2bcc2766 100644 --- a/docs/data-analysis/Combining_Datasets/inner_join/index.html +++ b/docs/data-analysis/Combining_Datasets/inner_join/index.html @@ -6,7 +6,7 @@ Inner Join | Python Guide - + +

    The inner join method is ideal for extracting the intersection of datasets based on specified keys. It is the default behavior of merge() and provides precision in aligning datasets by excluding non-overlapping rows.

    \ No newline at end of file diff --git a/docs/data-analysis/Combining_Datasets/left_right_join/index.html b/docs/data-analysis/Combining_Datasets/left_right_join/index.html index fa9f0aff..80ad3a83 100644 --- a/docs/data-analysis/Combining_Datasets/left_right_join/index.html +++ b/docs/data-analysis/Combining_Datasets/left_right_join/index.html @@ -6,9 +6,9 @@ left_right_join | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Combining_Datasets/left_right_minus/index.html b/docs/data-analysis/Combining_Datasets/left_right_minus/index.html index 06a69b81..05c060d6 100644 --- a/docs/data-analysis/Combining_Datasets/left_right_minus/index.html +++ b/docs/data-analysis/Combining_Datasets/left_right_minus/index.html @@ -6,9 +6,9 @@ left_right_minus | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Combining_Datasets/merge()/index.html b/docs/data-analysis/Combining_Datasets/merge()/index.html index 84b4ab27..7beff6f5 100644 --- a/docs/data-analysis/Combining_Datasets/merge()/index.html +++ b/docs/data-analysis/Combining_Datasets/merge()/index.html @@ -6,7 +6,7 @@ merge() | Python Guide - + +

    The merge() function in Pandas is a robust solution for combining datasets based on database-style joins. By understanding the nuances of each join type, you can handle relational data effectively in your data analysis tasks.

    \ No newline at end of file diff --git a/docs/data-analysis/Combining_Datasets/outer_join/index.html b/docs/data-analysis/Combining_Datasets/outer_join/index.html index c41dfefb..d750db82 100644 --- a/docs/data-analysis/Combining_Datasets/outer_join/index.html +++ b/docs/data-analysis/Combining_Datasets/outer_join/index.html @@ -6,7 +6,7 @@ Outer Join | Python Guide - + +

    The outer join method in Pandas provides a comprehensive way to merge datasets, ensuring that all rows from both datasets are included. With features like suffixes and indicator, it’s easy to manage and understand the resulting DataFrame. This functionality is crucial for handling complex datasets where completeness is essential.

    \ No newline at end of file diff --git a/docs/data-analysis/Combining_Datasets/outer_join_minus/index.html b/docs/data-analysis/Combining_Datasets/outer_join_minus/index.html index 81944b40..526d6e36 100644 --- a/docs/data-analysis/Combining_Datasets/outer_join_minus/index.html +++ b/docs/data-analysis/Combining_Datasets/outer_join_minus/index.html @@ -6,9 +6,9 @@ outer_join_minus | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Data-Visualization/Bar_Chart_Race/index.html b/docs/data-analysis/Data-Visualization/Bar_Chart_Race/index.html index 6c5e10a3..1ec685f6 100644 --- a/docs/data-analysis/Data-Visualization/Bar_Chart_Race/index.html +++ b/docs/data-analysis/Data-Visualization/Bar_Chart_Race/index.html @@ -6,7 +6,7 @@ Bar Chart Race with Python | Python Guide - +

    Bar Chart Race with Python

    @@ -28,6 +28,6 @@

    Renderin
    bcr.bar_chart_race(df=languages, filename='example.mp4', n_bars=20, steps_per_period=10, period_length=125, title='Most Popular Programming Languages', figsize=(6, 4), cmap=['forestgreen', 'skyblue'], filter_column_colors=True, bar_label_size=5, tick_label_size=30, dpi=300)

    This command will render the bar chart race and save it as an MP4 file named example.mp4. Adjust the parameters as needed for your specific requirements.

    Conclusion​

    -

    By following these steps, you can create customizable bar chart races to visualize various datasets over time. Experiment with different parameters to achieve the desired visual effect and make your data insights more engaging.

    +

    By following these steps, you can create customizable bar chart races to visualize various datasets over time. Experiment with different parameters to achieve the desired visual effect and make your data insights more engaging.

    \ No newline at end of file diff --git a/docs/data-analysis/Data-Visualization/Bar_Plots/index.html b/docs/data-analysis/Data-Visualization/Bar_Plots/index.html index 576ad20e..e8d3d3e3 100644 --- a/docs/data-analysis/Data-Visualization/Bar_Plots/index.html +++ b/docs/data-analysis/Data-Visualization/Bar_Plots/index.html @@ -6,9 +6,9 @@ Bar_Plots | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Data-Visualization/Candlestick_Charts/index.html b/docs/data-analysis/Data-Visualization/Candlestick_Charts/index.html index 53eb5ba0..ce543a5a 100644 --- a/docs/data-analysis/Data-Visualization/Candlestick_Charts/index.html +++ b/docs/data-analysis/Data-Visualization/Candlestick_Charts/index.html @@ -6,9 +6,9 @@ Candlestick_Charts | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Data-Visualization/Color_by_Value/index.html b/docs/data-analysis/Data-Visualization/Color_by_Value/index.html index d5bfefdb..cd182303 100644 --- a/docs/data-analysis/Data-Visualization/Color_by_Value/index.html +++ b/docs/data-analysis/Data-Visualization/Color_by_Value/index.html @@ -6,9 +6,9 @@ Color_by_Value | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Data-Visualization/Histograms/index.html b/docs/data-analysis/Data-Visualization/Histograms/index.html index 86eba0a8..e473996f 100644 --- a/docs/data-analysis/Data-Visualization/Histograms/index.html +++ b/docs/data-analysis/Data-Visualization/Histograms/index.html @@ -6,9 +6,9 @@ Histograms | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Data-Visualization/Interactive_Plots/index.html b/docs/data-analysis/Data-Visualization/Interactive_Plots/index.html index 70737c1f..a8ecb5e1 100644 --- a/docs/data-analysis/Data-Visualization/Interactive_Plots/index.html +++ b/docs/data-analysis/Data-Visualization/Interactive_Plots/index.html @@ -6,9 +6,9 @@ Interactive_Plots | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Data-Visualization/Line_Plots/index.html b/docs/data-analysis/Data-Visualization/Line_Plots/index.html index 4195bc6e..dc721c39 100644 --- a/docs/data-analysis/Data-Visualization/Line_Plots/index.html +++ b/docs/data-analysis/Data-Visualization/Line_Plots/index.html @@ -6,9 +6,9 @@ Line_Plots | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Data-Visualization/Pie_Charts/index.html b/docs/data-analysis/Data-Visualization/Pie_Charts/index.html index 319275fe..3419f306 100644 --- a/docs/data-analysis/Data-Visualization/Pie_Charts/index.html +++ b/docs/data-analysis/Data-Visualization/Pie_Charts/index.html @@ -6,9 +6,9 @@ Pie_Charts | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Data-Visualization/Scatter/index.html b/docs/data-analysis/Data-Visualization/Scatter/index.html index dbbf7252..5d60810c 100644 --- a/docs/data-analysis/Data-Visualization/Scatter/index.html +++ b/docs/data-analysis/Data-Visualization/Scatter/index.html @@ -6,9 +6,9 @@ Scatter | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Data-Visualization/Styles/index.html b/docs/data-analysis/Data-Visualization/Styles/index.html index b2989e0d..4a58869f 100644 --- a/docs/data-analysis/Data-Visualization/Styles/index.html +++ b/docs/data-analysis/Data-Visualization/Styles/index.html @@ -6,9 +6,9 @@ Styles | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Data_Frames/adding-columns/index.html b/docs/data-analysis/Data_Frames/adding-columns/index.html index a844efd1..e35ac25e 100644 --- a/docs/data-analysis/Data_Frames/adding-columns/index.html +++ b/docs/data-analysis/Data_Frames/adding-columns/index.html @@ -6,9 +6,9 @@ adding-columns | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Data_Frames/descripe-info/index.html b/docs/data-analysis/Data_Frames/descripe-info/index.html index 156bc310..72c429a2 100644 --- a/docs/data-analysis/Data_Frames/descripe-info/index.html +++ b/docs/data-analysis/Data_Frames/descripe-info/index.html @@ -6,7 +6,7 @@ Retrieving Useful Information from Data Frames | Python Guide - +

    Retrieving Useful Information from Data Frames

    @@ -46,6 +46,6 @@

    # Include non-numeric data in description
    description_with_strings = df.describe(include='object')

    This will provide insights into non-numeric columns like 'series title', 'release year', and 'genre'.

    Conclusion​

    -

    By following these steps, you can efficiently retrieve and analyze valuable information from your dataset using Pandas. This tutorial covers basic data exploration, cleaning, and analysis techniques, providing a solid foundation for further data manipulation and visualization tasks.

    +

    By following these steps, you can efficiently retrieve and analyze valuable information from your dataset using Pandas. This tutorial covers basic data exploration, cleaning, and analysis techniques, providing a solid foundation for further data manipulation and visualization tasks.

    \ No newline at end of file diff --git a/docs/data-analysis/Data_Frames/dropna/index.html b/docs/data-analysis/Data_Frames/dropna/index.html index cd8e9d0c..1791012d 100644 --- a/docs/data-analysis/Data_Frames/dropna/index.html +++ b/docs/data-analysis/Data_Frames/dropna/index.html @@ -6,9 +6,9 @@ dropna | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Data_Frames/fillna/index.html b/docs/data-analysis/Data_Frames/fillna/index.html index 88d60648..da24af01 100644 --- a/docs/data-analysis/Data_Frames/fillna/index.html +++ b/docs/data-analysis/Data_Frames/fillna/index.html @@ -6,9 +6,9 @@ fillna | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Data_Frames/intro/index.html b/docs/data-analysis/Data_Frames/intro/index.html index 76a8957e..d532437f 100644 --- a/docs/data-analysis/Data_Frames/intro/index.html +++ b/docs/data-analysis/Data_Frames/intro/index.html @@ -6,7 +6,7 @@ DataFrames in Pandas | Python Guide - + +
    # Values of DataFrame as an array
    print(df.values)
    \ No newline at end of file diff --git a/docs/data-analysis/Data_Frames/methods/index.html b/docs/data-analysis/Data_Frames/methods/index.html index 7fe7367f..0a745ec9 100644 --- a/docs/data-analysis/Data_Frames/methods/index.html +++ b/docs/data-analysis/Data_Frames/methods/index.html @@ -6,7 +6,7 @@ Series and DataFrames | Python Guide - +

    Series and DataFrames

    @@ -32,6 +32,6 @@

    # Specifying axis using string representation ('index' or 'columns')
    row_sum_string_axis = df.sum(axis='index') # Equivalent to axis=0
    column_sum_string_axis = df.sum(axis='columns') # Equivalent to axis=1
    print("Sum of elements using string representation of axis:")
    print("Row sum:", row_sum_string_axis)
    print("Column sum:", column_sum_string_axis)

    5. Conclusion​

    When choosing between integer or string representation of axis, consider readability and personal preference. Both representations are acceptable, but shorter representations (0 and 1) can save space in your code.

    -
    # Choose based on personal preference and readability
    # Longer representation for clarity:
    df_max_columns_axis = df.max(axis='columns')
    # Shorter representation for concise code:
    df_max_columns_axis_short = df.max(axis=1)
    +
    # Choose based on personal preference and readability
    # Longer representation for clarity:
    df_max_columns_axis = df.max(axis='columns')
    # Shorter representation for concise code:
    df_max_columns_axis_short = df.max(axis=1)
    \ No newline at end of file diff --git a/docs/data-analysis/Data_Frames/nlargest-nsmallest/index.html b/docs/data-analysis/Data_Frames/nlargest-nsmallest/index.html index ab00c63a..4e69093f 100644 --- a/docs/data-analysis/Data_Frames/nlargest-nsmallest/index.html +++ b/docs/data-analysis/Data_Frames/nlargest-nsmallest/index.html @@ -6,7 +6,7 @@ Sorting Data | Python Guide - + +
    # Sorting using sort_values (less efficient)
    sorted_df = df.sort_values(by=['rating', 'num_votes'], ascending=False).head(10)
    print(sorted_df)
    \ No newline at end of file diff --git a/docs/data-analysis/Data_Frames/removing-columns-rows/index.html b/docs/data-analysis/Data_Frames/removing-columns-rows/index.html index 7e46b34a..0e7ad4de 100644 --- a/docs/data-analysis/Data_Frames/removing-columns-rows/index.html +++ b/docs/data-analysis/Data_Frames/removing-columns-rows/index.html @@ -6,7 +6,7 @@ Removing Columns and Rows | Python Guide - +

    Removing Columns and Rows

    @@ -33,6 +33,6 @@

    4.2. Axis f
    # Remove row by index
    df.drop(1, axis=0, inplace=True)

    Summary​

    In summary, the drop method in Pandas provides a flexible way to remove both columns and rows from DataFrames. By specifying the appropriate axis and labels, you can precisely control the operation to tailor your DataFrame according to your requirements.

    -

    Now you have the knowledge to efficiently manipulate the structure of your DataFrames in Pandas using the drop method!

    +

    Now you have the knowledge to efficiently manipulate the structure of your DataFrames in Pandas using the drop method!

    \ No newline at end of file diff --git a/docs/data-analysis/Data_Frames/set_index-reset_index/index.html b/docs/data-analysis/Data_Frames/set_index-reset_index/index.html index 7d778bf9..b8718943 100644 --- a/docs/data-analysis/Data_Frames/set_index-reset_index/index.html +++ b/docs/data-analysis/Data_Frames/set_index-reset_index/index.html @@ -6,7 +6,7 @@ Modifying DataFrame Index | Python Guide - +

    Modifying DataFrame Index

    @@ -33,6 +33,6 @@

    Step 5: Specifying Index Column While Reading CSV​

    When reading a CSV file, you can specify the column you want to use as the index directly. For example:

    # Specify index column while reading CSV
    df = pd.read_csv('your_data.csv', usecols=columns, index_col='series_title')
    -

    By setting index_col='series_title', the DataFrame will use the 'series_title' column as the index immediately upon reading the CSV file.

    +

    By setting index_col='series_title', the DataFrame will use the 'series_title' column as the index immediately upon reading the CSV file.

    \ No newline at end of file diff --git a/docs/data-analysis/NumPy/Add_New_Axis/index.html b/docs/data-analysis/NumPy/Add_New_Axis/index.html index 5e098428..e41b9848 100644 --- a/docs/data-analysis/NumPy/Add_New_Axis/index.html +++ b/docs/data-analysis/NumPy/Add_New_Axis/index.html @@ -6,9 +6,9 @@ Add_New_Axis | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/NumPy/Arrays/index.html b/docs/data-analysis/NumPy/Arrays/index.html index f6c3571e..5ec45ae9 100644 --- a/docs/data-analysis/NumPy/Arrays/index.html +++ b/docs/data-analysis/NumPy/Arrays/index.html @@ -6,7 +6,7 @@ Introduction to NumPy Arrays | Python Guide - +

    Introduction to NumPy Arrays

    @@ -61,6 +61,6 @@

    lin_space_arr = np.linspace(0, 10, 5)
    print(lin_space_arr)

    # Splitting into 3 parts
    lin_space_3_arr = np.linspace(0, 10, 3)
    print(lin_space_3_arr)

    # Splitting into 20 parts
    lin_space_20_arr = np.linspace(0, 10, 20)
    print(lin_space_20_arr)

    Conclusion​

    -

    In this tutorial, we've covered the basics of creating numpy arrays using various methods and specifying data types. Numpy provides powerful tools for numerical computing in Python, and understanding these fundamental concepts will help you work more effectively with arrays and matrices in your data science projects.

    +

    In this tutorial, we've covered the basics of creating numpy arrays using various methods and specifying data types. Numpy provides powerful tools for numerical computing in Python, and understanding these fundamental concepts will help you work more effectively with arrays and matrices in your data science projects.

    \ No newline at end of file diff --git a/docs/data-analysis/NumPy/Basic_Operations/index.html b/docs/data-analysis/NumPy/Basic_Operations/index.html index 254155f0..8e0b417c 100644 --- a/docs/data-analysis/NumPy/Basic_Operations/index.html +++ b/docs/data-analysis/NumPy/Basic_Operations/index.html @@ -6,9 +6,9 @@ Basic_Operations | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/NumPy/Broadcasting/index.html b/docs/data-analysis/NumPy/Broadcasting/index.html index 81989773..fbc1a761 100644 --- a/docs/data-analysis/NumPy/Broadcasting/index.html +++ b/docs/data-analysis/NumPy/Broadcasting/index.html @@ -6,9 +6,9 @@ Broadcasting | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/NumPy/Creating_Arrays/index.html b/docs/data-analysis/NumPy/Creating_Arrays/index.html index ba4f1e37..2be915b0 100644 --- a/docs/data-analysis/NumPy/Creating_Arrays/index.html +++ b/docs/data-analysis/NumPy/Creating_Arrays/index.html @@ -6,9 +6,9 @@ Creating_Arrays | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/NumPy/Finding_Unique_Elements/index.html b/docs/data-analysis/NumPy/Finding_Unique_Elements/index.html index be447887..068a7206 100644 --- a/docs/data-analysis/NumPy/Finding_Unique_Elements/index.html +++ b/docs/data-analysis/NumPy/Finding_Unique_Elements/index.html @@ -6,9 +6,9 @@ Finding_Unique_Elements | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/NumPy/Generating_Random_Numbers/index.html b/docs/data-analysis/NumPy/Generating_Random_Numbers/index.html index 125f6c7d..ef6f8b1b 100644 --- a/docs/data-analysis/NumPy/Generating_Random_Numbers/index.html +++ b/docs/data-analysis/NumPy/Generating_Random_Numbers/index.html @@ -6,9 +6,9 @@ Generating_Random_Numbers | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/NumPy/Indexing_Slicing/index.html b/docs/data-analysis/NumPy/Indexing_Slicing/index.html index 47948166..94d4512b 100644 --- a/docs/data-analysis/NumPy/Indexing_Slicing/index.html +++ b/docs/data-analysis/NumPy/Indexing_Slicing/index.html @@ -6,9 +6,9 @@ Indexing_Slicing | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/NumPy/Lists_vs_NumPy/index.html b/docs/data-analysis/NumPy/Lists_vs_NumPy/index.html index 76b9b184..448aff21 100644 --- a/docs/data-analysis/NumPy/Lists_vs_NumPy/index.html +++ b/docs/data-analysis/NumPy/Lists_vs_NumPy/index.html @@ -6,7 +6,7 @@ Numpy Arrays vs. Python Lists: Understanding the Difference | Python Guide - +

    Numpy Arrays vs. Python Lists: Understanding the Difference

    @@ -31,6 +31,6 @@

    Numpy Ar
    Numpy Array: ['1' 'A' 'True']
    Type: <class 'numpy.str_'>
    Type: <class 'numpy.str_'>
    Type: <class 'numpy.str_'>

    In the Numpy array example, notice that all elements have been converted to strings. Numpy arrays enforce a single data type for efficiency, and in this case, it defaulted to converting all elements to strings.

    Conclusion​

    -

    Numpy arrays provide a powerful and efficient way to work with numerical data in Python. By enforcing homogeneous data types and optimizing memory usage and performance, Numpy arrays offer significant advantages over Python lists for numerical computing tasks. In the next lessons, we'll explore more features and capabilities of Numpy arrays.

    +

    Numpy arrays provide a powerful and efficient way to work with numerical data in Python. By enforcing homogeneous data types and optimizing memory usage and performance, Numpy arrays offer significant advantages over Python lists for numerical computing tasks. In the next lessons, we'll explore more features and capabilities of Numpy arrays.

    \ No newline at end of file diff --git a/docs/data-analysis/NumPy/Matrices/index.html b/docs/data-analysis/NumPy/Matrices/index.html index 735ce2ef..e25f0239 100644 --- a/docs/data-analysis/NumPy/Matrices/index.html +++ b/docs/data-analysis/NumPy/Matrices/index.html @@ -6,9 +6,9 @@ Matrices | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/NumPy/Reshaping/index.html b/docs/data-analysis/NumPy/Reshaping/index.html index 7d2e739c..4a92c710 100644 --- a/docs/data-analysis/NumPy/Reshaping/index.html +++ b/docs/data-analysis/NumPy/Reshaping/index.html @@ -6,9 +6,9 @@ Reshaping | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/NumPy/Reshaping_Flattening/index.html b/docs/data-analysis/NumPy/Reshaping_Flattening/index.html index e42051d9..c79ef79c 100644 --- a/docs/data-analysis/NumPy/Reshaping_Flattening/index.html +++ b/docs/data-analysis/NumPy/Reshaping_Flattening/index.html @@ -6,9 +6,9 @@ Reshaping_Flattening | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/NumPy/Reversing_Arrays/index.html b/docs/data-analysis/NumPy/Reversing_Arrays/index.html index 526277c3..67060a75 100644 --- a/docs/data-analysis/NumPy/Reversing_Arrays/index.html +++ b/docs/data-analysis/NumPy/Reversing_Arrays/index.html @@ -6,9 +6,9 @@ Reversing_Arrays | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/NumPy/Saving_Loading_Arrays/index.html b/docs/data-analysis/NumPy/Saving_Loading_Arrays/index.html index 7a25dad6..957a9ad1 100644 --- a/docs/data-analysis/NumPy/Saving_Loading_Arrays/index.html +++ b/docs/data-analysis/NumPy/Saving_Loading_Arrays/index.html @@ -6,9 +6,9 @@ Saving_Loading_Arrays | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/NumPy/Shape_and_Size/index.html b/docs/data-analysis/NumPy/Shape_and_Size/index.html index e69c4c51..6a9c705a 100644 --- a/docs/data-analysis/NumPy/Shape_and_Size/index.html +++ b/docs/data-analysis/NumPy/Shape_and_Size/index.html @@ -6,9 +6,9 @@ Shape_and_Size | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/NumPy/Sorting_Concatenating/index.html b/docs/data-analysis/NumPy/Sorting_Concatenating/index.html index a9efe2e0..ded1a556 100644 --- a/docs/data-analysis/NumPy/Sorting_Concatenating/index.html +++ b/docs/data-analysis/NumPy/Sorting_Concatenating/index.html @@ -6,7 +6,7 @@ Sorting and Concatenating Arrays | Python Guide - +

    Sorting and Concatenating Arrays

    @@ -25,6 +25,6 @@

    Concate
    # Creating multidimensional arrays
    array_1 = np.array([[1, 2], [3, 4]])
    array_2 = np.array([[5, 6], [7, 8]])

    # Concatenating arrays along axis 1 (vertically)
    concatenated_array_axis_1 = np.concatenate((array_1, array_2), axis=1)
    print("Concatenated Array along axis 1:", concatenated_array_axis_1)

    Output:

    Concatenated Array along axis 1:
    [[1 2 5 6]
    [3 4 7 8]]
    -

    In this example, arrays array_1 and array_2 were concatenated along axis 1, resulting in vertical concatenation.

    +

    In this example, arrays array_1 and array_2 were concatenated along axis 1, resulting in vertical concatenation.

    \ No newline at end of file diff --git a/docs/data-analysis/Reshaping_Datasets/groupby/index.html b/docs/data-analysis/Reshaping_Datasets/groupby/index.html index be86cbb7..524ca956 100644 --- a/docs/data-analysis/Reshaping_Datasets/groupby/index.html +++ b/docs/data-analysis/Reshaping_Datasets/groupby/index.html @@ -6,9 +6,9 @@ groupby | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Reshaping_Datasets/introduction/index.html b/docs/data-analysis/Reshaping_Datasets/introduction/index.html index 85107ca7..0c0ef12a 100644 --- a/docs/data-analysis/Reshaping_Datasets/introduction/index.html +++ b/docs/data-analysis/Reshaping_Datasets/introduction/index.html @@ -6,9 +6,9 @@ introduction | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Reshaping_Datasets/melt/index.html b/docs/data-analysis/Reshaping_Datasets/melt/index.html index d88c8fae..f9726086 100644 --- a/docs/data-analysis/Reshaping_Datasets/melt/index.html +++ b/docs/data-analysis/Reshaping_Datasets/melt/index.html @@ -6,9 +6,9 @@ melt | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Reshaping_Datasets/pivot-table/index.html b/docs/data-analysis/Reshaping_Datasets/pivot-table/index.html index d5eb36a5..d5b83562 100644 --- a/docs/data-analysis/Reshaping_Datasets/pivot-table/index.html +++ b/docs/data-analysis/Reshaping_Datasets/pivot-table/index.html @@ -6,9 +6,9 @@ pivot-table | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Reshaping_Datasets/pivot/index.html b/docs/data-analysis/Reshaping_Datasets/pivot/index.html index 6487aa79..220f74f4 100644 --- a/docs/data-analysis/Reshaping_Datasets/pivot/index.html +++ b/docs/data-analysis/Reshaping_Datasets/pivot/index.html @@ -6,9 +6,9 @@ pivot | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Reshaping_Datasets/stack-unstack/index.html b/docs/data-analysis/Reshaping_Datasets/stack-unstack/index.html index b0ceb50f..8cf84388 100644 --- a/docs/data-analysis/Reshaping_Datasets/stack-unstack/index.html +++ b/docs/data-analysis/Reshaping_Datasets/stack-unstack/index.html @@ -6,9 +6,9 @@ stack-unstack | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Reshaping_Datasets/transpose/index.html b/docs/data-analysis/Reshaping_Datasets/transpose/index.html index 33467811..c5aa64ae 100644 --- a/docs/data-analysis/Reshaping_Datasets/transpose/index.html +++ b/docs/data-analysis/Reshaping_Datasets/transpose/index.html @@ -6,9 +6,9 @@ transpose | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Series/accessing_elements_index/index.html b/docs/data-analysis/Series/accessing_elements_index/index.html index 0aa8b9d3..0371021e 100644 --- a/docs/data-analysis/Series/accessing_elements_index/index.html +++ b/docs/data-analysis/Series/accessing_elements_index/index.html @@ -6,7 +6,7 @@ Accessing Series Elements by Index in Pandas | Python Guide - +

    Accessing Series Elements by Index in Pandas

    @@ -27,6 +27,6 @@

    Slice Notatio

    Using slice notation, we can retrieve a range of elements. For example:

    # Accessing net worth between Bill Gates and Steve Ballmer
    slice_net_worth = richest['Bill Gates':'Steve Ballmer']
    print("Net Worth between Bill Gates and Steve Ballmer:", slice_net_worth)

    Conclusion​

    -

    In this tutorial, we've explored how to access elements in a Pandas Series using customized string-based indices. We learned to access single and multiple elements, as well as a range of elements using slice notation. By mastering these techniques, you can efficiently manipulate and extract data from Series objects in Pandas.

    +

    In this tutorial, we've explored how to access elements in a Pandas Series using customized string-based indices. We learned to access single and multiple elements, as well as a range of elements using slice notation. By mastering these techniques, you can efficiently manipulate and extract data from Series objects in Pandas.

    \ No newline at end of file diff --git a/docs/data-analysis/Series/accessing_elements_position/index.html b/docs/data-analysis/Series/accessing_elements_position/index.html index 811de5ac..cde127a4 100644 --- a/docs/data-analysis/Series/accessing_elements_position/index.html +++ b/docs/data-analysis/Series/accessing_elements_position/index.html @@ -6,7 +6,7 @@ Accessing Elements by Position in Pandas | Python Guide - + +
    # Viewing Series index
    index_info = richest.index
    print(index_info)
    \ No newline at end of file diff --git a/docs/data-analysis/Series/attributes/index.html b/docs/data-analysis/Series/attributes/index.html index 65c94749..421fc849 100644 --- a/docs/data-analysis/Series/attributes/index.html +++ b/docs/data-analysis/Series/attributes/index.html @@ -6,7 +6,7 @@ Attributes | Python Guide - + +

    With this comprehensive guide, you now have a solid understanding of Pandas Series attributes and how to leverage them in your data analysis tasks. Happy coding!

    \ No newline at end of file diff --git a/docs/data-analysis/Series/counting_values/index.html b/docs/data-analysis/Series/counting_values/index.html index 75d15c45..806bf358 100644 --- a/docs/data-analysis/Series/counting_values/index.html +++ b/docs/data-analysis/Series/counting_values/index.html @@ -6,7 +6,7 @@ Using the value_counts() Method in Pandas | Python Guide - + +
    Fashion and retail    18
    Finance 13
    Technology 15
    NaN 3
    Name: industry, dtype: int64
    \ No newline at end of file diff --git a/docs/data-analysis/Series/handling_csv_files/index.html b/docs/data-analysis/Series/handling_csv_files/index.html index 4b441def..236ede4d 100644 --- a/docs/data-analysis/Series/handling_csv_files/index.html +++ b/docs/data-analysis/Series/handling_csv_files/index.html @@ -6,7 +6,7 @@ Reading and Exporting CSV Files Using Pandas | Python Guide - + +
    \ No newline at end of file diff --git a/docs/data-analysis/Series/head-and-tail/index.html b/docs/data-analysis/Series/head-and-tail/index.html index 8a4fe5a5..8258e2d1 100644 --- a/docs/data-analysis/Series/head-and-tail/index.html +++ b/docs/data-analysis/Series/head-and-tail/index.html @@ -6,7 +6,7 @@ Reading and Previewing CSV Files with Pandas | Python Guide - + +
    \ No newline at end of file diff --git a/docs/data-analysis/Series/intro/index.html b/docs/data-analysis/Series/intro/index.html index 07f4a77f..7b71f34d 100644 --- a/docs/data-analysis/Series/intro/index.html +++ b/docs/data-analysis/Series/intro/index.html @@ -6,7 +6,7 @@ Series in Pandas | Python Guide - + +
    \ No newline at end of file diff --git a/docs/data-analysis/Series/methods/index.html b/docs/data-analysis/Series/methods/index.html index b95251a2..39af998e 100644 --- a/docs/data-analysis/Series/methods/index.html +++ b/docs/data-analysis/Series/methods/index.html @@ -6,7 +6,7 @@ Methods | Python Guide - + +
    rounded_values = values.round(2)  # Round to 2 decimal places
    print("Rounded values:", rounded_values)
    \ No newline at end of file diff --git a/docs/data-analysis/Series/sorting_values/index.html b/docs/data-analysis/Series/sorting_values/index.html index 1d757052..77d4adb0 100644 --- a/docs/data-analysis/Series/sorting_values/index.html +++ b/docs/data-analysis/Series/sorting_values/index.html @@ -6,7 +6,7 @@ Sorting Pandas Series and DataFrames | Python Guide - + +
    richest_sorted_index = richest.sort_index(ascending=False)
    print(richest_sorted_index)
    \ No newline at end of file diff --git a/docs/data-analysis/String_Operators/index-columns/index.html b/docs/data-analysis/String_Operators/index-columns/index.html index e266ed41..6f8b41a8 100644 --- a/docs/data-analysis/String_Operators/index-columns/index.html +++ b/docs/data-analysis/String_Operators/index-columns/index.html @@ -6,9 +6,9 @@ index-columns | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/String_Operators/startswith-endswith/index.html b/docs/data-analysis/String_Operators/startswith-endswith/index.html index b252b029..0032a877 100644 --- a/docs/data-analysis/String_Operators/startswith-endswith/index.html +++ b/docs/data-analysis/String_Operators/startswith-endswith/index.html @@ -6,9 +6,9 @@ startswith-endswith | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/String_Operators/str/index.html b/docs/data-analysis/String_Operators/str/index.html index b614a9fc..27a3d7f3 100644 --- a/docs/data-analysis/String_Operators/str/index.html +++ b/docs/data-analysis/String_Operators/str/index.html @@ -6,9 +6,9 @@ str | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Time_Series/Accessing_Time_Attributes/index.html b/docs/data-analysis/Time_Series/Accessing_Time_Attributes/index.html index 26f03305..0c2b1ffb 100644 --- a/docs/data-analysis/Time_Series/Accessing_Time_Attributes/index.html +++ b/docs/data-analysis/Time_Series/Accessing_Time_Attributes/index.html @@ -6,9 +6,9 @@ Accessing_Time_Attributes | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Time_Series/Period_PeriodIndex/index.html b/docs/data-analysis/Time_Series/Period_PeriodIndex/index.html index 7fb02ed1..b3ab408a 100644 --- a/docs/data-analysis/Time_Series/Period_PeriodIndex/index.html +++ b/docs/data-analysis/Time_Series/Period_PeriodIndex/index.html @@ -6,9 +6,9 @@ Period_PeriodIndex | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Time_Series/Project/index.html b/docs/data-analysis/Time_Series/Project/index.html index e632149c..90c99f05 100644 --- a/docs/data-analysis/Time_Series/Project/index.html +++ b/docs/data-analysis/Time_Series/Project/index.html @@ -6,9 +6,9 @@ Project | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Time_Series/Time_Series/index.html b/docs/data-analysis/Time_Series/Time_Series/index.html index 6ec67be1..8f550c22 100644 --- a/docs/data-analysis/Time_Series/Time_Series/index.html +++ b/docs/data-analysis/Time_Series/Time_Series/index.html @@ -6,9 +6,9 @@ Time_Series | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Time_Series/Timedelta_TimedeltaIndex/index.html b/docs/data-analysis/Time_Series/Timedelta_TimedeltaIndex/index.html index e7c33c30..8d3ea25c 100644 --- a/docs/data-analysis/Time_Series/Timedelta_TimedeltaIndex/index.html +++ b/docs/data-analysis/Time_Series/Timedelta_TimedeltaIndex/index.html @@ -6,9 +6,9 @@ Timedelta_TimedeltaIndex | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Time_Series/Timestamp_DatetimeIndex/index.html b/docs/data-analysis/Time_Series/Timestamp_DatetimeIndex/index.html index 425e3bca..c2a044b0 100644 --- a/docs/data-analysis/Time_Series/Timestamp_DatetimeIndex/index.html +++ b/docs/data-analysis/Time_Series/Timestamp_DatetimeIndex/index.html @@ -6,7 +6,7 @@ Pandas Timestamp and DateTime Conversion | Python Guide - +

    Pandas Timestamp and DateTime Conversion

    @@ -34,6 +34,6 @@

    Conve

    Conclusion​

    Understanding how to create, manipulate, and convert timestamps is essential for effectively working with time series data in Pandas. This guide provides comprehensive coverage of these topics, equipping users with the knowledge and tools necessary for efficient time-based data analysis.

    -

    For detailed examples and further information, refer to the provided code samples and documentation.

    +

    For detailed examples and further information, refer to the provided code samples and documentation.

    \ No newline at end of file diff --git a/docs/data-analysis/Time_Series/Timestap_Methods_Attributes/index.html b/docs/data-analysis/Time_Series/Timestap_Methods_Attributes/index.html index 7e55d403..eb61f6ac 100644 --- a/docs/data-analysis/Time_Series/Timestap_Methods_Attributes/index.html +++ b/docs/data-analysis/Time_Series/Timestap_Methods_Attributes/index.html @@ -6,9 +6,9 @@ Timestap_Methods_Attributes | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Time_Series/date_range()/index.html b/docs/data-analysis/Time_Series/date_range()/index.html index 2764b56e..bda4d855 100644 --- a/docs/data-analysis/Time_Series/date_range()/index.html +++ b/docs/data-analysis/Time_Series/date_range()/index.html @@ -6,9 +6,9 @@ date_range() | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Time_Series/loc_iloc_DatetimeIndex/index.html b/docs/data-analysis/Time_Series/loc_iloc_DatetimeIndex/index.html index 9fc032d7..888fd6f0 100644 --- a/docs/data-analysis/Time_Series/loc_iloc_DatetimeIndex/index.html +++ b/docs/data-analysis/Time_Series/loc_iloc_DatetimeIndex/index.html @@ -6,9 +6,9 @@ loc_iloc_DatetimeIndex | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Time_Series/reindex/index.html b/docs/data-analysis/Time_Series/reindex/index.html index 9fad775d..448c112e 100644 --- a/docs/data-analysis/Time_Series/reindex/index.html +++ b/docs/data-analysis/Time_Series/reindex/index.html @@ -6,9 +6,9 @@ reindex | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/Time_Series/resample/index.html b/docs/data-analysis/Time_Series/resample/index.html index e9e3389e..ce3dba3f 100644 --- a/docs/data-analysis/Time_Series/resample/index.html +++ b/docs/data-analysis/Time_Series/resample/index.html @@ -6,9 +6,9 @@ resample | Python Guide - + - + \ No newline at end of file diff --git a/docs/data-analysis/getting-started/index.html b/docs/data-analysis/getting-started/index.html index 47265653..6b3cd853 100644 --- a/docs/data-analysis/getting-started/index.html +++ b/docs/data-analysis/getting-started/index.html @@ -6,7 +6,7 @@ Getting Started | Python Guide - + +
    \ No newline at end of file diff --git a/docs/design-patterns/behavioral/behavioral/index.html b/docs/design-patterns/behavioral/behavioral/index.html index 065ae1e1..dfc26dfc 100644 --- a/docs/design-patterns/behavioral/behavioral/index.html +++ b/docs/design-patterns/behavioral/behavioral/index.html @@ -6,7 +6,7 @@ Introduction | Python Guide - +

    Introduction

    @@ -65,6 +65,6 @@

    Use Cases:Queuing and scheduling requests.

    Conclusion​

    -

    Behavioral design patterns provide solutions for designing flexible and efficient object collaboration and responsibilities. By understanding and implementing patterns like Observer, Strategy, and Command, developers can improve code modularity, maintainability, and extensibility. These patterns offer proven techniques for managing object interaction complexity and promoting best practices in software architecture.

    +

    Behavioral design patterns provide solutions for designing flexible and efficient object collaboration and responsibilities. By understanding and implementing patterns like Observer, Strategy, and Command, developers can improve code modularity, maintainability, and extensibility. These patterns offer proven techniques for managing object interaction complexity and promoting best practices in software architecture.

    \ No newline at end of file diff --git a/docs/design-patterns/creational/abstract_factory/index.html b/docs/design-patterns/creational/abstract_factory/index.html index 71a01568..b49c72ff 100644 --- a/docs/design-patterns/creational/abstract_factory/index.html +++ b/docs/design-patterns/creational/abstract_factory/index.html @@ -6,9 +6,9 @@ abstract_factory | Python Guide - + - + \ No newline at end of file diff --git a/docs/design-patterns/creational/builder/index.html b/docs/design-patterns/creational/builder/index.html index c91042c4..1ac4ffc9 100644 --- a/docs/design-patterns/creational/builder/index.html +++ b/docs/design-patterns/creational/builder/index.html @@ -6,9 +6,9 @@ builder | Python Guide - + - + \ No newline at end of file diff --git a/docs/design-patterns/creational/factory_method/index.html b/docs/design-patterns/creational/factory_method/index.html index f2ffb453..92a24c65 100644 --- a/docs/design-patterns/creational/factory_method/index.html +++ b/docs/design-patterns/creational/factory_method/index.html @@ -6,9 +6,9 @@ factory_method | Python Guide - + - + \ No newline at end of file diff --git a/docs/design-patterns/creational/index.html b/docs/design-patterns/creational/index.html index df047cf7..a080c1c9 100644 --- a/docs/design-patterns/creational/index.html +++ b/docs/design-patterns/creational/index.html @@ -6,7 +6,7 @@ Introduction | Python Guide - +

    Introduction

    @@ -35,6 +35,6 @@

    5. Proto

    The Prototype Pattern allows objects to be cloned, reducing the overhead of creating objects from scratch.

    Use Case: When object creation is expensive or complex.

    Implementation:

    -
    import copy

    class Prototype:
    def __init__(self, value):
    self.value = value

    def clone(self):
    return copy.deepcopy(self)

    # Usage
    original = Prototype([1, 2, 3])
    clone = original.clone()
    print(original.value == clone.value) # Output: True
    print(original is clone) # Output: False

    +
    import copy

    class Prototype:
    def __init__(self, value):
    self.value = value

    def clone(self):
    return copy.deepcopy(self)

    # Usage
    original = Prototype([1, 2, 3])
    clone = original.clone()
    print(original.value == clone.value) # Output: True
    print(original is clone) # Output: False
    \ No newline at end of file diff --git a/docs/design-patterns/creational/prototype/index.html b/docs/design-patterns/creational/prototype/index.html index e461643a..d1ab1720 100644 --- a/docs/design-patterns/creational/prototype/index.html +++ b/docs/design-patterns/creational/prototype/index.html @@ -6,9 +6,9 @@ prototype | Python Guide - + - + \ No newline at end of file diff --git a/docs/design-patterns/creational/singleton/index.html b/docs/design-patterns/creational/singleton/index.html index 2b46bab5..c3e36e4d 100644 --- a/docs/design-patterns/creational/singleton/index.html +++ b/docs/design-patterns/creational/singleton/index.html @@ -6,9 +6,9 @@ singleton | Python Guide - + - + \ No newline at end of file diff --git a/docs/design-patterns/getting-started/index.html b/docs/design-patterns/getting-started/index.html index 95927fbf..16cacbc4 100644 --- a/docs/design-patterns/getting-started/index.html +++ b/docs/design-patterns/getting-started/index.html @@ -6,7 +6,7 @@ Getting Started | Python Guide - + +
    \ No newline at end of file diff --git a/docs/design-patterns/structural/structural/index.html b/docs/design-patterns/structural/structural/index.html index c37a7f1c..e44b748a 100644 --- a/docs/design-patterns/structural/structural/index.html +++ b/docs/design-patterns/structural/structural/index.html @@ -6,7 +6,7 @@ Introduction | Python Guide - +

    Introduction

    @@ -46,6 +46,6 @@

    7. Proxy Pat

    Use Case: Implementing lazy initialization, access control, or logging.

    Implementation:

    class Subject:
    def request(self):
    pass

    class RealSubject(Subject):
    def request(self):
    return "RealSubject: Handling request."

    class Proxy(Subject):
    def __init__(self, real_subject):
    self._real_subject = real_subject

    def request(self):
    return f"Proxy: Logging before forwarding to {self._real_subject.request()}"

    # Usage
    real_subject = RealSubject()
    proxy = Proxy(real_subject)
    print(proxy.request())
    -

    These structural patterns offer robust strategies to manage the relationships between objects, ensuring flexibility and scalability. Next, we will explore Behavioral Design Patterns.

    +

    These structural patterns offer robust strategies to manage the relationships between objects, ensuring flexibility and scalability. Next, we will explore Behavioral Design Patterns.

    \ No newline at end of file diff --git a/docs/getting-started/index.html b/docs/getting-started/index.html index 7e576346..13361889 100644 --- a/docs/getting-started/index.html +++ b/docs/getting-started/index.html @@ -6,9 +6,9 @@ Getting Started | Python Guide - + - + \ No newline at end of file diff --git a/docs/gui-development/getting-started/index.html b/docs/gui-development/getting-started/index.html index f31ed6c3..91fab549 100644 --- a/docs/gui-development/getting-started/index.html +++ b/docs/gui-development/getting-started/index.html @@ -6,7 +6,7 @@ Getting Started | Python Guide - +

    Getting Started

    @@ -94,6 +94,6 @@
  • Writing Maintainable GUI Code ✍️
  • Designing User-Friendly Interfaces 🎨
  • Enhancing Accessibility in GUI Applications β™Ώ
  • -
    +
    \ No newline at end of file diff --git a/docs/gui-development/introduction/gui_development/index.html b/docs/gui-development/introduction/gui_development/index.html index 57b5a374..ff1c3954 100644 --- a/docs/gui-development/introduction/gui_development/index.html +++ b/docs/gui-development/introduction/gui_development/index.html @@ -6,9 +6,9 @@ gui_development | Python Guide - + - + \ No newline at end of file diff --git a/docs/gui-development/introduction/gui_frameworks/index.html b/docs/gui-development/introduction/gui_frameworks/index.html index fd7260c4..5cf91127 100644 --- a/docs/gui-development/introduction/gui_frameworks/index.html +++ b/docs/gui-development/introduction/gui_frameworks/index.html @@ -6,9 +6,9 @@ gui_frameworks | Python Guide - + - + \ No newline at end of file diff --git a/docs/gui-development/introduction/right_framework/index.html b/docs/gui-development/introduction/right_framework/index.html index e68c0c99..a901973b 100644 --- a/docs/gui-development/introduction/right_framework/index.html +++ b/docs/gui-development/introduction/right_framework/index.html @@ -6,9 +6,9 @@ right_framework | Python Guide - + - + \ No newline at end of file diff --git a/docs/gui-development/introduction/setting-up/index.html b/docs/gui-development/introduction/setting-up/index.html index 2a393fea..deb94976 100644 --- a/docs/gui-development/introduction/setting-up/index.html +++ b/docs/gui-development/introduction/setting-up/index.html @@ -6,9 +6,9 @@ setting-up | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Advanced/Generators/index.html b/docs/python-guide/Advanced/Generators/index.html index d75b5176..4a0f2df6 100644 --- a/docs/python-guide/Advanced/Generators/index.html +++ b/docs/python-guide/Advanced/Generators/index.html @@ -6,7 +6,7 @@ Generators | Python Guide - +

    Generators

    @@ -27,6 +27,6 @@

    Handling

    Generators are exhaustive; once you retrieve a value, it's gone. Attempting to get more values than available will raise a StopIteration exception.

    try:
    print(next(vowels_generator))
    except StopIteration:
    print("The generator is empty.")

    This exception signals the end of the generator. In a for loop, this is handled implicitly.

    -

    Generators are a powerful tool for efficient iteration and lazy evaluation in Python. Consider using them when dealing with large data sets or when memory efficiency is crucial. Happy coding!

    +

    Generators are a powerful tool for efficient iteration and lazy evaluation in Python. Consider using them when dealing with large data sets or when memory efficiency is crucial. Happy coding!

    \ No newline at end of file diff --git a/docs/python-guide/Advanced/Lambda_Functions/index.html b/docs/python-guide/Advanced/Lambda_Functions/index.html index 7d949df2..321a5c9f 100644 --- a/docs/python-guide/Advanced/Lambda_Functions/index.html +++ b/docs/python-guide/Advanced/Lambda_Functions/index.html @@ -6,7 +6,7 @@ Lambda Functions | Python Guide - +

    Lambda Functions

    @@ -24,6 +24,6 @@

    L

    Sorting with Lambdas​

    # Sorting names by length
    names = ["Bob", "James", "Samantha", "Luigi", "Joe"]
    sorted_names = sorted(names, key=lambda x: len(x.lower()))

    print(sorted_names)
    # Output: ['Joe', 'Bob', 'Luigi', 'James', 'Samantha']

    Conclusion​

    -

    Lambdas are powerful tools for concise and expressive coding, especially in scenarios where creating a separate function may be overkill. Consider their readability and reusability when deciding between lambdas and regular functions. Enjoy coding with lambdas!

    +

    Lambdas are powerful tools for concise and expressive coding, especially in scenarios where creating a separate function may be overkill. Consider their readability and reusability when deciding between lambdas and regular functions. Enjoy coding with lambdas!

    \ No newline at end of file diff --git a/docs/python-guide/Advanced/Mypy/index.html b/docs/python-guide/Advanced/Mypy/index.html index 1d49cc4a..43b470b0 100644 --- a/docs/python-guide/Advanced/Mypy/index.html +++ b/docs/python-guide/Advanced/Mypy/index.html @@ -6,7 +6,7 @@ Mypy Static Type Checker | Python Guide - +

    Mypy Static Type Checker

    @@ -36,6 +36,6 @@

    E
    def my_function(default: int = None):
    # Your function logic here

    Mypy will warn that the default value has the type of None, but the argument is annotated as int. To resolve this, either provide a default value that is not None or explicitly annotate the argument as Optional.

    Conclusion​

    -

    In conclusion, integrating a static type checker like Mypy into your projects is crucial for ensuring type correctness. While code editors can be helpful, Mypy provides an extra layer of validation, catching errors that may be overlooked. Regularly running the mypy command helps maintain code quality by detecting and fixing type-related issues early in the development process.

    +

    In conclusion, integrating a static type checker like Mypy into your projects is crucial for ensuring type correctness. While code editors can be helpful, Mypy provides an extra layer of validation, catching errors that may be overlooked. Regularly running the mypy command helps maintain code quality by detecting and fixing type-related issues early in the development process.

    \ No newline at end of file diff --git a/docs/python-guide/Advanced/Walrus_Operator/index.html b/docs/python-guide/Advanced/Walrus_Operator/index.html index 1c1314db..c50f018c 100644 --- a/docs/python-guide/Advanced/Walrus_Operator/index.html +++ b/docs/python-guide/Advanced/Walrus_Operator/index.html @@ -6,7 +6,7 @@ Walrus Operator | Python Guide - +

    Walrus Operator

    @@ -27,6 +27,6 @@

    Controversy and Considerations​

    It's essential to note that the walrus operator might be considered controversial due to potential readability issues. Some developers find it hard to read, while others see it as a concise way to simplify code. Consider your team's coding standards and prioritize readability when deciding whether to use the walrus operator.

    -

    Remember, the most crucial aspect of coding is to write clear and understandable code. If the walrus operator enhances readability in your specific use case, feel free to leverage it; otherwise, stick to more conventional approaches.data

    +

    Remember, the most crucial aspect of coding is to write clear and understandable code. If the walrus operator enhances readability in your specific use case, feel free to leverage it; otherwise, stick to more conventional approaches.data

    \ No newline at end of file diff --git a/docs/python-guide/AsyncIO/Gather/index.html b/docs/python-guide/AsyncIO/Gather/index.html index ecb0af0c..e3cf1412 100644 --- a/docs/python-guide/AsyncIO/Gather/index.html +++ b/docs/python-guide/AsyncIO/Gather/index.html @@ -6,7 +6,7 @@ Asynchronous Operations with Futures in Python | Python Guide - +

    Asynchronous Operations with Futures in Python

    @@ -22,6 +22,6 @@

    Creating a

    Handling Exceptions​

    To demonstrate exception handling within the asyncio.gather() function, modify your asynchronous function to raise an exception based on a parameter:

    async def fetch_data(input_value, delay, fails=False):
    await asyncio.sleep(delay)
    if fails:
    raise Exception("Something went wrong!")
    return {"input": input_value, "result": f"Data for {input_value}"}
    -

    Now, when calling fetch_data(3, 2, fails=True), it will simulate a task that raises an exception. The asyncio.gather() function, with return_exceptions=True, ensures that the exceptions are captured and returned along with the results. By using futures and asyncio.gather(), you can efficiently handle multiple asynchronous tasks in a single block of code. Additionally, you learned how to handle exceptions within the gathering process and print results in a more readable format. Experiment with these concepts to enhance your understanding of asynchronous programming in Python.

    +

    Now, when calling fetch_data(3, 2, fails=True), it will simulate a task that raises an exception. The asyncio.gather() function, with return_exceptions=True, ensures that the exceptions are captured and returned along with the results. By using futures and asyncio.gather(), you can efficiently handle multiple asynchronous tasks in a single block of code. Additionally, you learned how to handle exceptions within the gathering process and print results in a more readable format. Experiment with these concepts to enhance your understanding of asynchronous programming in Python.

    \ No newline at end of file diff --git a/docs/python-guide/AsyncIO/Getting_Started/index.html b/docs/python-guide/AsyncIO/Getting_Started/index.html index 66136351..0dceb8e3 100644 --- a/docs/python-guide/AsyncIO/Getting_Started/index.html +++ b/docs/python-guide/AsyncIO/Getting_Started/index.html @@ -6,7 +6,7 @@ Asynchronous Programming with Asyncio in Python | Python Guide - +

    Asynchronous Programming with Asyncio in Python

    @@ -32,6 +32,6 @@

    Creating Tasks for Concurrent Execution​

    To fully leverage asynchronous programming, create tasks to run multiple asynchronous functions concurrently. Modify the main entry point as follows:

    async def main():
    task_one = asyncio.create_task(fetch_data(1))
    task_two = asyncio.create_task(fetch_data(2))

    data_one = await task_one
    data_two = await task_two

    print(f"Data one: {data_one}")
    print(f"Data two: {data_two}")
    -

    By creating tasks using asyncio.create_task, we can initiate multiple asynchronous functions simultaneously. This allows the script to run more efficiently, making the most of asynchronous capabilities.

    +

    By creating tasks using asyncio.create_task, we can initiate multiple asynchronous functions simultaneously. This allows the script to run more efficiently, making the most of asynchronous capabilities.

    \ No newline at end of file diff --git a/docs/python-guide/AsyncIO/Intro/index.html b/docs/python-guide/AsyncIO/Intro/index.html index b73087f1..d342678c 100644 --- a/docs/python-guide/AsyncIO/Intro/index.html +++ b/docs/python-guide/AsyncIO/Intro/index.html @@ -6,7 +6,7 @@ Introduction | Python Guide - +

    Introduction

    @@ -16,6 +16,6 @@

    What is Asy

    Async IO is particularly useful for IO-bound tasks, such as fetching data from APIs. Asynchronous programming, in this context, means executing tasks not at the same time, in contrast to synchronous programming where tasks happen sequentially.

    To illustrate the concept visually, consider two functions, Function One and Function Two, both making requests to fetch data from the internet.

    # Synchronous Example
    # Total execution time: 3 seconds
    response_one = function_one() # Takes 2 seconds
    response_two = function_two() # Takes 1 second

    # Async IO Example
    # Total execution time: 2 seconds
    response_one = await function_one() # Takes 2 seconds
    response_two = await function_two() # Takes 1 second
    -

    In the synchronous example, we would wait for function_one to complete before moving on to function_two, resulting in a total execution time of 3 seconds. However, with async IO, we can start both functions seemingly simultaneously, allowing the program to proceed with other tasks while waiting for responses. It's crucial to note that async IO doesn't speed up code execution; instead, it enables the continuation of other code while waiting for external sources' results, such as server responses or web page data.

    +

    In the synchronous example, we would wait for function_one to complete before moving on to function_two, resulting in a total execution time of 3 seconds. However, with async IO, we can start both functions seemingly simultaneously, allowing the program to proceed with other tasks while waiting for responses. It's crucial to note that async IO doesn't speed up code execution; instead, it enables the continuation of other code while waiting for external sources' results, such as server responses or web page data.

    \ No newline at end of file diff --git a/docs/python-guide/AsyncIO/Tasks/index.html b/docs/python-guide/AsyncIO/Tasks/index.html index fb7b0d92..443823f5 100644 --- a/docs/python-guide/AsyncIO/Tasks/index.html +++ b/docs/python-guide/AsyncIO/Tasks/index.html @@ -6,7 +6,7 @@ Tasks | Python Guide - +

    Tasks

    @@ -29,6 +29,6 @@

    Example: Setting a Timeout for a Task​

    To prevent tasks from taking too long, you can set a timeout. Here's an example:

    async def fetch_data(input_data, delay):
    await asyncio.sleep(delay)
    return {"input_data": input_data, "timestamp": str(datetime.now())}

    async def main():
    task = asyncio.create_task(fetch_data(5, 30))

    try:
    data = await asyncio.wait_for(task, timeout=3)
    print("Retrieved data within the timeout:", data)
    except asyncio.TimeoutError:
    print("Request took too long. Try again.")
    except asyncio.CancelledError:
    print("Task was canceled.")

    asyncio.run(main())
    -

    This example sets a timeout of 3 seconds, indicating that if the task takes longer, it should raise a TimeoutError. The code then handles this exception appropriately.

    +

    This example sets a timeout of 3 seconds, indicating that if the task takes longer, it should raise a TimeoutError. The code then handles this exception appropriately.

    \ No newline at end of file diff --git a/docs/python-guide/AsyncIO/Website_Status/index.html b/docs/python-guide/AsyncIO/Website_Status/index.html index f4daf6fd..ec804883 100644 --- a/docs/python-guide/AsyncIO/Website_Status/index.html +++ b/docs/python-guide/AsyncIO/Website_Status/index.html @@ -6,7 +6,7 @@ Asynchronous Website Status Checker | Python Guide - +

    Asynchronous Website Status Checker

    @@ -19,6 +19,6 @@

    Code Imp

    How to Run​

    Save the code in a file (e.g., website_status_checker.py) and run it using the following command:

    python website_status_checker.py
    -

    This script checks the status of several websites concurrently, displaying the results including status codes, start and end times, and any exceptions encountered during the process. The use of asynchronous tasks ensures efficient execution, allowing requests to seemingly occur simultaneously.

    +

    This script checks the status of several websites concurrently, displaying the results including status codes, start and end times, and any exceptions encountered during the process. The use of asynchronous tasks ensures efficient execution, allowing requests to seemingly occur simultaneously.

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/Improved_Chat_Bot/index.html b/docs/python-guide/Built_in_Functions/Improved_Chat_Bot/index.html index 159a7aa7..3680ff39 100644 --- a/docs/python-guide/Built_in_Functions/Improved_Chat_Bot/index.html +++ b/docs/python-guide/Built_in_Functions/Improved_Chat_Bot/index.html @@ -6,10 +6,10 @@ Improved_Chat_Bot | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/all()/index.html b/docs/python-guide/Built_in_Functions/all()/index.html index 6d343976..b65f65cf 100644 --- a/docs/python-guide/Built_in_Functions/all()/index.html +++ b/docs/python-guide/Built_in_Functions/all()/index.html @@ -6,10 +6,10 @@ all() | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/any()/index.html b/docs/python-guide/Built_in_Functions/any()/index.html index 37de7c25..1cdeb9b6 100644 --- a/docs/python-guide/Built_in_Functions/any()/index.html +++ b/docs/python-guide/Built_in_Functions/any()/index.html @@ -6,10 +6,10 @@ any() | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/callable()/index.html b/docs/python-guide/Built_in_Functions/callable()/index.html index d1af6eb9..2852f777 100644 --- a/docs/python-guide/Built_in_Functions/callable()/index.html +++ b/docs/python-guide/Built_in_Functions/callable()/index.html @@ -6,10 +6,10 @@ callable() | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/dunder_methods/index.html b/docs/python-guide/Built_in_Functions/dunder_methods/index.html index 13965c67..d9923a2a 100644 --- a/docs/python-guide/Built_in_Functions/dunder_methods/index.html +++ b/docs/python-guide/Built_in_Functions/dunder_methods/index.html @@ -6,7 +6,7 @@ 5 Useful Dunder Methods In Python | Python Guide - +

    5 Useful Dunder Methods In Python

    @@ -26,6 +26,6 @@

    Dunder Method 5: __getitem__​

    The __getitem__ method allows us to make our objects subscriptable, enabling access by index or key.

    class Basket:
    def __init__(self, fruits):
    self.fruits = fruits

    def __getitem__(self, item):
    return [fruit for fruit in self.fruits if fruit.name.lower() == item.lower()]

    # Example usage:
    fruits = [Fruit("apple", 100), Fruit("orange", 150), Fruit("banana", 200)]
    basket = Basket(fruits)

    print(basket["orange"]) # Output: [orange (150g)]
    -

    These Dunder methods provide powerful customization capabilities, allowing you to tailor the behavior of your classes to suit your specific needs in Python.

    +

    These Dunder methods provide powerful customization capabilities, allowing you to tailor the behavior of your classes to suit your specific needs in Python.

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/enumerate()/index.html b/docs/python-guide/Built_in_Functions/enumerate()/index.html index 5400f0f6..9f0c7504 100644 --- a/docs/python-guide/Built_in_Functions/enumerate()/index.html +++ b/docs/python-guide/Built_in_Functions/enumerate()/index.html @@ -6,7 +6,7 @@ Enumerate Function in Python | Python Guide - + +

    Feel free to adapt and integrate these code snippets into your projects for efficient and clean iteration through elements.

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/eval()/index.html b/docs/python-guide/Built_in_Functions/eval()/index.html index 9ada016f..618571d5 100644 --- a/docs/python-guide/Built_in_Functions/eval()/index.html +++ b/docs/python-guide/Built_in_Functions/eval()/index.html @@ -6,10 +6,10 @@ eval() | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/exec()/index.html b/docs/python-guide/Built_in_Functions/exec()/index.html index 8dfab689..771ad66a 100644 --- a/docs/python-guide/Built_in_Functions/exec()/index.html +++ b/docs/python-guide/Built_in_Functions/exec()/index.html @@ -6,10 +6,10 @@ exec() | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/filter()/index.html b/docs/python-guide/Built_in_Functions/filter()/index.html index bde66ebe..f7e8ebb1 100644 --- a/docs/python-guide/Built_in_Functions/filter()/index.html +++ b/docs/python-guide/Built_in_Functions/filter()/index.html @@ -6,10 +6,10 @@ filter() | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/globals()/index.html b/docs/python-guide/Built_in_Functions/globals()/index.html index 123183e3..2de744d7 100644 --- a/docs/python-guide/Built_in_Functions/globals()/index.html +++ b/docs/python-guide/Built_in_Functions/globals()/index.html @@ -6,10 +6,10 @@ globals() | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/isinstance()/index.html b/docs/python-guide/Built_in_Functions/isinstance()/index.html index 9aab4c1b..bf75c73c 100644 --- a/docs/python-guide/Built_in_Functions/isinstance()/index.html +++ b/docs/python-guide/Built_in_Functions/isinstance()/index.html @@ -6,10 +6,10 @@ isinstance() | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/locals()/index.html b/docs/python-guide/Built_in_Functions/locals()/index.html index 324e431f..d7db4ed3 100644 --- a/docs/python-guide/Built_in_Functions/locals()/index.html +++ b/docs/python-guide/Built_in_Functions/locals()/index.html @@ -6,10 +6,10 @@ locals() | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/map()/index.html b/docs/python-guide/Built_in_Functions/map()/index.html index 05b8d3a4..91dfa06a 100644 --- a/docs/python-guide/Built_in_Functions/map()/index.html +++ b/docs/python-guide/Built_in_Functions/map()/index.html @@ -6,10 +6,10 @@ map() | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/print()/index.html b/docs/python-guide/Built_in_Functions/print()/index.html index 2b9eeb59..bf5a6321 100644 --- a/docs/python-guide/Built_in_Functions/print()/index.html +++ b/docs/python-guide/Built_in_Functions/print()/index.html @@ -6,7 +6,7 @@ Python Print Statement | Python Guide - +

    Python Print Statement

    @@ -28,6 +28,6 @@

    Unpackin

    Additional Arguments (file and flush)​

    The print statement has two additional arguments: file and flush. These are typically not used in everyday programming and won't be covered in detail in this tutorial.

    Conclusion​

    -

    Understanding the versatility of the print statement is crucial for effective Python programming. Customizing separators, end characters, and utilizing argument unpacking can enhance the readability of your code. Experiment with these features to become more proficient in using the print statement in various scenarios. Happy coding!

    +

    Understanding the versatility of the print statement is crucial for effective Python programming. Customizing separators, end characters, and utilizing argument unpacking can enhance the readability of your code. Experiment with these features to become more proficient in using the print statement in various scenarios. Happy coding!

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/range()/index.html b/docs/python-guide/Built_in_Functions/range()/index.html index 0117c163..d25fc6b8 100644 --- a/docs/python-guide/Built_in_Functions/range()/index.html +++ b/docs/python-guide/Built_in_Functions/range()/index.html @@ -6,7 +6,7 @@ Python Ranges Tutorial | Python Guide - +

    Python Ranges Tutorial

    @@ -31,6 +31,6 @@

    U
    # Iterate through a range using a for loop
    for i in range(3):
    print(i)
    # Output: 0, 1, 2

    Ranges are iterable, making them suitable for use in for loops without the need for conversion to a list or tuple.

    Conclusion​

    -

    Ranges provide a convenient way to generate sequences of numbers in Python, enabling efficient handling of tasks that involve iterating through numeric values. Experiment with different parameters to tailor the ranges to your specific needs.

    +

    Ranges provide a convenient way to generate sequences of numbers in Python, enabling efficient handling of tasks that involve iterating through numeric values. Experiment with different parameters to tailor the ranges to your specific needs.

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/round()/index.html b/docs/python-guide/Built_in_Functions/round()/index.html index 649588b6..da0ed9f4 100644 --- a/docs/python-guide/Built_in_Functions/round()/index.html +++ b/docs/python-guide/Built_in_Functions/round()/index.html @@ -6,7 +6,7 @@ Python Float Rounding Tutorial | Python Guide - + +

    Happy coding! 🐍

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/slice()/index.html b/docs/python-guide/Built_in_Functions/slice()/index.html index c25f5a6c..1242cd38 100644 --- a/docs/python-guide/Built_in_Functions/slice()/index.html +++ b/docs/python-guide/Built_in_Functions/slice()/index.html @@ -6,7 +6,7 @@ Reusable Slice Objects Tutorial | Python Guide - +

    Reusable Slice Objects Tutorial

    @@ -39,6 +39,6 @@

    # Create a slice object for stepping through the text by two characters
    step_two = slice(None, None, 2)

    # Print the text with the step_two slice
    print(text[step_two])

    Now, you can easily use the step_two slice object on any iterable to step through it with a stride of two.

    Conclusion​

    -

    Creating reusable slice objects in Python provides a cleaner and more maintainable way to handle slicing logic. This tutorial covered the basics of creating slice objects and demonstrated their use in different scenarios. Feel free to adapt and integrate these techniques into your own projects for improved code organization and flexibility.

    +

    Creating reusable slice objects in Python provides a cleaner and more maintainable way to handle slicing logic. This tutorial covered the basics of creating slice objects and demonstrated their use in different scenarios. Feel free to adapt and integrate these techniques into your own projects for improved code organization and flexibility.

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/sorted()/index.html b/docs/python-guide/Built_in_Functions/sorted()/index.html index 54d1a60b..68055598 100644 --- a/docs/python-guide/Built_in_Functions/sorted()/index.html +++ b/docs/python-guide/Built_in_Functions/sorted()/index.html @@ -6,10 +6,10 @@ sorted() | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Built_in_Functions/zip()/index.html b/docs/python-guide/Built_in_Functions/zip()/index.html index 397c3dc5..b1130754 100644 --- a/docs/python-guide/Built_in_Functions/zip()/index.html +++ b/docs/python-guide/Built_in_Functions/zip()/index.html @@ -6,10 +6,10 @@ zip() | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Control_Flow/Break_and_Continue/index.html b/docs/python-guide/Control_Flow/Break_and_Continue/index.html index 31fc6191..4bbe8038 100644 --- a/docs/python-guide/Control_Flow/Break_and_Continue/index.html +++ b/docs/python-guide/Control_Flow/Break_and_Continue/index.html @@ -6,7 +6,7 @@ break and continue | Python Guide - + +

    In summary, break and continue provide powerful control mechanisms within loops, allowing for early exit or skipping iterations based on specific conditions. Understanding these keywords enhances the ability to write efficient and effective Python code.

    \ No newline at end of file diff --git a/docs/python-guide/Control_Flow/For_Loop/index.html b/docs/python-guide/Control_Flow/For_Loop/index.html index 1efaf0f0..b5110c21 100644 --- a/docs/python-guide/Control_Flow/For_Loop/index.html +++ b/docs/python-guide/Control_Flow/For_Loop/index.html @@ -6,7 +6,7 @@ For Loop | Python Guide - +

    For Loop

    @@ -60,6 +60,6 @@

    Conclusion​

    The for loop in Python is a powerful construct for iterating over iterable objects, executing a block of code on each iteration. This tutorial has covered basic usage, incorporating the loop variable, iterating over lists and tuples, and adding conditional logic within the loop. These examples demonstrate the flexibility and efficiency of for loops in managing repetitive tasks, making code more readable and maintainable.

    -

    For further exploration, consider experimenting with other iterable types such as dictionaries and sets, and integrating more complex logic within the loop to handle various programming scenarios.

    +

    For further exploration, consider experimenting with other iterable types such as dictionaries and sets, and integrating more complex logic within the loop to handle various programming scenarios.

    \ No newline at end of file diff --git a/docs/python-guide/Control_Flow/If_Elif_Else/index.html b/docs/python-guide/Control_Flow/If_Elif_Else/index.html index 6bc1b8ff..7f39ca07 100644 --- a/docs/python-guide/Control_Flow/If_Elif_Else/index.html +++ b/docs/python-guide/Control_Flow/If_Elif_Else/index.html @@ -6,7 +6,7 @@ Control Flow and Conditional Statements | Python Guide - +

    Control Flow and Conditional Statements

    @@ -32,6 +32,6 @@

    Testing th

    Let's test our logic by changing the values of age and weather:

    # Age tests
    age = 30
    if age >= 21:
    print("You may enter the club.")
    else:
    print("You are not allowed in.")

    age = 20
    if age >= 21:
    print("You may enter the club.")
    else:
    print("You are not allowed in.")

    # Weather tests
    weather = "cloudy"
    if weather == "clear":
    print("It is a nice day.")
    elif weather == "cloudy":
    print("The weather could be better.")
    elif weather == "rainy":
    print("What an awful day.")
    else:
    print("Unknown weather.")

    weather = "rainy"
    if weather == "clear":
    print("It is a nice day.")
    elif weather == "cloudy":
    print("The weather could be better.")
    elif weather == "rainy":
    print("What an awful day.")
    else:
    print("Unknown weather.")

    weather = "dry"
    if weather == "clear":
    print("It is a nice day.")
    elif weather == "cloudy":
    print("The weather could be better.")
    elif weather == "rainy":
    print("What an awful day.")
    else:
    print("Unknown weather.")

    Conclusion

    -

    Conditional statements are essential for making decisions in your programs. By mastering if, elif, and else, you can create complex logical flows and ensure your programs behave as expected. Always remember the importance of indentation in Python, as it defines the scope of your control structures.

    +

    Conditional statements are essential for making decisions in your programs. By mastering if, elif, and else, you can create complex logical flows and ensure your programs behave as expected. Always remember the importance of indentation in Python, as it defines the scope of your control structures.

    \ No newline at end of file diff --git a/docs/python-guide/Control_Flow/If_Else_Shorthand/index.html b/docs/python-guide/Control_Flow/If_Else_Shorthand/index.html index ed6ed00a..2550d401 100644 --- a/docs/python-guide/Control_Flow/If_Else_Shorthand/index.html +++ b/docs/python-guide/Control_Flow/If_Else_Shorthand/index.html @@ -6,7 +6,7 @@ Shorthand If-Else Statements | Python Guide - +

    Shorthand If-Else Statements

    @@ -45,6 +45,6 @@

    R
    condition = some_complex_function()
    if condition:
    result = "complex condition met"
    else:
    result = "complex condition not met"
    print(result)

    In this case, breaking the logic into multiple lines can make it easier to understand what each part of the code is doing.

    Conclusion​

    -

    Shorthand if-else statements in Python provide a way to write concise code for simple boolean expressions. However, it is crucial to balance conciseness with readability. Use shorthand statements when they make the code clearer and avoid them when they obscure the logic or make the code harder to understand. Always prioritize writing code that you and others can easily read and maintain.

    +

    Shorthand if-else statements in Python provide a way to write concise code for simple boolean expressions. However, it is crucial to balance conciseness with readability. Use shorthand statements when they make the code clearer and avoid them when they obscure the logic or make the code harder to understand. Always prioritize writing code that you and others can easily read and maintain.

    \ No newline at end of file diff --git a/docs/python-guide/Control_Flow/Loop-Else/index.html b/docs/python-guide/Control_Flow/Loop-Else/index.html index 194d5a93..fb29436b 100644 --- a/docs/python-guide/Control_Flow/Loop-Else/index.html +++ b/docs/python-guide/Control_Flow/Loop-Else/index.html @@ -6,7 +6,7 @@ else Block in for and while Loops | Python Guide - +

    else Block in for and while Loops

    @@ -57,6 +57,6 @@

    Item not found

    Conclusion​

    The else block in for and while loops is a unique feature that provides a way to execute code only if the loop completes all iterations without encountering a break. While it may seem unintuitive at first, understanding its behavior can help in writing more precise and readable code for specific scenarios.

    -

    Despite its rarity in everyday code, being familiar with the else block can be beneficial, especially when reading or maintaining code written by others who might use this feature.

    +

    Despite its rarity in everyday code, being familiar with the else block can be beneficial, especially when reading or maintaining code written by others who might use this feature.

    \ No newline at end of file diff --git a/docs/python-guide/Control_Flow/Rock_Paper_Scissors/index.html b/docs/python-guide/Control_Flow/Rock_Paper_Scissors/index.html index 486855e5..8650add3 100644 --- a/docs/python-guide/Control_Flow/Rock_Paper_Scissors/index.html +++ b/docs/python-guide/Control_Flow/Rock_Paper_Scissors/index.html @@ -6,7 +6,7 @@ Building a Rock, Paper, Scissors Game | Python Guide - + +
    \ No newline at end of file diff --git a/docs/python-guide/Control_Flow/While_Loop/index.html b/docs/python-guide/Control_Flow/While_Loop/index.html index 1eaba98c..49145a09 100644 --- a/docs/python-guide/Control_Flow/While_Loop/index.html +++ b/docs/python-guide/Control_Flow/While_Loop/index.html @@ -6,7 +6,7 @@ While Loop | Python Guide - +

    While Loop

    @@ -42,6 +42,6 @@

    Summary​

    In summary, Python provides two primary looping constructs: for loops for finite sequences and while loops for potentially infinite or condition-based iteration. Understanding when and how to use each loop is crucial for effective programming. Always ensure that your while loops have a clear termination condition to avoid unintentional infinite loops.

    -

    By mastering these looping constructs, you can handle a wide range of programming tasks efficiently and effectively.

    +

    By mastering these looping constructs, you can handle a wide range of programming tasks efficiently and effectively.

    \ No newline at end of file diff --git a/docs/python-guide/Dataclasses/@dataclass/index.html b/docs/python-guide/Dataclasses/@dataclass/index.html index f9e999d1..64c1423b 100644 --- a/docs/python-guide/Dataclasses/@dataclass/index.html +++ b/docs/python-guide/Dataclasses/@dataclass/index.html @@ -6,7 +6,7 @@ Python Data Classes Tutorial | Python Guide - + +

    In conclusion, data classes offer a concise and efficient way to manage data-centric classes in Python. They enhance code readability, comparability, and reduce development time by minimizing boilerplate code.

    \ No newline at end of file diff --git a/docs/python-guide/Dataclasses/@property/index.html b/docs/python-guide/Dataclasses/@property/index.html index 81b73d97..73474ae4 100644 --- a/docs/python-guide/Dataclasses/@property/index.html +++ b/docs/python-guide/Dataclasses/@property/index.html @@ -6,7 +6,7 @@ Using @property in Python | Python Guide - +

    Using @property in Python

    @@ -18,6 +18,6 @@

    Solu

    To address this issue, we'll replace the post-initializer method with a property using the @property decorator. This ensures that the total price is recalculated every time it is accessed, reflecting any changes in the price per kilo.

    class Fruit:
    def __init__(self, name, grams, price_per_kilo):
    self.name = name
    self.grams = grams
    self.price_per_kilo = price_per_kilo

    @property
    def total_price(self):
    return (self.grams / 1000) * self.price_per_kilo

    # Example usage:
    if __name__ == "__main__":
    apple = Fruit("Apple", 1500, 5)
    print(apple.total_price) # Output: 7.5

    # Now, if price_per_kilo changes, total_price updates accordingly
    apple.price_per_kilo = 20
    print(apple.total_price) # Output: 30.0 (updated)

    Conclusion​

    -

    Using @property provides a cleaner and more efficient way to handle scenarios where values need to be calculated dynamically based on the current state of the object. It ensures that every access to the property triggers the associated method, allowing for up-to-date information without the need for manual updates.

    +

    Using @property provides a cleaner and more efficient way to handle scenarios where values need to be calculated dynamically based on the current state of the object. It ensures that every access to the property triggers the associated method, allowing for up-to-date information without the need for manual updates.

    \ No newline at end of file diff --git a/docs/python-guide/Dataclasses/Fields/index.html b/docs/python-guide/Dataclasses/Fields/index.html index 7fe580c2..0fe05798 100644 --- a/docs/python-guide/Dataclasses/Fields/index.html +++ b/docs/python-guide/Dataclasses/Fields/index.html @@ -6,7 +6,7 @@ Data Class with Mutable Defaults Tutorial | Python Guide - +

    Data Class with Mutable Defaults Tutorial

    @@ -21,6 +21,6 @@

    St

    Now, let's create instances of the Fruit class:

    if __name__ == "__main__":
    # Creating an apple without specifying default values
    apple = Fruit(name="Apple", grams=100, price_per_kilo=5)

    # Creating a pear with custom values
    pear = Fruit(name="Pear", grams=250, price_per_kilo=10, edible=True, related_fruits=["Apple", "Orange"])

    # Printing the fruits
    print(apple)
    print(pear)
    print("Related Fruits:", pear.related_fruits)

    In this example, the Fruit instances are created with and without specifying custom values. Note that default values are used for unspecified fields.

    -

    Now you can run your Python script, and you should see the output displaying the created Fruit instances.

    +

    Now you can run your Python script, and you should see the output displaying the created Fruit instances.

    \ No newline at end of file diff --git a/docs/python-guide/Dataclasses/InitVar/index.html b/docs/python-guide/Dataclasses/InitVar/index.html index f5522e77..17dc3cb7 100644 --- a/docs/python-guide/Dataclasses/InitVar/index.html +++ b/docs/python-guide/Dataclasses/InitVar/index.html @@ -6,7 +6,7 @@ Tutorial: Using Post Initializer with Init Var in Data Classes | Python Guide - +

    Tutorial: Using Post Initializer with Init Var in Data Classes

    @@ -26,6 +26,6 @@

    Print the details of the fruit objects, including the effect of the post initializer on the price if Israir is True.

        print(apple)
    print(orange)
    print(passion)

    Now, when you run this Python script, you will see the details of the fruit objects, and the price of passion fruit will be doubled due to the post initializer.

    -

    This tutorial demonstrates the power of using init var in combination with post initializers to customize the behavior of data classes without cluttering the class definition.

    +

    This tutorial demonstrates the power of using init var in combination with post initializers to customize the behavior of data classes without cluttering the class definition.

    \ No newline at end of file diff --git a/docs/python-guide/Dataclasses/Notes_App/index.html b/docs/python-guide/Dataclasses/Notes_App/index.html index e83bba84..9f5fb6c8 100644 --- a/docs/python-guide/Dataclasses/Notes_App/index.html +++ b/docs/python-guide/Dataclasses/Notes_App/index.html @@ -6,7 +6,7 @@ Python Note Taking App | Python Guide - +
    +

    Feel free to experiment and enhance the app further based on your preferences and learning goals.

    \ No newline at end of file diff --git a/docs/python-guide/Dataclasses/post_init/index.html b/docs/python-guide/Dataclasses/post_init/index.html index d469832a..08ab7c0e 100644 --- a/docs/python-guide/Dataclasses/post_init/index.html +++ b/docs/python-guide/Dataclasses/post_init/index.html @@ -6,7 +6,7 @@ Python Post Initializers Tutorial | Python Guide - + +

    Note: The tutorial also mentions a limitation of using post initializers for the total price and suggests an alternative approach using computed properties, which will be covered in a future lecture.

    \ No newline at end of file diff --git a/docs/python-guide/Errors/Else_Finally/index.html b/docs/python-guide/Errors/Else_Finally/index.html index 5b884bd5..63c0fd06 100644 --- a/docs/python-guide/Errors/Else_Finally/index.html +++ b/docs/python-guide/Errors/Else_Finally/index.html @@ -6,7 +6,7 @@ Exception Handling in Python: Using else and finally Blocks | Python Guide - +

    Exception Handling in Python: Using else and finally Blocks

    @@ -35,6 +35,6 @@

    Syntax:Conclusion​

    -

    In Python, utilizing else and finally blocks provides additional control and robustness to your exception handling strategy. While else offers a way to distinguish between successful and exceptional executions, finally ensures that critical cleanup tasks are performed, regardless of the program's flow. Remember, while these constructs are powerful, it's crucial to use them judiciously and maintain code readability for better maintainability and understanding.

    +

    In Python, utilizing else and finally blocks provides additional control and robustness to your exception handling strategy. While else offers a way to distinguish between successful and exceptional executions, finally ensures that critical cleanup tasks are performed, regardless of the program's flow. Remember, while these constructs are powerful, it's crucial to use them judiciously and maintain code readability for better maintainability and understanding.

    \ No newline at end of file diff --git a/docs/python-guide/Errors/Letters_Only/index.html b/docs/python-guide/Errors/Letters_Only/index.html index 4f118333..770d8082 100644 --- a/docs/python-guide/Errors/Letters_Only/index.html +++ b/docs/python-guide/Errors/Letters_Only/index.html @@ -6,10 +6,10 @@ Letters_Only | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Errors/Raise/index.html b/docs/python-guide/Errors/Raise/index.html index 64be77bc..f2d4cb63 100644 --- a/docs/python-guide/Errors/Raise/index.html +++ b/docs/python-guide/Errors/Raise/index.html @@ -6,7 +6,7 @@ Manually Raising Exceptions in Python | Python Guide - +

    Manually Raising Exceptions in Python

    @@ -34,6 +34,6 @@

    Regardless of your experience level, don't hesitate to use online resources like Google to research and understand unfamiliar exceptions. Even seasoned developers rely on external sources to enhance their problem-solving skills.

    Conclusion:

    Manually raising exceptions in Python empowers you to handle exceptional cases efficiently. By understanding the raise keyword and practicing error handling techniques, you can write robust and resilient code. Embrace errors as opportunities for growth, and never hesitate to seek assistance from online communities and documentation.

    -

    This comprehensive tutorial provides a solid foundation for mastering manual exception handling in Python. Experiment with different scenarios and explore additional resources to deepen your understanding further. Happy coding!

    +

    This comprehensive tutorial provides a solid foundation for mastering manual exception handling in Python. Experiment with different scenarios and explore additional resources to deepen your understanding further. Happy coding!

    \ No newline at end of file diff --git a/docs/python-guide/Errors/Try_Except/index.html b/docs/python-guide/Errors/Try_Except/index.html index d3dd8310..0df6c788 100644 --- a/docs/python-guide/Errors/Try_Except/index.html +++ b/docs/python-guide/Errors/Try_Except/index.html @@ -6,7 +6,7 @@ Handling Exceptions | Python Guide - +

    Handling Exceptions

    @@ -30,6 +30,6 @@

    import sys

    total = 0.0

    while True:
    try:
    user_input = input("Enter a number: ")
    if user_input == '0':
    print(f"Total: {total}")
    sys.exit() # Exit the program
    total += float(user_input)
    except ValueError:
    print("Error: Please enter a valid number.")

    In this program, we continuously prompt the user for input and update the total. If the user enters '0', we print the total and exit the program. We handle ValueError if the user input cannot be converted to a float.

    Conclusion​

    -

    Exception handling in Python allows us to gracefully manage errors and unexpected behavior in our programs. By using try and except blocks, we can anticipate potential issues and provide appropriate responses, improving the robustness and reliability of our code. Remember to be specific with exception handling and use generic exception handling sparingly.

    +

    Exception handling in Python allows us to gracefully manage errors and unexpected behavior in our programs. By using try and except blocks, we can anticipate potential issues and provide appropriate responses, improving the robustness and reliability of our code. Remember to be specific with exception handling and use generic exception handling sparingly.

    \ No newline at end of file diff --git a/docs/python-guide/Errors/Unknown_Errors/index.html b/docs/python-guide/Errors/Unknown_Errors/index.html index 9b4acc92..a9c57956 100644 --- a/docs/python-guide/Errors/Unknown_Errors/index.html +++ b/docs/python-guide/Errors/Unknown_Errors/index.html @@ -6,10 +6,10 @@ Unknown_Errors | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Errors/User_Input/index.html b/docs/python-guide/Errors/User_Input/index.html index 2cd196f2..5168c0fc 100644 --- a/docs/python-guide/Errors/User_Input/index.html +++ b/docs/python-guide/Errors/User_Input/index.html @@ -6,7 +6,7 @@ User Input | Python Guide - +

    User Input

    @@ -28,6 +28,6 @@

    Now, let's test the program:

    Enter a number: 10
    Enter a number: 20
    Enter a number: 30
    Enter a number: abc
    Invalid input! Please enter a valid number.
    Enter a number: 0
    The total is: 60

    As you can see, the program handles both valid and invalid inputs gracefully. It continues to execute even if the user enters invalid input, preventing the program from crashing. This is achieved through the use of exception handling, specifically catching ValueError exceptions when converting user input to an integer.

    -

    By implementing proper input validation and exception handling, we can create robust programs that gracefully handle unexpected user input and errors. This approach enhances the user experience and ensures the reliability of our applications.

    +

    By implementing proper input validation and exception handling, we can create robust programs that gracefully handle unexpected user input and errors. This approach enhances the user experience and ensures the reliability of our applications.

    \ No newline at end of file diff --git a/docs/python-guide/File-Management/Caching-JSON/index.html b/docs/python-guide/File-Management/Caching-JSON/index.html index ab33a7a1..544c171f 100644 --- a/docs/python-guide/File-Management/Caching-JSON/index.html +++ b/docs/python-guide/File-Management/Caching-JSON/index.html @@ -6,7 +6,7 @@ Creating a JSON Cache for API Data in Python | Python Guide - +

    Creating a JSON Cache for API Data in Python

    @@ -26,6 +26,6 @@

    Step 4: Testing the Script​

    Run the script to test if everything is working correctly. It should fetch data from the API and cache it locally.

    python script.py
    -

    If successful, you'll see the fetched data printed on the console. In this tutorial, we've learned how to create a JSON cache for API data in Python. Caching data locally can help improve performance and reduce unnecessary API requests, saving both time and resources. This concept is essential in real-world applications where efficient use of APIs is crucial.

    +

    If successful, you'll see the fetched data printed on the console. In this tutorial, we've learned how to create a JSON cache for API data in Python. Caching data locally can help improve performance and reduce unnecessary API requests, saving both time and resources. This concept is essential in real-world applications where efficient use of APIs is crucial.

    \ No newline at end of file diff --git a/docs/python-guide/File-Management/Deleting_Files/index.html b/docs/python-guide/File-Management/Deleting_Files/index.html index 8b23957f..15ee8376 100644 --- a/docs/python-guide/File-Management/Deleting_Files/index.html +++ b/docs/python-guide/File-Management/Deleting_Files/index.html @@ -6,9 +6,9 @@ Deleting_Files | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/File-Management/File-Handling/index.html b/docs/python-guide/File-Management/File-Handling/index.html index 513662d4..036fb86e 100644 --- a/docs/python-guide/File-Management/File-Handling/index.html +++ b/docs/python-guide/File-Management/File-Handling/index.html @@ -6,7 +6,7 @@ File Handling in Python | Python Guide - +

    File Handling in Python

    @@ -44,6 +44,6 @@

    Opening Files<

    Additionally, files can be opened in text mode ('t') or binary mode ('b').

    # Example: Open a text file in read mode
    file = open('sample_text.txt', 'r')
    # Example: Open a binary file in write mode
    image_file = open('image.png', 'wb')
    -

    In the upcoming sections, we'll explore various file operations such as reading, writing, appending, and deleting content. Stay tuned for more detailed examples!

    +

    In the upcoming sections, we'll explore various file operations such as reading, writing, appending, and deleting content. Stay tuned for more detailed examples!

    \ No newline at end of file diff --git a/docs/python-guide/File-Management/Glob/index.html b/docs/python-guide/File-Management/Glob/index.html index 5199701a..3e17b5d7 100644 --- a/docs/python-guide/File-Management/Glob/index.html +++ b/docs/python-guide/File-Management/Glob/index.html @@ -6,7 +6,7 @@ Glob | Python Guide - +

    Glob

    Exploring Files with the Globe Module in Python​

    @@ -34,6 +34,6 @@

    Using Generator Version:​

    To avoid loading all file names at once, you can use the iterator version of glob. This returns a generator, which yields file names one by one.

    # Using the generator version of glob
    files_generator = glob.iglob("**/*.js", recursive=True)
    for file in files_generator:
    print(file)
    -

    The Globe module in Python provides a convenient way to search for files based on specified patterns within directories. Whether you need to locate specific files or perform recursive searches across multiple directories, Globe offers a powerful solution with its Unix shell-like pattern matching capabilities.

    +

    The Globe module in Python provides a convenient way to search for files based on specified patterns within directories. Whether you need to locate specific files or perform recursive searches across multiple directories, Globe offers a powerful solution with its Unix shell-like pattern matching capabilities.

    \ No newline at end of file diff --git a/docs/python-guide/File-Management/Handling-JSON/index.html b/docs/python-guide/File-Management/Handling-JSON/index.html index d173620b..b0f143f2 100644 --- a/docs/python-guide/File-Management/Handling-JSON/index.html +++ b/docs/python-guide/File-Management/Handling-JSON/index.html @@ -6,9 +6,9 @@ Handling-JSON | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/File-Management/JSON/index.html b/docs/python-guide/File-Management/JSON/index.html index 180dc95a..c33f8a23 100644 --- a/docs/python-guide/File-Management/JSON/index.html +++ b/docs/python-guide/File-Management/JSON/index.html @@ -6,9 +6,9 @@ JSON | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/File-Management/Pickling/index.html b/docs/python-guide/File-Management/Pickling/index.html index 4e60c911..c525f9c9 100644 --- a/docs/python-guide/File-Management/Pickling/index.html +++ b/docs/python-guide/File-Management/Pickling/index.html @@ -6,7 +6,7 @@ Pickling | Python Guide - +

    Pickling

    Pickling in Python - Serialization and Deserialization​

    @@ -36,6 +36,6 @@

    Pic
  • Finally, we print the attributes of the loaded_person object.
  • Security Considerations​

    -

    It's important to note that the pickle module is not secure by default. Pickle files can contain arbitrary Python code, which may pose security risks if loaded from untrusted sources. Therefore, it's crucial to only unpickle data from trusted sources. Pickling is a powerful feature in Python for serializing and deserializing objects. It allows you to save complex data structures into files and retrieve them later. However, it's essential to use pickling responsibly and only with trusted data sources to avoid security vulnerabilities.

    +

    It's important to note that the pickle module is not secure by default. Pickle files can contain arbitrary Python code, which may pose security risks if loaded from untrusted sources. Therefore, it's crucial to only unpickle data from trusted sources. Pickling is a powerful feature in Python for serializing and deserializing objects. It allows you to save complex data structures into files and retrieve them later. However, it's essential to use pickling responsibly and only with trusted data sources to avoid security vulnerabilities.

    \ No newline at end of file diff --git a/docs/python-guide/File-Management/Reading-Files/index.html b/docs/python-guide/File-Management/Reading-Files/index.html index f7ffdc3e..5cafffa6 100644 --- a/docs/python-guide/File-Management/Reading-Files/index.html +++ b/docs/python-guide/File-Management/Reading-Files/index.html @@ -6,7 +6,7 @@ File Handling with the with Statement in Python | Python Guide - +

    File Handling with the with Statement in Python

    @@ -35,6 +35,6 @@

    Autom

    Conclusion​

    By leveraging the with statement, you can ensure clean and efficient file handling in Python. Whether you're reading, writing, or appending to files, using with simplifies the process and reduces the risk of resource leaks. Start incorporating with into your file handling code for better resource management and cleaner code structure.


    -

    With the techniques outlined in this tutorial, you can confidently handle file operations in Python while maintaining code clarity and robustness.

    +

    With the techniques outlined in this tutorial, you can confidently handle file operations in Python while maintaining code clarity and robustness.

    \ No newline at end of file diff --git a/docs/python-guide/File-Management/Writing-Creating-Files/index.html b/docs/python-guide/File-Management/Writing-Creating-Files/index.html index ed6171f3..fefe48a1 100644 --- a/docs/python-guide/File-Management/Writing-Creating-Files/index.html +++ b/docs/python-guide/File-Management/Writing-Creating-Files/index.html @@ -6,7 +6,7 @@ File Manipulation Tutorial | Python Guide - + +print("Content after appending in exclusive creation mode:\n", content)

    \ No newline at end of file diff --git a/docs/python-guide/File-Management/toml/index.html b/docs/python-guide/File-Management/toml/index.html index 66051a8d..64558ce6 100644 --- a/docs/python-guide/File-Management/toml/index.html +++ b/docs/python-guide/File-Management/toml/index.html @@ -6,7 +6,7 @@ toml | Python Guide - +

    toml

    Using YAML with Python​

    @@ -31,6 +31,6 @@

    Hand

    Handling Anchors and Aliases​

    YAML allows the use of anchors (&) and aliases (*) to reference the same data elsewhere in the document. PyYAML provides support for handling anchors and aliases during parsing and dumping YAML data.

    Conclusion​

    -

    YAML is a versatile data serialization format that is widely used in the software development community. With PyYAML, you can easily work with YAML files in Python, enabling seamless integration of YAML data into your Python applications. Whether you're reading configuration files, exchanging data between systems, or storing structured data, YAML combined with Python offers a powerful and flexible solution.

    +

    YAML is a versatile data serialization format that is widely used in the software development community. With PyYAML, you can easily work with YAML files in Python, enabling seamless integration of YAML data into your Python applications. Whether you're reading configuration files, exchanging data between systems, or storing structured data, YAML combined with Python offers a powerful and flexible solution.

    \ No newline at end of file diff --git a/docs/python-guide/File-Management/yaml/index.html b/docs/python-guide/File-Management/yaml/index.html index d5ce9ac0..92734e54 100644 --- a/docs/python-guide/File-Management/yaml/index.html +++ b/docs/python-guide/File-Management/yaml/index.html @@ -6,7 +6,7 @@ yaml | Python Guide - +

    yaml

    Using YAML with Python​

    @@ -31,6 +31,6 @@

    Hand

    Handling Anchors and Aliases​

    YAML allows the use of anchors (&) and aliases (*) to reference the same data elsewhere in the document. PyYAML provides support for handling anchors and aliases during parsing and dumping YAML data.

    Conclusion​

    -

    YAML is a versatile data serialization format that is widely used in the software development community. With PyYAML, you can easily work with YAML files in Python, enabling seamless integration of YAML data into your Python applications. Whether you're reading configuration files, exchanging data between systems, or storing structured data, YAML combined with Python offers a powerful and flexible solution.

    +

    YAML is a versatile data serialization format that is widely used in the software development community. With PyYAML, you can easily work with YAML files in Python, enabling seamless integration of YAML data into your Python applications. Whether you're reading configuration files, exchanging data between systems, or storing structured data, YAML combined with Python offers a powerful and flexible solution.

    \ No newline at end of file diff --git a/docs/python-guide/Functions/Args_and_Kwargs/index.html b/docs/python-guide/Functions/Args_and_Kwargs/index.html index 7d5e06db..ecd5573c 100644 --- a/docs/python-guide/Functions/Args_and_Kwargs/index.html +++ b/docs/python-guide/Functions/Args_and_Kwargs/index.html @@ -6,10 +6,10 @@ Args_and_Kwargs | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Functions/Creating_a_Function/index.html b/docs/python-guide/Functions/Creating_a_Function/index.html index 945e34ea..100e7b0e 100644 --- a/docs/python-guide/Functions/Creating_a_Function/index.html +++ b/docs/python-guide/Functions/Creating_a_Function/index.html @@ -6,7 +6,7 @@ Python Functions Tutorial | Python Guide - +

    Python Functions Tutorial

    @@ -25,6 +25,6 @@

    from datetime import datetime
    import time

    def show_time():
    now = datetime.now()
    formatted_time = now.strftime("%H:%M:%S")
    print(f"The current time is {formatted_time}")

    # Sleep for two seconds
    time.sleep(2)

    # Call the function to display current time
    show_time()

    In this example, the show_time function prints the current time in a specified format. It also demonstrates how functions can be used to perform actions over time, such as waiting for two seconds before displaying the time again.

    -

    This tutorial covers the fundamental concepts of functions in Python. Throughout the course, we'll explore advanced features and possibilities for creating and using functions. Stay tuned for more in-depth discussions and practical examples.

    +

    This tutorial covers the fundamental concepts of functions in Python. Throughout the course, we'll explore advanced features and possibilities for creating and using functions. Stay tuned for more in-depth discussions and practical examples.

    \ No newline at end of file diff --git a/docs/python-guide/Functions/Parameters_and_Arguments/index.html b/docs/python-guide/Functions/Parameters_and_Arguments/index.html index 628c4cf2..2fa05259 100644 --- a/docs/python-guide/Functions/Parameters_and_Arguments/index.html +++ b/docs/python-guide/Functions/Parameters_and_Arguments/index.html @@ -6,7 +6,7 @@ Python Function Parameters and Defaults Tutorial | Python Guide - +

    Python Function Parameters and Defaults Tutorial

    @@ -34,6 +34,6 @@

    6.

    Even when default values are provided, we can still change them when calling the function:

    greet("James")  # Uses default language ("Hello")
    greet("Maria", language="Spanish") # Overrides default language

    Remember, default values should come after parameters without defaults.

    -

    That's it! You've learned how to use parameters and default values in Python functions to create more versatile and customizable code. Feel free to experiment and apply these concepts to your own projects.

    +

    That's it! You've learned how to use parameters and default values in Python functions to create more versatile and customizable code. Feel free to experiment and apply these concepts to your own projects.

    \ No newline at end of file diff --git a/docs/python-guide/Functions/Pass/index.html b/docs/python-guide/Functions/Pass/index.html index 20bde883..9afb9866 100644 --- a/docs/python-guide/Functions/Pass/index.html +++ b/docs/python-guide/Functions/Pass/index.html @@ -6,10 +6,10 @@ Pass | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Functions/Recursion/index.html b/docs/python-guide/Functions/Recursion/index.html index e99f30b4..6da70bcb 100644 --- a/docs/python-guide/Functions/Recursion/index.html +++ b/docs/python-guide/Functions/Recursion/index.html @@ -6,10 +6,10 @@ Recursion | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Functions/Return_Functions/index.html b/docs/python-guide/Functions/Return_Functions/index.html index 8d919c2c..d350c1eb 100644 --- a/docs/python-guide/Functions/Return_Functions/index.html +++ b/docs/python-guide/Functions/Return_Functions/index.html @@ -6,7 +6,7 @@ Python Functions and Return Values Tutorial | Python Guide - +

    Python Functions and Return Values Tutorial

    @@ -35,6 +35,6 @@

    # Attempting to assign the result to a variable (will raise a warning)
    result_var: str = connect_to_internet() # This will highlight a warning

    Executing the function and trying to print the variable will show that it holds None.

    Conclusion​

    -

    In this tutorial, we've covered the basics of using return values in Python functions. Return values allow functions to produce results that can be used in the rest of your program. Additionally, using type annotations and paying attention to warnings can help catch errors and ensure code correctness.

    +

    In this tutorial, we've covered the basics of using return values in Python functions. Return values allow functions to produce results that can be used in the rest of your program. Additionally, using type annotations and paying attention to warnings can help catch errors and ensure code correctness.

    \ No newline at end of file diff --git a/docs/python-guide/Functions/Star_and_Slash/index.html b/docs/python-guide/Functions/Star_and_Slash/index.html index 0baa5d90..0aef469c 100644 --- a/docs/python-guide/Functions/Star_and_Slash/index.html +++ b/docs/python-guide/Functions/Star_and_Slash/index.html @@ -6,10 +6,10 @@ Star_and_Slash | Python Guide - + +

    Write your description or instructions here.

    \ No newline at end of file diff --git a/docs/python-guide/Lists/Dont_Loop_Modify/index.html b/docs/python-guide/Lists/Dont_Loop_Modify/index.html index d3a20ac7..b7f49c5b 100644 --- a/docs/python-guide/Lists/Dont_Loop_Modify/index.html +++ b/docs/python-guide/Lists/Dont_Loop_Modify/index.html @@ -6,7 +6,7 @@ Looping and Modifying Lists: A Cautionary Tale | Python Guide - +

    Looping and Modifying Lists: A Cautionary Tale

    @@ -18,6 +18,6 @@

    Best Practice: Using a Temporary List​

    To avoid such issues, it's recommended to use a temporary list when making modifications to the original list during iteration. Here's how we can refactor the previous example to adhere to this best practice:

    people = ["Anna", "Bob", "Chris", "David", "Fred"]
    new_people = []

    for person in people:
    if person == "Bob":
    continue # Skip 'Bob'
    new_people.append(person)

    print("Final list:", new_people)
    -

    In this revised approach, we create a new list (new_people) to store the modified elements. We iterate through the original list (people) but perform modifications on the temporary list. As a result, we avoid altering the original list during iteration, preventing unexpected behavior. When working with lists in Python, remember the golden rule: never modify a list while looping through it. By using a temporary list for modifications, you can ensure your code behaves predictably and avoid potential bugs. Stay vigilant and follow best practices to write clean, reliable code.

    +

    In this revised approach, we create a new list (new_people) to store the modified elements. We iterate through the original list (people) but perform modifications on the temporary list. As a result, we avoid altering the original list during iteration, preventing unexpected behavior. When working with lists in Python, remember the golden rule: never modify a list while looping through it. By using a temporary list for modifications, you can ensure your code behaves predictably and avoid potential bugs. Stay vigilant and follow best practices to write clean, reliable code.

    \ No newline at end of file diff --git a/docs/python-guide/Lists/Grocery_List/index.html b/docs/python-guide/Lists/Grocery_List/index.html index 0c11b097..b05594c1 100644 --- a/docs/python-guide/Lists/Grocery_List/index.html +++ b/docs/python-guide/Lists/Grocery_List/index.html @@ -6,7 +6,7 @@ Grocery List App | Python Guide - + +
    \ No newline at end of file diff --git a/docs/python-guide/Lists/List_Comprehensions/index.html b/docs/python-guide/Lists/List_Comprehensions/index.html index 75875de2..89c6bb17 100644 --- a/docs/python-guide/Lists/List_Comprehensions/index.html +++ b/docs/python-guide/Lists/List_Comprehensions/index.html @@ -6,7 +6,7 @@ List Comprehensions Explained | Python Guide - +

    List Comprehensions Explained

    @@ -33,6 +33,6 @@

    numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    even_numbers = []
    for number in numbers:
    if number % 2 == 0:
    even_numbers.append(number)
    print(even_numbers) # Output: [2, 4, 6, 8, 10]

    With list comprehension:

    numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    even_numbers_lc = [number for number in numbers if number % 2 == 0]
    print(even_numbers_lc) # Output: [2, 4, 6, 8, 10]
    -

    List comprehensions offer a concise and readable way to create lists in Python. By leveraging their syntax, you can write more expressive and efficient code. With practice, list comprehensions will become an essential tool in your Python programming arsenal.

    +

    List comprehensions offer a concise and readable way to create lists in Python. By leveraging their syntax, you can write more expressive and efficient code. With practice, list comprehensions will become an essential tool in your Python programming arsenal.

    \ No newline at end of file diff --git a/docs/python-guide/Lists/Slicing/index.html b/docs/python-guide/Lists/Slicing/index.html index 704bf44d..ae48a4e9 100644 --- a/docs/python-guide/Lists/Slicing/index.html +++ b/docs/python-guide/Lists/Slicing/index.html @@ -6,7 +6,7 @@ Slicing in Python | Python Guide - +

    Slicing in Python

    @@ -25,6 +25,6 @@

    Reverse Slic

    Reverse a List​

    To reverse a list entirely, use [::-1]:

    # Reverse list
    reversed_numbers = numbers[::-1]
    print(reversed_numbers) # Output: [6, 5, 4, 3, 2, 1]
    -

    Slicing in Python provides a flexible and efficient way to manipulate sequences of data. By understanding slicing syntax and techniques, you can easily extract, skip, and reverse elements in lists, tuples, and strings, enhancing your programming capabilities. For more information on slicing in Python, refer to the official documentation.

    +

    Slicing in Python provides a flexible and efficient way to manipulate sequences of data. By understanding slicing syntax and techniques, you can easily extract, skip, and reverse elements in lists, tuples, and strings, enhancing your programming capabilities. For more information on slicing in Python, refer to the official documentation.

    \ No newline at end of file diff --git a/docs/python-guide/Lists/getting-started/index.html b/docs/python-guide/Lists/getting-started/index.html index febbd6e3..230ee1b8 100644 --- a/docs/python-guide/Lists/getting-started/index.html +++ b/docs/python-guide/Lists/getting-started/index.html @@ -6,9 +6,9 @@ getting-started | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Modules/Importing/index.html b/docs/python-guide/Modules/Importing/index.html index 032031ae..b49c8ab0 100644 --- a/docs/python-guide/Modules/Importing/index.html +++ b/docs/python-guide/Modules/Importing/index.html @@ -6,7 +6,7 @@ Avoiding Star Imports in Python | Python Guide - + +

    By following these practices, you can avoid namespace clashes and ensure the maintainability and reliability of your Python projects.

    \ No newline at end of file diff --git a/docs/python-guide/Modules/Libraries/index.html b/docs/python-guide/Modules/Libraries/index.html index 27a11b08..c52baddb 100644 --- a/docs/python-guide/Modules/Libraries/index.html +++ b/docs/python-guide/Modules/Libraries/index.html @@ -6,7 +6,7 @@ Python Library vs Package | Python Guide - +

    Python Library vs Package

    @@ -56,6 +56,6 @@

    nlp_toolkit/
    β”œβ”€β”€ tokenization/
    β”‚ β”œβ”€β”€ __init__.py
    β”‚ β”œβ”€β”€ tokenizer.py
    β”‚ └── stopwords.py
    β”œβ”€β”€ sentiment_analysis/
    β”‚ β”œβ”€β”€ __init__.py
    β”‚ └── analyzer.py
    β”œβ”€β”€ named_entity_recognition/
    β”‚ β”œβ”€β”€ __init__.py
    β”‚ └── recognizer.py
    └── __init__.py

    Usage:

    # Importing our custom NLP toolkit
    import nlp_toolkit

    # Using tokenization package
    from nlp_toolkit.tokenization import tokenizer
    tokens = tokenizer.tokenize(text)
    clean_tokens = tokenizer.remove_stopwords(tokens)

    # Using sentiment analysis package
    from nlp_toolkit.sentiment_analysis import analyzer
    sentiment_score = analyzer.analyze_sentiment(text)

    # Using named entity recognition package
    from nlp_toolkit.named_entity_recognition import recognizer
    entities = recognizer.extract_entities(text)
    -

    These examples demonstrate how to structure custom libraries with packages and modules, making it easier to organize and reuse code across different projects.

    +

    These examples demonstrate how to structure custom libraries with packages and modules, making it easier to organize and reuse code across different projects.

    \ No newline at end of file diff --git a/docs/python-guide/Modules/Modules/index.html b/docs/python-guide/Modules/Modules/index.html index 3a8ff949..1feccd09 100644 --- a/docs/python-guide/Modules/Modules/index.html +++ b/docs/python-guide/Modules/Modules/index.html @@ -6,7 +6,7 @@ Python Modules | Python Guide - +

    Python Modules

    @@ -38,6 +38,6 @@

    Star Imp

    Note on Performance​

    Importing specific functionality from a module does not necessarily improve memory or performance. Python still executes the entire module upon import. Importing specific parts is mainly for namespace cleanliness and code readability.

    Conclusion​

    -

    Understanding modules is crucial for organizing and reusing code effectively in Python projects. With modules, you can encapsulate functionality into separate files, making your codebase more manageable and maintainable.

    +

    Understanding modules is crucial for organizing and reusing code effectively in Python projects. With modules, you can encapsulate functionality into separate files, making your codebase more manageable and maintainable.

    \ No newline at end of file diff --git a/docs/python-guide/Modules/Packages/code/index.html b/docs/python-guide/Modules/Packages/code/index.html index bff8771f..2140be20 100644 --- a/docs/python-guide/Modules/Packages/code/index.html +++ b/docs/python-guide/Modules/Packages/code/index.html @@ -6,7 +6,7 @@ Creating and Using Python Packages | Python Guide - +

    Creating and Using Python Packages

    @@ -113,6 +113,6 @@

    from web_framework import routing, middleware, database

    # Routing Configuration
    routing.add_route('/home', home_handler)
    routing.add_route('/about', about_handler)

    # Middleware Setup
    middleware.add_middleware(authentication_middleware)
    middleware.add_middleware(logging_middleware)

    # Database Operations
    user = database.get_user_by_id(123)
    database.create_entry(new_entry)

    -

    These examples illustrate how you can organize and utilize Python packages to manage complex functionalities in various domains, including data analysis, machine learning, and web development. By encapsulating related functionality into packages, you can achieve better code organization, maintainability, and reusability in your projects.

    +

    These examples illustrate how you can organize and utilize Python packages to manage complex functionalities in various domains, including data analysis, machine learning, and web development. By encapsulating related functionality into packages, you can achieve better code organization, maintainability, and reusability in your projects.

    \ No newline at end of file diff --git a/docs/python-guide/Modules/Website_Status/index.html b/docs/python-guide/Modules/Website_Status/index.html index 5ab4e253..3bd32349 100644 --- a/docs/python-guide/Modules/Website_Status/index.html +++ b/docs/python-guide/Modules/Website_Status/index.html @@ -6,7 +6,7 @@ Website Status Project | Python Guide - +

    Website Status Project

    @@ -36,6 +36,6 @@

    ExampleLive Template (Optional)​

    The project creator used a PyCharm live template to speed up workflow, which automatically generates the main entry point syntax. This is not essential for running the project but can be useful for enhancing productivity.

    Conclusion​

    -

    This project demonstrates a simple yet effective way to check the status of a website using Python. It provides valuable insights into website health and can be further extended or customized as per specific requirements.

    +

    This project demonstrates a simple yet effective way to check the status of a website using Python. It provides valuable insights into website health and can be further extended or customized as per specific requirements.

    \ No newline at end of file diff --git a/docs/python-guide/Modules/if_name_main/index.html b/docs/python-guide/Modules/if_name_main/index.html index 9d914493..f1111960 100644 --- a/docs/python-guide/Modules/if_name_main/index.html +++ b/docs/python-guide/Modules/if_name_main/index.html @@ -6,7 +6,7 @@ README | Python Guide - +

    README

    if __name__ == "__main__"​

    @@ -28,6 +28,6 @@

    Running t
    python connections.py

    This will execute the connect() function and simulate connecting to the internet.

    Conclusion​

    -

    Using if __name__ == "__main__" is a good practice in Python scripting as it provides clarity on the intended execution flow of the script. By incorporating this construct, developers can ensure that their scripts behave as expected when run directly or imported as modules into other scripts.

    +

    Using if __name__ == "__main__" is a good practice in Python scripting as it provides clarity on the intended execution flow of the script. By incorporating this construct, developers can ensure that their scripts behave as expected when run directly or imported as modules into other scripts.

    \ No newline at end of file diff --git a/docs/python-guide/Multiprocessing/Data-Sharing-Issue/index.html b/docs/python-guide/Multiprocessing/Data-Sharing-Issue/index.html index fd9a2b3a..06e33a9f 100644 --- a/docs/python-guide/Multiprocessing/Data-Sharing-Issue/index.html +++ b/docs/python-guide/Multiprocessing/Data-Sharing-Issue/index.html @@ -6,9 +6,9 @@ Data-Sharing-Issue | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Multiprocessing/Intro/index.html b/docs/python-guide/Multiprocessing/Intro/index.html index d7f8e2f7..b112b829 100644 --- a/docs/python-guide/Multiprocessing/Intro/index.html +++ b/docs/python-guide/Multiprocessing/Intro/index.html @@ -6,7 +6,7 @@ Introduction | Python Guide - +

    Introduction

    @@ -45,6 +45,6 @@

    Conclusion​

    Understanding the differences between asynchronous programming, multithreading, and multiprocessing is crucial for optimizing the performance of Python applications. Asynchronous programming excels in handling I/O-bound tasks without blocking the main thread. Multithreading is also effective for I/O-bound tasks but is limited by the GIL for CPU-bound tasks. Multiprocessing, on the other hand, provides true parallelism by running multiple processes, each with its own memory space and GIL instance, making it ideal for CPU-bound tasks.

    -

    In subsequent lessons, we will delve deeper into practical applications and advanced techniques for utilizing the multiprocessing module in Python, enabling you to harness the full power of modern multi-core processors.

    +

    In subsequent lessons, we will delve deeper into practical applications and advanced techniques for utilizing the multiprocessing module in Python, enabling you to harness the full power of modern multi-core processors.

    \ No newline at end of file diff --git a/docs/python-guide/Multiprocessing/Lock-Semaphores/index.html b/docs/python-guide/Multiprocessing/Lock-Semaphores/index.html index 87524823..edfac7f5 100644 --- a/docs/python-guide/Multiprocessing/Lock-Semaphores/index.html +++ b/docs/python-guide/Multiprocessing/Lock-Semaphores/index.html @@ -6,9 +6,9 @@ Lock-Semaphores | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Multiprocessing/Pipes/index.html b/docs/python-guide/Multiprocessing/Pipes/index.html index b748b09e..24dd04ff 100644 --- a/docs/python-guide/Multiprocessing/Pipes/index.html +++ b/docs/python-guide/Multiprocessing/Pipes/index.html @@ -6,9 +6,9 @@ Pipes | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Multiprocessing/Pools-Map/index.html b/docs/python-guide/Multiprocessing/Pools-Map/index.html index 628e80b4..a0076dca 100644 --- a/docs/python-guide/Multiprocessing/Pools-Map/index.html +++ b/docs/python-guide/Multiprocessing/Pools-Map/index.html @@ -6,7 +6,7 @@ Process Pools | Python Guide - + +
    \ No newline at end of file diff --git a/docs/python-guide/Multiprocessing/Pools-Multiple-Functions/index.html b/docs/python-guide/Multiprocessing/Pools-Multiple-Functions/index.html index a0c8744f..da3728d3 100644 --- a/docs/python-guide/Multiprocessing/Pools-Multiple-Functions/index.html +++ b/docs/python-guide/Multiprocessing/Pools-Multiple-Functions/index.html @@ -6,9 +6,9 @@ Pools-Multiple-Functions | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Multiprocessing/Pools-Starmap/index.html b/docs/python-guide/Multiprocessing/Pools-Starmap/index.html index 1c5e78fb..73955e64 100644 --- a/docs/python-guide/Multiprocessing/Pools-Starmap/index.html +++ b/docs/python-guide/Multiprocessing/Pools-Starmap/index.html @@ -6,9 +6,9 @@ Pools-Starmap | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Multiprocessing/Processes/index.html b/docs/python-guide/Multiprocessing/Processes/index.html index ca96a7df..0cd34bd0 100644 --- a/docs/python-guide/Multiprocessing/Processes/index.html +++ b/docs/python-guide/Multiprocessing/Processes/index.html @@ -6,7 +6,7 @@ Multiprocessing | Python Guide - + +

    By mastering these concepts, you will be well-equipped to leverage multiprocessing to its fullest potential in Python applications.

    \ No newline at end of file diff --git a/docs/python-guide/Multiprocessing/Queues/index.html b/docs/python-guide/Multiprocessing/Queues/index.html index 2ead5fca..04b81af1 100644 --- a/docs/python-guide/Multiprocessing/Queues/index.html +++ b/docs/python-guide/Multiprocessing/Queues/index.html @@ -6,9 +6,9 @@ Queues | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Multithreading/Daemon-Threads/index.html b/docs/python-guide/Multithreading/Daemon-Threads/index.html index fb3a718f..8b91fb08 100644 --- a/docs/python-guide/Multithreading/Daemon-Threads/index.html +++ b/docs/python-guide/Multithreading/Daemon-Threads/index.html @@ -6,9 +6,9 @@ Daemon-Threads | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Multithreading/Locks/index.html b/docs/python-guide/Multithreading/Locks/index.html index 9557a0a9..09eb0a60 100644 --- a/docs/python-guide/Multithreading/Locks/index.html +++ b/docs/python-guide/Multithreading/Locks/index.html @@ -6,9 +6,9 @@ Locks | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Multithreading/Race-Conditions/index.html b/docs/python-guide/Multithreading/Race-Conditions/index.html index 80c3ccf8..81001efe 100644 --- a/docs/python-guide/Multithreading/Race-Conditions/index.html +++ b/docs/python-guide/Multithreading/Race-Conditions/index.html @@ -6,9 +6,9 @@ Race-Conditions | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Multithreading/Semaphores/index.html b/docs/python-guide/Multithreading/Semaphores/index.html index 3a9a3120..a9cd02b4 100644 --- a/docs/python-guide/Multithreading/Semaphores/index.html +++ b/docs/python-guide/Multithreading/Semaphores/index.html @@ -6,9 +6,9 @@ Semaphores | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Multithreading/Threads/index.html b/docs/python-guide/Multithreading/Threads/index.html index 43e2f1df..a291697b 100644 --- a/docs/python-guide/Multithreading/Threads/index.html +++ b/docs/python-guide/Multithreading/Threads/index.html @@ -6,7 +6,7 @@ Threads | Python Guide - +

    Threads

    @@ -37,6 +37,6 @@

    Running Threads​

    Create threads and start them:

    # Create threads
    thread1 = threading.Thread(target=process_data, kwargs={"name": "Thread 1", "count": 10})
    thread2 = threading.Thread(target=process_data, kwargs={"name": "Thread 2", "count": 5})

    # Start threads
    thread1.start()
    time.sleep(3) # Wait for 3 seconds before starting the second thread
    thread2.start()

    # Wait for threads to finish
    thread1.join()
    thread2.join()
    -

    By using threading, tasks can appear to run simultaneously, although they execute concurrently. In this tutorial, we covered the basics of multithreading in Python, including the Global Interpreter Lock, concurrency vs. parallelism, and the differences between threading and async IO. We also created a simple multithreaded program using the threading module. Multithreading can be a powerful tool for speeding up programs, especially when dealing with I/O-bound tasks. However, it's essential to understand its limitations and use cases to leverage its benefits effectively. Experiment with multithreading in your projects to see its impact on performance and efficiency. Happy coding!

    +

    By using threading, tasks can appear to run simultaneously, although they execute concurrently. In this tutorial, we covered the basics of multithreading in Python, including the Global Interpreter Lock, concurrency vs. parallelism, and the differences between threading and async IO. We also created a simple multithreaded program using the threading module. Multithreading can be a powerful tool for speeding up programs, especially when dealing with I/O-bound tasks. However, it's essential to understand its limitations and use cases to leverage its benefits effectively. Experiment with multithreading in your projects to see its impact on performance and efficiency. Happy coding!

    \ No newline at end of file diff --git a/docs/python-guide/Multithreading/With-Lock-Semaphore/index.html b/docs/python-guide/Multithreading/With-Lock-Semaphore/index.html index 152e62bd..dbce4210 100644 --- a/docs/python-guide/Multithreading/With-Lock-Semaphore/index.html +++ b/docs/python-guide/Multithreading/With-Lock-Semaphore/index.html @@ -6,9 +6,9 @@ With-Lock-Semaphore | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/OOP/@abstractmethod/index.html b/docs/python-guide/OOP/@abstractmethod/index.html index ebb903d9..9e4b7ff1 100644 --- a/docs/python-guide/OOP/@abstractmethod/index.html +++ b/docs/python-guide/OOP/@abstractmethod/index.html @@ -6,7 +6,7 @@ Abstract Methods and Classes | Python Guide - +

    Abstract Methods and Classes

    @@ -37,6 +37,6 @@

    class Appliance(ABC):
    def __init__(self, brand, version_number):
    self.brand = brand
    self.version_number = version_number
    self.is_turned_on = False

    @abstractmethod
    def turn_on(self):
    raise NotImplementedError("Subclasses must implement this method")

    @abstractmethod
    def turn_off(self):
    raise NotImplementedError("Subclasses must implement this method")

    By raising a NotImplementedError, we ensure that any subclass must provide a concrete implementation of the abstract methods, reinforcing the contract specified by the abstract class.

    Conclusion​

    -

    Abstract methods and classes in Python provide a powerful way to enforce a consistent interface across different implementations. By using the abc module, developers can define blueprints for their classes, ensuring that derived classes adhere to a specified structure. This tutorial has demonstrated how to create abstract classes, implement abstract methods in concrete classes, and test these implementations. These principles are fundamental for designing robust and maintainable object-oriented software.

    +

    Abstract methods and classes in Python provide a powerful way to enforce a consistent interface across different implementations. By using the abc module, developers can define blueprints for their classes, ensuring that derived classes adhere to a specified structure. This tutorial has demonstrated how to create abstract classes, implement abstract methods in concrete classes, and test these implementations. These principles are fundamental for designing robust and maintainable object-oriented software.

    \ No newline at end of file diff --git a/docs/python-guide/OOP/@classmethod/index.html b/docs/python-guide/OOP/@classmethod/index.html index 05fc1a06..4aac8813 100644 --- a/docs/python-guide/OOP/@classmethod/index.html +++ b/docs/python-guide/OOP/@classmethod/index.html @@ -6,7 +6,7 @@ Classes and Instances | Python Guide - + +

    Understanding the @classmethod decorator in Python is crucial for effective use of object-oriented programming techniques. Class methods provide a way to operate on the class itself rather than on instances, enabling functionalities like factory methods and class-level attribute management. This tutorial covered the basics of defining and using class methods, highlighting their use cases and differences from other types of methods in Python.

    \ No newline at end of file diff --git a/docs/python-guide/OOP/@staticmethod/index.html b/docs/python-guide/OOP/@staticmethod/index.html index 5c56fda4..f4f96ab7 100644 --- a/docs/python-guide/OOP/@staticmethod/index.html +++ b/docs/python-guide/OOP/@staticmethod/index.html @@ -6,7 +6,7 @@ @staticmethod | Python Guide - +

    @staticmethod

    @@ -48,6 +48,6 @@

    Exa

    Here’s how the previous example could be modified to use class methods if there was a need to access class-level attributes:

    class MathOperations:
    operation_count = 0

    @classmethod
    def increment_operation_count(cls):
    cls.operation_count += 1

    @classmethod
    def add(cls, a, b):
    cls.increment_operation_count()
    return a + b

    @classmethod
    def subtract(cls, a, b):
    cls.increment_operation_count()
    return a - b

    @classmethod
    def multiply(cls, a, b):
    cls.increment_operation_count()
    return a * b

    @classmethod
    def divide(cls, a, b):
    cls.increment_operation_count()
    if b == 0:
    raise ValueError("Cannot divide by zero")
    return a / b

    # Usage
    result_add = MathOperations.add(5, 3)
    result_subtract = MathOperations.subtract(5, 3)
    result_multiply = MathOperations.multiply(5, 3)
    result_divide = MathOperations.divide(5, 3)

    print(result_add) # Output: 8
    print(result_subtract) # Output: 2
    print(result_multiply) # Output: 15
    print(result_divide) # Output: 1.6666666666666667
    print(MathOperations.operation_count) # Output: 4

    Conclusion​

    -

    The @staticmethod decorator in Python is a valuable tool for defining methods that do not need access to class or instance-specific data. It promotes code organization and clarity when used appropriately. However, it is essential to understand its limitations and consider when @classmethod might be a more suitable alternative. By thoughtfully applying these concepts, developers can create more maintainable and logical code structures.

    +

    The @staticmethod decorator in Python is a valuable tool for defining methods that do not need access to class or instance-specific data. It promotes code organization and clarity when used appropriately. However, it is essential to understand its limitations and consider when @classmethod might be a more suitable alternative. By thoughtfully applying these concepts, developers can create more maintainable and logical code structures.

    \ No newline at end of file diff --git a/docs/python-guide/OOP/Attributes_Class_and_Instance/index.html b/docs/python-guide/OOP/Attributes_Class_and_Instance/index.html index 0281f0c4..c94040a8 100644 --- a/docs/python-guide/OOP/Attributes_Class_and_Instance/index.html +++ b/docs/python-guide/OOP/Attributes_Class_and_Instance/index.html @@ -6,7 +6,7 @@ Class and Instance Attributes | Python Guide - +

    Class and Instance Attributes

    @@ -57,6 +57,6 @@

    Pra

    Example: Combining Class and Instance Attributes​

    class Employee:
    # Class attribute
    company_name = "TechCorp"

    def __init__(self, name, position):
    self.name = name # Instance attribute
    self.position = position # Instance attribute

    # Creating instances
    emp1 = Employee("Alice", "Developer")
    emp2 = Employee("Bob", "Manager")

    # Accessing class and instance attributes
    print(emp1.company_name) # Output: TechCorp
    print(emp2.company_name) # Output: TechCorp

    print(emp1.name) # Output: Alice
    print(emp1.position) # Output: Developer

    print(emp2.name) # Output: Bob
    print(emp2.position) # Output: Manager

    # Modifying class attribute
    Employee.company_name = "Innovatech"

    print(emp1.company_name) # Output: Innovatech
    print(emp2.company_name) # Output: Innovatech

    In this example, company_name is a class attribute shared among all instances, while name and position are instance attributes unique to each Employee instance.

    -

    Understanding and correctly using class and instance attributes is fundamental to writing clear and maintainable object-oriented code in Python. This distinction allows developers to design classes that effectively encapsulate both shared and unique properties of the objects they model.

    +

    Understanding and correctly using class and instance attributes is fundamental to writing clear and maintainable object-oriented code in Python. This distinction allows developers to design classes that effectively encapsulate both shared and unique properties of the objects they model.

    \ No newline at end of file diff --git a/docs/python-guide/OOP/Classes_and_Objects/index.html b/docs/python-guide/OOP/Classes_and_Objects/index.html index 101b29ac..f2ab595f 100644 --- a/docs/python-guide/OOP/Classes_and_Objects/index.html +++ b/docs/python-guide/OOP/Classes_and_Objects/index.html @@ -6,7 +6,7 @@ Classes and Objects | Python Guide - + +

    In this tutorial, we have learned the basics of classes and objects in Python by creating a Car class. We have seen how to define a class, initialize objects, and use methods to perform actions on those objects. Understanding these fundamental concepts is crucial for effective programming in Python, as they form the basis for more advanced topics in object-oriented programming.

    \ No newline at end of file diff --git a/docs/python-guide/OOP/Dunder_Methods/index.html b/docs/python-guide/OOP/Dunder_Methods/index.html index 150e3ebe..3f469591 100644 --- a/docs/python-guide/OOP/Dunder_Methods/index.html +++ b/docs/python-guide/OOP/Dunder_Methods/index.html @@ -6,7 +6,7 @@ Dunder Methods | Python Guide - +

    Dunder Methods

    @@ -34,6 +34,6 @@

    Full Imp

    Below is the full implementation of our Book class with the __init__, __len__, and __add__ methods:

    class Book:
    def __init__(self, title: str, pages: int) -> None:
    self.title = title
    self.pages = pages

    def __len__(self) -> int:
    return self.pages

    def __add__(self, other: 'Book') -> 'Book':
    combined_title = f"{self.title} and {other.title}"
    combined_pages = self.pages + other.pages
    return Book(combined_title, combined_pages)

    if __name__ == "__main__":
    pi_daily = Book("Pi Daily", 100)
    harry_potter = Book("Harry Potter", 340)

    print(len(pi_daily)) # Output: 100
    print(len(harry_potter)) # Output: 340

    combined_books = pi_daily + harry_potter
    print(combined_books.title) # Output: Pi Daily and Harry Potter
    print(combined_books.pages) # Output: 440

    Conclusion​

    -

    Dunder methods are powerful tools in Python that allow developers to customize and extend the behavior of classes. By implementing methods such as __init__, __len__, and __add__, we can create more intuitive and functional objects. Understanding and utilizing these methods effectively can greatly enhance the design and usability of your classes.

    +

    Dunder methods are powerful tools in Python that allow developers to customize and extend the behavior of classes. By implementing methods such as __init__, __len__, and __add__, we can create more intuitive and functional objects. Understanding and utilizing these methods effectively can greatly enhance the design and usability of your classes.

    \ No newline at end of file diff --git a/docs/python-guide/OOP/Inheritance/index.html b/docs/python-guide/OOP/Inheritance/index.html index a201435a..024ac6d8 100644 --- a/docs/python-guide/OOP/Inheritance/index.html +++ b/docs/python-guide/OOP/Inheritance/index.html @@ -6,7 +6,7 @@ Inheritance | Python Guide - +

    Inheritance

    @@ -41,6 +41,6 @@

    PolymorphismPolymorphism allows objects of different classes to be treated as objects of a common super class. It is achieved through method overriding and interfaces.

    class Cat(Animal):
    def make_sound(self):
    print("Cat meows")

    def make_animal_sound(animal):
    animal.make_sound()

    # Demonstrating polymorphism
    make_animal_sound(generic_animal)
    make_animal_sound(my_dog)
    make_animal_sound(Cat())

    Conclusion​

    -

    Object-Oriented Programming in Python is a powerful paradigm that enhances code organization, reusability, and scalability. Inheritance is a fundamental concept in OOP that allows for hierarchical class relationships, promoting code reuse and extending functionality. This tutorial has covered the basics of classes, objects, inheritance, method overriding, the super() function, encapsulation, and polymorphism, providing a comprehensive understanding of these concepts in Python.

    +

    Object-Oriented Programming in Python is a powerful paradigm that enhances code organization, reusability, and scalability. Inheritance is a fundamental concept in OOP that allows for hierarchical class relationships, promoting code reuse and extending functionality. This tutorial has covered the basics of classes, objects, inheritance, method overriding, the super() function, encapsulation, and polymorphism, providing a comprehensive understanding of these concepts in Python.

    \ No newline at end of file diff --git a/docs/python-guide/OOP/Methods_Functions/index.html b/docs/python-guide/OOP/Methods_Functions/index.html index 744b75e4..25006f4c 100644 --- a/docs/python-guide/OOP/Methods_Functions/index.html +++ b/docs/python-guide/OOP/Methods_Functions/index.html @@ -6,7 +6,7 @@ Functions and Methods | Python Guide - +

    Functions and Methods

    @@ -64,6 +64,6 @@

    Conclusion​

    Functions and methods are crucial components of Python programming. Functions provide modularity and reusability of code independently of objects, while methods are functions tied to objects, enabling object-oriented programming. Understanding their differences and appropriate use cases enhances the ability to write clean, efficient, and maintainable code.

    -

    By adhering to these principles and utilizing functions and methods correctly, programmers can create robust and scalable applications.

    +

    By adhering to these principles and utilizing functions and methods correctly, programmers can create robust and scalable applications.

    \ No newline at end of file diff --git a/docs/python-guide/OOP/Name_Mangling/index.html b/docs/python-guide/OOP/Name_Mangling/index.html index 80adcbd8..0aecb05b 100644 --- a/docs/python-guide/OOP/Name_Mangling/index.html +++ b/docs/python-guide/OOP/Name_Mangling/index.html @@ -6,7 +6,7 @@ Name Mangling | Python Guide - +

    Name Mangling

    @@ -50,6 +50,6 @@

    ConclusionName mangling is a useful feature in Python for ensuring data encapsulation and preventing name clashes. By altering the names of class attributes and methods in a unique way, it makes them harder to access from outside the class, while still being accessible within the class using their mangled names.

    Code Summary​

    class Car:
    __year = 2000

    def __init__(self, brand: str, fuel_type: str) -> None:
    self.__brand = brand
    self.__fuel_type = fuel_type
    self.var = "red"

    def drive(self) -> None:
    print(f"Driving {self.__brand}")

    def __get_description(self) -> None:
    print(f"{self.__brand} has {self.__fuel_type}")

    def display_color(self) -> None:
    print(f"{self.__brand} is {self.var.capitalize()}")

    class Toyota(Car):
    def __init__(self, fuel_type: str) -> None:
    super().__init__("Toyota", fuel_type)
    self.var = 100

    def get_year(self) -> int:
    return self._Car__year

    class Honda(Car):
    def get_year(self) -> int:
    try:
    return self.__year
    except AttributeError:
    return self._Car__year

    if __name__ == "__main__":
    car = Car("Toyota", "Electric")
    car.drive()
    print(car._Car__brand)
    car._Car__get_description()

    toyota = Toyota("Electric")
    toyota.display_color()
    print(toyota.get_year())

    honda = Honda("Petrol")
    print(honda.get_year())
    -

    This tutorial highlights the importance of name mangling in Python and provides practical examples of its application and benefits.

    +

    This tutorial highlights the importance of name mangling in Python and provides practical examples of its application and benefits.

    \ No newline at end of file diff --git a/docs/python-guide/OOP/OOP/index.html b/docs/python-guide/OOP/OOP/index.html index f3fdcbb7..65781c2c 100644 --- a/docs/python-guide/OOP/OOP/index.html +++ b/docs/python-guide/OOP/OOP/index.html @@ -6,7 +6,7 @@ Object Oriented Programming | Python Guide - + +

    Here, person1 is an object of the Person class with the specified attributes.

    \ No newline at end of file diff --git a/docs/python-guide/OOP/eq__()/index.html b/docs/python-guide/OOP/eq__()/index.html index 3e14ef87..2a9f4fbf 100644 --- a/docs/python-guide/OOP/eq__()/index.html +++ b/docs/python-guide/OOP/eq__()/index.html @@ -6,7 +6,7 @@ __eq__ Method | Python Guide - +

    __eq__ Method

    @@ -43,6 +43,6 @@

    Equal

    Main Block​

    The if __name__ == "__main__": block ensures that the code inside it runs only when the script is executed directly, not when imported as a module. Within this block, two Car objects are created with the same attributes, and their equality is tested using the == operator. Due to the __eq__ method, this comparison returns True.

    Conclusion​

    -

    By implementing the __eq__ method, we can control how objects of a class are compared, enabling meaningful equality checks based on object attributes rather than memory addresses. This tutorial demonstrated how to define and use the __eq__ method in Python with a practical example involving a Car class. This approach can be extended to any class where custom comparison logic is needed.

    +

    By implementing the __eq__ method, we can control how objects of a class are compared, enabling meaningful equality checks based on object attributes rather than memory addresses. This tutorial demonstrated how to define and use the __eq__ method in Python with a practical example involving a Car class. This approach can be extended to any class where custom comparison logic is needed.

    \ No newline at end of file diff --git a/docs/python-guide/OOP/init/index.html b/docs/python-guide/OOP/init/index.html index 8fb694ed..c22b27dc 100644 --- a/docs/python-guide/OOP/init/index.html +++ b/docs/python-guide/OOP/init/index.html @@ -6,7 +6,7 @@ __init__ Method | Python Guide - +

    __init__ Method

    @@ -31,6 +31,6 @@

    class MyClass:
    def __init__(self, my_list=[]):
    self.my_list = my_list

    To prevent shared mutable objects among instances, use immutable objects as default values or initialize mutable objects within the __init__ method.

    class MyClass:
    def __init__(self, my_list=None):
    self.my_list = my_list if my_list is not None else []
    -

    Understanding the __init__ method is fundamental to effective object-oriented programming in Python. It facilitates the initialization of object attributes, setting default values, and performing necessary setup actions when creating instances of a class. By grasping the concepts presented in this tutorial, you'll be better equipped to design and implement Python classes with proper initialization logic.

    +

    Understanding the __init__ method is fundamental to effective object-oriented programming in Python. It facilitates the initialization of object attributes, setting default values, and performing necessary setup actions when creating instances of a class. By grasping the concepts presented in this tutorial, you'll be better equipped to design and implement Python classes with proper initialization logic.

    \ No newline at end of file diff --git a/docs/python-guide/OOP/self/index.html b/docs/python-guide/OOP/self/index.html index d984cc8b..d9b2e9f1 100644 --- a/docs/python-guide/OOP/self/index.html +++ b/docs/python-guide/OOP/self/index.html @@ -6,7 +6,7 @@ self Parameter | Python Guide - +

    self Parameter

    @@ -55,6 +55,6 @@

    Customizing
    class Fruit:
    def __init__(this, name: str, grams: float):
    this.name = name
    this.grams = grams

    def eat(this):
    print(f"Eating {this.grams}g of {this.name}")

    In this example, we used this instead of self. While functionally equivalent, this breaks the convention and should be avoided for the sake of code readability and maintainability.

    Conclusion​

    -

    The self parameter is essential for defining instance methods and variables within a class. It allows each instance to maintain its own state and behavior. Adhering to the convention of using self enhances code readability and consistency, facilitating better collaboration and maintenance. By understanding and utilizing self correctly, you can effectively implement object-oriented principles in your Python programs.

    +

    The self parameter is essential for defining instance methods and variables within a class. It allows each instance to maintain its own state and behavior. Adhering to the convention of using self enhances code readability and consistency, facilitating better collaboration and maintenance. By understanding and utilizing self correctly, you can effectively implement object-oriented principles in your Python programs.

    \ No newline at end of file diff --git a/docs/python-guide/OOP/str()_repr()/index.html b/docs/python-guide/OOP/str()_repr()/index.html index d37576e3..f3ac8992 100644 --- a/docs/python-guide/OOP/str()_repr()/index.html +++ b/docs/python-guide/OOP/str()_repr()/index.html @@ -6,7 +6,7 @@ str() and repr() | Python Guide - +
    +

    Implementing both methods where appropriate will enhance the readability and maintainability of your classes.

    \ No newline at end of file diff --git a/docs/python-guide/OOP/super()/index.html b/docs/python-guide/OOP/super()/index.html index 45422524..5acd215c 100644 --- a/docs/python-guide/OOP/super()/index.html +++ b/docs/python-guide/OOP/super()/index.html @@ -6,7 +6,7 @@ super() | Python Guide - + +

    The super() function in Python is a powerful feature for managing inheritance hierarchies, ensuring that parent class methods are called in a controlled and predictable manner. By understanding and correctly using super(), developers can create robust and maintainable OOP designs, especially in complex inheritance scenarios.

    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Assertions/index.html b/docs/python-guide/Python_Basics/Assertions/index.html index eb6d7b40..8d4fcbd6 100644 --- a/docs/python-guide/Python_Basics/Assertions/index.html +++ b/docs/python-guide/Python_Basics/Assertions/index.html @@ -6,9 +6,9 @@ Assertions | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Booleans/index.html b/docs/python-guide/Python_Basics/Booleans/index.html index 62af29b7..45409db8 100644 --- a/docs/python-guide/Python_Basics/Booleans/index.html +++ b/docs/python-guide/Python_Basics/Booleans/index.html @@ -6,7 +6,7 @@ Boolean Data Type | Python Guide - + +

    In this example, the program checks whether is_connected is True. If true, it prints "There is internet"; otherwise, it prints "No internet connection."

    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Comments/index.html b/docs/python-guide/Python_Basics/Comments/index.html index dabf3ffe..7fdf342e 100644 --- a/docs/python-guide/Python_Basics/Comments/index.html +++ b/docs/python-guide/Python_Basics/Comments/index.html @@ -6,7 +6,7 @@ Commenting | Python Guide - +

    Commenting

    @@ -30,6 +30,6 @@

    2
    def example_function():
    # This prints a default message
    print("Hello, World!")

    # Uncomment the line below to test an alternative message
    # print("Ciao Bella!")

    3. Reminder for Future Reference​

    # Reminder: This section handles user authentication
    def authenticate_user(username, password):
    # Implementation details...
    pass
    -

    Remember, the goal is to write code that is clean and understandable without relying heavily on comments. Use comments thoughtfully and strategically to enhance code comprehension.

    +

    Remember, the goal is to write code that is clean and understandable without relying heavily on comments. Use comments thoughtfully and strategically to enhance code comprehension.

    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Comparing_Floats/index.html b/docs/python-guide/Python_Basics/Comparing_Floats/index.html index cd2421cd..59065757 100644 --- a/docs/python-guide/Python_Basics/Comparing_Floats/index.html +++ b/docs/python-guide/Python_Basics/Comparing_Floats/index.html @@ -6,7 +6,7 @@ Floating Point Precision | Python Guide - +

    Floating Point Precision

    @@ -38,6 +38,6 @@

    Conclusion​

    Floating-point arithmetic poses significant challenges due to its inherent precision limitations, making direct comparison of floating-point numbers unreliable. The math.isclose function in Python offers a scientifically rigorous method for performing these comparisons by allowing developers to specify both relative and absolute tolerances. By carefully selecting these tolerances based on the specific requirements of your application, it is possible to perform reliable and accurate floating-point comparisons, thereby mitigating the risks associated with floating-point precision errors in Python.

    -

    This approach should be employed whenever precision issues are expected, particularly in critical applications where numerical accuracy is paramount.

    +

    This approach should be employed whenever precision issues are expected, particularly in critical applications where numerical accuracy is paramount.

    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Constants/index.html b/docs/python-guide/Python_Basics/Constants/index.html index 3eab3e52..e90be8b0 100644 --- a/docs/python-guide/Python_Basics/Constants/index.html +++ b/docs/python-guide/Python_Basics/Constants/index.html @@ -6,7 +6,7 @@ Constants | Python Guide - + +
    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Data_Types/index.html b/docs/python-guide/Python_Basics/Data_Types/index.html index 869b2948..a28f1d0a 100644 --- a/docs/python-guide/Python_Basics/Data_Types/index.html +++ b/docs/python-guide/Python_Basics/Data_Types/index.html @@ -6,7 +6,7 @@ Data Types | Python Guide - + +
    frozen_set = frozenset([1, 2, 3])
    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Dictionaries/index.html b/docs/python-guide/Python_Basics/Dictionaries/index.html index 6c2a548c..df2c095a 100644 --- a/docs/python-guide/Python_Basics/Dictionaries/index.html +++ b/docs/python-guide/Python_Basics/Dictionaries/index.html @@ -6,7 +6,7 @@ Dictionary | Python Guide - + +

    These basic operations should give you a good start with Python dictionaries. As you progress, you'll discover more advanced use cases and applications for this versatile data structure. Happy coding!

    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Doc_Strings/index.html b/docs/python-guide/Python_Basics/Doc_Strings/index.html index 5b47087d..a0b4448c 100644 --- a/docs/python-guide/Python_Basics/Doc_Strings/index.html +++ b/docs/python-guide/Python_Basics/Doc_Strings/index.html @@ -6,9 +6,9 @@ Doc Strings | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/F-Strings/index.html b/docs/python-guide/Python_Basics/F-Strings/index.html index 95083042..b3d263e1 100644 --- a/docs/python-guide/Python_Basics/F-Strings/index.html +++ b/docs/python-guide/Python_Basics/F-Strings/index.html @@ -6,9 +6,9 @@ F-Strings | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Floats/index.html b/docs/python-guide/Python_Basics/Floats/index.html index e833d3af..9ab8d615 100644 --- a/docs/python-guide/Python_Basics/Floats/index.html +++ b/docs/python-guide/Python_Basics/Floats/index.html @@ -6,7 +6,7 @@ Floats | Python Guide - + +
    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Frozensets/index.html b/docs/python-guide/Python_Basics/Frozensets/index.html index ae92222d..74c3ad10 100644 --- a/docs/python-guide/Python_Basics/Frozensets/index.html +++ b/docs/python-guide/Python_Basics/Frozensets/index.html @@ -6,7 +6,7 @@ Frozen Sets | Python Guide - +

    Frozen Sets

    @@ -20,6 +20,6 @@

    Immutable N
    # Attempting to add an element to a frozen set
    try:
    frozen_set.add("Alice")
    except AttributeError as e:
    print(f"AttributeError: {e}")

    The above code will raise an AttributeError since adding elements is not supported for frozen sets.

    Use Cases​

    -

    Frozen sets are particularly useful when you want to ensure that your data remains unchanged throughout the execution of your code. If you know that your data won't be modified, using a frozen set can provide additional safety and prevent unintended alterations. In conclusion, frozen sets in Python are identical to normal sets in most aspects, with the key difference being their immutability. They are a niche data type that may not be used frequently, but understanding them can be valuable in situations where data integrity is paramount. Consider using frozen sets when you want assurance that your data remains constant throughout your program.

    +

    Frozen sets are particularly useful when you want to ensure that your data remains unchanged throughout the execution of your code. If you know that your data won't be modified, using a frozen set can provide additional safety and prevent unintended alterations. In conclusion, frozen sets in Python are identical to normal sets in most aspects, with the key difference being their immutability. They are a niche data type that may not be used frequently, but understanding them can be valuable in situations where data integrity is paramount. Consider using frozen sets when you want assurance that your data remains constant throughout your program.

    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Global/index.html b/docs/python-guide/Python_Basics/Global/index.html index eb390afa..42ac75ec 100644 --- a/docs/python-guide/Python_Basics/Global/index.html +++ b/docs/python-guide/Python_Basics/Global/index.html @@ -6,9 +6,9 @@ Global | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Integers/index.html b/docs/python-guide/Python_Basics/Integers/index.html index 627a8b6f..2b688e9d 100644 --- a/docs/python-guide/Python_Basics/Integers/index.html +++ b/docs/python-guide/Python_Basics/Integers/index.html @@ -6,12 +6,12 @@ Integer Data Type | Python Guide - +

    Integer Data Type

    An integer in Python represents any whole number. It can be positive, negative, or zero.

    Examples​

    -
    # Creating integers
    age = 30 # 30 is a whole number
    money = 100 # 100 is a whole number
    self_esteem = -50 # -50 is a whole number, even if negative

    # Performing mathematical operations
    a = 5
    b = 10

    # Addition
    sum_result = a + b # Output: 15

    # Subtraction
    difference = a - b # Output: -5

    # Multiplication
    product = a * b # Output: 50

    # Division
    quotient = a / b # Output: 0.5 (Note: This result is a float)

    # Checking the type after division
    print(type(quotient)) # Output: <class 'float'>
    +
    # Creating integers
    age = 30 # 30 is a whole number
    money = 100 # 100 is a whole number
    self_esteem = -50 # -50 is a whole number, even if negative

    # Performing mathematical operations
    a = 5
    b = 10

    # Addition
    sum_result = a + b # Output: 15

    # Subtraction
    difference = a - b # Output: -5

    # Multiplication
    product = a * b # Output: 50

    # Division
    quotient = a / b # Output: 0.5 (Note: This result is a float)

    # Checking the type after division
    print(type(quotient)) # Output: <class 'float'>
    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Lists/index.html b/docs/python-guide/Python_Basics/Lists/index.html index 77b43d28..3f81f1b6 100644 --- a/docs/python-guide/Python_Basics/Lists/index.html +++ b/docs/python-guide/Python_Basics/Lists/index.html @@ -6,7 +6,7 @@ Lists | Python Guide - + +
    my_list.clear()
    # Result: []
    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Mad_Libs_Project/index.html b/docs/python-guide/Python_Basics/Mad_Libs_Project/index.html index 60521258..af20d065 100644 --- a/docs/python-guide/Python_Basics/Mad_Libs_Project/index.html +++ b/docs/python-guide/Python_Basics/Mad_Libs_Project/index.html @@ -6,7 +6,7 @@ Mad Libs Game | Python Guide - +

    Mad Libs Game

    @@ -23,6 +23,6 @@

    User InputStory Generation​

    # Define variables
    name = input("Enter a name: ")
    noun_a = input("Enter a noun: ")
    # ... (other variables)

    # Create the story using formatted strings
    story = f"""
    {'-' * 30}
    This is a story about {name}, a strong and beautiful {noun_a} who loved to {verb_a}.
    {name} once {verb_b} and won a {noun_b} as a prize. Isn't that incredible?
    Today, {name} is {int(number_a) + int(number_b)} years old and has retired from all adventures,
    but the story will live on forever.
    {'-' * 30}
    """

    # Print the story
    print(story)

    Example Run​

    -
    # Example run with user input
    name = "Bob"
    noun_a = "apple"
    # ... (other variables)

    # Print the generated story
    print(story)
    +
    # Example run with user input
    name = "Bob"
    noun_a = "apple"
    # ... (other variables)

    # Print the generated story
    print(story)
    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/None/index.html b/docs/python-guide/Python_Basics/None/index.html index d97397b6..2700723c 100644 --- a/docs/python-guide/Python_Basics/None/index.html +++ b/docs/python-guide/Python_Basics/None/index.html @@ -6,7 +6,7 @@ None Type | Python Guide - +

    None Type

    @@ -20,6 +20,6 @@

    Ex

    Optional Values​

    The None type is often used in defining optional values, indicating that a variable may or may not have a value.

    # Example of an optional value
    possible_user: str or None = users.get(3)
    print(possible_user) # Output: None (if key doesn't exist) or a string (if key exists)
    -

    In this example, possible_user is declared as a string or None type, and it can hold either a string or None value, depending on the result of the get method. These are just basic examples, and you will encounter the None type frequently throughout your Python journey. It plays a crucial role in handling cases where the absence of a value needs to be explicitly represented.

    +

    In this example, possible_user is declared as a string or None type, and it can hold either a string or None value, depending on the result of the get method. These are just basic examples, and you will encounter the None type frequently throughout your Python journey. It plays a crucial role in handling cases where the absence of a value needs to be explicitly represented.

    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Nonlocal/index.html b/docs/python-guide/Python_Basics/Nonlocal/index.html index db87bfb9..af554e03 100644 --- a/docs/python-guide/Python_Basics/Nonlocal/index.html +++ b/docs/python-guide/Python_Basics/Nonlocal/index.html @@ -6,9 +6,9 @@ Nonlocal | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Operators/index.html b/docs/python-guide/Python_Basics/Operators/index.html index 03f76fd9..815ec9df 100644 --- a/docs/python-guide/Python_Basics/Operators/index.html +++ b/docs/python-guide/Python_Basics/Operators/index.html @@ -6,7 +6,7 @@ Numeric Operations | Python Guide - +

    Numeric Operations

    @@ -49,6 +49,6 @@

    Using The or operator checks that at least one expression evaluates to true. In this example, it doesn't matter if c is equal to a is false because b is greater than a, making the whole expression true.

    Applying not Operator​

    # Applying the 'not' operator
    a = 5
    b = 10
    c = 5

    result = not (a > b) # Equivalent to (a <= b)
    print(result) # Output: True

    result = not (c == a) # Equivalent to (c != a)
    print(result) # Output: True
    -

    The not operator negates the result of the expression. It can be used to reverse the truth value of a condition.

    +

    The not operator negates the result of the expression. It can be used to reverse the truth value of a condition.

    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Scopes/index.html b/docs/python-guide/Python_Basics/Scopes/index.html index 5a0e17d7..2a1aca53 100644 --- a/docs/python-guide/Python_Basics/Scopes/index.html +++ b/docs/python-guide/Python_Basics/Scopes/index.html @@ -6,7 +6,7 @@ Scopes | Python Guide - +
    +

    Understanding Python's scoping rules is essential for writing efficient and error-free code. By distinguishing between local, enclosing, and global scopes, developers can manage variable lifecycles effectively, avoiding common pitfalls associated with variable shadowing and unintended global modifications. Following best practices related to scope management contributes to cleaner, more maintainable codebases.

    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Sets/index.html b/docs/python-guide/Python_Basics/Sets/index.html index cef10249..27f6b953 100644 --- a/docs/python-guide/Python_Basics/Sets/index.html +++ b/docs/python-guide/Python_Basics/Sets/index.html @@ -6,7 +6,7 @@ Sets | Python Guide - + +

    Remember that sets are useful when order and duplicates are not essential, making them suitable for various applications.

    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Shortcut_Format/index.html b/docs/python-guide/Python_Basics/Shortcut_Format/index.html index 7e5e5973..0c638bca 100644 --- a/docs/python-guide/Python_Basics/Shortcut_Format/index.html +++ b/docs/python-guide/Python_Basics/Shortcut_Format/index.html @@ -6,7 +6,7 @@ Shortcut | Python Guide - + +
    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Simple_Adder_Project/index.html b/docs/python-guide/Python_Basics/Simple_Adder_Project/index.html index 5eb5537a..550fce95 100644 --- a/docs/python-guide/Python_Basics/Simple_Adder_Project/index.html +++ b/docs/python-guide/Python_Basics/Simple_Adder_Project/index.html @@ -6,7 +6,7 @@ Simple Adder Program | Python Guide - +

    Simple Adder Program

    @@ -21,6 +21,6 @@

    Instructions:Code Snippet:​

    # Welcome text
    print("Welcome to your simple adder.")
    print("-----------------------------")

    # Input for 'a'
    a = input("Enter a value for a: ")

    # Input for 'b'
    b = input("Enter a value for b: ")

    # Display inputs
    print(f"\nValues entered:\n a = {a}\n b = {b}")

    # Calculate and display the result
    result = int(a) + int(b)
    print(f"\nThe result is: {result}")

    Example:​

    -
    # Run the program
    # Enter a value for a: 100
    # Enter a value for b: 50

    # Output:
    # Values entered:
    # a = 100
    # b = 50

    # The result is: 150
    +
    # Run the program
    # Enter a value for a: 100
    # Enter a value for b: 50

    # Output:
    # Values entered:
    # a = 100
    # b = 50

    # The result is: 150
    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Strings/index.html b/docs/python-guide/Python_Basics/Strings/index.html index 2861e89d..f3c58172 100644 --- a/docs/python-guide/Python_Basics/Strings/index.html +++ b/docs/python-guide/Python_Basics/Strings/index.html @@ -6,7 +6,7 @@ Strings | Python Guide - + +
    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Syntax/index.html b/docs/python-guide/Python_Basics/Syntax/index.html index e2e58979..f878a37c 100644 --- a/docs/python-guide/Python_Basics/Syntax/index.html +++ b/docs/python-guide/Python_Basics/Syntax/index.html @@ -6,7 +6,7 @@ Syntax | Python Guide - + +

    Using an uppercase letter, like Print, will result in an error. Python treats uppercase and lowercase versions as distinct entities.

    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Truthy_and_Falsy/index.html b/docs/python-guide/Python_Basics/Truthy_and_Falsy/index.html index fd801283..7ed1256b 100644 --- a/docs/python-guide/Python_Basics/Truthy_and_Falsy/index.html +++ b/docs/python-guide/Python_Basics/Truthy_and_Falsy/index.html @@ -6,7 +6,7 @@ Truthy and Falsy Values | Python Guide - +
    +

    Here, you can observe how empty dictionary and string are considered falsy, while a non-empty list is truthy. Understanding truthy and falsy values is essential for effective boolean checks in Python, especially when dealing with conditions based on the existence or emptiness of data.

    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Tuples/index.html b/docs/python-guide/Python_Basics/Tuples/index.html index d7ff8c18..ae7c4605 100644 --- a/docs/python-guide/Python_Basics/Tuples/index.html +++ b/docs/python-guide/Python_Basics/Tuples/index.html @@ -6,7 +6,7 @@ Tuple | Python Guide - + +
    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Type_Conversion/index.html b/docs/python-guide/Python_Basics/Type_Conversion/index.html index 4c1ab2f7..3bf9704a 100644 --- a/docs/python-guide/Python_Basics/Type_Conversion/index.html +++ b/docs/python-guide/Python_Basics/Type_Conversion/index.html @@ -6,7 +6,7 @@ Type Conversion | Python Guide - + +

    Ensure that the values provided for conversion are compatible to avoid errors.

    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Type_Hints/index.html b/docs/python-guide/Python_Basics/Type_Hints/index.html index 5467c1c0..f4bb3c28 100644 --- a/docs/python-guide/Python_Basics/Type_Hints/index.html +++ b/docs/python-guide/Python_Basics/Type_Hints/index.html @@ -6,7 +6,7 @@ Dynamic Typing and Type Hints | Python Guide - +

    Dynamic Typing and Type Hints

    @@ -18,6 +18,6 @@

    T
    number: int = 10
    print(number)

    # Trying to reassign 'number' to a string will trigger a warning
    number = "hello" # Type hint provides early warning for incorrect type

    text: str = "hello"
    print(text + "!")

    Here, we use type hints to explicitly state the expected types for number and text. The type hints act as a safety mechanism, providing warnings during development if the assigned types don't match the hints.

    # Incorrect usage will trigger a warning during development
    # Uncomment the line below to see the warning
    # text = 100
    -

    This commented-out line demonstrates that attempting to assign an incorrect type (integer in this case) will result in a warning, preventing potential runtime errors. Keep in mind that type hints are for developers' benefit and are ignored by Python during runtime. They serve as documentation and aid in catching errors early in the development process.

    +

    This commented-out line demonstrates that attempting to assign an incorrect type (integer in this case) will result in a warning, preventing potential runtime errors. Keep in mind that type hints are for developers' benefit and are ignored by Python during runtime. They serve as documentation and aid in catching errors early in the development process.

    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Unpacking/index.html b/docs/python-guide/Python_Basics/Unpacking/index.html index 0ab314a1..9f0ef912 100644 --- a/docs/python-guide/Python_Basics/Unpacking/index.html +++ b/docs/python-guide/Python_Basics/Unpacking/index.html @@ -6,7 +6,7 @@ Unpacking in Python | Python Guide - +

    Unpacking in Python

    @@ -50,6 +50,6 @@

    Error Handlin

    To avoid such errors, especially with iterables of unknown length, consider using extended unpacking with the asterisk operator.

    Conclusion​

    Unpacking in Python is a versatile and efficient way to assign values from iterables to multiple variables, handle function arguments, and write cleaner, more readable code. By understanding and utilizing the various forms of unpacking, you can simplify complex assignments and enhance the flexibility of your Python programs.

    -

    Unpacking can be particularly powerful when dealing with dynamic data structures and functions that require flexible input handling. By mastering these techniques, you will be well-equipped to write robust and adaptable Python code.

    +

    Unpacking can be particularly powerful when dealing with dynamic data structures and functions that require flexible input handling. By mastering these techniques, you will be well-equipped to write robust and adaptable Python code.

    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/VS_Is/index.html b/docs/python-guide/Python_Basics/VS_Is/index.html index 3343c57e..2f5026f9 100644 --- a/docs/python-guide/Python_Basics/VS_Is/index.html +++ b/docs/python-guide/Python_Basics/VS_Is/index.html @@ -6,7 +6,7 @@ Equality vs. Identity | Python Guide - + +

    By following these guidelines, you can avoid common pitfalls and ensure that your Python code behaves as expected.

    \ No newline at end of file diff --git a/docs/python-guide/Python_Basics/Variables/index.html b/docs/python-guide/Python_Basics/Variables/index.html index 4d7b77d0..af2ac3ce 100644 --- a/docs/python-guide/Python_Basics/Variables/index.html +++ b/docs/python-guide/Python_Basics/Variables/index.html @@ -6,7 +6,7 @@ Variables | Python Guide - + +

    As we progress through this course, these concepts will become more intuitive, and you'll see how variables contribute to writing clean, maintainable, and reusable code.

    \ No newline at end of file diff --git a/docs/python-guide/Unit-Testing/Conftest/index.html b/docs/python-guide/Unit-Testing/Conftest/index.html index 31e946b3..5f205131 100644 --- a/docs/python-guide/Unit-Testing/Conftest/index.html +++ b/docs/python-guide/Unit-Testing/Conftest/index.html @@ -6,7 +6,7 @@ Using conftest.py in Pytest | Python Guide - +

    Using conftest.py in Pytest

    @@ -106,6 +106,6 @@

    Conclusion​

    -

    Using conftest.py in Pytest provides a powerful way to manage common test setups and configurations. By following this tutorial, you can leverage conftest.py to create reusable and maintainable test fixtures, ensuring efficient and scalable test management for your projects. This approach is particularly beneficial for large test suites where shared functionalities are crucial for maintaining consistency and reducing redundancy.

    +

    Using conftest.py in Pytest provides a powerful way to manage common test setups and configurations. By following this tutorial, you can leverage conftest.py to create reusable and maintainable test fixtures, ensuring efficient and scalable test management for your projects. This approach is particularly beneficial for large test suites where shared functionalities are crucial for maintaining consistency and reducing redundancy.

    \ No newline at end of file diff --git a/docs/python-guide/Unit-Testing/Fixtures/index.html b/docs/python-guide/Unit-Testing/Fixtures/index.html index 73419fc8..41edf99a 100644 --- a/docs/python-guide/Unit-Testing/Fixtures/index.html +++ b/docs/python-guide/Unit-Testing/Fixtures/index.html @@ -6,7 +6,7 @@ Using Fixtures in Pytest | Python Guide - +

    Using Fixtures in Pytest

    @@ -49,6 +49,6 @@

    Running th
    pytest

    Pytest will automatically discover all files matching the pattern test_*.py and execute the tests within them. You should see output indicating that both tests passed.

    Conclusion​

    -

    Using fixtures in Pytest significantly enhances the organization and maintainability of your tests. They allow you to define reusable setups, ensuring consistency and reducing redundancy. In this tutorial, we have covered the basics of creating and using fixtures, and applied them to simple test cases. As your projects grow in complexity, fixtures will become an invaluable tool in your testing toolkit.

    +

    Using fixtures in Pytest significantly enhances the organization and maintainability of your tests. They allow you to define reusable setups, ensuring consistency and reducing redundancy. In this tutorial, we have covered the basics of creating and using fixtures, and applied them to simple test cases. As your projects grow in complexity, fixtures will become an invaluable tool in your testing toolkit.

    \ No newline at end of file diff --git a/docs/python-guide/Unit-Testing/Intro/index.html b/docs/python-guide/Unit-Testing/Intro/index.html index 56db85b1..36eb871e 100644 --- a/docs/python-guide/Unit-Testing/Intro/index.html +++ b/docs/python-guide/Unit-Testing/Intro/index.html @@ -6,7 +6,7 @@ Unit Testing | Python Guide - +

    Unit Testing

    @@ -53,6 +53,6 @@

    Using Fixture
    @pytest.fixture
    def sample_data():
    return 1, 2

    def test_add_with_fixture(sample_data):
    a, b = sample_data
    assert add(a, b) == 3

    Conclusion​

    Unit testing is a fundamental practice for ensuring code quality and robustness. By writing comprehensive tests using frameworks like pytest, developers can prevent bugs, facilitate maintenance, and improve overall software quality. The key is to think of as many scenarios as possible to test your functions thoroughly, covering all edge cases and potential inputs.

    -

    In subsequent lessons, we will explore more advanced features of pytest, including mocking, parametrization, and integration with continuous integration systems.

    +

    In subsequent lessons, we will explore more advanced features of pytest, including mocking, parametrization, and integration with continuous integration systems.

    \ No newline at end of file diff --git a/docs/python-guide/Unit-Testing/Marks/index.html b/docs/python-guide/Unit-Testing/Marks/index.html index 553df111..67db689e 100644 --- a/docs/python-guide/Unit-Testing/Marks/index.html +++ b/docs/python-guide/Unit-Testing/Marks/index.html @@ -6,9 +6,9 @@ Marks | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Unit-Testing/Parametrize/index.html b/docs/python-guide/Unit-Testing/Parametrize/index.html index 0ae0d183..5beb60e1 100644 --- a/docs/python-guide/Unit-Testing/Parametrize/index.html +++ b/docs/python-guide/Unit-Testing/Parametrize/index.html @@ -6,9 +6,9 @@ Parametrize | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/Unit-Testing/TestingErrors/index.html b/docs/python-guide/Unit-Testing/TestingErrors/index.html index 18ea2ba0..2318dc24 100644 --- a/docs/python-guide/Unit-Testing/TestingErrors/index.html +++ b/docs/python-guide/Unit-Testing/TestingErrors/index.html @@ -6,9 +6,9 @@ Testing Errors | Python Guide - + - + \ No newline at end of file diff --git a/docs/python-guide/getting-started/index.html b/docs/python-guide/getting-started/index.html index 043ac622..29d52627 100644 --- a/docs/python-guide/getting-started/index.html +++ b/docs/python-guide/getting-started/index.html @@ -6,7 +6,7 @@ Getting Started | Python Guide - + +
    \ No newline at end of file diff --git a/docs/rest-api/Building-REST-API/08/index.html b/docs/rest-api/Building-REST-API/08/index.html index b8e1c179..814b318f 100644 --- a/docs/rest-api/Building-REST-API/08/index.html +++ b/docs/rest-api/Building-REST-API/08/index.html @@ -6,7 +6,7 @@ Interacting with REST APIs and Python | Python Guide - +

    Interacting with REST APIs and Python

    @@ -62,6 +62,6 @@

    H
    from requests.exceptions import ConnectionError

    try:
    response = requests.get(url)
    except ConnectionError:
    print('There was a problem connecting to the API.')

    Conclusion​

    In this tutorial, we covered how to interact with REST APIs using Python and the requests library. We explored making GET and POST requests, handling responses, managing query parameters and headers, and handling errors and exceptions. Mastering these techniques will enable you to efficiently work with APIs and integrate them into your Python applications.

    -

    In the next tutorial, we will look into advanced usage of the requests library and explore how to handle more complex API interactions. Stay tuned!

    +

    In the next tutorial, we will look into advanced usage of the requests library and explore how to handle more complex API interactions. Stay tuned!

    \ No newline at end of file diff --git a/docs/rest-api/Building-REST-API/adding_urls/index.html b/docs/rest-api/Building-REST-API/adding_urls/index.html index bc7cde5c..e527687f 100644 --- a/docs/rest-api/Building-REST-API/adding_urls/index.html +++ b/docs/rest-api/Building-REST-API/adding_urls/index.html @@ -6,7 +6,7 @@ Adding URLs and Using the DRF API | Python Guide - +

    Adding URLs and Using the DRF API

    @@ -97,6 +97,6 @@

    Running Tests<
    python manage.py test

    Conclusion​

    In this tutorial, we set up URLs for a DRF API using routers, explored how to interact with the API using HTTP methods, and tested our API with tools like cURL, Postman, and Django’s testing framework. This setup allows you to create, read, update, and delete resources through your API effectively.

    -

    In the next chapter, we will look into using FastAPI, another powerful option for building APIs with Python, and compare it with DRF. Stay tuned!

    +

    In the next chapter, we will look into using FastAPI, another powerful option for building APIs with Python, and compare it with DRF. Stay tuned!

    \ No newline at end of file diff --git a/docs/rest-api/Building-REST-API/building_rest_api/index.html b/docs/rest-api/Building-REST-API/building_rest_api/index.html index 9cd7d6b6..a615c64e 100644 --- a/docs/rest-api/Building-REST-API/building_rest_api/index.html +++ b/docs/rest-api/Building-REST-API/building_rest_api/index.html @@ -6,7 +6,7 @@ Building REST APIs with Flask | Python Guide - +

    Building REST APIs with Flask

    @@ -69,6 +69,6 @@

    Runnin

    This command runs your app with 4 worker processes, suitable for handling production traffic.

    Conclusion​

    In this tutorial, we've covered the basics of building REST APIs with Flask, including setting up Flask, creating endpoints, handling requests and responses, and implementing CRUD operations. Flask’s simplicity and flexibility make it an excellent choice for developing APIs quickly and efficiently.

    -

    In the next chapter, we’ll explore how to expand and use Flask applications in more complex scenarios. Stay tuned!

    +

    In the next chapter, we’ll explore how to expand and use Flask applications in more complex scenarios. Stay tuned!

    \ No newline at end of file diff --git a/docs/rest-api/Building-REST-API/django_rest/index.html b/docs/rest-api/Building-REST-API/django_rest/index.html index 70606dcb..a726e7be 100644 --- a/docs/rest-api/Building-REST-API/django_rest/index.html +++ b/docs/rest-api/Building-REST-API/django_rest/index.html @@ -6,7 +6,7 @@ Getting to Know Django Rest Framework (DRF) | Python Guide - +
    +

    In the next chapter, we will delve into loading and serializing data with DRF to further enhance your API capabilities. Stay tuned!

    \ No newline at end of file diff --git a/docs/rest-api/Building-REST-API/expanding_using_flask/index.html b/docs/rest-api/Building-REST-API/expanding_using_flask/index.html index 0ccb530c..a3b6ea2a 100644 --- a/docs/rest-api/Building-REST-API/expanding_using_flask/index.html +++ b/docs/rest-api/Building-REST-API/expanding_using_flask/index.html @@ -6,7 +6,7 @@ Expanding and Using Flask App | Python Guide - +

    Expanding and Using Flask App

    @@ -78,6 +78,6 @@

    Run Tests
    python -m unittest discover

    Conclusion​

    In this tutorial, we've expanded our basic Flask application by modularizing the code, adding data persistence with SQLAlchemy, implementing authentication, using blueprints for better organization, and writing tests. These steps will help you build more robust, scalable, and maintainable Flask applications.

    -

    In the next chapter, we'll explore using Django Rest Framework (DRF) for building REST APIs, another powerful option for Python developers. Stay tuned!

    +

    In the next chapter, we'll explore using Django Rest Framework (DRF) for building REST APIs, another powerful option for Python developers. Stay tuned!

    \ No newline at end of file diff --git a/docs/rest-api/Building-REST-API/fastapi/index.html b/docs/rest-api/Building-REST-API/fastapi/index.html index 3f0c1df4..9f0c1f10 100644 --- a/docs/rest-api/Building-REST-API/fastapi/index.html +++ b/docs/rest-api/Building-REST-API/fastapi/index.html @@ -6,7 +6,7 @@ Using the FastAPI API | Python Guide - +

    Using the FastAPI API

    @@ -104,6 +104,6 @@

    Logging Error
    import logging

    logging.basicConfig(level=logging.INFO)

    @app.get("/items/{item_id}")
    def read_item(item_id: int):
    try:
    # Simulate item retrieval
    if item_id != 1:
    raise ValueError("Item not found")
    return {"item_id": item_id}
    except Exception as e:
    logging.error(f"Error: {e}")
    raise HTTPException(status_code=404, detail="Item not found")

    Conclusion​

    In this tutorial, we explored how to interact with your FastAPI application by making various HTTP requests, utilizing interactive documentation, handling responses, and managing errors. FastAPI’s automatic documentation and built-in validation features simplify working with APIs and provide a robust framework for building and interacting with APIs efficiently.

    -

    In the next chapter, we will compare FastAPI with other frameworks like Django Rest Framework (DRF) to help you choose the best tool for your API needs. Stay tuned!

    +

    In the next chapter, we will compare FastAPI with other frameworks like Django Rest Framework (DRF) to help you choose the best tool for your API needs. Stay tuned!

    \ No newline at end of file diff --git a/docs/rest-api/Building-REST-API/loading_serializing_drf/index.html b/docs/rest-api/Building-REST-API/loading_serializing_drf/index.html index d73be5ec..9d0c44cf 100644 --- a/docs/rest-api/Building-REST-API/loading_serializing_drf/index.html +++ b/docs/rest-api/Building-REST-API/loading_serializing_drf/index.html @@ -6,7 +6,7 @@ Loading and Serializing Data With DRF | Python Guide - +

    Loading and Serializing Data With DRF

    @@ -64,6 +64,6 @@

    Ha
    class UserSerializer(serializers.ModelSerializer):
    class Meta:
    model = User
    fields = ['name', 'email']

    def create(self, validated_data):
    return User.objects.create(**validated_data)

    def update(self, instance, validated_data):
    instance.name = validated_data.get('name', instance.name)
    instance.email = validated_data.get('email', instance.email)
    instance.save()
    return instance

    Conclusion​

    In this tutorial, we covered how to load and serialize data using Django Rest Framework (DRF). We explored basic serializers, model serializers, nested serialization, and custom serialization logic. These features make DRF a powerful tool for building and managing APIs in Django.

    -

    In the next chapter, we will delve into adding URLs and using the DRF API, focusing on how to configure routing and interact with your API endpoints effectively. Stay tuned!

    +

    In the next chapter, we will delve into adding URLs and using the DRF API, focusing on how to configure routing and interact with your API endpoints effectively. Stay tuned!

    \ No newline at end of file diff --git a/docs/rest-api/Building-REST-API/using_fastapi/index.html b/docs/rest-api/Building-REST-API/using_fastapi/index.html index 7ba18770..c164a44f 100644 --- a/docs/rest-api/Building-REST-API/using_fastapi/index.html +++ b/docs/rest-api/Building-REST-API/using_fastapi/index.html @@ -6,7 +6,7 @@ Using FastAPI | Python Guide - +
    +

    In the next chapter, we will delve into using the FastAPI API and how to interact with it effectively. Stay tuned!

    \ No newline at end of file diff --git a/docs/rest-api/CRUD/index.html b/docs/rest-api/CRUD/index.html index 1a40e1d3..de55699a 100644 --- a/docs/rest-api/CRUD/index.html +++ b/docs/rest-api/CRUD/index.html @@ -6,7 +6,7 @@ CRUD | Python Guide - + +
    {
    "message": "Inactive users successfully deleted"
    }
    \ No newline at end of file diff --git a/docs/rest-api/Designing-REST-API/designing_data_exchange/index.html b/docs/rest-api/Designing-REST-API/designing_data_exchange/index.html index 8a0fc781..5e0ec489 100644 --- a/docs/rest-api/Designing-REST-API/designing_data_exchange/index.html +++ b/docs/rest-api/Designing-REST-API/designing_data_exchange/index.html @@ -6,7 +6,7 @@ Designing Data Exchange and Responses | Python Guide - +

    Designing Data Exchange and Responses

    @@ -123,6 +123,6 @@

    from flask import Flask, jsonify

    app = Flask(__name__)

    @app.route('/users/<int:user_id>', methods=['GET'])
    def get_user(user_id):
    user = {"id": user_id, "name": "Jane Doe", "email": "jane.doe@example.com"}
    response = jsonify({"status": "success", "data": {"user": user}})
    response.headers['Cache-Control'] = 'no-cache'
    return response

    if __name__ == '__main__':
    app.run()

    Conclusion​

    Designing data exchange and responses involves creating a standardized and intuitive format for API responses, handling various data formats, and including useful metadata. By following these guidelines, you ensure that your API is easy to integrate with and provides clear and consistent information.

    -

    In the next chapter, we will discuss how to design effective error responses and handle different types of errors gracefully. Stay tuned!

    +

    In the next chapter, we will discuss how to design effective error responses and handle different types of errors gracefully. Stay tuned!

    \ No newline at end of file diff --git a/docs/rest-api/Designing-REST-API/designing_error_responses/index.html b/docs/rest-api/Designing-REST-API/designing_error_responses/index.html index 87f6796b..9e3b70e1 100644 --- a/docs/rest-api/Designing-REST-API/designing_error_responses/index.html +++ b/docs/rest-api/Designing-REST-API/designing_error_responses/index.html @@ -6,7 +6,7 @@ Designing Error Responses | Python Guide - +

    Designing Error Responses

    @@ -150,6 +150,6 @@

    Examp
    from flask import Flask, jsonify, request

    app = Flask(__name__)

    @app.route('/users', methods=['POST'])
    def create_user():
    if not request.json or 'email' not in request.json:
    return jsonify({
    "status": "error",
    "error": {
    "code": 400,
    "message": "Invalid request",
    "details": "The 'email' field is required."
    }
    }), 400

    # Simulate server error
    try:
    # Process request
    pass
    except Exception as e:
    return jsonify({
    "status": "error",
    "error": {
    "code": 500,
    "message": "Internal Server Error",
    "details": str(e)
    }
    }), 500

    return jsonify({"status": "success"}), 201

    if __name__ == '__main__':
    app.run()

    Conclusion​

    Designing effective error responses involves creating a standardized format, using appropriate HTTP status codes, providing clear messages, and including useful details. By following these guidelines, you ensure that your API is easier to debug and integrate, leading to a better experience for developers.

    -

    In the next chapter, we will cover API authentication and security practices to ensure your API is secure and robust. Stay tuned!

    +

    In the next chapter, we will cover API authentication and security practices to ensure your API is secure and robust. Stay tuned!

    \ No newline at end of file diff --git a/docs/rest-api/Designing-REST-API/designing_rest_api/index.html b/docs/rest-api/Designing-REST-API/designing_rest_api/index.html index 582fc336..20c18682 100644 --- a/docs/rest-api/Designing-REST-API/designing_rest_api/index.html +++ b/docs/rest-api/Designing-REST-API/designing_rest_api/index.html @@ -6,7 +6,7 @@ Designing REST APIs | Python Guide - +
    +

    In the next chapter, we will discuss how to design data exchange and responses in more detail, including structuring responses and handling various data formats. Stay tuned!

    \ No newline at end of file diff --git a/docs/rest-api/Designing-REST-API/get_post/index.html b/docs/rest-api/Designing-REST-API/get_post/index.html index 34d1e5c2..ac90a9f0 100644 --- a/docs/rest-api/Designing-REST-API/get_post/index.html +++ b/docs/rest-api/Designing-REST-API/get_post/index.html @@ -6,7 +6,7 @@ Consuming APIs - GET and POST | Python Guide - +

    Consuming APIs - GET and POST

    @@ -51,6 +51,6 @@

    Custom Header
    import requests

    # Define the API endpoint
    url = 'https://api.example.com/users'

    # Define custom headers
    headers = {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Accept': 'application/json'
    }

    # Send the GET request with headers
    response = requests.get(url, headers=headers)

    # Handle the response
    if response.status_code == 200:
    data = response.json()
    print("Data retrieved with custom headers:")
    print(data)
    else:
    print(f"Failed to retrieve data: {response.status_code}")

    Summary​

    In this chapter, we have learned how to make GET and POST requests using Python's requests library. You can now retrieve data from an API and send data to create new resources. These operations are fundamental for interacting with RESTful services.

    -

    In the next chapter, we will cover additional HTTP methods (PUT, PATCH, DELETE) for more advanced interactions with REST APIs. Stay tuned!

    +

    In the next chapter, we will cover additional HTTP methods (PUT, PATCH, DELETE) for more advanced interactions with REST APIs. Stay tuned!

    \ No newline at end of file diff --git a/docs/rest-api/Designing-REST-API/interacting_with_rest/index.html b/docs/rest-api/Designing-REST-API/interacting_with_rest/index.html index 490f1e71..039a7cc8 100644 --- a/docs/rest-api/Designing-REST-API/interacting_with_rest/index.html +++ b/docs/rest-api/Designing-REST-API/interacting_with_rest/index.html @@ -6,7 +6,7 @@ Interacting With REST APIs and Python | Python Guide - +

    Interacting With REST APIs and Python

    @@ -50,6 +50,6 @@

    Exam
    import requests

    url = 'https://api.example.com/users/1'

    response = requests.get(url)

    if response.status_code == 200:
    data = response.json()
    print(data)
    elif response.status_code == 404:
    print("Resource not found.")
    elif response.status_code == 500:
    print("Server error.")
    else:
    print(f"Unexpected error: {response.status_code}")

    Conclusion​

    In this tutorial, we've covered the basics of interacting with REST APIs using Python. You’ve learned how to perform GET, POST, PUT, and DELETE requests, as well as how to handle different response statuses. With these skills, you can start integrating with REST APIs in your own Python applications.

    -

    Feel free to explore more advanced features of the requests library and delve deeper into REST API design to enhance your understanding and capabilities. Happy coding!

    +

    Feel free to explore more advanced features of the requests library and delve deeper into REST API design to enhance your understanding and capabilities. Happy coding!

    \ No newline at end of file diff --git a/docs/rest-api/Designing-REST-API/put_patch_delete/index.html b/docs/rest-api/Designing-REST-API/put_patch_delete/index.html index ad332cf8..fd3625c9 100644 --- a/docs/rest-api/Designing-REST-API/put_patch_delete/index.html +++ b/docs/rest-api/Designing-REST-API/put_patch_delete/index.html @@ -6,7 +6,7 @@ Consuming APIs - PUT, PATCH, and DELETE | Python Guide - +

    Consuming APIs - PUT, PATCH, and DELETE

    @@ -70,6 +70,6 @@

    Examp
    import requests

    # Example PUT request
    url = 'https://api.example.com/users/1'
    payload = {'name': 'Jane Doe'}

    response = requests.put(url, json=payload)

    if response.status_code == 200:
    print("Update successful!")
    elif response.status_code == 404:
    print("Resource not found.")
    elif response.status_code == 400:
    print("Bad request. Check your data.")
    elif response.status_code == 500:
    print("Server error. Try again later.")
    else:
    print(f"Unexpected error: {response.status_code}")

    Conclusion​

    In this chapter, we have explored how to make PUT, PATCH, and DELETE requests using Python’s requests library. These methods allow you to update and delete resources, giving you full control over your interactions with RESTful APIs.

    -

    In the next chapter, we will discuss how to handle API authentication and manage sessions, which is crucial for secure and efficient API interactions. Stay tuned!

    +

    In the next chapter, we will discuss how to handle API authentication and manage sessions, which is crucial for secure and efficient API interactions. Stay tuned!

    \ No newline at end of file diff --git a/docs/rest-api/Designing-REST-API/understanding_rest_api/index.html b/docs/rest-api/Designing-REST-API/understanding_rest_api/index.html index 61f03a73..55d86721 100644 --- a/docs/rest-api/Designing-REST-API/understanding_rest_api/index.html +++ b/docs/rest-api/Designing-REST-API/understanding_rest_api/index.html @@ -6,7 +6,7 @@ Understanding REST APIs | Python Guide - +

    Understanding REST APIs

    @@ -147,6 +147,6 @@

    HTTP/1.1 201 Created
    Content-Type: application/json

    {
    "id": 1,
    "title": "The Great Gatsby",
    "author": "F. Scott Fitzgerald",
    "published_date": "1925-04-10"
    }

    Conclusion​

    Mastering REST APIs involves understanding their core principles, adopting best practices in design, and ensuring robust documentation. This knowledge will enable you to build and interact with RESTful services effectively.

    -

    In the next chapter, we’ll explore how to consume REST APIs using Python, including handling different request types and parsing responses. Stay tuned!

    +

    In the next chapter, we’ll explore how to consume REST APIs using Python, including handling different request types and parsing responses. Stay tuned!

    \ No newline at end of file diff --git a/docs/rest-api/getting-started/index.html b/docs/rest-api/getting-started/index.html index 9bd773be..ac50abaf 100644 --- a/docs/rest-api/getting-started/index.html +++ b/docs/rest-api/getting-started/index.html @@ -6,7 +6,7 @@ Getting Started | Python Guide - + +
    \ No newline at end of file diff --git a/docs/tips-and-tricks/F-String-Tricks/index.html b/docs/tips-and-tricks/F-String-Tricks/index.html index ccdfabf7..bfc1f2ff 100644 --- a/docs/tips-and-tricks/F-String-Tricks/index.html +++ b/docs/tips-and-tricks/F-String-Tricks/index.html @@ -6,7 +6,7 @@ 5 Useful F-String Tricks in Python | Python Guide - +

    5 Useful F-String Tricks in Python

    @@ -144,6 +144,6 @@

    Conclusion​

    F-strings are a versatile and powerful tool in Python, offering a wide range of formatting capabilities that enhance code readability, maintainability, and efficiency. From formatting large numbers and aligning text to handling dates and controlling decimal precision, F-strings simplify many common tasks in software development.

    Furthermore, their ability to aid in debugging by easily displaying variable names and values directly within the output makes F-strings an indispensable feature for Python developers.

    -

    By mastering these five tricksβ€”number formatting, string alignment, date and time formatting, decimal precision, and debuggingβ€”you can write more concise, readable, and professional code. As you continue to work with Python, integrating these techniques into your daily workflow will undoubtedly improve your productivity and the quality of your code.

    +

    By mastering these five tricksβ€”number formatting, string alignment, date and time formatting, decimal precision, and debuggingβ€”you can write more concise, readable, and professional code. As you continue to work with Python, integrating these techniques into your daily workflow will undoubtedly improve your productivity and the quality of your code.

    \ No newline at end of file diff --git a/docs/tips-and-tricks/Keywords/index.html b/docs/tips-and-tricks/Keywords/index.html index 7995cf50..93cbb817 100644 --- a/docs/tips-and-tricks/Keywords/index.html +++ b/docs/tips-and-tricks/Keywords/index.html @@ -6,7 +6,7 @@ 39 Keywords | Python Guide - + +
    number = 5

    match number:
    case 0:
    print("Zero")
    case 1:
    print("One")
    case _:
    print("Other")
    \ No newline at end of file diff --git a/docs/tips-and-tricks/common-errors/index.html b/docs/tips-and-tricks/common-errors/index.html index 2da71e93..765e9b5f 100644 --- a/docs/tips-and-tricks/common-errors/index.html +++ b/docs/tips-and-tricks/common-errors/index.html @@ -6,7 +6,7 @@ 10 Common Python Errors | Python Guide - +
    +

    Understanding these common Python errors is crucial for efficient debugging and robust programming. By recognizing the patterns and causes of these errors, developers can swiftly correct issues and prevent them from recurring. As you continue to develop in Python, keep these explanations in mind to help streamline your debugging process and improve your code's quality.

    \ No newline at end of file diff --git a/docs/tips-and-tricks/critical-mistakes-to-avoid/index.html b/docs/tips-and-tricks/critical-mistakes-to-avoid/index.html index e6f1f79b..5c91f4d0 100644 --- a/docs/tips-and-tricks/critical-mistakes-to-avoid/index.html +++ b/docs/tips-and-tricks/critical-mistakes-to-avoid/index.html @@ -6,7 +6,7 @@ 5 Critical Python Mistakes to Avoid | Python Guide - +

    5 Critical Python Mistakes to Avoid

    @@ -53,6 +53,6 @@

    E
    class SmartLamp:
    def __init__(self, name: str, version: str):
    self.name = name
    self.version = version

    def turn_on(self) -> None:
    print(f"{self.name} is now ON")

    def turn_off(self) -> None:
    print(f"{self.name} is now OFF")

    def check_for_updates(self) -> str:
    return "No updates available"

    Creating a blueprint of your project helps ensure you don't miss important functionalities and can make the development process smoother.

    Conclusion​

    -

    Avoiding these common Python mistakes can greatly improve the quality of your code. By focusing on reliable benchmarking, avoiding premature optimization, using type annotations, ensuring proper module execution, and planning your projects, you can develop more efficient, readable, and maintainable code.

    +

    Avoiding these common Python mistakes can greatly improve the quality of your code. By focusing on reliable benchmarking, avoiding premature optimization, using type annotations, ensuring proper module execution, and planning your projects, you can develop more efficient, readable, and maintainable code.

    \ No newline at end of file diff --git a/docs/tips-and-tricks/decorators/index.html b/docs/tips-and-tricks/decorators/index.html index 0244c676..8f781c61 100644 --- a/docs/tips-and-tricks/decorators/index.html +++ b/docs/tips-and-tricks/decorators/index.html @@ -6,7 +6,7 @@ 5 Useful Python Decorators | Python Guide - +

    5 Useful Python Decorators

    @@ -30,6 +30,6 @@

    Implementat

    5. At Exit Register Decorator​

    Finally, let's explore the at_exit.register decorator, which registers a function to be executed when the program terminates. This decorator is valuable for performing cleanup tasks before exiting the program.

    Implementation​

    -
    import atexit

    @atexit.register
    def exit_handler():
    """
    Function to be called when the program terminates.
    """
    print("We're exiting now")

    def main():
    """
    Main function.
    """
    for i in range(10):
    print(2 ** i)

    if __name__ == "__main__":
    main()
    +
    import atexit

    @atexit.register
    def exit_handler():
    """
    Function to be called when the program terminates.
    """
    print("We're exiting now")

    def main():
    """
    Main function.
    """
    for i in range(10):
    print(2 ** i)

    if __name__ == "__main__":
    main()
    \ No newline at end of file diff --git a/docs/tips-and-tricks/dont-dry/index.html b/docs/tips-and-tricks/dont-dry/index.html index d3bf7481..4a939718 100644 --- a/docs/tips-and-tricks/dont-dry/index.html +++ b/docs/tips-and-tricks/dont-dry/index.html @@ -6,7 +6,7 @@ Removing Code Duplication | Python Guide - +

    Removing Code Duplication

    @@ -99,6 +99,6 @@

    Real-

    For instance, in a microservices architecture, if two services require similar validation logic but operate independently, duplicating that logic can be more beneficial than creating a shared library that introduces coupling.

    Conclusion​

    Removing code duplication is generally advisable, but a nuanced approach is essential. Understanding when to eliminate duplication and when to retain it requires careful consideration of design principles, performance, and maintainability. By adhering to the DRY, SRP, and KISS principles, developers can create robust, efficient, and maintainable codebases. -Ultimately, the goal is to balance the trade-offs between abstraction, performance, and clarity, ensuring that the code remains comprehensible and easy to maintain.

    +Ultimately, the goal is to balance the trade-offs between abstraction, performance, and clarity, ensuring that the code remains comprehensible and easy to maintain.

    \ No newline at end of file diff --git a/docs/tips-and-tricks/dunder-methods/index.html b/docs/tips-and-tricks/dunder-methods/index.html index e8d78f35..361a4d72 100644 --- a/docs/tips-and-tricks/dunder-methods/index.html +++ b/docs/tips-and-tricks/dunder-methods/index.html @@ -6,7 +6,7 @@ 5 Useful Dunder Methods | Python Guide - +

    5 Useful Dunder Methods

    @@ -26,6 +26,6 @@

    5. __getitem__ (Get Item Dunder Method)​

    The __getitem__ method enables subscripting, allowing objects to behave like sequences or mappings.

    class Basket:
    def __init__(self, fruits):
    self.fruits = fruits

    def __getitem__(self, item):
    return [fruit for fruit in self.fruits if fruit.name.lower() == item.lower()]

    # Usage:
    basket = Basket([Fruit("apple", 100), Fruit("orange", 150), Fruit("banana", 200)])
    print(basket["apple"]) # Output: [Fruit(name='apple', grams=100)]
    print(basket["orange"]) # Output: [Fruit(name='orange', grams=150)]
    -

    These Dunder methods provide powerful customization options for Python classes, enhancing their functionality and making them more expressive. Experiment with these methods to see how they can improve your code!

    +

    These Dunder methods provide powerful customization options for Python classes, enhancing their functionality and making them more expressive. Experiment with these methods to see how they can improve your code!

    \ No newline at end of file diff --git a/docs/tips-and-tricks/easter-eggs/index.html b/docs/tips-and-tricks/easter-eggs/index.html index ed17f9c6..175049c2 100644 --- a/docs/tips-and-tricks/easter-eggs/index.html +++ b/docs/tips-and-tricks/easter-eggs/index.html @@ -6,7 +6,7 @@ 5 Fun Python Easter Eggs | Python Guide - +
    +

    This opens the comic and prints a geohash string to the console. The geohash is a way to encode geographic locations into short strings, which is useful for spatial indexing.

    \ No newline at end of file diff --git a/docs/tips-and-tricks/granularity-cohesion/index.html b/docs/tips-and-tricks/granularity-cohesion/index.html index b05fdc5c..f8d26ba3 100644 --- a/docs/tips-and-tricks/granularity-cohesion/index.html +++ b/docs/tips-and-tricks/granularity-cohesion/index.html @@ -6,7 +6,7 @@ Granularity and Cohesion | Python Guide - +

    Granularity and Cohesion

    @@ -62,6 +62,6 @@

    Conclusion

  • Granularity helps determine how you break down your system into components. Fine-grained components are more specific and easier to reuse but can make your system more complex. Coarse-grained components are broader and simpler to manage but can become monolithic.
  • Cohesion ensures that your components are well-defined with a clear purpose. High cohesion is desirable because it makes your code more maintainable and understandable.
  • -

    Balancing granularity and cohesion is key to designing robust, maintainable software. Fine-grained components with high cohesion often result in the best design, but it’s important to strike the right balance based on the specific needs of your project.

    +

    Balancing granularity and cohesion is key to designing robust, maintainable software. Fine-grained components with high cohesion often result in the best design, but it’s important to strike the right balance based on the specific needs of your project.

    \ No newline at end of file diff --git a/docs/tips-and-tricks/itemgetter/index.html b/docs/tips-and-tricks/itemgetter/index.html index 908f1fb2..9269db03 100644 --- a/docs/tips-and-tricks/itemgetter/index.html +++ b/docs/tips-and-tricks/itemgetter/index.html @@ -6,7 +6,7 @@ "itemgetter" | Python Guide - + +
    # Try to retrieve elements at index 6 from a list
    out_of_range_indices = itemgetter(6)(elements) # Raises IndexError
    \ No newline at end of file diff --git a/docs/tips-and-tricks/iterable-iterator/index.html b/docs/tips-and-tricks/iterable-iterator/index.html index b7cc47cb..eb4fac79 100644 --- a/docs/tips-and-tricks/iterable-iterator/index.html +++ b/docs/tips-and-tricks/iterable-iterator/index.html @@ -6,7 +6,7 @@ Iterable vs Iterator in Python | Python Guide - +

    Iterable vs Iterator in Python

    @@ -109,6 +109,6 @@

    Overusi

    Conclusion​

    Iterables and iterators are fundamental to understanding Python's iteration protocol and its capabilities for handling sequences and streams of data. While iterables provide a high-level abstraction for objects that can be looped over, iterators offer a more granular and stateful mechanism for sequential data access, enabling efficient memory use and lazy evaluation.

    Generators further extend these concepts, providing a simple and powerful way to create iterators that can handle large or infinite data sets efficiently. By understanding these tools and their correct usage, Python developers can write more efficient, flexible, and Pythonic code.

    -

    Incorporating iterators and generators into your toolkit will enable you to tackle a broader range of programming challenges with ease and elegance. As you continue to explore Python, you will find that these constructs are not just convenient but also integral to the design of many Python libraries and frameworks.

    +

    Incorporating iterators and generators into your toolkit will enable you to tackle a broader range of programming challenges with ease and elegance. As you continue to explore Python, you will find that these constructs are not just convenient but also integral to the design of many Python libraries and frameworks.

    \ No newline at end of file diff --git a/docs/tips-and-tricks/linux-commands/index.html b/docs/tips-and-tricks/linux-commands/index.html index a9606370..6ec82753 100644 --- a/docs/tips-and-tricks/linux-commands/index.html +++ b/docs/tips-and-tricks/linux-commands/index.html @@ -6,7 +6,7 @@ 50 Linux Terminal Commands | Python Guide - + +
    \ No newline at end of file diff --git a/docs/tips-and-tricks/match-case/index.html b/docs/tips-and-tricks/match-case/index.html index 37d4f71e..b6733484 100644 --- a/docs/tips-and-tricks/match-case/index.html +++ b/docs/tips-and-tricks/match-case/index.html @@ -6,7 +6,7 @@ match-case Statement | Python Guide - +

    match-case Statement

    @@ -150,6 +150,6 @@

    Best
  • Avoid Overcomplication: Keep match-case statements as simple as possible. Break down complex logic into smaller, more manageable pieces if necessary.
  • Conclusion​

    -

    The match-case statement in Python 3.10 and later versions is a powerful tool that provides flexibility and expressiveness far beyond traditional conditional statements. By understanding and effectively using the different types of patterns, guards, and combining patterns, you can write more readable, maintainable, and concise Python code. Whether you are working with simple values or complex data structures, match-case allows you to handle multiple scenarios with elegance and efficiency.

    +

    The match-case statement in Python 3.10 and later versions is a powerful tool that provides flexibility and expressiveness far beyond traditional conditional statements. By understanding and effectively using the different types of patterns, guards, and combining patterns, you can write more readable, maintainable, and concise Python code. Whether you are working with simple values or complex data structures, match-case allows you to handle multiple scenarios with elegance and efficiency.

    \ No newline at end of file diff --git a/docs/tips-and-tricks/methodcaller/index.html b/docs/tips-and-tricks/methodcaller/index.html index 2476b1e0..ae95f6b7 100644 --- a/docs/tips-and-tricks/methodcaller/index.html +++ b/docs/tips-and-tricks/methodcaller/index.html @@ -6,7 +6,7 @@ methodcaller | Python Guide - +

    methodcaller

    @@ -31,6 +31,6 @@

    Perfo

    Now, let's compare the performance of methodcaller with a lambda function:

    from timeit import repeat

    # Warm-up the interpreter
    repeat("filter(starts_with_b, names)", repeat=5, number=1000000)

    # Test methodcaller performance
    methodcaller_time = min(repeat("filter(starts_with_b, names)", repeat=5, number=1000000))

    # Test lambda performance
    lambda_time = min(repeat("filter(lambda x: x.startswith('B'), names)", repeat=5, number=1000000))

    print(f"Methodcaller time: {methodcaller_time:.3f} seconds")
    print(f"Lambda time: {lambda_time:.3f} seconds")

    Conclusion​

    -

    In this tutorial, we explored the versatility of Python's methodcaller for efficient data manipulation tasks. We demonstrated its usage for filtering and sorting operations, along with a performance comparison against lambda functions. While methodcaller may offer slight performance advantages in certain scenarios, the choice between it and lambda functions ultimately depends on readability and context. Experiment with both approaches in your codebase to find what works best for you.

    +

    In this tutorial, we explored the versatility of Python's methodcaller for efficient data manipulation tasks. We demonstrated its usage for filtering and sorting operations, along with a performance comparison against lambda functions. While methodcaller may offer slight performance advantages in certain scenarios, the choice between it and lambda functions ultimately depends on readability and context. Experiment with both approaches in your codebase to find what works best for you.

    \ No newline at end of file diff --git a/docs/tips-and-tricks/methods/index.html b/docs/tips-and-tricks/methods/index.html index 27dddd33..e8fe2d85 100644 --- a/docs/tips-and-tricks/methods/index.html +++ b/docs/tips-and-tricks/methods/index.html @@ -6,7 +6,7 @@ List Methods | Python Guide - +

    List Methods

    @@ -215,6 +215,6 @@

    10. count()

    Conclusion​

    Mastering Python's list methods is essential for any developer aiming to write efficient, maintainable code. These methods provide a wide range of functionalities, from simple element addition and removal to more complex operations like sorting and reversing.

    Each method comes with its own performance characteristics, and understanding these will help you choose the right tool for the job. Whether you are working with small scripts or large-scale applications, knowing when and how to use these methods can significantly impact the efficiency and readability of your code.

    -

    By thoroughly understanding these methods, you'll be well-equipped to handle various challenges in Python development, ensuring that your code is both robust and optimized.

    +

    By thoroughly understanding these methods, you'll be well-equipped to handle various challenges in Python development, ensuring that your code is both robust and optimized.

    \ No newline at end of file diff --git a/docs/tips-and-tricks/python-is-python3/index.html b/docs/tips-and-tricks/python-is-python3/index.html index 7f7e8202..66b76af2 100644 --- a/docs/tips-and-tricks/python-is-python3/index.html +++ b/docs/tips-and-tricks/python-is-python3/index.html @@ -6,7 +6,7 @@ Python not found, WTF | Python Guide - + +
    python example.py
    \ No newline at end of file diff --git a/docs/tips-and-tricks/rip-gil/index.html b/docs/tips-and-tricks/rip-gil/index.html index 38f2143c..6b768fe4 100644 --- a/docs/tips-and-tricks/rip-gil/index.html +++ b/docs/tips-and-tricks/rip-gil/index.html @@ -6,7 +6,7 @@ R.I.P GIL in Python 3.13 | Python Guide - +

    R.I.P GIL in Python 3.13

    @@ -46,6 +46,6 @@

    Conclusion​

    The introduction of an optional GIL in Python 3.13 marks a significant shift in the language's approach to concurrency. While this change holds promise for improving the performance of multi-threaded applications, it also introduces new challenges related to thread safety. Developers must carefully weigh the benefits and risks of disabling the GIL, particularly when working with existing libraries and frameworks that may not be prepared for a GIL-free environment.

    -

    As Python continues to evolve, it is crucial for the developer community to adapt to these changes, ensuring that their code remains robust, efficient, and thread-safe in the face of new concurrency models.

    +

    As Python continues to evolve, it is crucial for the developer community to adapt to these changes, ensuring that their code remains robust, efficient, and thread-safe in the face of new concurrency models.

    \ No newline at end of file diff --git a/docs/tips-and-tricks/seven-code-habbits/index.html b/docs/tips-and-tricks/seven-code-habbits/index.html index 07211a55..2bca2cae 100644 --- a/docs/tips-and-tricks/seven-code-habbits/index.html +++ b/docs/tips-and-tricks/seven-code-habbits/index.html @@ -6,7 +6,7 @@ 7 Coding Habits of Top 1% Programmers | Python Guide - +

    7 Coding Habits of Top 1% Programmers

    @@ -79,6 +79,6 @@

    Code Snippet:

    Using a library to send an email in Python:

    import smtplib
    from email.mime.text import MIMEText

    def send_email(subject, body, to_email):
    msg = MIMEText(body)
    msg['Subject'] = subject
    msg['From'] = 'your_email@example.com'
    msg['To'] = to_email

    with smtplib.SMTP('smtp.example.com', 587) as server:
    server.starttls()
    server.login('your_email@example.com', 'your_password')
    server.sendmail('your_email@example.com', to_email, msg.as_string())

    # Example usage:
    send_email('Test Subject', 'This is a test email body.', 'recipient@example.com')

    Conclusion​

    -

    By integrating these seven habits into your daily programming routine, you will enhance your skills and efficiency significantly. Remember, continuous practice, persistence, methodical debugging, embracing challenges, rapid prototyping, simplicity, and strategic laziness are the pillars of becoming a top 1% programmer. Apply these habits consistently to achieve your full potential.

    +

    By integrating these seven habits into your daily programming routine, you will enhance your skills and efficiency significantly. Remember, continuous practice, persistence, methodical debugging, embracing challenges, rapid prototyping, simplicity, and strategic laziness are the pillars of becoming a top 1% programmer. Apply these habits consistently to achieve your full potential.

    \ No newline at end of file diff --git a/docs/tips-and-tricks/tips-and-tricks/index.html b/docs/tips-and-tricks/tips-and-tricks/index.html index 8e0d7c54..2ab64d5c 100644 --- a/docs/tips-and-tricks/tips-and-tricks/index.html +++ b/docs/tips-and-tricks/tips-and-tricks/index.html @@ -6,7 +6,7 @@ 20 Essential Tips & Tricks in Python | Python Guide - +
    +

    This tutorial has covered essential Python tips and tricks that can enhance your coding practices. Each tip is designed to make your code more efficient, readable, and Pythonic.

    \ No newline at end of file diff --git a/docs/tips-and-tricks/worst-Features/index.html b/docs/tips-and-tricks/worst-Features/index.html index 7df2402e..1ba3c517 100644 --- a/docs/tips-and-tricks/worst-Features/index.html +++ b/docs/tips-and-tricks/worst-Features/index.html @@ -6,7 +6,7 @@ Python's 5 Worst Features | Python Guide - + +Use deep copying (copy.deepcopy) when working with nested structures or mutable objects to ensure independent copies of all elements. Be mindful of memory usage and performance implications when choosing between shallow and deep copying.

    \ No newline at end of file diff --git a/docs/tips-and-tricks/wtf-is-self/index.html b/docs/tips-and-tricks/wtf-is-self/index.html index ee3f1552..a584bf81 100644 --- a/docs/tips-and-tricks/wtf-is-self/index.html +++ b/docs/tips-and-tricks/wtf-is-self/index.html @@ -6,7 +6,7 @@ self | Python Guide - +

    self

    @@ -115,6 +115,6 @@

    Key P
  • Inheritance and MRO: self ensures that inherited methods operate correctly on subclass instances.
  • Conclusion​

    -

    The self parameter in Python is integral to the correct functioning of object-oriented programming within the language. It provides the mechanism by which instances of classes maintain their own state and behavior, enabling the powerful and flexible design patterns that OOP allows. By fully understanding self, you gain a deeper insight into Python’s class mechanics, empowering you to write more effective and maintainable code.

    +

    The self parameter in Python is integral to the correct functioning of object-oriented programming within the language. It provides the mechanism by which instances of classes maintain their own state and behavior, enabling the powerful and flexible design patterns that OOP allows. By fully understanding self, you gain a deeper insight into Python’s class mechanics, empowering you to write more effective and maintainable code.

    \ No newline at end of file diff --git a/docs/tips-and-tricks/yield/index.html b/docs/tips-and-tricks/yield/index.html index cf3e044e..d7f3e499 100644 --- a/docs/tips-and-tricks/yield/index.html +++ b/docs/tips-and-tricks/yield/index.html @@ -6,7 +6,7 @@ yield from | Python Guide - +
    +

    In this example, yield from is used to flatten a nested list, delegating the flattening of sublists to the same function recursively.

    \ No newline at end of file diff --git a/index.html b/index.html index d0dbfafd..67ffe355 100644 --- a/index.html +++ b/index.html @@ -6,9 +6,9 @@ Python Guide | Python Guide - + -

    Developer Guide

    Comprehensive guides to help developers get started and navigate the platform with ease, covering key concepts and best practices.

    Data Analysis

    Tools and resources to support advanced data analysis, providing insights and facilitating data-driven decision-making.

    Design Patterns

    Explore robust design patterns to build scalable and maintainable applications, tailored to diverse use cases.

    GUI

    A user-friendly graphical interface that simplifies interaction and enhances productivity, with intuitive navigation.

    REST-API

    A powerful RESTful API to seamlessly integrate and extend functionalities, ensuring smooth communication between services.

    Tips & Tricks

    Handy tips and tricks to help you maximize your efficiency and get the most out of the platform's features.

    +

    Developer Guide

    Comprehensive guides to help developers get started and navigate the platform with ease, covering key concepts and best practices.

    Data Analysis

    Tools and resources to support advanced data analysis, providing insights and facilitating data-driven decision-making.

    Design Patterns

    Explore robust design patterns to build scalable and maintainable applications, tailored to diverse use cases.

    GUI

    A user-friendly graphical interface that simplifies interaction and enhances productivity, with intuitive navigation.

    REST-API

    A powerful RESTful API to seamlessly integrate and extend functionalities, ensuring smooth communication between services.

    Tips & Tricks

    Handy tips and tricks to help you maximize your efficiency and get the most out of the platform's features.

    \ No newline at end of file diff --git a/markdown-page/index.html b/markdown-page/index.html index f18c4c5e..6aef9912 100644 --- a/markdown-page/index.html +++ b/markdown-page/index.html @@ -6,10 +6,10 @@ Markdown page example | Python Guide - + +

    You don't need React to write simple standalone pages.

    \ No newline at end of file