All operators + functions implemented (but not tested) in c#