<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div id="appendonsend"></div>
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size: 11pt; color: rgb(0, 0, 0);"><b>From:</b> mythtv-users <mythtv-users-bounces@mythtv.org> on behalf of Peter Bennett <pb.mythtv@gmail.com><br>
<b>Sent:</b> 12 September 2023 13:56<br>
<b>To:</b> mythtv-users@mythtv.org <mythtv-users@mythtv.org><br>
<b>Subject:</b> Re: [mythtv-users] API call Guide/GetProgramList broken with port 6744.</font>
<div> </div>
</div>
<div>
<p style="margin-top: 0px; margin-bottom: 0px;"><br>
</p>
<div class="x_moz-cite-prefix">On 9/11/23 16:10, Philip Brady wrote:<br>
</div>
<blockquote type="cite">
<div class="x_elementToProof" style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="x_divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size: 11pt; color: rgb(0, 0, 0);"><b>From:</b> mythtv-users
<a href="mailto:mythtv-users-bounces@mythtv.org" class="x_moz-txt-link-rfc2396E OWAAutoLink" id="OWA05bb36ed-00e2-5c38-2661-7151326c0a3f">
<mythtv-users-bounces@mythtv.org></a> on behalf of Peter Bennett <a href="mailto:pb.mythtv@gmail.com" class="x_moz-txt-link-rfc2396E OWAAutoLink" id="OWAed48f3eb-eff7-dc01-f76a-7b0714dccaa0">
<pb.mythtv@gmail.com></a><br>
<b>Sent:</b> 03 September 2023 13:23<br>
<b>To:</b> <a href="mailto:mythtv-users@mythtv.org" class="x_moz-txt-link-abbreviated x_moz-txt-link-freetext OWAAutoLink" id="OWA5cdb3952-e5e9-a67e-c38f-7e5cdcc516d3">
mythtv-users@mythtv.org</a> <a href="mailto:mythtv-users@mythtv.org" class="x_moz-txt-link-rfc2396E OWAAutoLink" id="OWAf2711c05-d67b-737a-c4d3-8305e65823a2">
<mythtv-users@mythtv.org></a><br>
<b>Subject:</b> Re: [mythtv-users] API call Guide/GetProgramList broken with port 6744.</font>
<div> </div>
</div>
<div>
<p style="margin-top: 0px; margin-bottom: 0px;"><br>
</p>
<div class="x_x_moz-cite-prefix">On 9/3/23 07:03, Philip Brady wrote:<br>
</div>
<blockquote type="cite">
<meta name="Generator" content="Microsoft Word 15 (filtered
            medium)">
<div class="x_x_WordSection1">
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
 </p>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
 </p>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
Sent from <a href="https://go.microsoft.com/fwlink/?LinkId=550986" data-auth="NotApplicable" id="OWAb9be0498-4b4a-4f46-902d-d4e4755eca4d" class="x_OWAAutoLink">
Mail</a> for Windows</p>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
 </p>
<div style="border:none; border-top:solid #E1E1E1 1.0pt; padding:3.0pt 0cm 0cm 0cm">
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif; border:none; padding:0cm">
<b>From: </b><a href="mailto:pb.mythtv@gmail.com" id="OWA744dba24-f6b5-6ae0-c662-d75bfe64daee" class="x_OWAAutoLink">Peter Bennett</a><br>
<b>Sent: </b>01 September 2023 21:34<br>
<b>To: </b><a href="mailto:mythtv-users@mythtv.org" class="x_x_moz-txt-link-freetext x_OWAAutoLink x_moz-txt-link-freetext" id="OWA49b34736-4151-b333-2a22-bcad98491ac7">mythtv-users@mythtv.org</a><br>
<b>Subject: </b>Re: [mythtv-users] API call Guide/GetProgramList broken with port 6744.</p>
</div>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
 </p>
