Removed unnecessary opens
Added two case missing in the pattern matching
Fixed Bulding constructor