add xDecode function