<p style="margin-top: 0px; margin-bottom: 0px;"> </p>
<div>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
On 9/1/23 09:46, Philip Brady wrote:</p>
</div>
<blockquote style="margin-top:5.0pt; margin-bottom:5.0pt">
<div>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
<span style="font-size: 12pt; color: black;">The API call /Guide/GetProgramList is broken with port 6744.  It does not respect the Details=true parameter.
</span></p>
<div>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
<span style="font-size: 12pt; color: black;">This breaks portability of my 'split film' utility.</span></p>
</div>
<div>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
<span style="font-size: 12pt; color: black;"> </span></p>
</div>
<div>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
<span style="font-size: 12pt; color: black;">I know that the right course of action for me is to submit a bug, but can anyone point me at a tutorial for doing that please?</span></p>
</div>
<div>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
<span style="font-size: 12pt; color: black;"> </span></p>
</div>
<span style="font-size: 12pt; color: black;">...<br>
</span>
<div></div>
<div>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
<span style="font-size: 12pt; color: black;">Phil</span></p>
</div>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
<span style="font-size: 12pt; color: black;"> </span></p>
</div>
</blockquote>
<p style="margin-top: 0px; margin-bottom: 0px;">When there is a recording scheduled, the Recording tags is filled in. When there is no recording scheduled for that program, it is reported as nil.</p>
<p style="margin-top: 0px; margin-bottom: 0px;"> </p>
...</div>
</blockquote>
</div>
</blockquote>
<br>
<blockquote type="cite">
<div>
<blockquote type="cite">
<div class="x_x_WordSection1"> 
<p style="margin-top: 0px; margin-bottom: 0px;">Can you handle this in your utility?</p>
<p style="margin-top: 0px; margin-bottom: 0px;"> </p>
<p style="margin-top: 0px; margin-bottom: 0px;">Peter</p>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
 </p>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
Thanks Peter.</p>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
Yes, should be able to handle that and I’ll update the documentation accordingly.</p>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
Would you clarify though – is it only the ‘Guide’ APIs or is it applied to the ‘Dvr’ ones too?</p>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
Regards</p>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
Phil.</p>
<p class="x_x_MsoNormal" style="margin-top: 0px; margin-bottom: 0px;margin:0cm; font-size:11pt; font-family:Calibri,sans-serif">
 </p>
</div>
</blockquote>
<p style="margin-top: 0px; margin-bottom: 0px;">The infrastructure that gets the requests and formats the results was rewritten and all of the methods were converted. There are minor changes throughout.</p>
<p style="margin-top: 0px; margin-bottom: 0px;">I checked Dvr/GetRecordedList. Artwork is one structure that is optional.
<br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;">In the old API an empty Artwork shows like this</p>
<p style="margin-top: 0px; margin-bottom: 0px;"><Artwork><br>
<ArtworkInfos/><br>
</Artwork><br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;">In the new API an empty Artwork shows like this:</p>
<p style="margin-top: 0px; margin-bottom: 0px;"><Artwork xsi:nil="true"/></p>
<p style="margin-top: 0px; margin-bottom: 0px;">In case you want to run comparisons:<br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;">In master, versions before v34-Pre-408-gdd35e85329 use port 6744 for the new api and 6544 for the old.</p>
<p style="margin-top: 0px; margin-bottom: 0px;">Versions after v34-Pre-408-gdd35e85329 use port 6544 for the new API and have the old api on port 6550. This old API will not be updated and will be removed at some point. Port 6744 is also still available and
 runs the new API.<br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;">I hope this helps.</p>
<p class="x_elementToProof" style="margin-top: 0px; margin-bottom: 0px;">Peter<br>
</p>
<p class="x_elementToProof" style="margin-top: 0px; margin-bottom: 0px; font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</p>
<p class="x_elementToProof" style="margin-top: 0px; margin-bottom: 0px; font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
-------------------------------------</p>
<div class="x_elementToProof" style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; margin-top: 0px; margin-bottom: 0px; color: rgb(0, 0, 0);">
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span lang="EN-US" style="">Hi Peter,</span></p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span lang="EN-US" style="">Many thanks for you patience!</span></p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span lang="EN-US" style=""> </span></p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span lang="EN-US" style="">Yes, the new interface with no recording info can be handled with an application change and I’ve included a note about both this and the new backend port numbers
 in the wiki article </span><a href="https://www.mythtv.org/wiki/Recording_Status" data-auth="NotApplicable" id="OWA2b537c0c-e4cd-7678-a0d3-2c84130e3eba" class="x_OWAAutoLink"><span lang="EN-US" style="">https://www.mythtv.org/wiki/Recording_Status</span></a><span lang="EN-US" style="">
</span></p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span lang="EN-US" style=""> </span></p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span lang="EN-US" style="">In time, I’ll also change Perl API examples to include the ‘no recording information’ scenario.<span style=""> 
</span>I suspect that it’s only Guide calls which can meaningfully return an empty <Recording> section.</span></p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span lang="EN-US" style=""> </span></p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span lang="EN-US" style="">I think there are still two things which are still a little unclear and which I’m seeing with
</span><span style="font-size: 10.5pt; font-family: Arial, sans-serif; background: white; color: rgb(37, 37, 37);">v34.0~master.202306020720.ed409bfc02~ubuntu22.04.1 but a later version may well be more consistent.</span></p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span style="font-size: 10.5pt; font-family: Arial, sans-serif; background: white; color: rgb(37, 37, 37);"> </span></p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span style="font-size: 10.5pt; font-family: Arial, sans-serif; background: white; color: rgb(37, 37, 37);">The first is that Backend:6744/Dvr/RecTypeToString?RecType=7 and 8 both return
 ‘Override Recording’.<span style="">  </span>See the wiki article.<span style=""> 
