first version, implement add and minus operator