anchor.diff:        var arg = queryMap[key];
   
         if (parseArgs[key] != null && arg != null) {
  -        context[key] = JSON.decode(arg);
  +        try {
  +          context[key] = JSON.decode(arg);
  +        } catch (e) {
  +          context['error'] = 'Paths parameter is invalid JSON';
  +        }
         } else {
           context[key] = arg;
         }
  
positive.code:             context['arguments'], context['pathSuffixes'], context['paths']);
        } else {
          return new shelf.Response.internalServerError(
              body: 'Data source does not implement the requested method');
        }
      } catch (e) {
        rethrow;
        return new shelf.Response.internalServerError(body: e.toString());
      }
  
      return new shelf.Response.ok(
  
negative.code:   };
  }
  
  Future<Map> requestToContext(shelf.Request request) async {
    var queryMap = request.method == 'POST'
        ? JSON.decode(await request.readAsString())
        : Uri.parse(request.requestedUri.toString()).queryParameters;
  