def _fromJSON(cls, jsonobject):
        """Generates a new instance of :class:`maspy.core.Smi` from a decoded
        JSON object (as generated by :func:`maspy.core.Smi._reprJSON()`).

        :param jsonobject: decoded JSON object

        :returns: a new instance of :class:`Smi`
        """
        newInstance = cls(None, None)
        attribDict = {}
        attribDict['id'] = jsonobject[0]
        attribDict['specfile'] = jsonobject[1]
        attribDict['attributes'] = jsonobject[2]
        attribDict['params'] = [tuple(param) for param in jsonobject[3]]
        attribDict['scanListParams'] = [tuple(param) for param in jsonobject[4]]
        attribDict['scanList'] = jsonobject[5]
        attribDict['precursorList'] = jsonobject[6]
        attribDict['productList'] = jsonobject[7]
        for key, value in viewitems(attribDict):
            setattr(newInstance, key, value)
        return newInstance