</span>You say that 7 is still useful but 8 is obsolete so I presume that Dvr/RemoveRecordSchedule is needed to stop a recording.<span style=""> 
</span>Might you ever need to post ’Override Recording’ in an UpdateRecordSchedule?</span></p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span style="font-size: 10.5pt; font-family: Arial, sans-serif; background: white; color: rgb(37, 37, 37);"> </span></p>
</div>
</div>
</blockquote>
7 and 8 are both still in use. The are both overrides, but different types of override. 7 is for a rule that overrides a specific recording to change some values, for example to record one episode into a different recording group. 8 is for a rule that overrides
 a rule and tells MythTV not to record a specific showing of a series. It would make more sense if 8 returned a string like Don't Record. The GetRecordSchedule API returns "Do not Record" if the value is 8.<br>
<blockquote type="cite">
<div>
<div class="x_elementToProof" style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; margin-top: 0px; margin-bottom: 0px; color: rgb(0, 0, 0);">
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span style="font-size: 10.5pt; font-family: Arial, sans-serif; background: white; color: rgb(37, 37, 37);">It would be clearer if RecTypeToString and RecTypeToDescription both returned
 ‘Unsupported’ for unsupported values.<span style="">  </span>As it is, the only practical value for these calls seems to be to determine the values and meanings for Type – are there any APIs which return a numeric Type?</span></p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span style="font-size: 10.5pt; font-family: Arial, sans-serif; background: white; color: rgb(37, 37, 37);"> </span></p>
</div>
</div>
</blockquote>
We are trying to move away from numeric values for type, status, etc. and use strings with meaningful names. I don't know if there are APIS that return a numeric type for recording rules. If there are we can modify them to have an additional field with the
 string value, which would be the preferred value to use.<br>
<blockquote type="cite">
<div>
<div class="x_elementToProof" style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; margin-top: 0px; margin-bottom: 0px; color: rgb(0, 0, 0);">
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span style="font-size: 10.5pt; font-family: Arial, sans-serif; background: white; color: rgb(37, 37, 37);">The second issue is status</span></p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span style="font-size: 10.5pt; font-family: Arial, sans-serif; background: white; color: rgb(37, 37, 37);">Backend:6744/Dvr/RecStatusToString?RecStatus=3</span><span style="">
</span><span style="font-size: 10.5pt; font-family: Arial, sans-serif; background: white; color: rgb(37, 37, 37);"><span style=""> </span>returns ‘Currently Recorded’</span></p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span style="font-size: 10.5pt; font-family: Arial, sans-serif; background: white; color: rgb(37, 37, 37);">ie – you already have this recording on your disk.<span style=""> 
</span>I think that’s a meaningful return value.</span></p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span style="font-size: 10.5pt; font-family: Arial, sans-serif; background: white; color: rgb(37, 37, 37);"><br>
But entries in my Dvr/ GetUpcomingList have Status=3, StatusName=CurrentRecording</span></p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><span style="font-size: 10.5pt; font-family: Arial, sans-serif; background: white; color: rgb(37, 37, 37);">which suggests that the program is currently in the process of being recorded.
<span style=""> </span>The examples I’ve seen are all recorded already and will not be recorded again so a better StatusName would be ‘CurrentlyRecorded’.<span style=""> 
</span><span style=""> </span>I think this is a bug – is it here?</span></p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"><a href="https://github.com/MythTV/mythtv/blob/07439138c378fe07efcee8993721d7e3932ed4c6/mythtv/libs/libmythbase/recordingstatus.h#L11" data-auth="NotApplicable" id="OWA97a06e83-5489-a78b-47e7-c4ee103a6a2b" class="x_OWAAutoLink"><span style="color: blue;">mythtv/mythtv/libs/libmythbase/recordingstatus.h
 at 07439138c378fe07efcee8993721d7e3932ed4c6 · MythTV/mythtv · GitHub</span></a></p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"> </p>
