|
Concept
|
2023 | 2022 | 2021 | 2020 |
|---|---|---|---|---|
| Revenue |
$11.51M
Revenue YoY Change
(Revenue[2023] - Revenue[2022]) / Revenue[2022] × 100
|
$77.50M
Revenue YoY Change
(Revenue[2022] - Revenue[2021]) / Revenue[2021] × 100
|
$25.40M
Revenue YoY Change
(Revenue[2021] - Revenue[2020]) / Revenue[2020] × 100
|
-$6.100M
Revenue YoY Change
(Revenue[2020] - Revenue[2019]) / Revenue[2019] × 100
|
| Cost Of Revenue |
$4.202M
Cost Of Revenue YoY Change
(CostOfRevenue[2023] - CostOfRevenue[2022]) / CostOfRevenue[2022] × 100
|
$4.658M
Cost Of Revenue YoY Change
(CostOfRevenue[2022] - CostOfRevenue[2021]) / CostOfRevenue[2021] × 100
|
$4.800M
Cost Of Revenue YoY Change
(CostOfRevenue[2021] - CostOfRevenue[2020]) / CostOfRevenue[2020] × 100
|
$6.100M
Cost Of Revenue YoY Change
(CostOfRevenue[2020] - CostOfRevenue[2019]) / CostOfRevenue[2019] × 100
|
| Gross Profit |
$7.310M
Gross Profit YoY Change
(GrossProfit[2023] - GrossProfit[2022]) / GrossProfit[2022] × 100
|
$72.85M
Gross Profit YoY Change
(GrossProfit[2022] - GrossProfit[2021]) / GrossProfit[2021] × 100
|
$20.60M
Gross Profit YoY Change
(GrossProfit[2021] - GrossProfit[2020]) / GrossProfit[2020] × 100
|
-$12.30M
Gross Profit YoY Change
(GrossProfit[2020] - GrossProfit[2019]) / GrossProfit[2019] × 100
|
| Selling, General & Admin |
$382.3K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2023] - SellingGeneralAndAdministrativeExpenses[2022]) / SellingGeneralAndAdministrativeExpenses[2022] × 100
|
$445.2K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2022] - SellingGeneralAndAdministrativeExpenses[2021]) / SellingGeneralAndAdministrativeExpenses[2021] × 100
|
$500.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2021] - SellingGeneralAndAdministrativeExpenses[2020]) / SellingGeneralAndAdministrativeExpenses[2020] × 100
|
$500.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2020] - SellingGeneralAndAdministrativeExpenses[2019]) / SellingGeneralAndAdministrativeExpenses[2019] × 100
|
| Research & Development |
N/A
|
N/A
|
N/A
|
N/A
|
| Depreciation & Amortization |
N/A
|
N/A
|
N/A
|
N/A
|
| Operating Expenses |
$380.1K
Operating Expenses YoY Change
(OperatingExpenses[2023] - OperatingExpenses[2022]) / OperatingExpenses[2022] × 100
|
$722.7K
Operating Expenses YoY Change
(OperatingExpenses[2022] - OperatingExpenses[2021]) / OperatingExpenses[2021] × 100
|
$600.0K
Operating Expenses YoY Change
(OperatingExpenses[2021] - OperatingExpenses[2020]) / OperatingExpenses[2020] × 100
|
$600.0K
Operating Expenses YoY Change
(OperatingExpenses[2020] - OperatingExpenses[2019]) / OperatingExpenses[2019] × 100
|
| Operating Profit |
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2023] - OperatingIncomeLoss[2022]) / OperatingIncomeLoss[2022] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2022] - OperatingIncomeLoss[2021]) / OperatingIncomeLoss[2021] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2021] - OperatingIncomeLoss[2020]) / OperatingIncomeLoss[2020] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2020] - OperatingIncomeLoss[2019]) / OperatingIncomeLoss[2019] × 100
|
| Interest Expense |
N/A
|
N/A
|
N/A
|
N/A
|
| Other Income/Expense, Net |
N/A
|
N/A
|
N/A
|
N/A
|
| Pretax Income |
$6.929M
Pretax Income YoY Change
(PretaxIncome[2023] - PretaxIncome[2022]) / PretaxIncome[2022] × 100
|
$72.12M
Pretax Income YoY Change
(PretaxIncome[2022] - PretaxIncome[2021]) / PretaxIncome[2021] × 100
|
$20.00M
Pretax Income YoY Change
(PretaxIncome[2021] - PretaxIncome[2020]) / PretaxIncome[2020] × 100
|
-$12.80M
Pretax Income YoY Change
(PretaxIncome[2020] - PretaxIncome[2019]) / PretaxIncome[2019] × 100
|
| Income Tax |
N/A
|
N/A
|
N/A
|
N/A
|
| Net Earnings |
$6.929M
Net Income YoY Change
(NetIncome[2023] - NetIncome[2022]) / NetIncome[2022] × 100
|
$72.12M
Net Income YoY Change
(NetIncome[2022] - NetIncome[2021]) / NetIncome[2021] × 100
|
$20.00M
Net Income YoY Change
(NetIncome[2021] - NetIncome[2020]) / NetIncome[2020] × 100
|
-$12.80M
Net Income YoY Change
(NetIncome[2020] - NetIncome[2019]) / NetIncome[2019] × 100
|
| Basic Earnings Per Share |
N/A
|
N/A
|
N/A
|
N/A
|
| Diluted Earnings Per Share |
$0.09
Diluted Earnings Per Share YoY Change
(DilutedEPS[2023] - DilutedEPS[2022]) / DilutedEPS[2022] × 100
|
$0.89
Diluted Earnings Per Share YoY Change
(DilutedEPS[2022] - DilutedEPS[2021]) / DilutedEPS[2021] × 100
|
$0.21
Diluted Earnings Per Share YoY Change
(DilutedEPS[2021] - DilutedEPS[2020]) / DilutedEPS[2020] × 100
|
-$0.13
Diluted Earnings Per Share YoY Change
(DilutedEPS[2020] - DilutedEPS[2019]) / DilutedEPS[2019] × 100
|
| COMMON SHARES |
N/A
|
N/A
|
N/A
|
N/A
|
| Basic Shares Outstanding |
N/A
|
N/A
|
N/A
|
N/A
|
| Diluted Shares Outstanding |
N/A
|
N/A
|
N/A
|
N/A
|
|
Concept
|
2025 Q1 | 2024 Q3 | 2024 Q1 | 2023 Q3 | 2023 Q1 | 2022 Q3 | 2022 Q1 | 2021 Q3 | 2021 Q1 | 2020 Q3 | 2020 Q1 | 2019 Q3 | 2019 Q1 | 2018 Q3 | 2018 Q1 | 2017 Q3 | 2017 Q1 | 2016 Q3 | 2016 Q1 | 2015 Q3 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Revenue |
$29.00M
Revenue YoY Change
(Revenue[2025 Q1] - Revenue[2024 Q1]) / Revenue[2024 Q1] × 100
|
$43.00M
Revenue YoY Change
(Revenue[2024 Q3] - Revenue[2023 Q3]) / Revenue[2023 Q3] × 100
|
$32.00M
Revenue YoY Change
(Revenue[2024 Q1] - Revenue[2023 Q1]) / Revenue[2023 Q1] × 100
|
$3.500M
Revenue YoY Change
(Revenue[2023 Q3] - Revenue[2022 Q3]) / Revenue[2022 Q3] × 100
|
$16.75M
Revenue YoY Change
(Revenue[2023 Q1] - Revenue[2022 Q1]) / Revenue[2022 Q1] × 100
|
-$5.239M
Revenue YoY Change
(Revenue[2022 Q3] - Revenue[2021 Q3]) / Revenue[2021 Q3] × 100
|
$232.0K
Revenue YoY Change
(Revenue[2022 Q1] - Revenue[2021 Q1]) / Revenue[2021 Q1] × 100
|
$77.27M
Revenue YoY Change
(Revenue[2021 Q3] - Revenue[2020 Q3]) / Revenue[2020 Q3] × 100
|
$34.10M
Revenue YoY Change
(Revenue[2021 Q1] - Revenue[2020 Q1]) / Revenue[2020 Q1] × 100
|
-$8.700M
Revenue YoY Change
(Revenue[2020 Q3] - Revenue[2019 Q3]) / Revenue[2019 Q3] × 100
|
-$20.20M
Revenue YoY Change
(Revenue[2020 Q1] - Revenue[2019 Q1]) / Revenue[2019 Q1] × 100
|
$14.10M
Revenue YoY Change
(Revenue[2019 Q3] - Revenue[2018 Q3]) / Revenue[2018 Q3] × 100
|
-$20.00M
Revenue YoY Change
(Revenue[2019 Q1] - Revenue[2018 Q1]) / Revenue[2018 Q1] × 100
|
$2.200M
Revenue YoY Change
(Revenue[2018 Q3] - Revenue[2017 Q3]) / Revenue[2017 Q3] × 100
|
$24.10M
Revenue YoY Change
(Revenue[2018 Q1] - Revenue[2017 Q1]) / Revenue[2017 Q1] × 100
|
$58.30M
Revenue YoY Change
(Revenue[2017 Q3] - Revenue[2016 Q3]) / Revenue[2016 Q3] × 100
|
$57.50M
Revenue YoY Change
(Revenue[2017 Q1] - Revenue[2016 Q1]) / Revenue[2016 Q1] × 100
|
$84.50M
Revenue YoY Change
(Revenue[2016 Q3] - Revenue[2015 Q3]) / Revenue[2015 Q3] × 100
|
-$48.20M
Revenue YoY Change
(Revenue[2016 Q1] - Revenue[2015 Q1]) / Revenue[2015 Q1] × 100
|
-$27.70M
Revenue YoY Change
(Revenue[2015 Q3] - Revenue[2014 Q3]) / Revenue[2014 Q3] × 100
|
| Cost Of Revenue |
$2.020M
Cost Of Revenue YoY Change
(CostOfRevenue[2025 Q1] - CostOfRevenue[2024 Q1]) / CostOfRevenue[2024 Q1] × 100
|
$2.010M
Cost Of Revenue YoY Change
(CostOfRevenue[2024 Q3] - CostOfRevenue[2023 Q3]) / CostOfRevenue[2023 Q3] × 100
|
$3.270M
Cost Of Revenue YoY Change
(CostOfRevenue[2024 Q1] - CostOfRevenue[2023 Q1]) / CostOfRevenue[2023 Q1] × 100
|
$700.0K
Cost Of Revenue YoY Change
(CostOfRevenue[2023 Q3] - CostOfRevenue[2022 Q3]) / CostOfRevenue[2022 Q3] × 100
|
$2.020M
Cost Of Revenue YoY Change
(CostOfRevenue[2023 Q1] - CostOfRevenue[2022 Q1]) / CostOfRevenue[2022 Q1] × 100
|
$2.183M
Cost Of Revenue YoY Change
(CostOfRevenue[2022 Q3] - CostOfRevenue[2021 Q3]) / CostOfRevenue[2021 Q3] × 100
|
$2.239M
Cost Of Revenue YoY Change
(CostOfRevenue[2022 Q1] - CostOfRevenue[2021 Q1]) / CostOfRevenue[2021 Q1] × 100
|
$2.419M
Cost Of Revenue YoY Change
(CostOfRevenue[2021 Q3] - CostOfRevenue[2020 Q3]) / CostOfRevenue[2020 Q3] × 100
|
$2.400M
Cost Of Revenue YoY Change
(CostOfRevenue[2021 Q1] - CostOfRevenue[2020 Q1]) / CostOfRevenue[2020 Q1] × 100
|
$2.400M
Cost Of Revenue YoY Change
(CostOfRevenue[2020 Q3] - CostOfRevenue[2019 Q3]) / CostOfRevenue[2019 Q3] × 100
|
$2.900M
Cost Of Revenue YoY Change
(CostOfRevenue[2020 Q1] - CostOfRevenue[2019 Q1]) / CostOfRevenue[2019 Q1] × 100
|
$3.300M
Cost Of Revenue YoY Change
(CostOfRevenue[2019 Q3] - CostOfRevenue[2018 Q3]) / CostOfRevenue[2018 Q3] × 100
|
$4.000M
Cost Of Revenue YoY Change
(CostOfRevenue[2019 Q1] - CostOfRevenue[2018 Q1]) / CostOfRevenue[2018 Q1] × 100
|
$4.400M
Cost Of Revenue YoY Change
(CostOfRevenue[2018 Q3] - CostOfRevenue[2017 Q3]) / CostOfRevenue[2017 Q3] × 100
|
$4.600M
Cost Of Revenue YoY Change
(CostOfRevenue[2018 Q1] - CostOfRevenue[2017 Q1]) / CostOfRevenue[2017 Q1] × 100
|
$4.600M
Cost Of Revenue YoY Change
(CostOfRevenue[2017 Q3] - CostOfRevenue[2016 Q3]) / CostOfRevenue[2016 Q3] × 100
|
$4.400M
Cost Of Revenue YoY Change
(CostOfRevenue[2017 Q1] - CostOfRevenue[2016 Q1]) / CostOfRevenue[2016 Q1] × 100
|
$4.400M
Cost Of Revenue YoY Change
(CostOfRevenue[2016 Q3] - CostOfRevenue[2015 Q3]) / CostOfRevenue[2015 Q3] × 100
|
$4.500M
Cost Of Revenue YoY Change
(CostOfRevenue[2016 Q1] - CostOfRevenue[2015 Q1]) / CostOfRevenue[2015 Q1] × 100
|
$5.000M
Cost Of Revenue YoY Change
(CostOfRevenue[2015 Q3] - CostOfRevenue[2014 Q3]) / CostOfRevenue[2014 Q3] × 100
|
| Gross Profit |
$26.98M
Gross Profit YoY Change
(GrossProfit[2025 Q1] - GrossProfit[2024 Q1]) / GrossProfit[2024 Q1] × 100
|
$40.99M
Gross Profit YoY Change
(GrossProfit[2024 Q3] - GrossProfit[2023 Q3]) / GrossProfit[2023 Q3] × 100
|
$28.73M
Gross Profit YoY Change
(GrossProfit[2024 Q1] - GrossProfit[2023 Q1]) / GrossProfit[2023 Q1] × 100
|
$2.800M
Gross Profit YoY Change
(GrossProfit[2023 Q3] - GrossProfit[2022 Q3]) / GrossProfit[2022 Q3] × 100
|
$14.73M
Gross Profit YoY Change
(GrossProfit[2023 Q1] - GrossProfit[2022 Q1]) / GrossProfit[2022 Q1] × 100
|
-$7.422M
Gross Profit YoY Change
(GrossProfit[2022 Q3] - GrossProfit[2021 Q3]) / GrossProfit[2021 Q3] × 100
|
-$2.007M
Gross Profit YoY Change
(GrossProfit[2022 Q1] - GrossProfit[2021 Q1]) / GrossProfit[2021 Q1] × 100
|
$74.85M
Gross Profit YoY Change
(GrossProfit[2021 Q3] - GrossProfit[2020 Q3]) / GrossProfit[2020 Q3] × 100
|
$31.70M
Gross Profit YoY Change
(GrossProfit[2021 Q1] - GrossProfit[2020 Q1]) / GrossProfit[2020 Q1] × 100
|
-$11.10M
Gross Profit YoY Change
(GrossProfit[2020 Q3] - GrossProfit[2019 Q3]) / GrossProfit[2019 Q3] × 100
|
-$23.10M
Gross Profit YoY Change
(GrossProfit[2020 Q1] - GrossProfit[2019 Q1]) / GrossProfit[2019 Q1] × 100
|
$10.80M
Gross Profit YoY Change
(GrossProfit[2019 Q3] - GrossProfit[2018 Q3]) / GrossProfit[2018 Q3] × 100
|
-$24.00M
Gross Profit YoY Change
(GrossProfit[2019 Q1] - GrossProfit[2018 Q1]) / GrossProfit[2018 Q1] × 100
|
-$2.200M
Gross Profit YoY Change
(GrossProfit[2018 Q3] - GrossProfit[2017 Q3]) / GrossProfit[2017 Q3] × 100
|
$19.50M
Gross Profit YoY Change
(GrossProfit[2018 Q1] - GrossProfit[2017 Q1]) / GrossProfit[2017 Q1] × 100
|
$53.70M
Gross Profit YoY Change
(GrossProfit[2017 Q3] - GrossProfit[2016 Q3]) / GrossProfit[2016 Q3] × 100
|
$53.10M
Gross Profit YoY Change
(GrossProfit[2017 Q1] - GrossProfit[2016 Q1]) / GrossProfit[2016 Q1] × 100
|
$80.10M
Gross Profit YoY Change
(GrossProfit[2016 Q3] - GrossProfit[2015 Q3]) / GrossProfit[2015 Q3] × 100
|
-$52.70M
Gross Profit YoY Change
(GrossProfit[2016 Q1] - GrossProfit[2015 Q1]) / GrossProfit[2015 Q1] × 100
|
-$32.70M
Gross Profit YoY Change
(GrossProfit[2015 Q3] - GrossProfit[2014 Q3]) / GrossProfit[2014 Q3] × 100
|
| Selling, General & Admin |
$260.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2025 Q1] - SellingGeneralAndAdministrativeExpenses[2024 Q1]) / SellingGeneralAndAdministrativeExpenses[2024 Q1] × 100
|
$240.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2024 Q3] - SellingGeneralAndAdministrativeExpenses[2023 Q3]) / SellingGeneralAndAdministrativeExpenses[2023 Q3] × 100
|
$420.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2024 Q1] - SellingGeneralAndAdministrativeExpenses[2023 Q1]) / SellingGeneralAndAdministrativeExpenses[2023 Q1] × 100
|
$100.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2023 Q3] - SellingGeneralAndAdministrativeExpenses[2022 Q3]) / SellingGeneralAndAdministrativeExpenses[2022 Q3] × 100
|
$184.1K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2023 Q1] - SellingGeneralAndAdministrativeExpenses[2022 Q1]) / SellingGeneralAndAdministrativeExpenses[2022 Q1] × 100
|
$198.3K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2022 Q3] - SellingGeneralAndAdministrativeExpenses[2021 Q3]) / SellingGeneralAndAdministrativeExpenses[2021 Q3] × 100
|
$198.9K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2022 Q1] - SellingGeneralAndAdministrativeExpenses[2021 Q1]) / SellingGeneralAndAdministrativeExpenses[2021 Q1] × 100
|
$246.3K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2021 Q3] - SellingGeneralAndAdministrativeExpenses[2020 Q3]) / SellingGeneralAndAdministrativeExpenses[2020 Q3] × 100
|
$300.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2021 Q1] - SellingGeneralAndAdministrativeExpenses[2020 Q1]) / SellingGeneralAndAdministrativeExpenses[2020 Q1] × 100
|
$200.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2020 Q3] - SellingGeneralAndAdministrativeExpenses[2019 Q3]) / SellingGeneralAndAdministrativeExpenses[2019 Q3] × 100
|
$200.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2020 Q1] - SellingGeneralAndAdministrativeExpenses[2019 Q1]) / SellingGeneralAndAdministrativeExpenses[2019 Q1] × 100
|
$300.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2019 Q3] - SellingGeneralAndAdministrativeExpenses[2018 Q3]) / SellingGeneralAndAdministrativeExpenses[2018 Q3] × 100
|
$300.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2019 Q1] - SellingGeneralAndAdministrativeExpenses[2018 Q1]) / SellingGeneralAndAdministrativeExpenses[2018 Q1] × 100
|
$300.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2018 Q3] - SellingGeneralAndAdministrativeExpenses[2017 Q3]) / SellingGeneralAndAdministrativeExpenses[2017 Q3] × 100
|
$200.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2018 Q1] - SellingGeneralAndAdministrativeExpenses[2017 Q1]) / SellingGeneralAndAdministrativeExpenses[2017 Q1] × 100
|
$200.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2017 Q3] - SellingGeneralAndAdministrativeExpenses[2016 Q3]) / SellingGeneralAndAdministrativeExpenses[2016 Q3] × 100
|
$200.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2017 Q1] - SellingGeneralAndAdministrativeExpenses[2016 Q1]) / SellingGeneralAndAdministrativeExpenses[2016 Q1] × 100
|
$200.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2016 Q3] - SellingGeneralAndAdministrativeExpenses[2015 Q3]) / SellingGeneralAndAdministrativeExpenses[2015 Q3] × 100
|
$200.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2016 Q1] - SellingGeneralAndAdministrativeExpenses[2015 Q1]) / SellingGeneralAndAdministrativeExpenses[2015 Q1] × 100
|
$400.0K
Selling, General & Admin YoY Change
(SellingGeneralAndAdministrativeExpenses[2015 Q3] - SellingGeneralAndAdministrativeExpenses[2014 Q3]) / SellingGeneralAndAdministrativeExpenses[2014 Q3] × 100
|
| Research & Development |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Depreciation & Amortization |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Operating Expenses |
$330.0K
Operating Expenses YoY Change
(OperatingExpenses[2025 Q1] - OperatingExpenses[2024 Q1]) / OperatingExpenses[2024 Q1] × 100
|
$300.0K
Operating Expenses YoY Change
(OperatingExpenses[2024 Q3] - OperatingExpenses[2023 Q3]) / OperatingExpenses[2023 Q3] × 100
|
$490.0K
Operating Expenses YoY Change
(OperatingExpenses[2024 Q1] - OperatingExpenses[2023 Q1]) / OperatingExpenses[2023 Q1] × 100
|
$100.0K
Operating Expenses YoY Change
(OperatingExpenses[2023 Q3] - OperatingExpenses[2022 Q3]) / OperatingExpenses[2022 Q3] × 100
|
$175.4K
Operating Expenses YoY Change
(OperatingExpenses[2023 Q1] - OperatingExpenses[2022 Q1]) / OperatingExpenses[2022 Q1] × 100
|
$204.7K
Operating Expenses YoY Change
(OperatingExpenses[2022 Q3] - OperatingExpenses[2021 Q3]) / OperatingExpenses[2021 Q3] × 100
|
$106.8K
Operating Expenses YoY Change
(OperatingExpenses[2022 Q1] - OperatingExpenses[2021 Q1]) / OperatingExpenses[2021 Q1] × 100
|
$615.9K
Operating Expenses YoY Change
(OperatingExpenses[2021 Q3] - OperatingExpenses[2020 Q3]) / OperatingExpenses[2020 Q3] × 100
|
$400.0K
Operating Expenses YoY Change
(OperatingExpenses[2021 Q1] - OperatingExpenses[2020 Q1]) / OperatingExpenses[2020 Q1] × 100
|
$300.0K
Operating Expenses YoY Change
(OperatingExpenses[2020 Q3] - OperatingExpenses[2019 Q3]) / OperatingExpenses[2019 Q3] × 100
|
$300.0K
Operating Expenses YoY Change
(OperatingExpenses[2020 Q1] - OperatingExpenses[2019 Q1]) / OperatingExpenses[2019 Q1] × 100
|
$300.0K
Operating Expenses YoY Change
(OperatingExpenses[2019 Q3] - OperatingExpenses[2018 Q3]) / OperatingExpenses[2018 Q3] × 100
|
$100.0K
Operating Expenses YoY Change
(OperatingExpenses[2019 Q1] - OperatingExpenses[2018 Q1]) / OperatingExpenses[2018 Q1] × 100
|
$100.0K
Operating Expenses YoY Change
(OperatingExpenses[2018 Q3] - OperatingExpenses[2017 Q3]) / OperatingExpenses[2017 Q3] × 100
|
$200.0K
Operating Expenses YoY Change
(OperatingExpenses[2018 Q1] - OperatingExpenses[2017 Q1]) / OperatingExpenses[2017 Q1] × 100
|
$200.0K
Operating Expenses YoY Change
(OperatingExpenses[2017 Q3] - OperatingExpenses[2016 Q3]) / OperatingExpenses[2016 Q3] × 100
|
$200.0K
Operating Expenses YoY Change
(OperatingExpenses[2017 Q1] - OperatingExpenses[2016 Q1]) / OperatingExpenses[2016 Q1] × 100
|
$200.0K
Operating Expenses YoY Change
(OperatingExpenses[2016 Q3] - OperatingExpenses[2015 Q3]) / OperatingExpenses[2015 Q3] × 100
|
$200.0K
Operating Expenses YoY Change
(OperatingExpenses[2016 Q1] - OperatingExpenses[2015 Q1]) / OperatingExpenses[2015 Q1] × 100
|
$400.0K
Operating Expenses YoY Change
(OperatingExpenses[2015 Q3] - OperatingExpenses[2014 Q3]) / OperatingExpenses[2014 Q3] × 100
|
| Operating Profit |
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2025 Q1] - OperatingIncomeLoss[2024 Q1]) / OperatingIncomeLoss[2024 Q1] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2024 Q3] - OperatingIncomeLoss[2023 Q3]) / OperatingIncomeLoss[2023 Q3] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2024 Q1] - OperatingIncomeLoss[2023 Q1]) / OperatingIncomeLoss[2023 Q1] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2023 Q3] - OperatingIncomeLoss[2022 Q3]) / OperatingIncomeLoss[2022 Q3] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2023 Q1] - OperatingIncomeLoss[2022 Q1]) / OperatingIncomeLoss[2022 Q1] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2022 Q3] - OperatingIncomeLoss[2021 Q3]) / OperatingIncomeLoss[2021 Q3] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2022 Q1] - OperatingIncomeLoss[2021 Q1]) / OperatingIncomeLoss[2021 Q1] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2021 Q3] - OperatingIncomeLoss[2020 Q3]) / OperatingIncomeLoss[2020 Q3] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2021 Q1] - OperatingIncomeLoss[2020 Q1]) / OperatingIncomeLoss[2020 Q1] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2020 Q3] - OperatingIncomeLoss[2019 Q3]) / OperatingIncomeLoss[2019 Q3] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2020 Q1] - OperatingIncomeLoss[2019 Q1]) / OperatingIncomeLoss[2019 Q1] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2019 Q3] - OperatingIncomeLoss[2018 Q3]) / OperatingIncomeLoss[2018 Q3] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2019 Q1] - OperatingIncomeLoss[2018 Q1]) / OperatingIncomeLoss[2018 Q1] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2018 Q3] - OperatingIncomeLoss[2017 Q3]) / OperatingIncomeLoss[2017 Q3] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2018 Q1] - OperatingIncomeLoss[2017 Q1]) / OperatingIncomeLoss[2017 Q1] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2017 Q3] - OperatingIncomeLoss[2016 Q3]) / OperatingIncomeLoss[2016 Q3] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2017 Q1] - OperatingIncomeLoss[2016 Q1]) / OperatingIncomeLoss[2016 Q1] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2016 Q3] - OperatingIncomeLoss[2015 Q3]) / OperatingIncomeLoss[2015 Q3] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2016 Q1] - OperatingIncomeLoss[2015 Q1]) / OperatingIncomeLoss[2015 Q1] × 100
|
Operating Income/Loss
Gross Profit - Operating Expenses
Operating Income YoY Change
(OperatingIncomeLoss[2015 Q3] - OperatingIncomeLoss[2014 Q3]) / OperatingIncomeLoss[2014 Q3] × 100
|
| Interest Expense |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Other Income/Expense, Net |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Pretax Income |
$26.00M
Pretax Income YoY Change
(PretaxIncome[2025 Q1] - PretaxIncome[2024 Q1]) / PretaxIncome[2024 Q1] × 100
|
$41.00M
Pretax Income YoY Change
(PretaxIncome[2024 Q3] - PretaxIncome[2023 Q3]) / PretaxIncome[2023 Q3] × 100
|
$28.00M
Pretax Income YoY Change
(PretaxIncome[2024 Q1] - PretaxIncome[2023 Q1]) / PretaxIncome[2023 Q1] × 100
|
$2.700M
Pretax Income YoY Change
(PretaxIncome[2023 Q3] - PretaxIncome[2022 Q3]) / PretaxIncome[2022 Q3] × 100
|
$14.56M
Pretax Income YoY Change
(PretaxIncome[2023 Q1] - PretaxIncome[2022 Q1]) / PretaxIncome[2022 Q1] × 100
|
-$7.627M
Pretax Income YoY Change
(PretaxIncome[2022 Q3] - PretaxIncome[2021 Q3]) / PretaxIncome[2021 Q3] × 100
|
-$2.114M
Pretax Income YoY Change
(PretaxIncome[2022 Q1] - PretaxIncome[2021 Q1]) / PretaxIncome[2021 Q1] × 100
|
$74.24M
Pretax Income YoY Change
(PretaxIncome[2021 Q3] - PretaxIncome[2020 Q3]) / PretaxIncome[2020 Q3] × 100
|
$31.40M
Pretax Income YoY Change
(PretaxIncome[2021 Q1] - PretaxIncome[2020 Q1]) / PretaxIncome[2020 Q1] × 100
|
-$11.30M
Pretax Income YoY Change
(PretaxIncome[2020 Q3] - PretaxIncome[2019 Q3]) / PretaxIncome[2019 Q3] × 100
|
-$23.30M
Pretax Income YoY Change
(PretaxIncome[2020 Q1] - PretaxIncome[2019 Q1]) / PretaxIncome[2019 Q1] × 100
|
$10.50M
Pretax Income YoY Change
(PretaxIncome[2019 Q3] - PretaxIncome[2018 Q3]) / PretaxIncome[2018 Q3] × 100
|
-$24.10M
Pretax Income YoY Change
(PretaxIncome[2019 Q1] - PretaxIncome[2018 Q1]) / PretaxIncome[2018 Q1] × 100
|
-$2.400M
Pretax Income YoY Change
(PretaxIncome[2018 Q3] - PretaxIncome[2017 Q3]) / PretaxIncome[2017 Q3] × 100
|
$19.40M
Pretax Income YoY Change
(PretaxIncome[2018 Q1] - PretaxIncome[2017 Q1]) / PretaxIncome[2017 Q1] × 100
|
$53.50M
Pretax Income YoY Change
(PretaxIncome[2017 Q3] - PretaxIncome[2016 Q3]) / PretaxIncome[2016 Q3] × 100
|
$52.90M
Pretax Income YoY Change
(PretaxIncome[2017 Q1] - PretaxIncome[2016 Q1]) / PretaxIncome[2016 Q1] × 100
|
$79.90M
Pretax Income YoY Change
(PretaxIncome[2016 Q3] - PretaxIncome[2015 Q3]) / PretaxIncome[2015 Q3] × 100
|
-$52.90M
Pretax Income YoY Change
(PretaxIncome[2016 Q1] - PretaxIncome[2015 Q1]) / PretaxIncome[2015 Q1] × 100
|
-$33.00M
Pretax Income YoY Change
(PretaxIncome[2015 Q3] - PretaxIncome[2014 Q3]) / PretaxIncome[2014 Q3] × 100
|
| Income Tax |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Net Earnings |
$26.00M
Net Income YoY Change
(NetIncome[2025 Q1] - NetIncome[2024 Q1]) / NetIncome[2024 Q1] × 100
|
$41.00M
Net Income YoY Change
(NetIncome[2024 Q3] - NetIncome[2023 Q3]) / NetIncome[2023 Q3] × 100
|
$28.00M
Net Income YoY Change
(NetIncome[2024 Q1] - NetIncome[2023 Q1]) / NetIncome[2023 Q1] × 100
|
$2.700M
Net Income YoY Change
(NetIncome[2023 Q3] - NetIncome[2022 Q3]) / NetIncome[2022 Q3] × 100
|
$14.56M
Net Income YoY Change
(NetIncome[2023 Q1] - NetIncome[2022 Q1]) / NetIncome[2022 Q1] × 100
|
-$7.627M
Net Income YoY Change
(NetIncome[2022 Q3] - NetIncome[2021 Q3]) / NetIncome[2021 Q3] × 100
|
-$2.114M
Net Income YoY Change
(NetIncome[2022 Q1] - NetIncome[2021 Q1]) / NetIncome[2021 Q1] × 100
|
$74.24M
Net Income YoY Change
(NetIncome[2021 Q3] - NetIncome[2020 Q3]) / NetIncome[2020 Q3] × 100
|
$31.40M
Net Income YoY Change
(NetIncome[2021 Q1] - NetIncome[2020 Q1]) / NetIncome[2020 Q1] × 100
|
-$11.30M
Net Income YoY Change
(NetIncome[2020 Q3] - NetIncome[2019 Q3]) / NetIncome[2019 Q3] × 100
|
-$23.30M
Net Income YoY Change
(NetIncome[2020 Q1] - NetIncome[2019 Q1]) / NetIncome[2019 Q1] × 100
|
$10.50M
Net Income YoY Change
(NetIncome[2019 Q3] - NetIncome[2018 Q3]) / NetIncome[2018 Q3] × 100
|
-$24.10M
Net Income YoY Change
(NetIncome[2019 Q1] - NetIncome[2018 Q1]) / NetIncome[2018 Q1] × 100
|
-$2.400M
Net Income YoY Change
(NetIncome[2018 Q3] - NetIncome[2017 Q3]) / NetIncome[2017 Q3] × 100
|
$19.40M
Net Income YoY Change
(NetIncome[2018 Q1] - NetIncome[2017 Q1]) / NetIncome[2017 Q1] × 100
|
$53.50M
Net Income YoY Change
(NetIncome[2017 Q3] - NetIncome[2016 Q3]) / NetIncome[2016 Q3] × 100
|
$52.90M
Net Income YoY Change
(NetIncome[2017 Q1] - NetIncome[2016 Q1]) / NetIncome[2016 Q1] × 100
|
$79.90M
Net Income YoY Change
(NetIncome[2016 Q3] - NetIncome[2015 Q3]) / NetIncome[2015 Q3] × 100
|
-$52.90M
Net Income YoY Change
(NetIncome[2016 Q1] - NetIncome[2015 Q1]) / NetIncome[2015 Q1] × 100
|
-$33.00M
Net Income YoY Change
(NetIncome[2015 Q3] - NetIncome[2014 Q3]) / NetIncome[2014 Q3] × 100
|
| Basic Earnings Per Share |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Diluted Earnings Per Share |
$0.33
Diluted Earnings Per Share YoY Change
(DilutedEPS[2025 Q1] - DilutedEPS[2024 Q1]) / DilutedEPS[2024 Q1] × 100
|
$0.51
Diluted Earnings Per Share YoY Change
(DilutedEPS[2024 Q3] - DilutedEPS[2023 Q3]) / DilutedEPS[2023 Q3] × 100
|
$0.35
Diluted Earnings Per Share YoY Change
(DilutedEPS[2024 Q1] - DilutedEPS[2023 Q1]) / DilutedEPS[2023 Q1] × 100
|
$0.17
Diluted Earnings Per Share YoY Change
(DilutedEPS[2023 Q3] - DilutedEPS[2022 Q3]) / DilutedEPS[2022 Q3] × 100
|
$0.18
Diluted Earnings Per Share YoY Change
(DilutedEPS[2023 Q1] - DilutedEPS[2022 Q1]) / DilutedEPS[2022 Q1] × 100
|
-$0.10
Diluted Earnings Per Share YoY Change
(DilutedEPS[2022 Q3] - DilutedEPS[2021 Q3]) / DilutedEPS[2021 Q3] × 100
|
-$0.03
Diluted Earnings Per Share YoY Change
(DilutedEPS[2022 Q1] - DilutedEPS[2021 Q1]) / DilutedEPS[2021 Q1] × 100
|
$0.92
Diluted Earnings Per Share YoY Change
(DilutedEPS[2021 Q3] - DilutedEPS[2020 Q3]) / DilutedEPS[2020 Q3] × 100
|
$0.34
Diluted Earnings Per Share YoY Change
(DilutedEPS[2021 Q1] - DilutedEPS[2020 Q1]) / DilutedEPS[2020 Q1] × 100
|
-$0.12
Diluted Earnings Per Share YoY Change
(DilutedEPS[2020 Q3] - DilutedEPS[2019 Q3]) / DilutedEPS[2019 Q3] × 100
|
-$0.24
Diluted Earnings Per Share YoY Change
(DilutedEPS[2020 Q1] - DilutedEPS[2019 Q1]) / DilutedEPS[2019 Q1] × 100
|
$0.11
Diluted Earnings Per Share YoY Change
(DilutedEPS[2019 Q3] - DilutedEPS[2018 Q3]) / DilutedEPS[2018 Q3] × 100
|
-$0.25
Diluted Earnings Per Share YoY Change
(DilutedEPS[2019 Q1] - DilutedEPS[2018 Q1]) / DilutedEPS[2018 Q1] × 100
|
-$0.02
Diluted Earnings Per Share YoY Change
(DilutedEPS[2018 Q3] - DilutedEPS[2017 Q3]) / DilutedEPS[2017 Q3] × 100
|
$0.20
Diluted Earnings Per Share YoY Change
(DilutedEPS[2018 Q1] - DilutedEPS[2017 Q1]) / DilutedEPS[2017 Q1] × 100
|
$0.55
Diluted Earnings Per Share YoY Change
(DilutedEPS[2017 Q3] - DilutedEPS[2016 Q3]) / DilutedEPS[2016 Q3] × 100
|
$0.55
Diluted Earnings Per Share YoY Change
(DilutedEPS[2017 Q1] - DilutedEPS[2016 Q1]) / DilutedEPS[2016 Q1] × 100
|
$0.82
Diluted Earnings Per Share YoY Change
(DilutedEPS[2016 Q3] - DilutedEPS[2015 Q3]) / DilutedEPS[2015 Q3] × 100
|
-$0.54
Diluted Earnings Per Share YoY Change
(DilutedEPS[2016 Q1] - DilutedEPS[2015 Q1]) / DilutedEPS[2015 Q1] × 100
|
-$0.34
Diluted Earnings Per Share YoY Change
(DilutedEPS[2015 Q3] - DilutedEPS[2014 Q3]) / DilutedEPS[2014 Q3] × 100
|
| COMMON SHARES |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Basic Shares Outstanding |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Diluted Shares Outstanding |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
Loading...