ProperlyConstructed and ImproperlyConstructed annotations added.