Quarterly
Annual
| Unit: USD | 2023-12-31 | 2023-09-30 | 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
revenue | 513,200,000 | 550,400,000 | 577,200,000 | 513,400,000 | 482,600,000 | 536,100,000 | 502,500,000 | 459,300,000 | 405,300,000 | 424,800,000 | 441,000,000 | 407,500,000 | 393,100,000 | 437,500,000 | 436,600,000 | 401,900,000 | 393,200,000 | 474,900,000 | 469,800,000 | 434,900,000 | 425,400,000 | 442,700,000 | 436,000,000 | 406,100,000 | 366,100,000 | 384,800,000 | 378,000,000 | 346,600,000 | 313,200,000 | 371,100,000 | 385,100,000 | 346,800,000 | 363,700,000 | 433,800,000 | 431,600,000 | 397,800,000 | 426,700,000 | 440,100,000 | 356,800,000 | 331,400,000 | 341,800,000 | 395,200,000 | 370,900,000 | 370,400,000 | 374,900,000 | 387,900,000 | 411,300,000 | 380,900,000 | 385,200,000 | 401,000,000 | 393,600,000 | 359,100,000 | 307,800,000 | 336,300,000 | 327,100,000 | 274,300,000 | 270,300,000 | 289,800,000 | 291,600,000 | 272,700,000 | 288,900,000 | 369,400,000 | 375,300,000 | 347,500,000 | 326,800,000 | 347,100,000 | 360,000,000 | 321,100,000 | 282,600,000 | 314,400,000 | 297,900,000 | 264,600,000 | 262,300,000 | 255,967,000 | 266,300,000 | 232,000,000 |
cost of revenue | 431,900,000 | 439,000,000 | 464,700,000 | 409,300,000 | 406,500,000 | 439,700,000 | 419,400,000 | 370,300,000 | 332,400,000 | 348,900,000 | 343,900,000 | 319,300,000 | 303,900,000 | 329,800,000 | 334,700,000 | 340,300,000 | 318,300,000 | 382,300,000 | 375,600,000 | 353,800,000 | 351,200,000 | 359,700,000 | 352,800,000 | 311,400,000 | 290,500,000 | 293,600,000 | 294,700,000 | 275,300,000 | 241,500,000 | 294,100,000 | 303,800,000 | 288,500,000 | 307,300,000 | 359,100,000 | 356,800,000 | 343,500,000 | 369,700,000 | 377,000,000 | 311,900,000 | 285,100,000 | 294,700,000 | 330,600,000 | 318,900,000 | 320,500,000 | 321,400,000 | 331,400,000 | 344,900,000 | 326,900,000 | 357,500,000 | 333,900,000 | 330,900,000 | 313,600,000 | 268,700,000 | 280,400,000 | 272,300,000 | 233,700,000 | 236,700,000 | 237,500,000 | 238,500,000 | 233,900,000 | 263,000,000 | 295,200,000 | 306,100,000 | 291,500,000 | 275,800,000 | 283,700,000 | 285,900,000 | 267,700,000 | 238,700,000 | 258,100,000 | 251,300,000 | 221,700,000 | 221,500,000 | 212,000,000 | 219,700,000 | 193,800,000 |
gross profit | 81,300,000 | 111,400,000 | 112,500,000 | 104,100,000 | 76,100,000 | 96,400,000 | 83,100,000 | 89,000,000 | 72,900,000 | 75,900,000 | 97,100,000 | 88,200,000 | 89,200,000 | 107,700,000 | 101,900,000 | 61,600,000 | 74,900,000 | 92,600,000 | 94,200,000 | 81,100,000 | 74,200,000 | 83,000,000 | 83,200,000 | 94,700,000 | 75,600,000 | 91,200,000 | 83,300,000 | 71,300,000 | 71,700,000 | 77,000,000 | 81,300,000 | 58,300,000 | 56,400,000 | 74,700,000 | 74,800,000 | 54,300,000 | 57,000,000 | 63,100,000 | 44,900,000 | 46,300,000 | 47,100,000 | 64,600,000 | 52,000,000 | 49,900,000 | 53,500,000 | 56,500,000 | 66,400,000 | 54,000,000 | 27,700,000 | 67,100,000 | 62,700,000 | 45,500,000 | 39,100,000 | 55,900,000 | 54,800,000 | 40,600,000 | 33,600,000 | 52,300,000 | 53,100,000 | 38,800,000 | 25,900,000 | 74,200,000 | 69,200,000 | 56,000,000 | 51,000,000 | 63,400,000 | 74,100,000 | 53,400,000 | 43,900,000 | 56,300,000 | 46,600,000 | 42,900,000 | 40,800,000 | 43,967,000 | 46,600,000 | 38,200,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 |
sales, general and administrative | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
total operating expenses | 45,000,000 | 58,100,000 | 58,100,000 | 55,600,000 | 48,500,000 | 53,600,000 | 54,000,000 | 53,300,000 | 52,600,000 | 51,200,000 | 52,200,000 | 50,600,000 | 53,400,000 | 47,500,000 | 48,100,000 | 48,200,000 | 49,800,000 | 51,900,000 | 51,900,000 | 52,400,000 | 52,100,000 | 50,900,000 | 59,500,000 | 49,900,000 | 51,800,000 | 45,500,000 | 43,600,000 | 42,200,000 | 48,800,000 | 46,400,000 | 43,300,000 | 45,400,000 | 44,700,000 | 47,700,000 | 48,800,000 | 46,800,000 | 55,100,000 | 43,200,000 | 31,600,000 | 30,300,000 | 39,300,000 | 25,500,000 | 23,500,000 | 25,000,000 | 27,600,000 | 25,700,000 | 25,700,000 | 24,800,000 | 46,900,000 | 26,800,000 | 25,600,000 | 24,700,000 | 23,200,000 | 22,400,000 | 22,000,000 | 23,800,000 | 23,600,000 | 19,100,000 | 19,800,000 | 20,400,000 | 25,700,000 | 22,600,000 | 23,100,000 | 24,400,000 | 33,400,000 | 23,200,000 | 28,100,000 | 25,300,000 | 29,000,000 | 24,200,000 | 24,900,000 | 26,900,000 | 24,700,000 | 24,667,000 | 25,300,000 | 23,400,000 |
operating income | 36,300,000 | 53,300,000 | 54,400,000 | 50,300,000 | 27,600,000 | 42,800,000 | 29,100,000 | 38,200,000 | 43,700,000 | 24,600,000 | 44,300,000 | 43,900,000 | 34,800,000 | 58,600,000 | 49,700,000 | 13,600,000 | 24,300,000 | 39,600,000 | 38,500,000 | 28,400,000 | 13,600,000 | 31,200,000 | 22,300,000 | 43,300,000 | 12,200,000 | 34,700,000 | 37,600,000 | 27,600,000 | 18,900,000 | 27,700,000 | 32,000,000 | 7,800,000 | -90,600,000 | 27,000,000 | 26,000,000 | 8,000,000 | 2,100,000 | 17,300,000 | 13,300,000 | 500,000 | 7,800,000 | 39,100,000 | 28,500,000 | 24,900,000 | 25,900,000 | 30,800,000 | 40,700,000 | 29,200,000 | -19,200,000 | 40,300,000 | 37,100,000 | 20,800,000 | 15,900,000 | 33,500,000 | 32,800,000 | 16,800,000 | 10,000,000 | 33,200,000 | 33,300,000 | 18,400,000 | 200,000 | 51,600,000 | 46,100,000 | 31,600,000 | 17,600,000 | 40,200,000 | 46,000,000 | 28,100,000 | 14,900,000 | 32,100,000 | 21,700,000 | 16,000,000 | 16,100,000 | 19,300,000 | 21,300,000 | 14,800,000 |
net income | 12,900,000 | 26,300,000 | 24,500,000 | 25,500,000 | 13,800,000 | 19,100,000 | 11,700,000 | 18,800,000 | 22,200,000 | 10,200,000 | 26,900,000 | 25,900,000 | 18,600,000 | 75,600,000 | 29,200,000 | -1,400,000 | 20,600,000 | 19,800,000 | 14,700,000 | 11,500,000 | -2,600,000 | 7,600,000 | 600,000 | 17,800,000 | -14,800,000 | 19,800,000 | 19,700,000 | 4,400,000 | 6,400,000 | 12,100,000 | 12,100,000 | -1,300,000 | -87,700,000 | 10,100,000 | 9,000,000 | -3,400,000 | -33,500,000 | -2,700,000 | 1,600,000 | 2,200,000 | -4,100,000 | 19,100,000 | 14,400,000 | 11,000,000 | 13,600,000 | 16,000,000 | 20,400,000 | 15,600,000 | -14,200,000 | 22,400,000 | 19,800,000 | 8,900,000 | 5,100,000 | 15,600,000 | 16,100,000 | 7,300,000 | -13,400,000 | 16,400,000 | 11,700,000 | 4,100,000 | 75,000,000 | 25,500,000 | 24,300,000 | 13,200,000 | -1,700,000 | 25,500,000 | 22,300,000 | 10,500,000 | 3,800,000 | 12,400,000 | 5,000,000 | -6,000,000 | 500,000 | 3,133,000 | 4,200,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.
