latest edition with a button to calculate