<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif;">
<div>Yes, thank you LJ, those ideas will get me started.</div>
<div>-Scott</div>
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<div style="font-family:Calibri; font-size:11pt; text-align:left; color:black; BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<span style="font-weight:bold">From: </span>LJ Wobker <<a href="mailto:ljw@barefootnetworks.com">ljw@barefootnetworks.com</a>><br>
<span style="font-weight:bold">Date: </span>Wednesday, June 10, 2015 at 5:06 PM<br>
<span style="font-weight:bold">To: </span>scotcoll Collins <<a href="mailto:scotcoll@cisco.com">scotcoll@cisco.com</a>>, "<a href="mailto:p4-dev@p4.org">p4-dev@p4.org</a>" <<a href="mailto:p4-dev@p4.org">p4-dev@p4.org</a>><br>
<span style="font-weight:bold">Subject: </span>RE: [P4-dev] ACL to P4 Conversion<br>
</div>
<div><br>
</div>
<div>
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"Lucida Console";
        panose-1:2 11 6 9 4 5 4 2 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p.MsoNoSpacing, li.MsoNoSpacing, div.MsoNoSpacing
        {mso-style-name:"No Spacing\,codelet";
        mso-style-priority:1;
        margin:0in;
        margin-bottom:.0001pt;
        font-size:9.0pt;
        font-family:"Lucida Console";
        color:#0070C0;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.5in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:116459869;
        mso-list-type:hybrid;
        mso-list-template-ids:-194457064 67698705 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l0:level1
        {mso-level-text:"%1\)";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level2
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level3
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        text-indent:-9.0pt;}
@list l0:level4
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level5
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level6
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        text-indent:-9.0pt;}
@list l0:level7
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level8
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level9
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        text-indent:-9.0pt;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
--></style>
<div lang="EN-US" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">Scott-</span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"> </span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">Good question here.  There are a number of ways to express this in traditional forwarding models, but I think the key issue here is that P4 really
 just represents/describes the final forwarding tables, not necessarily what their logical outcome is. 
</span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"> </span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">One possibility is to just have the control plane invert all of the ACL rules, and then program them into the device. 
</span></p>
<p class="MsoListParagraph" style="margin-left:1.0in"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><span style="">a.<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">     
</span></span></span><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">In this case, the compiler would likely need to know something about the target in order to optimize how it’s done.  For instance, some “not” rules
 might be trivial to implement as a small set of exact match rules, while others might be more efficiently implemented as a set of ternary rules. 
</span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">There are (somewhat) well known algorithms for negating rules in a TCAM or other ternary device, but you have to be careful as they can sometimes
 expand to very large rulesets.  </span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"> </span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">You could define a set of tables with different actions, that correspond to what you want the behavior of the ACL to be. 
</span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"> </span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">You could define multiple stages of tables, where some handle the positive “match” cases and others handle the “match not” cases.  Again depending
 on the target’s capabilities you may want to choose one over the other.</span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"> </span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">Does that help at all?  ;-)</span></p>
