Trying out Eq and other type constraints
Intial Modulo implemenation