added decoding