v3.22.1
Revenue - Contract Balances (Details)
Dec. 31, 2021
USD ($)
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Contract assets $ 1,090,601
Contract liabilities 113,691
Net contract assets 976,910
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2021-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Contract assets 490,987
Net contract assets 490,987
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2022-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Contract assets 1,581,588
Contract liabilities 113,691
Net contract assets $ 1,467,897