   self
 NoKeySuppliedForServiceError::__proto__ = Error::
 
-WrongFormatSuppliedError = (format) ->
+InvalidKeyFormatSupplied = (service) ->
+  self = new Error "..."
+  self.name = 'InvalidKeyFormatSupplied'
+  self.__proto__ = InvalidKeyFormatSupplied::
+  self
+InvalidKeyFormatSupplied::__proto__ = Error::
+
+InvalidResponseFormatSuppliedError = (format) ->
   self = new Error "#{format} which you supplied is not supported. \
-                    Use either JSON, XML or omit format completely \
-                    to get the response as a JavaScript object."
-  self.name = 'WrongFormatSuppliedError'
-  self.__proto__ = WrongFormatSuppliedError::
+                    Use either #{availableFormats.join(', ')} or omit \
+                    format completely to get the response as a JavaScript object."
+  self.name = 'InvalidResponseFormatSuppliedError'
+  self.__proto__ = InvalidResponseFormatSuppliedError::
   self
-WrongFormatSuppliedError::__proto__ = Error::
+InvalidResponseFormatSuppliedError::__proto__ = Error::
 
 module.exports =
   NoKeySuppliedError: NoKeySuppliedError
-  WrongKeyNameSuppliedError: WrongKeyNameSuppliedError
+  InvalidKeyNameSuppliedError: InvalidKeyNameSuppliedError
   NoKeySuppliedForServiceError: NoKeySuppliedForServiceError
-  WrongFormatSuppliedError: WrongFormatSuppliedError
+  InvalidResponseFormatSuppliedError: InvalidResponseFormatSuppliedError
+  InvalidKeyFormatSupplied: InvalidKeyFormatSupplied


NoKeySuppliedError = ->
  self = new Error "You have to supply as least one API key."

  self
NoKeySuppliedError::__proto__ = Error::

InvalidKeyNameSuppliedError = (key) ->
  self = new Error "The supplied key '#{key}' should be one of \
                    the following #{availableKeys.join(', ')}"
  self.name = 'InvalidKeyNameSuppliedError'
  self.__proto__ = InvalidKeyNameSuppliedError::
  self
InvalidKeyNameSuppliedError::__proto__ = Error::

NoKeySuppliedForServiceError = (service) ->
  self = new Error "You have not supplied an API key for the #{service} service."
