Fixed small bug with constraints containing | and cleaned up design