Quarterly
Annual
| Unit: USD | 2023-12-31 | 2023-10-01 | 2023-09-30 | 2023-07-02 | 2023-06-30 | 2023-04-02 | 2023-03-31 | 2022-12-31 | 2022-10-02 | 2022-07-03 | 2022-04-03 | 2021-12-31 | 2021-10-03 | 2021-09-30 | 2021-06-27 | 2021-03-28 | 2020-12-31 | 2020-09-27 | 2020-06-28 | 2020-03-29 | 2019-12-31 | 2019-09-29 | 2019-06-30 | 2019-03-31 | 2018-12-31 | 2018-09-30 | 2018-07-01 | 2018-04-01 | 2017-12-31 | 2017-10-01 | 2017-07-02 | 2017-04-02 | 2016-12-31 | 2016-10-02 | 2016-07-03 | 2016-04-03 | 2015-12-31 | 2015-09-27 | 2015-06-28 | 2015-03-29 | 2014-12-31 | 2014-09-28 | 2014-06-29 | 2014-03-30 | 2013-12-31 | 2013-09-29 | 2013-06-30 | 2013-03-31 | 2012-12-31 | 2012-09-30 | 2012-07-01 | 2012-04-01 | 2011-12-31 | 2011-10-02 | 2011-07-03 | 2011-04-03 | 2010-12-31 | 2010-10-03 | 2010-06-27 | 2010-03-28 | 2009-12-31 | 2009-09-27 | 2009-06-28 | 2009-03-29 | 2008-12-31 | 2008-09-28 | 2008-06-29 | 2008-03-30 | 2007-12-31 | 2007-09-30 | 2007-07-01 | 2007-04-01 | 2006-12-31 | 2006-10-01 | 2006-07-02 | 2006-04-02 | 2005-12-31 | 2005-10-02 | 2005-07-03 | 2005-04-03 | 2004-12-31 | 2004-10-03 | 2004-06-27 | 2004-03-28 | 2003-12-31 | 2003-09-28 | 2003-06-30 | 2003-06-29 | 2003-03-31 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
revenue | 188,674,000 | 197,845,000 | 197,845,000 | 173,413,000 | 173,413,000 | 180,908,000 | 180,908,000 | 249,103,000 | 249,587,000 | 223,224,000 | 210,558,000 | 251,187,000 | 290,150,000 | 290,150,000 | 308,811,000 | 317,925,000 | 367,073,000 | 378,114,000 | 280,052,000 | 229,963,000 | 252,971,000 | 265,858,000 | 230,852,000 | 249,082,000 | 288,928,000 | 400,586,000 | 366,820,000 | 344,973,000 | 397,057,000 | 355,483,000 | 330,723,000 | 323,657,000 | 367,929,000 | 338,458,000 | 311,655,000 | 310,256,000 | 360,863,000 | 341,893,000 | 288,782,000 | 309,157,000 | 353,182,000 | 353,338,000 | 337,604,000 | 349,391,000 | 356,620,000 | 361,895,000 | 357,719,000 | 293,399,000 | 310,436,000 | 315,210,000 | 320,655,000 | 325,620,000 | 309,155,000 | 301,800,000 | 291,240,000 | 278,823,000 | 258,531,000 | 236,017,000 | 195,949,000 | 211,555,000 | 218,832,000 | 171,071,000 | 144,674,000 | 152,018,000 | 161,359,000 | 179,367,000 | 204,464,000 | 198,154,000 | 198,259,000 | 191,681,000 | 164,275,000 | 173,572,000 | 164,002,000 | 151,571,000 | 130,738,000 | 127,259,000 | 121,765,000 | 111,317,000 | 107,576,000 | 108,952,000 | 105,106,000 | 101,236,000 | 88,372,000 | 88,425,000 | 86,808,000 | 75,785,000 | 69,003,000 | 69,003,000 | 67,706,000 |
cost of revenue | 123,038,000 | 128,911,000 | 128,911,000 | 119,113,000 | 119,113,000 | 120,526,000 | 120,526,000 | 187,407,000 | 181,058,000 | 161,803,000 | 151,655,000 | 176,488,000 | 203,309,000 | 203,309,000 | 215,455,000 | 206,984,000 | 255,957,000 | 264,620,000 | 198,751,000 | 163,722,000 | 183,388,000 | 188,666,000 | 165,407,000 | 167,074,000 | 198,274,000 | 276,394,000 | 257,648,000 | 240,468,000 | 292,978,000 | 252,388,000 | 238,787,000 | 226,725,000 | 257,219,000 | 235,336,000 | 213,867,000 | 209,691,000 | 255,447,000 | 245,566,000 | 211,126,000 | 220,877,000 | 252,708,000 | 251,005,000 | 240,418,000 | 251,466,000 | 255,831,000 | 260,236,000 | 254,289,000 | 205,662,000 | 219,058,000 | 217,522,000 | 226,017,000 | 225,771,000 | 214,182,000 | 205,490,000 | 200,863,000 | 191,037,000 | 177,377,000 | 160,310,000 | 126,387,000 | 138,731,000 | 152,368,000 | 115,326,000 | 103,414,000 | 109,087,000 | 112,900,000 | 117,074,000 | 138,055,000 | 134,291,000 | 135,414,000 | 127,903,000 | 108,321,000 | 113,542,000 | 110,826,000 | 101,013,000 | 85,361,000 | 82,711,000 | 83,613,000 | 72,181,000 | 68,937,000 | 73,033,000 | 70,577,000 | 68,704,000 | 59,975,000 | 60,899,000 | 61,506,000 | 54,691,000 | 49,889,000 | 49,889,000 | 49,246,000 |
gross profit | 65,636,000 | 68,934,000 | 68,934,000 | 54,300,000 | 54,300,000 | 60,382,000 | 60,382,000 | 61,696,000 | 68,529,000 | 61,421,000 | 58,903,000 | 74,699,000 | 86,841,000 | 86,841,000 | 93,356,000 | 110,941,000 | 111,116,000 | 113,494,000 | 81,301,000 | 66,241,000 | 69,583,000 | 77,192,000 | 65,445,000 | 82,008,000 | 90,654,000 | 124,192,000 | 109,172,000 | 104,505,000 | 104,079,000 | 103,095,000 | 91,936,000 | 96,932,000 | 110,710,000 | 103,122,000 | 97,788,000 | 100,565,000 | 105,416,000 | 96,327,000 | 77,656,000 | 88,280,000 | 100,474,000 | 102,333,000 | 97,186,000 | 97,925,000 | 100,789,000 | 101,659,000 | 103,430,000 | 87,737,000 | 91,378,000 | 97,688,000 | 94,638,000 | 99,849,000 | 94,973,000 | 96,310,000 | 90,377,000 | 87,786,000 | 81,154,000 | 75,707,000 | 69,562,000 | 72,824,000 | 66,464,000 | 55,745,000 | 41,260,000 | 42,931,000 | 48,459,000 | 62,293,000 | 66,409,000 | 63,863,000 | 62,845,000 | 63,778,000 | 55,954,000 | 60,030,000 | 53,176,000 | 50,558,000 | 45,377,000 | 44,548,000 | 38,152,000 | 39,136,000 | 38,639,000 | 35,919,000 | 34,529,000 | 32,532,000 | 28,397,000 | 27,526,000 | 25,302,000 | 21,094,000 | 19,114,000 | 19,114,000 | 18,460,000 |
operating expenses | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
research and development | 19,592,000 | 20,738,000 | 20,738,000 | 20,831,000 | 20,831,000 | 22,134,000 | 22,134,000 | 20,250,000 | 22,167,000 | 22,205,000 | 23,821,000 | 23,080,000 | 23,472,000 | 23,472,000 | 22,586,000 | 23,829,000 | 23,376,000 | 24,529,000 | 21,144,000 | 19,739,000 | 20,799,000 | 19,537,000 | 18,814,000 | 18,832,000 | 19,143,000 | 35,253,000 | 31,371,000 | 28,947,000 | 25,436,000 | 23,127,000 | 23,357,000 | 22,683,000 | 23,491,000 | 21,935,000 | 21,804,000 | 22,137,000 | 23,373,000 | 21,572,000 | 21,102,000 | 20,452,000 | 22,908,000 | 23,337,000 | 22,476,000 | 22,181,000 | 22,529,000 | 23,320,000 | 23,981,000 | 15,338,000 | 14,789,000 | 17,399,000 | 14,757,000 | 14,121,000 | 13,597,000 | 12,738,000 | 11,350,000 | 11,014,000 | 10,158,000 | 10,564,000 | 9,945,000 | 9,305,000 | 7,854,000 | 7,353,000 | 7,496,000 | 7,353,000 | 8,184,000 | 8,267,000 | 8,584,000 | 8,738,000 | 7,189,000 | 7,816,000 | 6,909,000 | 6,156,000 | 5,247,000 | 4,675,000 | 3,989,000 | 4,532,000 | 3,158,000 | 3,342,000 | 3,207,000 | 2,837,000 | 2,566,000 | 2,730,000 | 2,277,000 | 2,343,000 | 2,243,000 | 2,079,000 | 1,882,000 | 1,882,000 | 2,016,000 |
sales, general and administrative | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
total operating expenses | 68,510,000 | 68,511,000 | 68,511,000 | 72,078,000 | 72,078,000 | 72,357,000 | 72,357,000 | 73,874,000 | 70,680,000 | 71,471,000 | 73,006,000 | 73,848,000 | 73,926,000 | 73,926,000 | 71,852,000 | 79,614,000 | 77,274,000 | 81,328,000 | 72,434,000 | 65,572,000 | 69,794,000 | 65,127,000 | 63,818,000 | 67,804,000 | 71,848,000 | 107,526,000 | 98,802,000 | 89,243,000 | 84,651,000 | 77,667,000 | 72,768,000 | 74,106,000 | 77,630,000 | 73,383,000 | 70,928,000 | 72,263,000 | 74,750,000 | 69,298,000 | 65,481,000 | 69,077,000 | 74,109,000 | 74,346,000 | 72,549,000 | 73,467,000 | 72,412,000 | 74,715,000 | 76,706,000 | 64,054,000 | 61,815,000 | 66,887,000 | 63,653,000 | 63,504,000 | 61,254,000 | 63,189,000 | 60,934,000 | 57,307,000 | 55,824,000 | 53,991,000 | 48,843,000 | 49,104,000 | 48,593,000 | 41,085,000 | 39,823,000 | 44,024,000 | 44,501,000 | 46,620,000 | 47,653,000 | 49,130,000 | 44,913,000 | 45,308,000 | 42,278,000 | 40,896,000 | 35,913,000 | 33,959,000 | 31,720,000 | 29,637,000 | 24,608,000 | 25,792,000 | 25,473,000 | 23,670,000 | 22,850,000 | 22,979,000 | 20,943,000 | 20,696,000 | 19,499,000 | 17,324,000 | 15,747,000 | 15,747,000 | 15,235,000 |
operating income | -2,874,000 | -648,000 | -648,000 | -17,778,000 | -17,778,000 | -11,975,000 | -11,975,000 | -12,178,000 | -2,151,000 | -10,050,000 | 30,339,000 | 851,000 | 12,915,000 | 12,915,000 | 21,504,000 | 31,327,000 | 33,842,000 | 32,166,000 | 8,867,000 | 669,000 | -211,000 | 12,065,000 | 326,000 | 14,008,000 | 17,416,000 | 9,611,000 | -2,995,000 | 8,487,000 | 19,301,000 | 25,394,000 | 19,093,000 | 22,789,000 | 33,043,000 | 29,856,000 | 25,514,000 | 25,614,000 | 30,644,000 | 26,013,000 | 11,201,000 | 17,499,000 | -46,585,000 | 26,558,000 | 24,581,000 | 23,499,000 | 23,553,000 | 24,239,000 | 21,582,000 | 23,665,000 | 28,403,000 | 30,532,000 | 30,985,000 | 36,194,000 | 33,686,000 | 33,077,000 | 27,574,000 | 30,532,000 | 25,131,000 | 21,724,000 | 20,800,000 | 23,707,000 | 17,860,000 | 14,556,000 | 1,419,000 | -1,769,000 | 1,193,000 | 14,709,000 | 18,756,000 | 14,733,000 | 17,932,000 | 18,470,000 | 9,576,000 | 19,134,000 | 17,263,000 | 13,699,000 | 13,657,000 | 14,911,000 | 13,510,000 | 13,307,000 | 13,128,000 | 12,211,000 | 11,639,000 | 9,512,000 | 7,414,000 | 6,788,000 | 5,752,000 | 3,724,000 | 3,325,000 | 3,325,000 | 3,236,000 |
net income | -1,669,000 | -84,799,000 | -84,799,000 | -8,587,000 | -8,587,000 | -9,712,000 | -9,712,000 | -6,044,000 | 2,801,000 | -8,534,000 | -57,210,000 | -991,000 | 9,584,000 | 9,584,000 | 17,834,000 | 22,960,000 | 30,948,000 | 25,535,000 | 5,983,000 | -4,173,000 | -420,000 | 12,529,000 | 839,000 | 12,843,000 | -12,948,000 | 9,949,000 | -5,230,000 | 5,590,000 | -31,934,000 | 20,794,000 | 14,582,000 | 15,994,000 | 22,109,000 | 21,119,000 | 16,034,000 | 16,589,000 | 21,807,000 | 15,099,000 | 3,667,000 | 8,011,000 | -40,353,000 | 20,025,000 | 14,705,000 | 14,411,000 | 11,432,000 | 14,457,000 | 13,985,000 | 15,343,000 | 16,079,000 | 23,791,000 | 21,522,000 | 25,147,000 | 22,835,000 | 26,747,000 | 20,597,000 | 21,189,000 | 13,622,000 | 13,095,000 | 10,465,000 | 13,727,000 | 7,853,000 | 8,530,000 | -3,280,000 | 42,000 | -7,343,000 | 3,103,000 | 11,064,000 | 11,226,000 | 12,534,000 | 13,266,000 | 6,133,000 | 14,021,000 | 13,449,000 | 7,980,000 | 9,835,000 | 9,868,000 | 8,868,000 | 8,594,000 | 8,301,000 | 7,860,000 | 8,564,000 | 5,876,000 | 4,875,000 | 4,150,000 | 3,932,000 | -3,950,000 | 11,503,000 | 11,503,000 | 1,612,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.
