May 01                           
            2024                           
          
        
          
            
              SELL 
            
            
                Open market or private sale 
            
                            
         
        
          
              $39,516               
              $46.82 p/Share               
          
        
            
        
          
              844 
              Reduced 1.41% 
          
   
         
        
          
            58,842  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Feb 16                           
            2024                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $234,029               
              $44.56 p/Share               
          
        
            
        
          
              5,252 
              Added 8.13% 
          
   
         
        
          
            59,309  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Feb 01                           
            2024                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $917,176               
              $45.11 p/Share               
          
        
            
        
          
              20,332 
              Added 27.33% 
          
   
         
        
          
            54,057  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jul 26                           
            2023                           
          
        
          
            
              SELL 
            
            
                Open market or private sale 
            
                            
         
        
          
              $82,585               
              $43.65 p/Share               
          
        
            
        
          
              1,892 
              Reduced 5.38% 
          
   
         
        
          
            33,263  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Feb 17                           
            2023                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $225,535               
              $50.98 p/Share               
          
        
            
        
          
              4,424 
              Added 11.32% 
          
   
         
        
          
            34,664  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jan 30                           
            2023                           
          
        
          
            
              SELL 
            
            
                Open market or private sale 
            
                            
         
        
          
              $334,551               
              $50.12 p/Share               
          
        
            
        
          
              6,675 
              Reduced 18.08% 
          
   
         
        
          
            30,240  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jan 26                           
            2023                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $314,038               
              $48.87 p/Share               
          
        
            
        
          
              6,426 
              Added 14.83% 
          
   
         
        
          
            36,915  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Aug 01                           
            2022                           
          
        
          
            
              SELL 
            
            
                Open market or private sale 
            
                            
         
        
          
              $61,550               
              $49.24 p/Share               
          
        
            
        
          
              1,250 
              Reduced 3.97% 
          
   
         
        
          
            30,260  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Feb 18                           
            2022                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $211,930               
              $53.94 p/Share               
          
        
            
        
          
              3,929 
              Added 11.15% 
          
   
         
        
          
            31,303  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jan 27                           
            2022                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $259,225               
              $53.77 p/Share               
          
        
            
        
          
              4,821 
              Added 14.97% 
          
   
         
        
          
            27,374  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Nov 01                           
            2021                           
          
        
          
            
              SELL 
            
            
                Payment of exercise price or tax liability 
            
                            
         
        
          
              $18,258               
              $49.48 p/Share               
          
        
            
        
          
              369 
              Reduced 1.61% 
          
   
         
        
          
            22,487  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Aug 01                           
            2021                           
          
        
          
            
              SELL 
            
            
                Payment of exercise price or tax liability 
            
                            
         
        
          
              $39,645               
              $43.71 p/Share               
          
        
            
        
          
              907 
              Reduced 3.83% 
          
   
         
        
          
            22,784  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            May 14                           
            2021                           
          
        
          
            
              SELL 
            
            
                Open market or private sale 
            
                            
         
        
          
              $36,301               
              $50.07 p/Share               
          
        
            
        
          
              725 
              Reduced 2.98% 
          
   
         
        
          
            23,624  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            May 03                           
            2021                           
          
        
          
            
              SELL 
            
            
                Open market or private sale 
            
                            
         
        
          
              $156,545               
              $47.8 p/Share               
          
        
            
        
          
              3,275 
              Reduced 11.87% 
          
   
         
        
          
            24,323  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Feb 24                           
            2021                           
          
        
          
            
              SELL 
            
            
                Open market or private sale 
            
                            
         
        
          
              $94,024               
              $40.88 p/Share               
          
        
            
        
          
              2,300 
              Reduced 7.71% 
          
   
         
        
          
            27,527  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Feb 19                           
            2021                           
          
        
          
            
              SELL 
            
            
                Open market or private sale 
            
                            
         
        
          
              $357,390               
              $37.62 p/Share               
          
        
            
        
          
              9,500 
              Reduced 24.16% 
          
   
         
        
          
            29,827  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Feb 16                           
            2021                           
          
        
          
            
              SELL 
            
            
                Open market or private sale 
            
                            
         
        
          
              $7,650               
              $38.25 p/Share               
          
        
            
        
          
              200 
              Reduced 0.51% 
          
   
         
        
          
            39,327  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Feb 15                           
            2021                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $251,735               
              $37.14 p/Share               
          
        
            
        
          
              6,778 
              Added 14.64% 
          
   
         
        
          
            39,527  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jan 13                           
            2021                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $89,731               
              $33.67 p/Share               
          
        
            
        
          
              2,665 
              Added 7.53% 
          
   
         
        
          
            32,749  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Nov 01                           
            2020                           
          
        
          
            
              SELL 
            
            
                Payment of exercise price or tax liability 
            
                            
         
        
          
              $22,230               
              $22.87 p/Share               
          
        
            
        
          
              972 
              Reduced 3.15% 
          
   
         
        
          
            29,910  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jul 29                           
            2020                           
          
        
          
            
              SELL 
            
            
                Open market or private sale 
            
                            
         
        
          
              $67,946               
              $18.99 p/Share               
          
        
            
        
          
              3,578 
              Reduced 10.46% 
          
   
         
        
          
            30,623  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jan 09                           
            2020                           
          
        
          
            
              SELL 
            
            
                Payment of exercise price or tax liability 
            
                            
         
        
          
              $116,511               
              $43.95 p/Share               
          
        
            
        
          
              2,651 
              Reduced 7.3% 
          
   
         
        
          
            33,668  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Jan 09                           
            2020                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $244,142               
              $43.95 p/Share               
          
        
            
        
          
              5,555 
              Added 13.27% 
          
   
         
        
          
            36,319  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Nov 15                           
            2019                           
          
        
          
            
              BUY 
            
            
                Grant, award, or other acquisition 
            
                            
         
        
          
              $188,016               
              $40.98 p/Share               
          
        
            
        
          
              4,588 
              Added 12.98% 
          
   
         
        
          
            30,764  
            Common Stock 
          
          
        
          
             
           
                
        
      
      
        
            Nov 12                           
            2019                           
          
        
          
            
              SELL 
            
            
                Open market or private sale 
            
                            
         
        
          
              $85,012               
              $41.94 p/Share               
          
        
            
        
          
              2,027 
              Reduced 7.19% 
          
   
         
        
          
            26,176  
            Common Stock