Feb 16                           
            2024                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $132,075               
              $44.56 p/Share               
          
        
            
        
          
              2,964 
              Added 4.17% 
          
   
         
        
          
            68,037  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Feb 01                           
            2024                           
          
        
          
            
              SELL 
            
            
                Payment of exercise price or tax liability 
            
                            
         
        
          
              $171,192               
              $45.11 p/Share               
          
        
            
        
          
              3,795 
              Reduced 5.51% 
          
   
         
        
          
            65,073  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Feb 01                           
            2024                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $449,115               
              $45.11 p/Share               
          
        
            
        
          
              9,956 
              Added 12.63% 
          
   
         
        
          
            68,868  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Feb 17                           
            2023                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $127,348               
              $50.98 p/Share               
          
        
            
        
          
              2,498 
              Added 4.07% 
          
   
         
        
          
            58,816  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Feb 01                           
            2023                           
          
        
          
            
              SELL 
            
            
                Payment of exercise price or tax liability 
            
                            
         
        
          
              $27,696               
              $51.48 p/Share               
          
        
            
        
          
              538 
              Reduced 0.95% 
          
   
         
        
          
            56,318  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jan 26                           
            2023                           
          
        
          
            
              SELL 
            
            
                Payment of exercise price or tax liability 
            
                            
         
        
          
              $45,253               
              $48.87 p/Share               
          
        
            
        
          
              926 
              Reduced 1.6% 
          
   
         
        
          
            56,856  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jan 26                           
            2023                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $131,949               
              $48.87 p/Share               
          
        
            
        
          
              2,700 
              Added 4.46% 
          
   
         
        
          
            57,782  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Nov 01                           
            2022                           
          
        
          
            
              SELL 
            
            
                Payment of exercise price or tax liability 
            
                            
         
        
          
              $10,559               
              $55.87 p/Share               
          
        
            
        
          
              189 
              Reduced 0.34% 
          
   
         
        
          
            55,064  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Feb 18                           
            2022                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $118,129               
              $53.94 p/Share               
          
        
            
        
          
              2,190 
              Added 3.82% 
          
   
         
        
          
            55,202  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Feb 01                           
            2022                           
          
        
          
            
              SELL 
            
            
                Payment of exercise price or tax liability 
            
                            
         
        
          
              $16,976               
              $52.72 p/Share               
          
        
            
        
          
              322 
              Reduced 0.6% 
          
   
         
        
          
            53,013  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jan 27                           
            2022                           
          
        
          
            
              SELL 
            
            
                Payment of exercise price or tax liability 
            
                            
         
        
          
              $46,619               
              $53.77 p/Share               
          
        
            
        
          
              867 
              Reduced 1.6% 
          
   
         
        
          
            53,335  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jan 27                           
            2022                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $138,350               
              $53.77 p/Share               
          
        
            
        
          
              2,573 
              Added 4.53% 
          
   
         
        
          
            54,202  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Nov 01                           
            2021                           
          
        
          
            
              SELL 
            
            
                Payment of exercise price or tax liability 
            
                            
         
        
          
              $18,753               
              $49.48 p/Share               
          
        
            
        
          
              379 
              Reduced 0.73% 
          
   
         
        
          
            51,612  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Feb 15                           
            2021                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $123,231               
              $37.14 p/Share               
          
        
            
        
          
              3,318 
              Added 6.03% 
          
   
         
        
          
            51,717  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jan 13                           
            2021                           
          
        
          
            
              SELL 
            
            
                Payment of exercise price or tax liability 
            
                            
         
        
          
              $24,444               
              $33.67 p/Share               
          
        
            
        
          
              726 
              Reduced 1.48% 
          
   
         
        
          
            48,399  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jan 13                           
            2021                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $49,192               
              $33.67 p/Share               
          
        
            
        
          
              1,461 
              Added 2.89% 
          
   
         
        
          
            49,125  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Nov 01                           
            2020                           
          
        
          
            
              SELL 
            
            
                Payment of exercise price or tax liability 
            
                            
         
        
          
              $18,319               
              $22.87 p/Share               
          
        
            
        
          
              801 
              Reduced 1.66% 
          
   
         
        
          
            47,360  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jan 09                           
            2020                           
          
        
          
            
              SELL 
            
            
                Payment of exercise price or tax liability 
            
                            
         
        
          
              $75,726               
              $43.95 p/Share               
          
        
            
        
          
              1,723 
              Reduced 3.55% 
          
   
         
        
          
            46,822  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jan 09                           
            2020                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $156,682               
              $43.95 p/Share               
          
        
            
        
          
              3,565 
              Added 6.84% 
          
   
         
        
          
            48,545  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Nov 15                           
            2019                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $79,009               
              $40.98 p/Share               
          
        
            
        
          
              1,928 
              Added 4.13% 
          
   
         
        
          
            44,794  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Nov 01                           
            2019                           
          
        
          
            
              SELL 
            
            
                Payment of exercise price or tax liability 
            
                            
         
        
          
              $37,791               
              $39.0 p/Share               
          
        
            
        
          
              969 
              Reduced 2.21% 
          
   
         
        
          
            42,866  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jan 08                           
            2019                           
          
        
          
            
              SELL 
            
            
                Sale (or disposition) back to the issuer 
            
                            
         
        
          
              $66,244               
              $34.52 p/Share               
          
        
            
        
          
              1,919 
              Reduced 4.25% 
          
   
         
        
          
            43,220  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jan 08                           
            2019                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $206,257               
              $34.52 p/Share               
          
        
            
        
          
              5,975 
              Added 11.69% 
          
   
         
        
          
            45,139  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Nov 15                           
            2018                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $76,010               
              $39.14 p/Share               
          
        
            
        
          
              1,942 
              Added 4.75% 
          
   
         
        
          
            38,975  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Nov 01                           
            2018                           
          
        
          
            
              SELL 
            
            
                Payment of exercise price or tax liability 
            
                            
         
        
          
              $55,052               
              $41.96 p/Share               
          
        
            
        
          
              1,312 
              Reduced 3.42% 
          
   
         
        
          
            37,033  
            Common Stock