Quarterly
Annual
| Unit: USD | 2023-06-30 | 2023-03-31 | 2022-12-31 | 2022-09-30 | 2022-06-30 | 2022-03-31 | 2021-12-31 | 2021-09-30 | 2021-06-30 | 2021-03-31 | 2020-12-31 | 2020-09-30 | 2020-06-30 | 2020-03-31 | 2019-12-31 | 2019-09-30 | 2019-06-30 | 2019-03-31 | 2018-12-31 | 2018-09-30 | 2018-06-30 | 2018-03-31 | 2017-12-31 | 2017-09-30 | 2017-06-30 | 2017-03-31 | 2016-12-31 | 2016-09-30 | 2016-06-30 | 2016-03-31 | 2015-12-31 | 2015-09-30 | 2015-06-30 | 2015-03-31 | 2014-12-31 | 2014-09-30 | 2014-06-30 | 2014-03-31 | 2013-12-31 | 2013-09-30 | 2013-06-30 | 2013-03-31 | 2012-12-31 | 2012-09-30 | 2012-06-30 | 2012-03-31 | 2011-12-31 | 2011-09-30 | 2011-06-30 | 2011-03-31 | 2010-12-31 | 2010-09-30 | 2010-06-30 | 2010-03-31 | 2009-12-31 | 2009-09-30 | 2009-06-30 | 2009-03-31 | 2008-12-31 | 2008-09-30 | 2008-06-30 | 2008-03-31 | 2007-12-31 | 2007-09-30 | 2007-06-30 | 2007-03-31 | 2006-12-31 | 2006-09-30 | 2006-06-30 | 2006-03-31 | 2005-12-31 | 2005-09-30 | 2005-06-30 | 2005-03-31 | 2004-12-31 | 2004-09-30 | 2004-06-30 | 2004-03-31 | 2003-12-31 | 2003-09-30 | 2003-06-30 | 2003-03-31 | 2002-12-31 | 2002-09-30 | 2002-06-30 | 2002-03-31 | 2001-12-31 | 2001-09-30 | 2001-06-30 | 2001-03-31 | 2000-12-31 | 2000-09-30 | 2000-06-30 | 2000-03-31 | 1999-12-31 | 1999-09-30 | 1999-06-30 | 1999-03-31 | 1998-12-31 | 1998-09-30 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
revenue | 12,246,000 | 13,590,000 | 14,557,000 | 14,470,000 | 14,053,000 | 13,274,000 | 13,252,000 | 12,885,000 | 12,423,000 | 13,107,000 | 12,182,000 | 13,103,000 | 11,854,000 | 11,032,000 | 10,976,000 | 10,804,000 | 10,813,000 | 10,334,000 | 11,294,000 | 10,472,000 | 9,866,000 | 9,886,000 | 8,903,000 | 9,427,000 | 9,566,000 | 9,675,000 | 9,435,000 | 9,468,000 | 9,443,000 | 9,186,000 | 9,703,000 | 9,541,000 | 9,465,000 | 9,578,000 | 7,136,000 | 6,230,000 | 6,502,000 | 6,078,000 | 6,146,000 | 6,044,000 | 6,208,000 | 6,071,000 | 5,969,000 | 6,459,000 | 6,576,000 | 6,342,000 | 6,429,000 | 5,958,000 | 5,847,000 | 5,908,000 | 2,195,000 | 5,677,000 | 5,582,000 | 5,182,000 | 6,534,000 | 5,704,000 | 5,402,157 | 5,908,215 | 8,021,497 | 2,780,000 | 5,034,000 | 5,093,000 | 4,721,373 | 4,495,000 | 4,478,000 | 4,490,000 | 4,705,225 | 4,570,000 | 4,259,000 | 4,319,000 | 4,359,536 | 4,641,000 | 4,551,000 | 4,778,000 | 4,566,203 | 3,839,000 | 3,664,000 | 3,578,000 | 3,652,451 | 3,488,000 | 3,374,000 | 3,506,000 | 3,249,509 | 3,223,000 | 3,082,000 | 2,827,000 | 2,950,731 | 2,856,000 | 2,770,000 | 2,599,000 | 2,714,000 | 2,485,000 | 2,567,000 | 2,481,000 | 2,600,000 | 2,500,000 | 2,400,000 | 2,400,000 | 2,200,000 | 2,300,000 |
cost of revenue | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
gross profit | 12,246,000 | 13,590,000 | 14,557,000 | 14,470,000 | 14,053,000 | 13,274,000 | 13,252,000 | 12,885,000 | 12,423,000 | 13,107,000 | 12,182,000 | 13,103,000 | 11,854,000 | 11,032,000 | 10,976,000 | 10,804,000 | 10,813,000 | 10,334,000 | 11,294,000 | 10,472,000 | 9,866,000 | 9,886,000 | 8,903,000 | 9,427,000 | 9,566,000 | 9,675,000 | 9,435,000 | 9,468,000 | 9,443,000 | 9,186,000 | 9,703,000 | 9,541,000 | 9,465,000 | 9,578,000 | 7,136,000 | 6,230,000 | 6,502,000 | 6,078,000 | 6,146,000 | 6,044,000 | 6,208,000 | 6,071,000 | 5,969,000 | 6,459,000 | 6,576,000 | 6,342,000 | 6,429,000 | 5,958,000 | 5,847,000 | 5,908,000 | 2,195,000 | 5,677,000 | 5,582,000 | 5,182,000 | 6,534,000 | 5,704,000 | 5,402,157 | 5,908,215 | 8,021,497 | 2,780,000 | 5,034,000 | 5,093,000 | 4,721,373 | 4,495,000 | 4,478,000 | 4,490,000 | 4,705,225 | 4,570,000 | 4,259,000 | 4,319,000 | 4,359,536 | 4,641,000 | 4,551,000 | 4,778,000 | 4,566,203 | 3,839,000 | 3,664,000 | 3,578,000 | 3,652,451 | 3,488,000 | 3,374,000 | 3,506,000 | 3,249,509 | 3,223,000 | 3,082,000 | 2,827,000 | 2,950,731 | 2,856,000 | 2,770,000 | 2,599,000 | 2,714,000 | 2,485,000 | 2,567,000 | 2,481,000 | 2,600,000 | 2,500,000 | 2,400,000 | 2,400,000 | 2,200,000 | 2,300,000 |
operating expenses | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
research and development | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
sales, general and administrative | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
total operating expenses | -8,344,000 | -6,024,000 | 6,794,000 | 903,000 | 2,371,000 | -8,890,000 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3,873,350 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
operating income | 3,902,000 | 7,566,000 | 7,299,000 | 6,495,000 | 5,394,000 | 4,384,000 | 5,121,000 | 4,321,000 | 5,525,000 | 5,774,000 | 3,399,000 | 5,266,000 | 3,338,000 | 2,390,000 | 3,587,000 | 3,645,000 | 3,302,000 | 2,959,000 | 2,972,000 | 2,881,000 | 2,217,000 | 2,460,000 | 2,088,000 | 2,389,000 | 2,497,000 | 2,197,000 | 2,100,000 | 2,734,000 | 2,404,000 | 2,040,000 | 3,067,000 | 2,809,000 | 2,957,000 | 3,187,000 | 279,000 | 881,000 | 1,205,000 | 766,000 | 1,194,000 | 1,235,000 | 1,433,000 | 1,127,000 | 597,000 | 1,436,000 | 1,370,000 | 1,662,000 | 1,600,000 | 1,243,000 | 1,065,000 | 1,154,000 | 1,446,000 | 1,183,000 | 1,050,000 | 558,000 | 883,000 | 722,000 | -666,468 | 1,344,426 | -350,404 | -1,575,000 | 1,228,000 | 1,382,000 | 1,232,054 | 1,094,000 | 1,173,000 | 1,171,000 | 1,477,553 | 1,469,000 | 1,267,000 | 1,482,000 | 1,034,754 | 1,483,000 | 1,496,000 | 1,662,000 | 1,214,890 | 794,000 | 1,344,000 | 1,441,000 | 927,052 | 1,376,000 | 1,378,000 | 1,427,000 | 917,565 | 1,306,000 | 1,060,000 | 975,000 | 1,032,877 | 1,178,000 | 1,089,000 | 971,000 | 1,073,000 | 1,052,000 | 963,000 | 1,118,000 | 1,000,000 | 1,200,000 | 1,000,000 | 1,000,000 | 700,000 | 1,000,000 |
net income | 3,405,000 | 3,018,000 | 4,124,000 | 4,336,000 | 3,845,000 | 3,568,000 | 4,141,000 | 3,453,000 | 4,353,000 | 4,526,000 | 2,803,000 | 4,356,000 | 2,734,000 | 2,047,000 | 3,009,000 | 2,988,000 | 2,703,000 | 2,434,000 | 2,564,000 | 2,344,000 | 1,899,000 | 2,015,000 | 1,077,000 | 1,694,000 | 1,882,000 | 1,604,000 | 1,520,000 | 1,922,000 | 1,735,000 | 1,512,000 | 2,167,000 | 1,985,000 | 2,072,000 | 2,234,000 | 236,000 | 768,000 | 966,000 | 551,000 | 980,000 | 1,016,000 | 1,144,000 | 940,000 | 571,000 | 1,140,000 | 1,116,000 | 1,250,000 | 1,248,000 | 1,039,000 | 882,000 | 943,000 | 1,240,000 | 947,000 | 878,000 | 479,000 | 849,000 | 720,000 | -318,114 | 1,081,175 | 953,881 | -1,912,000 | 983,000 | 1,081,000 | 1,000,048 | 917,000 | 949,000 | 934,000 | 940,618 | 1,160,000 | 1,006,000 | 1,147,000 | 793,341 | 1,131,000 | 1,308,000 | 1,329,000 | 1,054,942 | 796,000 | 1,096,000 | 1,072,000 | 795,102 | 1,015,000 | 1,001,000 | 1,029,000 | 718,795 | 978,000 | 750,000 | 722,000 | 730,203 | 794,000 | 735,000 | 642,000 | 845,000 | 658,000 | 633,000 | 713,000 | 800,000 | 700,000 | 600,000 | 600,000 | 500,000 | 600,000 |
The information provided in this report is taken from www.sec.gov and many other data providers. While we have conducted our best efforts to ensure that the parsed data is accurate, we cannot guarantee its accuracy. Please use caution and understand that any consequences of its use are your own responsibility.
