<p>Fixes #replaceWithIssueNr, fixes #replaceWithIssueNr</p>
<p>Your PR description here.</p>

<hr>

<h4>You can view, comment on, or merge this pull request online at:</h4>
<p>  <a href='https://github.com/bisq-network/bisq/pull/4460'>https://github.com/bisq-network/bisq/pull/4460</a></p>

<h4>Commit Summary</h4>
<ul>
  <li>Cleanup Filter value object. Remove nullables from old versions. Keep signatureAsBase64 nullable as it is set null at creation time and set later after signing. We use filter protobuf data as input for signature so we have to set signature to null and apply the signature afterwards. To keep object immutable we clone it with static clone method. Similar we handle signature verification. We clone the filter with a null value for the signature and do the validation with that cloned object.</li>
  <li>Fix tests</li>
  <li>Merge branch 'master_upstream' into refactor-filter</li>
  <li>Refactoring</li>
  <li>Merge branch 'master_upstream' into refactor-filter</li>
  <li>Fix + prefix in string keys</li>
  <li>- Add support for multiple pubKeys</li>
  <li>Remove dev test code</li>
  <li>Add bannedPrivilegedDevPubKeys field</li>
  <li>Rename bannedSignerPubKeys to bannedAccountWitnessSignerPubKeys</li>
  <li>Fix tests</li>
  <li>Add pub key</li>
  <li>Add isPrivilegedDevPubKeyBanned method</li>
  <li>Rename verifySignature to isSignatureValid</li>
  <li>- Remove isPublicKeyInList check at remove as its irrelevant (dev could</li>
</ul>

<h4>File Changes</h4>
<ul>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/4460/files#diff-fc994868dc872ef96ae9d733a9d1a9b6">common/src/main/java/bisq/common/proto/ProtoUtil.java</a>
    (8)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/4460/files#diff-d9deee426c480d8631711c8b147bbfa4">core/src/main/java/bisq/core/account/sign/SignedWitnessService.java</a>
    (4)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/4460/files#diff-a52b4824e9a7e21f9c9bf6de3dbe1e3a">core/src/main/java/bisq/core/account/witness/AccountAgeWitnessService.java</a>
    (8)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/4460/files#diff-f987aab91f941ae4f362841066637ade">core/src/main/java/bisq/core/filter/Filter.java</a>
    (364)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/4460/files#diff-50f4ec462f015eeca1788f59e768e6b2">core/src/main/java/bisq/core/filter/FilterManager.java</a>
    (491)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/4460/files#diff-1fefd30a85e3d1aeaf0d033096841504">core/src/main/java/bisq/core/trade/protocol/tasks/ApplyFilter.java</a>
    (2)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/4460/files#diff-2b16c2ca0e92ce28cd7268b07a143647">core/src/main/resources/i18n/displayStrings.properties</a>
    (7)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/4460/files#diff-eea4ad19714deccf9b904466935b3731">core/src/test/java/bisq/core/account/sign/SignedWitnessServiceTest.java</a>
    (22)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/4460/files#diff-2c4ac1de579d9cf2721f70b0da448dd4">core/src/test/java/bisq/core/account/witness/AccountAgeWitnessServiceTest.java</a>
    (4)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/4460/files#diff-1325c0c0de31b80598af0d29ea467d62">core/src/test/java/bisq/core/user/UserPayloadModelVOTest.java</a>
    (12)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/4460/files#diff-f2c8ef9341460b8752d66d370adb1d9b">core/src/test/java/bisq/core/util/FeeReceiverSelectorTest.java</a>
    (29)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/4460/files#diff-4c0d6cc3fa01c9bff1ca74e51ce323cb">desktop/src/main/java/bisq/desktop/main/overlays/windows/FilterWindow.java</a>
    (187)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/4460/files#diff-41caf249b58a6c497f396da0a67168e4">proto/src/main/proto/pb.proto</a>
    (3)
  </li>
</ul>

<h4>Patch Links:</h4>
<ul>
  <li><a href='https://github.com/bisq-network/bisq/pull/4460.patch'>https://github.com/bisq-network/bisq/pull/4460.patch</a></li>
  <li><a href='https://github.com/bisq-network/bisq/pull/4460.diff'>https://github.com/bisq-network/bisq/pull/4460.diff</a></li>
</ul>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/bisq-network/bisq/pull/4460">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/AJFFTNSHZSMO2VRMN4MSQDTSDT7VLANCNFSM4QRY4MRQ">unsubscribe</a>.<img src="https://github.com/notifications/beacon/AJFFTNTTOGZG2LD3LPY6XOLSDT7VLA5CNFSM4QRY4MR2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4KJDM7GQ.gif" height="1" width="1" alt="" /></p>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/bisq-network/bisq/pull/4460",
"url": "https://github.com/bisq-network/bisq/pull/4460",
"name": "View Pull Request"
},
"description": "View this Pull Request on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>