Add subtotal and modify to_s