fixed operators and add tests