added subtract functions