add sub total function