code: def jsonHook(encoded):
          
          if '__Ci__' in encoded:
              return Ci._fromJSON(encoded['__Ci__'])
          elif '__MzmlProduct__' in encoded:
              return MzmlProduct._fromJSON(encoded['__MzmlProduct__'])
          elif '__MzmlPrecursor__' in encoded:
              return MzmlPrecursor._fromJSON(encoded['__MzmlPrecursor__'])
          else:
              return encoded
docs: Custom JSON decoder that allows construction of a new ``Ci`` instance
          from a decoded JSON object.
  
          :param encoded: a JSON decoded object literal (a dict)
  
          :returns: "encoded" or one of the these objects: :class:`Ci`,
              :class:`MzmlProduct`, :class:`MzmlPrecursor`