v3.25.1
Earnings Per Share (Tables)
9 Months Ended
Apr. 30, 2025
Earnings Per Share [Abstract]  
Schedule of Weighted-Average Number of Shares Basic and Diluted

The weighted-average number of shares used in the calculation of basic and diluted earnings per share attributable to the Company’s common stockholders consists of the following (in thousands):

 

   Three Months Ended   Nine Months Ended 
   April 30,   April 30, 
   2025   2024   2025   2024 
Basic weighted-average number of shares   13,720    14,191    13,835    14,077 
Effect of dilutive securities:                    
Stock options   220    349    
-
    
-
 
Non-vested restricted Class B common stock   
-
    1    
-
    
-
 
Deferred stock units   
-
    1    
-
    
-
 
Diluted weighted-average number of shares   13,940    14,542    13,835    14,077 
Schedule of the Dilutive Earnings per Share

The following shares were excluded from the dilutive earnings per share computations because their inclusion would have been anti-dilutive (in thousands):

 

   Three Months Ended   Nine Months Ended 
   April 30,   April 30, 
   2025   2024   2025   2024 
Stock options   170    126    892    861 
Non-vested restricted Class B common stock   77    181    78    216 
Deferred stock units   90    201    54    203 
Shares excluded from the calculation of diluted earnings per share   337    508    1,024    1,280