<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<div class="moz-cite-prefix">Hello Danny,</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">Thanks again for your feedback.</div>
<span data-offset-key="6lgv3-97-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-97-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> It</span></span></span><span data-offset-key="6lgv3-98-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-98-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> appears</span></span></span><span data-offset-key="6lgv3-99-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-99-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> that</span></span></span><span data-offset-key="6lgv3-100-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-100-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> Sax</span></span></span><span data-offset-key="6lgv3-101-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-101-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;">on</span></span></span><span data-offset-key="6lgv3-102-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-102-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> is</span></span></span><span data-offset-key="6lgv3-103-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-103-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> evaluating</span></span></span><span data-offset-key="6lgv3-104-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-104-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> the</span></span></span><span data-offset-key="6lgv3-105-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-105-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> map</span></span></span><span data-offset-key="6lgv3-106-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-106-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;">:</span></span></span><span data-offset-key="6lgv3-107-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-107-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;">cont</span></span></span><span data-offset-key="6lgv3-108-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-108-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;">ains</span></span></span><span data-offset-key="6lgv3-109-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-109-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;">()</span></span></span><span data-offset-key="6lgv3-110-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-110-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> function</span></span></span><span data-offset-key="6lgv3-111-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-111-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> when</span></span></span><span data-offset-key="6lgv3-112-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-112-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> it</span></span></span><span data-offset-key="6lgv3-113-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-113-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> should</span></span></span><span data-offset-key="6lgv3-114-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-114-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> not</span></span></span><span data-offset-key="6lgv3-115-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-115-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;">.</span></span></span><span data-offset-key="6lgv3-116-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-116-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> We</span></span></span><span data-offset-key="6lgv3-117-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-117-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> have</span></span></span><span data-offset-key="6lgv3-118-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-118-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> added</span></span></span><span data-offset-key="6lgv3-119-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-119-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> an</span></span></span><span data-offset-key="6lgv3-120-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-120-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> issue</span></span></span><span data-offset-key="6lgv3-121-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-121-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> to</span></span></span><span data-offset-key="6lgv3-122-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-122-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> the</span></span></span><span data-offset-key="6lgv3-123-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-123-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> Sax</span></span></span><span data-offset-key="6lgv3-124-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-124-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;">onica</span></span></span><span data-offset-key="6lgv3-125-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-125-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> issue</span></span></span><span data-offset-key="6lgv3-126-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-126-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> tracker</span></span></span><span data-offset-key="6lgv3-127-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-127-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> to</span></span></span><span data-offset-key="6lgv3-128-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-128-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> verify</span></span></span><span data-offset-key="6lgv3-129-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-129-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> the</span></span></span><span data-offset-key="6lgv3-130-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-130-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> situation</span></span></span><span data-offset-key="6lgv3-131-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-131-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> and</span></span></span><span data-offset-key="6lgv3-132-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-132-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> will</span></span></span><span data-offset-key="6lgv3-133-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-133-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> let</span></span></span><span data-offset-key="6lgv3-134-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-134-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> you</span></span></span><span data-offset-key="6lgv3-135-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-135-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> know</span></span></span><span data-offset-key="6lgv3-136-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-136-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> when</span></span></span><span data-offset-key="6lgv3-137-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-137-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> the</span></span></span><span data-offset-key="6lgv3-138-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-138-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> fix</span></span></span><span data-offset-key="6lgv3-139-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-139-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> is</span></span></span><span data-offset-key="6lgv3-140-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-140-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> integrated</span></span></span><span data-offset-key="6lgv3-141-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-141-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> in</span></span></span><span data-offset-key="6lgv3-142-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-142-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;"> Oxy</span></span></span><span data-offset-key="6lgv3-143-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-143-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;">gen</span></span></span><span data-offset-key="6lgv3-144-0" style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);"><span data-offset-key="6lgv3-144-0" style="box-sizing: border-box;"><span data-text="true" style="box-sizing: border-box;">.</span></span></span>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">Best Regards,</div>
<div class="moz-cite-prefix">Octavian<br>
</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">On 5/15/2023 8:04 PM, Danny MacMillan
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:oOpZbWucjlRIsuRvVI5mggPgTxRg-retCF5al8HUVds-4KdkI70Evi5RwEvH3ZS4dRYmLqzZTF25UrOj2Ma4y5LQsiVQ-RY36_DRgN9u2i8=@mail-eh.ca">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div style="font-family: Arial, sans-serif; font-size: 14px;">I
meant the context attribute of course.</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;">I
can also silence the warning by defining a variable holding the
appropriate elements and using the variable in my rules. This is
what I will do in practice. It does look broken to me though.</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;">Thanks,</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;">-- <br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;">Danny
MacMillan<br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div class="protonmail_signature_block" style="font-family: Arial,
sans-serif; font-size: 14px;">
<div class="protonmail_signature_block-user
protonmail_signature_block-empty"> </div>
<div class="protonmail_signature_block-proton"> Sent with <a
target="_blank" href="https://proton.me/" rel="noopener
noreferrer" moz-do-not-send="true">Proton Mail</a> secure
email. </div>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div class="protonmail_quote"> ------- Original Message -------<br>
On Monday, May 15th, 2023 at 10:36, Danny MacMillan
<a class="moz-txt-link-rfc2396E" href="mailto:dm-bulk-oxygenxml@mail-eh.ca"><dm-bulk-oxygenxml@mail-eh.ca></a> wrote:<br>
<br>
<blockquote class="protonmail_quote" type="cite">
<div style="font-family: Arial, sans-serif; font-size: 14px;">Hello,</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;">Consider
the following XML:</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><span><?xml
version="1.0"?></span>
<div><span><root></span></div>
<div><span> <relevant></span></div>
<div><span> <element relevant-attribute="this
attribute exists only on elements under relevant"/></span></div>
<div><span> </relevant></span></div>
<div><span> <irrelevant></span></div>
<div><span> <element/></span></div>
<div><span> </irrelevant></span></div>
<div><span></root></span></div>
<div><span><br>
</span></div>
<span></span></div>
<div style="font-family: Arial, sans-serif; font-size: 14px;">And
the following Schematron:</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><span><?xml
version="1.0" encoding="UTF-8"?></span>
<div><span><schema xmlns="<a
href="http://purl.oclc.org/dsdl/schematron"
rel="noreferrer nofollow noopener" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">http://purl.oclc.org/dsdl/schematron</a>"
queryBinding="xslt3" xmlns:xsl="<a
href="http://www.w3.org/1999/XSL/Transform"
rel="noreferrer nofollow noopener" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">http://www.w3.org/1999/XSL/Transform</a>"
xmlns:map="<a
href="http://www.w3.org/2005/xpath-functions/map"
rel="noreferrer nofollow noopener" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">http://www.w3.org/2005/xpath-functions/map</a>"></span></div>
<div><span> <ns prefix="map" uri="<a
href="http://www.w3.org/2005/xpath-functions/map"
rel="noreferrer nofollow noopener" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">http://www.w3.org/2005/xpath-functions/map</a>"/></span></div>
<div><span> <let name="some-map" value="map {}"/></span></div>
<div><span> <pattern></span></div>
<div><span> <rule
context="/*/relevant/element[map:contains($some-map,
@relevant-attribute)]"></span></div>
<div><span> <assert
test="true()">Impossible</assert></span></div>
<div><span> </rule></span></div>
<div><span> </pattern></span></div>
<div><span></schema></span></div>
<span></span></div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;">When
I validate the XML with the Schematron, Oxygen prints a
warning that an empty sequence is not allowed as the second
argument to map:contains, which I've determined is because
it is testing the "element" elements under "irrelevant". I
know this because if I add a second such element, the error
prints twice. If I have 9, the error prints 9 times. But why
is it testing that element? I deliberately used xpath that
navigates via the parent because I want to include only
elements under that parent, but it seems that it's looking
at all elements, anywhere in the document, named 'element'.
Is this expected?</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;">I
can silence the warning if I explicitly check for the
presence of the attribute:</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><span></span></div>
<span><?xml version="1.0" encoding="UTF-8"?></span>
<div><span><schema xmlns="<a
href="http://purl.oclc.org/dsdl/schematron"
rel="noreferrer nofollow noopener" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">http://purl.oclc.org/dsdl/schematron</a>"
queryBinding="xslt3" xmlns:xsl="<a
href="http://www.w3.org/1999/XSL/Transform"
rel="noreferrer nofollow noopener" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">http://www.w3.org/1999/XSL/Transform</a>"
xmlns:map="<a
href="http://www.w3.org/2005/xpath-functions/map"
rel="noreferrer nofollow noopener" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">http://www.w3.org/2005/xpath-functions/map</a>"></span></div>
<div><span> <ns prefix="map" uri="<a
href="http://www.w3.org/2005/xpath-functions/map"
rel="noreferrer nofollow noopener" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">http://www.w3.org/2005/xpath-functions/map</a>"/></span></div>
<div><span> <let name="some-map" value="map {}"/></span></div>
<div><span> <pattern></span></div>
<div><span> <rule
context="/*/relevant/element[@relevant-attribute and
map:contains($some-map, @relevant-attribute)]"></span></div>
<div><span> <assert
test="true()">Impossible</assert></span></div>
<div><span> </rule></span></div>
<div><span> </pattern></span></div>
<div><span></schema></span></div>
<div><span><br>
</span></div>
<span></span>
<div style="font-family: Arial, sans-serif; font-size: 14px;">But
not if I precede the broken rule with a rule that should
equivalently prevent the broken rule from firing on those
elements:</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><span></span><span><?xml
version="1.0" encoding="UTF-8"?></span>
<div><span><schema xmlns="<a
href="http://purl.oclc.org/dsdl/schematron"
rel="noreferrer nofollow noopener" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">http://purl.oclc.org/dsdl/schematron</a>"
queryBinding="xslt3" xmlns:xsl="<a
href="http://www.w3.org/1999/XSL/Transform"
rel="noreferrer nofollow noopener" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">http://www.w3.org/1999/XSL/Transform</a>"
xmlns:map="<a
href="http://www.w3.org/2005/xpath-functions/map"
rel="noreferrer nofollow noopener" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">http://www.w3.org/2005/xpath-functions/map</a>"></span></div>
<div><span> <ns prefix="map" uri="<a
href="http://www.w3.org/2005/xpath-functions/map"
rel="noreferrer nofollow noopener" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">http://www.w3.org/2005/xpath-functions/map</a>"/></span></div>
<div><span> <let name="some-map" value="map {}"/></span></div>
<div><span> <pattern></span></div>
<div><span> <rule
context="/*/relevant/element[not(@relevant-attribute)]"></span></div>
<div><span> <assert
test="true()">Impossible</assert></span></div>
<div><span> </rule></span></div>
<div><span> <rule
context="/*/relevant/element[map:contains($some-map,
@relevant-attribute)]"></span></div>
<div><span> <assert
test="true()">Impossible</assert></span></div>
<div><span> </rule></span></div>
<div><span> </pattern></span></div>
<div><span></schema></span></div>
<span></span><br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;">Thanks,</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;">--
<br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;">Danny
MacMillan<br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"
class="protonmail_signature_block">
<div class="protonmail_signature_block-proton"> Sent with <a
rel="noreferrer nofollow noopener"
href="https://proton.me/" target="_blank"
moz-do-not-send="true">Proton Mail</a> secure email. </div>
</div>
</blockquote>
<br>
</div>
<br>
<fieldset class="moz-mime-attachment-header"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
oXygen-user mailing list
<a class="moz-txt-link-abbreviated" href="mailto:oXygen-user@oxygenxml.com">oXygen-user@oxygenxml.com</a>
<a class="moz-txt-link-freetext" href="https://www.oxygenxml.com/mailman/listinfo/oxygen-user">https://www.oxygenxml.com/mailman/listinfo/oxygen-user</a>
</pre>
</blockquote>
<p><br>
</p>
<pre class="moz-signature" cols="72">--
Octavian Nadolu
<oXygen/> XML Editor
<a class="moz-txt-link-freetext" href="http://www.oxygenxml.com">http://www.oxygenxml.com</a></pre>
</body>
</html>