anchor.diff:  [source,solidity]
   ----
   
  -  return _declineRelayedCall(uint256(GSNRecipientSignedDataErrorCodes.INVALID_SIGNER));
  +  return _rejectRelayedCall(uint256(GSNBouncerSignatureErrorCodes.INVALID_SIGNER));
   
     // Defined on base class GSNBouncerBase
     // uint256 constant private RELAYED_CALL_REJECTED = 11;
  -  // function _declineRelayedCall(uint256 errorCode) internal pure returns (uint256, bytes memory) {
  +  // function _rejectRelayedCall(uint256 errorCode) internal pure returns (uint256, bytes memory) {
     //    return (RELAYED_CALL_REJECTED + errorCode, "");
     // }
   ----
  
positive.code: [source,solidity]
  ----
  
    return _confirmRelayedCall();
  
    // Defined on base class GSNBouncerBase
    // uint256 constant private RELAYED_CALL_ACCEPTED = 0;
    // function _confirmRelayedCall(bytes memory context) internal pure returns (uint256, bytes memory) {
    //    return (RELAYED_CALL_ACCEPTED, context);
    // }
  ----
  
negative.code:           address(this) // Prevents replays in multiple recipients
        );
        if (keccak256(blob).toEthSignedMessageHash().recover(approvalData) == _trustedSigner) {
            return _approveRelayedCall();
        } else {
            return _rejectRelayedCall(uint256(GSNRecipientSignedDataErrorCodes.INVALID_SIGNER));
        }
    }
  ----
  