</div>
</div>
</blockquote>
<p style="margin-top: 0px; margin-bottom: 0px;">The value CurrentRecording is the actual name in the code for value 3 (see
<a href="https://github.com/MythTV/mythtv/blob/eea10424c0bbe65133120ff2899d20d8068e07f1/mythtv/libs/libmythbase/recordingstatus.h#L35" data-auth="NotApplicable" class="x_moz-txt-link-freetext OWAAutoLink" id="OWA9c03c1a9-2f5a-0ab9-9a91-78d5a30923d6">
https://github.com/MythTV/mythtv/blob/eea10424c0bbe65133120ff2899d20d8068e07f1/mythtv/libs/libmythbase/recordingstatus.h#L35</a> ). There are 2 related values PreviousRecording and CurrentRecording. PreviousRecording means that you have in the past recorded
 it, watched it and deleted it. CurrentRecording means you have recorded it and it is still on your disk. The person who originally wrote the code thought this was meaningful. The GetUpcomingList now uses a QT feature that lets it get the enum name from the
 value. That way if new values are added to the list the programmer does not have to remember to also update the API.
<br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;"><br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;">Before we knew about the Qt metadata feature that allows this, somebody created a method to translate statuses to English, see
<a href="https://github.com/MythTV/mythtv/blob/eea10424c0bbe65133120ff2899d20d8068e07f1/mythtv/libs/libmythbase/recordingstatus.cpp#L150" data-auth="NotApplicable" class="x_moz-txt-link-freetext OWAAutoLink" id="OWA18f00586-0bdc-5885-c748-7e226b7615d9">
https://github.com/MythTV/mythtv/blob/eea10424c0bbe65133120ff2899d20d8068e07f1/mythtv/libs/libmythbase/recordingstatus.cpp#L150</a> . That is what is used in RecStatusToString. The RecStatusToString should really be changed and RecStatus::toString should be
 removed. That would make them consistent as CurrentRecording, which is not your preference.</p>
<p style="margin-top: 0px; margin-bottom: 0px;"><br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;">The best way to fix it would be to change the names in the code to PreviouslyRecorded and CurrentlyRecorded. However this will affect people who already use the API and rely on PreviousRecording and CurrentRecording.<br>
</p>
<blockquote type="cite">
<div>
<div class="x_elementToProof" style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; margin-top: 0px; margin-bottom: 0px; color: rgb(0, 0, 0);">
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;">Sorry to be so persistent about this – I just want help in creating clear documentation.</p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;"> </p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;">Regards</p>
<p class="x_MsoNoSpacing" style="margin-top: 0px; margin-bottom: 0px;">Phil</p>
</div>
</div>
</blockquote>
<p class="x_MsoNoSpacing elementToProof" style="margin-top: 0px; margin-bottom: 0px;">
Sorry but I'm still confused.</p>
<p class="x_MsoNoSpacing elementToProof" style="margin-top: 0px; margin-bottom: 0px;">
" 7 and 8 are both still in use. The are both overrides, but different types of override. 7 is for a rule that overrides a specific recording to change some values, for example to record one episode into a different recording group. 8 is for a rule that overrides
 a rule and tells MythTV not to record a specific showing of a series. It would make more sense if 8 returned a string like Don't Record. The GetRecordSchedule API returns "Do not Record" if the value is 8.2</p>
<p class="x_MsoNoSpacing elementToProof" style="margin-top: 0px; margin-bottom: 0px;">
<br>
</p>
<div class="x_MsoNoSpacing elementToProof ContentPasted0" style="margin-top: 0px; margin-bottom: 0px;">
I have always submitted text values for <Type> in <span style="font-family: "Segoe UI Web (West European)", "Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", sans-serif; font-size: 12px; display: inline !important; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="ContentPasted0">
</span>UpdateRecordSchedule.  eg 'Record One';</div>
<div class="x_MsoNoSpacing elementToProof ContentPasted0" style="margin-top: 0px; margin-bottom: 0px;">
The text values are the same for both 7 and 8.</div>
<div class="x_MsoNoSpacing elementToProof ContentPasted0" style="margin-top: 0px; margin-bottom: 0px;">
Are you saying that it will also accept both text and numeric values for <Type> ?</div>
<p class="x_MsoNoSpacing elementToProof" style="margin-top: 0px; margin-bottom: 0px;">
Phil</p>
<p class="x_MsoNoSpacing elementToProof" style="margin-top: 0px; margin-bottom: 0px;">
<br>
</p>
<p class="x_MsoNoSpacing elementToProof" style="margin-top: 0px; margin-bottom: 0px;">
<br>
</p>
<p class="x_MsoNoSpacing elementToProof" style="margin-top: 0px; margin-bottom: 0px;">
<br>
</p>
<blockquote type="cite">
<div>
<div class="x_elementToProof" style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; margin-top: 0px; margin-bottom: 0px; color: rgb(0, 0, 0);">
<br>
</div>
</div>
<br>
</blockquote>
</div>
</body>
</html>