<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.22.2.2</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>150</ContextCount>
  <ElementCount>279</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>30</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>5</UnitCount>
  <MyReports>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>00000001 - Document - Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/Cover</Role>
      <ShortName>Cover</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>00000002 - Statement - BALANCE SHEETS (UNAUDITED)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/BalanceSheets</Role>
      <ShortName>BALANCE SHEETS (UNAUDITED)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>00000003 - Statement - BALANCE SHEETS (UNAUDITED) (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/BalanceSheetsParenthetical</Role>
      <ShortName>BALANCE SHEETS (UNAUDITED) (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>00000004 - Statement - STATEMENTS OF OPERATIONS (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/StatementsOfOperations</Role>
      <ShortName>STATEMENTS OF OPERATIONS (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>00000005 - Statement - STATEMENTS OF CASH FLOWS (UNAUDITED)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/StatementsOfCashFlows</Role>
      <ShortName>STATEMENTS OF CASH FLOWS (UNAUDITED)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>00000006 - Statement - STATEMENTS OF STOCKHOLDERS' EQUITY (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/StatementsOfStockholdersEquity</Role>
      <ShortName>STATEMENTS OF STOCKHOLDERS' EQUITY (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>00000007 - Disclosure - NATURE OF OPERATIONS AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/NatureOfOperationsAndSummaryOfSignificantAccountingPolicies</Role>
      <ShortName>NATURE OF OPERATIONS AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>00000008 - Disclosure - PROPERTY AND EQUIPMENT</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/PropertyAndEquipment</Role>
      <ShortName>PROPERTY AND EQUIPMENT</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>00000009 - Disclosure - COMMITMENTS AND CONTINGENCIES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/CommitmentsAndContingencies</Role>
      <ShortName>COMMITMENTS AND CONTINGENCIES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>00000010 - Disclosure - STOCK-BASED COMPENSATION</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/Stock-basedCompensation</Role>
      <ShortName>STOCK-BASED COMPENSATION</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>00000011 - Disclosure - DEBT OBLIGATIONS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/DebtObligations</Role>
      <ShortName>DEBT OBLIGATIONS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>00000012 - Disclosure - LEASES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/Leases</Role>
      <ShortName>LEASES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>00000013 - Disclosure - NATURE OF OPERATIONS AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/NatureOfOperationsAndSummaryOfSignificantAccountingPoliciesPolicies</Role>
      <ShortName>NATURE OF OPERATIONS AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>00000014 - Disclosure - NATURE OF OPERATIONS AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/NatureOfOperationsAndSummaryOfSignificantAccountingPoliciesTables</Role>
      <ShortName>NATURE OF OPERATIONS AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://korumedical.com/role/NatureOfOperationsAndSummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>14</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>00000015 - Disclosure - PROPERTY AND EQUIPMENT (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/PropertyAndEquipmentTables</Role>
      <ShortName>PROPERTY AND EQUIPMENT (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://korumedical.com/role/PropertyAndEquipment</ParentRole>
      <Position>15</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>00000016 - Disclosure - STOCK-BASED COMPENSATION (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/Stock-basedCompensationTables</Role>
      <ShortName>STOCK-BASED COMPENSATION (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://korumedical.com/role/Stock-basedCompensation</ParentRole>
      <Position>16</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>00000017 - Disclosure - LEASES (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/LeasesTables</Role>
      <ShortName>LEASES (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://korumedical.com/role/Leases</ParentRole>
      <Position>17</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>00000018 - Disclosure - Schedule of net loss per common share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/ScheduleOfNetLossPerCommonShareDetails</Role>
      <ShortName>Schedule of net loss per common share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>00000019 - Disclosure - Schedule of net sales by geography (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/ScheduleOfNetSalesByGeographyDetails</Role>
      <ShortName>Schedule of net sales by geography (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>00000020 - Disclosure - NATURE OF OPERATIONS AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/NatureOfOperationsAndSummaryOfSignificantAccountingPoliciesDetailsNarrative</Role>
      <ShortName>NATURE OF OPERATIONS AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://korumedical.com/role/NatureOfOperationsAndSummaryOfSignificantAccountingPoliciesTables</ParentRole>
      <Position>20</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>00000021 - Disclosure - Schedule of property and equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/ScheduleOfPropertyAndEquipmentDetails</Role>
      <ShortName>Schedule of property and equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>00000022 - Disclosure - PROPERTY AND EQUIPMENT (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/PropertyAndEquipmentDetailsNarrative</Role>
      <ShortName>PROPERTY AND EQUIPMENT (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://korumedical.com/role/PropertyAndEquipmentTables</ParentRole>
      <Position>22</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>00000023 - Disclosure - Schedule of time based stock options (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/ScheduleOfTimeBasedStockOptionsDetails</Role>
      <ShortName>Schedule of time based stock options (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>00000024 - Disclosure - Schedule of status of time based stock options (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/ScheduleOfStatusOfTimeBasedStockOptionsDetails</Role>
      <ShortName>Schedule of status of time based stock options (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>00000025 - Disclosure - Schedule of information pertaining to options outstanding (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/ScheduleOfInformationPertainingToOptionsOutstandingDetails</Role>
      <ShortName>Schedule of information pertaining to options outstanding (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>00000026 - Disclosure - Schedule of performance base stock options (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/ScheduleOfPerformanceBaseStockOptionsDetails</Role>
      <ShortName>Schedule of performance base stock options (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>00000027 - Disclosure - Schedule of activities for restricted stock awards (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/ScheduleOfActivitiesForRestrictedStockAwardsDetails</Role>
      <ShortName>Schedule of activities for restricted stock awards (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>00000028 - Disclosure - STOCK-BASED COMPENSATION (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/Stock-basedCompensationDetailsNarrative</Role>
      <ShortName>STOCK-BASED COMPENSATION (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://korumedical.com/role/Stock-basedCompensationTables</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>00000029 - Disclosure - DEBT OBLIGATIONS (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/DebtObligationsDetailsNarrative</Role>
      <ShortName>DEBT OBLIGATIONS (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://korumedical.com/role/DebtObligations</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>00000030 - Disclosure - Schedule of components of lease expense (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/ScheduleOfComponentsOfLeaseExpenseDetails</Role>
      <ShortName>Schedule of components of lease expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>30</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>00000031 - Disclosure - Schedule of cash flow information related to leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/ScheduleOfCashFlowInformationRelatedToLeasesDetails</Role>
      <ShortName>Schedule of cash flow information related to leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>31</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>00000032 - Disclosure - Schedule of balance sheet information related to leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/ScheduleOfBalanceSheetInformationRelatedToLeasesDetails</Role>
      <ShortName>Schedule of balance sheet information related to leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>32</Position>
    </Report>
    <Report instance="form_10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>00000033 - Disclosure - Schedule of maturities of lease liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://korumedical.com/role/ScheduleOfMaturitiesOfLeaseLiabilitiesDetails</Role>
      <ShortName>Schedule of maturities of lease liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>33</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <Logs>
    <Log type="Warning">[ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 15 fact(s) appearing in ix:hidden were eligible for transformation: krmd:StockIssued, krmd:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan2015, us-gaap:LesseeFinanceLeaseRenewalTerm1, us-gaap:LesseeOperatingLeaseRenewalTerm, us-gaap:NumberOfReportableSegments, us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue, us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1, us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2 -  form_10-q.htm 114, 116, 117, 122, 123, 124, 153, 154, 172, 173, 174, 190, 191, 192, 193</Log>
    <Log type="Warning">[dqc-0015-Negative-Values] Fact us-gaap:PropertyPlantAndEquipmentOtherAccumulatedDepreciation has a value of -12725 which is less than zero. This element should not have a negative value. The preparer should consider if the value is input correctly for this assertion and, after considering the appropriateness of the input, if incorrect, input the amount as a positive (i.e., absolute) value and provide a negated label. The properties of this us-gaap:PropertyPlantAndEquipmentOtherAccumulatedDepreciation fact are: Context: AsOf2021-12-31, Unit: USD, Rule Element Id: 2853. form_10-q.htm 7009</Log>
  </Logs>
  <InputFiles>
    <File doctype="10-Q" original="form_10-q.htm">form_10-q.htm</File>
    <File>ex_31-1.htm</File>
    <File>ex_31-2.htm</File>
    <File>ex_32-1.htm</File>
    <File>ex_32-2.htm</File>
    <File>krmd-20220930.xsd</File>
    <File>krmd-20220930_cal.xml</File>
    <File>krmd-20220930_def.xml</File>
    <File>krmd-20220930_lab.xml</File>
    <File>krmd-20220930_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="646">http://fasb.org/us-gaap/2022</BaseTaxonomy>
    <BaseTaxonomy items="30">http://xbrl.sec.gov/dei/2022</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
