Fix binary functions
Add benchmarks