<div>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"> </span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">--lj       
</span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"> </span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"> </span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"> </span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"> </span></p>
</div>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"> </span></p>
<div>
<div style="border:none;border-top:solid #e1e1e1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size: 11pt; font-family: Calibri, sans-serif;">From:</span></b><span style="font-size: 11pt; font-family: Calibri, sans-serif;"> P4-dev [mailto:<a href="mailto:p4-dev-bounces@p4.org">p4-dev-bounces@p4.org</a>]
<b>On Behalf Of </b>Scott Collins (scotcoll)<br>
<b>Sent:</b> Wednesday, June 10, 2015 1:55 PM<br>
<b>To:</b> <a href="mailto:p4-dev@p4.org">p4-dev@p4.org</a><br>
<b>Subject:</b> [P4-dev] ACL to P4 Conversion</span></p>
</div>
</div>
<p class="MsoNormal"> </p>
<div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">Hi all, </span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black"> </span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">This is an ACL configuration that uses a not operation to specify exclusions. How could this be represented in P4?</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black"> </span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">Thanks,</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">Scott</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black"> </span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black"> </span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">!</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">class-map match-all ce_af2_customer</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">match access-group 187</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">match not access-group xxx</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">!</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">class-map match-all ce_af2_include</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">match class-map ce_af2_customer</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">match not access-group 198</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">! </span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">!</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">class-map match-any ce_af2_output</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">match class-map ce_af2_include</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">!</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list xxx permit tcp any any eq 8014</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list xxx permit tcp any eq 8014 any </span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list xxx permit tcp any host 165.72.11.108</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list xxx permit tcp any host 7.252.68.73</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list xxx permit tcp host 7.252.68.73 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">!</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">!</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any eq telnet any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any eq telnet</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any eq 2598 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any eq 2598</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any eq 8911</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit udp any eq 8911 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit udp any any eq 8911</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any eq 3306 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any eq 3306</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any eq 1186 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any eq 1186</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any range 1525 1527 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any range 1525 1527</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any eq 1529 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any eq 1529</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any eq 5432 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any eq 5432</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any eq 9100 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any eq 9100</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any eq 135</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any eq 135 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any range 989 990</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any range 989 990 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any eq 683</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any eq 683 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any eq 2162</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any eq 2162 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any range 137 139</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any range 137 139 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any eq 575</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any eq 575 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any eq 5631 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any eq 5631</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any eq login any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any eq login</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any range 6000 6063 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any range 6000 6063</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any eq 8004 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any any eq 8004</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any eq 8888 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 199.40.254.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 199.40.254.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 23.252.16.0 0.0.0.255 eq 8080 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 23.252.16.0 0.0.0.255 eq 8080</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 10.250.66.0 0.0.0.255 eq 8080 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 10.250.66.0 0.0.0.255 eq 8080</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 10.250.66.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 10.250.66.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 199.40.254.0 0.0.0.255 eq 3128 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 199.40.254.0 0.0.0.255 eq 3128</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 23.252.16.0 0.0.0.255 eq 3128 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 23.252.16.0 0.0.0.255 eq 3128</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 10.250.66.0 0.0.0.255 eq 3128 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 10.250.66.0 0.0.0.255 eq 3128</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 23.253.31.0 0.0.0.255 eq 8080 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 23.253.31.0 0.0.0.255 eq 8080</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 23.253.31.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 23.253.31.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 199.40.22.0 0.0.0.255 eq 8080 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 199.40.22.0 0.0.0.255 eq 8080</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp host 199.40.26.88 eq 8080 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any host 199.40.26.88 eq 8080</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp host 199.40.26.88 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any host 199.40.26.88 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp host 199.40.253.79 eq 8080 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any host 199.40.253.79 eq 8080</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp host 199.40.253.79 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any host 199.40.253.79 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp host 10.250.46.187 eq 3128 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any host 10.250.46.187 eq 3128</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp host 10.250.46.187 eq 8080 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any host 10.250.46.187 eq 8080</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp host 10.250.46.187 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any host 10.250.46.187 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 199.40.22.0 0.0.0.255 eq 3128 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 199.40.22.0 0.0.0.255 eq 3128</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 199.40.22.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 199.40.22.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 23.253.31.0 0.0.0.255 eq 3128 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 23.253.31.0 0.0.0.255 eq 3128</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 23.252.18.0 0.0.0.255 eq 3128 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 23.252.18.0 0.0.0.255 eq 3128</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 23.252.18.0 0.0.0.255 eq 8080 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 23.252.18.0 0.0.0.255 eq 8080</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 23.252.18.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 23.252.18.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 165.72.25.0 0.0.0.255 eq 8080 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 165.72.25.0 0.0.0.255 eq 8080</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 199.40.175.0 0.0.0.255 eq 8080 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 199.40.175.0 0.0.0.255 eq 8080</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 199.40.175.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 199.40.175.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 23.156.24.0 0.0.0.255 eq 8080 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 23.156.24.0 0.0.0.255 eq 8080</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 23.156.24.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 23.156.24.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 199.40.144.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 199.40.144.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 165.72.192.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 165.72.192.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 10.22.23.0 0.0.0.255 eq 8080 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 10.22.23.0 0.0.0.255 eq 8080</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 10.22.23.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 10.22.23.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 10.22.23.0 0.0.0.255 eq 3128 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 10.22.23.0 0.0.0.255 eq 3128</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 23.252.100.0 0.0.0.127 eq 8080 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 23.252.100.0 0.0.0.127 eq 8080</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 23.252.100.0 0.0.0.127 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 23.252.100.0 0.0.0.127 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 23.252.100.0 0.0.0.127 eq 3128 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 23.252.100.0 0.0.0.127 eq 3128</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 199.40.20.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 199.40.20.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 165.72.12.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 165.72.12.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 23.253.32.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 23.253.32.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 199.40.23.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 199.40.23.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 199.40.30.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 199.40.30.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 23.252.17.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 23.252.17.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 10.250.62.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 10.250.62.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp 194.102.25.0 0.0.0.255 eq 80 any</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">access-list 187 permit tcp any 194.102.25.0 0.0.0.255 eq 80</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">!</span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas;color:black">!</span></p>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"> </span></p>
</div>
</div>
</div>
</div>
</span>
</body>
</html>