#30 added uniqueKeyException