





<!DOCTYPE html>
<html
  lang="en"
  
  data-color-mode="auto" data-light-theme="light" data-dark-theme="dark"
  data-a11y-animated-images="system" data-a11y-link-underlines="true"
  
  >




  <head>
    <meta charset="utf-8">
  <link rel="dns-prefetch" href="https://github.githubassets.com">
  <link rel="dns-prefetch" href="https://avatars.githubusercontent.com">
  <link rel="dns-prefetch" href="https://github-cloud.s3.amazonaws.com">
  <link rel="dns-prefetch" href="https://user-images.githubusercontent.com/">
  <link rel="preconnect" href="https://github.githubassets.com" crossorigin>
  <link rel="preconnect" href="https://avatars.githubusercontent.com">

  


  <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/light-dac525bbd821.css" /><link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/light_high_contrast-56ccf4057897.css" /><link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/dark-784387e86ac0.css" /><link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/dark_high_contrast-79bd5fd84a86.css" /><link data-color-theme="light" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light-dac525bbd821.css" /><link data-color-theme="light_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_high_contrast-56ccf4057897.css" /><link data-color-theme="light_colorblind" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_colorblind-0e24752a7d2b.css" /><link data-color-theme="light_colorblind_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_colorblind_high_contrast-412af2517363.css" /><link data-color-theme="light_tritanopia" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_tritanopia-6186e83663dc.css" /><link data-color-theme="light_tritanopia_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_tritanopia_high_contrast-9d33c7aea2e7.css" /><link data-color-theme="dark" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark-784387e86ac0.css" /><link data-color-theme="dark_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_high_contrast-79bd5fd84a86.css" /><link data-color-theme="dark_colorblind" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_colorblind-75db11311555.css" /><link data-color-theme="dark_colorblind_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_colorblind_high_contrast-f2c1045899a2.css" /><link data-color-theme="dark_tritanopia" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_tritanopia-f46d293c6ff3.css" /><link data-color-theme="dark_tritanopia_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_tritanopia_high_contrast-e4b5684db29d.css" /><link data-color-theme="dark_dimmed" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_dimmed-72c58078e707.css" /><link data-color-theme="dark_dimmed_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_dimmed_high_contrast-956cb5dfcb85.css" />

  <style type="text/css">
    :root {
      --tab-size-preference: 4;
    }

    pre, code {
      tab-size: var(--tab-size-preference);
    }
  </style>

    <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-primitives-c37d781e2da5.css" />
    <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-8bf3328b2828.css" />
    <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/global-df4c2156a48b.css" />
    <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/github-f7230554fa20.css" />
  <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/repository-5d735668c600.css" />
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/code-9c9b8dc61e74.css" />

  

  <script type="application/json" id="client-env">{"locale":"en","featureFlags":["a11y_status_checks_ruleset","actions_custom_images_public_preview_visibility","actions_custom_images_storage_billing_ui_visibility","actions_enable_snapshot_keyword","actions_image_version_event","allow_react_navs_in_turbo","alternate_user_config_repo","api_insights_show_missing_data_banner","arianotify_comprehensive_migration","arianotify_partial_migration","client_version_header","codespaces_prebuild_region_target_update","coding_agent_model_selection","contentful_lp_footnotes","copilot_agent_cli_public_preview","copilot_agent_sessions_alive_updates","copilot_agent_task_list_v2","copilot_agent_tasks_btn_code_nav","copilot_agent_tasks_btn_code_view","copilot_agent_tasks_btn_code_view_lines","copilot_agent_tasks_btn_repo","copilot_api_agentic_issue_marshal_yaml","copilot_api_draft_issue_reference_with_project_id","copilot_api_github_draft_update_issue_skill","copilot_chat_agents_empty_state","copilot_chat_attach_multiple_images","copilot_chat_clear_model_selection_for_default_change","copilot_chat_file_redirect","copilot_chat_input_commands","copilot_chat_opening_thread_switch","copilot_chat_reduce_quota_checks","copilot_chat_search_bar_redirect","copilot_chat_selection_attachments","copilot_chat_vision_in_claude","copilot_chat_vision_preview_gate","copilot_coding_agent_task_response","copilot_custom_copilots","copilot_custom_copilots_feature_preview","copilot_duplicate_thread","copilot_extensions_hide_in_dotcom_chat","copilot_extensions_removal_on_marketplace","copilot_features_raycast_logo","copilot_file_block_ref_matching","copilot_ftp_hyperspace_upgrade_prompt","copilot_icebreakers_experiment_dashboard","copilot_icebreakers_experiment_hyperspace","copilot_immersive_generate_thread_name_async","copilot_immersive_job_result_preview","copilot_immersive_structured_model_picker","copilot_immersive_task_hyperlinking","copilot_immersive_task_within_chat_thread","copilot_org_policy_page_focus_mode","copilot_redirect_header_button_to_agents","copilot_security_alert_assignee_options","copilot_share_active_subthread","copilot_spaces_ga","copilot_spaces_individual_policies_ga","copilot_spaces_public_access_to_user_owned_spaces","copilot_spaces_read_access_to_user_owned_spaces","copilot_spaces_report_abuse","copilot_spark_empty_state","copilot_spark_handle_nil_friendly_name","copilot_spark_loading_webgl","copilot_stable_conversation_view","copilot_swe_agent_progress_commands","copilot_swe_agent_use_subagents","copilot_unconfigured_is_inherited","dashboard_universe_2025_feedback_dialog","direct_to_salesforce","dom_node_counts","dotcom_chat_client_side_skills","enterprise_ai_controls","failbot_report_error_react_apps_on_page","fetch_graphql_improved_error_serialization","flex_cta_groups_mvp","global_nav_react_edit_status_dialog","global_nav_react_feature_preview","global_nav_react_teams_settings_page","global_nav_react_top_repos_api_caching","hyperspace_2025_logged_out_batch_1","hyperspace_nudges_universe25_post_event","initial_per_page_pagination_updates","issue_fields_global_search","issue_fields_report_usage","issue_fields_timeline_events","issues_cca_assign_actor_with_agent","issues_expanded_file_types","issues_lazy_load_comment_box_suggestions","issues_react_bots_timeline_pagination","issues_react_chrome_container_query_fix","issues_react_client_side_caching_analytics","issues_react_prohibit_title_fallback","issues_report_sidebar_interactions","lifecycle_label_name_updates","link_contact_sales_swp_marketo","marketing_pages_search_explore_provider","memex_default_issue_create_repository","memex_grouped_by_edit_route","memex_mwl_filter_field_delimiter","mission_control_use_body_html","new_traffic_page_banner","open_agent_session_in_vscode_insiders","open_agent_session_in_vscode_stable","projects_assignee_max_limit","react_compiler_diff_lines","react_compiler_markdown_editor","react_custom_partial_router","react_fetch_graphql_ignore_expected_errors","render_user_display_name","repos_insights_remove_new_url","ruleset_deletion_confirmation","sample_network_conn_type","scheduled_reminders_updated_limits","site_calculator_actions_2025","site_features_copilot_universe","site_homepage_collaborate_video","site_homepage_contentful","site_homepage_eyebrow_banner","site_homepage_universe_animations","site_msbuild_webgl_hero","spark_prompt_secret_scanning","swe_agent_member_requests","viewscreen_sandbox","webp_support","workbench_store_readonly"],"copilotApiOverrideUrl":"https://api.githubcopilot.com"}</script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/high-contrast-cookie-ff2c933fbe48.js"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/wp-runtime-5e4b5e5dd19a.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/913-ca2305638c53.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/6488-de87864e6818.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/environment-b3d48626cc6e.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/69676-3e4d0020216a.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/43784-4652ae97a661.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/4712-6fc930a63a4b.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/81028-5b8c5e07a4fa.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/74911-6a311b93ee8e.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/91853-2ed22fb46437.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/78143-31968346cf4c.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/52430-2f44a4a36933.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/github-elements-4877027ad5a6.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/element-registry-252f9e5e3f39.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/react-lib-760965ba27bb.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/react-core-c947eff3bbc1.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/28546-ee41c9313871.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/17688-a9e16fb5ed13.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/2869-a4ba8f17edb3.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/70191-5122bf27bf3e.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/7332-5ea4ccf72018.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/3561-5983d983527e.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/24077-adc459723b71.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/51519-d3c416bc1076.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/67310-41f6def2eebb.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/96384-750ef5263abe.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/19718-676a65610616.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/behaviors-5af1580d739c.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/48011-1f20a5c80dd7.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/notifications-global-54f7f2032e0d.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/31615-236504c8966f.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/14155-c583ca76c604.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/code-menu-fa1d4025778b.js" defer="defer"></script>
  
  <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/primer-react-4e701c638f8d.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/octicons-react-a215e6ee021a.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/31475-5e512a21dfc3.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/48775-3cc79d2cd30e.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/42892-341e79a04903.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/23832-db66abd83e08.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/99418-9d4961969e0d.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/33915-05ba9b3edc31.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/96537-8e29101f7d81.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/51220-ec5733320b36.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/14439-a1591d60e882.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/59403-2d4e3c04c240.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/9288-386d049b3200.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/25407-0bcfbb5d10a7.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/40771-25ebf1ba365b.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/66990-9c7310043c38.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/29665-96a2ad6dd82d.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/6623-11052efc81ee.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/3774-304bab512880.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/36510-d192006f6d9f.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/36584-05b7bfd18eff.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/29806-1944f1cad77b.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/16434-d639e52bf37f.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/react-code-view-30fc287f2fb0.js" defer="defer"></script>
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react.47239ec6cbe68138fe4c.module.css" />
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/react-code-view.04eaa83910e6b1ee3958.module.css" />

  <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/57972-df59401b9643.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/notifications-subscriptions-menu-d002081209f2.js" defer="defer"></script>
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react.47239ec6cbe68138fe4c.module.css" />
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/notifications-subscriptions-menu.933100a30c03fd4e8ae4.module.css" />


  <title>woocommerce/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php at trunk · woocommerce/woocommerce · GitHub</title>



  <meta name="route-pattern" content="/:user_id/:repository/blob/*name(/*path)" data-turbo-transient>
  <meta name="route-controller" content="blob" data-turbo-transient>
  <meta name="route-action" content="show" data-turbo-transient>
  <meta name="fetch-nonce" content="v2:1a1459e0-b442-d1e4-b946-905b04b9fee0">

    
  <meta name="current-catalog-service-hash" content="f3abb0cc802f3d7b95fc8762b94bdcb13bf39634c40c357301c4aa1d67a256fb">


  <meta name="request-id" content="CCCC:2DCEE6:AC89F0E:DA5DA44:6952DD38" data-pjax-transient="true"/><meta name="html-safe-nonce" content="f0456f60e73c7c309223e10ef25d7c5a2d46a9a74cd09901b50f38a0861ed815" data-pjax-transient="true"/><meta name="visitor-payload" content="eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDQ0NDOjJEQ0VFNjpBQzg5RjBFOkRBNURBNDQ6Njk1MkREMzgiLCJ2aXNpdG9yX2lkIjoiMTM2Mjk2Mzk2MTQwNzAwMzk2MSIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9" data-pjax-transient="true"/><meta name="visitor-hmac" content="461d082fb8049d35d258678e439ef8b982a2e2238ac59bc139c7d6468533985b" data-pjax-transient="true"/>


    <meta name="hovercard-subject-tag" content="repository:2179920" data-turbo-transient>


  <meta name="github-keyboard-shortcuts" content="repository,source-code,file-tree,copilot" data-turbo-transient="true" />
  

  <meta name="selected-link" value="repo_source" data-turbo-transient>
  <link rel="assets" href="https://github.githubassets.com/">

    <meta name="google-site-verification" content="Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I">

<meta name="octolytics-url" content="https://collector.github.com/github/collect" />

  <meta name="analytics-location" content="/&lt;user-name&gt;/&lt;repo-name&gt;/blob/show" data-turbo-transient="true" />

  




    <meta name="user-login" content="">

  

    <meta name="viewport" content="width=device-width">

    

      <meta name="description" content="A customizable, open-source ecommerce platform built on WordPress. Build any commerce solution you can imagine. - woocommerce/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php at trunk · woocommerce/woocommerce">

      <link rel="search" type="application/opensearchdescription+xml" href="/opensearch.xml" title="GitHub">

    <link rel="fluid-icon" href="https://github.com/fluidicon.png" title="GitHub">
    <meta property="fb:app_id" content="1401488693436528">
    <meta name="apple-itunes-app" content="app-id=1477376905, app-argument=https://github.com/woocommerce/woocommerce/blob/trunk/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php" />

      <meta name="twitter:image" content="https://opengraph.githubassets.com/9d3831c4647733546116945734e90caddb9d751b5358276e15dd4d2f4d4a6e49/woocommerce/woocommerce" /><meta name="twitter:site" content="@github" /><meta name="twitter:card" content="summary_large_image" /><meta name="twitter:title" content="woocommerce/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php at trunk · woocommerce/woocommerce" /><meta name="twitter:description" content="A customizable, open-source ecommerce platform built on WordPress. Build any commerce solution you can imagine. - woocommerce/woocommerce" />
  <meta property="og:image" content="https://opengraph.githubassets.com/9d3831c4647733546116945734e90caddb9d751b5358276e15dd4d2f4d4a6e49/woocommerce/woocommerce" /><meta property="og:image:alt" content="A customizable, open-source ecommerce platform built on WordPress. Build any commerce solution you can imagine. - woocommerce/woocommerce" /><meta property="og:image:width" content="1200" /><meta property="og:image:height" content="600" /><meta property="og:site_name" content="GitHub" /><meta property="og:type" content="object" /><meta property="og:title" content="woocommerce/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php at trunk · woocommerce/woocommerce" /><meta property="og:url" content="https://github.com/woocommerce/woocommerce/blob/trunk/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php" /><meta property="og:description" content="A customizable, open-source ecommerce platform built on WordPress. Build any commerce solution you can imagine. - woocommerce/woocommerce" />
  




      <meta name="hostname" content="github.com">



        <meta name="expected-hostname" content="github.com">


  <meta http-equiv="x-pjax-version" content="18c94d06167f5e5a1872c28f4fae01518467473e514be076d76d017568fab4d9" data-turbo-track="reload">
  <meta http-equiv="x-pjax-csp-version" content="21a43568025709b66240454fc92d4f09335a96863f8ab1c46b4a07f6a5b67102" data-turbo-track="reload">
  <meta http-equiv="x-pjax-css-version" content="03da391a01750e54015d0ebd9e7e968879f966ef76d8a697be72ccbc12abac55" data-turbo-track="reload">
  <meta http-equiv="x-pjax-js-version" content="9ff4f8372edb36712f4a9b786a58616935abd2949bdd7f1d817669464d454566" data-turbo-track="reload">

  <meta name="turbo-cache-control" content="no-preview" data-turbo-transient="">

      <meta name="turbo-cache-control" content="no-cache" data-turbo-transient>

    <meta data-hydrostats="publish">

  <meta name="go-import" content="github.com/woocommerce/woocommerce git https://github.com/woocommerce/woocommerce.git">

  <meta name="octolytics-dimension-user_id" content="473596" /><meta name="octolytics-dimension-user_login" content="woocommerce" /><meta name="octolytics-dimension-repository_id" content="2179920" /><meta name="octolytics-dimension-repository_nwo" content="woocommerce/woocommerce" /><meta name="octolytics-dimension-repository_public" content="true" /><meta name="octolytics-dimension-repository_is_fork" content="false" /><meta name="octolytics-dimension-repository_network_root_id" content="2179920" /><meta name="octolytics-dimension-repository_network_root_nwo" content="woocommerce/woocommerce" />



    

    <meta name="turbo-body-classes" content="logged-out env-production page-responsive">
  <meta name="disable-turbo" content="false">


  <meta name="browser-stats-url" content="https://api.github.com/_private/browser/stats">

  <meta name="browser-errors-url" content="https://api.github.com/_private/browser/errors">

  <meta name="release" content="d61a9c9f276269cbf9231200ad45b238bea5ccc7">
  <meta name="ui-target" content="full">

  <link rel="mask-icon" href="https://github.githubassets.com/assets/pinned-octocat-093da3e6fa40.svg" color="#000000">
  <link rel="alternate icon" class="js-site-favicon" type="image/png" href="https://github.githubassets.com/favicons/favicon.png">
  <link rel="icon" class="js-site-favicon" type="image/svg+xml" href="https://github.githubassets.com/favicons/favicon.svg" data-base-href="https://github.githubassets.com/favicons/favicon">

<meta name="theme-color" content="#1e2327">
<meta name="color-scheme" content="light dark" />


  <link rel="manifest" href="/manifest.json" crossOrigin="use-credentials">

  </head>

  <body class="logged-out env-production page-responsive" style="word-wrap: break-word;" >
    <div data-turbo-body class="logged-out env-production page-responsive" style="word-wrap: break-word;" >
      <div id="__primerPortalRoot__" role="region" style="z-index: 1000; position: absolute; width: 100%;" data-turbo-permanent></div>
      



    <div class="position-relative header-wrapper js-header-wrapper ">
      <a href="#start-of-content" data-skip-target-assigned="false" class="px-2 py-4 color-bg-accent-emphasis color-fg-on-emphasis show-on-focus js-skip-to-content">Skip to content</a>

      <span data-view-component="true" class="progress-pjax-loader Progress position-fixed width-full">
    <span style="width: 0%;" data-view-component="true" class="Progress-item progress-pjax-loader-bar left-0 top-0 color-bg-accent-emphasis"></span>
</span>      
      
      <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react.47239ec6cbe68138fe4c.module.css" />
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/keyboard-shortcuts-dialog.29aaeaafa90f007c6f61.module.css" />

<react-partial
  partial-name="keyboard-shortcuts-dialog"
  data-ssr="false"
  data-attempted-ssr="false"
  data-react-profiling="false"
>
  
  <script type="application/json" data-target="react-partial.embeddedData">{"props":{"docsUrl":"https://docs.github.com/get-started/accessibility/keyboard-shortcuts"}}</script>
  <div data-target="react-partial.reactRoot"></div>
</react-partial>





      

          

              
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/43862-5c4df3ba1119.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/85110-f7be2f54525a.js" defer="defer"></script>
<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/sessions-36ef208f2f57.js" defer="defer"></script>

<style>
  /* Override primer focus outline color for marketing header dropdown links for better contrast */
  [data-color-mode="light"] .HeaderMenu-dropdown-link:focus-visible,
  [data-color-mode="light"] .HeaderMenu-trailing-link a:focus-visible {
    outline-color: var(--color-accent-fg);
  }
</style>

<header class="HeaderMktg header-logged-out js-details-container js-header Details f4 py-3" role="banner" data-is-top="true" data-color-mode=light data-light-theme=light data-dark-theme=dark>
  <h2 class="sr-only">Navigation Menu</h2>

  <button type="button" class="HeaderMktg-backdrop d-lg-none border-0 position-fixed top-0 left-0 width-full height-full js-details-target" aria-label="Toggle navigation">
    <span class="d-none">Toggle navigation</span>
  </button>

  <div class="d-flex flex-column flex-lg-row flex-items-center px-3 px-md-4 px-lg-5 height-full position-relative z-1">
    <div class="d-flex flex-justify-between flex-items-center width-full width-lg-auto">
      <div class="flex-1">
        <button aria-label="Toggle navigation" aria-expanded="false" type="button" data-view-component="true" class="js-details-target js-nav-padding-recalculate js-header-menu-toggle Button--link Button--medium Button d-lg-none color-fg-inherit p-1">  <span class="Button-content">
    <span class="Button-label"><div class="HeaderMenu-toggle-bar rounded my-1"></div>
            <div class="HeaderMenu-toggle-bar rounded my-1"></div>
            <div class="HeaderMenu-toggle-bar rounded my-1"></div></span>
  </span>
</button>
      </div>

      <a class="mr-lg-3 color-fg-inherit flex-order-2 js-prevent-focus-on-mobile-nav"
        href="/"
        aria-label="Homepage"
        data-analytics-event="{&quot;category&quot;:&quot;Marketing nav&quot;,&quot;action&quot;:&quot;click to go to homepage&quot;,&quot;label&quot;:&quot;ref_page:Marketing;ref_cta:Logomark;ref_loc:Header&quot;}">
        <svg height="32" aria-hidden="true" viewBox="0 0 24 24" version="1.1" width="32" data-view-component="true" class="octicon octicon-mark-github">
    <path d="M12 1C5.923 1 1 5.923 1 12c0 4.867 3.149 8.979 7.521 10.436.55.096.756-.233.756-.522 0-.262-.013-1.128-.013-2.049-2.764.509-3.479-.674-3.699-1.292-.124-.317-.66-1.293-1.127-1.554-.385-.207-.936-.715-.014-.729.866-.014 1.485.797 1.691 1.128.99 1.663 2.571 1.196 3.204.907.096-.715.385-1.196.701-1.471-2.448-.275-5.005-1.224-5.005-5.432 0-1.196.426-2.186 1.128-2.956-.111-.275-.496-1.402.11-2.915 0 0 .921-.288 3.024 1.128a10.193 10.193 0 0 1 2.75-.371c.936 0 1.871.123 2.75.371 2.104-1.43 3.025-1.128 3.025-1.128.605 1.513.221 2.64.111 2.915.701.77 1.127 1.747 1.127 2.956 0 4.222-2.571 5.157-5.019 5.432.399.344.743 1.004.743 2.035 0 1.471-.014 2.654-.014 3.025 0 .289.206.632.756.522C19.851 20.979 23 16.854 23 12c0-6.077-4.922-11-11-11Z"></path>
</svg>
      </a>

      <div class="d-flex flex-1 flex-order-2 text-right d-lg-none gap-2 flex-justify-end">
          <a
            href="/login?return_to=https%3A%2F%2Fgithub.com%2Fwoocommerce%2Fwoocommerce%2Fblob%2Ftrunk%2Fplugins%2Fwoocommerce%2Fincludes%2Frest-api%2FControllers%2FVersion3%2Fclass-wc-rest-product-variations-controller.php"
            class="HeaderMenu-link HeaderMenu-button d-inline-flex f5 no-underline border color-border-default rounded-2 px-2 py-1 color-fg-inherit js-prevent-focus-on-mobile-nav"
            data-hydro-click="{&quot;event_type&quot;:&quot;authentication.click&quot;,&quot;payload&quot;:{&quot;location_in_page&quot;:&quot;site header menu&quot;,&quot;repository_id&quot;:null,&quot;auth_type&quot;:&quot;SIGN_UP&quot;,&quot;originating_url&quot;:&quot;https://github.com/woocommerce/woocommerce/blob/trunk/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php&quot;,&quot;user_id&quot;:null}}" data-hydro-click-hmac="73e3b481d5e3684c7c6d58115eb9459379d563fd371d3a7b54bcf43d6abaf777"
            data-analytics-event="{&quot;category&quot;:&quot;Marketing nav&quot;,&quot;action&quot;:&quot;click to Sign in&quot;,&quot;label&quot;:&quot;ref_page:Marketing;ref_cta:Sign in;ref_loc:Header&quot;}"
          >
            Sign in
          </a>
              <div class="AppHeader-appearanceSettings">
    <react-partial-anchor>
      <button data-target="react-partial-anchor.anchor" id="icon-button-4ec2ed95-d53d-4c2c-94f2-9be3db565047" aria-labelledby="tooltip-ea54b7eb-0dad-423a-91f8-4588a70aebfa" type="button" disabled="disabled" data-view-component="true" class="Button Button--iconOnly Button--invisible Button--medium AppHeader-button HeaderMenu-link border cursor-wait">  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-sliders Button-visual">
    <path d="M15 2.75a.75.75 0 0 1-.75.75h-4a.75.75 0 0 1 0-1.5h4a.75.75 0 0 1 .75.75Zm-8.5.75v1.25a.75.75 0 0 0 1.5 0v-4a.75.75 0 0 0-1.5 0V2H1.75a.75.75 0 0 0 0 1.5H6.5Zm1.25 5.25a.75.75 0 0 0 0-1.5h-6a.75.75 0 0 0 0 1.5h6ZM15 8a.75.75 0 0 1-.75.75H11.5V10a.75.75 0 1 1-1.5 0V6a.75.75 0 0 1 1.5 0v1.25h2.75A.75.75 0 0 1 15 8Zm-9 5.25v-2a.75.75 0 0 0-1.5 0v1.25H1.75a.75.75 0 0 0 0 1.5H4.5v1.25a.75.75 0 0 0 1.5 0v-2Zm9 0a.75.75 0 0 1-.75.75h-6a.75.75 0 0 1 0-1.5h6a.75.75 0 0 1 .75.75Z"></path>
</svg>
</button><tool-tip id="tooltip-ea54b7eb-0dad-423a-91f8-4588a70aebfa" for="icon-button-4ec2ed95-d53d-4c2c-94f2-9be3db565047" popover="manual" data-direction="s" data-type="label" data-view-component="true" class="sr-only position-absolute">Appearance settings</tool-tip>

      <template data-target="react-partial-anchor.template">
        <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react.47239ec6cbe68138fe4c.module.css" />
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/appearance-settings.753d458774a2f782559b.module.css" />

<react-partial
  partial-name="appearance-settings"
  data-ssr="false"
  data-attempted-ssr="false"
  data-react-profiling="false"
>
  
  <script type="application/json" data-target="react-partial.embeddedData">{"props":{}}</script>
  <div data-target="react-partial.reactRoot"></div>
</react-partial>


      </template>
    </react-partial-anchor>
  </div>

      </div>
    </div>


    <div class="HeaderMenu js-header-menu height-fit position-lg-relative d-lg-flex flex-column flex-auto top-0">
      <div class="HeaderMenu-wrapper d-flex flex-column flex-self-start flex-lg-row flex-auto rounded rounded-lg-0">
            <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react.47239ec6cbe68138fe4c.module.css" />
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/marketing-navigation.8284bdfe1ee4804a58c1.module.css" />

<react-partial
  partial-name="marketing-navigation"
  data-ssr="true"
  data-attempted-ssr="true"
  data-react-profiling="false"
>
  
  <script type="application/json" data-target="react-partial.embeddedData">{"props":{"should_use_dotcom_links":true}}</script>
  <div data-target="react-partial.reactRoot"><nav class="MarketingNavigation-module__nav--jA9Zq" aria-label="Global"><ul class="MarketingNavigation-module__list--r_vr2"><li><div class="NavDropdown-module__container--bmXM2 js-details-container js-header-menu-item"><button type="button" class="NavDropdown-module__button--Hq9UR js-details-target" aria-expanded="false">Platform<svg aria-hidden="true" focusable="false" class="octicon octicon-chevron-right NavDropdown-module__buttonIcon--SR0Ke" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M6.22 3.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L9.94 8 6.22 4.28a.75.75 0 0 1 0-1.06Z"></path></svg></button><div class="NavDropdown-module__dropdown--Ig57Y"><ul class="NavDropdown-module__list--RwSSK"><li><div class="NavGroup-module__group--T925n"><span class="NavGroup-module__title--TdKyz">AI CODE CREATION</span><ul class="NavGroup-module__list--M8eGv"><li><a href="https://github.com/features/copilot" data-analytics-event="{&quot;action&quot;:&quot;github_copilot&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;platform&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;github_copilot_link_platform_navbar&quot;}" class="NavLink-module__link--n48VB"><div class="NavLink-module__text--SdWkb"><svg aria-hidden="true" focusable="false" class="octicon octicon-copilot NavLink-module__icon--h0sw7" viewBox="0 0 24 24" width="24" height="24" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M23.922 16.992c-.861 1.495-5.859 5.023-11.922 5.023-6.063 0-11.061-3.528-11.922-5.023A.641.641 0 0 1 0 16.736v-2.869a.841.841 0 0 1 .053-.22c.372-.935 1.347-2.292 2.605-2.656.167-.429.414-1.055.644-1.517a10.195 10.195 0 0 1-.052-1.086c0-1.331.282-2.499 1.132-3.368.397-.406.89-.717 1.474-.952 1.399-1.136 3.392-2.093 6.122-2.093 2.731 0 4.767.957 6.166 2.093.584.235 1.077.546 1.474.952.85.869 1.132 2.037 1.132 3.368 0 .368-.014.733-.052 1.086.23.462.477 1.088.644 1.517 1.258.364 2.233 1.721 2.605 2.656a.832.832 0 0 1 .053.22v2.869a.641.641 0 0 1-.078.256ZM12.172 11h-.344a4.323 4.323 0 0 1-.355.508C10.703 12.455 9.555 13 7.965 13c-1.725 0-2.989-.359-3.782-1.259a2.005 2.005 0 0 1-.085-.104L4 11.741v6.585c1.435.779 4.514 2.179 8 2.179 3.486 0 6.565-1.4 8-2.179v-6.585l-.098-.104s-.033.045-.085.104c-.793.9-2.057 1.259-3.782 1.259-1.59 0-2.738-.545-3.508-1.492a4.323 4.323 0 0 1-.355-.508h-.016.016Zm.641-2.935c.136 1.057.403 1.913.878 2.497.442.544 1.134.938 2.344.938 1.573 0 2.292-.337 2.657-.751.384-.435.558-1.15.558-2.361 0-1.14-.243-1.847-.705-2.319-.477-.488-1.319-.862-2.824-1.025-1.487-.161-2.192.138-2.533.529-.269.307-.437.808-.438 1.578v.021c0 .265.021.562.063.893Zm-1.626 0c.042-.331.063-.628.063-.894v-.02c-.001-.77-.169-1.271-.438-1.578-.341-.391-1.046-.69-2.533-.529-1.505.163-2.347.537-2.824 1.025-.462.472-.705 1.179-.705 2.319 0 1.211.175 1.926.558 2.361.365.414 1.084.751 2.657.751 1.21 0 1.902-.394 2.344-.938.475-.584.742-1.44.878-2.497Z"></path><path d="M14.5 14.25a1 1 0 0 1 1 1v2a1 1 0 0 1-2 0v-2a1 1 0 0 1 1-1Zm-5 0a1 1 0 0 1 1 1v2a1 1 0 0 1-2 0v-2a1 1 0 0 1 1-1Z"></path></svg><span class="NavLink-module__title--xw3ok">GitHub Copilot</span><span class="NavLink-module__subtitle--qC15H">Write better code with AI</span></div></a></li><li><a href="https://github.com/features/spark" data-analytics-event="{&quot;action&quot;:&quot;github_spark&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;platform&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;github_spark_link_platform_navbar&quot;}" class="NavLink-module__link--n48VB"><div class="NavLink-module__text--SdWkb"><svg aria-hidden="true" focusable="false" class="octicon octicon-sparkle-fill NavLink-module__icon--h0sw7" viewBox="0 0 24 24" width="24" height="24" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M11.296 1.924c.24-.656 1.168-.656 1.408 0l.717 1.958a11.25 11.25 0 0 0 6.697 6.697l1.958.717c.657.24.657 1.168 0 1.408l-1.958.717a11.25 11.25 0 0 0-6.697 6.697l-.717 1.958c-.24.657-1.168.657-1.408 0l-.717-1.958a11.25 11.25 0 0 0-6.697-6.697l-1.958-.717c-.656-.24-.656-1.168 0-1.408l1.958-.717a11.25 11.25 0 0 0 6.697-6.697l.717-1.958Z"></path></svg><span class="NavLink-module__title--xw3ok">GitHub Spark</span><span class="NavLink-module__subtitle--qC15H">Build and deploy intelligent apps</span></div></a></li><li><a href="https://github.com/features/models" data-analytics-event="{&quot;action&quot;:&quot;github_models&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;platform&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;github_models_link_platform_navbar&quot;}" class="NavLink-module__link--n48VB"><div class="NavLink-module__text--SdWkb"><svg aria-hidden="true" focusable="false" class="octicon octicon-ai-model NavLink-module__icon--h0sw7" viewBox="0 0 24 24" width="24" height="24" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M19.375 8.5a3.25 3.25 0 1 1-3.163 4h-3a3.252 3.252 0 0 1-4.443 2.509L7.214 17.76a3.25 3.25 0 1 1-1.342-.674l1.672-2.957A3.238 3.238 0 0 1 6.75 12c0-.907.371-1.727.97-2.316L6.117 6.846A3.253 3.253 0 0 1 1.875 3.75a3.25 3.25 0 1 1 5.526 2.32l1.603 2.836A3.25 3.25 0 0 1 13.093 11h3.119a3.252 3.252 0 0 1 3.163-2.5ZM10 10.25a1.75 1.75 0 1 0-.001 3.499A1.75 1.75 0 0 0 10 10.25ZM5.125 2a1.75 1.75 0 1 0 0 3.5 1.75 1.75 0 0 0 0-3.5Zm12.5 9.75a1.75 1.75 0 1 0 3.5 0 1.75 1.75 0 0 0-3.5 0Zm-14.25 8.5a1.75 1.75 0 1 0 3.501-.001 1.75 1.75 0 0 0-3.501.001Z"></path></svg><span class="NavLink-module__title--xw3ok">GitHub Models</span><span class="NavLink-module__subtitle--qC15H">Manage and compare prompts</span></div></a></li><li><a href="https://github.com/mcp" data-analytics-event="{&quot;action&quot;:&quot;mcp_registry&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;platform&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;mcp_registry_link_platform_navbar&quot;}" class="NavLink-module__link--n48VB"><div class="NavLink-module__text--SdWkb"><svg aria-hidden="true" focusable="false" class="octicon octicon-mcp NavLink-module__icon--h0sw7" viewBox="0 0 24 24" width="24" height="24" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M9.795 1.694a4.287 4.287 0 0 1 6.061 0 4.28 4.28 0 0 1 1.181 3.819 4.282 4.282 0 0 1 3.819 1.181 4.287 4.287 0 0 1 0 6.061l-6.793 6.793a.249.249 0 0 0 0 .353l2.617 2.618a.75.75 0 1 1-1.061 1.061l-2.617-2.618a1.75 1.75 0 0 1 0-2.475l6.793-6.793a2.785 2.785 0 1 0-3.939-3.939l-5.9 5.9a.734.734 0 0 1-.249.165.749.749 0 0 1-.812-1.225l5.9-5.901a2.785 2.785 0 1 0-3.939-3.939L2.931 10.68A.75.75 0 1 1 1.87 9.619l7.925-7.925Z"></path><path d="M12.42 4.069a.752.752 0 0 1 1.061 0 .752.752 0 0 1 0 1.061L7.33 11.28a2.788 2.788 0 0 0 0 3.94 2.788 2.788 0 0 0 3.94 0l6.15-6.151a.752.752 0 0 1 1.061 0 .752.752 0 0 1 0 1.061l-6.151 6.15a4.285 4.285 0 1 1-6.06-6.06l6.15-6.151Z"></path></svg><span class="NavLink-module__title--xw3ok">MCP Registry<sup class="NavLink-module__label--MrIhm">New</sup></span><span class="NavLink-module__subtitle--qC15H">Integrate external tools</span></div></a></li></ul></div></li><li><div class="NavGroup-module__group--T925n"><span class="NavGroup-module__title--TdKyz">DEVELOPER WORKFLOWS</span><ul class="NavGroup-module__list--M8eGv"><li><a href="https://github.com/features/actions" data-analytics-event="{&quot;action&quot;:&quot;actions&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;platform&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;actions_link_platform_navbar&quot;}" class="NavLink-module__link--n48VB"><div class="NavLink-module__text--SdWkb"><svg aria-hidden="true" focusable="false" class="octicon octicon-workflow NavLink-module__icon--h0sw7" viewBox="0 0 24 24" width="24" height="24" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M1 3a2 2 0 0 1 2-2h6.5a2 2 0 0 1 2 2v6.5a2 2 0 0 1-2 2H7v4.063C7 16.355 7.644 17 8.438 17H12.5v-2.5a2 2 0 0 1 2-2H21a2 2 0 0 1 2 2V21a2 2 0 0 1-2 2h-6.5a2 2 0 0 1-2-2v-2.5H8.437A2.939 2.939 0 0 1 5.5 15.562V11.5H3a2 2 0 0 1-2-2Zm2-.5a.5.5 0 0 0-.5.5v6.5a.5.5 0 0 0 .5.5h6.5a.5.5 0 0 0 .5-.5V3a.5.5 0 0 0-.5-.5ZM14.5 14a.5.5 0 0 0-.5.5V21a.5.5 0 0 0 .5.5H21a.5.5 0 0 0 .5-.5v-6.5a.5.5 0 0 0-.5-.5Z"></path></svg><span class="NavLink-module__title--xw3ok">Actions</span><span class="NavLink-module__subtitle--qC15H">Automate any workflow</span></div></a></li><li><a href="https://github.com/features/codespaces" data-analytics-event="{&quot;action&quot;:&quot;codespaces&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;platform&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;codespaces_link_platform_navbar&quot;}" class="NavLink-module__link--n48VB"><div class="NavLink-module__text--SdWkb"><svg aria-hidden="true" focusable="false" class="octicon octicon-codespaces NavLink-module__icon--h0sw7" viewBox="0 0 24 24" width="24" height="24" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.5 3.75C3.5 2.784 4.284 2 5.25 2h13.5c.966 0 1.75.784 1.75 1.75v7.5A1.75 1.75 0 0 1 18.75 13H5.25a1.75 1.75 0 0 1-1.75-1.75Zm-2 12c0-.966.784-1.75 1.75-1.75h17.5c.966 0 1.75.784 1.75 1.75v4a1.75 1.75 0 0 1-1.75 1.75H3.25a1.75 1.75 0 0 1-1.75-1.75ZM5.25 3.5a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h13.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Zm-2 12a.25.25 0 0 0-.25.25v4c0 .138.112.25.25.25h17.5a.25.25 0 0 0 .25-.25v-4a.25.25 0 0 0-.25-.25Z"></path><path d="M10 17.75a.75.75 0 0 1 .75-.75h6.5a.75.75 0 0 1 0 1.5h-6.5a.75.75 0 0 1-.75-.75Zm-4 0a.75.75 0 0 1 .75-.75h.5a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1-.75-.75Z"></path></svg><span class="NavLink-module__title--xw3ok">Codespaces</span><span class="NavLink-module__subtitle--qC15H">Instant dev environments</span></div></a></li><li><a href="https://github.com/features/issues" data-analytics-event="{&quot;action&quot;:&quot;issues&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;platform&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;issues_link_platform_navbar&quot;}" class="NavLink-module__link--n48VB"><div class="NavLink-module__text--SdWkb"><svg aria-hidden="true" focusable="false" class="octicon octicon-issue-opened NavLink-module__icon--h0sw7" viewBox="0 0 24 24" width="24" height="24" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M12 1c6.075 0 11 4.925 11 11s-4.925 11-11 11S1 18.075 1 12 5.925 1 12 1ZM2.5 12a9.5 9.5 0 0 0 9.5 9.5 9.5 9.5 0 0 0 9.5-9.5A9.5 9.5 0 0 0 12 2.5 9.5 9.5 0 0 0 2.5 12Zm9.5 2a2 2 0 1 1-.001-3.999A2 2 0 0 1 12 14Z"></path></svg><span class="NavLink-module__title--xw3ok">Issues</span><span class="NavLink-module__subtitle--qC15H">Plan and track work</span></div></a></li><li><a href="https://github.com/features/code-review" data-analytics-event="{&quot;action&quot;:&quot;code_review&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;platform&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;code_review_link_platform_navbar&quot;}" class="NavLink-module__link--n48VB"><div class="NavLink-module__text--SdWkb"><svg aria-hidden="true" focusable="false" class="octicon octicon-code NavLink-module__icon--h0sw7" viewBox="0 0 24 24" width="24" height="24" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M15.22 4.97a.75.75 0 0 1 1.06 0l6.5 6.5a.75.75 0 0 1 0 1.06l-6.5 6.5a.749.749 0 0 1-1.275-.326.749.749 0 0 1 .215-.734L21.19 12l-5.97-5.97a.75.75 0 0 1 0-1.06Zm-6.44 0a.75.75 0 0 1 0 1.06L2.81 12l5.97 5.97a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215l-6.5-6.5a.75.75 0 0 1 0-1.06l6.5-6.5a.75.75 0 0 1 1.06 0Z"></path></svg><span class="NavLink-module__title--xw3ok">Code Review</span><span class="NavLink-module__subtitle--qC15H">Manage code changes</span></div></a></li></ul></div></li><li><div class="NavGroup-module__group--T925n"><span class="NavGroup-module__title--TdKyz">APPLICATION SECURITY</span><ul class="NavGroup-module__list--M8eGv"><li><a href="https://github.com/security/advanced-security" data-analytics-event="{&quot;action&quot;:&quot;github_advanced_security&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;platform&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;github_advanced_security_link_platform_navbar&quot;}" class="NavLink-module__link--n48VB"><div class="NavLink-module__text--SdWkb"><svg aria-hidden="true" focusable="false" class="octicon octicon-shield-check NavLink-module__icon--h0sw7" viewBox="0 0 24 24" width="24" height="24" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M16.53 9.78a.75.75 0 0 0-1.06-1.06L11 13.19l-1.97-1.97a.75.75 0 0 0-1.06 1.06l2.5 2.5a.75.75 0 0 0 1.06 0l5-5Z"></path><path d="m12.54.637 8.25 2.675A1.75 1.75 0 0 1 22 4.976V10c0 6.19-3.771 10.704-9.401 12.83a1.704 1.704 0 0 1-1.198 0C5.77 20.705 2 16.19 2 10V4.976c0-.758.489-1.43 1.21-1.664L11.46.637a1.748 1.748 0 0 1 1.08 0Zm-.617 1.426-8.25 2.676a.249.249 0 0 0-.173.237V10c0 5.46 3.28 9.483 8.43 11.426a.199.199 0 0 0 .14 0C17.22 19.483 20.5 15.461 20.5 10V4.976a.25.25 0 0 0-.173-.237l-8.25-2.676a.253.253 0 0 0-.154 0Z"></path></svg><span class="NavLink-module__title--xw3ok">GitHub Advanced Security</span><span class="NavLink-module__subtitle--qC15H">Find and fix vulnerabilities</span></div></a></li><li><a href="https://github.com/security/advanced-security/code-security" data-analytics-event="{&quot;action&quot;:&quot;code_security&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;platform&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;code_security_link_platform_navbar&quot;}" class="NavLink-module__link--n48VB"><div class="NavLink-module__text--SdWkb"><svg aria-hidden="true" focusable="false" class="octicon octicon-code-square NavLink-module__icon--h0sw7" viewBox="0 0 24 24" width="24" height="24" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M10.3 8.24a.75.75 0 0 1-.04 1.06L7.352 12l2.908 2.7a.75.75 0 1 1-1.02 1.1l-3.5-3.25a.75.75 0 0 1 0-1.1l3.5-3.25a.75.75 0 0 1 1.06.04Zm3.44 1.06a.75.75 0 1 1 1.02-1.1l3.5 3.25a.75.75 0 0 1 0 1.1l-3.5 3.25a.75.75 0 1 1-1.02-1.1l2.908-2.7-2.908-2.7Z"></path><path d="M2 3.75C2 2.784 2.784 2 3.75 2h16.5c.966 0 1.75.784 1.75 1.75v16.5A1.75 1.75 0 0 1 20.25 22H3.75A1.75 1.75 0 0 1 2 20.25Zm1.75-.25a.25.25 0 0 0-.25.25v16.5c0 .138.112.25.25.25h16.5a.25.25 0 0 0 .25-.25V3.75a.25.25 0 0 0-.25-.25Z"></path></svg><span class="NavLink-module__title--xw3ok">Code security</span><span class="NavLink-module__subtitle--qC15H">Secure your code as you build</span></div></a></li><li><a href="https://github.com/security/advanced-security/secret-protection" data-analytics-event="{&quot;action&quot;:&quot;secret_protection&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;platform&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;secret_protection_link_platform_navbar&quot;}" class="NavLink-module__link--n48VB"><div class="NavLink-module__text--SdWkb"><svg aria-hidden="true" focusable="false" class="octicon octicon-lock NavLink-module__icon--h0sw7" viewBox="0 0 24 24" width="24" height="24" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M6 9V7.25C6 3.845 8.503 1 12 1s6 2.845 6 6.25V9h.5a2.5 2.5 0 0 1 2.5 2.5v8a2.5 2.5 0 0 1-2.5 2.5h-13A2.5 2.5 0 0 1 3 19.5v-8A2.5 2.5 0 0 1 5.5 9Zm-1.5 2.5v8a1 1 0 0 0 1 1h13a1 1 0 0 0 1-1v-8a1 1 0 0 0-1-1h-13a1 1 0 0 0-1 1Zm3-4.25V9h9V7.25c0-2.67-1.922-4.75-4.5-4.75-2.578 0-4.5 2.08-4.5 4.75Z"></path></svg><span class="NavLink-module__title--xw3ok">Secret protection</span><span class="NavLink-module__subtitle--qC15H">Stop leaks before they start</span></div></a></li></ul></div></li><li><div class="NavGroup-module__group--T925n NavGroup-module__hasSeparator--AJeNz"><span class="NavGroup-module__title--TdKyz">EXPLORE</span><ul class="NavGroup-module__list--M8eGv"><li><a href="https://github.com/why-github" data-analytics-event="{&quot;action&quot;:&quot;why_github&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;platform&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;why_github_link_platform_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Why GitHub</span></a></li><li><a href="https://docs.github.com" data-analytics-event="{&quot;action&quot;:&quot;documentation&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;platform&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;documentation_link_platform_navbar&quot;}" class="NavLink-module__link--n48VB" target="_blank" rel="noreferrer"><span class="NavLink-module__title--xw3ok">Documentation</span><svg aria-hidden="true" focusable="false" class="octicon octicon-link-external NavLink-module__externalIcon--JurQ9" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li><li><a href="https://github.blog" data-analytics-event="{&quot;action&quot;:&quot;blog&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;platform&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;blog_link_platform_navbar&quot;}" class="NavLink-module__link--n48VB" target="_blank" rel="noreferrer"><span class="NavLink-module__title--xw3ok">Blog</span><svg aria-hidden="true" focusable="false" class="octicon octicon-link-external NavLink-module__externalIcon--JurQ9" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li><li><a href="https://github.blog/changelog" data-analytics-event="{&quot;action&quot;:&quot;changelog&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;platform&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;changelog_link_platform_navbar&quot;}" class="NavLink-module__link--n48VB" target="_blank" rel="noreferrer"><span class="NavLink-module__title--xw3ok">Changelog</span><svg aria-hidden="true" focusable="false" class="octicon octicon-link-external NavLink-module__externalIcon--JurQ9" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li><li><a href="https://github.com/marketplace" data-analytics-event="{&quot;action&quot;:&quot;marketplace&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;platform&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;marketplace_link_platform_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Marketplace</span></a></li></ul></div></li></ul><div class="NavDropdown-module__trailingLinkContainer--MNB5T"><a href="https://github.com/features" data-analytics-event="{&quot;action&quot;:&quot;view_all_features&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;platform&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;view_all_features_link_platform_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">View all features</span><svg aria-hidden="true" focusable="false" class="octicon octicon-chevron-right NavLink-module__arrowIcon--g6Lip" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M6.22 3.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L9.94 8 6.22 4.28a.75.75 0 0 1 0-1.06Z"></path></svg></a></div></div></div></li><li><div class="NavDropdown-module__container--bmXM2 js-details-container js-header-menu-item"><button type="button" class="NavDropdown-module__button--Hq9UR js-details-target" aria-expanded="false">Solutions<svg aria-hidden="true" focusable="false" class="octicon octicon-chevron-right NavDropdown-module__buttonIcon--SR0Ke" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M6.22 3.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L9.94 8 6.22 4.28a.75.75 0 0 1 0-1.06Z"></path></svg></button><div class="NavDropdown-module__dropdown--Ig57Y"><ul class="NavDropdown-module__list--RwSSK"><li><div class="NavGroup-module__group--T925n"><span class="NavGroup-module__title--TdKyz">BY COMPANY SIZE</span><ul class="NavGroup-module__list--M8eGv"><li><a href="https://github.com/enterprise" data-analytics-event="{&quot;action&quot;:&quot;enterprises&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;solutions&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;enterprises_link_solutions_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Enterprises</span></a></li><li><a href="https://github.com/team" data-analytics-event="{&quot;action&quot;:&quot;small_and_medium_teams&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;solutions&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;small_and_medium_teams_link_solutions_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Small and medium teams</span></a></li><li><a href="https://github.com/enterprise/startups" data-analytics-event="{&quot;action&quot;:&quot;startups&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;solutions&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;startups_link_solutions_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Startups</span></a></li><li><a href="https://github.com/solutions/industry/nonprofits" data-analytics-event="{&quot;action&quot;:&quot;nonprofits&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;solutions&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;nonprofits_link_solutions_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Nonprofits</span></a></li></ul></div></li><li><div class="NavGroup-module__group--T925n"><span class="NavGroup-module__title--TdKyz">BY USE CASE</span><ul class="NavGroup-module__list--M8eGv"><li><a href="https://github.com/solutions/use-case/app-modernization" data-analytics-event="{&quot;action&quot;:&quot;app_modernization&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;solutions&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;app_modernization_link_solutions_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">App Modernization</span></a></li><li><a href="https://github.com/solutions/use-case/devsecops" data-analytics-event="{&quot;action&quot;:&quot;devsecops&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;solutions&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;devsecops_link_solutions_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">DevSecOps</span></a></li><li><a href="https://github.com/solutions/use-case/devops" data-analytics-event="{&quot;action&quot;:&quot;devops&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;solutions&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;devops_link_solutions_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">DevOps</span></a></li><li><a href="https://github.com/solutions/use-case/ci-cd" data-analytics-event="{&quot;action&quot;:&quot;ci/cd&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;solutions&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;ci/cd_link_solutions_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">CI/CD</span></a></li><li><a href="https://github.com/solutions/use-case" data-analytics-event="{&quot;action&quot;:&quot;view_all_use_cases&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;solutions&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;view_all_use_cases_link_solutions_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">View all use cases</span><svg aria-hidden="true" focusable="false" class="octicon octicon-chevron-right NavLink-module__arrowIcon--g6Lip" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M6.22 3.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L9.94 8 6.22 4.28a.75.75 0 0 1 0-1.06Z"></path></svg></a></li></ul></div></li><li><div class="NavGroup-module__group--T925n"><span class="NavGroup-module__title--TdKyz">BY INDUSTRY</span><ul class="NavGroup-module__list--M8eGv"><li><a href="https://github.com/solutions/industry/healthcare" data-analytics-event="{&quot;action&quot;:&quot;healthcare&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;solutions&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;healthcare_link_solutions_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Healthcare</span></a></li><li><a href="https://github.com/solutions/industry/financial-services" data-analytics-event="{&quot;action&quot;:&quot;financial_services&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;solutions&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;financial_services_link_solutions_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Financial services</span></a></li><li><a href="https://github.com/solutions/industry/manufacturing" data-analytics-event="{&quot;action&quot;:&quot;manufacturing&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;solutions&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;manufacturing_link_solutions_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Manufacturing</span></a></li><li><a href="https://github.com/solutions/industry/government" data-analytics-event="{&quot;action&quot;:&quot;government&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;solutions&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;government_link_solutions_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Government</span></a></li><li><a href="https://github.com/solutions/industry" data-analytics-event="{&quot;action&quot;:&quot;view_all_industries&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;solutions&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;view_all_industries_link_solutions_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">View all industries</span><svg aria-hidden="true" focusable="false" class="octicon octicon-chevron-right NavLink-module__arrowIcon--g6Lip" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M6.22 3.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L9.94 8 6.22 4.28a.75.75 0 0 1 0-1.06Z"></path></svg></a></li></ul></div></li></ul><div class="NavDropdown-module__trailingLinkContainer--MNB5T"><a href="https://github.com/solutions" data-analytics-event="{&quot;action&quot;:&quot;view_all_solutions&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;solutions&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;view_all_solutions_link_solutions_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">View all solutions</span><svg aria-hidden="true" focusable="false" class="octicon octicon-chevron-right NavLink-module__arrowIcon--g6Lip" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M6.22 3.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L9.94 8 6.22 4.28a.75.75 0 0 1 0-1.06Z"></path></svg></a></div></div></div></li><li><div class="NavDropdown-module__container--bmXM2 js-details-container js-header-menu-item"><button type="button" class="NavDropdown-module__button--Hq9UR js-details-target" aria-expanded="false">Resources<svg aria-hidden="true" focusable="false" class="octicon octicon-chevron-right NavDropdown-module__buttonIcon--SR0Ke" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M6.22 3.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L9.94 8 6.22 4.28a.75.75 0 0 1 0-1.06Z"></path></svg></button><div class="NavDropdown-module__dropdown--Ig57Y"><ul class="NavDropdown-module__list--RwSSK"><li><div class="NavGroup-module__group--T925n"><span class="NavGroup-module__title--TdKyz">EXPLORE BY TOPIC</span><ul class="NavGroup-module__list--M8eGv"><li><a href="https://github.com/resources/articles?topic=ai" data-analytics-event="{&quot;action&quot;:&quot;ai&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;resources&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;ai_link_resources_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">AI</span></a></li><li><a href="https://github.com/resources/articles?topic=software-development" data-analytics-event="{&quot;action&quot;:&quot;software_development&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;resources&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;software_development_link_resources_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Software Development</span></a></li><li><a href="https://github.com/resources/articles?topic=devops" data-analytics-event="{&quot;action&quot;:&quot;devops&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;resources&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;devops_link_resources_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">DevOps</span></a></li><li><a href="https://github.com/resources/articles?topic=security" data-analytics-event="{&quot;action&quot;:&quot;security&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;resources&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;security_link_resources_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Security</span></a></li><li><a href="https://github.com/resources/articles" data-analytics-event="{&quot;action&quot;:&quot;view_all_topics&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;resources&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;view_all_topics_link_resources_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">View all topics</span><svg aria-hidden="true" focusable="false" class="octicon octicon-chevron-right NavLink-module__arrowIcon--g6Lip" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M6.22 3.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L9.94 8 6.22 4.28a.75.75 0 0 1 0-1.06Z"></path></svg></a></li></ul></div></li><li><div class="NavGroup-module__group--T925n"><span class="NavGroup-module__title--TdKyz">EXPLORE BY TYPE</span><ul class="NavGroup-module__list--M8eGv"><li><a href="https://github.com/customer-stories" data-analytics-event="{&quot;action&quot;:&quot;customer_stories&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;resources&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;customer_stories_link_resources_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Customer stories</span></a></li><li><a href="https://github.com/resources/events" data-analytics-event="{&quot;action&quot;:&quot;events__webinars&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;resources&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;events__webinars_link_resources_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Events &amp; webinars</span></a></li><li><a href="https://github.com/resources/whitepapers" data-analytics-event="{&quot;action&quot;:&quot;ebooks__reports&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;resources&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;ebooks__reports_link_resources_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Ebooks &amp; reports</span></a></li><li><a href="https://github.com/solutions/executive-insights" data-analytics-event="{&quot;action&quot;:&quot;business_insights&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;resources&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;business_insights_link_resources_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Business insights</span></a></li><li><a href="https://skills.github.com" data-analytics-event="{&quot;action&quot;:&quot;github_skills&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;resources&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;github_skills_link_resources_navbar&quot;}" class="NavLink-module__link--n48VB" target="_blank" rel="noreferrer"><span class="NavLink-module__title--xw3ok">GitHub Skills</span><svg aria-hidden="true" focusable="false" class="octicon octicon-link-external NavLink-module__externalIcon--JurQ9" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li></ul></div></li><li><div class="NavGroup-module__group--T925n"><span class="NavGroup-module__title--TdKyz">SUPPORT &amp; SERVICES</span><ul class="NavGroup-module__list--M8eGv"><li><a href="https://docs.github.com" data-analytics-event="{&quot;action&quot;:&quot;documentation&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;resources&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;documentation_link_resources_navbar&quot;}" class="NavLink-module__link--n48VB" target="_blank" rel="noreferrer"><span class="NavLink-module__title--xw3ok">Documentation</span><svg aria-hidden="true" focusable="false" class="octicon octicon-link-external NavLink-module__externalIcon--JurQ9" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li><li><a href="https://support.github.com" data-analytics-event="{&quot;action&quot;:&quot;customer_support&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;resources&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;customer_support_link_resources_navbar&quot;}" class="NavLink-module__link--n48VB" target="_blank" rel="noreferrer"><span class="NavLink-module__title--xw3ok">Customer support</span><svg aria-hidden="true" focusable="false" class="octicon octicon-link-external NavLink-module__externalIcon--JurQ9" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li><li><a href="https://github.com/orgs/community/discussions" data-analytics-event="{&quot;action&quot;:&quot;community_forum&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;resources&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;community_forum_link_resources_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Community forum</span></a></li><li><a href="https://github.com/trust-center" data-analytics-event="{&quot;action&quot;:&quot;trust_center&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;resources&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;trust_center_link_resources_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Trust center</span></a></li><li><a href="https://github.com/partners" data-analytics-event="{&quot;action&quot;:&quot;partners&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;resources&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;partners_link_resources_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Partners</span></a></li></ul></div></li></ul></div></div></li><li><div class="NavDropdown-module__container--bmXM2 js-details-container js-header-menu-item"><button type="button" class="NavDropdown-module__button--Hq9UR js-details-target" aria-expanded="false">Open Source<svg aria-hidden="true" focusable="false" class="octicon octicon-chevron-right NavDropdown-module__buttonIcon--SR0Ke" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M6.22 3.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L9.94 8 6.22 4.28a.75.75 0 0 1 0-1.06Z"></path></svg></button><div class="NavDropdown-module__dropdown--Ig57Y"><ul class="NavDropdown-module__list--RwSSK"><li><div class="NavGroup-module__group--T925n"><span class="NavGroup-module__title--TdKyz">COMMUNITY</span><ul class="NavGroup-module__list--M8eGv"><li><a href="https://github.com/sponsors" data-analytics-event="{&quot;action&quot;:&quot;github_sponsors&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;open_source&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;github_sponsors_link_open_source_navbar&quot;}" class="NavLink-module__link--n48VB"><div class="NavLink-module__text--SdWkb"><svg aria-hidden="true" focusable="false" class="octicon octicon-sponsor-tiers NavLink-module__icon--h0sw7" viewBox="0 0 24 24" width="24" height="24" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M16.004 1.25C18.311 1.25 20 3.128 20 5.75c0 2.292-1.23 4.464-3.295 6.485-.481.47-.98.909-1.482 1.31l.265 1.32 1.375 7.5a.75.75 0 0 1-.982.844l-3.512-1.207a.75.75 0 0 0-.488 0L8.37 23.209a.75.75 0 0 1-.982-.844l1.378-7.512.261-1.309c-.5-.4-1-.838-1.481-1.31C5.479 10.215 4.25 8.043 4.25 5.75c0-2.622 1.689-4.5 3.996-4.5 1.55 0 2.947.752 3.832 1.967l.047.067.047-.067a4.726 4.726 0 0 1 3.612-1.962l.22-.005ZM13.89 14.531c-.418.285-.828.542-1.218.77l-.18.103a.75.75 0 0 1-.734 0l-.071-.04-.46-.272c-.282-.173-.573-.36-.868-.562l-.121.605-1.145 6.239 2.3-.79a2.248 2.248 0 0 1 1.284-.054l.18.053 2.299.79-1.141-6.226-.125-.616ZM16.004 2.75c-1.464 0-2.731.983-3.159 2.459-.209.721-1.231.721-1.44 0-.428-1.476-1.695-2.459-3.16-2.459-1.44 0-2.495 1.173-2.495 3 0 1.811 1.039 3.647 2.844 5.412a19.624 19.624 0 0 0 3.734 2.84l-.019-.011-.184-.111.147-.088a19.81 19.81 0 0 0 3.015-2.278l.37-.352C17.46 9.397 18.5 7.561 18.5 5.75c0-1.827-1.055-3-2.496-3Z"></path></svg><span class="NavLink-module__title--xw3ok">GitHub Sponsors</span><span class="NavLink-module__subtitle--qC15H">Fund open source developers</span></div></a></li></ul></div></li><li><div class="NavGroup-module__group--T925n"><span class="NavGroup-module__title--TdKyz">PROGRAMS</span><ul class="NavGroup-module__list--M8eGv"><li><a href="https://securitylab.github.com" data-analytics-event="{&quot;action&quot;:&quot;security_lab&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;open_source&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;security_lab_link_open_source_navbar&quot;}" class="NavLink-module__link--n48VB" target="_blank" rel="noreferrer"><span class="NavLink-module__title--xw3ok">Security Lab</span><svg aria-hidden="true" focusable="false" class="octicon octicon-link-external NavLink-module__externalIcon--JurQ9" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li><li><a href="https://maintainers.github.com" data-analytics-event="{&quot;action&quot;:&quot;maintainer_community&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;open_source&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;maintainer_community_link_open_source_navbar&quot;}" class="NavLink-module__link--n48VB" target="_blank" rel="noreferrer"><span class="NavLink-module__title--xw3ok">Maintainer Community</span><svg aria-hidden="true" focusable="false" class="octicon octicon-link-external NavLink-module__externalIcon--JurQ9" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li><li><a href="https://github.com/accelerator" data-analytics-event="{&quot;action&quot;:&quot;accelerator&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;open_source&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;accelerator_link_open_source_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Accelerator</span></a></li><li><a href="https://archiveprogram.github.com" data-analytics-event="{&quot;action&quot;:&quot;archive_program&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;open_source&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;archive_program_link_open_source_navbar&quot;}" class="NavLink-module__link--n48VB" target="_blank" rel="noreferrer"><span class="NavLink-module__title--xw3ok">Archive Program</span><svg aria-hidden="true" focusable="false" class="octicon octicon-link-external NavLink-module__externalIcon--JurQ9" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li></ul></div></li><li><div class="NavGroup-module__group--T925n"><span class="NavGroup-module__title--TdKyz">REPOSITORIES</span><ul class="NavGroup-module__list--M8eGv"><li><a href="https://github.com/topics" data-analytics-event="{&quot;action&quot;:&quot;topics&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;open_source&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;topics_link_open_source_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Topics</span></a></li><li><a href="https://github.com/trending" data-analytics-event="{&quot;action&quot;:&quot;trending&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;open_source&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;trending_link_open_source_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Trending</span></a></li><li><a href="https://github.com/collections" data-analytics-event="{&quot;action&quot;:&quot;collections&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;open_source&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;collections_link_open_source_navbar&quot;}" class="NavLink-module__link--n48VB"><span class="NavLink-module__title--xw3ok">Collections</span></a></li></ul></div></li></ul></div></div></li><li><div class="NavDropdown-module__container--bmXM2 js-details-container js-header-menu-item"><button type="button" class="NavDropdown-module__button--Hq9UR js-details-target" aria-expanded="false">Enterprise<svg aria-hidden="true" focusable="false" class="octicon octicon-chevron-right NavDropdown-module__buttonIcon--SR0Ke" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M6.22 3.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L9.94 8 6.22 4.28a.75.75 0 0 1 0-1.06Z"></path></svg></button><div class="NavDropdown-module__dropdown--Ig57Y"><ul class="NavDropdown-module__list--RwSSK"><li><div class="NavGroup-module__group--T925n"><span class="NavGroup-module__title--TdKyz">ENTERPRISE SOLUTIONS</span><ul class="NavGroup-module__list--M8eGv"><li><a href="https://github.com/enterprise" data-analytics-event="{&quot;action&quot;:&quot;enterprise_platform&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;enterprise&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;enterprise_platform_link_enterprise_navbar&quot;}" class="NavLink-module__link--n48VB"><div class="NavLink-module__text--SdWkb"><svg aria-hidden="true" focusable="false" class="octicon octicon-stack NavLink-module__icon--h0sw7" viewBox="0 0 24 24" width="24" height="24" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M11.063 1.456a1.749 1.749 0 0 1 1.874 0l8.383 5.316a1.751 1.751 0 0 1 0 2.956l-8.383 5.316a1.749 1.749 0 0 1-1.874 0L2.68 9.728a1.751 1.751 0 0 1 0-2.956Zm1.071 1.267a.25.25 0 0 0-.268 0L3.483 8.039a.25.25 0 0 0 0 .422l8.383 5.316a.25.25 0 0 0 .268 0l8.383-5.316a.25.25 0 0 0 0-.422Z"></path><path d="M1.867 12.324a.75.75 0 0 1 1.035-.232l8.964 5.685a.25.25 0 0 0 .268 0l8.964-5.685a.75.75 0 0 1 .804 1.267l-8.965 5.685a1.749 1.749 0 0 1-1.874 0l-8.965-5.685a.75.75 0 0 1-.231-1.035Z"></path><path d="M1.867 16.324a.75.75 0 0 1 1.035-.232l8.964 5.685a.25.25 0 0 0 .268 0l8.964-5.685a.75.75 0 0 1 .804 1.267l-8.965 5.685a1.749 1.749 0 0 1-1.874 0l-8.965-5.685a.75.75 0 0 1-.231-1.035Z"></path></svg><span class="NavLink-module__title--xw3ok">Enterprise platform</span><span class="NavLink-module__subtitle--qC15H">AI-powered developer platform</span></div></a></li></ul></div></li><li><div class="NavGroup-module__group--T925n"><span class="NavGroup-module__title--TdKyz">AVAILABLE ADD-ONS</span><ul class="NavGroup-module__list--M8eGv"><li><a href="https://github.com/security/advanced-security" data-analytics-event="{&quot;action&quot;:&quot;github_advanced_security&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;enterprise&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;github_advanced_security_link_enterprise_navbar&quot;}" class="NavLink-module__link--n48VB"><div class="NavLink-module__text--SdWkb"><svg aria-hidden="true" focusable="false" class="octicon octicon-shield-check NavLink-module__icon--h0sw7" viewBox="0 0 24 24" width="24" height="24" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M16.53 9.78a.75.75 0 0 0-1.06-1.06L11 13.19l-1.97-1.97a.75.75 0 0 0-1.06 1.06l2.5 2.5a.75.75 0 0 0 1.06 0l5-5Z"></path><path d="m12.54.637 8.25 2.675A1.75 1.75 0 0 1 22 4.976V10c0 6.19-3.771 10.704-9.401 12.83a1.704 1.704 0 0 1-1.198 0C5.77 20.705 2 16.19 2 10V4.976c0-.758.489-1.43 1.21-1.664L11.46.637a1.748 1.748 0 0 1 1.08 0Zm-.617 1.426-8.25 2.676a.249.249 0 0 0-.173.237V10c0 5.46 3.28 9.483 8.43 11.426a.199.199 0 0 0 .14 0C17.22 19.483 20.5 15.461 20.5 10V4.976a.25.25 0 0 0-.173-.237l-8.25-2.676a.253.253 0 0 0-.154 0Z"></path></svg><span class="NavLink-module__title--xw3ok">GitHub Advanced Security</span><span class="NavLink-module__subtitle--qC15H">Enterprise-grade security features</span></div></a></li><li><a href="https://github.com/features/copilot/copilot-business" data-analytics-event="{&quot;action&quot;:&quot;copilot_for_business&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;enterprise&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;copilot_for_business_link_enterprise_navbar&quot;}" class="NavLink-module__link--n48VB"><div class="NavLink-module__text--SdWkb"><svg aria-hidden="true" focusable="false" class="octicon octicon-copilot NavLink-module__icon--h0sw7" viewBox="0 0 24 24" width="24" height="24" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M23.922 16.992c-.861 1.495-5.859 5.023-11.922 5.023-6.063 0-11.061-3.528-11.922-5.023A.641.641 0 0 1 0 16.736v-2.869a.841.841 0 0 1 .053-.22c.372-.935 1.347-2.292 2.605-2.656.167-.429.414-1.055.644-1.517a10.195 10.195 0 0 1-.052-1.086c0-1.331.282-2.499 1.132-3.368.397-.406.89-.717 1.474-.952 1.399-1.136 3.392-2.093 6.122-2.093 2.731 0 4.767.957 6.166 2.093.584.235 1.077.546 1.474.952.85.869 1.132 2.037 1.132 3.368 0 .368-.014.733-.052 1.086.23.462.477 1.088.644 1.517 1.258.364 2.233 1.721 2.605 2.656a.832.832 0 0 1 .053.22v2.869a.641.641 0 0 1-.078.256ZM12.172 11h-.344a4.323 4.323 0 0 1-.355.508C10.703 12.455 9.555 13 7.965 13c-1.725 0-2.989-.359-3.782-1.259a2.005 2.005 0 0 1-.085-.104L4 11.741v6.585c1.435.779 4.514 2.179 8 2.179 3.486 0 6.565-1.4 8-2.179v-6.585l-.098-.104s-.033.045-.085.104c-.793.9-2.057 1.259-3.782 1.259-1.59 0-2.738-.545-3.508-1.492a4.323 4.323 0 0 1-.355-.508h-.016.016Zm.641-2.935c.136 1.057.403 1.913.878 2.497.442.544 1.134.938 2.344.938 1.573 0 2.292-.337 2.657-.751.384-.435.558-1.15.558-2.361 0-1.14-.243-1.847-.705-2.319-.477-.488-1.319-.862-2.824-1.025-1.487-.161-2.192.138-2.533.529-.269.307-.437.808-.438 1.578v.021c0 .265.021.562.063.893Zm-1.626 0c.042-.331.063-.628.063-.894v-.02c-.001-.77-.169-1.271-.438-1.578-.341-.391-1.046-.69-2.533-.529-1.505.163-2.347.537-2.824 1.025-.462.472-.705 1.179-.705 2.319 0 1.211.175 1.926.558 2.361.365.414 1.084.751 2.657.751 1.21 0 1.902-.394 2.344-.938.475-.584.742-1.44.878-2.497Z"></path><path d="M14.5 14.25a1 1 0 0 1 1 1v2a1 1 0 0 1-2 0v-2a1 1 0 0 1 1-1Zm-5 0a1 1 0 0 1 1 1v2a1 1 0 0 1-2 0v-2a1 1 0 0 1 1-1Z"></path></svg><span class="NavLink-module__title--xw3ok">Copilot for Business</span><span class="NavLink-module__subtitle--qC15H">Enterprise-grade AI features</span></div></a></li><li><a href="https://github.com/premium-support" data-analytics-event="{&quot;action&quot;:&quot;premium_support&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;enterprise&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;premium_support_link_enterprise_navbar&quot;}" class="NavLink-module__link--n48VB"><div class="NavLink-module__text--SdWkb"><svg aria-hidden="true" focusable="false" class="octicon octicon-comment-discussion NavLink-module__icon--h0sw7" viewBox="0 0 24 24" width="24" height="24" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M1.75 1h12.5c.966 0 1.75.784 1.75 1.75v9.5A1.75 1.75 0 0 1 14.25 14H8.061l-2.574 2.573A1.458 1.458 0 0 1 3 15.543V14H1.75A1.75 1.75 0 0 1 0 12.25v-9.5C0 1.784.784 1 1.75 1ZM1.5 2.75v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25H1.75a.25.25 0 0 0-.25.25Z"></path><path d="M22.5 8.75a.25.25 0 0 0-.25-.25h-3.5a.75.75 0 0 1 0-1.5h3.5c.966 0 1.75.784 1.75 1.75v9.5A1.75 1.75 0 0 1 22.25 20H21v1.543a1.457 1.457 0 0 1-2.487 1.03L15.939 20H10.75A1.75 1.75 0 0 1 9 18.25v-1.465a.75.75 0 0 1 1.5 0v1.465c0 .138.112.25.25.25h5.5a.75.75 0 0 1 .53.22l2.72 2.72v-2.19a.75.75 0 0 1 .75-.75h2a.25.25 0 0 0 .25-.25v-9.5Z"></path></svg><span class="NavLink-module__title--xw3ok">Premium Support</span><span class="NavLink-module__subtitle--qC15H">Enterprise-grade 24/7 support</span></div></a></li></ul></div></li></ul></div></div></li><li><a href="https://github.com/pricing" data-analytics-event="{&quot;action&quot;:&quot;pricing&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;context&quot;:&quot;pricing&quot;,&quot;location&quot;:&quot;navbar&quot;,&quot;label&quot;:&quot;pricing_link_pricing_navbar&quot;}" class="NavLink-module__link--n48VB MarketingNavigation-module__navLink--U9Uuk"><span class="NavLink-module__title--xw3ok">Pricing</span></a></li></ul></nav><script type="application/json" id="__PRIMER_DATA_:R0:__">{"resolvedServerColorMode":"day"}</script></div>
</react-partial>



        <div class="d-flex flex-column flex-lg-row width-full flex-justify-end flex-lg-items-center text-center mt-3 mt-lg-0 text-lg-left ml-lg-3">
                


<qbsearch-input class="search-input" data-scope="repo:woocommerce/woocommerce" data-custom-scopes-path="/search/custom_scopes" data-delete-custom-scopes-csrf="x3hpuneOqFWxzAphAvQ0_1h-p412mulrkTekmmz_YVNQ-IA_flIJ-wLo5yHIipPVjVgIPcuL1zv1uWhuYxJiKA" data-max-custom-scopes="10" data-header-redesign-enabled="false" data-initial-value="" data-blackbird-suggestions-path="/search/suggestions" data-jump-to-suggestions-path="/_graphql/GetSuggestedNavigationDestinations" data-current-repository="woocommerce/woocommerce" data-current-org="woocommerce" data-current-owner="" data-logged-in="false" data-copilot-chat-enabled="false" data-nl-search-enabled="false" data-retain-scroll-position="true">
  <div
    class="search-input-container search-with-dialog position-relative d-flex flex-row flex-items-center mr-4 rounded"
    data-action="click:qbsearch-input#searchInputContainerClicked"
  >
      <button
        type="button"
        class="header-search-button placeholder  input-button form-control d-flex flex-1 flex-self-stretch flex-items-center no-wrap width-full py-0 pl-2 pr-0 text-left border-0 box-shadow-none"
        data-target="qbsearch-input.inputButton"
        aria-label="Search or jump to…"
        aria-haspopup="dialog"
        placeholder="Search or jump to..."
        data-hotkey=s,/
        autocapitalize="off"
        data-analytics-event="{&quot;location&quot;:&quot;navbar&quot;,&quot;action&quot;:&quot;searchbar&quot;,&quot;context&quot;:&quot;global&quot;,&quot;tag&quot;:&quot;input&quot;,&quot;label&quot;:&quot;searchbar_input_global_navbar&quot;}"
        data-action="click:qbsearch-input#handleExpand"
      >
        <div class="mr-2 color-fg-muted">
          <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search">
    <path d="M10.68 11.74a6 6 0 0 1-7.922-8.982 6 6 0 0 1 8.982 7.922l3.04 3.04a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM11.5 7a4.499 4.499 0 1 0-8.997 0A4.499 4.499 0 0 0 11.5 7Z"></path>
</svg>
        </div>
        <span class="flex-1" data-target="qbsearch-input.inputButtonText">Search or jump to...</span>
          <div class="d-flex" data-target="qbsearch-input.hotkeyIndicator">
            <svg xmlns="http://www.w3.org/2000/svg" width="22" height="20" aria-hidden="true" class="mr-1"><path fill="none" stroke="#979A9C" opacity=".4" d="M3.5.5h12c1.7 0 3 1.3 3 3v13c0 1.7-1.3 3-3 3h-12c-1.7 0-3-1.3-3-3v-13c0-1.7 1.3-3 3-3z"></path><path fill="#979A9C" d="M11.8 6L8 15.1h-.9L10.8 6h1z"></path></svg>
          </div>
      </button>

    <input type="hidden" name="type" class="js-site-search-type-field">

    
<div class="Overlay--hidden " data-modal-dialog-overlay>
  <modal-dialog data-action="close:qbsearch-input#handleClose cancel:qbsearch-input#handleClose" data-target="qbsearch-input.searchSuggestionsDialog" role="dialog" id="search-suggestions-dialog" aria-modal="true" aria-labelledby="search-suggestions-dialog-header" data-view-component="true" class="Overlay Overlay--width-large Overlay--height-auto">
      <h1 id="search-suggestions-dialog-header" class="sr-only">Search code, repositories, users, issues, pull requests...</h1>
    <div class="Overlay-body Overlay-body--paddingNone">
      
          <div data-view-component="true">        <div class="search-suggestions position-fixed width-full color-shadow-large border color-fg-default color-bg-default overflow-hidden d-flex flex-column query-builder-container"
          style="border-radius: 12px;"
          data-target="qbsearch-input.queryBuilderContainer"
          hidden
        >
          <!-- '"` --><!-- </textarea></xmp> --></option></form><form id="query-builder-test-form" action="" accept-charset="UTF-8" method="get">
  <query-builder data-target="qbsearch-input.queryBuilder" id="query-builder-query-builder-test" data-filter-key=":" data-view-component="true" class="QueryBuilder search-query-builder">
    <div class="FormControl FormControl--fullWidth">
      <label id="query-builder-test-label" for="query-builder-test" class="FormControl-label sr-only">
        Search
      </label>
      <div
        class="QueryBuilder-StyledInput width-fit "
        data-target="query-builder.styledInput"
      >
          <span id="query-builder-test-leadingvisual-wrap" class="FormControl-input-leadingVisualWrap QueryBuilder-leadingVisualWrap">
            <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search FormControl-input-leadingVisual">
    <path d="M10.68 11.74a6 6 0 0 1-7.922-8.982 6 6 0 0 1 8.982 7.922l3.04 3.04a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM11.5 7a4.499 4.499 0 1 0-8.997 0A4.499 4.499 0 0 0 11.5 7Z"></path>
</svg>
          </span>
        <div data-target="query-builder.styledInputContainer" class="QueryBuilder-StyledInputContainer">
          <div
            aria-hidden="true"
            class="QueryBuilder-StyledInputContent"
            data-target="query-builder.styledInputContent"
          ></div>
          <div class="QueryBuilder-InputWrapper">
            <div aria-hidden="true" class="QueryBuilder-Sizer" data-target="query-builder.sizer"></div>
            <input id="query-builder-test" name="query-builder-test" value="" autocomplete="off" type="text" role="combobox" spellcheck="false" aria-expanded="false" aria-describedby="validation-5d4524d1-abbc-416c-a519-e23f14aec3b3" data-target="query-builder.input" data-action="
          input:query-builder#inputChange
          blur:query-builder#inputBlur
          keydown:query-builder#inputKeydown
          focus:query-builder#inputFocus
        " data-view-component="true" class="FormControl-input QueryBuilder-Input FormControl-medium" />
          </div>
        </div>
          <span class="sr-only" id="query-builder-test-clear">Clear</span>
          <button role="button" id="query-builder-test-clear-button" aria-labelledby="query-builder-test-clear query-builder-test-label" data-target="query-builder.clearButton" data-action="
                click:query-builder#clear
                focus:query-builder#clearButtonFocus
                blur:query-builder#clearButtonBlur
              " variant="small" hidden="hidden" type="button" data-view-component="true" class="Button Button--iconOnly Button--invisible Button--medium mr-1 px-2 py-0 d-flex flex-items-center rounded-1 color-fg-muted">  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x-circle-fill Button-visual">
    <path d="M2.343 13.657A8 8 0 1 1 13.658 2.343 8 8 0 0 1 2.343 13.657ZM6.03 4.97a.751.751 0 0 0-1.042.018.751.751 0 0 0-.018 1.042L6.94 8 4.97 9.97a.749.749 0 0 0 .326 1.275.749.749 0 0 0 .734-.215L8 9.06l1.97 1.97a.749.749 0 0 0 1.275-.326.749.749 0 0 0-.215-.734L9.06 8l1.97-1.97a.749.749 0 0 0-.326-1.275.749.749 0 0 0-.734.215L8 6.94Z"></path>
</svg>
</button>

      </div>
      <template id="search-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search">
    <path d="M10.68 11.74a6 6 0 0 1-7.922-8.982 6 6 0 0 1 8.982 7.922l3.04 3.04a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM11.5 7a4.499 4.499 0 1 0-8.997 0A4.499 4.499 0 0 0 11.5 7Z"></path>
</svg>
</template>

<template id="code-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-code">
    <path d="m11.28 3.22 4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.749.749 0 0 1-1.275-.326.749.749 0 0 1 .215-.734L13.94 8l-3.72-3.72a.749.749 0 0 1 .326-1.275.749.749 0 0 1 .734.215Zm-6.56 0a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042L2.06 8l3.72 3.72a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L.47 8.53a.75.75 0 0 1 0-1.06Z"></path>
</svg>
</template>

<template id="file-code-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-file-code">
    <path d="M4 1.75C4 .784 4.784 0 5.75 0h5.586c.464 0 .909.184 1.237.513l2.914 2.914c.329.328.513.773.513 1.237v8.586A1.75 1.75 0 0 1 14.25 15h-9a.75.75 0 0 1 0-1.5h9a.25.25 0 0 0 .25-.25V6h-2.75A1.75 1.75 0 0 1 10 4.25V1.5H5.75a.25.25 0 0 0-.25.25v2.5a.75.75 0 0 1-1.5 0Zm1.72 4.97a.75.75 0 0 1 1.06 0l2 2a.75.75 0 0 1 0 1.06l-2 2a.749.749 0 0 1-1.275-.326.749.749 0 0 1 .215-.734l1.47-1.47-1.47-1.47a.75.75 0 0 1 0-1.06ZM3.28 7.78 1.81 9.25l1.47 1.47a.751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018l-2-2a.75.75 0 0 1 0-1.06l2-2a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Zm8.22-6.218V4.25c0 .138.112.25.25.25h2.688l-.011-.013-2.914-2.914-.013-.011Z"></path>
</svg>
</template>

<template id="history-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-history">
    <path d="m.427 1.927 1.215 1.215a8.002 8.002 0 1 1-1.6 5.685.75.75 0 1 1 1.493-.154 6.5 6.5 0 1 0 1.18-4.458l1.358 1.358A.25.25 0 0 1 3.896 6H.25A.25.25 0 0 1 0 5.75V2.104a.25.25 0 0 1 .427-.177ZM7.75 4a.75.75 0 0 1 .75.75v2.992l2.028.812a.75.75 0 0 1-.557 1.392l-2.5-1A.751.751 0 0 1 7 8.25v-3.5A.75.75 0 0 1 7.75 4Z"></path>
</svg>
</template>

<template id="repo-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-repo">
    <path d="M2 2.5A2.5 2.5 0 0 1 4.5 0h8.75a.75.75 0 0 1 .75.75v12.5a.75.75 0 0 1-.75.75h-2.5a.75.75 0 0 1 0-1.5h1.75v-2h-8a1 1 0 0 0-.714 1.7.75.75 0 1 1-1.072 1.05A2.495 2.495 0 0 1 2 11.5Zm10.5-1h-8a1 1 0 0 0-1 1v6.708A2.486 2.486 0 0 1 4.5 9h8ZM5 12.25a.25.25 0 0 1 .25-.25h3.5a.25.25 0 0 1 .25.25v3.25a.25.25 0 0 1-.4.2l-1.45-1.087a.249.249 0 0 0-.3 0L5.4 15.7a.25.25 0 0 1-.4-.2Z"></path>
</svg>
</template>

<template id="bookmark-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-bookmark">
    <path d="M3 2.75C3 1.784 3.784 1 4.75 1h6.5c.966 0 1.75.784 1.75 1.75v11.5a.75.75 0 0 1-1.227.579L8 11.722l-3.773 3.107A.751.751 0 0 1 3 14.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.91l3.023-2.489a.75.75 0 0 1 .954 0l3.023 2.49V2.75a.25.25 0 0 0-.25-.25Z"></path>
</svg>
</template>

<template id="plus-circle-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-plus-circle">
    <path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm7.25-3.25v2.5h2.5a.75.75 0 0 1 0 1.5h-2.5v2.5a.75.75 0 0 1-1.5 0v-2.5h-2.5a.75.75 0 0 1 0-1.5h2.5v-2.5a.75.75 0 0 1 1.5 0Z"></path>
</svg>
</template>

<template id="circle-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-dot-fill">
    <path d="M8 4a4 4 0 1 1 0 8 4 4 0 0 1 0-8Z"></path>
</svg>
</template>

<template id="trash-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-trash">
    <path d="M11 1.75V3h2.25a.75.75 0 0 1 0 1.5H2.75a.75.75 0 0 1 0-1.5H5V1.75C5 .784 5.784 0 6.75 0h2.5C10.216 0 11 .784 11 1.75ZM4.496 6.675l.66 6.6a.25.25 0 0 0 .249.225h5.19a.25.25 0 0 0 .249-.225l.66-6.6a.75.75 0 0 1 1.492.149l-.66 6.6A1.748 1.748 0 0 1 10.595 15h-5.19a1.75 1.75 0 0 1-1.741-1.575l-.66-6.6a.75.75 0 1 1 1.492-.15ZM6.5 1.75V3h3V1.75a.25.25 0 0 0-.25-.25h-2.5a.25.25 0 0 0-.25.25Z"></path>
</svg>
</template>

<template id="team-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-people">
    <path d="M2 5.5a3.5 3.5 0 1 1 5.898 2.549 5.508 5.508 0 0 1 3.034 4.084.75.75 0 1 1-1.482.235 4 4 0 0 0-7.9 0 .75.75 0 0 1-1.482-.236A5.507 5.507 0 0 1 3.102 8.05 3.493 3.493 0 0 1 2 5.5ZM11 4a3.001 3.001 0 0 1 2.22 5.018 5.01 5.01 0 0 1 2.56 3.012.749.749 0 0 1-.885.954.752.752 0 0 1-.549-.514 3.507 3.507 0 0 0-2.522-2.372.75.75 0 0 1-.574-.73v-.352a.75.75 0 0 1 .416-.672A1.5 1.5 0 0 0 11 5.5.75.75 0 0 1 11 4Zm-5.5-.5a2 2 0 1 0-.001 3.999A2 2 0 0 0 5.5 3.5Z"></path>
</svg>
</template>

<template id="project-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-project">
    <path d="M1.75 0h12.5C15.216 0 16 .784 16 1.75v12.5A1.75 1.75 0 0 1 14.25 16H1.75A1.75 1.75 0 0 1 0 14.25V1.75C0 .784.784 0 1.75 0ZM1.5 1.75v12.5c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25V1.75a.25.25 0 0 0-.25-.25H1.75a.25.25 0 0 0-.25.25ZM11.75 3a.75.75 0 0 1 .75.75v7.5a.75.75 0 0 1-1.5 0v-7.5a.75.75 0 0 1 .75-.75Zm-8.25.75a.75.75 0 0 1 1.5 0v5.5a.75.75 0 0 1-1.5 0ZM8 3a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 3Z"></path>
</svg>
</template>

<template id="pencil-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-pencil">
    <path d="M11.013 1.427a1.75 1.75 0 0 1 2.474 0l1.086 1.086a1.75 1.75 0 0 1 0 2.474l-8.61 8.61c-.21.21-.47.364-.756.445l-3.251.93a.75.75 0 0 1-.927-.928l.929-3.25c.081-.286.235-.547.445-.758l8.61-8.61Zm.176 4.823L9.75 4.81l-6.286 6.287a.253.253 0 0 0-.064.108l-.558 1.953 1.953-.558a.253.253 0 0 0 .108-.064Zm1.238-3.763a.25.25 0 0 0-.354 0L10.811 3.75l1.439 1.44 1.263-1.263a.25.25 0 0 0 0-.354Z"></path>
</svg>
</template>

<template id="copilot-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-copilot">
    <path d="M7.998 15.035c-4.562 0-7.873-2.914-7.998-3.749V9.338c.085-.628.677-1.686 1.588-2.065.013-.07.024-.143.036-.218.029-.183.06-.384.126-.612-.201-.508-.254-1.084-.254-1.656 0-.87.128-1.769.693-2.484.579-.733 1.494-1.124 2.724-1.261 1.206-.134 2.262.034 2.944.765.05.053.096.108.139.165.044-.057.094-.112.143-.165.682-.731 1.738-.899 2.944-.765 1.23.137 2.145.528 2.724 1.261.566.715.693 1.614.693 2.484 0 .572-.053 1.148-.254 1.656.066.228.098.429.126.612.012.076.024.148.037.218.924.385 1.522 1.471 1.591 2.095v1.872c0 .766-3.351 3.795-8.002 3.795Zm0-1.485c2.28 0 4.584-1.11 5.002-1.433V7.862l-.023-.116c-.49.21-1.075.291-1.727.291-1.146 0-2.059-.327-2.71-.991A3.222 3.222 0 0 1 8 6.303a3.24 3.24 0 0 1-.544.743c-.65.664-1.563.991-2.71.991-.652 0-1.236-.081-1.727-.291l-.023.116v4.255c.419.323 2.722 1.433 5.002 1.433ZM6.762 2.83c-.193-.206-.637-.413-1.682-.297-1.019.113-1.479.404-1.713.7-.247.312-.369.789-.369 1.554 0 .793.129 1.171.308 1.371.162.181.519.379 1.442.379.853 0 1.339-.235 1.638-.54.315-.322.527-.827.617-1.553.117-.935-.037-1.395-.241-1.614Zm4.155-.297c-1.044-.116-1.488.091-1.681.297-.204.219-.359.679-.242 1.614.091.726.303 1.231.618 1.553.299.305.784.54 1.638.54.922 0 1.28-.198 1.442-.379.179-.2.308-.578.308-1.371 0-.765-.123-1.242-.37-1.554-.233-.296-.693-.587-1.713-.7Z"></path><path d="M6.25 9.037a.75.75 0 0 1 .75.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 .75-.75Zm4.25.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 1.5 0Z"></path>
</svg>
</template>

<template id="copilot-error-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-copilot-error">
    <path d="M16 11.24c0 .112-.072.274-.21.467L13 9.688V7.862l-.023-.116c-.49.21-1.075.291-1.727.291-.198 0-.388-.009-.571-.029L6.833 5.226a4.01 4.01 0 0 0 .17-.782c.117-.935-.037-1.395-.241-1.614-.193-.206-.637-.413-1.682-.297-.683.076-1.115.231-1.395.415l-1.257-.91c.579-.564 1.413-.877 2.485-.996 1.206-.134 2.262.034 2.944.765.05.053.096.108.139.165.044-.057.094-.112.143-.165.682-.731 1.738-.899 2.944-.765 1.23.137 2.145.528 2.724 1.261.566.715.693 1.614.693 2.484 0 .572-.053 1.148-.254 1.656.066.228.098.429.126.612.012.076.024.148.037.218.924.385 1.522 1.471 1.591 2.095Zm-5.083-8.707c-1.044-.116-1.488.091-1.681.297-.204.219-.359.679-.242 1.614.091.726.303 1.231.618 1.553.299.305.784.54 1.638.54.922 0 1.28-.198 1.442-.379.179-.2.308-.578.308-1.371 0-.765-.123-1.242-.37-1.554-.233-.296-.693-.587-1.713-.7Zm2.511 11.074c-1.393.776-3.272 1.428-5.43 1.428-4.562 0-7.873-2.914-7.998-3.749V9.338c.085-.628.677-1.686 1.588-2.065.013-.07.024-.143.036-.218.029-.183.06-.384.126-.612-.18-.455-.241-.963-.252-1.475L.31 4.107A.747.747 0 0 1 0 3.509V3.49a.748.748 0 0 1 .625-.73c.156-.026.306.047.435.139l14.667 10.578a.592.592 0 0 1 .227.264.752.752 0 0 1 .046.249v.022a.75.75 0 0 1-1.19.596Zm-1.367-.991L5.635 7.964a5.128 5.128 0 0 1-.889.073c-.652 0-1.236-.081-1.727-.291l-.023.116v4.255c.419.323 2.722 1.433 5.002 1.433 1.539 0 3.089-.505 4.063-.934Z"></path>
</svg>
</template>

<template id="workflow-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-workflow">
    <path d="M0 1.75C0 .784.784 0 1.75 0h3.5C6.216 0 7 .784 7 1.75v3.5A1.75 1.75 0 0 1 5.25 7H4v4a1 1 0 0 0 1 1h4v-1.25C9 9.784 9.784 9 10.75 9h3.5c.966 0 1.75.784 1.75 1.75v3.5A1.75 1.75 0 0 1 14.25 16h-3.5A1.75 1.75 0 0 1 9 14.25v-.75H5A2.5 2.5 0 0 1 2.5 11V7h-.75A1.75 1.75 0 0 1 0 5.25Zm1.75-.25a.25.25 0 0 0-.25.25v3.5c0 .138.112.25.25.25h3.5a.25.25 0 0 0 .25-.25v-3.5a.25.25 0 0 0-.25-.25Zm9 9a.25.25 0 0 0-.25.25v3.5c0 .138.112.25.25.25h3.5a.25.25 0 0 0 .25-.25v-3.5a.25.25 0 0 0-.25-.25Z"></path>
</svg>
</template>

<template id="book-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-book">
    <path d="M0 1.75A.75.75 0 0 1 .75 1h4.253c1.227 0 2.317.59 3 1.501A3.743 3.743 0 0 1 11.006 1h4.245a.75.75 0 0 1 .75.75v10.5a.75.75 0 0 1-.75.75h-4.507a2.25 2.25 0 0 0-1.591.659l-.622.621a.75.75 0 0 1-1.06 0l-.622-.621A2.25 2.25 0 0 0 5.258 13H.75a.75.75 0 0 1-.75-.75Zm7.251 10.324.004-5.073-.002-2.253A2.25 2.25 0 0 0 5.003 2.5H1.5v9h3.757a3.75 3.75 0 0 1 1.994.574ZM8.755 4.75l-.004 7.322a3.752 3.752 0 0 1 1.992-.572H14.5v-9h-3.495a2.25 2.25 0 0 0-2.25 2.25Z"></path>
</svg>
</template>

<template id="code-review-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-code-review">
    <path d="M1.75 1h12.5c.966 0 1.75.784 1.75 1.75v8.5A1.75 1.75 0 0 1 14.25 13H8.061l-2.574 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25v-8.5C0 1.784.784 1 1.75 1ZM1.5 2.75v8.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-8.5a.25.25 0 0 0-.25-.25H1.75a.25.25 0 0 0-.25.25Zm5.28 1.72a.75.75 0 0 1 0 1.06L5.31 7l1.47 1.47a.751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018l-2-2a.75.75 0 0 1 0-1.06l2-2a.75.75 0 0 1 1.06 0Zm2.44 0a.75.75 0 0 1 1.06 0l2 2a.75.75 0 0 1 0 1.06l-2 2a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L10.69 7 9.22 5.53a.75.75 0 0 1 0-1.06Z"></path>
</svg>
</template>

<template id="codespaces-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-codespaces">
    <path d="M0 11.25c0-.966.784-1.75 1.75-1.75h12.5c.966 0 1.75.784 1.75 1.75v3A1.75 1.75 0 0 1 14.25 16H1.75A1.75 1.75 0 0 1 0 14.25Zm2-9.5C2 .784 2.784 0 3.75 0h8.5C13.216 0 14 .784 14 1.75v5a1.75 1.75 0 0 1-1.75 1.75h-8.5A1.75 1.75 0 0 1 2 6.75Zm1.75-.25a.25.25 0 0 0-.25.25v5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-5a.25.25 0 0 0-.25-.25Zm-2 9.5a.25.25 0 0 0-.25.25v3c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25v-3a.25.25 0 0 0-.25-.25Z"></path><path d="M7 12.75a.75.75 0 0 1 .75-.75h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1-.75-.75Zm-4 0a.75.75 0 0 1 .75-.75h.5a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1-.75-.75Z"></path>
</svg>
</template>

<template id="comment-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-comment">
    <path d="M1 2.75C1 1.784 1.784 1 2.75 1h10.5c.966 0 1.75.784 1.75 1.75v7.5A1.75 1.75 0 0 1 13.25 12H9.06l-2.573 2.573A1.458 1.458 0 0 1 4 13.543V12H2.75A1.75 1.75 0 0 1 1 10.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h4.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z"></path>
</svg>
</template>

<template id="comment-discussion-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-comment-discussion">
    <path d="M1.75 1h8.5c.966 0 1.75.784 1.75 1.75v5.5A1.75 1.75 0 0 1 10.25 10H7.061l-2.574 2.573A1.458 1.458 0 0 1 2 11.543V10h-.25A1.75 1.75 0 0 1 0 8.25v-5.5C0 1.784.784 1 1.75 1ZM1.5 2.75v5.5c0 .138.112.25.25.25h1a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h3.5a.25.25 0 0 0 .25-.25v-5.5a.25.25 0 0 0-.25-.25h-8.5a.25.25 0 0 0-.25.25Zm13 2a.25.25 0 0 0-.25-.25h-.5a.75.75 0 0 1 0-1.5h.5c.966 0 1.75.784 1.75 1.75v5.5A1.75 1.75 0 0 1 14.25 12H14v1.543a1.458 1.458 0 0 1-2.487 1.03L9.22 12.28a.749.749 0 0 1 .326-1.275.749.749 0 0 1 .734.215l2.22 2.22v-2.19a.75.75 0 0 1 .75-.75h1a.25.25 0 0 0 .25-.25Z"></path>
</svg>
</template>

<template id="organization-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-organization">
    <path d="M1.75 16A1.75 1.75 0 0 1 0 14.25V1.75C0 .784.784 0 1.75 0h8.5C11.216 0 12 .784 12 1.75v12.5c0 .085-.006.168-.018.25h2.268a.25.25 0 0 0 .25-.25V8.285a.25.25 0 0 0-.111-.208l-1.055-.703a.749.749 0 1 1 .832-1.248l1.055.703c.487.325.779.871.779 1.456v5.965A1.75 1.75 0 0 1 14.25 16h-3.5a.766.766 0 0 1-.197-.026c-.099.017-.2.026-.303.026h-3a.75.75 0 0 1-.75-.75V14h-1v1.25a.75.75 0 0 1-.75.75Zm-.25-1.75c0 .138.112.25.25.25H4v-1.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 .75.75v1.25h2.25a.25.25 0 0 0 .25-.25V1.75a.25.25 0 0 0-.25-.25h-8.5a.25.25 0 0 0-.25.25ZM3.75 6h.5a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1 0-1.5ZM3 3.75A.75.75 0 0 1 3.75 3h.5a.75.75 0 0 1 0 1.5h-.5A.75.75 0 0 1 3 3.75Zm4 3A.75.75 0 0 1 7.75 6h.5a.75.75 0 0 1 0 1.5h-.5A.75.75 0 0 1 7 6.75ZM7.75 3h.5a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1 0-1.5ZM3 9.75A.75.75 0 0 1 3.75 9h.5a.75.75 0 0 1 0 1.5h-.5A.75.75 0 0 1 3 9.75ZM7.75 9h.5a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1 0-1.5Z"></path>
</svg>
</template>

<template id="rocket-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-rocket">
    <path d="M14.064 0h.186C15.216 0 16 .784 16 1.75v.186a8.752 8.752 0 0 1-2.564 6.186l-.458.459c-.314.314-.641.616-.979.904v3.207c0 .608-.315 1.172-.833 1.49l-2.774 1.707a.749.749 0 0 1-1.11-.418l-.954-3.102a1.214 1.214 0 0 1-.145-.125L3.754 9.816a1.218 1.218 0 0 1-.124-.145L.528 8.717a.749.749 0 0 1-.418-1.11l1.71-2.774A1.748 1.748 0 0 1 3.31 4h3.204c.288-.338.59-.665.904-.979l.459-.458A8.749 8.749 0 0 1 14.064 0ZM8.938 3.623h-.002l-.458.458c-.76.76-1.437 1.598-2.02 2.5l-1.5 2.317 2.143 2.143 2.317-1.5c.902-.583 1.74-1.26 2.499-2.02l.459-.458a7.25 7.25 0 0 0 2.123-5.127V1.75a.25.25 0 0 0-.25-.25h-.186a7.249 7.249 0 0 0-5.125 2.123ZM3.56 14.56c-.732.732-2.334 1.045-3.005 1.148a.234.234 0 0 1-.201-.064.234.234 0 0 1-.064-.201c.103-.671.416-2.273 1.15-3.003a1.502 1.502 0 1 1 2.12 2.12Zm6.94-3.935c-.088.06-.177.118-.266.175l-2.35 1.521.548 1.783 1.949-1.2a.25.25 0 0 0 .119-.213ZM3.678 8.116 5.2 5.766c.058-.09.117-.178.176-.266H3.309a.25.25 0 0 0-.213.119l-1.2 1.95ZM12 5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path>
</svg>
</template>

<template id="shield-check-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-shield-check">
    <path d="m8.533.133 5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667l5.25-1.68a1.748 1.748 0 0 1 1.066 0Zm-.61 1.429.001.001-5.25 1.68a.251.251 0 0 0-.174.237V7c0 1.36.275 2.666 1.057 3.859.784 1.194 2.121 2.342 4.366 3.298a.196.196 0 0 0 .154 0c2.245-.957 3.582-2.103 4.366-3.297C13.225 9.666 13.5 8.358 13.5 7V3.48a.25.25 0 0 0-.174-.238l-5.25-1.68a.25.25 0 0 0-.153 0ZM11.28 6.28l-3.5 3.5a.75.75 0 0 1-1.06 0l-1.5-1.5a.749.749 0 0 1 .326-1.275.749.749 0 0 1 .734.215l.97.97 2.97-2.97a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Z"></path>
</svg>
</template>

<template id="heart-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-heart">
    <path d="m8 14.25.345.666a.75.75 0 0 1-.69 0l-.008-.004-.018-.01a7.152 7.152 0 0 1-.31-.17 22.055 22.055 0 0 1-3.434-2.414C2.045 10.731 0 8.35 0 5.5 0 2.836 2.086 1 4.25 1 5.797 1 7.153 1.802 8 3.02 8.847 1.802 10.203 1 11.75 1 13.914 1 16 2.836 16 5.5c0 2.85-2.045 5.231-3.885 6.818a22.066 22.066 0 0 1-3.744 2.584l-.018.01-.006.003h-.002ZM4.25 2.5c-1.336 0-2.75 1.164-2.75 3 0 2.15 1.58 4.144 3.365 5.682A20.58 20.58 0 0 0 8 13.393a20.58 20.58 0 0 0 3.135-2.211C12.92 9.644 14.5 7.65 14.5 5.5c0-1.836-1.414-3-2.75-3-1.373 0-2.609.986-3.029 2.456a.749.749 0 0 1-1.442 0C6.859 3.486 5.623 2.5 4.25 2.5Z"></path>
</svg>
</template>

<template id="server-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-server">
    <path d="M1.75 1h12.5c.966 0 1.75.784 1.75 1.75v4c0 .372-.116.717-.314 1 .198.283.314.628.314 1v4a1.75 1.75 0 0 1-1.75 1.75H1.75A1.75 1.75 0 0 1 0 12.75v-4c0-.358.109-.707.314-1a1.739 1.739 0 0 1-.314-1v-4C0 1.784.784 1 1.75 1ZM1.5 2.75v4c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25v-4a.25.25 0 0 0-.25-.25H1.75a.25.25 0 0 0-.25.25Zm.25 5.75a.25.25 0 0 0-.25.25v4c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25v-4a.25.25 0 0 0-.25-.25ZM7 4.75A.75.75 0 0 1 7.75 4h4.5a.75.75 0 0 1 0 1.5h-4.5A.75.75 0 0 1 7 4.75ZM7.75 10h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM3 4.75A.75.75 0 0 1 3.75 4h.5a.75.75 0 0 1 0 1.5h-.5A.75.75 0 0 1 3 4.75ZM3.75 10h.5a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1 0-1.5Z"></path>
</svg>
</template>

<template id="globe-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-globe">
    <path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM5.78 8.75a9.64 9.64 0 0 0 1.363 4.177c.255.426.542.832.857 1.215.245-.296.551-.705.857-1.215A9.64 9.64 0 0 0 10.22 8.75Zm4.44-1.5a9.64 9.64 0 0 0-1.363-4.177c-.307-.51-.612-.919-.857-1.215a9.927 9.927 0 0 0-.857 1.215A9.64 9.64 0 0 0 5.78 7.25Zm-5.944 1.5H1.543a6.507 6.507 0 0 0 4.666 5.5c-.123-.181-.24-.365-.352-.552-.715-1.192-1.437-2.874-1.581-4.948Zm-2.733-1.5h2.733c.144-2.074.866-3.756 1.58-4.948.12-.197.237-.381.353-.552a6.507 6.507 0 0 0-4.666 5.5Zm10.181 1.5c-.144 2.074-.866 3.756-1.58 4.948-.12.197-.237.381-.353.552a6.507 6.507 0 0 0 4.666-5.5Zm2.733-1.5a6.507 6.507 0 0 0-4.666-5.5c.123.181.24.365.353.552.714 1.192 1.436 2.874 1.58 4.948Z"></path>
</svg>
</template>

<template id="issue-opened-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-issue-opened">
    <path d="M8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z"></path><path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Z"></path>
</svg>
</template>

<template id="device-mobile-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-device-mobile">
    <path d="M3.75 0h8.5C13.216 0 14 .784 14 1.75v12.5A1.75 1.75 0 0 1 12.25 16h-8.5A1.75 1.75 0 0 1 2 14.25V1.75C2 .784 2.784 0 3.75 0ZM3.5 1.75v12.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25V1.75a.25.25 0 0 0-.25-.25h-8.5a.25.25 0 0 0-.25.25ZM8 13a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path>
</svg>
</template>

<template id="package-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-package">
    <path d="m8.878.392 5.25 3.045c.54.314.872.89.872 1.514v6.098a1.75 1.75 0 0 1-.872 1.514l-5.25 3.045a1.75 1.75 0 0 1-1.756 0l-5.25-3.045A1.75 1.75 0 0 1 1 11.049V4.951c0-.624.332-1.201.872-1.514L7.122.392a1.75 1.75 0 0 1 1.756 0ZM7.875 1.69l-4.63 2.685L8 7.133l4.755-2.758-4.63-2.685a.248.248 0 0 0-.25 0ZM2.5 5.677v5.372c0 .09.047.171.125.216l4.625 2.683V8.432Zm6.25 8.271 4.625-2.683a.25.25 0 0 0 .125-.216V5.677L8.75 8.432Z"></path>
</svg>
</template>

<template id="credit-card-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-credit-card">
    <path d="M10.75 9a.75.75 0 0 0 0 1.5h1.5a.75.75 0 0 0 0-1.5h-1.5Z"></path><path d="M0 3.75C0 2.784.784 2 1.75 2h12.5c.966 0 1.75.784 1.75 1.75v8.5A1.75 1.75 0 0 1 14.25 14H1.75A1.75 1.75 0 0 1 0 12.25ZM14.5 6.5h-13v5.75c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25Zm0-2.75a.25.25 0 0 0-.25-.25H1.75a.25.25 0 0 0-.25.25V5h13Z"></path>
</svg>
</template>

<template id="play-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-play">
    <path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm4.879-2.773 4.264 2.559a.25.25 0 0 1 0 .428l-4.264 2.559A.25.25 0 0 1 6 10.559V5.442a.25.25 0 0 1 .379-.215Z"></path>
</svg>
</template>

<template id="gift-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-gift">
    <path d="M2 2.75A2.75 2.75 0 0 1 4.75 0c.983 0 1.873.42 2.57 1.232.268.318.497.668.68 1.042.183-.375.411-.725.68-1.044C9.376.42 10.266 0 11.25 0a2.75 2.75 0 0 1 2.45 4h.55c.966 0 1.75.784 1.75 1.75v2c0 .698-.409 1.301-1 1.582v4.918A1.75 1.75 0 0 1 13.25 16H2.75A1.75 1.75 0 0 1 1 14.25V9.332C.409 9.05 0 8.448 0 7.75v-2C0 4.784.784 4 1.75 4h.55c-.192-.375-.3-.8-.3-1.25ZM7.25 9.5H2.5v4.75c0 .138.112.25.25.25h4.5Zm1.5 0v5h4.5a.25.25 0 0 0 .25-.25V9.5Zm0-4V8h5.5a.25.25 0 0 0 .25-.25v-2a.25.25 0 0 0-.25-.25Zm-7 0a.25.25 0 0 0-.25.25v2c0 .138.112.25.25.25h5.5V5.5h-5.5Zm3-4a1.25 1.25 0 0 0 0 2.5h2.309c-.233-.818-.542-1.401-.878-1.793-.43-.502-.915-.707-1.431-.707ZM8.941 4h2.309a1.25 1.25 0 0 0 0-2.5c-.516 0-1 .205-1.43.707-.337.392-.646.975-.879 1.793Z"></path>
</svg>
</template>

<template id="code-square-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-code-square">
    <path d="M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v12.5A1.75 1.75 0 0 1 14.25 16H1.75A1.75 1.75 0 0 1 0 14.25Zm1.75-.25a.25.25 0 0 0-.25.25v12.5c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25V1.75a.25.25 0 0 0-.25-.25Zm7.47 3.97a.75.75 0 0 1 1.06 0l2 2a.75.75 0 0 1 0 1.06l-2 2a.749.749 0 0 1-1.275-.326.749.749 0 0 1 .215-.734L10.69 8 9.22 6.53a.75.75 0 0 1 0-1.06ZM6.78 6.53 5.31 8l1.47 1.47a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215l-2-2a.75.75 0 0 1 0-1.06l2-2a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Z"></path>
</svg>
</template>

<template id="device-desktop-icon">
  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-device-desktop">
    <path d="M14.25 1c.966 0 1.75.784 1.75 1.75v7.5A1.75 1.75 0 0 1 14.25 12h-3.727c.099 1.041.52 1.872 1.292 2.757A.752.752 0 0 1 11.25 16h-6.5a.75.75 0 0 1-.565-1.243c.772-.885 1.192-1.716 1.292-2.757H1.75A1.75 1.75 0 0 1 0 10.25v-7.5C0 1.784.784 1 1.75 1ZM1.75 2.5a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25ZM9.018 12H6.982a5.72 5.72 0 0 1-.765 2.5h3.566a5.72 5.72 0 0 1-.765-2.5Z"></path>
</svg>
</template>

        <div class="position-relative">
                <ul
                  role="listbox"
                  class="ActionListWrap QueryBuilder-ListWrap"
                  aria-label="Suggestions"
                  data-action="
                    combobox-commit:query-builder#comboboxCommit
                    mousedown:query-builder#resultsMousedown
                  "
                  data-target="query-builder.resultsList"
                  data-persist-list=false
                  id="query-builder-test-results"
                  tabindex="-1"
                ></ul>
        </div>
      <div class="FormControl-inlineValidation" id="validation-5d4524d1-abbc-416c-a519-e23f14aec3b3" hidden="hidden">
        <span class="FormControl-inlineValidation--visual">
          <svg aria-hidden="true" height="12" viewBox="0 0 12 12" version="1.1" width="12" data-view-component="true" class="octicon octicon-alert-fill">
    <path d="M4.855.708c.5-.896 1.79-.896 2.29 0l4.675 8.351a1.312 1.312 0 0 1-1.146 1.954H1.33A1.313 1.313 0 0 1 .183 9.058ZM7 7V3H5v4Zm-1 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z"></path>
</svg>
        </span>
        <span></span>
</div>    </div>
    <div data-target="query-builder.screenReaderFeedback" aria-live="polite" aria-atomic="true" class="sr-only"></div>
</query-builder></form>
          <div class="d-flex flex-row color-fg-muted px-3 text-small color-bg-default search-feedback-prompt">
            <a target="_blank" href="https://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax" data-view-component="true" class="Link color-fg-accent text-normal ml-2">Search syntax tips</a>            <div class="d-flex flex-1"></div>
          </div>
        </div>
</div>

    </div>
</modal-dialog></div>
  </div>
  <div data-action="click:qbsearch-input#retract" class="dark-backdrop position-fixed" hidden data-target="qbsearch-input.darkBackdrop"></div>
  <div class="color-fg-default">
    
<dialog-helper>
  <dialog data-target="qbsearch-input.feedbackDialog" data-action="close:qbsearch-input#handleDialogClose cancel:qbsearch-input#handleDialogClose" id="feedback-dialog" aria-modal="true" aria-labelledby="feedback-dialog-title" aria-describedby="feedback-dialog-description" data-view-component="true" class="Overlay Overlay-whenNarrow Overlay--size-medium Overlay--motion-scaleFade Overlay--disableScroll">
    <div data-view-component="true" class="Overlay-header">
  <div class="Overlay-headerContentWrap">
    <div class="Overlay-titleWrap">
      <h1 class="Overlay-title " id="feedback-dialog-title">
        Provide feedback
      </h1>
        
    </div>
    <div class="Overlay-actionWrap">
      <button data-close-dialog-id="feedback-dialog" aria-label="Close" aria-label="Close" type="button" data-view-component="true" class="close-button Overlay-closeButton"><svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x">
    <path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path>
</svg></button>
    </div>
  </div>
  
</div>
      <scrollable-region data-labelled-by="feedback-dialog-title">
        <div data-view-component="true" class="Overlay-body">        <!-- '"` --><!-- </textarea></xmp> --></option></form><form id="code-search-feedback-form" data-turbo="false" action="/search/feedback" accept-charset="UTF-8" method="post"><input type="hidden" data-csrf="true" name="authenticity_token" value="6utKdGga8ScNk8nQr+gsRIT11keIVkfKSco+C7EtKVnY3+8+DsEdlP6O86hYCLf/hCudKW75PTcP6ws0c3m7Ag==" />
          <p>We read every piece of feedback, and take your input very seriously.</p>
          <textarea name="feedback" class="form-control width-full mb-2" style="height: 120px" id="feedback"></textarea>
          <input name="include_email" id="include_email" aria-label="Include my email address so I can be contacted" class="form-control mr-2" type="checkbox">
          <label for="include_email" style="font-weight: normal">Include my email address so I can be contacted</label>
</form></div>
      </scrollable-region>
      <div data-view-component="true" class="Overlay-footer Overlay-footer--alignEnd">          <button data-close-dialog-id="feedback-dialog" type="button" data-view-component="true" class="btn">    Cancel
</button>
          <button form="code-search-feedback-form" data-action="click:qbsearch-input#submitFeedback" type="submit" data-view-component="true" class="btn-primary btn">    Submit feedback
</button>
</div>
</dialog></dialog-helper>

    <custom-scopes data-target="qbsearch-input.customScopesManager">
    
<dialog-helper>
  <dialog data-target="custom-scopes.customScopesModalDialog" data-action="close:qbsearch-input#handleDialogClose cancel:qbsearch-input#handleDialogClose" id="custom-scopes-dialog" aria-modal="true" aria-labelledby="custom-scopes-dialog-title" aria-describedby="custom-scopes-dialog-description" data-view-component="true" class="Overlay Overlay-whenNarrow Overlay--size-medium Overlay--motion-scaleFade Overlay--disableScroll">
    <div data-view-component="true" class="Overlay-header Overlay-header--divided">
  <div class="Overlay-headerContentWrap">
    <div class="Overlay-titleWrap">
      <h1 class="Overlay-title " id="custom-scopes-dialog-title">
        Saved searches
      </h1>
        <h2 id="custom-scopes-dialog-description" class="Overlay-description">Use saved searches to filter your results more quickly</h2>
    </div>
    <div class="Overlay-actionWrap">
      <button data-close-dialog-id="custom-scopes-dialog" aria-label="Close" aria-label="Close" type="button" data-view-component="true" class="close-button Overlay-closeButton"><svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x">
    <path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path>
</svg></button>
    </div>
  </div>
  
</div>
      <scrollable-region data-labelled-by="custom-scopes-dialog-title">
        <div data-view-component="true" class="Overlay-body">        <div data-target="custom-scopes.customScopesModalDialogFlash"></div>

        <div hidden class="create-custom-scope-form" data-target="custom-scopes.createCustomScopeForm">
        <!-- '"` --><!-- </textarea></xmp> --></option></form><form id="custom-scopes-dialog-form" data-turbo="false" action="/search/custom_scopes" accept-charset="UTF-8" method="post"><input type="hidden" data-csrf="true" name="authenticity_token" value="vGPaJEoTlWcD69v7IpcMM7UYy+k25nBhTYxRQpJNMtvt42V2v75zXdlaVg/z25JQ67IokTZfesEB2rCVYdVCew==" />
          <div data-target="custom-scopes.customScopesModalDialogFlash"></div>

          <input type="hidden" id="custom_scope_id" name="custom_scope_id" data-target="custom-scopes.customScopesIdField">

          <div class="form-group">
            <label for="custom_scope_name">Name</label>
            <auto-check src="/search/custom_scopes/check_name" required>
              <input
                type="text"
                name="custom_scope_name"
                id="custom_scope_name"
                data-target="custom-scopes.customScopesNameField"
                class="form-control"
                autocomplete="off"
                placeholder="github-ruby"
                required
                maxlength="50">
              <input type="hidden" data-csrf="true" value="avluptg3HKRMGuiJboZK61zfIxDpPoDohaKq4k1YGF7bVkaOKeB9GaQal3ZMMobmAD7YjYtGjMIoiXIupVviIg==" />
            </auto-check>
          </div>

          <div class="form-group">
            <label for="custom_scope_query">Query</label>
            <input
              type="text"
              name="custom_scope_query"
              id="custom_scope_query"
              data-target="custom-scopes.customScopesQueryField"
              class="form-control"
              autocomplete="off"
              placeholder="(repo:mona/a OR repo:mona/b) AND lang:python"
              required
              maxlength="500">
          </div>

          <p class="text-small color-fg-muted">
            To see all available qualifiers, see our <a class="Link--inTextBlock" href="https://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax">documentation</a>.
          </p>
</form>        </div>

        <div data-target="custom-scopes.manageCustomScopesForm">
          <div data-target="custom-scopes.list"></div>
        </div>

</div>
      </scrollable-region>
      <div data-view-component="true" class="Overlay-footer Overlay-footer--alignEnd Overlay-footer--divided">          <button data-action="click:custom-scopes#customScopesCancel" type="button" data-view-component="true" class="btn">    Cancel
</button>
          <button form="custom-scopes-dialog-form" data-action="click:custom-scopes#customScopesSubmit" data-target="custom-scopes.customScopesSubmitButton" type="submit" data-view-component="true" class="btn-primary btn">    Create saved search
</button>
</div>
</dialog></dialog-helper>
    </custom-scopes>
  </div>
</qbsearch-input>


            <div class="position-relative HeaderMenu-link-wrap d-lg-inline-block">
              <a
                href="/login?return_to=https%3A%2F%2Fgithub.com%2Fwoocommerce%2Fwoocommerce%2Fblob%2Ftrunk%2Fplugins%2Fwoocommerce%2Fincludes%2Frest-api%2FControllers%2FVersion3%2Fclass-wc-rest-product-variations-controller.php"
                class="HeaderMenu-link HeaderMenu-link--sign-in HeaderMenu-button flex-shrink-0 no-underline d-none d-lg-inline-flex border border-lg-0 rounded px-2 py-1"
                style="margin-left: 12px;"
                data-hydro-click="{&quot;event_type&quot;:&quot;authentication.click&quot;,&quot;payload&quot;:{&quot;location_in_page&quot;:&quot;site header menu&quot;,&quot;repository_id&quot;:null,&quot;auth_type&quot;:&quot;SIGN_UP&quot;,&quot;originating_url&quot;:&quot;https://github.com/woocommerce/woocommerce/blob/trunk/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php&quot;,&quot;user_id&quot;:null}}" data-hydro-click-hmac="73e3b481d5e3684c7c6d58115eb9459379d563fd371d3a7b54bcf43d6abaf777"
                data-analytics-event="{&quot;category&quot;:&quot;Marketing nav&quot;,&quot;action&quot;:&quot;click to go to homepage&quot;,&quot;label&quot;:&quot;ref_page:Marketing;ref_cta:Sign in;ref_loc:Header&quot;}"
              >
                Sign in
              </a>
            </div>

              <a href="/signup?ref_cta=Sign+up&amp;ref_loc=header+logged+out&amp;ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fblob%2Fshow&amp;source=header-repo&amp;source_repo=woocommerce%2Fwoocommerce"
                class="HeaderMenu-link HeaderMenu-link--sign-up HeaderMenu-button flex-shrink-0 d-flex d-lg-inline-flex no-underline border color-border-default rounded px-2 py-1"
                data-hydro-click="{&quot;event_type&quot;:&quot;authentication.click&quot;,&quot;payload&quot;:{&quot;location_in_page&quot;:&quot;site header menu&quot;,&quot;repository_id&quot;:null,&quot;auth_type&quot;:&quot;SIGN_UP&quot;,&quot;originating_url&quot;:&quot;https://github.com/woocommerce/woocommerce/blob/trunk/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php&quot;,&quot;user_id&quot;:null}}" data-hydro-click-hmac="73e3b481d5e3684c7c6d58115eb9459379d563fd371d3a7b54bcf43d6abaf777"
                data-analytics-event="{&quot;category&quot;:&quot;Sign up&quot;,&quot;action&quot;:&quot;click to sign up for account&quot;,&quot;label&quot;:&quot;ref_page:/&lt;user-name&gt;/&lt;repo-name&gt;/blob/show;ref_cta:Sign up;ref_loc:header logged out&quot;}"
              >
                Sign up
              </a>

                <div class="AppHeader-appearanceSettings">
    <react-partial-anchor>
      <button data-target="react-partial-anchor.anchor" id="icon-button-5b4e9f28-5e6e-44eb-a8d5-b87f3f19a5ce" aria-labelledby="tooltip-b2d77f30-b5af-4736-bddc-bff3620315c2" type="button" disabled="disabled" data-view-component="true" class="Button Button--iconOnly Button--invisible Button--medium AppHeader-button HeaderMenu-link border cursor-wait">  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-sliders Button-visual">
    <path d="M15 2.75a.75.75 0 0 1-.75.75h-4a.75.75 0 0 1 0-1.5h4a.75.75 0 0 1 .75.75Zm-8.5.75v1.25a.75.75 0 0 0 1.5 0v-4a.75.75 0 0 0-1.5 0V2H1.75a.75.75 0 0 0 0 1.5H6.5Zm1.25 5.25a.75.75 0 0 0 0-1.5h-6a.75.75 0 0 0 0 1.5h6ZM15 8a.75.75 0 0 1-.75.75H11.5V10a.75.75 0 1 1-1.5 0V6a.75.75 0 0 1 1.5 0v1.25h2.75A.75.75 0 0 1 15 8Zm-9 5.25v-2a.75.75 0 0 0-1.5 0v1.25H1.75a.75.75 0 0 0 0 1.5H4.5v1.25a.75.75 0 0 0 1.5 0v-2Zm9 0a.75.75 0 0 1-.75.75h-6a.75.75 0 0 1 0-1.5h6a.75.75 0 0 1 .75.75Z"></path>
</svg>
</button><tool-tip id="tooltip-b2d77f30-b5af-4736-bddc-bff3620315c2" for="icon-button-5b4e9f28-5e6e-44eb-a8d5-b87f3f19a5ce" popover="manual" data-direction="s" data-type="label" data-view-component="true" class="sr-only position-absolute">Appearance settings</tool-tip>

      <template data-target="react-partial-anchor.template">
        <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react.47239ec6cbe68138fe4c.module.css" />
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/appearance-settings.753d458774a2f782559b.module.css" />

<react-partial
  partial-name="appearance-settings"
  data-ssr="false"
  data-attempted-ssr="false"
  data-react-profiling="false"
>
  
  <script type="application/json" data-target="react-partial.embeddedData">{"props":{}}</script>
  <div data-target="react-partial.reactRoot"></div>
</react-partial>


      </template>
    </react-partial-anchor>
  </div>

          <button type="button" class="sr-only js-header-menu-focus-trap d-block d-lg-none">Resetting focus</button>
        </div>
      </div>
    </div>
  </div>
</header>

      <div hidden="hidden" data-view-component="true" class="js-stale-session-flash stale-session-flash flash flash-warn flash-full">
  
        <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-alert">
    <path d="M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path>
</svg>
        <span class="js-stale-session-flash-signed-in" hidden>You signed in with another tab or window. <a class="Link--inTextBlock" href="">Reload</a> to refresh your session.</span>
        <span class="js-stale-session-flash-signed-out" hidden>You signed out in another tab or window. <a class="Link--inTextBlock" href="">Reload</a> to refresh your session.</span>
        <span class="js-stale-session-flash-switched" hidden>You switched accounts on another tab or window. <a class="Link--inTextBlock" href="">Reload</a> to refresh your session.</span>

    <button id="icon-button-3698cff2-07be-4a65-813a-76d28e5cdb3d" aria-labelledby="tooltip-6ce18a4c-6404-406d-8947-511aa1144ba2" type="button" data-view-component="true" class="Button Button--iconOnly Button--invisible Button--medium flash-close js-flash-close">  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x Button-visual">
    <path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path>
</svg>
</button><tool-tip id="tooltip-6ce18a4c-6404-406d-8947-511aa1144ba2" for="icon-button-3698cff2-07be-4a65-813a-76d28e5cdb3d" popover="manual" data-direction="s" data-type="label" data-view-component="true" class="sr-only position-absolute">Dismiss alert</tool-tip>


  
</div>
    </div>

  <div id="start-of-content" class="show-on-focus"></div>








    <div id="js-flash-container" class="flash-container" data-turbo-replace>




  <template class="js-flash-template">
    
<div class="flash flash-full   {{ className }}">
  <div >
    <button autofocus class="flash-close js-flash-close" type="button" aria-label="Dismiss this message">
      <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x">
    <path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path>
</svg>
    </button>
    <div aria-atomic="true" role="alert" class="js-flash-alert">
      
      <div>{{ message }}</div>

    </div>
  </div>
</div>
  </template>
</div>


    






  <div
    class="application-main "
    data-commit-hovercards-enabled
    data-discussion-hovercards-enabled
    data-issue-and-pr-hovercards-enabled
    data-project-hovercards-enabled
  >
        <div itemscope itemtype="http://schema.org/SoftwareSourceCode" class="">
    <main id="js-repo-pjax-container" >
      
      
    

    






  

  <div id="repository-container-header"  class="pt-3 hide-full-screen" style="background-color: var(--page-header-bgColor, var(--color-page-header-bg));" data-turbo-replace>

      <div class="d-flex flex-nowrap flex-justify-end mb-3  px-3 px-lg-5" style="gap: 1rem;">

        <div class="flex-auto min-width-0 width-fit">
            
  <div class=" d-flex flex-wrap flex-items-center wb-break-word f3 text-normal">
      <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-repo color-fg-muted mr-2">
    <path d="M2 2.5A2.5 2.5 0 0 1 4.5 0h8.75a.75.75 0 0 1 .75.75v12.5a.75.75 0 0 1-.75.75h-2.5a.75.75 0 0 1 0-1.5h1.75v-2h-8a1 1 0 0 0-.714 1.7.75.75 0 1 1-1.072 1.05A2.495 2.495 0 0 1 2 11.5Zm10.5-1h-8a1 1 0 0 0-1 1v6.708A2.486 2.486 0 0 1 4.5 9h8ZM5 12.25a.25.25 0 0 1 .25-.25h3.5a.25.25 0 0 1 .25.25v3.25a.25.25 0 0 1-.4.2l-1.45-1.087a.249.249 0 0 0-.3 0L5.4 15.7a.25.25 0 0 1-.4-.2Z"></path>
</svg>
    
    <span class="author flex-self-stretch" itemprop="author">
      <a class="url fn" rel="author" data-hovercard-type="organization" data-hovercard-url="/orgs/woocommerce/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="/woocommerce">
        woocommerce
</a>    </span>
    <span class="mx-1 flex-self-stretch color-fg-muted">/</span>
    <strong itemprop="name" class="mr-2 flex-self-stretch">
      <a data-pjax="#repo-content-pjax-container" data-turbo-frame="repo-content-turbo-frame" href="/woocommerce/woocommerce">woocommerce</a>
    </strong>

    <span></span><span class="Label Label--secondary v-align-middle mr-1">Public</span>
  </div>


        </div>

        <div id="repository-details-container" class="flex-shrink-0" data-turbo-replace style="max-width: 70%;">
            <ul class="pagehead-actions flex-shrink-0 d-none d-md-inline" style="padding: 2px 0;">
    
      

  <li>
            <a href="/login?return_to=%2Fwoocommerce%2Fwoocommerce" rel="nofollow" id="repository-details-watch-button" data-hydro-click="{&quot;event_type&quot;:&quot;authentication.click&quot;,&quot;payload&quot;:{&quot;location_in_page&quot;:&quot;notification subscription menu watch&quot;,&quot;repository_id&quot;:null,&quot;auth_type&quot;:&quot;LOG_IN&quot;,&quot;originating_url&quot;:&quot;https://github.com/woocommerce/woocommerce/blob/trunk/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php&quot;,&quot;user_id&quot;:null}}" data-hydro-click-hmac="5de4b1182a8d2437ddf5b50369b4c4d687d9c48069a002739584d94e4c6e1e5f" aria-label="You must be signed in to change notification settings" data-view-component="true" class="btn-sm btn">    <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-bell mr-2">
    <path d="M8 16a2 2 0 0 0 1.985-1.75c.017-.137-.097-.25-.235-.25h-3.5c-.138 0-.252.113-.235.25A2 2 0 0 0 8 16ZM3 5a5 5 0 0 1 10 0v2.947c0 .05.015.098.042.139l1.703 2.555A1.519 1.519 0 0 1 13.482 13H2.518a1.516 1.516 0 0 1-1.263-2.36l1.703-2.554A.255.255 0 0 0 3 7.947Zm5-3.5A3.5 3.5 0 0 0 4.5 5v2.947c0 .346-.102.683-.294.97l-1.703 2.556a.017.017 0 0 0-.003.01l.001.006c0 .002.002.004.004.006l.006.004.007.001h10.964l.007-.001.006-.004.004-.006.001-.007a.017.017 0 0 0-.003-.01l-1.703-2.554a1.745 1.745 0 0 1-.294-.97V5A3.5 3.5 0 0 0 8 1.5Z"></path>
</svg>Notifications
</a>    <tool-tip id="tooltip-f29ecb77-eae3-4061-8b61-0fff54b88645" for="repository-details-watch-button" popover="manual" data-direction="s" data-type="description" data-view-component="true" class="sr-only position-absolute">You must be signed in to change notification settings</tool-tip>

  </li>

  <li>
          <a icon="repo-forked" id="fork-button" href="/login?return_to=%2Fwoocommerce%2Fwoocommerce" rel="nofollow" data-hydro-click="{&quot;event_type&quot;:&quot;authentication.click&quot;,&quot;payload&quot;:{&quot;location_in_page&quot;:&quot;repo details fork button&quot;,&quot;repository_id&quot;:2179920,&quot;auth_type&quot;:&quot;LOG_IN&quot;,&quot;originating_url&quot;:&quot;https://github.com/woocommerce/woocommerce/blob/trunk/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php&quot;,&quot;user_id&quot;:null}}" data-hydro-click-hmac="5b89d08ab96a28f10c735b6d23ea900adb1af6c4881071b6140d2b4f18b6e62c" data-view-component="true" class="btn-sm btn">    <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-repo-forked mr-2">
    <path d="M5 5.372v.878c0 .414.336.75.75.75h4.5a.75.75 0 0 0 .75-.75v-.878a2.25 2.25 0 1 1 1.5 0v.878a2.25 2.25 0 0 1-2.25 2.25h-1.5v2.128a2.251 2.251 0 1 1-1.5 0V8.5h-1.5A2.25 2.25 0 0 1 3.5 6.25v-.878a2.25 2.25 0 1 1 1.5 0ZM5 3.25a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0Zm6.75.75a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Zm-3 8.75a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0Z"></path>
</svg>Fork
    <span id="repo-network-counter" data-pjax-replace="true" data-turbo-replace="true" title="10,733" data-view-component="true" class="Counter">10.7k</span>
</a>
  </li>

  <li>
        <div data-view-component="true" class="BtnGroup d-flex">
        <a href="/login?return_to=%2Fwoocommerce%2Fwoocommerce" rel="nofollow" data-hydro-click="{&quot;event_type&quot;:&quot;authentication.click&quot;,&quot;payload&quot;:{&quot;location_in_page&quot;:&quot;star button&quot;,&quot;repository_id&quot;:2179920,&quot;auth_type&quot;:&quot;LOG_IN&quot;,&quot;originating_url&quot;:&quot;https://github.com/woocommerce/woocommerce/blob/trunk/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php&quot;,&quot;user_id&quot;:null}}" data-hydro-click-hmac="27dfe15d9d6583380804647d3774c973e24838873f30c9da7e3001c5b28edf62" aria-label="You must be signed in to star a repository" data-view-component="true" class="tooltipped tooltipped-sw btn-sm btn">    <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-star v-align-text-bottom d-inline-block mr-2">
    <path d="M8 .25a.75.75 0 0 1 .673.418l1.882 3.815 4.21.612a.75.75 0 0 1 .416 1.279l-3.046 2.97.719 4.192a.751.751 0 0 1-1.088.791L8 12.347l-3.766 1.98a.75.75 0 0 1-1.088-.79l.72-4.194L.818 6.374a.75.75 0 0 1 .416-1.28l4.21-.611L7.327.668A.75.75 0 0 1 8 .25Zm0 2.445L6.615 5.5a.75.75 0 0 1-.564.41l-3.097.45 2.24 2.184a.75.75 0 0 1 .216.664l-.528 3.084 2.769-1.456a.75.75 0 0 1 .698 0l2.77 1.456-.53-3.084a.75.75 0 0 1 .216-.664l2.24-2.183-3.096-.45a.75.75 0 0 1-.564-.41L8 2.694Z"></path>
</svg><span data-view-component="true" class="d-inline">
          Star
</span>          <span id="repo-stars-counter-star" aria-label="10109 users starred this repository" data-singular-suffix="user starred this repository" data-plural-suffix="users starred this repository" data-turbo-replace="true" title="10,109" data-view-component="true" class="Counter js-social-count">10.1k</span>
</a></div>
  </li>

</ul>

        </div>
      </div>

        <div id="responsive-meta-container" data-turbo-replace>
</div>


          <nav data-pjax="#js-repo-pjax-container" aria-label="Repository" data-view-component="true" class="js-repo-nav js-sidenav-container-pjax js-responsive-underlinenav overflow-hidden UnderlineNav px-3 px-md-4 px-lg-5">

  <ul data-view-component="true" class="UnderlineNav-body list-style-none">
      <li data-view-component="true" class="d-inline-flex">
  <a id="code-tab" href="/woocommerce/woocommerce" data-tab-item="i0code-tab" data-selected-links="repo_source repo_downloads repo_commits repo_releases repo_tags repo_branches repo_packages repo_deployments repo_attestations /woocommerce/woocommerce" data-pjax="#repo-content-pjax-container" data-turbo-frame="repo-content-turbo-frame" data-hotkey="g c" data-analytics-event="{&quot;category&quot;:&quot;Underline navbar&quot;,&quot;action&quot;:&quot;Click tab&quot;,&quot;label&quot;:&quot;Code&quot;,&quot;target&quot;:&quot;UNDERLINE_NAV.TAB&quot;}" aria-current="page" data-view-component="true" class="UnderlineNav-item no-wrap js-responsive-underlinenav-item js-selected-navigation-item selected">
    
              <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-code UnderlineNav-octicon d-none d-sm-inline">
    <path d="m11.28 3.22 4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.749.749 0 0 1-1.275-.326.749.749 0 0 1 .215-.734L13.94 8l-3.72-3.72a.749.749 0 0 1 .326-1.275.749.749 0 0 1 .734.215Zm-6.56 0a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042L2.06 8l3.72 3.72a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L.47 8.53a.75.75 0 0 1 0-1.06Z"></path>
</svg>
        <span data-content="Code">Code</span>
          <span id="code-repo-tab-count" data-pjax-replace="" data-turbo-replace="" title="Not available" data-view-component="true" class="Counter"></span>


    
</a></li>
      <li data-view-component="true" class="d-inline-flex">
  <a id="issues-tab" href="/woocommerce/woocommerce/issues" data-tab-item="i1issues-tab" data-selected-links="repo_issues repo_labels repo_milestones /woocommerce/woocommerce/issues" data-pjax="#repo-content-pjax-container" data-turbo-frame="repo-content-turbo-frame" data-hotkey="g i" data-react-nav="issues-react" data-analytics-event="{&quot;category&quot;:&quot;Underline navbar&quot;,&quot;action&quot;:&quot;Click tab&quot;,&quot;label&quot;:&quot;Issues&quot;,&quot;target&quot;:&quot;UNDERLINE_NAV.TAB&quot;}" data-view-component="true" class="UnderlineNav-item no-wrap js-responsive-underlinenav-item js-selected-navigation-item">
    
              <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-issue-opened UnderlineNav-octicon d-none d-sm-inline">
    <path d="M8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z"></path><path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Z"></path>
</svg>
        <span data-content="Issues">Issues</span>
          <span id="issues-repo-tab-count" data-pjax-replace="" data-turbo-replace="" title="2,553" data-view-component="true" class="Counter">2.6k</span>


    
</a></li>
      <li data-view-component="true" class="d-inline-flex">
  <a id="pull-requests-tab" href="/woocommerce/woocommerce/pulls" data-tab-item="i2pull-requests-tab" data-selected-links="repo_pulls checks /woocommerce/woocommerce/pulls" data-pjax="#repo-content-pjax-container" data-turbo-frame="repo-content-turbo-frame" data-hotkey="g p" data-analytics-event="{&quot;category&quot;:&quot;Underline navbar&quot;,&quot;action&quot;:&quot;Click tab&quot;,&quot;label&quot;:&quot;Pull requests&quot;,&quot;target&quot;:&quot;UNDERLINE_NAV.TAB&quot;}" data-view-component="true" class="UnderlineNav-item no-wrap js-responsive-underlinenav-item js-selected-navigation-item">
    
              <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-git-pull-request UnderlineNav-octicon d-none d-sm-inline">
    <path d="M1.5 3.25a2.25 2.25 0 1 1 3 2.122v5.256a2.251 2.251 0 1 1-1.5 0V5.372A2.25 2.25 0 0 1 1.5 3.25Zm5.677-.177L9.573.677A.25.25 0 0 1 10 .854V2.5h1A2.5 2.5 0 0 1 13.5 5v5.628a2.251 2.251 0 1 1-1.5 0V5a1 1 0 0 0-1-1h-1v1.646a.25.25 0 0 1-.427.177L7.177 3.427a.25.25 0 0 1 0-.354ZM3.75 2.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Zm0 9.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Zm8.25.75a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0Z"></path>
</svg>
        <span data-content="Pull requests">Pull requests</span>
          <span id="pull-requests-repo-tab-count" data-pjax-replace="" data-turbo-replace="" title="364" data-view-component="true" class="Counter">364</span>


    
</a></li>
      <li data-view-component="true" class="d-inline-flex">
  <a id="discussions-tab" href="/woocommerce/woocommerce/discussions" data-tab-item="i3discussions-tab" data-selected-links="repo_discussions /woocommerce/woocommerce/discussions" data-pjax="#repo-content-pjax-container" data-turbo-frame="repo-content-turbo-frame" data-hotkey="g g" data-analytics-event="{&quot;category&quot;:&quot;Underline navbar&quot;,&quot;action&quot;:&quot;Click tab&quot;,&quot;label&quot;:&quot;Discussions&quot;,&quot;target&quot;:&quot;UNDERLINE_NAV.TAB&quot;}" data-view-component="true" class="UnderlineNav-item no-wrap js-responsive-underlinenav-item js-selected-navigation-item">
    
              <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-comment-discussion UnderlineNav-octicon d-none d-sm-inline">
    <path d="M1.75 1h8.5c.966 0 1.75.784 1.75 1.75v5.5A1.75 1.75 0 0 1 10.25 10H7.061l-2.574 2.573A1.458 1.458 0 0 1 2 11.543V10h-.25A1.75 1.75 0 0 1 0 8.25v-5.5C0 1.784.784 1 1.75 1ZM1.5 2.75v5.5c0 .138.112.25.25.25h1a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h3.5a.25.25 0 0 0 .25-.25v-5.5a.25.25 0 0 0-.25-.25h-8.5a.25.25 0 0 0-.25.25Zm13 2a.25.25 0 0 0-.25-.25h-.5a.75.75 0 0 1 0-1.5h.5c.966 0 1.75.784 1.75 1.75v5.5A1.75 1.75 0 0 1 14.25 12H14v1.543a1.458 1.458 0 0 1-2.487 1.03L9.22 12.28a.749.749 0 0 1 .326-1.275.749.749 0 0 1 .734.215l2.22 2.22v-2.19a.75.75 0 0 1 .75-.75h1a.25.25 0 0 0 .25-.25Z"></path>
</svg>
        <span data-content="Discussions">Discussions</span>
          <span id="discussions-repo-tab-count" data-pjax-replace="" data-turbo-replace="" title="Not available" data-view-component="true" class="Counter"></span>


    
</a></li>
      <li data-view-component="true" class="d-inline-flex">
  <a id="actions-tab" href="/woocommerce/woocommerce/actions" data-tab-item="i4actions-tab" data-selected-links="repo_actions /woocommerce/woocommerce/actions" data-pjax="#repo-content-pjax-container" data-turbo-frame="repo-content-turbo-frame" data-hotkey="g a" data-analytics-event="{&quot;category&quot;:&quot;Underline navbar&quot;,&quot;action&quot;:&quot;Click tab&quot;,&quot;label&quot;:&quot;Actions&quot;,&quot;target&quot;:&quot;UNDERLINE_NAV.TAB&quot;}" data-view-component="true" class="UnderlineNav-item no-wrap js-responsive-underlinenav-item js-selected-navigation-item">
    
              <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-play UnderlineNav-octicon d-none d-sm-inline">
    <path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm4.879-2.773 4.264 2.559a.25.25 0 0 1 0 .428l-4.264 2.559A.25.25 0 0 1 6 10.559V5.442a.25.25 0 0 1 .379-.215Z"></path>
</svg>
        <span data-content="Actions">Actions</span>
          <span id="actions-repo-tab-count" data-pjax-replace="" data-turbo-replace="" title="Not available" data-view-component="true" class="Counter"></span>


    
</a></li>
      <li data-view-component="true" class="d-inline-flex">
  <a id="projects-tab" href="/woocommerce/woocommerce/projects" data-tab-item="i5projects-tab" data-selected-links="repo_projects new_repo_project repo_project /woocommerce/woocommerce/projects" data-pjax="#repo-content-pjax-container" data-turbo-frame="repo-content-turbo-frame" data-hotkey="g b" data-analytics-event="{&quot;category&quot;:&quot;Underline navbar&quot;,&quot;action&quot;:&quot;Click tab&quot;,&quot;label&quot;:&quot;Projects&quot;,&quot;target&quot;:&quot;UNDERLINE_NAV.TAB&quot;}" data-view-component="true" class="UnderlineNav-item no-wrap js-responsive-underlinenav-item js-selected-navigation-item">
    
              <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-table UnderlineNav-octicon d-none d-sm-inline">
    <path d="M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v12.5A1.75 1.75 0 0 1 14.25 16H1.75A1.75 1.75 0 0 1 0 14.25ZM6.5 6.5v8h7.75a.25.25 0 0 0 .25-.25V6.5Zm8-1.5V1.75a.25.25 0 0 0-.25-.25H6.5V5Zm-13 1.5v7.75c0 .138.112.25.25.25H5v-8ZM5 5V1.5H1.75a.25.25 0 0 0-.25.25V5Z"></path>
</svg>
        <span data-content="Projects">Projects</span>
          <span id="projects-repo-tab-count" data-pjax-replace="" data-turbo-replace="" title="2" data-view-component="true" class="Counter">2</span>


    
</a></li>
      <li data-view-component="true" class="d-inline-flex">
  <a id="wiki-tab" href="/woocommerce/woocommerce/wiki" data-tab-item="i6wiki-tab" data-selected-links="repo_wiki /woocommerce/woocommerce/wiki" data-pjax="#repo-content-pjax-container" data-turbo-frame="repo-content-turbo-frame" data-hotkey="g w" data-analytics-event="{&quot;category&quot;:&quot;Underline navbar&quot;,&quot;action&quot;:&quot;Click tab&quot;,&quot;label&quot;:&quot;Wiki&quot;,&quot;target&quot;:&quot;UNDERLINE_NAV.TAB&quot;}" data-view-component="true" class="UnderlineNav-item no-wrap js-responsive-underlinenav-item js-selected-navigation-item">
    
              <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-book UnderlineNav-octicon d-none d-sm-inline">
    <path d="M0 1.75A.75.75 0 0 1 .75 1h4.253c1.227 0 2.317.59 3 1.501A3.743 3.743 0 0 1 11.006 1h4.245a.75.75 0 0 1 .75.75v10.5a.75.75 0 0 1-.75.75h-4.507a2.25 2.25 0 0 0-1.591.659l-.622.621a.75.75 0 0 1-1.06 0l-.622-.621A2.25 2.25 0 0 0 5.258 13H.75a.75.75 0 0 1-.75-.75Zm7.251 10.324.004-5.073-.002-2.253A2.25 2.25 0 0 0 5.003 2.5H1.5v9h3.757a3.75 3.75 0 0 1 1.994.574ZM8.755 4.75l-.004 7.322a3.752 3.752 0 0 1 1.992-.572H14.5v-9h-3.495a2.25 2.25 0 0 0-2.25 2.25Z"></path>
</svg>
        <span data-content="Wiki">Wiki</span>
          <span id="wiki-repo-tab-count" data-pjax-replace="" data-turbo-replace="" title="Not available" data-view-component="true" class="Counter"></span>


    
</a></li>
      <li data-view-component="true" class="d-inline-flex">
  <a id="security-tab" href="/woocommerce/woocommerce/security" data-tab-item="i7security-tab" data-selected-links="security overview alerts policy token_scanning code_scanning /woocommerce/woocommerce/security" data-pjax="#repo-content-pjax-container" data-turbo-frame="repo-content-turbo-frame" data-hotkey="g s" data-analytics-event="{&quot;category&quot;:&quot;Underline navbar&quot;,&quot;action&quot;:&quot;Click tab&quot;,&quot;label&quot;:&quot;Security&quot;,&quot;target&quot;:&quot;UNDERLINE_NAV.TAB&quot;}" data-view-component="true" class="UnderlineNav-item no-wrap js-responsive-underlinenav-item js-selected-navigation-item">
    
              <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-shield UnderlineNav-octicon d-none d-sm-inline">
    <path d="M7.467.133a1.748 1.748 0 0 1 1.066 0l5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667Zm.61 1.429a.25.25 0 0 0-.153 0l-5.25 1.68a.25.25 0 0 0-.174.238V7c0 1.358.275 2.666 1.057 3.86.784 1.194 2.121 2.34 4.366 3.297a.196.196 0 0 0 .154 0c2.245-.956 3.582-2.104 4.366-3.298C13.225 9.666 13.5 8.36 13.5 7V3.48a.251.251 0 0 0-.174-.237l-5.25-1.68ZM8.75 4.75v3a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 1.5 0ZM9 10.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path>
</svg>
        <span data-content="Security">Security</span>
          <include-fragment src="/woocommerce/woocommerce/security/overall-count" accept="text/fragment+html" data-nonce="v2:1a1459e0-b442-d1e4-b946-905b04b9fee0" data-view-component="true">
  
  <div data-show-on-forbidden-error hidden>
    <div class="Box">
  <div class="blankslate-container">
    <div data-view-component="true" class="blankslate blankslate-spacious color-bg-default rounded-2">
      

      <h3 data-view-component="true" class="blankslate-heading">        Uh oh!
</h3>
      <p data-view-component="true">        <p class="color-fg-muted my-2 mb-2 ws-normal">There was an error while loading. <a class="Link--inTextBlock" data-turbo="false" href="" aria-label="Please reload this page">Please reload this page</a>.</p>
</p>

</div>  </div>
</div>  </div>
</include-fragment>

    
</a></li>
      <li data-view-component="true" class="d-inline-flex">
  <a id="insights-tab" href="/woocommerce/woocommerce/pulse" data-tab-item="i8insights-tab" data-selected-links="repo_graphs repo_contributors dependency_graph dependabot_updates pulse people community /woocommerce/woocommerce/pulse" data-pjax="#repo-content-pjax-container" data-turbo-frame="repo-content-turbo-frame" data-analytics-event="{&quot;category&quot;:&quot;Underline navbar&quot;,&quot;action&quot;:&quot;Click tab&quot;,&quot;label&quot;:&quot;Insights&quot;,&quot;target&quot;:&quot;UNDERLINE_NAV.TAB&quot;}" data-view-component="true" class="UnderlineNav-item no-wrap js-responsive-underlinenav-item js-selected-navigation-item">
    
              <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-graph UnderlineNav-octicon d-none d-sm-inline">
    <path d="M1.5 1.75V13.5h13.75a.75.75 0 0 1 0 1.5H.75a.75.75 0 0 1-.75-.75V1.75a.75.75 0 0 1 1.5 0Zm14.28 2.53-5.25 5.25a.75.75 0 0 1-1.06 0L7 7.06 4.28 9.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.25-3.25a.75.75 0 0 1 1.06 0L10 7.94l4.72-4.72a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Z"></path>
</svg>
        <span data-content="Insights">Insights</span>
          <span id="insights-repo-tab-count" data-pjax-replace="" data-turbo-replace="" title="Not available" data-view-component="true" class="Counter"></span>


    
</a></li>
</ul>
    <div style="visibility:hidden;" data-view-component="true" class="UnderlineNav-actions js-responsive-underlinenav-overflow position-absolute pr-3 pr-md-4 pr-lg-5 right-0">      <action-menu data-select-variant="none" data-view-component="true">
  <focus-group direction="vertical" mnemonics retain>
    <button id="action-menu-b54eac49-e7f6-485d-901a-42a8043fc2d5-button" popovertarget="action-menu-b54eac49-e7f6-485d-901a-42a8043fc2d5-overlay" aria-controls="action-menu-b54eac49-e7f6-485d-901a-42a8043fc2d5-list" aria-haspopup="true" aria-labelledby="tooltip-b34ed81a-8a06-436d-bdfe-6e772a00fdde" type="button" data-view-component="true" class="Button Button--iconOnly Button--secondary Button--medium UnderlineNav-item">  <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-kebab-horizontal Button-visual">
    <path d="M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z"></path>
</svg>
</button><tool-tip id="tooltip-b34ed81a-8a06-436d-bdfe-6e772a00fdde" for="action-menu-b54eac49-e7f6-485d-901a-42a8043fc2d5-button" popover="manual" data-direction="s" data-type="label" data-view-component="true" class="sr-only position-absolute">Additional navigation options</tool-tip>


<anchored-position data-target="action-menu.overlay" id="action-menu-b54eac49-e7f6-485d-901a-42a8043fc2d5-overlay" anchor="action-menu-b54eac49-e7f6-485d-901a-42a8043fc2d5-button" align="start" side="outside-bottom" anchor-offset="normal" popover="auto" data-view-component="true">
  <div data-view-component="true" class="Overlay Overlay--size-auto">
    
      <div data-view-component="true" class="Overlay-body Overlay-body--paddingNone">          <action-list>
  <div data-view-component="true">
    <ul aria-labelledby="action-menu-b54eac49-e7f6-485d-901a-42a8043fc2d5-button" id="action-menu-b54eac49-e7f6-485d-901a-42a8043fc2d5-list" role="menu" data-view-component="true" class="ActionListWrap--inset ActionListWrap">
        <li hidden="hidden" data-menu-item="i0code-tab" data-targets="action-list.items" role="none" data-view-component="true" class="ActionListItem">
    
    
    <a tabindex="-1" id="item-c7ef19b9-7a03-4ae6-81b6-18c92fc35182" href="/woocommerce/woocommerce" role="menuitem" data-view-component="true" class="ActionListContent ActionListContent--visual16">
        <span class="ActionListItem-visual ActionListItem-visual--leading">
          <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-code">
    <path d="m11.28 3.22 4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.749.749 0 0 1-1.275-.326.749.749 0 0 1 .215-.734L13.94 8l-3.72-3.72a.749.749 0 0 1 .326-1.275.749.749 0 0 1 .734.215Zm-6.56 0a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042L2.06 8l3.72 3.72a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L.47 8.53a.75.75 0 0 1 0-1.06Z"></path>
</svg>
        </span>
      
        <span data-view-component="true" class="ActionListItem-label">
          Code
</span>      
</a>
  
</li>
        <li hidden="hidden" data-menu-item="i1issues-tab" data-targets="action-list.items" role="none" data-view-component="true" class="ActionListItem">
    
    
    <a tabindex="-1" id="item-23849d9b-2fee-4681-b5cf-847b34eda75d" href="/woocommerce/woocommerce/issues" role="menuitem" data-view-component="true" class="ActionListContent ActionListContent--visual16">
        <span class="ActionListItem-visual ActionListItem-visual--leading">
          <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-issue-opened">
    <path d="M8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z"></path><path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Z"></path>
</svg>
        </span>
      
        <span data-view-component="true" class="ActionListItem-label">
          Issues
</span>      
</a>
  
</li>
        <li hidden="hidden" data-menu-item="i2pull-requests-tab" data-targets="action-list.items" role="none" data-view-component="true" class="ActionListItem">
    
    
    <a tabindex="-1" id="item-86594ef2-1584-400f-8926-35b95d7437c7" href="/woocommerce/woocommerce/pulls" role="menuitem" data-view-component="true" class="ActionListContent ActionListContent--visual16">
        <span class="ActionListItem-visual ActionListItem-visual--leading">
          <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-git-pull-request">
    <path d="M1.5 3.25a2.25 2.25 0 1 1 3 2.122v5.256a2.251 2.251 0 1 1-1.5 0V5.372A2.25 2.25 0 0 1 1.5 3.25Zm5.677-.177L9.573.677A.25.25 0 0 1 10 .854V2.5h1A2.5 2.5 0 0 1 13.5 5v5.628a2.251 2.251 0 1 1-1.5 0V5a1 1 0 0 0-1-1h-1v1.646a.25.25 0 0 1-.427.177L7.177 3.427a.25.25 0 0 1 0-.354ZM3.75 2.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Zm0 9.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Zm8.25.75a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0Z"></path>
</svg>
        </span>
      
        <span data-view-component="true" class="ActionListItem-label">
          Pull requests
</span>      
</a>
  
</li>
        <li hidden="hidden" data-menu-item="i3discussions-tab" data-targets="action-list.items" role="none" data-view-component="true" class="ActionListItem">
    
    
    <a tabindex="-1" id="item-b00f011c-ae50-4bd3-a368-67fd65c9b4c9" href="/woocommerce/woocommerce/discussions" role="menuitem" data-view-component="true" class="ActionListContent ActionListContent--visual16">
        <span class="ActionListItem-visual ActionListItem-visual--leading">
          <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-comment-discussion">
    <path d="M1.75 1h8.5c.966 0 1.75.784 1.75 1.75v5.5A1.75 1.75 0 0 1 10.25 10H7.061l-2.574 2.573A1.458 1.458 0 0 1 2 11.543V10h-.25A1.75 1.75 0 0 1 0 8.25v-5.5C0 1.784.784 1 1.75 1ZM1.5 2.75v5.5c0 .138.112.25.25.25h1a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h3.5a.25.25 0 0 0 .25-.25v-5.5a.25.25 0 0 0-.25-.25h-8.5a.25.25 0 0 0-.25.25Zm13 2a.25.25 0 0 0-.25-.25h-.5a.75.75 0 0 1 0-1.5h.5c.966 0 1.75.784 1.75 1.75v5.5A1.75 1.75 0 0 1 14.25 12H14v1.543a1.458 1.458 0 0 1-2.487 1.03L9.22 12.28a.749.749 0 0 1 .326-1.275.749.749 0 0 1 .734.215l2.22 2.22v-2.19a.75.75 0 0 1 .75-.75h1a.25.25 0 0 0 .25-.25Z"></path>
</svg>
        </span>
      
        <span data-view-component="true" class="ActionListItem-label">
          Discussions
</span>      
</a>
  
</li>
        <li hidden="hidden" data-menu-item="i4actions-tab" data-targets="action-list.items" role="none" data-view-component="true" class="ActionListItem">
    
    
    <a tabindex="-1" id="item-a027ba9c-ba53-4b41-9310-cb10b1bea827" href="/woocommerce/woocommerce/actions" role="menuitem" data-view-component="true" class="ActionListContent ActionListContent--visual16">
        <span class="ActionListItem-visual ActionListItem-visual--leading">
          <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-play">
    <path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm4.879-2.773 4.264 2.559a.25.25 0 0 1 0 .428l-4.264 2.559A.25.25 0 0 1 6 10.559V5.442a.25.25 0 0 1 .379-.215Z"></path>
</svg>
        </span>
      
        <span data-view-component="true" class="ActionListItem-label">
          Actions
</span>      
</a>
  
</li>
        <li hidden="hidden" data-menu-item="i5projects-tab" data-targets="action-list.items" role="none" data-view-component="true" class="ActionListItem">
    
    
    <a tabindex="-1" id="item-74bee4c8-6a52-480e-b69b-56cc6b877f14" href="/woocommerce/woocommerce/projects" role="menuitem" data-view-component="true" class="ActionListContent ActionListContent--visual16">
        <span class="ActionListItem-visual ActionListItem-visual--leading">
          <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-table">
    <path d="M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v12.5A1.75 1.75 0 0 1 14.25 16H1.75A1.75 1.75 0 0 1 0 14.25ZM6.5 6.5v8h7.75a.25.25 0 0 0 .25-.25V6.5Zm8-1.5V1.75a.25.25 0 0 0-.25-.25H6.5V5Zm-13 1.5v7.75c0 .138.112.25.25.25H5v-8ZM5 5V1.5H1.75a.25.25 0 0 0-.25.25V5Z"></path>
</svg>
        </span>
      
        <span data-view-component="true" class="ActionListItem-label">
          Projects
</span>      
</a>
  
</li>
        <li hidden="hidden" data-menu-item="i6wiki-tab" data-targets="action-list.items" role="none" data-view-component="true" class="ActionListItem">
    
    
    <a tabindex="-1" id="item-38d77e9d-1ff2-4df3-a4ce-feae8366f41b" href="/woocommerce/woocommerce/wiki" role="menuitem" data-view-component="true" class="ActionListContent ActionListContent--visual16">
        <span class="ActionListItem-visual ActionListItem-visual--leading">
          <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-book">
    <path d="M0 1.75A.75.75 0 0 1 .75 1h4.253c1.227 0 2.317.59 3 1.501A3.743 3.743 0 0 1 11.006 1h4.245a.75.75 0 0 1 .75.75v10.5a.75.75 0 0 1-.75.75h-4.507a2.25 2.25 0 0 0-1.591.659l-.622.621a.75.75 0 0 1-1.06 0l-.622-.621A2.25 2.25 0 0 0 5.258 13H.75a.75.75 0 0 1-.75-.75Zm7.251 10.324.004-5.073-.002-2.253A2.25 2.25 0 0 0 5.003 2.5H1.5v9h3.757a3.75 3.75 0 0 1 1.994.574ZM8.755 4.75l-.004 7.322a3.752 3.752 0 0 1 1.992-.572H14.5v-9h-3.495a2.25 2.25 0 0 0-2.25 2.25Z"></path>
</svg>
        </span>
      
        <span data-view-component="true" class="ActionListItem-label">
          Wiki
</span>      
</a>
  
</li>
        <li hidden="hidden" data-menu-item="i7security-tab" data-targets="action-list.items" role="none" data-view-component="true" class="ActionListItem">
    
    
    <a tabindex="-1" id="item-fe93400b-6933-45ff-b33a-c7202b55944d" href="/woocommerce/woocommerce/security" role="menuitem" data-view-component="true" class="ActionListContent ActionListContent--visual16">
        <span class="ActionListItem-visual ActionListItem-visual--leading">
          <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-shield">
    <path d="M7.467.133a1.748 1.748 0 0 1 1.066 0l5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667Zm.61 1.429a.25.25 0 0 0-.153 0l-5.25 1.68a.25.25 0 0 0-.174.238V7c0 1.358.275 2.666 1.057 3.86.784 1.194 2.121 2.34 4.366 3.297a.196.196 0 0 0 .154 0c2.245-.956 3.582-2.104 4.366-3.298C13.225 9.666 13.5 8.36 13.5 7V3.48a.251.251 0 0 0-.174-.237l-5.25-1.68ZM8.75 4.75v3a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 1.5 0ZM9 10.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path>
</svg>
        </span>
      
        <span data-view-component="true" class="ActionListItem-label">
          Security
</span>      
</a>
  
</li>
        <li hidden="hidden" data-menu-item="i8insights-tab" data-targets="action-list.items" role="none" data-view-component="true" class="ActionListItem">
    
    
    <a tabindex="-1" id="item-b335f77a-e139-4824-a921-01f887136565" href="/woocommerce/woocommerce/pulse" role="menuitem" data-view-component="true" class="ActionListContent ActionListContent--visual16">
        <span class="ActionListItem-visual ActionListItem-visual--leading">
          <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-graph">
    <path d="M1.5 1.75V13.5h13.75a.75.75 0 0 1 0 1.5H.75a.75.75 0 0 1-.75-.75V1.75a.75.75 0 0 1 1.5 0Zm14.28 2.53-5.25 5.25a.75.75 0 0 1-1.06 0L7 7.06 4.28 9.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.25-3.25a.75.75 0 0 1 1.06 0L10 7.94l4.72-4.72a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Z"></path>
</svg>
        </span>
      
        <span data-view-component="true" class="ActionListItem-label">
          Insights
</span>      
</a>
  
</li>
</ul>    
</div></action-list>


</div>
      
</div></anchored-position>  </focus-group>
</action-menu></div>
</nav>

  </div>
  



<turbo-frame id="repo-content-turbo-frame" target="_top" data-turbo-action="advance" class="">
    <div id="repo-content-pjax-container" class="repository-content " >
    



    
      
    








<react-app
  app-name="react-code-view"
  initial-path="/woocommerce/woocommerce/blob/trunk/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php"
    style="display: block; min-height: calc(100vh - 64px);"
  data-attempted-ssr="false"
  data-ssr="false"
  data-lazy="false"
  data-alternate="false"
  data-data-router-enabled="false"
  data-react-profiling="false"
>
  
  <script type="application/json" data-target="react-app.embeddedData">{"payload":{"allShortcutsEnabled":false,"fileTree":{"plugins/woocommerce/includes/rest-api/Controllers/Version3":{"items":[{"name":"class-wc-rest-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-controller.php","contentType":"file"},{"name":"class-wc-rest-coupons-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-coupons-controller.php","contentType":"file"},{"name":"class-wc-rest-crud-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-crud-controller.php","contentType":"file"},{"name":"class-wc-rest-customer-downloads-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-customer-downloads-controller.php","contentType":"file"},{"name":"class-wc-rest-customers-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-customers-controller.php","contentType":"file"},{"name":"class-wc-rest-data-continents-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-data-continents-controller.php","contentType":"file"},{"name":"class-wc-rest-data-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-data-controller.php","contentType":"file"},{"name":"class-wc-rest-data-countries-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-data-countries-controller.php","contentType":"file"},{"name":"class-wc-rest-data-currencies-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-data-currencies-controller.php","contentType":"file"},{"name":"class-wc-rest-layout-templates-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-layout-templates-controller.php","contentType":"file"},{"name":"class-wc-rest-network-orders-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-network-orders-controller.php","contentType":"file"},{"name":"class-wc-rest-order-notes-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-order-notes-controller.php","contentType":"file"},{"name":"class-wc-rest-order-refunds-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-order-refunds-controller.php","contentType":"file"},{"name":"class-wc-rest-orders-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-orders-controller.php","contentType":"file"},{"name":"class-wc-rest-payment-gateways-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-payment-gateways-controller.php","contentType":"file"},{"name":"class-wc-rest-paypal-buttons-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-paypal-buttons-controller.php","contentType":"file"},{"name":"class-wc-rest-paypal-standard-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-paypal-standard-controller.php","contentType":"file"},{"name":"class-wc-rest-paypal-webhooks-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-paypal-webhooks-controller.php","contentType":"file"},{"name":"class-wc-rest-posts-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-posts-controller.php","contentType":"file"},{"name":"class-wc-rest-product-attribute-terms-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-attribute-terms-controller.php","contentType":"file"},{"name":"class-wc-rest-product-attributes-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-attributes-controller.php","contentType":"file"},{"name":"class-wc-rest-product-brands-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-brands-controller.php","contentType":"file"},{"name":"class-wc-rest-product-categories-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-categories-controller.php","contentType":"file"},{"name":"class-wc-rest-product-custom-fields-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-custom-fields-controller.php","contentType":"file"},{"name":"class-wc-rest-product-reviews-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-reviews-controller.php","contentType":"file"},{"name":"class-wc-rest-product-shipping-classes-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-shipping-classes-controller.php","contentType":"file"},{"name":"class-wc-rest-product-tags-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-tags-controller.php","contentType":"file"},{"name":"class-wc-rest-product-variations-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php","contentType":"file"},{"name":"class-wc-rest-products-catalog-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-products-catalog-controller.php","contentType":"file"},{"name":"class-wc-rest-products-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-products-controller.php","contentType":"file"},{"name":"class-wc-rest-refunds-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-refunds-controller.php","contentType":"file"},{"name":"class-wc-rest-report-coupons-totals-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-report-coupons-totals-controller.php","contentType":"file"},{"name":"class-wc-rest-report-customers-totals-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-report-customers-totals-controller.php","contentType":"file"},{"name":"class-wc-rest-report-orders-totals-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-report-orders-totals-controller.php","contentType":"file"},{"name":"class-wc-rest-report-products-totals-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-report-products-totals-controller.php","contentType":"file"},{"name":"class-wc-rest-report-reviews-totals-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-report-reviews-totals-controller.php","contentType":"file"},{"name":"class-wc-rest-report-sales-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-report-sales-controller.php","contentType":"file"},{"name":"class-wc-rest-report-top-sellers-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-report-top-sellers-controller.php","contentType":"file"},{"name":"class-wc-rest-reports-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-reports-controller.php","contentType":"file"},{"name":"class-wc-rest-setting-options-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-setting-options-controller.php","contentType":"file"},{"name":"class-wc-rest-settings-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-settings-controller.php","contentType":"file"},{"name":"class-wc-rest-shipping-methods-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-shipping-methods-controller.php","contentType":"file"},{"name":"class-wc-rest-shipping-zone-locations-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-shipping-zone-locations-controller.php","contentType":"file"},{"name":"class-wc-rest-shipping-zone-methods-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-shipping-zone-methods-controller.php","contentType":"file"},{"name":"class-wc-rest-shipping-zones-controller-base.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-shipping-zones-controller-base.php","contentType":"file"},{"name":"class-wc-rest-shipping-zones-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-shipping-zones-controller.php","contentType":"file"},{"name":"class-wc-rest-system-status-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-system-status-controller.php","contentType":"file"},{"name":"class-wc-rest-system-status-tools-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-system-status-tools-controller.php","contentType":"file"},{"name":"class-wc-rest-tax-classes-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-tax-classes-controller.php","contentType":"file"},{"name":"class-wc-rest-taxes-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-taxes-controller.php","contentType":"file"},{"name":"class-wc-rest-terms-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-terms-controller.php","contentType":"file"},{"name":"class-wc-rest-variations-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-variations-controller.php","contentType":"file"},{"name":"class-wc-rest-webhooks-controller.php","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-webhooks-controller.php","contentType":"file"}],"totalCount":53},"plugins/woocommerce/includes/rest-api/Controllers":{"items":[{"name":"Telemetry","path":"plugins/woocommerce/includes/rest-api/Controllers/Telemetry","contentType":"directory"},{"name":"Version1","path":"plugins/woocommerce/includes/rest-api/Controllers/Version1","contentType":"directory"},{"name":"Version2","path":"plugins/woocommerce/includes/rest-api/Controllers/Version2","contentType":"directory"},{"name":"Version3","path":"plugins/woocommerce/includes/rest-api/Controllers/Version3","contentType":"directory"},{"name":"Version4","path":"plugins/woocommerce/includes/rest-api/Controllers/Version4","contentType":"directory"}],"totalCount":5},"plugins/woocommerce/includes/rest-api":{"items":[{"name":"Controllers","path":"plugins/woocommerce/includes/rest-api/Controllers","contentType":"directory"},{"name":"Utilities","path":"plugins/woocommerce/includes/rest-api/Utilities","contentType":"directory"},{"name":"Package.php","path":"plugins/woocommerce/includes/rest-api/Package.php","contentType":"file"},{"name":"Server.php","path":"plugins/woocommerce/includes/rest-api/Server.php","contentType":"file"}],"totalCount":4},"plugins/woocommerce/includes":{"items":[{"name":"abstracts","path":"plugins/woocommerce/includes/abstracts","contentType":"directory"},{"name":"admin","path":"plugins/woocommerce/includes/admin","contentType":"directory"},{"name":"blocks","path":"plugins/woocommerce/includes/blocks","contentType":"directory"},{"name":"cli","path":"plugins/woocommerce/includes/cli","contentType":"directory"},{"name":"customizer","path":"plugins/woocommerce/includes/customizer","contentType":"directory"},{"name":"data-stores","path":"plugins/woocommerce/includes/data-stores","contentType":"directory"},{"name":"emails","path":"plugins/woocommerce/includes/emails","contentType":"directory"},{"name":"export","path":"plugins/woocommerce/includes/export","contentType":"directory"},{"name":"gateways","path":"plugins/woocommerce/includes/gateways","contentType":"directory"},{"name":"import","path":"plugins/woocommerce/includes/import","contentType":"directory"},{"name":"integrations","path":"plugins/woocommerce/includes/integrations","contentType":"directory"},{"name":"interfaces","path":"plugins/woocommerce/includes/interfaces","contentType":"directory"},{"name":"legacy","path":"plugins/woocommerce/includes/legacy","contentType":"directory"},{"name":"libraries","path":"plugins/woocommerce/includes/libraries","contentType":"directory"},{"name":"log-handlers","path":"plugins/woocommerce/includes/log-handlers","contentType":"directory"},{"name":"payment-tokens","path":"plugins/woocommerce/includes/payment-tokens","contentType":"directory"},{"name":"product-usage","path":"plugins/woocommerce/includes/product-usage","contentType":"directory"},{"name":"queue","path":"plugins/woocommerce/includes/queue","contentType":"directory"},{"name":"react-admin","path":"plugins/woocommerce/includes/react-admin","contentType":"directory"},{"name":"rest-api","path":"plugins/woocommerce/includes/rest-api","contentType":"directory"},{"name":"shipping","path":"plugins/woocommerce/includes/shipping","contentType":"directory"},{"name":"shortcodes","path":"plugins/woocommerce/includes/shortcodes","contentType":"directory"},{"name":"theme-support","path":"plugins/woocommerce/includes/theme-support","contentType":"directory"},{"name":"tracks","path":"plugins/woocommerce/includes/tracks","contentType":"directory"},{"name":"traits","path":"plugins/woocommerce/includes/traits","contentType":"directory"},{"name":"walkers","path":"plugins/woocommerce/includes/walkers","contentType":"directory"},{"name":"wccom-site","path":"plugins/woocommerce/includes/wccom-site","contentType":"directory"},{"name":"widgets","path":"plugins/woocommerce/includes/widgets","contentType":"directory"},{"name":"README.md","path":"plugins/woocommerce/includes/README.md","contentType":"file"},{"name":"class-wc-ajax.php","path":"plugins/woocommerce/includes/class-wc-ajax.php","contentType":"file"},{"name":"class-wc-auth.php","path":"plugins/woocommerce/includes/class-wc-auth.php","contentType":"file"},{"name":"class-wc-autoloader.php","path":"plugins/woocommerce/includes/class-wc-autoloader.php","contentType":"file"},{"name":"class-wc-background-emailer.php","path":"plugins/woocommerce/includes/class-wc-background-emailer.php","contentType":"file"},{"name":"class-wc-background-updater.php","path":"plugins/woocommerce/includes/class-wc-background-updater.php","contentType":"file"},{"name":"class-wc-brands-brand-settings-manager.php","path":"plugins/woocommerce/includes/class-wc-brands-brand-settings-manager.php","contentType":"file"},{"name":"class-wc-brands-coupons.php","path":"plugins/woocommerce/includes/class-wc-brands-coupons.php","contentType":"file"},{"name":"class-wc-brands.php","path":"plugins/woocommerce/includes/class-wc-brands.php","contentType":"file"},{"name":"class-wc-breadcrumb.php","path":"plugins/woocommerce/includes/class-wc-breadcrumb.php","contentType":"file"},{"name":"class-wc-cache-helper.php","path":"plugins/woocommerce/includes/class-wc-cache-helper.php","contentType":"file"},{"name":"class-wc-cart-fees.php","path":"plugins/woocommerce/includes/class-wc-cart-fees.php","contentType":"file"},{"name":"class-wc-cart-session.php","path":"plugins/woocommerce/includes/class-wc-cart-session.php","contentType":"file"},{"name":"class-wc-cart-totals.php","path":"plugins/woocommerce/includes/class-wc-cart-totals.php","contentType":"file"},{"name":"class-wc-cart.php","path":"plugins/woocommerce/includes/class-wc-cart.php","contentType":"file"},{"name":"class-wc-checkout.php","path":"plugins/woocommerce/includes/class-wc-checkout.php","contentType":"file"},{"name":"class-wc-cli.php","path":"plugins/woocommerce/includes/class-wc-cli.php","contentType":"file"},{"name":"class-wc-comments.php","path":"plugins/woocommerce/includes/class-wc-comments.php","contentType":"file"},{"name":"class-wc-countries.php","path":"plugins/woocommerce/includes/class-wc-countries.php","contentType":"file"},{"name":"class-wc-coupon.php","path":"plugins/woocommerce/includes/class-wc-coupon.php","contentType":"file"},{"name":"class-wc-customer-download-log.php","path":"plugins/woocommerce/includes/class-wc-customer-download-log.php","contentType":"file"},{"name":"class-wc-customer-download.php","path":"plugins/woocommerce/includes/class-wc-customer-download.php","contentType":"file"},{"name":"class-wc-customer.php","path":"plugins/woocommerce/includes/class-wc-customer.php","contentType":"file"},{"name":"class-wc-data-exception.php","path":"plugins/woocommerce/includes/class-wc-data-exception.php","contentType":"file"},{"name":"class-wc-data-store.php","path":"plugins/woocommerce/includes/class-wc-data-store.php","contentType":"file"},{"name":"class-wc-datetime.php","path":"plugins/woocommerce/includes/class-wc-datetime.php","contentType":"file"},{"name":"class-wc-deprecated-action-hooks.php","path":"plugins/woocommerce/includes/class-wc-deprecated-action-hooks.php","contentType":"file"},{"name":"class-wc-deprecated-filter-hooks.php","path":"plugins/woocommerce/includes/class-wc-deprecated-filter-hooks.php","contentType":"file"},{"name":"class-wc-discounts.php","path":"plugins/woocommerce/includes/class-wc-discounts.php","contentType":"file"},{"name":"class-wc-download-handler.php","path":"plugins/woocommerce/includes/class-wc-download-handler.php","contentType":"file"},{"name":"class-wc-emails.php","path":"plugins/woocommerce/includes/class-wc-emails.php","contentType":"file"},{"name":"class-wc-embed.php","path":"plugins/woocommerce/includes/class-wc-embed.php","contentType":"file"},{"name":"class-wc-form-handler.php","path":"plugins/woocommerce/includes/class-wc-form-handler.php","contentType":"file"},{"name":"class-wc-frontend-scripts.php","path":"plugins/woocommerce/includes/class-wc-frontend-scripts.php","contentType":"file"},{"name":"class-wc-geo-ip.php","path":"plugins/woocommerce/includes/class-wc-geo-ip.php","contentType":"file"},{"name":"class-wc-geolite-integration.php","path":"plugins/woocommerce/includes/class-wc-geolite-integration.php","contentType":"file"},{"name":"class-wc-geolocation.php","path":"plugins/woocommerce/includes/class-wc-geolocation.php","contentType":"file"},{"name":"class-wc-https.php","path":"plugins/woocommerce/includes/class-wc-https.php","contentType":"file"},{"name":"class-wc-install.php","path":"plugins/woocommerce/includes/class-wc-install.php","contentType":"file"},{"name":"class-wc-integrations.php","path":"plugins/woocommerce/includes/class-wc-integrations.php","contentType":"file"},{"name":"class-wc-log-levels.php","path":"plugins/woocommerce/includes/class-wc-log-levels.php","contentType":"file"},{"name":"class-wc-logger.php","path":"plugins/woocommerce/includes/class-wc-logger.php","contentType":"file"},{"name":"class-wc-meta-data.php","path":"plugins/woocommerce/includes/class-wc-meta-data.php","contentType":"file"},{"name":"class-wc-order-factory.php","path":"plugins/woocommerce/includes/class-wc-order-factory.php","contentType":"file"},{"name":"class-wc-order-item-coupon.php","path":"plugins/woocommerce/includes/class-wc-order-item-coupon.php","contentType":"file"},{"name":"class-wc-order-item-fee.php","path":"plugins/woocommerce/includes/class-wc-order-item-fee.php","contentType":"file"},{"name":"class-wc-order-item-meta.php","path":"plugins/woocommerce/includes/class-wc-order-item-meta.php","contentType":"file"},{"name":"class-wc-order-item-product.php","path":"plugins/woocommerce/includes/class-wc-order-item-product.php","contentType":"file"},{"name":"class-wc-order-item-shipping.php","path":"plugins/woocommerce/includes/class-wc-order-item-shipping.php","contentType":"file"},{"name":"class-wc-order-item-tax.php","path":"plugins/woocommerce/includes/class-wc-order-item-tax.php","contentType":"file"},{"name":"class-wc-order-item.php","path":"plugins/woocommerce/includes/class-wc-order-item.php","contentType":"file"},{"name":"class-wc-order-query.php","path":"plugins/woocommerce/includes/class-wc-order-query.php","contentType":"file"},{"name":"class-wc-order-refund.php","path":"plugins/woocommerce/includes/class-wc-order-refund.php","contentType":"file"},{"name":"class-wc-order.php","path":"plugins/woocommerce/includes/class-wc-order.php","contentType":"file"},{"name":"class-wc-payment-gateways.php","path":"plugins/woocommerce/includes/class-wc-payment-gateways.php","contentType":"file"},{"name":"class-wc-payment-tokens.php","path":"plugins/woocommerce/includes/class-wc-payment-tokens.php","contentType":"file"},{"name":"class-wc-post-data.php","path":"plugins/woocommerce/includes/class-wc-post-data.php","contentType":"file"},{"name":"class-wc-post-types.php","path":"plugins/woocommerce/includes/class-wc-post-types.php","contentType":"file"},{"name":"class-wc-privacy-background-process.php","path":"plugins/woocommerce/includes/class-wc-privacy-background-process.php","contentType":"file"},{"name":"class-wc-privacy-erasers.php","path":"plugins/woocommerce/includes/class-wc-privacy-erasers.php","contentType":"file"},{"name":"class-wc-privacy-exporters.php","path":"plugins/woocommerce/includes/class-wc-privacy-exporters.php","contentType":"file"},{"name":"class-wc-privacy.php","path":"plugins/woocommerce/includes/class-wc-privacy.php","contentType":"file"},{"name":"class-wc-product-attribute.php","path":"plugins/woocommerce/includes/class-wc-product-attribute.php","contentType":"file"},{"name":"class-wc-product-download.php","path":"plugins/woocommerce/includes/class-wc-product-download.php","contentType":"file"},{"name":"class-wc-product-external.php","path":"plugins/woocommerce/includes/class-wc-product-external.php","contentType":"file"},{"name":"class-wc-product-factory.php","path":"plugins/woocommerce/includes/class-wc-product-factory.php","contentType":"file"},{"name":"class-wc-product-grouped.php","path":"plugins/woocommerce/includes/class-wc-product-grouped.php","contentType":"file"},{"name":"class-wc-product-query.php","path":"plugins/woocommerce/includes/class-wc-product-query.php","contentType":"file"},{"name":"class-wc-product-simple.php","path":"plugins/woocommerce/includes/class-wc-product-simple.php","contentType":"file"},{"name":"class-wc-product-variable.php","path":"plugins/woocommerce/includes/class-wc-product-variable.php","contentType":"file"},{"name":"class-wc-product-variation.php","path":"plugins/woocommerce/includes/class-wc-product-variation.php","contentType":"file"},{"name":"class-wc-query.php","path":"plugins/woocommerce/includes/class-wc-query.php","contentType":"file"},{"name":"class-wc-rate-limiter.php","path":"plugins/woocommerce/includes/class-wc-rate-limiter.php","contentType":"file"},{"name":"class-wc-regenerate-images-request.php","path":"plugins/woocommerce/includes/class-wc-regenerate-images-request.php","contentType":"file"},{"name":"class-wc-regenerate-images.php","path":"plugins/woocommerce/includes/class-wc-regenerate-images.php","contentType":"file"},{"name":"class-wc-register-wp-admin-settings.php","path":"plugins/woocommerce/includes/class-wc-register-wp-admin-settings.php","contentType":"file"},{"name":"class-wc-rest-authentication.php","path":"plugins/woocommerce/includes/class-wc-rest-authentication.php","contentType":"file"},{"name":"class-wc-rest-exception.php","path":"plugins/woocommerce/includes/class-wc-rest-exception.php","contentType":"file"},{"name":"class-wc-session-handler.php","path":"plugins/woocommerce/includes/class-wc-session-handler.php","contentType":"file"},{"name":"class-wc-shipping-rate.php","path":"plugins/woocommerce/includes/class-wc-shipping-rate.php","contentType":"file"},{"name":"class-wc-shipping-zone.php","path":"plugins/woocommerce/includes/class-wc-shipping-zone.php","contentType":"file"},{"name":"class-wc-shipping-zones.php","path":"plugins/woocommerce/includes/class-wc-shipping-zones.php","contentType":"file"},{"name":"class-wc-shipping.php","path":"plugins/woocommerce/includes/class-wc-shipping.php","contentType":"file"},{"name":"class-wc-shortcodes.php","path":"plugins/woocommerce/includes/class-wc-shortcodes.php","contentType":"file"},{"name":"class-wc-structured-data.php","path":"plugins/woocommerce/includes/class-wc-structured-data.php","contentType":"file"},{"name":"class-wc-tax.php","path":"plugins/woocommerce/includes/class-wc-tax.php","contentType":"file"},{"name":"class-wc-template-loader.php","path":"plugins/woocommerce/includes/class-wc-template-loader.php","contentType":"file"},{"name":"class-wc-tracker.php","path":"plugins/woocommerce/includes/class-wc-tracker.php","contentType":"file"},{"name":"class-wc-validation.php","path":"plugins/woocommerce/includes/class-wc-validation.php","contentType":"file"},{"name":"class-wc-webhook.php","path":"plugins/woocommerce/includes/class-wc-webhook.php","contentType":"file"},{"name":"class-woocommerce.php","path":"plugins/woocommerce/includes/class-woocommerce.php","contentType":"file"},{"name":"wc-account-functions.php","path":"plugins/woocommerce/includes/wc-account-functions.php","contentType":"file"},{"name":"wc-attribute-functions.php","path":"plugins/woocommerce/includes/wc-attribute-functions.php","contentType":"file"},{"name":"wc-brands-functions.php","path":"plugins/woocommerce/includes/wc-brands-functions.php","contentType":"file"},{"name":"wc-cart-functions.php","path":"plugins/woocommerce/includes/wc-cart-functions.php","contentType":"file"},{"name":"wc-conditional-functions.php","path":"plugins/woocommerce/includes/wc-conditional-functions.php","contentType":"file"},{"name":"wc-core-functions.php","path":"plugins/woocommerce/includes/wc-core-functions.php","contentType":"file"},{"name":"wc-coupon-functions.php","path":"plugins/woocommerce/includes/wc-coupon-functions.php","contentType":"file"},{"name":"wc-deprecated-functions.php","path":"plugins/woocommerce/includes/wc-deprecated-functions.php","contentType":"file"},{"name":"wc-formatting-functions.php","path":"plugins/woocommerce/includes/wc-formatting-functions.php","contentType":"file"},{"name":"wc-notice-functions.php","path":"plugins/woocommerce/includes/wc-notice-functions.php","contentType":"file"},{"name":"wc-order-functions.php","path":"plugins/woocommerce/includes/wc-order-functions.php","contentType":"file"},{"name":"wc-order-item-functions.php","path":"plugins/woocommerce/includes/wc-order-item-functions.php","contentType":"file"},{"name":"wc-order-step-logger-functions.php","path":"plugins/woocommerce/includes/wc-order-step-logger-functions.php","contentType":"file"},{"name":"wc-page-functions.php","path":"plugins/woocommerce/includes/wc-page-functions.php","contentType":"file"},{"name":"wc-product-functions.php","path":"plugins/woocommerce/includes/wc-product-functions.php","contentType":"file"},{"name":"wc-rest-functions.php","path":"plugins/woocommerce/includes/wc-rest-functions.php","contentType":"file"},{"name":"wc-stock-functions.php","path":"plugins/woocommerce/includes/wc-stock-functions.php","contentType":"file"},{"name":"wc-template-functions.php","path":"plugins/woocommerce/includes/wc-template-functions.php","contentType":"file"},{"name":"wc-template-hooks.php","path":"plugins/woocommerce/includes/wc-template-hooks.php","contentType":"file"},{"name":"wc-term-functions.php","path":"plugins/woocommerce/includes/wc-term-functions.php","contentType":"file"},{"name":"wc-update-functions.php","path":"plugins/woocommerce/includes/wc-update-functions.php","contentType":"file"},{"name":"wc-user-functions.php","path":"plugins/woocommerce/includes/wc-user-functions.php","contentType":"file"},{"name":"wc-webhook-functions.php","path":"plugins/woocommerce/includes/wc-webhook-functions.php","contentType":"file"},{"name":"wc-widget-functions.php","path":"plugins/woocommerce/includes/wc-widget-functions.php","contentType":"file"}],"totalCount":143},"plugins/woocommerce":{"items":[{"name":".wordpress-org","path":"plugins/woocommerce/.wordpress-org","contentType":"directory"},{"name":"assets","path":"plugins/woocommerce/assets","contentType":"directory"},{"name":"bin","path":"plugins/woocommerce/bin","contentType":"directory"},{"name":"changelog","path":"plugins/woocommerce/changelog","contentType":"directory"},{"name":"client","path":"plugins/woocommerce/client","contentType":"directory"},{"name":"i18n","path":"plugins/woocommerce/i18n","contentType":"directory"},{"name":"includes","path":"plugins/woocommerce/includes","contentType":"directory"},{"name":"lib","path":"plugins/woocommerce/lib","contentType":"directory"},{"name":"packages","path":"plugins/woocommerce/packages","contentType":"directory"},{"name":"patterns","path":"plugins/woocommerce/patterns","contentType":"directory"},{"name":"php-stubs","path":"plugins/woocommerce/php-stubs","contentType":"directory"},{"name":"sample-data","path":"plugins/woocommerce/sample-data","contentType":"directory"},{"name":"src","path":"plugins/woocommerce/src","contentType":"directory"},{"name":"templates","path":"plugins/woocommerce/templates","contentType":"directory"},{"name":"tests","path":"plugins/woocommerce/tests","contentType":"directory"},{"name":".distignore","path":"plugins/woocommerce/.distignore","contentType":"file"},{"name":".eslintignore","path":"plugins/woocommerce/.eslintignore","contentType":"file"},{"name":".eslintrc.js","path":"plugins/woocommerce/.eslintrc.js","contentType":"file"},{"name":".gitattributes","path":"plugins/woocommerce/.gitattributes","contentType":"file"},{"name":".gitignore","path":"plugins/woocommerce/.gitignore","contentType":"file"},{"name":".phpunit-watcher.yml","path":"plugins/woocommerce/.phpunit-watcher.yml","contentType":"file"},{"name":".wp-env.json","path":"plugins/woocommerce/.wp-env.json","contentType":"file"},{"name":"NEXT_CHANGELOG.md","path":"plugins/woocommerce/NEXT_CHANGELOG.md","contentType":"file"},{"name":"README.md","path":"plugins/woocommerce/README.md","contentType":"file"},{"name":"composer.json","path":"plugins/woocommerce/composer.json","contentType":"file"},{"name":"composer.lock","path":"plugins/woocommerce/composer.lock","contentType":"file"},{"name":"license.txt","path":"plugins/woocommerce/license.txt","contentType":"file"},{"name":"package.json","path":"plugins/woocommerce/package.json","contentType":"file"},{"name":"phpcs.xml","path":"plugins/woocommerce/phpcs.xml","contentType":"file"},{"name":"phpstan-baseline.neon","path":"plugins/woocommerce/phpstan-baseline.neon","contentType":"file"},{"name":"phpstan.neon","path":"plugins/woocommerce/phpstan.neon","contentType":"file"},{"name":"phpunit.xml","path":"plugins/woocommerce/phpunit.xml","contentType":"file"},{"name":"readme.txt","path":"plugins/woocommerce/readme.txt","contentType":"file"},{"name":"tsconfig.json","path":"plugins/woocommerce/tsconfig.json","contentType":"file"},{"name":"uninstall.php","path":"plugins/woocommerce/uninstall.php","contentType":"file"},{"name":"woocommerce.php","path":"plugins/woocommerce/woocommerce.php","contentType":"file"}],"totalCount":36},"plugins":{"items":[{"name":"woocommerce-beta-tester","path":"plugins/woocommerce-beta-tester","contentType":"directory"},{"name":"woocommerce","path":"plugins/woocommerce","contentType":"directory"}],"totalCount":2},"":{"items":[{"name":".ai","path":".ai","contentType":"directory"},{"name":".claude","path":".claude","contentType":"directory"},{"name":".cursor","path":".cursor","contentType":"directory"},{"name":".github","path":".github","contentType":"directory"},{"name":".husky","path":".husky","contentType":"directory"},{"name":".linear","path":".linear","contentType":"directory"},{"name":"bin","path":"bin","contentType":"directory"},{"name":"docs","path":"docs","contentType":"directory"},{"name":"packages","path":"packages","contentType":"directory"},{"name":"plugins","path":"plugins","contentType":"directory"},{"name":"tools","path":"tools","contentType":"directory"},{"name":".codecov.yml","path":".codecov.yml","contentType":"file"},{"name":".coderabbit.yml","path":".coderabbit.yml","contentType":"file"},{"name":".editorconfig","path":".editorconfig","contentType":"file"},{"name":".eslintignore","path":".eslintignore","contentType":"file"},{"name":".eslintrc.js","path":".eslintrc.js","contentType":"file"},{"name":".gitattributes","path":".gitattributes","contentType":"file"},{"name":".gitignore","path":".gitignore","contentType":"file"},{"name":".markdownlint.json","path":".markdownlint.json","contentType":"file"},{"name":".markdownlintignore","path":".markdownlintignore","contentType":"file"},{"name":".npmrc","path":".npmrc","contentType":"file"},{"name":".nvmrc","path":".nvmrc","contentType":"file"},{"name":".pnpmfile.cjs","path":".pnpmfile.cjs","contentType":"file"},{"name":".prettierrc.js","path":".prettierrc.js","contentType":"file"},{"name":".stylelintrc","path":".stylelintrc","contentType":"file"},{"name":".syncpackrc","path":".syncpackrc","contentType":"file"},{"name":"CLAUDE.md","path":"CLAUDE.md","contentType":"file"},{"name":"CODEOWNERS","path":"CODEOWNERS","contentType":"file"},{"name":"CODE_OF_CONDUCT.md","path":"CODE_OF_CONDUCT.md","contentType":"file"},{"name":"DEVELOPMENT.md","path":"DEVELOPMENT.md","contentType":"file"},{"name":"README.md","path":"README.md","contentType":"file"},{"name":"SECURITY.md","path":"SECURITY.md","contentType":"file"},{"name":"changelog.txt","path":"changelog.txt","contentType":"file"},{"name":"package.json","path":"package.json","contentType":"file"},{"name":"phpcs.xml","path":"phpcs.xml","contentType":"file"},{"name":"pnpm-lock.yaml","path":"pnpm-lock.yaml","contentType":"file"},{"name":"pnpm-workspace.yaml","path":"pnpm-workspace.yaml","contentType":"file"},{"name":"renovate.json","path":"renovate.json","contentType":"file"},{"name":"tsconfig.base.json","path":"tsconfig.base.json","contentType":"file"}],"totalCount":39}},"fileTreeProcessingTime":76.51417400000001,"foldersToFetch":[],"incompleteFileTree":false,"repo":{"id":2179920,"defaultBranch":"trunk","name":"woocommerce","ownerLogin":"woocommerce","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2011-08-09T15:12:11.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/473596?v=4","public":true,"private":false,"isOrgOwned":true},"codeLineWrapEnabled":false,"symbolsExpanded":false,"treeExpanded":true,"refInfo":{"name":"trunk","listCacheKey":"v0:1767036734.0","canEdit":false,"refType":"branch","currentOid":"922cc40ed9c61c15c73231d53ea939768c56b731","canEditOnDefaultBranch":false,"fileExistsOnDefault":true},"path":"plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php","currentUser":null,"blob":{"rawLines":["\u003c?php","/**"," * REST API variations controller"," *"," * Handles requests to the /products/\u003cproduct_id\u003e/variations endpoints."," *"," * @package WooCommerce\\RestApi"," * @since   3.0.0"," */","","use Automattic\\WooCommerce\\Enums\\ProductTaxStatus;","use Automattic\\WooCommerce\\Enums\\ProductStatus;","use Automattic\\WooCommerce\\Enums\\ProductStockStatus;","use Automattic\\WooCommerce\\Internal\\CostOfGoodsSold\\CogsAwareRestControllerTrait;","use Automattic\\WooCommerce\\Utilities\\I18nUtil;","","defined( 'ABSPATH' ) || exit;","","use Automattic\\Jetpack\\Constants;","","/**"," * REST API variations controller class."," *"," * @package WooCommerce\\RestApi"," * @extends WC_REST_Product_Variations_V2_Controller"," */","class WC_REST_Product_Variations_Controller extends WC_REST_Product_Variations_V2_Controller {","\tuse CogsAwareRestControllerTrait;","","\t/**","\t * Endpoint namespace.","\t *","\t * @var string","\t */","\tprotected $namespace = 'wc/v3';","","\t/**","\t * Product statuses to exclude from the query.","\t *","\t * @var array","\t */","\tprivate $exclude_status = array();","","\t/**","\t * Register the routes for products.","\t */","\tpublic function register_routes() {","\t\tparent::register_routes();","","\t\tregister_rest_route(","\t\t\t$this-\u003enamespace,","\t\t\t'/' . $this-\u003erest_base . '/generate',","\t\t\tarray(","\t\t\t\t'args'   =\u003e array(","\t\t\t\t\t'product_id'     =\u003e array(","\t\t\t\t\t\t'description' =\u003e __( 'Unique identifier for the variable product.', 'woocommerce' ),","\t\t\t\t\t\t'type'        =\u003e 'integer',","\t\t\t\t\t),","\t\t\t\t\t'delete'         =\u003e array(","\t\t\t\t\t\t'description' =\u003e __( 'Deletes unused variations.', 'woocommerce' ),","\t\t\t\t\t\t'type'        =\u003e 'boolean',","\t\t\t\t\t),","\t\t\t\t\t'default_values' =\u003e array(","\t\t\t\t\t\t'description' =\u003e __( 'Default values for generated variations.', 'woocommerce' ),","\t\t\t\t\t\t'type'        =\u003e 'object',","\t\t\t\t\t\t'properties'  =\u003e $this-\u003eget_endpoint_args_for_item_schema( WP_REST_Server::EDITABLE ),","\t\t\t\t\t),","\t\t\t\t),","\t\t\t\tarray(","\t\t\t\t\t'methods'             =\u003e WP_REST_Server::CREATABLE,","\t\t\t\t\t'callback'            =\u003e array( $this, 'generate' ),","\t\t\t\t\t'permission_callback' =\u003e array( $this, 'create_item_permissions_check' ),","\t\t\t\t\t'args'                =\u003e $this-\u003eget_endpoint_args_for_item_schema( WP_REST_Server::CREATABLE ),","\t\t\t\t),","\t\t\t\t'schema' =\u003e array( $this, 'get_public_item_schema' ),","\t\t\t)","\t\t);","\t}","","\t/**","\t * Get the downloads for a product variation.","\t *","\t * @param WC_Product_Variation $product Product variation instance.","\t * @param string               $context Context of the request: 'view' or 'edit'.","\t *","\t * @return array","\t */","\tprotected function get_downloads( $product, $context = 'view' ) {","\t\t$downloads = array();","","\t\tif ( $product-\u003eis_downloadable() || 'edit' === $context ) {","\t\t\tforeach ( $product-\u003eget_downloads() as $file_id =\u003e $file ) {","\t\t\t\t$downloads[] = array(","\t\t\t\t\t'id'   =\u003e $file_id, // MD5 hash.","\t\t\t\t\t'name' =\u003e $file['name'],","\t\t\t\t\t'file' =\u003e $file['file'],","\t\t\t\t);","\t\t\t}","\t\t}","","\t\treturn $downloads;","\t}","","\t/**","\t * Prepare a single variation output for response.","\t *","\t * @param  WC_Data         $object  Object data.","\t * @param  WP_REST_Request $request Request object.","\t * @return WP_REST_Response","\t */","\tpublic function prepare_object_for_response( $object, $request ) {","\t\t$context = ! empty( $request['context'] ) ? $request['context'] : 'view';","\t\t$data    = array(","\t\t\t'id'                    =\u003e $object-\u003eget_id(),","\t\t\t'type'                  =\u003e $object-\u003eget_type(),","\t\t\t'date_created'          =\u003e wc_rest_prepare_date_response( $object-\u003eget_date_created(), false ),","\t\t\t'date_created_gmt'      =\u003e wc_rest_prepare_date_response( $object-\u003eget_date_created() ),","\t\t\t'date_modified'         =\u003e wc_rest_prepare_date_response( $object-\u003eget_date_modified(), false ),","\t\t\t'date_modified_gmt'     =\u003e wc_rest_prepare_date_response( $object-\u003eget_date_modified() ),","\t\t\t'description'           =\u003e wc_format_content( $object-\u003eget_description() ),","\t\t\t'permalink'             =\u003e $object-\u003eget_permalink(),","\t\t\t'sku'                   =\u003e $object-\u003eget_sku(),","\t\t\t'global_unique_id'      =\u003e $object-\u003eget_global_unique_id(),","\t\t\t'price'                 =\u003e $object-\u003eget_price(),","\t\t\t'regular_price'         =\u003e $object-\u003eget_regular_price(),","\t\t\t'sale_price'            =\u003e $object-\u003eget_sale_price(),","\t\t\t'date_on_sale_from'     =\u003e wc_rest_prepare_date_response( $object-\u003eget_date_on_sale_from(), false ),","\t\t\t'date_on_sale_from_gmt' =\u003e wc_rest_prepare_date_response( $object-\u003eget_date_on_sale_from() ),","\t\t\t'date_on_sale_to'       =\u003e wc_rest_prepare_date_response( $object-\u003eget_date_on_sale_to(), false ),","\t\t\t'date_on_sale_to_gmt'   =\u003e wc_rest_prepare_date_response( $object-\u003eget_date_on_sale_to() ),","\t\t\t'on_sale'               =\u003e $object-\u003eis_on_sale(),","\t\t\t'status'                =\u003e $object-\u003eget_status(),","\t\t\t'purchasable'           =\u003e $object-\u003eis_purchasable(),","\t\t\t'virtual'               =\u003e $object-\u003eis_virtual(),","\t\t\t'downloadable'          =\u003e $object-\u003eis_downloadable(),","\t\t\t'downloads'             =\u003e $this-\u003eget_downloads( $object, $context ),","\t\t\t'download_limit'        =\u003e '' !== $object-\u003eget_download_limit() ? (int) $object-\u003eget_download_limit() : -1,","\t\t\t'download_expiry'       =\u003e '' !== $object-\u003eget_download_expiry() ? (int) $object-\u003eget_download_expiry() : -1,","\t\t\t'tax_status'            =\u003e $object-\u003eget_tax_status(),","\t\t\t'tax_class'             =\u003e $object-\u003eget_tax_class( $context ),","\t\t\t'manage_stock'          =\u003e $object-\u003emanaging_stock(),","\t\t\t'stock_quantity'        =\u003e $object-\u003eget_stock_quantity(),","\t\t\t'stock_status'          =\u003e $object-\u003eget_stock_status(),","\t\t\t'backorders'            =\u003e $object-\u003eget_backorders(),","\t\t\t'backorders_allowed'    =\u003e $object-\u003ebackorders_allowed(),","\t\t\t'backordered'           =\u003e $object-\u003eis_on_backorder(),","\t\t\t'low_stock_amount'      =\u003e '' === $object-\u003eget_low_stock_amount() ? null : $object-\u003eget_low_stock_amount(),","\t\t\t'weight'                =\u003e $object-\u003eget_weight(),","\t\t\t'dimensions'            =\u003e array(","\t\t\t\t'length' =\u003e $object-\u003eget_length(),","\t\t\t\t'width'  =\u003e $object-\u003eget_width(),","\t\t\t\t'height' =\u003e $object-\u003eget_height(),","\t\t\t),","\t\t\t'shipping_class'        =\u003e $object-\u003eget_shipping_class(),","\t\t\t'shipping_class_id'     =\u003e $object-\u003eget_shipping_class_id(),","\t\t\t'image'                 =\u003e $this-\u003eget_image( $object, $context ),","\t\t\t'attributes'            =\u003e $this-\u003eget_attributes( $object ),","\t\t\t'menu_order'            =\u003e $object-\u003eget_menu_order(),","\t\t\t'meta_data'             =\u003e $object-\u003eget_meta_data(),","\t\t\t'name'                  =\u003e wc_get_formatted_variation( $object, true, false, false ),","\t\t\t'parent_id'             =\u003e $object-\u003eget_parent_id(),","\t\t);","","\t\t$data = $this-\u003eadd_additional_fields_to_object( $data, $request );","\t\t$data = $this-\u003efilter_response_by_context( $data, $context );","","\t\tif ( $this-\u003ecogs_is_enabled() ) {","\t\t\t$this-\u003eadd_cogs_info_to_returned_product_data( $data, $object );","\t\t}","","\t\t$response = rest_ensure_response( $data );","\t\t$response-\u003eadd_links( $this-\u003eprepare_links( $object, $request ) );","","\t\t/**","\t\t * Filter the data for a response.","\t\t *","\t\t * The dynamic portion of the hook name, $this-\u003epost_type,","\t\t * refers to object type being prepared for the response.","\t\t *","\t\t * @since 4.5.0","\t\t * @param WP_REST_Response $response The response object.","\t\t * @param WC_Data          $object   Object data.","\t\t * @param WP_REST_Request  $request  Request object.","\t\t */","\t\treturn apply_filters( \"woocommerce_rest_prepare_{$this-\u003epost_type}_object\", $response, $object, $request );","\t}","","\t/**","\t * Prepare a single variation for create or update.","\t *","\t * @param  WP_REST_Request $request Request object.","\t * @param  bool            $creating If is creating a new object.","\t * @return WP_Error|WC_Data","\t */","\tprotected function prepare_object_for_database( $request, $creating = false ) {","\t\tif ( isset( $request['id'] ) ) {","\t\t\t$variation = wc_get_product( absint( $request['id'] ) );","\t\t} else {","\t\t\t$variation = new WC_Product_Variation();","\t\t}","","\t\t$variation-\u003eset_parent_id( absint( $request['product_id'] ) );","","\t\t// Status.","\t\tif ( isset( $request['status'] ) ) {","\t\t\t$variation-\u003eset_status( get_post_status_object( $request['status'] ) ? $request['status'] : ProductStatus::DRAFT );","\t\t}","","\t\t// SKU.","\t\tif ( isset( $request['sku'] ) ) {","\t\t\t$variation-\u003eset_sku( wc_clean( $request['sku'] ) );","\t\t}","","\t\t// Unique ID.","\t\tif ( isset( $request['global_unique_id'] ) ) {","\t\t\t$variation-\u003eset_global_unique_id( wc_clean( $request['global_unique_id'] ) );","\t\t}","","\t\t// Thumbnail.","\t\tif ( isset( $request['image'] ) ) {","\t\t\tif ( is_array( $request['image'] ) ) {","\t\t\t\t$variation = $this-\u003eset_variation_image( $variation, $request['image'] );","\t\t\t} else {","\t\t\t\t$variation-\u003eset_image_id( '' );","\t\t\t}","\t\t}","","\t\t// Virtual variation.","\t\tif ( isset( $request['virtual'] ) ) {","\t\t\t$variation-\u003eset_virtual( $request['virtual'] );","\t\t}","","\t\t// Downloadable variation.","\t\tif ( isset( $request['downloadable'] ) ) {","\t\t\t$variation-\u003eset_downloadable( $request['downloadable'] );","\t\t}","","\t\t// Downloads.","\t\tif ( $variation-\u003eget_downloadable() ) {","\t\t\t// Downloadable files.","\t\t\tif ( isset( $request['downloads'] ) \u0026\u0026 is_array( $request['downloads'] ) ) {","\t\t\t\t$variation = $this-\u003esave_downloadable_files( $variation, $request['downloads'] );","\t\t\t}","","\t\t\t// Download limit.","\t\t\tif ( isset( $request['download_limit'] ) ) {","\t\t\t\t$variation-\u003eset_download_limit( $request['download_limit'] );","\t\t\t}","","\t\t\t// Download expiry.","\t\t\tif ( isset( $request['download_expiry'] ) ) {","\t\t\t\t$variation-\u003eset_download_expiry( $request['download_expiry'] );","\t\t\t}","\t\t}","","\t\t// Shipping data.","\t\t$variation = $this-\u003esave_product_shipping_data( $variation, $request );","","\t\t// Stock handling.","\t\tif ( isset( $request['manage_stock'] ) ) {","\t\t\t$variation-\u003eset_manage_stock( $request['manage_stock'] );","\t\t}","","\t\tif ( isset( $request['stock_status'] ) ) {","\t\t\t$variation-\u003eset_stock_status( $request['stock_status'] );","\t\t}","","\t\tif ( isset( $request['backorders'] ) ) {","\t\t\t$variation-\u003eset_backorders( $request['backorders'] );","\t\t}","","\t\tif ( $variation-\u003eget_manage_stock() ) {","\t\t\tif ( isset( $request['stock_quantity'] ) ) {","\t\t\t\t$variation-\u003eset_stock_quantity( $request['stock_quantity'] );","\t\t\t} elseif ( isset( $request['inventory_delta'] ) ) {","\t\t\t\t$stock_quantity  = wc_stock_amount( $variation-\u003eget_stock_quantity() );","\t\t\t\t$stock_quantity += wc_stock_amount( $request['inventory_delta'] );","\t\t\t\t$variation-\u003eset_stock_quantity( $stock_quantity );","\t\t\t}","\t\t\t// isset() returns false for value null, thus we need to check whether the value has been sent by the request.","\t\t\tif ( array_key_exists( 'low_stock_amount', $request-\u003eget_params() ) ) {","\t\t\t\tif ( null === $request['low_stock_amount'] ) {","\t\t\t\t\t$variation-\u003eset_low_stock_amount( '' );","\t\t\t\t} else {","\t\t\t\t\t$variation-\u003eset_low_stock_amount( wc_stock_amount( $request['low_stock_amount'] ) );","\t\t\t\t}","\t\t\t}","\t\t} else {","\t\t\t$variation-\u003eset_backorders( 'no' );","\t\t\t$variation-\u003eset_stock_quantity( '' );","\t\t\t$variation-\u003eset_low_stock_amount( '' );","\t\t}","","\t\t// Regular Price.","\t\tif ( isset( $request['regular_price'] ) ) {","\t\t\t$variation-\u003eset_regular_price( $request['regular_price'] );","\t\t}","","\t\t// Sale Price.","\t\tif ( isset( $request['sale_price'] ) ) {","\t\t\t$variation-\u003eset_sale_price( $request['sale_price'] );","\t\t}","","\t\tif ( isset( $request['date_on_sale_from'] ) ) {","\t\t\t$variation-\u003eset_date_on_sale_from( $request['date_on_sale_from'] );","\t\t}","","\t\tif ( isset( $request['date_on_sale_from_gmt'] ) ) {","\t\t\t$variation-\u003eset_date_on_sale_from( $request['date_on_sale_from_gmt'] ? strtotime( $request['date_on_sale_from_gmt'] ) : null );","\t\t}","","\t\tif ( isset( $request['date_on_sale_to'] ) ) {","\t\t\t$variation-\u003eset_date_on_sale_to( $request['date_on_sale_to'] );","\t\t}","","\t\tif ( isset( $request['date_on_sale_to_gmt'] ) ) {","\t\t\t$variation-\u003eset_date_on_sale_to( $request['date_on_sale_to_gmt'] ? strtotime( $request['date_on_sale_to_gmt'] ) : null );","\t\t}","","\t\t// Tax class.","\t\tif ( isset( $request['tax_class'] ) ) {","\t\t\t$variation-\u003eset_tax_class( $request['tax_class'] );","\t\t}","","\t\t// Description.","\t\tif ( isset( $request['description'] ) ) {","\t\t\t$variation-\u003eset_description( wp_kses_post( $request['description'] ) );","\t\t}","","\t\t// Update taxonomies.","\t\tif ( isset( $request['attributes'] ) ) {","\t\t\t$attributes = array();","\t\t\t$parent     = wc_get_product( $variation-\u003eget_parent_id() );","","\t\t\tif ( ! $parent ) {","\t\t\t\treturn new WP_Error(","\t\t\t\t\t// Translators: %d parent ID.","\t\t\t\t\t\"woocommerce_rest_{$this-\u003epost_type}_invalid_parent\",","\t\t\t\t\t__( 'Cannot set attributes due to invalid parent product.', 'woocommerce' ),","\t\t\t\t\tarray( 'status' =\u003e 404 )","\t\t\t\t);","\t\t\t}","","\t\t\t$parent_attributes = $parent-\u003eget_attributes();","","\t\t\tforeach ( $request['attributes'] as $attribute ) {","\t\t\t\t$attribute_id   = 0;","\t\t\t\t$attribute_name = '';","","\t\t\t\t// Check ID for global attributes or name for product attributes.","\t\t\t\tif ( ! empty( $attribute['id'] ) ) {","\t\t\t\t\t$attribute_id   = absint( $attribute['id'] );","\t\t\t\t\t$attribute_name = sanitize_title( wc_attribute_taxonomy_name_by_id( $attribute_id ) );","\t\t\t\t} elseif ( ! empty( $attribute['name'] ) ) {","\t\t\t\t\t$attribute_name = sanitize_title( $attribute['name'] );","\t\t\t\t}","","\t\t\t\tif ( ! $attribute_id \u0026\u0026 ! $attribute_name ) {","\t\t\t\t\tcontinue;","\t\t\t\t}","","\t\t\t\tif ( ! isset( $parent_attributes[ $attribute_name ] ) || ! $parent_attributes[ $attribute_name ]-\u003eget_variation() ) {","\t\t\t\t\tcontinue;","\t\t\t\t}","","\t\t\t\t$attribute_key   = sanitize_title( $parent_attributes[ $attribute_name ]-\u003eget_name() );","\t\t\t\t$attribute_value = isset( $attribute['option'] ) ? wc_clean( rawurldecode( stripslashes( $attribute['option'] ) ) ) : '';","","\t\t\t\tif ( $parent_attributes[ $attribute_name ]-\u003eis_taxonomy() ) {","\t\t\t\t\t// If dealing with a taxonomy, we need to get the slug from the name posted to the API.","\t\t\t\t\t$term = get_term_by( 'name', $attribute_value, $attribute_name );","","\t\t\t\t\tif ( $term \u0026\u0026 ! is_wp_error( $term ) ) {","\t\t\t\t\t\t$attribute_value = $term-\u003eslug;","\t\t\t\t\t} else {","\t\t\t\t\t\t$attribute_value = sanitize_title( $attribute_value );","\t\t\t\t\t}","\t\t\t\t}","","\t\t\t\t$attributes[ $attribute_key ] = $attribute_value;","\t\t\t}","","\t\t\t$variation-\u003eset_attributes( $attributes );","\t\t}","","\t\t// Menu order.","\t\tif ( $request['menu_order'] ) {","\t\t\t$variation-\u003eset_menu_order( $request['menu_order'] );","\t\t}","","\t\t// Meta data.","\t\tif ( is_array( $request['meta_data'] ) ) {","\t\t\tforeach ( $request['meta_data'] as $meta ) {","\t\t\t\t$variation-\u003eupdate_meta_data( $meta['key'], $meta['value'], isset( $meta['id'] ) ? $meta['id'] : '' );","\t\t\t}","\t\t}","","\t\tif ( $this-\u003ecogs_is_enabled() ) {","\t\t\t$this-\u003eset_cogs_info_in_product_object( $request, $variation );","\t\t}","","\t\t/**","\t\t * Filters an object before it is inserted via the REST API.","\t\t *","\t\t * The dynamic portion of the hook name, `$this-\u003epost_type`,","\t\t * refers to the object type slug.","\t\t *","\t\t * @since 4.5.0","\t\t * @param WC_Data         $variation Object object.","\t\t * @param WP_REST_Request $request   Request object.","\t\t * @param bool            $creating  If is creating a new object.","\t\t */","\t\treturn apply_filters( \"woocommerce_rest_pre_insert_{$this-\u003epost_type}_object\", $variation, $request, $creating );","\t}","","\t/**","\t * Get the image for a product variation.","\t *","\t * @param WC_Product_Variation $variation Variation data.","\t * @param string               $context   Context of the request: 'view' or 'edit'.","\t * @return array","\t */","\tprotected function get_image( $variation, $context = 'view' ) {","\t\tif ( ! $variation-\u003eget_image_id( $context ) ) {","\t\t\treturn;","\t\t}","","\t\t$attachment_id   = $variation-\u003eget_image_id();","\t\t$attachment_post = get_post( $attachment_id );","\t\tif ( is_null( $attachment_post ) ) {","\t\t\treturn;","\t\t}","","\t\t$attachment = wp_get_attachment_image_src( $attachment_id, 'full' );","\t\tif ( ! is_array( $attachment ) ) {","\t\t\treturn;","\t\t}","","\t\tif ( ! isset( $image ) ) {","\t\t\treturn array(","\t\t\t\t'id'                =\u003e (int) $attachment_id,","\t\t\t\t'date_created'      =\u003e wc_rest_prepare_date_response( $attachment_post-\u003epost_date, false ),","\t\t\t\t'date_created_gmt'  =\u003e wc_rest_prepare_date_response( strtotime( $attachment_post-\u003epost_date_gmt ) ),","\t\t\t\t'date_modified'     =\u003e wc_rest_prepare_date_response( $attachment_post-\u003epost_modified, false ),","\t\t\t\t'date_modified_gmt' =\u003e wc_rest_prepare_date_response( strtotime( $attachment_post-\u003epost_modified_gmt ) ),","\t\t\t\t'src'               =\u003e current( $attachment ),","\t\t\t\t'name'              =\u003e get_the_title( $attachment_id ),","\t\t\t\t'alt'               =\u003e get_post_meta( $attachment_id, '_wp_attachment_image_alt', true ),","\t\t\t);","\t\t}","\t}","","\t/**","\t * Set variation image.","\t *","\t * @throws WC_REST_Exception REST API exceptions.","\t * @param  WC_Product_Variation $variation Variation instance.","\t * @param  array                $image    Image data.","\t * @return WC_Product_Variation","\t */","\tprotected function set_variation_image( $variation, $image ) {","\t\t$attachment_id = isset( $image['id'] ) ? absint( $image['id'] ) : 0;","","\t\tif ( 0 === $attachment_id ) {","\t\t\tif ( isset( $image['src'] ) ) {","\t\t\t\t$upload = wc_rest_upload_image_from_url( esc_url_raw( $image['src'] ) );","","\t\t\t\tif ( is_wp_error( $upload ) ) {","\t\t\t\t\t/**","\t\t\t\t\t * Filter to check if it should suppress the image upload error, false by default.","\t\t\t\t\t *","\t\t\t\t\t * @since 4.5.0","\t\t\t\t\t * @param bool false   If it should suppress.","\t\t\t\t\t * @param array         $upload Uploaded image array.","\t\t\t\t\t * @param int id   Variation id.","\t\t\t\t\t * @param array    Array of image to set.","\t\t\t\t\t */","\t\t\t\t\tif ( ! apply_filters( 'woocommerce_rest_suppress_image_upload_error', false, $upload, $variation-\u003eget_id(), array( $image ) ) ) {","\t\t\t\t\t\tthrow new WC_REST_Exception( 'woocommerce_variation_image_upload_error', $upload-\u003eget_error_message(), 400 );","\t\t\t\t\t}","\t\t\t\t}","","\t\t\t\t$attachment_id = wc_rest_set_uploaded_image_as_attachment( $upload, $variation-\u003eget_id() );","\t\t\t} else {","\t\t\t\t$variation-\u003eset_image_id( '' );","\t\t\t\treturn $variation;","\t\t\t}","\t\t}","","\t\tif ( ! wp_attachment_is_image( $attachment_id ) ) {","\t\t\t/* translators: %s: attachment ID */","\t\t\tthrow new WC_REST_Exception( 'woocommerce_variation_invalid_image_id', sprintf( __( '#%s is an invalid image ID.', 'woocommerce' ), $attachment_id ), 400 );","\t\t}","","\t\t$variation-\u003eset_image_id( $attachment_id );","","\t\t// Set the image alt if present.","\t\tif ( ! empty( $image['alt'] ) ) {","\t\t\tupdate_post_meta( $attachment_id, '_wp_attachment_image_alt', wc_clean( $image['alt'] ) );","\t\t}","","\t\t// Set the image name if present.","\t\tif ( ! empty( $image['name'] ) ) {","\t\t\twp_update_post(","\t\t\t\tarray(","\t\t\t\t\t'ID'         =\u003e $attachment_id,","\t\t\t\t\t'post_title' =\u003e $image['name'],","\t\t\t\t)","\t\t\t);","\t\t}","","\t\treturn $variation;","\t}","","\t/**","\t * Get the Variation's schema, conforming to JSON Schema.","\t *","\t * @return array","\t */","\tpublic function get_item_schema() {","\t\t$weight_unit_label    = I18nUtil::get_weight_unit_label( get_option( 'woocommerce_weight_unit', 'kg' ) );","\t\t$dimension_unit_label = I18nUtil::get_dimensions_unit_label( get_option( 'woocommerce_dimension_unit', 'cm' ) );","\t\t$schema               = array(","\t\t\t'$schema'    =\u003e 'http://json-schema.org/draft-04/schema#',","\t\t\t'title'      =\u003e $this-\u003epost_type,","\t\t\t'type'       =\u003e 'object',","\t\t\t'properties' =\u003e array(","\t\t\t\t'id'                    =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Unique identifier for the resource.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'integer',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t'readonly'    =\u003e true,","\t\t\t\t),","\t\t\t\t'type'                  =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Product type.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t'readonly'    =\u003e true,","\t\t\t\t),","\t\t\t\t'date_created'          =\u003e array(","\t\t\t\t\t'description' =\u003e __( \"The date the variation was created, in the site's timezone.\", 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'date-time',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t'readonly'    =\u003e true,","\t\t\t\t),","\t\t\t\t'date_modified'         =\u003e array(","\t\t\t\t\t'description' =\u003e __( \"The date the variation was last modified, in the site's timezone.\", 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'date-time',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t'readonly'    =\u003e true,","\t\t\t\t),","\t\t\t\t'description'           =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Variation description.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'permalink'             =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Variation URL.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t'format'      =\u003e 'uri',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t'readonly'    =\u003e true,","\t\t\t\t),","\t\t\t\t'sku'                   =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Stock Keeping Unit.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'global_unique_id'      =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'GTIN, UPC, EAN or ISBN.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'price'                 =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Current variation price.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t'readonly'    =\u003e true,","\t\t\t\t),","\t\t\t\t'regular_price'         =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Variation regular price.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'sale_price'            =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Variation sale price.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'date_on_sale_from'     =\u003e array(","\t\t\t\t\t'description' =\u003e __( \"Start date of sale price, in the site's timezone.\", 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'date-time',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'date_on_sale_from_gmt' =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Start date of sale price, as GMT.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'date-time',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'date_on_sale_to'       =\u003e array(","\t\t\t\t\t'description' =\u003e __( \"End date of sale price, in the site's timezone.\", 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'date-time',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'date_on_sale_to_gmt'   =\u003e array(","\t\t\t\t\t'description' =\u003e __( \"End date of sale price, in the site's timezone.\", 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'date-time',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'on_sale'               =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Shows if the variation is on sale.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'boolean',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t'readonly'    =\u003e true,","\t\t\t\t),","\t\t\t\t'status'                =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Variation status.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t// Not using ProductStatus constants here due the class not being loaded upon installation.","\t\t\t\t\t// See: https://github.com/woocommerce/woocommerce/issues/37464.","\t\t\t\t\t'default'     =\u003e 'publish',","\t\t\t\t\t'enum'        =\u003e array_keys( get_post_statuses() ),","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'purchasable'           =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Shows if the variation can be bought.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'boolean',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t'readonly'    =\u003e true,","\t\t\t\t),","\t\t\t\t'virtual'               =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'If the variation is virtual.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'boolean',","\t\t\t\t\t'default'     =\u003e false,","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'downloadable'          =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'If the variation is downloadable.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'boolean',","\t\t\t\t\t'default'     =\u003e false,","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'downloads'             =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'List of downloadable files.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'array',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t'items'       =\u003e array(","\t\t\t\t\t\t'type'       =\u003e 'object',","\t\t\t\t\t\t'properties' =\u003e array(","\t\t\t\t\t\t\t'id'   =\u003e array(","\t\t\t\t\t\t\t\t'description' =\u003e __( 'File ID.', 'woocommerce' ),","\t\t\t\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t\t),","\t\t\t\t\t\t\t'name' =\u003e array(","\t\t\t\t\t\t\t\t'description' =\u003e __( 'File name.', 'woocommerce' ),","\t\t\t\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t\t),","\t\t\t\t\t\t\t'file' =\u003e array(","\t\t\t\t\t\t\t\t'description' =\u003e __( 'File URL.', 'woocommerce' ),","\t\t\t\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t\t),","\t\t\t\t\t\t),","\t\t\t\t\t),","\t\t\t\t),","\t\t\t\t'download_limit'        =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Number of times downloadable files can be downloaded after purchase.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'integer',","\t\t\t\t\t'default'     =\u003e -1,","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'download_expiry'       =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Number of days until access to downloadable files expires.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'integer',","\t\t\t\t\t'default'     =\u003e -1,","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'tax_status'            =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Tax status.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t'default'     =\u003e ProductTaxStatus::TAXABLE,","\t\t\t\t\t'enum'        =\u003e array( ProductTaxStatus::TAXABLE, ProductTaxStatus::SHIPPING, ProductTaxStatus::NONE ),","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'tax_class'             =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Tax class.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'manage_stock'          =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Stock management at variation level.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e array( 'boolean', 'string' ),","\t\t\t\t\t'default'     =\u003e false,","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'stock_quantity'        =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Stock quantity.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'integer',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'stock_status'          =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Controls the stock status of the product.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t'default'     =\u003e ProductStockStatus::IN_STOCK,","\t\t\t\t\t'enum'        =\u003e array_keys( wc_get_product_stock_status_options() ),","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'backorders'            =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'If managing stock, this controls if backorders are allowed.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t'default'     =\u003e 'no',","\t\t\t\t\t'enum'        =\u003e array( 'no', 'notify', 'yes' ),","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'backorders_allowed'    =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Shows if backorders are allowed.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'boolean',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t'readonly'    =\u003e true,","\t\t\t\t),","\t\t\t\t'backordered'           =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Shows if the variation is on backordered.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'boolean',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t'readonly'    =\u003e true,","\t\t\t\t),","\t\t\t\t'low_stock_amount'      =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Low Stock amount for the variation.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e array( 'integer', 'null' ),","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'weight'                =\u003e array(","\t\t\t\t\t/* translators: %s: weight unit */","\t\t\t\t\t'description' =\u003e sprintf( __( 'Variation weight (%s).', 'woocommerce' ), $weight_unit_label ),","\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'dimensions'            =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Variation dimensions.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'object',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t'properties'  =\u003e array(","\t\t\t\t\t\t'length' =\u003e array(","\t\t\t\t\t\t\t/* translators: %s: dimension unit */","\t\t\t\t\t\t\t'description' =\u003e sprintf( __( 'Variation length (%s).', 'woocommerce' ), $dimension_unit_label ),","\t\t\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t),","\t\t\t\t\t\t'width'  =\u003e array(","\t\t\t\t\t\t\t/* translators: %s: dimension unit */","\t\t\t\t\t\t\t'description' =\u003e sprintf( __( 'Variation width (%s).', 'woocommerce' ), $dimension_unit_label ),","\t\t\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t),","\t\t\t\t\t\t'height' =\u003e array(","\t\t\t\t\t\t\t/* translators: %s: dimension unit */","\t\t\t\t\t\t\t'description' =\u003e sprintf( __( 'Variation height (%s).', 'woocommerce' ), $dimension_unit_label ),","\t\t\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t),","\t\t\t\t\t),","\t\t\t\t),","\t\t\t\t'shipping_class'        =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Shipping class slug.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'shipping_class_id'     =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Shipping class ID.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t'readonly'    =\u003e true,","\t\t\t\t),","\t\t\t\t'image'                 =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Variation image data.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'object',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t'properties'  =\u003e array(","\t\t\t\t\t\t'id'                =\u003e array(","\t\t\t\t\t\t\t'description' =\u003e __( 'Image ID.', 'woocommerce' ),","\t\t\t\t\t\t\t'type'        =\u003e 'integer',","\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t),","\t\t\t\t\t\t'date_created'      =\u003e array(","\t\t\t\t\t\t\t'description' =\u003e __( \"The date the image was created, in the site's timezone.\", 'woocommerce' ),","\t\t\t\t\t\t\t'type'        =\u003e 'date-time',","\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t\t'readonly'    =\u003e true,","\t\t\t\t\t\t),","\t\t\t\t\t\t'date_created_gmt'  =\u003e array(","\t\t\t\t\t\t\t'description' =\u003e __( 'The date the image was created, as GMT.', 'woocommerce' ),","\t\t\t\t\t\t\t'type'        =\u003e 'date-time',","\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t\t'readonly'    =\u003e true,","\t\t\t\t\t\t),","\t\t\t\t\t\t'date_modified'     =\u003e array(","\t\t\t\t\t\t\t'description' =\u003e __( \"The date the image was last modified, in the site's timezone.\", 'woocommerce' ),","\t\t\t\t\t\t\t'type'        =\u003e 'date-time',","\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t\t'readonly'    =\u003e true,","\t\t\t\t\t\t),","\t\t\t\t\t\t'date_modified_gmt' =\u003e array(","\t\t\t\t\t\t\t'description' =\u003e __( 'The date the image was last modified, as GMT.', 'woocommerce' ),","\t\t\t\t\t\t\t'type'        =\u003e 'date-time',","\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t\t'readonly'    =\u003e true,","\t\t\t\t\t\t),","\t\t\t\t\t\t'src'               =\u003e array(","\t\t\t\t\t\t\t'description' =\u003e __( 'Image URL.', 'woocommerce' ),","\t\t\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t\t\t'format'      =\u003e 'uri',","\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t),","\t\t\t\t\t\t'name'              =\u003e array(","\t\t\t\t\t\t\t'description' =\u003e __( 'Image name.', 'woocommerce' ),","\t\t\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t),","\t\t\t\t\t\t'alt'               =\u003e array(","\t\t\t\t\t\t\t'description' =\u003e __( 'Image alternative text.', 'woocommerce' ),","\t\t\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t),","\t\t\t\t\t),","\t\t\t\t),","\t\t\t\t'attributes'            =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'List of attributes.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'array',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t'items'       =\u003e array(","\t\t\t\t\t\t'type'       =\u003e 'object',","\t\t\t\t\t\t'properties' =\u003e array(","\t\t\t\t\t\t\t'id'     =\u003e array(","\t\t\t\t\t\t\t\t'description' =\u003e __( 'Attribute ID.', 'woocommerce' ),","\t\t\t\t\t\t\t\t'type'        =\u003e 'integer',","\t\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t\t),","\t\t\t\t\t\t\t'name'   =\u003e array(","\t\t\t\t\t\t\t\t'description' =\u003e __( 'Attribute name.', 'woocommerce' ),","\t\t\t\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t\t),","\t\t\t\t\t\t\t'option' =\u003e array(","\t\t\t\t\t\t\t\t'description' =\u003e __( 'Selected attribute term name.', 'woocommerce' ),","\t\t\t\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t\t),","\t\t\t\t\t\t),","\t\t\t\t\t),","\t\t\t\t),","\t\t\t\t'menu_order'            =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Menu order, used to custom sort products.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'integer',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t),","\t\t\t\t'meta_data'             =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Meta data.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'array',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t'items'       =\u003e array(","\t\t\t\t\t\t'type'       =\u003e 'object',","\t\t\t\t\t\t'properties' =\u003e array(","\t\t\t\t\t\t\t'id'    =\u003e array(","\t\t\t\t\t\t\t\t'description' =\u003e __( 'Meta ID.', 'woocommerce' ),","\t\t\t\t\t\t\t\t'type'        =\u003e 'integer',","\t\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t\t\t'readonly'    =\u003e true,","\t\t\t\t\t\t\t),","\t\t\t\t\t\t\t'key'   =\u003e array(","\t\t\t\t\t\t\t\t'description' =\u003e __( 'Meta key.', 'woocommerce' ),","\t\t\t\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t\t),","\t\t\t\t\t\t\t'value' =\u003e array(","\t\t\t\t\t\t\t\t'description' =\u003e __( 'Meta value.', 'woocommerce' ),","\t\t\t\t\t\t\t\t'type'        =\u003e 'mixed',","\t\t\t\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t\t\t),","\t\t\t\t\t\t),","\t\t\t\t\t),","\t\t\t\t),","\t\t\t\t'parent_id'             =\u003e array(","\t\t\t\t\t'description' =\u003e __( 'Product parent ID.', 'woocommerce' ),","\t\t\t\t\t'type'        =\u003e 'integer',","\t\t\t\t\t'context'     =\u003e array( 'view', 'edit' ),","\t\t\t\t\t'readonly'    =\u003e true,","\t\t\t\t),","\t\t\t),","\t\t);","","\t\tif ( $this-\u003ecogs_is_enabled() ) {","\t\t\t$schema = $this-\u003eadd_cogs_related_product_schema( $schema, true );","\t\t}","","\t\treturn $this-\u003eadd_additional_fields_schema( $schema );","\t}","","\t/**","\t * Prepare objects query.","\t *","\t * @since  3.0.0","\t * @param  WP_REST_Request $request Full details about the request.","\t * @return array","\t */","\tprotected function prepare_objects_query( $request ) {","\t\t$args = WC_REST_CRUD_Controller::prepare_objects_query( $request );","","\t\t// Set post_status.","\t\t$args['post_status'] = $request['status'];","","\t\t// Filter by a list of product variation statuses.","\t\tif ( ! empty( $request['include_status'] ) ) {","\t\t\t$args['post_status'] = $request['include_status'];","\t\t}","","\t\tif ( ! empty( $request['exclude_status'] ) ) {","\t\t\t$this-\u003eexclude_status = $request['exclude_status'];","\t\t} else {","\t\t\t$this-\u003eexclude_status = array();","\t\t}","","\t\t// Filter downloadable product variations.","\t\tif ( isset( $request['downloadable'] ) ) {","\t\t\t$args['meta_query'] = $this-\u003eadd_meta_query( // phpcs:ignore WordPress.DB.SlowDBQuery.slow_db_query_meta_query","\t\t\t\t$args,","\t\t\t\tarray(","\t\t\t\t\t'key'   =\u003e '_downloadable',","\t\t\t\t\t'value' =\u003e wc_bool_to_string( $request['downloadable'] ),","\t\t\t\t)","\t\t\t);","\t\t}","","\t\t/**","\t\t * @deprecated 8.1.0 replaced by attributes.","\t\t * Filter by local attributes.","\t\t */","\t\tif ( ! empty( $request['local_attributes'] ) \u0026\u0026 is_array( $request['local_attributes'] ) ) {","\t\t\twc_deprecated_argument( 'local_attributes', '8.1', 'Use \"attributes\" instead.' );","\t\t\tforeach ( $request['local_attributes'] as $attribute ) {","\t\t\t\tif ( ! isset( $attribute['attribute'] ) || ! isset( $attribute['term'] ) ) {","\t\t\t\t\tcontinue;","\t\t\t\t}","\t\t\t\t$args['meta_query'] = $this-\u003eadd_meta_query( // phpcs:ignore WordPress.DB.SlowDBQuery.slow_db_query_meta_query","\t\t\t\t\t$args,","\t\t\t\t\tarray(","\t\t\t\t\t\t'key'   =\u003e 'attribute_' . $attribute['attribute'],","\t\t\t\t\t\t'value' =\u003e $attribute['term'],","\t\t\t\t\t)","\t\t\t\t);","\t\t\t}","\t\t}","","\t\t// Filter by attributes.","\t\tif ( ! empty( $request['attributes'] ) \u0026\u0026 is_array( $request['attributes'] ) ) {","\t\t\tforeach ( $request['attributes'] as $attribute ) {","\t\t\t\tif ( isset( $attribute['attribute'] ) ) {","\t\t\t\t\tif ( isset( $attribute['term'] ) ) {","\t\t\t\t\t\t$args['meta_query'] = $this-\u003eadd_meta_query( // phpcs:ignore WordPress.DB.SlowDBQuery.slow_db_query_meta_query","\t\t\t\t\t\t\t$args,","\t\t\t\t\t\t\tarray(","\t\t\t\t\t\t\t\t'key'   =\u003e 'attribute_' . $attribute['attribute'],","\t\t\t\t\t\t\t\t'value' =\u003e $attribute['term'],","\t\t\t\t\t\t\t)","\t\t\t\t\t\t);","\t\t\t\t\t} elseif ( ! empty( $attribute['terms'] ) \u0026\u0026 is_array( $attribute['terms'] ) ) {","\t\t\t\t\t\t$args['meta_query'] = $this-\u003eadd_meta_query( // phpcs:ignore WordPress.DB.SlowDBQuery.slow_db_query_meta_query","\t\t\t\t\t\t\t$args,","\t\t\t\t\t\t\tarray(","\t\t\t\t\t\t\t\t'key'     =\u003e 'attribute_' . $attribute['attribute'],","\t\t\t\t\t\t\t\t'compare' =\u003e 'IN',","\t\t\t\t\t\t\t\t'value'   =\u003e $attribute['terms'],","\t\t\t\t\t\t\t),","\t\t\t\t\t\t);","\t\t\t\t\t}","\t\t\t\t}","\t\t\t}","\t\t}","","\t\t// Filter by sku.","\t\tif ( ! empty( $request['sku'] ) ) {","\t\t\t$skus = explode( ',', $request['sku'] );","\t\t\t// Include the current string as a SKU too.","\t\t\tif ( 1 \u003c count( $skus ) ) {","\t\t\t\t$skus[] = $request['sku'];","\t\t\t}","","\t\t\t$args['meta_query'] = $this-\u003eadd_meta_query( // WPCS: slow query ok.","\t\t\t\t$args,","\t\t\t\tarray(","\t\t\t\t\t'key'     =\u003e '_sku',","\t\t\t\t\t'value'   =\u003e $skus,","\t\t\t\t\t'compare' =\u003e 'IN',","\t\t\t\t)","\t\t\t);","\t\t}","","\t\t// Filter by global_unique_id.","\t\tif ( ! empty( $request['global_unique_id'] ) ) {","\t\t\t$global_unique_ids  = array_map( 'trim', explode( ',', $request['global_unique_id'] ) );","\t\t\t$args['meta_query'] = $this-\u003eadd_meta_query( // phpcs:ignore WordPress.DB.SlowDBQuery.slow_db_query_meta_query","\t\t\t\t$args,","\t\t\t\tarray(","\t\t\t\t\t'key'     =\u003e '_global_unique_id',","\t\t\t\t\t'value'   =\u003e $global_unique_ids,","\t\t\t\t\t'compare' =\u003e 'IN',","\t\t\t\t)","\t\t\t);","\t\t}","","\t\t// Filter by tax class.","\t\tif ( ! empty( $request['tax_class'] ) ) {","\t\t\t$args['meta_query'] = $this-\u003eadd_meta_query( // WPCS: slow query ok.","\t\t\t\t$args,","\t\t\t\tarray(","\t\t\t\t\t'key'   =\u003e '_tax_class',","\t\t\t\t\t'value' =\u003e 'standard' !== $request['tax_class'] ? $request['tax_class'] : '',","\t\t\t\t)","\t\t\t);","\t\t}","","\t\t// Price filter.","\t\tif ( ! empty( $request['min_price'] ) || ! empty( $request['max_price'] ) ) {","\t\t\t$args['meta_query'] = $this-\u003eadd_meta_query( $args, wc_get_min_max_price_meta_query( $request ) );  // WPCS: slow query ok.","\t\t}","","\t\t// Price filter.","\t\tif ( is_bool( $request['has_price'] ) ) {","\t\t\tif ( $request['has_price'] ) {","\t\t\t\t$args['meta_query'] = $this-\u003eadd_meta_query( // phpcs:ignore Standard.Category.SniffName.ErrorCode slow query ok.","\t\t\t\t\t$args,","\t\t\t\t\tarray(","\t\t\t\t\t\t'relation' =\u003e 'AND',","\t\t\t\t\t\tarray(","\t\t\t\t\t\t\t'key'     =\u003e '_price',","\t\t\t\t\t\t\t'compare' =\u003e 'EXISTS',","\t\t\t\t\t\t),","\t\t\t\t\t\tarray(","\t\t\t\t\t\t\t'key'     =\u003e '_price',","\t\t\t\t\t\t\t'compare' =\u003e '!=',","\t\t\t\t\t\t\t'value'   =\u003e null,","\t\t\t\t\t\t),","\t\t\t\t\t)","\t\t\t\t);","\t\t\t} else {","\t\t\t\t$args['meta_query'] = $this-\u003eadd_meta_query( // phpcs:ignore Standard.Category.SniffName.ErrorCode slow query ok.","\t\t\t\t\t$args,","\t\t\t\t\tarray(","\t\t\t\t\t\t'relation' =\u003e 'OR',","\t\t\t\t\t\tarray(","\t\t\t\t\t\t\t'key'     =\u003e '_price',","\t\t\t\t\t\t\t'compare' =\u003e 'NOT EXISTS',","\t\t\t\t\t\t),","\t\t\t\t\t\tarray(","\t\t\t\t\t\t\t'key'     =\u003e '_price',","\t\t\t\t\t\t\t'compare' =\u003e '=',","\t\t\t\t\t\t\t'value'   =\u003e null,","\t\t\t\t\t\t),","\t\t\t\t\t)","\t\t\t\t);","\t\t\t}","\t\t}","","\t\t// Filter product based on stock_status.","\t\tif ( ! empty( $request['stock_status'] ) ) {","\t\t\t$args['meta_query'] = $this-\u003eadd_meta_query( // WPCS: slow query ok.","\t\t\t\t$args,","\t\t\t\tarray(","\t\t\t\t\t'key'   =\u003e '_stock_status',","\t\t\t\t\t'value' =\u003e $request['stock_status'],","\t\t\t\t)","\t\t\t);","\t\t}","","\t\t// Filter by on sale products.","\t\tif ( is_bool( $request['on_sale'] ) ) {","\t\t\t$on_sale_key = $request['on_sale'] ? 'post__in' : 'post__not_in';","\t\t\t$on_sale_ids = wc_get_product_ids_on_sale();","","\t\t\t// Use 0 when there's no on sale products to avoid return all products.","\t\t\t$on_sale_ids = empty( $on_sale_ids ) ? array( 0 ) : $on_sale_ids;","","\t\t\t$args[ $on_sale_key ] += $on_sale_ids;","\t\t}","","\t\t// Force the post_type argument, since it's not a user input variable.","\t\tif ( ! empty( $request['sku'] ) || ! empty( $request['global_unique_id'] ) ) {","\t\t\t$args['post_type'] = array( 'product', 'product_variation' );","\t\t} else {","\t\t\t$args['post_type'] = $this-\u003epost_type;","\t\t}","","\t\t// Filter virtual product variations.","\t\tif ( isset( $request['virtual'] ) ) {","\t\t\t$args['meta_query'] = $this-\u003eadd_meta_query( // phpcs:ignore WordPress.DB.SlowDBQuery.slow_db_query_meta_query","\t\t\t\t$args,","\t\t\t\tarray(","\t\t\t\t\t'key'   =\u003e '_virtual',","\t\t\t\t\t'value' =\u003e wc_bool_to_string( $request['virtual'] ),","\t\t\t\t)","\t\t\t);","\t\t}","","\t\t$args['post_parent'] = $request['product_id'];","","\t\treturn $args;","\t}","","\t/**","\t * Get objects.","\t *","\t * @param array $query_args Query args.","\t * @return array","\t */","\tprotected function get_objects( $query_args ) {","\t\t// Add filters for excluding product variation statuses.","\t\tif ( ! empty( $this-\u003eexclude_status ) ) {","\t\t\tadd_filter( 'posts_where', array( $this, 'exclude_product_variation_statuses' ) );","\t\t}","","\t\t$result = parent::get_objects( $query_args );","","\t\t// Remove filters for excluding product variation statuses.","\t\tif ( ! empty( $this-\u003eexclude_status ) ) {","\t\t\tremove_filter( 'posts_where', array( $this, 'exclude_product_variation_statuses' ) );","","\t\t\t$this-\u003eexclude_status = array();","\t\t}","","\t\treturn $result;","\t}","","\t/**","\t * Get the query params for collections of attachments.","\t *","\t * @return array","\t */","\tpublic function get_collection_params() {","\t\t$params = parent::get_collection_params();","","\t\tunset(","\t\t\t$params['in_stock'],","\t\t\t$params['type'],","\t\t\t$params['featured'],","\t\t\t$params['category'],","\t\t\t$params['tag'],","\t\t\t$params['shipping_class'],","\t\t\t$params['attribute'],","\t\t\t$params['attribute_term']","\t\t);","","\t\t$params['stock_status'] = array(","\t\t\t'description'       =\u003e __( 'Limit result set to products with specified stock status.', 'woocommerce' ),","\t\t\t'type'              =\u003e 'string',","\t\t\t'enum'              =\u003e array_keys( wc_get_product_stock_status_options() ),","\t\t\t'sanitize_callback' =\u003e 'sanitize_text_field',","\t\t\t'validate_callback' =\u003e 'rest_validate_request_arg',","\t\t);","","\t\t$params['has_price'] = array(","\t\t\t'description'       =\u003e __( 'Limit result set to products with or without price.', 'woocommerce' ),","\t\t\t'type'              =\u003e 'boolean',","\t\t\t'sanitize_callback' =\u003e 'wc_string_to_bool',","\t\t\t'validate_callback' =\u003e 'rest_validate_request_arg',","\t\t);","","\t\t$params['attributes'] = array(","\t\t\t'description' =\u003e __( 'Limit result set to products with specified attributes.', 'woocommerce' ),","\t\t\t'type'        =\u003e 'array',","\t\t\t'items'       =\u003e array(","\t\t\t\t'type'       =\u003e 'object',","\t\t\t\t'properties' =\u003e array(","\t\t\t\t\t'attribute' =\u003e array(","\t\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t\t'description' =\u003e __( 'Attribute slug.', 'woocommerce' ),","\t\t\t\t\t),","\t\t\t\t\t'term'      =\u003e array(","\t\t\t\t\t\t'type'        =\u003e 'string',","\t\t\t\t\t\t'description' =\u003e __( 'Attribute term.', 'woocommerce' ),","\t\t\t\t\t),","\t\t\t\t\t'terms'     =\u003e array(","\t\t\t\t\t\t'type'        =\u003e 'array',","\t\t\t\t\t\t'description' =\u003e __( 'Attribute terms.', 'woocommerce' ),","\t\t\t\t\t),","\t\t\t\t),","\t\t\t),","\t\t);","","\t\t$params['virtual'] = array(","\t\t\t'description'       =\u003e __( 'Limit result set to virtual product variations.', 'woocommerce' ),","\t\t\t'type'              =\u003e 'boolean',","\t\t\t'sanitize_callback' =\u003e 'rest_sanitize_boolean',","\t\t\t'validate_callback' =\u003e 'rest_validate_request_arg',","\t\t);","","\t\t$params['downloadable'] = array(","\t\t\t'description'       =\u003e __( 'Limit result set to downloadable product variations.', 'woocommerce' ),","\t\t\t'type'              =\u003e 'boolean',","\t\t\t'sanitize_callback' =\u003e 'rest_sanitize_boolean',","\t\t\t'validate_callback' =\u003e 'rest_validate_request_arg',","\t\t);","","\t\t$params['include_status'] = array(","\t\t\t'description'       =\u003e __( 'Limit result set to product variations with any of the statuses.', 'woocommerce' ),","\t\t\t'type'              =\u003e 'array',","\t\t\t'items'             =\u003e array(","\t\t\t\t'type' =\u003e 'string',","\t\t\t\t'enum' =\u003e array_merge( array( 'any', 'future', 'trash' ), array_keys( get_post_statuses() ) ),","\t\t\t),","\t\t\t'sanitize_callback' =\u003e 'wp_parse_list',","\t\t\t'validate_callback' =\u003e 'rest_validate_request_arg',","\t\t);","","\t\t$params['exclude_status'] = array(","\t\t\t'description'       =\u003e __( 'Exclude product variations with any of the statuses from result set.', 'woocommerce' ),","\t\t\t'type'              =\u003e 'array',","\t\t\t'items'             =\u003e array(","\t\t\t\t'type' =\u003e 'string',","\t\t\t\t'enum' =\u003e array_merge( array( 'future', 'trash' ), array_keys( get_post_statuses() ) ),","\t\t\t),","\t\t\t'sanitize_callback' =\u003e 'wp_parse_list',","\t\t\t'validate_callback' =\u003e 'rest_validate_request_arg',","\t\t);","","\t\treturn $params;","\t}","","\t/**","\t * Deletes all unmatched variations (aka duplicates).","\t *","\t * @param  WC_Product $product Variable product.","\t * @return int        Number of deleted variations.","\t */","\tprivate function delete_unmatched_product_variations( $product ) {","\t\t$deleted_count = 0;","","\t\tif ( ! $product ) {","\t\t\treturn $deleted_count;","\t\t}","","\t\t$attributes = wc_list_pluck( array_filter( $product-\u003eget_attributes(), 'wc_attributes_array_filter_variation' ), 'get_slugs' );","","\t\t// Get existing variations so we don't create duplicates.","\t\t$existing_variations = array_map( 'wc_get_product', $product-\u003eget_children() );","","\t\t$possible_attribute_combinations = array_reverse( wc_array_cartesian( $attributes ) );","","\t\tforeach ( $existing_variations as $existing_variation ) {","\t\t\t$matching_attribute_key = array_search( $existing_variation-\u003eget_attributes(), $possible_attribute_combinations ); // phpcs:ignore WordPress.PHP.StrictInArray.MissingTrueStrict","\t\t\tif ( false !== $matching_attribute_key ) {","\t\t\t\t// We only want one possible variation for each possible attribute combination.","\t\t\t\tunset( $possible_attribute_combinations[ $matching_attribute_key ] );","\t\t\t\tcontinue;","\t\t\t}","\t\t\t$existing_variation-\u003edelete( true );","\t\t\t$deleted_count ++;","\t\t}","","\t\treturn $deleted_count;","\t}","","\t/**","\t * Generate all variations for a given product.","\t *","\t * @param WP_REST_Request $request Full details about the request.","\t * @return WP_Error|WP_REST_Response","\t */","\tpublic function generate( $request ) {","\t\t$product_id = (int) $request['product_id'];","","\t\tif ( 'product' !== get_post_type( $product_id ) ) {","\t\t\treturn new WP_Error( 'woocommerce_rest_product_invalid_id', __( 'Invalid product ID.', 'woocommerce' ), array( 'status' =\u003e 404 ) );","\t\t}","","\t\twc_maybe_define_constant( 'WC_MAX_LINKED_VARIATIONS', 99 );","\t\twc_set_time_limit( 0 );","","\t\t$response          = array();","\t\t$product           = wc_get_product( $product_id );","\t\t$default_values    = isset( $request['default_values'] ) ? $request['default_values'] : array();","\t\t$meta_data         = isset( $request['meta_data'] ) ? $request['meta_data'] : array();","\t\t$data_store        = $product-\u003eget_data_store();","\t\t$response['count'] = $data_store-\u003ecreate_all_product_variations( $product, Constants::get_constant( 'WC_MAX_LINKED_VARIATIONS' ), $default_values, $meta_data );","","\t\tif ( isset( $request['delete'] ) \u0026\u0026 $request['delete'] ) {","\t\t\t$deleted_count             = $this-\u003edelete_unmatched_product_variations( $product );","\t\t\t$response['deleted_count'] = $deleted_count;","\t\t}","","\t\t$data_store-\u003esort_all_product_variations( $product-\u003eget_id() );","","\t\treturn rest_ensure_response( $response );","\t}","","\t/**","\t * Exclude product variation statuses from the query.","\t *","\t * @param string $where Where clause used to search posts.","\t * @return string","\t */","\tpublic function exclude_product_variation_statuses( $where ) {","\t\tif ( ! empty( $this-\u003eexclude_status ) \u0026\u0026 is_array( $this-\u003eexclude_status ) ) {","\t\t\tglobal $wpdb;","","\t\t\t$not_in = array();","\t\t\tforeach ( $this-\u003eexclude_status as $status_to_exclude ) {","\t\t\t\t$not_in[] = $wpdb-\u003eprepare( '%s', $status_to_exclude );","\t\t\t}","","\t\t\t$not_in = join( ', ', $not_in );","\t\t\treturn $where . \" AND $wpdb-\u003eposts.post_status NOT IN ( $not_in )\";","\t\t}","","\t\treturn $where;","\t}","}"],"stylingDirectives":[[[0,5,"pl-ent"]],[[0,3,"pl-c"]],[[0,33,"pl-c"]],[[0,2,"pl-c"]],[[0,71,"pl-c"]],[[0,2,"pl-c"]],[[0,31,"pl-c"]],[[0,17,"pl-c"]],[[0,3,"pl-c"]],[],[[0,3,"pl-k"],[4,14,"pl-v"],[15,26,"pl-v"],[27,32,"pl-v"],[33,49,"pl-smi"]],[[0,3,"pl-k"],[4,14,"pl-v"],[15,26,"pl-v"],[27,32,"pl-v"],[33,46,"pl-smi"]],[[0,3,"pl-k"],[4,14,"pl-v"],[15,26,"pl-v"],[27,32,"pl-v"],[33,51,"pl-smi"]],[[0,3,"pl-k"],[4,14,"pl-v"],[15,26,"pl-v"],[27,35,"pl-v"],[36,51,"pl-v"],[52,80,"pl-smi"]],[[0,3,"pl-k"],[4,14,"pl-v"],[15,26,"pl-v"],[27,36,"pl-v"],[37,45,"pl-smi"]],[],[[0,7,"pl-en"],[9,18,"pl-s"],[10,17,"pl-s"]],[],[[0,3,"pl-k"],[4,14,"pl-v"],[15,22,"pl-v"],[23,32,"pl-smi"]],[],[[0,3,"pl-c"]],[[0,40,"pl-c"]],[[0,2,"pl-c"]],[[0,31,"pl-c"]],[[0,52,"pl-c"]],[[0,3,"pl-c"]],[[0,5,"pl-k"],[44,51,"pl-k"]],[[1,4,"pl-k"]],[],[[1,4,"pl-c"]],[[0,23,"pl-c"]],[[0,3,"pl-c"]],[[0,15,"pl-c"]],[[0,4,"pl-c"]],[[1,10,"pl-k"],[11,21,"pl-c1"],[11,12,"pl-c1"],[24,31,"pl-s"],[25,30,"pl-s"]],[],[[1,4,"pl-c"]],[[0,47,"pl-c"]],[[0,3,"pl-c"]],[[0,14,"pl-c"]],[[0,4,"pl-c"]],[[1,8,"pl-k"],[9,24,"pl-c1"],[9,10,"pl-c1"],[27,32,"pl-en"]],[],[[1,4,"pl-c"]],[[0,37,"pl-c"]],[[0,4,"pl-c"]],[[1,7,"pl-k"],[8,16,"pl-k"],[17,32,"pl-en"]],[[2,8,"pl-smi"],[10,25,"pl-en"]],[],[[2,21,"pl-en"]],[[3,8,"pl-s1"],[3,4,"pl-c1"],[4,8,"pl-smi"],[10,19,"pl-c1"]],[[3,6,"pl-s"],[4,5,"pl-s"],[9,14,"pl-s1"],[9,10,"pl-c1"],[10,14,"pl-smi"],[16,25,"pl-c1"],[28,39,"pl-s"],[29,38,"pl-s"]],[[3,8,"pl-en"]],[[4,10,"pl-s"],[5,9,"pl-s"],[16,21,"pl-en"]],[[5,17,"pl-s"],[6,16,"pl-s"],[25,30,"pl-en"]],[[6,19,"pl-s"],[7,18,"pl-s"],[23,25,"pl-en"],[27,72,"pl-s"],[28,71,"pl-s"],[74,87,"pl-s"],[75,86,"pl-s"]],[[6,12,"pl-s"],[7,11,"pl-s"],[23,32,"pl-s"],[24,31,"pl-s"]],[],[[5,13,"pl-s"],[6,12,"pl-s"],[25,30,"pl-en"]],[[6,19,"pl-s"],[7,18,"pl-s"],[23,25,"pl-en"],[27,55,"pl-s"],[28,54,"pl-s"],[57,70,"pl-s"],[58,69,"pl-s"]],[[6,12,"pl-s"],[7,11,"pl-s"],[23,32,"pl-s"],[24,31,"pl-s"]],[],[[5,21,"pl-s"],[6,20,"pl-s"],[25,30,"pl-en"]],[[6,19,"pl-s"],[7,18,"pl-s"],[23,25,"pl-en"],[27,69,"pl-s"],[28,68,"pl-s"],[71,84,"pl-s"],[72,83,"pl-s"]],[[6,12,"pl-s"],[7,11,"pl-s"],[23,31,"pl-s"],[24,30,"pl-s"]],[[6,18,"pl-s"],[7,17,"pl-s"],[23,28,"pl-s1"],[23,24,"pl-c1"],[24,28,"pl-smi"],[30,63,"pl-en"],[81,89,"pl-c1"]],[],[],[[4,9,"pl-en"]],[[5,14,"pl-s"],[6,13,"pl-s"],[46,55,"pl-c1"]],[[5,15,"pl-s"],[6,14,"pl-s"],[30,35,"pl-en"],[37,42,"pl-s1"],[37,38,"pl-c1"],[38,42,"pl-smi"],[44,54,"pl-s"],[45,53,"pl-s"]],[[5,26,"pl-s"],[6,25,"pl-s"],[30,35,"pl-en"],[37,42,"pl-s1"],[37,38,"pl-c1"],[38,42,"pl-smi"],[44,75,"pl-s"],[45,74,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[30,35,"pl-s1"],[30,31,"pl-c1"],[31,35,"pl-smi"],[37,70,"pl-en"],[88,97,"pl-c1"]],[],[[4,12,"pl-s"],[5,11,"pl-s"],[16,21,"pl-en"],[23,28,"pl-s1"],[23,24,"pl-c1"],[24,28,"pl-smi"],[30,54,"pl-s"],[31,53,"pl-s"]],[],[],[],[],[[1,4,"pl-c"]],[[0,46,"pl-c"]],[[0,3,"pl-c"]],[[0,68,"pl-c"]],[[0,82,"pl-c"]],[[0,3,"pl-c"]],[[0,17,"pl-c"]],[[0,4,"pl-c"]],[[1,10,"pl-k"],[11,19,"pl-k"],[20,33,"pl-en"],[35,43,"pl-s1"],[35,36,"pl-c1"],[45,53,"pl-s1"],[45,46,"pl-c1"],[56,62,"pl-s"],[57,61,"pl-s"]],[[2,12,"pl-s1"],[2,3,"pl-c1"],[15,20,"pl-en"]],[],[[2,4,"pl-k"],[7,15,"pl-s1"],[7,8,"pl-c1"],[17,32,"pl-en"],[38,44,"pl-s"],[39,43,"pl-s"],[49,57,"pl-s1"],[49,50,"pl-c1"]],[[3,10,"pl-k"],[13,21,"pl-s1"],[13,14,"pl-c1"],[23,36,"pl-en"],[39,41,"pl-k"],[42,50,"pl-s1"],[42,43,"pl-c1"],[54,59,"pl-s1"],[54,55,"pl-c1"]],[[4,14,"pl-s1"],[4,5,"pl-c1"],[19,24,"pl-en"]],[[5,9,"pl-s"],[6,8,"pl-s"],[15,23,"pl-s1"],[15,16,"pl-c1"],[25,37,"pl-c"]],[[5,11,"pl-s"],[6,10,"pl-s"],[15,20,"pl-s1"],[15,16,"pl-c1"],[21,27,"pl-s"],[22,26,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[15,20,"pl-s1"],[15,16,"pl-c1"],[21,27,"pl-s"],[22,26,"pl-s"]],[],[],[],[],[[2,8,"pl-k"],[9,19,"pl-s1"],[9,10,"pl-c1"]],[],[],[[1,4,"pl-c"]],[[0,51,"pl-c"]],[[0,3,"pl-c"]],[[0,49,"pl-c"]],[[0,52,"pl-c"]],[[0,28,"pl-c"]],[[0,4,"pl-c"]],[[1,7,"pl-k"],[8,16,"pl-k"],[17,44,"pl-en"],[46,53,"pl-s1"],[46,47,"pl-c1"],[55,63,"pl-s1"],[55,56,"pl-c1"]],[[2,10,"pl-s1"],[2,3,"pl-c1"],[15,20,"pl-en"],[22,30,"pl-s1"],[22,23,"pl-c1"],[31,40,"pl-s"],[32,39,"pl-s"],[46,54,"pl-s1"],[46,47,"pl-c1"],[55,64,"pl-s"],[56,63,"pl-s"],[68,74,"pl-s"],[69,73,"pl-s"]],[[2,7,"pl-s1"],[2,3,"pl-c1"],[13,18,"pl-en"]],[[3,7,"pl-s"],[4,6,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,45,"pl-en"]],[[3,9,"pl-s"],[4,8,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,47,"pl-en"]],[[3,17,"pl-s"],[4,16,"pl-s"],[30,59,"pl-en"],[61,68,"pl-s1"],[61,62,"pl-c1"],[70,86,"pl-en"],[90,95,"pl-c1"]],[[3,21,"pl-s"],[4,20,"pl-s"],[30,59,"pl-en"],[61,68,"pl-s1"],[61,62,"pl-c1"],[70,86,"pl-en"]],[[3,18,"pl-s"],[4,17,"pl-s"],[30,59,"pl-en"],[61,68,"pl-s1"],[61,62,"pl-c1"],[70,87,"pl-en"],[91,96,"pl-c1"]],[[3,22,"pl-s"],[4,21,"pl-s"],[30,59,"pl-en"],[61,68,"pl-s1"],[61,62,"pl-c1"],[70,87,"pl-en"]],[[3,16,"pl-s"],[4,15,"pl-s"],[30,47,"pl-en"],[49,56,"pl-s1"],[49,50,"pl-c1"],[58,73,"pl-en"]],[[3,14,"pl-s"],[4,13,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,52,"pl-en"]],[[3,8,"pl-s"],[4,7,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,46,"pl-en"]],[[3,21,"pl-s"],[4,20,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,59,"pl-en"]],[[3,10,"pl-s"],[4,9,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,48,"pl-en"]],[[3,18,"pl-s"],[4,17,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,56,"pl-en"]],[[3,15,"pl-s"],[4,14,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,53,"pl-en"]],[[3,22,"pl-s"],[4,21,"pl-s"],[30,59,"pl-en"],[61,68,"pl-s1"],[61,62,"pl-c1"],[70,91,"pl-en"],[95,100,"pl-c1"]],[[3,26,"pl-s"],[4,25,"pl-s"],[30,59,"pl-en"],[61,68,"pl-s1"],[61,62,"pl-c1"],[70,91,"pl-en"]],[[3,20,"pl-s"],[4,19,"pl-s"],[30,59,"pl-en"],[61,68,"pl-s1"],[61,62,"pl-c1"],[70,89,"pl-en"],[93,98,"pl-c1"]],[[3,24,"pl-s"],[4,23,"pl-s"],[30,59,"pl-en"],[61,68,"pl-s1"],[61,62,"pl-c1"],[70,89,"pl-en"]],[[3,12,"pl-s"],[4,11,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,49,"pl-en"]],[[3,11,"pl-s"],[4,10,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,49,"pl-en"]],[[3,16,"pl-s"],[4,15,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,53,"pl-en"]],[[3,12,"pl-s"],[4,11,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,49,"pl-en"]],[[3,17,"pl-s"],[4,16,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,54,"pl-en"]],[[3,14,"pl-s"],[4,13,"pl-s"],[30,35,"pl-s1"],[30,31,"pl-c1"],[31,35,"pl-smi"],[37,50,"pl-en"],[52,59,"pl-s1"],[52,53,"pl-c1"],[61,69,"pl-s1"],[61,62,"pl-c1"]],[[3,19,"pl-s"],[4,18,"pl-s"],[30,32,"pl-s"],[37,44,"pl-s1"],[37,38,"pl-c1"],[46,64,"pl-en"],[70,73,"pl-smi"],[75,82,"pl-s1"],[75,76,"pl-c1"],[84,102,"pl-en"],[108,109,"pl-c1"]],[[3,20,"pl-s"],[4,19,"pl-s"],[30,32,"pl-s"],[37,44,"pl-s1"],[37,38,"pl-c1"],[46,65,"pl-en"],[71,74,"pl-smi"],[76,83,"pl-s1"],[76,77,"pl-c1"],[85,104,"pl-en"],[110,111,"pl-c1"]],[[3,15,"pl-s"],[4,14,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,53,"pl-en"]],[[3,14,"pl-s"],[4,13,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,52,"pl-en"],[54,62,"pl-s1"],[54,55,"pl-c1"]],[[3,17,"pl-s"],[4,16,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,53,"pl-en"]],[[3,19,"pl-s"],[4,18,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,57,"pl-en"]],[[3,17,"pl-s"],[4,16,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,55,"pl-en"]],[[3,15,"pl-s"],[4,14,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,53,"pl-en"]],[[3,23,"pl-s"],[4,22,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,57,"pl-en"]],[[3,16,"pl-s"],[4,15,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,54,"pl-en"]],[[3,21,"pl-s"],[4,20,"pl-s"],[30,32,"pl-s"],[37,44,"pl-s1"],[37,38,"pl-c1"],[46,66,"pl-en"],[71,75,"pl-c1"],[78,85,"pl-s1"],[78,79,"pl-c1"],[87,107,"pl-en"]],[[3,11,"pl-s"],[4,10,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,49,"pl-en"]],[[3,15,"pl-s"],[4,14,"pl-s"],[30,35,"pl-en"]],[[4,12,"pl-s"],[5,11,"pl-s"],[16,23,"pl-s1"],[16,17,"pl-c1"],[25,35,"pl-en"]],[[4,11,"pl-s"],[5,10,"pl-s"],[16,23,"pl-s1"],[16,17,"pl-c1"],[25,34,"pl-en"]],[[4,12,"pl-s"],[5,11,"pl-s"],[16,23,"pl-s1"],[16,17,"pl-c1"],[25,35,"pl-en"]],[],[[3,19,"pl-s"],[4,18,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,57,"pl-en"]],[[3,22,"pl-s"],[4,21,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,60,"pl-en"]],[[3,10,"pl-s"],[4,9,"pl-s"],[30,35,"pl-s1"],[30,31,"pl-c1"],[31,35,"pl-smi"],[37,46,"pl-en"],[48,55,"pl-s1"],[48,49,"pl-c1"],[57,65,"pl-s1"],[57,58,"pl-c1"]],[[3,15,"pl-s"],[4,14,"pl-s"],[30,35,"pl-s1"],[30,31,"pl-c1"],[31,35,"pl-smi"],[37,51,"pl-en"],[53,60,"pl-s1"],[53,54,"pl-c1"]],[[3,15,"pl-s"],[4,14,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,53,"pl-en"]],[[3,14,"pl-s"],[4,13,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,52,"pl-en"]],[[3,9,"pl-s"],[4,8,"pl-s"],[30,56,"pl-en"],[58,65,"pl-s1"],[58,59,"pl-c1"],[67,71,"pl-c1"],[73,78,"pl-c1"],[80,85,"pl-c1"]],[[3,14,"pl-s"],[4,13,"pl-s"],[30,37,"pl-s1"],[30,31,"pl-c1"],[39,52,"pl-en"]],[],[],[[2,7,"pl-s1"],[2,3,"pl-c1"],[10,15,"pl-s1"],[10,11,"pl-c1"],[11,15,"pl-smi"],[17,48,"pl-en"],[50,55,"pl-s1"],[50,51,"pl-c1"],[57,65,"pl-s1"],[57,58,"pl-c1"]],[[2,7,"pl-s1"],[2,3,"pl-c1"],[10,15,"pl-s1"],[10,11,"pl-c1"],[11,15,"pl-smi"],[17,43,"pl-en"],[45,50,"pl-s1"],[45,46,"pl-c1"],[52,60,"pl-s1"],[52,53,"pl-c1"]],[],[[2,4,"pl-k"],[7,12,"pl-s1"],[7,8,"pl-c1"],[8,12,"pl-smi"],[14,29,"pl-en"]],[[3,8,"pl-s1"],[3,4,"pl-c1"],[4,8,"pl-smi"],[10,48,"pl-en"],[50,55,"pl-s1"],[50,51,"pl-c1"],[57,64,"pl-s1"],[57,58,"pl-c1"]],[],[],[[2,11,"pl-s1"],[2,3,"pl-c1"],[14,34,"pl-en"],[36,41,"pl-s1"],[36,37,"pl-c1"]],[[2,11,"pl-s1"],[2,3,"pl-c1"],[13,22,"pl-en"],[24,29,"pl-s1"],[24,25,"pl-c1"],[25,29,"pl-smi"],[31,44,"pl-en"],[46,53,"pl-s1"],[46,47,"pl-c1"],[55,63,"pl-s1"],[55,56,"pl-c1"]],[],[[2,5,"pl-c"]],[[0,36,"pl-c"]],[[0,4,"pl-c"]],[[0,60,"pl-c"]],[[0,59,"pl-c"]],[[0,4,"pl-c"]],[[0,17,"pl-c"]],[[0,59,"pl-c"]],[[0,51,"pl-c"]],[[0,54,"pl-c"]],[[0,5,"pl-c"]],[[2,8,"pl-k"],[9,22,"pl-en"],[24,76,"pl-s"],[25,50,"pl-s"],[51,56,"pl-s1"],[51,52,"pl-c1"],[52,56,"pl-smi"],[58,67,"pl-c1"],[68,75,"pl-s"],[78,87,"pl-s1"],[78,79,"pl-c1"],[89,96,"pl-s1"],[89,90,"pl-c1"],[98,106,"pl-s1"],[98,99,"pl-c1"]],[],[],[[1,4,"pl-c"]],[[0,52,"pl-c"]],[[0,3,"pl-c"]],[[0,52,"pl-c"]],[[0,66,"pl-c"]],[[0,28,"pl-c"]],[[0,4,"pl-c"]],[[1,10,"pl-k"],[11,19,"pl-k"],[20,47,"pl-en"],[49,57,"pl-s1"],[49,50,"pl-c1"],[59,68,"pl-s1"],[59,60,"pl-c1"],[71,76,"pl-c1"]],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,27,"pl-s"],[24,26,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[16,30,"pl-en"],[32,38,"pl-en"],[40,48,"pl-s1"],[40,41,"pl-c1"],[49,53,"pl-s"],[50,52,"pl-s"]],[[4,8,"pl-k"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[16,19,"pl-k"],[20,40,"pl-v"]],[],[],[[2,12,"pl-s1"],[2,3,"pl-c1"],[14,27,"pl-en"],[29,35,"pl-en"],[37,45,"pl-s1"],[37,38,"pl-c1"],[46,58,"pl-s"],[47,57,"pl-s"]],[],[[2,12,"pl-c"]],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,31,"pl-s"],[24,30,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,25,"pl-en"],[27,49,"pl-en"],[51,59,"pl-s1"],[51,52,"pl-c1"],[60,68,"pl-s"],[61,67,"pl-s"],[74,82,"pl-s1"],[74,75,"pl-c1"],[83,91,"pl-s"],[84,90,"pl-s"],[110,115,"pl-c1"]],[],[],[[2,9,"pl-c"]],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,28,"pl-s"],[24,27,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,22,"pl-en"],[24,32,"pl-en"],[34,42,"pl-s1"],[34,35,"pl-c1"],[43,48,"pl-s"],[44,47,"pl-s"]],[],[],[[2,15,"pl-c"]],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,41,"pl-s"],[24,40,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,35,"pl-en"],[37,45,"pl-en"],[47,55,"pl-s1"],[47,48,"pl-c1"],[56,74,"pl-s"],[57,73,"pl-s"]],[],[],[[2,15,"pl-c"]],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,30,"pl-s"],[24,29,"pl-s"]],[[3,5,"pl-k"],[8,16,"pl-en"],[18,26,"pl-s1"],[18,19,"pl-c1"],[27,34,"pl-s"],[28,33,"pl-s"]],[[4,14,"pl-s1"],[4,5,"pl-c1"],[17,22,"pl-s1"],[17,18,"pl-c1"],[18,22,"pl-smi"],[24,43,"pl-en"],[45,55,"pl-s1"],[45,46,"pl-c1"],[57,65,"pl-s1"],[57,58,"pl-c1"],[66,73,"pl-s"],[67,72,"pl-s"]],[[5,9,"pl-k"]],[[4,14,"pl-s1"],[4,5,"pl-c1"],[16,28,"pl-en"],[30,32,"pl-s"]],[],[],[],[[2,23,"pl-c"]],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,32,"pl-s"],[24,31,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,26,"pl-en"],[28,36,"pl-s1"],[28,29,"pl-c1"],[37,46,"pl-s"],[38,45,"pl-s"]],[],[],[[2,28,"pl-c"]],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,37,"pl-s"],[24,36,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,31,"pl-en"],[33,41,"pl-s1"],[33,34,"pl-c1"],[42,56,"pl-s"],[43,55,"pl-s"]],[],[],[[2,15,"pl-c"]],[[2,4,"pl-k"],[7,17,"pl-s1"],[7,8,"pl-c1"],[19,35,"pl-en"]],[[3,25,"pl-c"]],[[3,5,"pl-k"],[8,13,"pl-en"],[15,23,"pl-s1"],[15,16,"pl-c1"],[24,35,"pl-s"],[25,34,"pl-s"],[42,50,"pl-en"],[52,60,"pl-s1"],[52,53,"pl-c1"],[61,72,"pl-s"],[62,71,"pl-s"]],[[4,14,"pl-s1"],[4,5,"pl-c1"],[17,22,"pl-s1"],[17,18,"pl-c1"],[18,22,"pl-smi"],[24,47,"pl-en"],[49,59,"pl-s1"],[49,50,"pl-c1"],[61,69,"pl-s1"],[61,62,"pl-c1"],[70,81,"pl-s"],[71,80,"pl-s"]],[],[],[[3,21,"pl-c"]],[[3,5,"pl-k"],[8,13,"pl-en"],[15,23,"pl-s1"],[15,16,"pl-c1"],[24,40,"pl-s"],[25,39,"pl-s"]],[[4,14,"pl-s1"],[4,5,"pl-c1"],[16,34,"pl-en"],[36,44,"pl-s1"],[36,37,"pl-c1"],[45,61,"pl-s"],[46,60,"pl-s"]],[],[],[[3,22,"pl-c"]],[[3,5,"pl-k"],[8,13,"pl-en"],[15,23,"pl-s1"],[15,16,"pl-c1"],[24,41,"pl-s"],[25,40,"pl-s"]],[[4,14,"pl-s1"],[4,5,"pl-c1"],[16,35,"pl-en"],[37,45,"pl-s1"],[37,38,"pl-c1"],[46,63,"pl-s"],[47,62,"pl-s"]],[],[],[],[[2,19,"pl-c"]],[[2,12,"pl-s1"],[2,3,"pl-c1"],[15,20,"pl-s1"],[15,16,"pl-c1"],[16,20,"pl-smi"],[22,48,"pl-en"],[50,60,"pl-s1"],[50,51,"pl-c1"],[62,70,"pl-s1"],[62,63,"pl-c1"]],[],[[2,20,"pl-c"]],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,37,"pl-s"],[24,36,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,31,"pl-en"],[33,41,"pl-s1"],[33,34,"pl-c1"],[42,56,"pl-s"],[43,55,"pl-s"]],[],[],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,37,"pl-s"],[24,36,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,31,"pl-en"],[33,41,"pl-s1"],[33,34,"pl-c1"],[42,56,"pl-s"],[43,55,"pl-s"]],[],[],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,35,"pl-s"],[24,34,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,29,"pl-en"],[31,39,"pl-s1"],[31,32,"pl-c1"],[40,52,"pl-s"],[41,51,"pl-s"]],[],[],[[2,4,"pl-k"],[7,17,"pl-s1"],[7,8,"pl-c1"],[19,35,"pl-en"]],[[3,5,"pl-k"],[8,13,"pl-en"],[15,23,"pl-s1"],[15,16,"pl-c1"],[24,40,"pl-s"],[25,39,"pl-s"]],[[4,14,"pl-s1"],[4,5,"pl-c1"],[16,34,"pl-en"],[36,44,"pl-s1"],[36,37,"pl-c1"],[45,61,"pl-s"],[46,60,"pl-s"]],[[5,11,"pl-k"],[14,19,"pl-en"],[21,29,"pl-s1"],[21,22,"pl-c1"],[30,47,"pl-s"],[31,46,"pl-s"]],[[4,19,"pl-s1"],[4,5,"pl-c1"],[23,38,"pl-en"],[40,50,"pl-s1"],[40,41,"pl-c1"],[52,70,"pl-en"]],[[4,19,"pl-s1"],[4,5,"pl-c1"],[23,38,"pl-en"],[40,48,"pl-s1"],[40,41,"pl-c1"],[49,66,"pl-s"],[50,65,"pl-s"]],[[4,14,"pl-s1"],[4,5,"pl-c1"],[16,34,"pl-en"],[36,51,"pl-s1"],[36,37,"pl-c1"]],[],[[3,113,"pl-c"]],[[3,5,"pl-k"],[8,24,"pl-en"],[26,44,"pl-s"],[27,43,"pl-s"],[46,54,"pl-s1"],[46,47,"pl-c1"],[56,66,"pl-en"]],[[4,6,"pl-k"],[9,13,"pl-c1"],[18,26,"pl-s1"],[18,19,"pl-c1"],[27,45,"pl-s"],[28,44,"pl-s"]],[[5,15,"pl-s1"],[5,6,"pl-c1"],[17,37,"pl-en"],[39,41,"pl-s"]],[[6,10,"pl-k"]],[[5,15,"pl-s1"],[5,6,"pl-c1"],[17,37,"pl-en"],[39,54,"pl-en"],[56,64,"pl-s1"],[56,57,"pl-c1"],[65,83,"pl-s"],[66,82,"pl-s"]],[],[],[[4,8,"pl-k"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,29,"pl-en"],[31,35,"pl-s"],[32,34,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,33,"pl-en"],[35,37,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,35,"pl-en"],[37,39,"pl-s"]],[],[],[[2,19,"pl-c"]],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,38,"pl-s"],[24,37,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,32,"pl-en"],[34,42,"pl-s1"],[34,35,"pl-c1"],[43,58,"pl-s"],[44,57,"pl-s"]],[],[],[[2,16,"pl-c"]],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,35,"pl-s"],[24,34,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,29,"pl-en"],[31,39,"pl-s1"],[31,32,"pl-c1"],[40,52,"pl-s"],[41,51,"pl-s"]],[],[],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,42,"pl-s"],[24,41,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,36,"pl-en"],[38,46,"pl-s1"],[38,39,"pl-c1"],[47,66,"pl-s"],[48,65,"pl-s"]],[],[],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,46,"pl-s"],[24,45,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,36,"pl-en"],[38,46,"pl-s1"],[38,39,"pl-c1"],[47,70,"pl-s"],[48,69,"pl-s"],[74,83,"pl-en"],[85,93,"pl-s1"],[85,86,"pl-c1"],[94,117,"pl-s"],[95,116,"pl-s"],[123,127,"pl-c1"]],[],[],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,40,"pl-s"],[24,39,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,34,"pl-en"],[36,44,"pl-s1"],[36,37,"pl-c1"],[45,62,"pl-s"],[46,61,"pl-s"]],[],[],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,44,"pl-s"],[24,43,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,34,"pl-en"],[36,44,"pl-s1"],[36,37,"pl-c1"],[45,66,"pl-s"],[46,65,"pl-s"],[70,79,"pl-en"],[81,89,"pl-s1"],[81,82,"pl-c1"],[90,111,"pl-s"],[91,110,"pl-s"],[117,121,"pl-c1"]],[],[],[[2,15,"pl-c"]],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,34,"pl-s"],[24,33,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,28,"pl-en"],[30,38,"pl-s1"],[30,31,"pl-c1"],[39,50,"pl-s"],[40,49,"pl-s"]],[],[],[[2,17,"pl-c"]],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,36,"pl-s"],[24,35,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,30,"pl-en"],[32,44,"pl-en"],[46,54,"pl-s1"],[46,47,"pl-c1"],[55,68,"pl-s"],[56,67,"pl-s"]],[],[],[[2,23,"pl-c"]],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,35,"pl-s"],[24,34,"pl-s"]],[[3,14,"pl-s1"],[3,4,"pl-c1"],[17,22,"pl-en"]],[[3,10,"pl-s1"],[3,4,"pl-c1"],[17,31,"pl-en"],[33,43,"pl-s1"],[33,34,"pl-c1"],[45,58,"pl-en"]],[],[[3,5,"pl-k"],[10,17,"pl-s1"],[10,11,"pl-c1"]],[[4,10,"pl-k"],[11,14,"pl-k"],[15,23,"pl-v"]],[[5,34,"pl-c"]],[[5,57,"pl-s"],[6,23,"pl-s"],[24,29,"pl-s1"],[24,25,"pl-c1"],[25,29,"pl-smi"],[31,40,"pl-c1"],[41,56,"pl-s"]],[[5,7,"pl-en"],[9,63,"pl-s"],[10,62,"pl-s"],[65,78,"pl-s"],[66,77,"pl-s"]],[[5,10,"pl-en"],[12,20,"pl-s"],[13,19,"pl-s"],[24,27,"pl-c1"]],[],[],[],[[3,21,"pl-s1"],[3,4,"pl-c1"],[24,31,"pl-s1"],[24,25,"pl-c1"],[33,47,"pl-en"]],[],[[3,10,"pl-k"],[13,21,"pl-s1"],[13,14,"pl-c1"],[22,34,"pl-s"],[23,33,"pl-s"],[36,38,"pl-k"],[39,49,"pl-s1"],[39,40,"pl-c1"]],[[4,17,"pl-s1"],[4,5,"pl-c1"],[22,23,"pl-c1"]],[[4,19,"pl-s1"],[4,5,"pl-c1"],[22,24,"pl-s"]],[],[[4,69,"pl-c"]],[[4,6,"pl-k"],[11,16,"pl-en"],[18,28,"pl-s1"],[18,19,"pl-c1"],[29,33,"pl-s"],[30,32,"pl-s"]],[[5,18,"pl-s1"],[5,6,"pl-c1"],[23,29,"pl-en"],[31,41,"pl-s1"],[31,32,"pl-c1"],[42,46,"pl-s"],[43,45,"pl-s"]],[[5,20,"pl-s1"],[5,6,"pl-c1"],[23,37,"pl-en"],[39,71,"pl-en"],[73,86,"pl-s1"],[73,74,"pl-c1"]],[[6,12,"pl-k"],[17,22,"pl-en"],[24,34,"pl-s1"],[24,25,"pl-c1"],[35,41,"pl-s"],[36,40,"pl-s"]],[[5,20,"pl-s1"],[5,6,"pl-c1"],[23,37,"pl-en"],[39,49,"pl-s1"],[39,40,"pl-c1"],[50,56,"pl-s"],[51,55,"pl-s"]],[],[],[[4,6,"pl-k"],[11,24,"pl-s1"],[11,12,"pl-c1"],[30,45,"pl-s1"],[30,31,"pl-c1"]],[[5,13,"pl-k"]],[],[],[[4,6,"pl-k"],[11,16,"pl-en"],[18,36,"pl-s1"],[18,19,"pl-c1"],[38,53,"pl-s1"],[38,39,"pl-c1"],[63,81,"pl-s1"],[63,64,"pl-c1"],[83,98,"pl-s1"],[83,84,"pl-c1"],[102,115,"pl-en"]],[[5,13,"pl-k"]],[],[],[[4,18,"pl-s1"],[4,5,"pl-c1"],[23,37,"pl-en"],[39,57,"pl-s1"],[39,40,"pl-c1"],[59,74,"pl-s1"],[59,60,"pl-c1"],[78,86,"pl-en"]],[[4,20,"pl-s1"],[4,5,"pl-c1"],[23,28,"pl-en"],[30,40,"pl-s1"],[30,31,"pl-c1"],[41,49,"pl-s"],[42,48,"pl-s"],[55,63,"pl-en"],[65,77,"pl-en"],[79,91,"pl-en"],[93,103,"pl-s1"],[93,94,"pl-c1"],[104,112,"pl-s"],[105,111,"pl-s"],[122,124,"pl-s"]],[],[[4,6,"pl-k"],[9,27,"pl-s1"],[9,10,"pl-c1"],[29,44,"pl-s1"],[29,30,"pl-c1"],[48,59,"pl-en"]],[[5,92,"pl-c"]],[[5,10,"pl-s1"],[5,6,"pl-c1"],[13,24,"pl-en"],[26,32,"pl-s"],[27,31,"pl-s"],[34,50,"pl-s1"],[34,35,"pl-c1"],[52,67,"pl-s1"],[52,53,"pl-c1"]],[],[[5,7,"pl-k"],[10,15,"pl-s1"],[10,11,"pl-c1"],[21,32,"pl-en"],[34,39,"pl-s1"],[34,35,"pl-c1"]],[[6,22,"pl-s1"],[6,7,"pl-c1"],[25,30,"pl-s1"],[25,26,"pl-c1"],[32,36,"pl-c1"]],[[7,11,"pl-k"]],[[6,22,"pl-s1"],[6,7,"pl-c1"],[25,39,"pl-en"],[41,57,"pl-s1"],[41,42,"pl-c1"]],[],[],[],[[4,15,"pl-s1"],[4,5,"pl-c1"],[17,31,"pl-s1"],[17,18,"pl-c1"],[36,52,"pl-s1"],[36,37,"pl-c1"]],[],[],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,29,"pl-en"],[31,42,"pl-s1"],[31,32,"pl-c1"]],[],[],[[2,16,"pl-c"]],[[2,4,"pl-k"],[7,15,"pl-s1"],[7,8,"pl-c1"],[16,28,"pl-s"],[17,27,"pl-s"]],[[3,13,"pl-s1"],[3,4,"pl-c1"],[15,29,"pl-en"],[31,39,"pl-s1"],[31,32,"pl-c1"],[40,52,"pl-s"],[41,51,"pl-s"]],[],[],[[2,15,"pl-c"]],[[2,4,"pl-k"],[7,15,"pl-en"],[17,25,"pl-s1"],[17,18,"pl-c1"],[26,37,"pl-s"],[27,36,"pl-s"]],[[3,10,"pl-k"],[13,21,"pl-s1"],[13,14,"pl-c1"],[22,33,"pl-s"],[23,32,"pl-s"],[35,37,"pl-k"],[38,43,"pl-s1"],[38,39,"pl-c1"]],[[4,14,"pl-s1"],[4,5,"pl-c1"],[16,32,"pl-en"],[34,39,"pl-s1"],[34,35,"pl-c1"],[40,45,"pl-s"],[41,44,"pl-s"],[48,53,"pl-s1"],[48,49,"pl-c1"],[54,61,"pl-s"],[55,60,"pl-s"],[64,69,"pl-en"],[71,76,"pl-s1"],[71,72,"pl-c1"],[77,81,"pl-s"],[78,80,"pl-s"],[87,92,"pl-s1"],[87,88,"pl-c1"],[93,97,"pl-s"],[94,96,"pl-s"],[101,103,"pl-s"]],[],[],[],[[2,4,"pl-k"],[7,12,"pl-s1"],[7,8,"pl-c1"],[8,12,"pl-smi"],[14,29,"pl-en"]],[[3,8,"pl-s1"],[3,4,"pl-c1"],[4,8,"pl-smi"],[10,41,"pl-en"],[43,51,"pl-s1"],[43,44,"pl-c1"],[53,63,"pl-s1"],[53,54,"pl-c1"]],[],[],[[2,5,"pl-c"]],[[0,62,"pl-c"]],[[0,4,"pl-c"]],[[0,62,"pl-c"]],[[0,36,"pl-c"]],[[0,4,"pl-c"]],[[0,17,"pl-c"]],[[0,53,"pl-c"]],[[0,54,"pl-c"]],[[0,67,"pl-c"]],[[0,5,"pl-c"]],[[2,8,"pl-k"],[9,22,"pl-en"],[24,79,"pl-s"],[25,53,"pl-s"],[54,59,"pl-s1"],[54,55,"pl-c1"],[55,59,"pl-smi"],[61,70,"pl-c1"],[71,78,"pl-s"],[81,91,"pl-s1"],[81,82,"pl-c1"],[93,101,"pl-s1"],[93,94,"pl-c1"],[103,112,"pl-s1"],[103,104,"pl-c1"]],[],[],[[1,4,"pl-c"]],[[0,42,"pl-c"]],[[0,3,"pl-c"]],[[0,58,"pl-c"]],[[0,84,"pl-c"]],[[0,17,"pl-c"]],[[0,4,"pl-c"]],[[1,10,"pl-k"],[11,19,"pl-k"],[20,29,"pl-en"],[31,41,"pl-s1"],[31,32,"pl-c1"],[43,51,"pl-s1"],[43,44,"pl-c1"],[54,60,"pl-s"],[55,59,"pl-s"]],[[2,4,"pl-k"],[9,19,"pl-s1"],[9,10,"pl-c1"],[21,33,"pl-en"],[35,43,"pl-s1"],[35,36,"pl-c1"]],[[3,9,"pl-k"]],[],[],[[2,16,"pl-s1"],[2,3,"pl-c1"],[21,31,"pl-s1"],[21,22,"pl-c1"],[33,45,"pl-en"]],[[2,18,"pl-s1"],[2,3,"pl-c1"],[21,29,"pl-en"],[31,45,"pl-s1"],[31,32,"pl-c1"]],[[2,4,"pl-k"],[7,14,"pl-en"],[16,32,"pl-s1"],[16,17,"pl-c1"]],[[3,9,"pl-k"]],[],[],[[2,13,"pl-s1"],[2,3,"pl-c1"],[16,43,"pl-en"],[45,59,"pl-s1"],[45,46,"pl-c1"],[61,67,"pl-s"],[62,66,"pl-s"]],[[2,4,"pl-k"],[9,17,"pl-en"],[19,30,"pl-s1"],[19,20,"pl-c1"]],[[3,9,"pl-k"]],[],[],[[2,4,"pl-k"],[9,14,"pl-en"],[16,22,"pl-s1"],[16,17,"pl-c1"]],[[3,9,"pl-k"],[10,15,"pl-en"]],[[4,8,"pl-s"],[5,7,"pl-s"],[28,31,"pl-smi"],[33,47,"pl-s1"],[33,34,"pl-c1"]],[[4,18,"pl-s"],[5,17,"pl-s"],[27,56,"pl-en"],[58,74,"pl-s1"],[58,59,"pl-c1"],[76,85,"pl-c1"],[87,92,"pl-c1"]],[[4,22,"pl-s"],[5,21,"pl-s"],[27,56,"pl-en"],[58,67,"pl-en"],[69,85,"pl-s1"],[69,70,"pl-c1"],[87,100,"pl-c1"]],[[4,19,"pl-s"],[5,18,"pl-s"],[27,56,"pl-en"],[58,74,"pl-s1"],[58,59,"pl-c1"],[76,89,"pl-c1"],[91,96,"pl-c1"]],[[4,23,"pl-s"],[5,22,"pl-s"],[27,56,"pl-en"],[58,67,"pl-en"],[69,85,"pl-s1"],[69,70,"pl-c1"],[87,104,"pl-c1"]],[[4,9,"pl-s"],[5,8,"pl-s"],[27,34,"pl-en"],[36,47,"pl-s1"],[36,37,"pl-c1"]],[[4,10,"pl-s"],[5,9,"pl-s"],[27,40,"pl-en"],[42,56,"pl-s1"],[42,43,"pl-c1"]],[[4,9,"pl-s"],[5,8,"pl-s"],[27,40,"pl-en"],[42,56,"pl-s1"],[42,43,"pl-c1"],[58,84,"pl-s"],[59,83,"pl-s"],[86,90,"pl-c1"]],[],[],[],[],[[1,4,"pl-c"]],[[0,24,"pl-c"]],[[0,3,"pl-c"]],[[0,50,"pl-c"]],[[0,63,"pl-c"]],[[0,54,"pl-c"]],[[0,32,"pl-c"]],[[0,4,"pl-c"]],[[1,10,"pl-k"],[11,19,"pl-k"],[20,39,"pl-en"],[41,51,"pl-s1"],[41,42,"pl-c1"],[53,59,"pl-s1"],[53,54,"pl-c1"]],[[2,16,"pl-s1"],[2,3,"pl-c1"],[19,24,"pl-en"],[26,32,"pl-s1"],[26,27,"pl-c1"],[33,37,"pl-s"],[34,36,"pl-s"],[43,49,"pl-en"],[51,57,"pl-s1"],[51,52,"pl-c1"],[58,62,"pl-s"],[59,61,"pl-s"],[68,69,"pl-c1"]],[],[[2,4,"pl-k"],[7,8,"pl-c1"],[13,27,"pl-s1"],[13,14,"pl-c1"]],[[3,5,"pl-k"],[8,13,"pl-en"],[15,21,"pl-s1"],[15,16,"pl-c1"],[22,27,"pl-s"],[23,26,"pl-s"]],[[4,11,"pl-s1"],[4,5,"pl-c1"],[14,43,"pl-en"],[45,56,"pl-en"],[58,64,"pl-s1"],[58,59,"pl-c1"],[65,70,"pl-s"],[66,69,"pl-s"]],[],[[4,6,"pl-k"],[9,20,"pl-en"],[22,29,"pl-s1"],[22,23,"pl-c1"]],[[5,8,"pl-c"]],[[0,87,"pl-c"]],[[0,7,"pl-c"]],[[0,20,"pl-c"]],[[0,50,"pl-c"]],[[0,58,"pl-c"]],[[0,37,"pl-c"]],[[0,46,"pl-c"]],[[0,8,"pl-c"]],[[5,7,"pl-k"],[12,25,"pl-en"],[27,73,"pl-s"],[28,72,"pl-s"],[75,80,"pl-c1"],[82,89,"pl-s1"],[82,83,"pl-c1"],[91,101,"pl-s1"],[91,92,"pl-c1"],[103,109,"pl-en"],[113,118,"pl-en"],[120,126,"pl-s1"],[120,121,"pl-c1"]],[[6,11,"pl-k"],[12,15,"pl-k"],[16,33,"pl-v"],[35,77,"pl-s"],[36,76,"pl-s"],[79,86,"pl-s1"],[79,80,"pl-c1"],[88,105,"pl-en"],[109,112,"pl-c1"]],[],[],[],[[4,18,"pl-s1"],[4,5,"pl-c1"],[21,61,"pl-en"],[63,70,"pl-s1"],[63,64,"pl-c1"],[72,82,"pl-s1"],[72,73,"pl-c1"],[84,90,"pl-en"]],[[5,9,"pl-k"]],[[4,14,"pl-s1"],[4,5,"pl-c1"],[16,28,"pl-en"],[30,32,"pl-s"]],[[4,10,"pl-k"],[11,21,"pl-s1"],[11,12,"pl-c1"]],[],[],[],[[2,4,"pl-k"],[9,31,"pl-en"],[33,47,"pl-s1"],[33,34,"pl-c1"]],[[3,39,"pl-c"]],[[3,8,"pl-k"],[9,12,"pl-k"],[13,30,"pl-v"],[32,72,"pl-s"],[33,71,"pl-s"],[74,81,"pl-en"],[83,85,"pl-en"],[87,116,"pl-s"],[88,115,"pl-s"],[118,131,"pl-s"],[119,130,"pl-s"],[135,149,"pl-s1"],[135,136,"pl-c1"],[153,156,"pl-c1"]],[],[],[[2,12,"pl-s1"],[2,3,"pl-c1"],[14,26,"pl-en"],[28,42,"pl-s1"],[28,29,"pl-c1"]],[],[[2,34,"pl-c"]],[[2,4,"pl-k"],[9,14,"pl-en"],[16,22,"pl-s1"],[16,17,"pl-c1"],[23,28,"pl-s"],[24,27,"pl-s"]],[[3,19,"pl-en"],[21,35,"pl-s1"],[21,22,"pl-c1"],[37,63,"pl-s"],[38,62,"pl-s"],[65,73,"pl-en"],[75,81,"pl-s1"],[75,76,"pl-c1"],[82,87,"pl-s"],[83,86,"pl-s"]],[],[],[[2,35,"pl-c"]],[[2,4,"pl-k"],[9,14,"pl-en"],[16,22,"pl-s1"],[16,17,"pl-c1"],[23,29,"pl-s"],[24,28,"pl-s"]],[[3,17,"pl-en"]],[[4,9,"pl-en"]],[[5,9,"pl-s"],[6,8,"pl-s"],[21,35,"pl-s1"],[21,22,"pl-c1"]],[[5,17,"pl-s"],[6,16,"pl-s"],[21,27,"pl-s1"],[21,22,"pl-c1"],[28,34,"pl-s"],[29,33,"pl-s"]],[],[],[],[],[[2,8,"pl-k"],[9,19,"pl-s1"],[9,10,"pl-c1"]],[],[],[[1,4,"pl-c"]],[[0,58,"pl-c"]],[[0,3,"pl-c"]],[[0,17,"pl-c"]],[[0,4,"pl-c"]],[[1,7,"pl-k"],[8,16,"pl-k"],[17,32,"pl-en"]],[[2,20,"pl-s1"],[2,3,"pl-c1"],[36,57,"pl-en"],[59,69,"pl-en"],[71,96,"pl-s"],[72,95,"pl-s"],[98,102,"pl-s"],[99,101,"pl-s"]],[[2,23,"pl-s1"],[2,3,"pl-c1"],[36,61,"pl-en"],[63,73,"pl-en"],[75,103,"pl-s"],[76,102,"pl-s"],[105,109,"pl-s"],[106,108,"pl-s"]],[[2,9,"pl-s1"],[2,3,"pl-c1"],[26,31,"pl-en"]],[[3,12,"pl-s"],[4,11,"pl-s"],[19,60,"pl-s"],[20,59,"pl-s"]],[[3,10,"pl-s"],[4,9,"pl-s"],[19,24,"pl-s1"],[19,20,"pl-c1"],[20,24,"pl-smi"],[26,35,"pl-c1"]],[[3,9,"pl-s"],[4,8,"pl-s"],[19,27,"pl-s"],[20,26,"pl-s"]],[[3,15,"pl-s"],[4,14,"pl-s"],[19,24,"pl-en"]],[[4,8,"pl-s"],[5,7,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,63,"pl-s"],[27,62,"pl-s"],[65,78,"pl-s"],[66,77,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,31,"pl-s"],[23,30,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[[5,15,"pl-s"],[6,14,"pl-s"],[22,26,"pl-c1"]],[],[[4,10,"pl-s"],[5,9,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,41,"pl-s"],[27,40,"pl-s"],[43,56,"pl-s"],[44,55,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[[5,15,"pl-s"],[6,14,"pl-s"],[22,26,"pl-c1"]],[],[[4,18,"pl-s"],[5,17,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,87,"pl-s"],[27,86,"pl-s"],[89,102,"pl-s"],[90,101,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,33,"pl-s"],[23,32,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[[5,15,"pl-s"],[6,14,"pl-s"],[22,26,"pl-c1"]],[],[[4,19,"pl-s"],[5,18,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,93,"pl-s"],[27,92,"pl-s"],[95,108,"pl-s"],[96,107,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,33,"pl-s"],[23,32,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[[5,15,"pl-s"],[6,14,"pl-s"],[22,26,"pl-c1"]],[],[[4,17,"pl-s"],[5,16,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,50,"pl-s"],[27,49,"pl-s"],[52,65,"pl-s"],[53,64,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,15,"pl-s"],[5,14,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,42,"pl-s"],[27,41,"pl-s"],[44,57,"pl-s"],[45,56,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,13,"pl-s"],[6,12,"pl-s"],[22,27,"pl-s"],[23,26,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[[5,15,"pl-s"],[6,14,"pl-s"],[22,26,"pl-c1"]],[],[[4,9,"pl-s"],[5,8,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,47,"pl-s"],[27,46,"pl-s"],[49,62,"pl-s"],[50,61,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,22,"pl-s"],[5,21,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,51,"pl-s"],[27,50,"pl-s"],[53,66,"pl-s"],[54,65,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,11,"pl-s"],[5,10,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,52,"pl-s"],[27,51,"pl-s"],[54,67,"pl-s"],[55,66,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[[5,15,"pl-s"],[6,14,"pl-s"],[22,26,"pl-c1"]],[],[[4,19,"pl-s"],[5,18,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,52,"pl-s"],[27,51,"pl-s"],[54,67,"pl-s"],[55,66,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,16,"pl-s"],[5,15,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,49,"pl-s"],[27,48,"pl-s"],[51,64,"pl-s"],[52,63,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,23,"pl-s"],[5,22,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,77,"pl-s"],[27,76,"pl-s"],[79,92,"pl-s"],[80,91,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,33,"pl-s"],[23,32,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,27,"pl-s"],[5,26,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,61,"pl-s"],[27,60,"pl-s"],[63,76,"pl-s"],[64,75,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,33,"pl-s"],[23,32,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,21,"pl-s"],[5,20,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,75,"pl-s"],[27,74,"pl-s"],[77,90,"pl-s"],[78,89,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,33,"pl-s"],[23,32,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,25,"pl-s"],[5,24,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,75,"pl-s"],[27,74,"pl-s"],[77,90,"pl-s"],[78,89,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,33,"pl-s"],[23,32,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,13,"pl-s"],[5,12,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,62,"pl-s"],[27,61,"pl-s"],[64,77,"pl-s"],[65,76,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,31,"pl-s"],[23,30,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[[5,15,"pl-s"],[6,14,"pl-s"],[22,26,"pl-c1"]],[],[[4,12,"pl-s"],[5,11,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,45,"pl-s"],[27,44,"pl-s"],[47,60,"pl-s"],[48,59,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,96,"pl-c"]],[[5,69,"pl-c"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,31,"pl-s"],[23,30,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,32,"pl-en"],[34,51,"pl-en"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,17,"pl-s"],[5,16,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,65,"pl-s"],[27,64,"pl-s"],[67,80,"pl-s"],[68,79,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,31,"pl-s"],[23,30,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[[5,15,"pl-s"],[6,14,"pl-s"],[22,26,"pl-c1"]],[],[[4,13,"pl-s"],[5,12,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,56,"pl-s"],[27,55,"pl-s"],[58,71,"pl-s"],[59,70,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,31,"pl-s"],[23,30,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-c1"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,18,"pl-s"],[5,17,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,61,"pl-s"],[27,60,"pl-s"],[63,76,"pl-s"],[64,75,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,31,"pl-s"],[23,30,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-c1"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,15,"pl-s"],[5,14,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,55,"pl-s"],[27,54,"pl-s"],[57,70,"pl-s"],[58,69,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,29,"pl-s"],[23,28,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[[5,12,"pl-s"],[6,11,"pl-s"],[22,27,"pl-en"]],[[6,12,"pl-s"],[7,11,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[6,18,"pl-s"],[7,17,"pl-s"],[22,27,"pl-en"]],[[7,11,"pl-s"],[8,10,"pl-s"],[17,22,"pl-en"]],[[8,21,"pl-s"],[9,20,"pl-s"],[25,27,"pl-en"],[29,39,"pl-s"],[30,38,"pl-s"],[41,54,"pl-s"],[42,53,"pl-s"]],[[8,14,"pl-s"],[9,13,"pl-s"],[25,33,"pl-s"],[26,32,"pl-s"]],[[8,17,"pl-s"],[9,16,"pl-s"],[25,30,"pl-en"],[32,38,"pl-s"],[33,37,"pl-s"],[40,46,"pl-s"],[41,45,"pl-s"]],[],[[7,13,"pl-s"],[8,12,"pl-s"],[17,22,"pl-en"]],[[8,21,"pl-s"],[9,20,"pl-s"],[25,27,"pl-en"],[29,41,"pl-s"],[30,40,"pl-s"],[43,56,"pl-s"],[44,55,"pl-s"]],[[8,14,"pl-s"],[9,13,"pl-s"],[25,33,"pl-s"],[26,32,"pl-s"]],[[8,17,"pl-s"],[9,16,"pl-s"],[25,30,"pl-en"],[32,38,"pl-s"],[33,37,"pl-s"],[40,46,"pl-s"],[41,45,"pl-s"]],[],[[7,13,"pl-s"],[8,12,"pl-s"],[17,22,"pl-en"]],[[8,21,"pl-s"],[9,20,"pl-s"],[25,27,"pl-en"],[29,40,"pl-s"],[30,39,"pl-s"],[42,55,"pl-s"],[43,54,"pl-s"]],[[8,14,"pl-s"],[9,13,"pl-s"],[25,33,"pl-s"],[26,32,"pl-s"]],[[8,17,"pl-s"],[9,16,"pl-s"],[25,30,"pl-en"],[32,38,"pl-s"],[33,37,"pl-s"],[40,46,"pl-s"],[41,45,"pl-s"]],[],[],[],[],[[4,20,"pl-s"],[5,19,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,96,"pl-s"],[27,95,"pl-s"],[98,111,"pl-s"],[99,110,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,31,"pl-s"],[23,30,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[23,24,"pl-c1"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,21,"pl-s"],[5,20,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,86,"pl-s"],[27,85,"pl-s"],[88,101,"pl-s"],[89,100,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,31,"pl-s"],[23,30,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[23,24,"pl-c1"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,16,"pl-s"],[5,15,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,39,"pl-s"],[27,38,"pl-s"],[41,54,"pl-s"],[42,53,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[40,47,"pl-c1"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,27,"pl-en"],[47,54,"pl-c1"],[74,82,"pl-c1"],[102,106,"pl-c1"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,15,"pl-s"],[5,14,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,38,"pl-s"],[27,37,"pl-s"],[40,53,"pl-s"],[41,52,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,18,"pl-s"],[5,17,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,64,"pl-s"],[27,63,"pl-s"],[66,79,"pl-s"],[67,78,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,27,"pl-en"],[29,38,"pl-s"],[30,37,"pl-s"],[40,48,"pl-s"],[41,47,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-c1"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,20,"pl-s"],[5,19,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,43,"pl-s"],[27,42,"pl-s"],[45,58,"pl-s"],[46,57,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,31,"pl-s"],[23,30,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,18,"pl-s"],[5,17,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,69,"pl-s"],[27,68,"pl-s"],[71,84,"pl-s"],[72,83,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[42,50,"pl-c1"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,32,"pl-en"],[34,69,"pl-en"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,16,"pl-s"],[5,15,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,87,"pl-s"],[27,86,"pl-s"],[89,102,"pl-s"],[90,101,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,26,"pl-s"],[23,25,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,27,"pl-en"],[29,33,"pl-s"],[30,32,"pl-s"],[35,43,"pl-s"],[36,42,"pl-s"],[45,50,"pl-s"],[46,49,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,24,"pl-s"],[5,23,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,60,"pl-s"],[27,59,"pl-s"],[62,75,"pl-s"],[63,74,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,31,"pl-s"],[23,30,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[[5,15,"pl-s"],[6,14,"pl-s"],[22,26,"pl-c1"]],[],[[4,17,"pl-s"],[5,16,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,69,"pl-s"],[27,68,"pl-s"],[71,84,"pl-s"],[72,83,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,31,"pl-s"],[23,30,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[[5,15,"pl-s"],[6,14,"pl-s"],[22,26,"pl-c1"]],[],[[4,22,"pl-s"],[5,21,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,63,"pl-s"],[27,62,"pl-s"],[65,78,"pl-s"],[66,77,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,27,"pl-en"],[29,38,"pl-s"],[30,37,"pl-s"],[40,46,"pl-s"],[41,45,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,12,"pl-s"],[5,11,"pl-s"],[31,36,"pl-en"]],[[5,39,"pl-c"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,29,"pl-en"],[31,33,"pl-en"],[35,59,"pl-s"],[36,58,"pl-s"],[61,74,"pl-s"],[62,73,"pl-s"],[78,96,"pl-s1"],[78,79,"pl-c1"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,16,"pl-s"],[5,15,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,49,"pl-s"],[27,48,"pl-s"],[51,64,"pl-s"],[52,63,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[[5,17,"pl-s"],[6,16,"pl-s"],[22,27,"pl-en"]],[[6,14,"pl-s"],[7,13,"pl-s"],[18,23,"pl-en"]],[[7,44,"pl-c"]],[[7,20,"pl-s"],[8,19,"pl-s"],[24,31,"pl-en"],[33,35,"pl-en"],[37,61,"pl-s"],[38,60,"pl-s"],[63,76,"pl-s"],[64,75,"pl-s"],[80,101,"pl-s1"],[80,81,"pl-c1"]],[[7,13,"pl-s"],[8,12,"pl-s"],[24,32,"pl-s"],[25,31,"pl-s"]],[[7,16,"pl-s"],[8,15,"pl-s"],[24,29,"pl-en"],[31,37,"pl-s"],[32,36,"pl-s"],[39,45,"pl-s"],[40,44,"pl-s"]],[],[[6,13,"pl-s"],[7,12,"pl-s"],[18,23,"pl-en"]],[[7,44,"pl-c"]],[[7,20,"pl-s"],[8,19,"pl-s"],[24,31,"pl-en"],[33,35,"pl-en"],[37,60,"pl-s"],[38,59,"pl-s"],[62,75,"pl-s"],[63,74,"pl-s"],[79,100,"pl-s1"],[79,80,"pl-c1"]],[[7,13,"pl-s"],[8,12,"pl-s"],[24,32,"pl-s"],[25,31,"pl-s"]],[[7,16,"pl-s"],[8,15,"pl-s"],[24,29,"pl-en"],[31,37,"pl-s"],[32,36,"pl-s"],[39,45,"pl-s"],[40,44,"pl-s"]],[],[[6,14,"pl-s"],[7,13,"pl-s"],[18,23,"pl-en"]],[[7,44,"pl-c"]],[[7,20,"pl-s"],[8,19,"pl-s"],[24,31,"pl-en"],[33,35,"pl-en"],[37,61,"pl-s"],[38,60,"pl-s"],[63,76,"pl-s"],[64,75,"pl-s"],[80,101,"pl-s1"],[80,81,"pl-c1"]],[[7,13,"pl-s"],[8,12,"pl-s"],[24,32,"pl-s"],[25,31,"pl-s"]],[[7,16,"pl-s"],[8,15,"pl-s"],[24,29,"pl-en"],[31,37,"pl-s"],[32,36,"pl-s"],[39,45,"pl-s"],[40,44,"pl-s"]],[],[],[],[[4,20,"pl-s"],[5,19,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,48,"pl-s"],[27,47,"pl-s"],[50,63,"pl-s"],[51,62,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,23,"pl-s"],[5,22,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,46,"pl-s"],[27,45,"pl-s"],[48,61,"pl-s"],[49,60,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[[5,15,"pl-s"],[6,14,"pl-s"],[22,26,"pl-c1"]],[],[[4,11,"pl-s"],[5,10,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,49,"pl-s"],[27,48,"pl-s"],[51,64,"pl-s"],[52,63,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[[5,17,"pl-s"],[6,16,"pl-s"],[22,27,"pl-en"]],[[6,10,"pl-s"],[7,9,"pl-s"],[29,34,"pl-en"]],[[7,20,"pl-s"],[8,19,"pl-s"],[24,26,"pl-en"],[28,39,"pl-s"],[29,38,"pl-s"],[41,54,"pl-s"],[42,53,"pl-s"]],[[7,13,"pl-s"],[8,12,"pl-s"],[24,33,"pl-s"],[25,32,"pl-s"]],[[7,16,"pl-s"],[8,15,"pl-s"],[24,29,"pl-en"],[31,37,"pl-s"],[32,36,"pl-s"],[39,45,"pl-s"],[40,44,"pl-s"]],[],[[6,20,"pl-s"],[7,19,"pl-s"],[29,34,"pl-en"]],[[7,20,"pl-s"],[8,19,"pl-s"],[24,26,"pl-en"],[28,85,"pl-s"],[29,84,"pl-s"],[87,100,"pl-s"],[88,99,"pl-s"]],[[7,13,"pl-s"],[8,12,"pl-s"],[24,35,"pl-s"],[25,34,"pl-s"]],[[7,16,"pl-s"],[8,15,"pl-s"],[24,29,"pl-en"],[31,37,"pl-s"],[32,36,"pl-s"],[39,45,"pl-s"],[40,44,"pl-s"]],[[7,17,"pl-s"],[8,16,"pl-s"],[24,28,"pl-c1"]],[],[[6,24,"pl-s"],[7,23,"pl-s"],[29,34,"pl-en"]],[[7,20,"pl-s"],[8,19,"pl-s"],[24,26,"pl-en"],[28,69,"pl-s"],[29,68,"pl-s"],[71,84,"pl-s"],[72,83,"pl-s"]],[[7,13,"pl-s"],[8,12,"pl-s"],[24,35,"pl-s"],[25,34,"pl-s"]],[[7,16,"pl-s"],[8,15,"pl-s"],[24,29,"pl-en"],[31,37,"pl-s"],[32,36,"pl-s"],[39,45,"pl-s"],[40,44,"pl-s"]],[[7,17,"pl-s"],[8,16,"pl-s"],[24,28,"pl-c1"]],[],[[6,21,"pl-s"],[7,20,"pl-s"],[29,34,"pl-en"]],[[7,20,"pl-s"],[8,19,"pl-s"],[24,26,"pl-en"],[28,91,"pl-s"],[29,90,"pl-s"],[93,106,"pl-s"],[94,105,"pl-s"]],[[7,13,"pl-s"],[8,12,"pl-s"],[24,35,"pl-s"],[25,34,"pl-s"]],[[7,16,"pl-s"],[8,15,"pl-s"],[24,29,"pl-en"],[31,37,"pl-s"],[32,36,"pl-s"],[39,45,"pl-s"],[40,44,"pl-s"]],[[7,17,"pl-s"],[8,16,"pl-s"],[24,28,"pl-c1"]],[],[[6,25,"pl-s"],[7,24,"pl-s"],[29,34,"pl-en"]],[[7,20,"pl-s"],[8,19,"pl-s"],[24,26,"pl-en"],[28,75,"pl-s"],[29,74,"pl-s"],[77,90,"pl-s"],[78,89,"pl-s"]],[[7,13,"pl-s"],[8,12,"pl-s"],[24,35,"pl-s"],[25,34,"pl-s"]],[[7,16,"pl-s"],[8,15,"pl-s"],[24,29,"pl-en"],[31,37,"pl-s"],[32,36,"pl-s"],[39,45,"pl-s"],[40,44,"pl-s"]],[[7,17,"pl-s"],[8,16,"pl-s"],[24,28,"pl-c1"]],[],[[6,11,"pl-s"],[7,10,"pl-s"],[29,34,"pl-en"]],[[7,20,"pl-s"],[8,19,"pl-s"],[24,26,"pl-en"],[28,40,"pl-s"],[29,39,"pl-s"],[42,55,"pl-s"],[43,54,"pl-s"]],[[7,13,"pl-s"],[8,12,"pl-s"],[24,32,"pl-s"],[25,31,"pl-s"]],[[7,15,"pl-s"],[8,14,"pl-s"],[24,29,"pl-s"],[25,28,"pl-s"]],[[7,16,"pl-s"],[8,15,"pl-s"],[24,29,"pl-en"],[31,37,"pl-s"],[32,36,"pl-s"],[39,45,"pl-s"],[40,44,"pl-s"]],[],[[6,12,"pl-s"],[7,11,"pl-s"],[29,34,"pl-en"]],[[7,20,"pl-s"],[8,19,"pl-s"],[24,26,"pl-en"],[28,41,"pl-s"],[29,40,"pl-s"],[43,56,"pl-s"],[44,55,"pl-s"]],[[7,13,"pl-s"],[8,12,"pl-s"],[24,32,"pl-s"],[25,31,"pl-s"]],[[7,16,"pl-s"],[8,15,"pl-s"],[24,29,"pl-en"],[31,37,"pl-s"],[32,36,"pl-s"],[39,45,"pl-s"],[40,44,"pl-s"]],[],[[6,11,"pl-s"],[7,10,"pl-s"],[29,34,"pl-en"]],[[7,20,"pl-s"],[8,19,"pl-s"],[24,26,"pl-en"],[28,53,"pl-s"],[29,52,"pl-s"],[55,68,"pl-s"],[56,67,"pl-s"]],[[7,13,"pl-s"],[8,12,"pl-s"],[24,32,"pl-s"],[25,31,"pl-s"]],[[7,16,"pl-s"],[8,15,"pl-s"],[24,29,"pl-en"],[31,37,"pl-s"],[32,36,"pl-s"],[39,45,"pl-s"],[40,44,"pl-s"]],[],[],[],[[4,16,"pl-s"],[5,15,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,47,"pl-s"],[27,46,"pl-s"],[49,62,"pl-s"],[50,61,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,29,"pl-s"],[23,28,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[[5,12,"pl-s"],[6,11,"pl-s"],[22,27,"pl-en"]],[[6,12,"pl-s"],[7,11,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[6,18,"pl-s"],[7,17,"pl-s"],[22,27,"pl-en"]],[[7,11,"pl-s"],[8,10,"pl-s"],[19,24,"pl-en"]],[[8,21,"pl-s"],[9,20,"pl-s"],[25,27,"pl-en"],[29,44,"pl-s"],[30,43,"pl-s"],[46,59,"pl-s"],[47,58,"pl-s"]],[[8,14,"pl-s"],[9,13,"pl-s"],[25,34,"pl-s"],[26,33,"pl-s"]],[[8,17,"pl-s"],[9,16,"pl-s"],[25,30,"pl-en"],[32,38,"pl-s"],[33,37,"pl-s"],[40,46,"pl-s"],[41,45,"pl-s"]],[],[[7,13,"pl-s"],[8,12,"pl-s"],[19,24,"pl-en"]],[[8,21,"pl-s"],[9,20,"pl-s"],[25,27,"pl-en"],[29,46,"pl-s"],[30,45,"pl-s"],[48,61,"pl-s"],[49,60,"pl-s"]],[[8,14,"pl-s"],[9,13,"pl-s"],[25,33,"pl-s"],[26,32,"pl-s"]],[[8,17,"pl-s"],[9,16,"pl-s"],[25,30,"pl-en"],[32,38,"pl-s"],[33,37,"pl-s"],[40,46,"pl-s"],[41,45,"pl-s"]],[],[[7,15,"pl-s"],[8,14,"pl-s"],[19,24,"pl-en"]],[[8,21,"pl-s"],[9,20,"pl-s"],[25,27,"pl-en"],[29,60,"pl-s"],[30,59,"pl-s"],[62,75,"pl-s"],[63,74,"pl-s"]],[[8,14,"pl-s"],[9,13,"pl-s"],[25,33,"pl-s"],[26,32,"pl-s"]],[[8,17,"pl-s"],[9,16,"pl-s"],[25,30,"pl-en"],[32,38,"pl-s"],[33,37,"pl-s"],[40,46,"pl-s"],[41,45,"pl-s"]],[],[],[],[],[[4,16,"pl-s"],[5,15,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,69,"pl-s"],[27,68,"pl-s"],[71,84,"pl-s"],[72,83,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,31,"pl-s"],[23,30,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[],[[4,15,"pl-s"],[5,14,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,38,"pl-s"],[27,37,"pl-s"],[40,53,"pl-s"],[41,52,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,29,"pl-s"],[23,28,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[[5,12,"pl-s"],[6,11,"pl-s"],[22,27,"pl-en"]],[[6,12,"pl-s"],[7,11,"pl-s"],[22,30,"pl-s"],[23,29,"pl-s"]],[[6,18,"pl-s"],[7,17,"pl-s"],[22,27,"pl-en"]],[[7,11,"pl-s"],[8,10,"pl-s"],[18,23,"pl-en"]],[[8,21,"pl-s"],[9,20,"pl-s"],[25,27,"pl-en"],[29,39,"pl-s"],[30,38,"pl-s"],[41,54,"pl-s"],[42,53,"pl-s"]],[[8,14,"pl-s"],[9,13,"pl-s"],[25,34,"pl-s"],[26,33,"pl-s"]],[[8,17,"pl-s"],[9,16,"pl-s"],[25,30,"pl-en"],[32,38,"pl-s"],[33,37,"pl-s"],[40,46,"pl-s"],[41,45,"pl-s"]],[[8,18,"pl-s"],[9,17,"pl-s"],[25,29,"pl-c1"]],[],[[7,12,"pl-s"],[8,11,"pl-s"],[18,23,"pl-en"]],[[8,21,"pl-s"],[9,20,"pl-s"],[25,27,"pl-en"],[29,40,"pl-s"],[30,39,"pl-s"],[42,55,"pl-s"],[43,54,"pl-s"]],[[8,14,"pl-s"],[9,13,"pl-s"],[25,33,"pl-s"],[26,32,"pl-s"]],[[8,17,"pl-s"],[9,16,"pl-s"],[25,30,"pl-en"],[32,38,"pl-s"],[33,37,"pl-s"],[40,46,"pl-s"],[41,45,"pl-s"]],[],[[7,14,"pl-s"],[8,13,"pl-s"],[18,23,"pl-en"]],[[8,21,"pl-s"],[9,20,"pl-s"],[25,27,"pl-en"],[29,42,"pl-s"],[30,41,"pl-s"],[44,57,"pl-s"],[45,56,"pl-s"]],[[8,14,"pl-s"],[9,13,"pl-s"],[25,32,"pl-s"],[26,31,"pl-s"]],[[8,17,"pl-s"],[9,16,"pl-s"],[25,30,"pl-en"],[32,38,"pl-s"],[33,37,"pl-s"],[40,46,"pl-s"],[41,45,"pl-s"]],[],[],[],[],[[4,15,"pl-s"],[5,14,"pl-s"],[31,36,"pl-en"]],[[5,18,"pl-s"],[6,17,"pl-s"],[22,24,"pl-en"],[26,46,"pl-s"],[27,45,"pl-s"],[48,61,"pl-s"],[49,60,"pl-s"]],[[5,11,"pl-s"],[6,10,"pl-s"],[22,31,"pl-s"],[23,30,"pl-s"]],[[5,14,"pl-s"],[6,13,"pl-s"],[22,27,"pl-en"],[29,35,"pl-s"],[30,34,"pl-s"],[37,43,"pl-s"],[38,42,"pl-s"]],[[5,15,"pl-s"],[6,14,"pl-s"],[22,26,"pl-c1"]],[],[],[],[],[[2,4,"pl-k"],[7,12,"pl-s1"],[7,8,"pl-c1"],[8,12,"pl-smi"],[14,29,"pl-en"]],[[3,10,"pl-s1"],[3,4,"pl-c1"],[13,18,"pl-s1"],[13,14,"pl-c1"],[14,18,"pl-smi"],[20,51,"pl-en"],[53,60,"pl-s1"],[53,54,"pl-c1"],[62,66,"pl-c1"]],[],[],[[2,8,"pl-k"],[9,14,"pl-s1"],[9,10,"pl-c1"],[10,14,"pl-smi"],[16,44,"pl-en"],[46,53,"pl-s1"],[46,47,"pl-c1"]],[],[],[[1,4,"pl-c"]],[[0,26,"pl-c"]],[[0,3,"pl-c"]],[[0,17,"pl-c"]],[[0,68,"pl-c"]],[[0,17,"pl-c"]],[[0,4,"pl-c"]],[[1,10,"pl-k"],[11,19,"pl-k"],[20,41,"pl-en"],[43,51,"pl-s1"],[43,44,"pl-c1"]],[[2,7,"pl-s1"],[2,3,"pl-c1"],[35,56,"pl-en"],[58,66,"pl-s1"],[58,59,"pl-c1"]],[],[[2,21,"pl-c"]],[[2,7,"pl-s1"],[2,3,"pl-c1"],[8,21,"pl-s"],[9,20,"pl-s"],[25,33,"pl-s1"],[25,26,"pl-c1"],[34,42,"pl-s"],[35,41,"pl-s"]],[],[[2,52,"pl-c"]],[[2,4,"pl-k"],[9,14,"pl-en"],[16,24,"pl-s1"],[16,17,"pl-c1"],[25,41,"pl-s"],[26,40,"pl-s"]],[[3,8,"pl-s1"],[3,4,"pl-c1"],[9,22,"pl-s"],[10,21,"pl-s"],[26,34,"pl-s1"],[26,27,"pl-c1"],[35,51,"pl-s"],[36,50,"pl-s"]],[],[],[[2,4,"pl-k"],[9,14,"pl-en"],[16,24,"pl-s1"],[16,17,"pl-c1"],[25,41,"pl-s"],[26,40,"pl-s"]],[[3,8,"pl-s1"],[3,4,"pl-c1"],[4,8,"pl-smi"],[10,24,"pl-c1"],[27,35,"pl-s1"],[27,28,"pl-c1"],[36,52,"pl-s"],[37,51,"pl-s"]],[[4,8,"pl-k"]],[[3,8,"pl-s1"],[3,4,"pl-c1"],[4,8,"pl-smi"],[10,24,"pl-c1"],[27,32,"pl-en"]],[],[],[[2,44,"pl-c"]],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,37,"pl-s"],[24,36,"pl-s"]],[[3,8,"pl-s1"],[3,4,"pl-c1"],[9,21,"pl-s"],[10,20,"pl-s"],[25,30,"pl-s1"],[25,26,"pl-c1"],[26,30,"pl-smi"],[32,46,"pl-en"],[48,113,"pl-c"]],[[4,9,"pl-s1"],[4,5,"pl-c1"]],[[4,9,"pl-en"]],[[5,10,"pl-s"],[6,9,"pl-s"],[16,31,"pl-s"],[17,30,"pl-s"]],[[5,12,"pl-s"],[6,11,"pl-s"],[16,33,"pl-en"],[35,43,"pl-s1"],[35,36,"pl-c1"],[44,58,"pl-s"],[45,57,"pl-s"]],[],[],[],[],[[2,5,"pl-c"]],[[0,46,"pl-c"]],[[0,32,"pl-c"]],[[0,5,"pl-c"]],[[2,4,"pl-k"],[9,14,"pl-en"],[16,24,"pl-s1"],[16,17,"pl-c1"],[25,43,"pl-s"],[26,42,"pl-s"],[50,58,"pl-en"],[60,68,"pl-s1"],[60,61,"pl-c1"],[69,87,"pl-s"],[70,86,"pl-s"]],[[3,25,"pl-en"],[27,45,"pl-s"],[28,44,"pl-s"],[47,52,"pl-s"],[48,51,"pl-s"],[54,81,"pl-s"],[55,80,"pl-s"]],[[3,10,"pl-k"],[13,21,"pl-s1"],[13,14,"pl-c1"],[22,40,"pl-s"],[23,39,"pl-s"],[42,44,"pl-k"],[45,55,"pl-s1"],[45,46,"pl-c1"]],[[4,6,"pl-k"],[11,16,"pl-en"],[18,28,"pl-s1"],[18,19,"pl-c1"],[29,40,"pl-s"],[30,39,"pl-s"],[49,54,"pl-en"],[56,66,"pl-s1"],[56,57,"pl-c1"],[67,73,"pl-s"],[68,72,"pl-s"]],[[5,13,"pl-k"]],[],[[4,9,"pl-s1"],[4,5,"pl-c1"],[10,22,"pl-s"],[11,21,"pl-s"],[26,31,"pl-s1"],[26,27,"pl-c1"],[27,31,"pl-smi"],[33,47,"pl-en"],[49,114,"pl-c"]],[[5,10,"pl-s1"],[5,6,"pl-c1"]],[[5,10,"pl-en"]],[[6,11,"pl-s"],[7,10,"pl-s"],[17,29,"pl-s"],[18,28,"pl-s"],[32,42,"pl-s1"],[32,33,"pl-c1"],[43,54,"pl-s"],[44,53,"pl-s"]],[[6,13,"pl-s"],[7,12,"pl-s"],[17,27,"pl-s1"],[17,18,"pl-c1"],[28,34,"pl-s"],[29,33,"pl-s"]],[],[],[],[],[],[[2,26,"pl-c"]],[[2,4,"pl-k"],[9,14,"pl-en"],[16,24,"pl-s1"],[16,17,"pl-c1"],[25,37,"pl-s"],[26,36,"pl-s"],[44,52,"pl-en"],[54,62,"pl-s1"],[54,55,"pl-c1"],[63,75,"pl-s"],[64,74,"pl-s"]],[[3,10,"pl-k"],[13,21,"pl-s1"],[13,14,"pl-c1"],[22,34,"pl-s"],[23,33,"pl-s"],[36,38,"pl-k"],[39,49,"pl-s1"],[39,40,"pl-c1"]],[[4,6,"pl-k"],[9,14,"pl-en"],[16,26,"pl-s1"],[16,17,"pl-c1"],[27,38,"pl-s"],[28,37,"pl-s"]],[[5,7,"pl-k"],[10,15,"pl-en"],[17,27,"pl-s1"],[17,18,"pl-c1"],[28,34,"pl-s"],[29,33,"pl-s"]],[[6,11,"pl-s1"],[6,7,"pl-c1"],[12,24,"pl-s"],[13,23,"pl-s"],[28,33,"pl-s1"],[28,29,"pl-c1"],[29,33,"pl-smi"],[35,49,"pl-en"],[51,116,"pl-c"]],[[7,12,"pl-s1"],[7,8,"pl-c1"]],[[7,12,"pl-en"]],[[8,13,"pl-s"],[9,12,"pl-s"],[19,31,"pl-s"],[20,30,"pl-s"],[34,44,"pl-s1"],[34,35,"pl-c1"],[45,56,"pl-s"],[46,55,"pl-s"]],[[8,15,"pl-s"],[9,14,"pl-s"],[19,29,"pl-s1"],[19,20,"pl-c1"],[30,36,"pl-s"],[31,35,"pl-s"]],[],[],[[7,13,"pl-k"],[18,23,"pl-en"],[25,35,"pl-s1"],[25,26,"pl-c1"],[36,43,"pl-s"],[37,42,"pl-s"],[50,58,"pl-en"],[60,70,"pl-s1"],[60,61,"pl-c1"],[71,78,"pl-s"],[72,77,"pl-s"]],[[6,11,"pl-s1"],[6,7,"pl-c1"],[12,24,"pl-s"],[13,23,"pl-s"],[28,33,"pl-s1"],[28,29,"pl-c1"],[29,33,"pl-smi"],[35,49,"pl-en"],[51,116,"pl-c"]],[[7,12,"pl-s1"],[7,8,"pl-c1"]],[[7,12,"pl-en"]],[[8,13,"pl-s"],[9,12,"pl-s"],[21,33,"pl-s"],[22,32,"pl-s"],[36,46,"pl-s1"],[36,37,"pl-c1"],[47,58,"pl-s"],[48,57,"pl-s"]],[[8,17,"pl-s"],[9,16,"pl-s"],[21,25,"pl-s"],[22,24,"pl-s"]],[[8,15,"pl-s"],[9,14,"pl-s"],[21,31,"pl-s1"],[21,22,"pl-c1"],[32,39,"pl-s"],[33,38,"pl-s"]],[],[],[],[],[],[],[],[[2,19,"pl-c"]],[[2,4,"pl-k"],[9,14,"pl-en"],[16,24,"pl-s1"],[16,17,"pl-c1"],[25,30,"pl-s"],[26,29,"pl-s"]],[[3,8,"pl-s1"],[3,4,"pl-c1"],[11,18,"pl-en"],[20,23,"pl-s"],[21,22,"pl-s"],[25,33,"pl-s1"],[25,26,"pl-c1"],[34,39,"pl-s"],[35,38,"pl-s"]],[[3,46,"pl-c"]],[[3,5,"pl-k"],[8,9,"pl-c1"],[12,17,"pl-en"],[19,24,"pl-s1"],[19,20,"pl-c1"]],[[4,9,"pl-s1"],[4,5,"pl-c1"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,28,"pl-s"],[24,27,"pl-s"]],[],[],[[3,8,"pl-s1"],[3,4,"pl-c1"],[9,21,"pl-s"],[10,20,"pl-s"],[25,30,"pl-s1"],[25,26,"pl-c1"],[26,30,"pl-smi"],[32,46,"pl-en"],[48,71,"pl-c"]],[[4,9,"pl-s1"],[4,5,"pl-c1"]],[[4,9,"pl-en"]],[[5,10,"pl-s"],[6,9,"pl-s"],[18,24,"pl-s"],[19,23,"pl-s"]],[[5,12,"pl-s"],[6,11,"pl-s"],[18,23,"pl-s1"],[18,19,"pl-c1"]],[[5,14,"pl-s"],[6,13,"pl-s"],[18,22,"pl-s"],[19,21,"pl-s"]],[],[],[],[],[[2,32,"pl-c"]],[[2,4,"pl-k"],[9,14,"pl-en"],[16,24,"pl-s1"],[16,17,"pl-c1"],[25,43,"pl-s"],[26,42,"pl-s"]],[[3,21,"pl-s1"],[3,4,"pl-c1"],[25,34,"pl-en"],[36,42,"pl-s"],[37,41,"pl-s"],[44,51,"pl-en"],[53,56,"pl-s"],[54,55,"pl-s"],[58,66,"pl-s1"],[58,59,"pl-c1"],[67,85,"pl-s"],[68,84,"pl-s"]],[[3,8,"pl-s1"],[3,4,"pl-c1"],[9,21,"pl-s"],[10,20,"pl-s"],[25,30,"pl-s1"],[25,26,"pl-c1"],[26,30,"pl-smi"],[32,46,"pl-en"],[48,113,"pl-c"]],[[4,9,"pl-s1"],[4,5,"pl-c1"]],[[4,9,"pl-en"]],[[5,10,"pl-s"],[6,9,"pl-s"],[18,37,"pl-s"],[19,36,"pl-s"]],[[5,12,"pl-s"],[6,11,"pl-s"],[18,36,"pl-s1"],[18,19,"pl-c1"]],[[5,14,"pl-s"],[6,13,"pl-s"],[18,22,"pl-s"],[19,21,"pl-s"]],[],[],[],[],[[2,25,"pl-c"]],[[2,4,"pl-k"],[9,14,"pl-en"],[16,24,"pl-s1"],[16,17,"pl-c1"],[25,36,"pl-s"],[26,35,"pl-s"]],[[3,8,"pl-s1"],[3,4,"pl-c1"],[9,21,"pl-s"],[10,20,"pl-s"],[25,30,"pl-s1"],[25,26,"pl-c1"],[26,30,"pl-smi"],[32,46,"pl-en"],[48,71,"pl-c"]],[[4,9,"pl-s1"],[4,5,"pl-c1"]],[[4,9,"pl-en"]],[[5,10,"pl-s"],[6,9,"pl-s"],[16,28,"pl-s"],[17,27,"pl-s"]],[[5,12,"pl-s"],[6,11,"pl-s"],[16,26,"pl-s"],[17,25,"pl-s"],[31,39,"pl-s1"],[31,32,"pl-c1"],[40,51,"pl-s"],[41,50,"pl-s"],[55,63,"pl-s1"],[55,56,"pl-c1"],[64,75,"pl-s"],[65,74,"pl-s"],[79,81,"pl-s"]],[],[],[],[],[[2,18,"pl-c"]],[[2,4,"pl-k"],[9,14,"pl-en"],[16,24,"pl-s1"],[16,17,"pl-c1"],[25,36,"pl-s"],[26,35,"pl-s"],[45,50,"pl-en"],[52,60,"pl-s1"],[52,53,"pl-c1"],[61,72,"pl-s"],[62,71,"pl-s"]],[[3,8,"pl-s1"],[3,4,"pl-c1"],[9,21,"pl-s"],[10,20,"pl-s"],[25,30,"pl-s1"],[25,26,"pl-c1"],[26,30,"pl-smi"],[32,46,"pl-en"],[48,53,"pl-s1"],[48,49,"pl-c1"],[55,86,"pl-en"],[88,96,"pl-s1"],[88,89,"pl-c1"],[103,126,"pl-c"]],[],[],[[2,18,"pl-c"]],[[2,4,"pl-k"],[7,14,"pl-en"],[16,24,"pl-s1"],[16,17,"pl-c1"],[25,36,"pl-s"],[26,35,"pl-s"]],[[3,5,"pl-k"],[8,16,"pl-s1"],[8,9,"pl-c1"],[17,28,"pl-s"],[18,27,"pl-s"]],[[4,9,"pl-s1"],[4,5,"pl-c1"],[10,22,"pl-s"],[11,21,"pl-s"],[26,31,"pl-s1"],[26,27,"pl-c1"],[27,31,"pl-smi"],[33,47,"pl-en"],[49,117,"pl-c"]],[[5,10,"pl-s1"],[5,6,"pl-c1"]],[[5,10,"pl-en"]],[[6,16,"pl-s"],[7,15,"pl-s"],[20,25,"pl-s"],[21,24,"pl-s"]],[[6,11,"pl-en"]],[[7,12,"pl-s"],[8,11,"pl-s"],[20,28,"pl-s"],[21,27,"pl-s"]],[[7,16,"pl-s"],[8,15,"pl-s"],[20,28,"pl-s"],[21,27,"pl-s"]],[],[[6,11,"pl-en"]],[[7,12,"pl-s"],[8,11,"pl-s"],[20,28,"pl-s"],[21,27,"pl-s"]],[[7,16,"pl-s"],[8,15,"pl-s"],[20,24,"pl-s"],[21,23,"pl-s"]],[[7,14,"pl-s"],[8,13,"pl-s"],[20,24,"pl-c1"]],[],[],[],[[5,9,"pl-k"]],[[4,9,"pl-s1"],[4,5,"pl-c1"],[10,22,"pl-s"],[11,21,"pl-s"],[26,31,"pl-s1"],[26,27,"pl-c1"],[27,31,"pl-smi"],[33,47,"pl-en"],[49,117,"pl-c"]],[[5,10,"pl-s1"],[5,6,"pl-c1"]],[[5,10,"pl-en"]],[[6,16,"pl-s"],[7,15,"pl-s"],[20,24,"pl-s"],[21,23,"pl-s"]],[[6,11,"pl-en"]],[[7,12,"pl-s"],[8,11,"pl-s"],[20,28,"pl-s"],[21,27,"pl-s"]],[[7,16,"pl-s"],[8,15,"pl-s"],[20,32,"pl-s"],[21,31,"pl-s"]],[],[[6,11,"pl-en"]],[[7,12,"pl-s"],[8,11,"pl-s"],[20,28,"pl-s"],[21,27,"pl-s"]],[[7,16,"pl-s"],[8,15,"pl-s"],[20,23,"pl-s"],[21,22,"pl-s"]],[[7,14,"pl-s"],[8,13,"pl-s"],[20,24,"pl-c1"]],[],[],[],[],[],[],[[2,42,"pl-c"]],[[2,4,"pl-k"],[9,14,"pl-en"],[16,24,"pl-s1"],[16,17,"pl-c1"],[25,39,"pl-s"],[26,38,"pl-s"]],[[3,8,"pl-s1"],[3,4,"pl-c1"],[9,21,"pl-s"],[10,20,"pl-s"],[25,30,"pl-s1"],[25,26,"pl-c1"],[26,30,"pl-smi"],[32,46,"pl-en"],[48,71,"pl-c"]],[[4,9,"pl-s1"],[4,5,"pl-c1"]],[[4,9,"pl-en"]],[[5,10,"pl-s"],[6,9,"pl-s"],[16,31,"pl-s"],[17,30,"pl-s"]],[[5,12,"pl-s"],[6,11,"pl-s"],[16,24,"pl-s1"],[16,17,"pl-c1"],[25,39,"pl-s"],[26,38,"pl-s"]],[],[],[],[],[[2,32,"pl-c"]],[[2,4,"pl-k"],[7,14,"pl-en"],[16,24,"pl-s1"],[16,17,"pl-c1"],[25,34,"pl-s"],[26,33,"pl-s"]],[[3,15,"pl-s1"],[3,4,"pl-c1"],[18,26,"pl-s1"],[18,19,"pl-c1"],[27,36,"pl-s"],[28,35,"pl-s"],[40,50,"pl-s"],[41,49,"pl-s"],[53,67,"pl-s"],[54,66,"pl-s"]],[[3,15,"pl-s1"],[3,4,"pl-c1"],[18,44,"pl-en"]],[],[[3,74,"pl-c"]],[[3,15,"pl-s1"],[3,4,"pl-c1"],[18,23,"pl-en"],[25,37,"pl-s1"],[25,26,"pl-c1"],[42,47,"pl-en"],[49,50,"pl-c1"],[55,67,"pl-s1"],[55,56,"pl-c1"]],[],[[3,8,"pl-s1"],[3,4,"pl-c1"],[10,22,"pl-s1"],[10,11,"pl-c1"],[28,40,"pl-s1"],[28,29,"pl-c1"]],[],[],[[2,72,"pl-c"]],[[2,4,"pl-k"],[9,14,"pl-en"],[16,24,"pl-s1"],[16,17,"pl-c1"],[25,30,"pl-s"],[26,29,"pl-s"],[39,44,"pl-en"],[46,54,"pl-s1"],[46,47,"pl-c1"],[55,73,"pl-s"],[56,72,"pl-s"]],[[3,8,"pl-s1"],[3,4,"pl-c1"],[9,20,"pl-s"],[10,19,"pl-s"],[24,29,"pl-en"],[31,40,"pl-s"],[32,39,"pl-s"],[42,61,"pl-s"],[43,60,"pl-s"]],[[4,8,"pl-k"]],[[3,8,"pl-s1"],[3,4,"pl-c1"],[9,20,"pl-s"],[10,19,"pl-s"],[24,29,"pl-s1"],[24,25,"pl-c1"],[25,29,"pl-smi"],[31,40,"pl-c1"]],[],[],[[2,39,"pl-c"]],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,32,"pl-s"],[24,31,"pl-s"]],[[3,8,"pl-s1"],[3,4,"pl-c1"],[9,21,"pl-s"],[10,20,"pl-s"],[25,30,"pl-s1"],[25,26,"pl-c1"],[26,30,"pl-smi"],[32,46,"pl-en"],[48,113,"pl-c"]],[[4,9,"pl-s1"],[4,5,"pl-c1"]],[[4,9,"pl-en"]],[[5,10,"pl-s"],[6,9,"pl-s"],[16,26,"pl-s"],[17,25,"pl-s"]],[[5,12,"pl-s"],[6,11,"pl-s"],[16,33,"pl-en"],[35,43,"pl-s1"],[35,36,"pl-c1"],[44,53,"pl-s"],[45,52,"pl-s"]],[],[],[],[],[[2,7,"pl-s1"],[2,3,"pl-c1"],[8,21,"pl-s"],[9,20,"pl-s"],[25,33,"pl-s1"],[25,26,"pl-c1"],[34,46,"pl-s"],[35,45,"pl-s"]],[],[[2,8,"pl-k"],[9,14,"pl-s1"],[9,10,"pl-c1"]],[],[],[[1,4,"pl-c"]],[[0,16,"pl-c"]],[[0,3,"pl-c"]],[[0,40,"pl-c"]],[[0,17,"pl-c"]],[[0,4,"pl-c"]],[[1,10,"pl-k"],[11,19,"pl-k"],[20,31,"pl-en"],[33,44,"pl-s1"],[33,34,"pl-c1"]],[[2,58,"pl-c"]],[[2,4,"pl-k"],[9,14,"pl-en"],[16,21,"pl-s1"],[16,17,"pl-c1"],[17,21,"pl-smi"],[23,37,"pl-c1"]],[[3,13,"pl-en"],[15,28,"pl-s"],[16,27,"pl-s"],[30,35,"pl-en"],[37,42,"pl-s1"],[37,38,"pl-c1"],[38,42,"pl-smi"],[44,80,"pl-s"],[45,79,"pl-s"]],[],[],[[2,9,"pl-s1"],[2,3,"pl-c1"],[12,18,"pl-smi"],[20,31,"pl-en"],[33,44,"pl-s1"],[33,34,"pl-c1"]],[],[[2,61,"pl-c"]],[[2,4,"pl-k"],[9,14,"pl-en"],[16,21,"pl-s1"],[16,17,"pl-c1"],[17,21,"pl-smi"],[23,37,"pl-c1"]],[[3,16,"pl-en"],[18,31,"pl-s"],[19,30,"pl-s"],[33,38,"pl-en"],[40,45,"pl-s1"],[40,41,"pl-c1"],[41,45,"pl-smi"],[47,83,"pl-s"],[48,82,"pl-s"]],[],[[3,8,"pl-s1"],[3,4,"pl-c1"],[4,8,"pl-smi"],[10,24,"pl-c1"],[27,32,"pl-en"]],[],[],[[2,8,"pl-k"],[9,16,"pl-s1"],[9,10,"pl-c1"]],[],[],[[1,4,"pl-c"]],[[0,56,"pl-c"]],[[0,3,"pl-c"]],[[0,17,"pl-c"]],[[0,4,"pl-c"]],[[1,7,"pl-k"],[8,16,"pl-k"],[17,38,"pl-en"]],[[2,9,"pl-s1"],[2,3,"pl-c1"],[12,18,"pl-smi"],[20,41,"pl-en"]],[],[],[[3,10,"pl-s1"],[3,4,"pl-c1"],[11,21,"pl-s"],[12,20,"pl-s"]],[[3,10,"pl-s1"],[3,4,"pl-c1"],[11,17,"pl-s"],[12,16,"pl-s"]],[[3,10,"pl-s1"],[3,4,"pl-c1"],[11,21,"pl-s"],[12,20,"pl-s"]],[[3,10,"pl-s1"],[3,4,"pl-c1"],[11,21,"pl-s"],[12,20,"pl-s"]],[[3,10,"pl-s1"],[3,4,"pl-c1"],[11,16,"pl-s"],[12,15,"pl-s"]],[[3,10,"pl-s1"],[3,4,"pl-c1"],[11,27,"pl-s"],[12,26,"pl-s"]],[[3,10,"pl-s1"],[3,4,"pl-c1"],[11,22,"pl-s"],[12,21,"pl-s"]],[[3,10,"pl-s1"],[3,4,"pl-c1"],[11,27,"pl-s"],[12,26,"pl-s"]],[],[],[[2,9,"pl-s1"],[2,3,"pl-c1"],[10,24,"pl-s"],[11,23,"pl-s"],[28,33,"pl-en"]],[[3,16,"pl-s"],[4,15,"pl-s"],[26,28,"pl-en"],[30,89,"pl-s"],[31,88,"pl-s"],[91,104,"pl-s"],[92,103,"pl-s"]],[[3,9,"pl-s"],[4,8,"pl-s"],[26,34,"pl-s"],[27,33,"pl-s"]],[[3,9,"pl-s"],[4,8,"pl-s"],[26,36,"pl-en"],[38,73,"pl-en"]],[[3,22,"pl-s"],[4,21,"pl-s"],[26,47,"pl-s"],[27,46,"pl-s"]],[[3,22,"pl-s"],[4,21,"pl-s"],[26,53,"pl-s"],[27,52,"pl-s"]],[],[],[[2,9,"pl-s1"],[2,3,"pl-c1"],[10,21,"pl-s"],[11,20,"pl-s"],[25,30,"pl-en"]],[[3,16,"pl-s"],[4,15,"pl-s"],[26,28,"pl-en"],[30,83,"pl-s"],[31,82,"pl-s"],[85,98,"pl-s"],[86,97,"pl-s"]],[[3,9,"pl-s"],[4,8,"pl-s"],[26,35,"pl-s"],[27,34,"pl-s"]],[[3,22,"pl-s"],[4,21,"pl-s"],[26,45,"pl-s"],[27,44,"pl-s"]],[[3,22,"pl-s"],[4,21,"pl-s"],[26,53,"pl-s"],[27,52,"pl-s"]],[],[],[[2,9,"pl-s1"],[2,3,"pl-c1"],[10,22,"pl-s"],[11,21,"pl-s"],[26,31,"pl-en"]],[[3,16,"pl-s"],[4,15,"pl-s"],[20,22,"pl-en"],[24,81,"pl-s"],[25,80,"pl-s"],[83,96,"pl-s"],[84,95,"pl-s"]],[[3,9,"pl-s"],[4,8,"pl-s"],[20,27,"pl-s"],[21,26,"pl-s"]],[[3,10,"pl-s"],[4,9,"pl-s"],[20,25,"pl-en"]],[[4,10,"pl-s"],[5,9,"pl-s"],[20,28,"pl-s"],[21,27,"pl-s"]],[[4,16,"pl-s"],[5,15,"pl-s"],[20,25,"pl-en"]],[[5,16,"pl-s"],[6,15,"pl-s"],[20,25,"pl-en"]],[[6,12,"pl-s"],[7,11,"pl-s"],[23,31,"pl-s"],[24,30,"pl-s"]],[[6,19,"pl-s"],[7,18,"pl-s"],[23,25,"pl-en"],[27,44,"pl-s"],[28,43,"pl-s"],[46,59,"pl-s"],[47,58,"pl-s"]],[],[[5,11,"pl-s"],[6,10,"pl-s"],[20,25,"pl-en"]],[[6,12,"pl-s"],[7,11,"pl-s"],[23,31,"pl-s"],[24,30,"pl-s"]],[[6,19,"pl-s"],[7,18,"pl-s"],[23,25,"pl-en"],[27,44,"pl-s"],[28,43,"pl-s"],[46,59,"pl-s"],[47,58,"pl-s"]],[],[[5,12,"pl-s"],[6,11,"pl-s"],[20,25,"pl-en"]],[[6,12,"pl-s"],[7,11,"pl-s"],[23,30,"pl-s"],[24,29,"pl-s"]],[[6,19,"pl-s"],[7,18,"pl-s"],[23,25,"pl-en"],[27,45,"pl-s"],[28,44,"pl-s"],[47,60,"pl-s"],[48,59,"pl-s"]],[],[],[],[],[],[[2,9,"pl-s1"],[2,3,"pl-c1"],[10,19,"pl-s"],[11,18,"pl-s"],[23,28,"pl-en"]],[[3,16,"pl-s"],[4,15,"pl-s"],[26,28,"pl-en"],[30,79,"pl-s"],[31,78,"pl-s"],[81,94,"pl-s"],[82,93,"pl-s"]],[[3,9,"pl-s"],[4,8,"pl-s"],[26,35,"pl-s"],[27,34,"pl-s"]],[[3,22,"pl-s"],[4,21,"pl-s"],[26,49,"pl-s"],[27,48,"pl-s"]],[[3,22,"pl-s"],[4,21,"pl-s"],[26,53,"pl-s"],[27,52,"pl-s"]],[],[],[[2,9,"pl-s1"],[2,3,"pl-c1"],[10,24,"pl-s"],[11,23,"pl-s"],[28,33,"pl-en"]],[[3,16,"pl-s"],[4,15,"pl-s"],[26,28,"pl-en"],[30,84,"pl-s"],[31,83,"pl-s"],[86,99,"pl-s"],[87,98,"pl-s"]],[[3,9,"pl-s"],[4,8,"pl-s"],[26,35,"pl-s"],[27,34,"pl-s"]],[[3,22,"pl-s"],[4,21,"pl-s"],[26,49,"pl-s"],[27,48,"pl-s"]],[[3,22,"pl-s"],[4,21,"pl-s"],[26,53,"pl-s"],[27,52,"pl-s"]],[],[],[[2,9,"pl-s1"],[2,3,"pl-c1"],[10,26,"pl-s"],[11,25,"pl-s"],[30,35,"pl-en"]],[[3,16,"pl-s"],[4,15,"pl-s"],[26,28,"pl-en"],[30,96,"pl-s"],[31,95,"pl-s"],[98,111,"pl-s"],[99,110,"pl-s"]],[[3,9,"pl-s"],[4,8,"pl-s"],[26,33,"pl-s"],[27,32,"pl-s"]],[[3,10,"pl-s"],[4,9,"pl-s"],[26,31,"pl-en"]],[[4,10,"pl-s"],[5,9,"pl-s"],[14,22,"pl-s"],[15,21,"pl-s"]],[[4,10,"pl-s"],[5,9,"pl-s"],[14,25,"pl-en"],[27,32,"pl-en"],[34,39,"pl-s"],[35,38,"pl-s"],[41,49,"pl-s"],[42,48,"pl-s"],[51,58,"pl-s"],[52,57,"pl-s"],[62,72,"pl-en"],[74,91,"pl-en"]],[],[[3,22,"pl-s"],[4,21,"pl-s"],[26,41,"pl-s"],[27,40,"pl-s"]],[[3,22,"pl-s"],[4,21,"pl-s"],[26,53,"pl-s"],[27,52,"pl-s"]],[],[],[[2,9,"pl-s1"],[2,3,"pl-c1"],[10,26,"pl-s"],[11,25,"pl-s"],[30,35,"pl-en"]],[[3,16,"pl-s"],[4,15,"pl-s"],[26,28,"pl-en"],[30,100,"pl-s"],[31,99,"pl-s"],[102,115,"pl-s"],[103,114,"pl-s"]],[[3,9,"pl-s"],[4,8,"pl-s"],[26,33,"pl-s"],[27,32,"pl-s"]],[[3,10,"pl-s"],[4,9,"pl-s"],[26,31,"pl-en"]],[[4,10,"pl-s"],[5,9,"pl-s"],[14,22,"pl-s"],[15,21,"pl-s"]],[[4,10,"pl-s"],[5,9,"pl-s"],[14,25,"pl-en"],[27,32,"pl-en"],[34,42,"pl-s"],[35,41,"pl-s"],[44,51,"pl-s"],[45,50,"pl-s"],[55,65,"pl-en"],[67,84,"pl-en"]],[],[[3,22,"pl-s"],[4,21,"pl-s"],[26,41,"pl-s"],[27,40,"pl-s"]],[[3,22,"pl-s"],[4,21,"pl-s"],[26,53,"pl-s"],[27,52,"pl-s"]],[],[],[[2,8,"pl-k"],[9,16,"pl-s1"],[9,10,"pl-c1"]],[],[],[[1,4,"pl-c"]],[[0,54,"pl-c"]],[[0,3,"pl-c"]],[[0,49,"pl-c"]],[[0,52,"pl-c"]],[[0,4,"pl-c"]],[[1,8,"pl-k"],[9,17,"pl-k"],[18,53,"pl-en"],[55,63,"pl-s1"],[55,56,"pl-c1"]],[[2,16,"pl-s1"],[2,3,"pl-c1"],[19,20,"pl-c1"]],[],[[2,4,"pl-k"],[9,17,"pl-s1"],[9,10,"pl-c1"]],[[3,9,"pl-k"],[10,24,"pl-s1"],[10,11,"pl-c1"]],[],[],[[2,13,"pl-s1"],[2,3,"pl-c1"],[16,29,"pl-en"],[31,43,"pl-en"],[45,53,"pl-s1"],[45,46,"pl-c1"],[55,69,"pl-en"],[73,111,"pl-s"],[74,110,"pl-s"],[115,126,"pl-s"],[116,125,"pl-s"]],[],[[2,59,"pl-c"]],[[2,22,"pl-s1"],[2,3,"pl-c1"],[25,34,"pl-en"],[36,52,"pl-s"],[37,51,"pl-s"],[54,62,"pl-s1"],[54,55,"pl-c1"],[64,76,"pl-en"]],[],[[2,34,"pl-s1"],[2,3,"pl-c1"],[37,50,"pl-en"],[52,70,"pl-en"],[72,83,"pl-s1"],[72,73,"pl-c1"]],[],[[2,9,"pl-k"],[12,32,"pl-s1"],[12,13,"pl-c1"],[33,35,"pl-k"],[36,55,"pl-s1"],[36,37,"pl-c1"]],[[3,26,"pl-s1"],[3,4,"pl-c1"],[29,41,"pl-en"],[43,62,"pl-s1"],[43,44,"pl-c1"],[64,78,"pl-en"],[82,114,"pl-s1"],[82,83,"pl-c1"],[118,179,"pl-c"]],[[3,5,"pl-k"],[8,13,"pl-c1"],[18,41,"pl-s1"],[18,19,"pl-c1"]],[[4,83,"pl-c"]],[[11,43,"pl-s1"],[11,12,"pl-c1"],[45,68,"pl-s1"],[45,46,"pl-c1"]],[[4,12,"pl-k"]],[],[[3,22,"pl-s1"],[3,4,"pl-c1"],[24,30,"pl-en"],[32,36,"pl-c1"]],[[3,17,"pl-s1"],[3,4,"pl-c1"]],[],[],[[2,8,"pl-k"],[9,23,"pl-s1"],[9,10,"pl-c1"]],[],[],[[1,4,"pl-c"]],[[0,48,"pl-c"]],[[0,3,"pl-c"]],[[0,67,"pl-c"]],[[0,37,"pl-c"]],[[0,4,"pl-c"]],[[1,7,"pl-k"],[8,16,"pl-k"],[17,25,"pl-en"],[27,35,"pl-s1"],[27,28,"pl-c1"]],[[2,13,"pl-s1"],[2,3,"pl-c1"],[17,20,"pl-smi"],[22,30,"pl-s1"],[22,23,"pl-c1"],[31,43,"pl-s"],[32,42,"pl-s"]],[],[[2,4,"pl-k"],[7,16,"pl-s"],[8,15,"pl-s"],[21,34,"pl-en"],[36,47,"pl-s1"],[36,37,"pl-c1"]],[[3,9,"pl-k"],[10,13,"pl-k"],[14,22,"pl-v"],[24,61,"pl-s"],[25,60,"pl-s"],[63,65,"pl-en"],[67,88,"pl-s"],[68,87,"pl-s"],[90,103,"pl-s"],[91,102,"pl-s"],[107,112,"pl-en"],[114,122,"pl-s"],[115,121,"pl-s"],[126,129,"pl-c1"]],[],[],[[2,26,"pl-en"],[28,54,"pl-s"],[29,53,"pl-s"],[56,58,"pl-c1"]],[[2,19,"pl-en"],[21,22,"pl-c1"]],[],[[2,11,"pl-s1"],[2,3,"pl-c1"],[23,28,"pl-en"]],[[2,10,"pl-s1"],[2,3,"pl-c1"],[23,37,"pl-en"],[39,50,"pl-s1"],[39,40,"pl-c1"]],[[2,17,"pl-s1"],[2,3,"pl-c1"],[23,28,"pl-en"],[30,38,"pl-s1"],[30,31,"pl-c1"],[39,55,"pl-s"],[40,54,"pl-s"],[61,69,"pl-s1"],[61,62,"pl-c1"],[70,86,"pl-s"],[71,85,"pl-s"],[90,95,"pl-en"]],[[2,12,"pl-s1"],[2,3,"pl-c1"],[23,28,"pl-en"],[30,38,"pl-s1"],[30,31,"pl-c1"],[39,50,"pl-s"],[40,49,"pl-s"],[56,64,"pl-s1"],[56,57,"pl-c1"],[65,76,"pl-s"],[66,75,"pl-s"],[80,85,"pl-en"]],[[2,13,"pl-s1"],[2,3,"pl-c1"],[23,31,"pl-s1"],[23,24,"pl-c1"],[33,47,"pl-en"]],[[2,11,"pl-s1"],[2,3,"pl-c1"],[12,19,"pl-s"],[13,18,"pl-s"],[23,34,"pl-s1"],[23,24,"pl-c1"],[36,65,"pl-en"],[67,75,"pl-s1"],[67,68,"pl-c1"],[88,100,"pl-en"],[102,128,"pl-s"],[103,127,"pl-s"],[132,147,"pl-s1"],[132,133,"pl-c1"],[149,159,"pl-s1"],[149,150,"pl-c1"]],[],[[2,4,"pl-k"],[7,12,"pl-en"],[14,22,"pl-s1"],[14,15,"pl-c1"],[23,31,"pl-s"],[24,30,"pl-s"],[38,46,"pl-s1"],[38,39,"pl-c1"],[47,55,"pl-s"],[48,54,"pl-s"]],[[3,17,"pl-s1"],[3,4,"pl-c1"],[32,37,"pl-s1"],[32,33,"pl-c1"],[33,37,"pl-smi"],[39,74,"pl-en"],[76,84,"pl-s1"],[76,77,"pl-c1"]],[[3,12,"pl-s1"],[3,4,"pl-c1"],[13,28,"pl-s"],[14,27,"pl-s"],[32,46,"pl-s1"],[32,33,"pl-c1"]],[],[],[[2,13,"pl-s1"],[2,3,"pl-c1"],[15,42,"pl-en"],[44,52,"pl-s1"],[44,45,"pl-c1"],[54,60,"pl-en"]],[],[[2,8,"pl-k"],[9,29,"pl-en"],[31,40,"pl-s1"],[31,32,"pl-c1"]],[],[],[[1,4,"pl-c"]],[[0,54,"pl-c"]],[[0,3,"pl-c"]],[[0,59,"pl-c"]],[[0,18,"pl-c"]],[[0,4,"pl-c"]],[[1,7,"pl-k"],[8,16,"pl-k"],[17,51,"pl-en"],[53,59,"pl-s1"],[53,54,"pl-c1"]],[[2,4,"pl-k"],[9,14,"pl-en"],[16,21,"pl-s1"],[16,17,"pl-c1"],[17,21,"pl-smi"],[23,37,"pl-c1"],[43,51,"pl-en"],[53,58,"pl-s1"],[53,54,"pl-c1"],[54,58,"pl-smi"],[60,74,"pl-c1"]],[[3,9,"pl-k"],[10,15,"pl-s1"],[10,11,"pl-c1"]],[],[[3,10,"pl-s1"],[3,4,"pl-c1"],[13,18,"pl-en"]],[[3,10,"pl-k"],[13,18,"pl-s1"],[13,14,"pl-c1"],[14,18,"pl-smi"],[20,34,"pl-c1"],[35,37,"pl-k"],[38,56,"pl-s1"],[38,39,"pl-c1"]],[[4,11,"pl-s1"],[4,5,"pl-c1"],[16,21,"pl-s1"],[16,17,"pl-c1"],[23,30,"pl-en"],[32,36,"pl-s"],[33,35,"pl-s"],[38,56,"pl-s1"],[38,39,"pl-c1"]],[],[],[[3,10,"pl-s1"],[3,4,"pl-c1"],[13,17,"pl-en"],[19,23,"pl-s"],[20,22,"pl-s"],[25,32,"pl-s1"],[25,26,"pl-c1"]],[[3,9,"pl-k"],[10,16,"pl-s1"],[10,11,"pl-c1"],[19,69,"pl-s"],[20,25,"pl-s"],[25,30,"pl-s1"],[25,26,"pl-c1"],[32,37,"pl-c1"],[37,59,"pl-s"],[59,66,"pl-s1"],[59,60,"pl-c1"],[66,68,"pl-s"]],[],[],[[2,8,"pl-k"],[9,15,"pl-s1"],[9,10,"pl-c1"]],[],[]],"colorizedLines":null,"csv":null,"csvError":null,"copilotSWEAgentEnabled":false,"dependabotInfo":{"showConfigurationBanner":false,"configFilePath":null,"networkDependabotPath":"/woocommerce/woocommerce/network/updates","dismissConfigurationNoticePath":"/settings/dismiss-notice/dependabot_configuration_notice","configurationNoticeDismissed":null},"displayName":"class-wc-rest-product-variations-controller.php","displayUrl":"https://github.com/woocommerce/woocommerce/blob/trunk/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php?raw=true","headerInfo":{"blobSize":"45 KB","deleteTooltip":"You must be signed in to make or propose changes","editTooltip":"You must be signed in to make or propose changes","ghDesktopPath":"https://desktop.github.com","isGitLfs":false,"onBranch":true,"shortPath":"3533f85","siteNavLoginPath":"/login?return_to=https%3A%2F%2Fgithub.com%2Fwoocommerce%2Fwoocommerce%2Fblob%2Ftrunk%2Fplugins%2Fwoocommerce%2Fincludes%2Frest-api%2FControllers%2FVersion3%2Fclass-wc-rest-product-variations-controller.php","isCSV":false,"isRichtext":false,"toc":null,"lineInfo":{"truncatedLoc":"1317","truncatedSloc":"1191"},"mode":"file"},"image":false,"isCodeownersFile":null,"isPlain":false,"isValidLegacyIssueTemplate":false,"issueTemplate":null,"discussionTemplate":null,"language":"PHP","languageID":272,"large":false,"planSupportInfo":{"repoIsFork":null,"repoOwnedByCurrentUser":null,"requestFullPath":"/woocommerce/woocommerce/blob/trunk/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php","showFreeOrgGatedFeatureMessage":null,"showPlanSupportBanner":null,"upgradeDataAttributes":null,"upgradePath":null},"publishBannersInfo":{"dismissActionNoticePath":"/settings/dismiss-notice/publish_action_from_dockerfile","releasePath":"/woocommerce/woocommerce/releases/new?marketplace=true","showPublishActionBanner":false},"rawBlobUrl":"https://github.com/woocommerce/woocommerce/raw/refs/heads/trunk/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php","renderImageOrRaw":false,"richText":null,"renderedFileInfo":null,"shortPath":null,"symbolsEnabled":true,"tabSize":4,"topBannersInfo":{"overridingGlobalFundingFile":false,"globalPreferredFundingPath":null,"showInvalidCitationWarning":false,"citationHelpUrl":"https://docs.github.com/github/creating-cloning-and-archiving-repositories/creating-a-repository-on-github/about-citation-files","actionsOnboardingTip":null},"truncated":false,"viewable":true,"workflowRedirectUrl":null,"symbols":{"timed_out":false,"not_analyzed":false,"symbols":[{"name":"WC_REST_Product_Variations_Controller","kind":"class","ident_start":668,"ident_end":705,"extent_start":662,"extent_end":46064,"fully_qualified_name":"WC_REST_Product_Variations_Controller","ident_utf16":{"start":{"line_number":26,"utf16_col":6},"end":{"line_number":26,"utf16_col":43}},"extent_utf16":{"start":{"line_number":26,"utf16_col":0},"end":{"line_number":1316,"utf16_col":1}}},{"name":"namespace","kind":"field","ident_start":859,"ident_end":868,"extent_start":848,"extent_end":879,"fully_qualified_name":"WC_REST_Product_Variations_Controller.namespace","ident_utf16":{"start":{"line_number":34,"utf16_col":12},"end":{"line_number":34,"utf16_col":21}},"extent_utf16":{"start":{"line_number":34,"utf16_col":1},"end":{"line_number":34,"utf16_col":32}}},{"name":"exclude_status","kind":"field","ident_start":968,"ident_end":982,"extent_start":959,"extent_end":993,"fully_qualified_name":"WC_REST_Product_Variations_Controller.exclude_status","ident_utf16":{"start":{"line_number":41,"utf16_col":10},"end":{"line_number":41,"utf16_col":24}},"extent_utf16":{"start":{"line_number":41,"utf16_col":1},"end":{"line_number":41,"utf16_col":35}}},{"name":"register_routes","kind":"method","ident_start":1060,"ident_end":1075,"extent_start":1044,"extent_end":2185,"fully_qualified_name":"WC_REST_Product_Variations_Controller.register_routes","ident_utf16":{"start":{"line_number":46,"utf16_col":17},"end":{"line_number":46,"utf16_col":32}},"extent_utf16":{"start":{"line_number":46,"utf16_col":1},"end":{"line_number":77,"utf16_col":2}}},{"name":"get_downloads","kind":"method","ident_start":2442,"ident_end":2455,"extent_start":2423,"extent_end":2804,"fully_qualified_name":"WC_REST_Product_Variations_Controller.get_downloads","ident_utf16":{"start":{"line_number":87,"utf16_col":20},"end":{"line_number":87,"utf16_col":33}},"extent_utf16":{"start":{"line_number":87,"utf16_col":1},"end":{"line_number":101,"utf16_col":2}}},{"name":"prepare_object_for_response","kind":"method","ident_start":3021,"ident_end":3048,"extent_start":3005,"extent_end":7194,"fully_qualified_name":"WC_REST_Product_Variations_Controller.prepare_object_for_response","ident_utf16":{"start":{"line_number":110,"utf16_col":17},"end":{"line_number":110,"utf16_col":44}},"extent_utf16":{"start":{"line_number":110,"utf16_col":1},"end":{"line_number":185,"utf16_col":2}}},{"name":"prepare_object_for_database","kind":"method","ident_start":7432,"ident_end":7459,"extent_start":7413,"extent_end":14568,"fully_qualified_name":"WC_REST_Product_Variations_Controller.prepare_object_for_database","ident_utf16":{"start":{"line_number":194,"utf16_col":20},"end":{"line_number":194,"utf16_col":47}},"extent_utf16":{"start":{"line_number":194,"utf16_col":1},"end":{"line_number":413,"utf16_col":2}}},{"name":"get_image","kind":"method","ident_start":14809,"ident_end":14818,"extent_start":14790,"extent_end":15921,"fully_qualified_name":"WC_REST_Product_Variations_Controller.get_image","ident_utf16":{"start":{"line_number":422,"utf16_col":20},"end":{"line_number":422,"utf16_col":29}},"extent_utf16":{"start":{"line_number":422,"utf16_col":1},"end":{"line_number":450,"utf16_col":2}}},{"name":"set_variation_image","kind":"method","ident_start":16185,"ident_end":16204,"extent_start":16166,"extent_end":17947,"fully_qualified_name":"WC_REST_Product_Variations_Controller.set_variation_image","ident_utf16":{"start":{"line_number":460,"utf16_col":20},"end":{"line_number":460,"utf16_col":39}},"extent_utf16":{"start":{"line_number":460,"utf16_col":1},"end":{"line_number":512,"utf16_col":2}}},{"name":"get_item_schema","kind":"method","ident_start":18057,"ident_end":18072,"extent_start":18041,"extent_end":32914,"fully_qualified_name":"WC_REST_Product_Variations_Controller.get_item_schema","ident_utf16":{"start":{"line_number":519,"utf16_col":17},"end":{"line_number":519,"utf16_col":32}},"extent_utf16":{"start":{"line_number":519,"utf16_col":1},"end":{"line_number":897,"utf16_col":2}}},{"name":"prepare_objects_query","kind":"method","ident_start":33082,"ident_end":33103,"extent_start":33063,"extent_end":39062,"fully_qualified_name":"WC_REST_Product_Variations_Controller.prepare_objects_query","ident_utf16":{"start":{"line_number":906,"utf16_col":20},"end":{"line_number":906,"utf16_col":41}},"extent_utf16":{"start":{"line_number":906,"utf16_col":1},"end":{"line_number":1107,"utf16_col":2}}},{"name":"get_objects","kind":"method","ident_start":39174,"ident_end":39185,"extent_start":39155,"extent_end":39703,"fully_qualified_name":"WC_REST_Product_Variations_Controller.get_objects","ident_utf16":{"start":{"line_number":1115,"utf16_col":20},"end":{"line_number":1115,"utf16_col":31}},"extent_utf16":{"start":{"line_number":1115,"utf16_col":1},"end":{"line_number":1131,"utf16_col":2}}},{"name":"get_collection_params","kind":"method","ident_start":39811,"ident_end":39832,"extent_start":39795,"extent_end":42885,"fully_qualified_name":"WC_REST_Product_Variations_Controller.get_collection_params","ident_utf16":{"start":{"line_number":1138,"utf16_col":17},"end":{"line_number":1138,"utf16_col":38}},"extent_utf16":{"start":{"line_number":1138,"utf16_col":1},"end":{"line_number":1226,"utf16_col":2}}},{"name":"delete_unmatched_product_variations","kind":"method","ident_start":43077,"ident_end":43112,"extent_start":43060,"extent_end":44124,"fully_qualified_name":"WC_REST_Product_Variations_Controller.delete_unmatched_product_variations","ident_utf16":{"start":{"line_number":1234,"utf16_col":18},"end":{"line_number":1234,"utf16_col":53}},"extent_utf16":{"start":{"line_number":1234,"utf16_col":1},"end":{"line_number":1260,"utf16_col":2}}},{"name":"generate","kind":"method","ident_start":44312,"ident_end":44320,"extent_start":44296,"extent_end":45469,"fully_qualified_name":"WC_REST_Product_Variations_Controller.generate","ident_utf16":{"start":{"line_number":1268,"utf16_col":17},"end":{"line_number":1268,"utf16_col":25}},"extent_utf16":{"start":{"line_number":1268,"utf16_col":1},"end":{"line_number":1293,"utf16_col":2}}},{"name":"exclude_product_variation_statuses","kind":"method","ident_start":45636,"ident_end":45670,"extent_start":45620,"extent_end":46062,"fully_qualified_name":"WC_REST_Product_Variations_Controller.exclude_product_variation_statuses","ident_utf16":{"start":{"line_number":1301,"utf16_col":17},"end":{"line_number":1301,"utf16_col":51}},"extent_utf16":{"start":{"line_number":1301,"utf16_col":1},"end":{"line_number":1315,"utf16_col":2}}}]}},"copilotInfo":null,"copilotAccessAllowed":false,"copilotSpacesEnabled":false,"modelsAccessAllowed":false,"modelsRepoIntegrationEnabled":false,"isMarketplaceEnabled":true,"csrf_tokens":{"/woocommerce/woocommerce/branches":{"post":"MHJwud0VOgWwVhluI05cLLyeTQCW17YobuG_xQWglJesn9gzMD7fatf5_3sFLBkPRhFfc2JEzwnE5IwEme5rHg"},"/repos/preferences":{"post":"edQQlM3BXA2IbzWQSGGjnY9tVev71ia_0wtIbk9fPPTKTf1FWxrcSWgrHXHVsvtc5WfHFtVoNR9e0ji7Bo2F-A"}}},"title":"woocommerce/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-product-variations-controller.php at trunk · woocommerce/woocommerce","appPayload":{"helpUrl":"https://docs.github.com","findFileWorkerPath":"/assets-cdn/worker/find-file-worker-0cea8c6113ab.js","findInFileWorkerPath":"/assets-cdn/worker/find-in-file-worker-6dff47e16b7f.js","githubDevUrl":null,"enabled_features":{"code_nav_ui_events":false,"react_blob_overlay":false,"accessible_code_button":true}}}</script>
  <div data-target="react-app.reactRoot"></div>
</react-app>
</turbo-frame>



  </div>

</turbo-frame>

    </main>
  </div>

  </div>

          <footer class="footer pt-7 pb-6 f6 color-fg-muted color-border-subtle p-responsive" role="contentinfo" >
  <h2 class='sr-only'>Footer</h2>

  


  <div class="d-flex flex-justify-center flex-items-center flex-column-reverse flex-lg-row flex-wrap flex-lg-nowrap">
    <div class="d-flex flex-items-center flex-shrink-0 mx-2">
      <a aria-label="GitHub Homepage" class="footer-octicon mr-2" href="https://github.com">
        <svg aria-hidden="true" height="24" viewBox="0 0 24 24" version="1.1" width="24" data-view-component="true" class="octicon octicon-mark-github">
    <path d="M12 1C5.923 1 1 5.923 1 12c0 4.867 3.149 8.979 7.521 10.436.55.096.756-.233.756-.522 0-.262-.013-1.128-.013-2.049-2.764.509-3.479-.674-3.699-1.292-.124-.317-.66-1.293-1.127-1.554-.385-.207-.936-.715-.014-.729.866-.014 1.485.797 1.691 1.128.99 1.663 2.571 1.196 3.204.907.096-.715.385-1.196.701-1.471-2.448-.275-5.005-1.224-5.005-5.432 0-1.196.426-2.186 1.128-2.956-.111-.275-.496-1.402.11-2.915 0 0 .921-.288 3.024 1.128a10.193 10.193 0 0 1 2.75-.371c.936 0 1.871.123 2.75.371 2.104-1.43 3.025-1.128 3.025-1.128.605 1.513.221 2.64.111 2.915.701.77 1.127 1.747 1.127 2.956 0 4.222-2.571 5.157-5.019 5.432.399.344.743 1.004.743 2.035 0 1.471-.014 2.654-.014 3.025 0 .289.206.632.756.522C19.851 20.979 23 16.854 23 12c0-6.077-4.922-11-11-11Z"></path>
</svg>
</a>
      <span>
        &copy; 2025 GitHub,&nbsp;Inc.
      </span>
    </div>

    <nav aria-label="Footer">
      <h3 class="sr-only" id="sr-footer-heading">Footer navigation</h3>

      <ul class="list-style-none d-flex flex-justify-center flex-wrap mb-2 mb-lg-0" aria-labelledby="sr-footer-heading">

          <li class="mx-2">
            <a data-analytics-event="{&quot;category&quot;:&quot;Footer&quot;,&quot;action&quot;:&quot;go to Terms&quot;,&quot;label&quot;:&quot;text:terms&quot;}" href="https://docs.github.com/site-policy/github-terms/github-terms-of-service" data-view-component="true" class="Link--secondary Link">Terms</a>
          </li>

          <li class="mx-2">
            <a data-analytics-event="{&quot;category&quot;:&quot;Footer&quot;,&quot;action&quot;:&quot;go to privacy&quot;,&quot;label&quot;:&quot;text:privacy&quot;}" href="https://docs.github.com/site-policy/privacy-policies/github-privacy-statement" data-view-component="true" class="Link--secondary Link">Privacy</a>
          </li>

          <li class="mx-2">
            <a data-analytics-event="{&quot;category&quot;:&quot;Footer&quot;,&quot;action&quot;:&quot;go to security&quot;,&quot;label&quot;:&quot;text:security&quot;}" href="https://github.com/security" data-view-component="true" class="Link--secondary Link">Security</a>
          </li>

          <li class="mx-2">
            <a data-analytics-event="{&quot;category&quot;:&quot;Footer&quot;,&quot;action&quot;:&quot;go to status&quot;,&quot;label&quot;:&quot;text:status&quot;}" href="https://www.githubstatus.com/" data-view-component="true" class="Link--secondary Link">Status</a>
          </li>

          <li class="mx-2">
            <a data-analytics-event="{&quot;category&quot;:&quot;Footer&quot;,&quot;action&quot;:&quot;go to community&quot;,&quot;label&quot;:&quot;text:community&quot;}" href="https://github.community/" data-view-component="true" class="Link--secondary Link">Community</a>
          </li>

          <li class="mx-2">
            <a data-analytics-event="{&quot;category&quot;:&quot;Footer&quot;,&quot;action&quot;:&quot;go to docs&quot;,&quot;label&quot;:&quot;text:docs&quot;}" href="https://docs.github.com/" data-view-component="true" class="Link--secondary Link">Docs</a>
          </li>

          <li class="mx-2">
            <a data-analytics-event="{&quot;category&quot;:&quot;Footer&quot;,&quot;action&quot;:&quot;go to contact&quot;,&quot;label&quot;:&quot;text:contact&quot;}" href="https://support.github.com?tags=dotcom-footer" data-view-component="true" class="Link--secondary Link">Contact</a>
          </li>

          <li class="mx-2" >
  <cookie-consent-link>
    <button
      type="button"
      class="Link--secondary underline-on-hover border-0 p-0 color-bg-transparent"
      data-action="click:cookie-consent-link#showConsentManagement"
      data-analytics-event="{&quot;location&quot;:&quot;footer&quot;,&quot;action&quot;:&quot;cookies&quot;,&quot;context&quot;:&quot;subfooter&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;label&quot;:&quot;cookies_link_subfooter_footer&quot;}"
    >
       Manage cookies
    </button>
  </cookie-consent-link>
</li>

<li class="mx-2">
  <cookie-consent-link>
    <button
      type="button"
      class="Link--secondary underline-on-hover border-0 p-0 color-bg-transparent text-left"
      data-action="click:cookie-consent-link#showConsentManagement"
      data-analytics-event="{&quot;location&quot;:&quot;footer&quot;,&quot;action&quot;:&quot;dont_share_info&quot;,&quot;context&quot;:&quot;subfooter&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;label&quot;:&quot;dont_share_info_link_subfooter_footer&quot;}"
    >
      Do not share my personal information
    </button>
  </cookie-consent-link>
</li>

      </ul>
    </nav>
  </div>
</footer>



    <ghcc-consent id="ghcc" class="position-fixed bottom-0 left-0" style="z-index: 999999"
      data-locale="en"
      data-initial-cookie-consent-allowed=""
      data-cookie-consent-required="false"
    ></ghcc-consent>




  <div id="ajax-error-message" class="ajax-error-message flash flash-error" hidden>
    <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-alert">
    <path d="M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path>
</svg>
    <button type="button" class="flash-close js-ajax-error-dismiss" aria-label="Dismiss error">
      <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x">
    <path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path>
</svg>
    </button>
    You can’t perform that action at this time.
  </div>

    <template id="site-details-dialog">
  <details class="details-reset details-overlay details-overlay-dark lh-default color-fg-default hx_rsm" open>
    <summary role="button" aria-label="Close dialog"></summary>
    <details-dialog class="Box Box--overlay d-flex flex-column anim-fade-in fast hx_rsm-dialog hx_rsm-modal">
      <button class="Box-btn-octicon m-0 btn-octicon position-absolute right-0 top-0" type="button" aria-label="Close dialog" data-close-dialog>
        <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x">
    <path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path>
</svg>
      </button>
      <div class="octocat-spinner my-6 js-details-dialog-spinner"></div>
    </details-dialog>
  </details>
</template>

    <div class="Popover js-hovercard-content position-absolute" style="display: none; outline: none;">
  <div class="Popover-message Popover-message--bottom-left Popover-message--large Box color-shadow-large" style="width:360px;">
  </div>
</div>

    <template id="snippet-clipboard-copy-button">
  <div class="zeroclipboard-container position-absolute right-0 top-0">
    <clipboard-copy aria-label="Copy" class="ClipboardButton btn js-clipboard-copy m-2 p-0" data-copy-feedback="Copied!" data-tooltip-direction="w">
      <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-copy js-clipboard-copy-icon m-2">
    <path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 0 1 0 1.5h-1.5a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-1.5a.75.75 0 0 1 1.5 0v1.5A1.75 1.75 0 0 1 9.25 16h-7.5A1.75 1.75 0 0 1 0 14.25Z"></path><path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0 1 14.25 11h-7.5A1.75 1.75 0 0 1 5 9.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z"></path>
</svg>
      <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-check js-clipboard-check-icon color-fg-success d-none m-2">
    <path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path>
</svg>
    </clipboard-copy>
  </div>
</template>
<template id="snippet-clipboard-copy-button-unpositioned">
  <div class="zeroclipboard-container">
    <clipboard-copy aria-label="Copy" class="ClipboardButton btn btn-invisible js-clipboard-copy m-2 p-0 d-flex flex-justify-center flex-items-center" data-copy-feedback="Copied!" data-tooltip-direction="w">
      <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-copy js-clipboard-copy-icon">
    <path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 0 1 0 1.5h-1.5a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-1.5a.75.75 0 0 1 1.5 0v1.5A1.75 1.75 0 0 1 9.25 16h-7.5A1.75 1.75 0 0 1 0 14.25Z"></path><path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0 1 14.25 11h-7.5A1.75 1.75 0 0 1 5 9.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z"></path>
</svg>
      <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-check js-clipboard-check-icon color-fg-success d-none">
    <path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path>
</svg>
    </clipboard-copy>
  </div>
</template>




    </div>
    <div id="js-global-screen-reader-notice" class="sr-only mt-n1" aria-live="polite" aria-atomic="true" ></div>
    <div id="js-global-screen-reader-notice-assertive" class="sr-only mt-n1" aria-live="assertive" aria-atomic="true"></div>
  </body>
</html>

