v3.26.1
CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2026
Jun. 30, 2025
Jun. 30, 2026
Jun. 30, 2025
Revenues        
Revenues $ 411,643 $ 322,606 $ 771,131 $ 594,512
Cost of revenues        
Cost of revenues 306,087 245,662 579,729 453,842
Gross profit 105,556 76,944 191,402 140,670
Operating expenses        
Selling and marketing expenses 36,182 24,778 67,424 43,336
General and administrative expenses 19,164 13,031 28,926 27,371
Research and development expenses 2,691 3,184 5,049 5,677
Losses on disposal of property and equipment 8 108 13 120
Total operating expenses 58,045 41,101 101,412 76,504
Operating income 47,511 35,843 89,990 64,166
Interest expense (106) (32) (226) (55)
Interest income 3,058 2,814 6,042 5,435
Foreign currency exchange gains (losses), net (847) 647 (1,127) 1,439
Others, net 293 1,682 1,147 2,474
Income before income taxes 49,909 40,954 95,826 73,459
Income tax expense (7,574) (6,402) (15,367) (11,761)
Net income 42,335 34,552 80,459 61,698
Foreign currency translation adjustment, net of nil income taxes 317 879 265 1,290
Net unrealized gain (loss) on available-for-sale investments 5 (1) (3) (7)
Intra-entity foreign currency transactions gain (loss) (240) 3,386 (1,849) 5,022
Release of foreign currency translation reserve related to liquidation of subsidiaries (18) 0 (51) (1)
Total other comprehensive income (loss) 64 4,264 (1,638) 6,304
Comprehensive Income $ 42,399 $ 38,816 $ 78,821 $ 68,002
Net income per ordinary share        
Basic (in USD per share) $ 1.16 $ 0.91 $ 2.20 $ 1.58
Diluted (in USD per share) $ 1.16 $ 0.91 $ 2.19 $ 1.58
Weighted average number of ordinary shares outstanding used in computing net income per ordinary share        
Basic (in shares) 36,531,397 38,073,239 36,607,246 39,041,373
Diluted (in shares) 36,546,441 38,106,956 36,658,585 39,117,361
Service revenues        
Revenues        
Revenues $ 120,826 $ 96,924 $ 237,366 $ 190,992
Cost of revenues        
Cost of revenues 106,715 85,856 213,345 165,012
Product revenues        
Revenues        
Revenues 290,817 225,682 533,765 403,520
Cost of revenues        
Cost of revenues $ 199,372 $ 159,806 $ 366,384 $ 288,830