v3.7.0.1
FAIR VALUE - Fair Value Measurements (Details) - USD ($)
$ in Thousands
Mar. 31, 2017
Dec. 31, 2016
Mar. 31, 2016
Dec. 31, 2015
Fair value measurements        
Cash and cash equivalents $ 39,206 $ 48,921 $ 52,151 $ 41,135
Marketable securities 235,464 262,179    
Fair Value        
Fair value measurements        
Total 274,670 311,100    
Fair Value Inputs Level 1        
Fair value measurements        
Total 30,706 48,921    
Fair Value Inputs Level 2        
Fair value measurements        
Total 243,964 262,179    
Long-term debt 4,600 4,700    
Cash and Money Market | Fair Value        
Fair value measurements        
Cash and cash equivalents 30,706 48,921    
Cash and Money Market | Fair Value Inputs Level 1        
Fair value measurements        
Cash and cash equivalents 30,706 48,921    
Corporate bonds | Fair Value        
Fair value measurements        
Marketable securities 110,397 136,937    
Corporate bonds | Fair Value Inputs Level 2        
Fair value measurements        
Marketable securities 110,397 136,937    
U.S. government agency securities | Fair Value        
Fair value measurements        
Cash and cash equivalents 3,000      
Marketable securities 49,463 49,474    
U.S. government agency securities | Fair Value Inputs Level 2        
Fair value measurements        
Cash and cash equivalents 3,000      
Marketable securities 49,463 49,474    
Asset backed securities | Fair Value        
Fair value measurements        
Marketable securities 54,241 55,640    
Asset backed securities | Fair Value Inputs Level 2        
Fair value measurements        
Marketable securities 54,241 55,640    
Commercial paper. | Fair Value        
Fair value measurements        
Cash and cash equivalents 4,700      
Marketable securities 17,110 19,076    
Commercial paper. | Fair Value Inputs Level 2        
Fair value measurements        
Cash and cash equivalents 4,700      
Marketable securities 17,110 19,076    
Certificates of deposit | Fair Value        
Fair value measurements        
Cash and cash equivalents 800      
Marketable securities 4,253 1,052    
Certificates of deposit | Fair Value Inputs Level 2        
Fair value measurements        
Cash and cash equivalents 800      
Marketable securities $ 4,253 $ 1,052