anchor.diff:  <% end -%>
   
   # ----------------------------------
  -# Create an unlimited pool for cache IP addresses
  -acl pool_unlimited src 127.0.0.1
  -<% @caches.each do |cache| -%>
  -<% cache.ipaddresses(:family => :inet, :role => :external).sort.each do |address| -%>
  -acl pool_unlimited src <%= address %>
  -<% end -%>
  -<% end -%>
   
  -# Juno Minsk office - me@komzpa.net
  -acl pool_unlimited src 212.98.173.54
   <% if node[:squid][:version] < 4 -%>
   
   #Allow tile_caches HTCP access
  
positive.code: icp_access allow tile_caches
  <% end %>
  
  <% (0..127).each do |i| -%>
  acl pool_<%= sprintf("%03d", 2*i) %> src <%= 2*i %>.0.0.0/7
  <% end %>
  
  delay_pools 256
  delay_initial_bucket_level 25
  
  <% (1..256).each do |i| -%>
  delay_class <%= i %> 3
  <% end %>
  #bit mask
  # xxxxxxx- -------- xxxxxxxx xxxxxxxx
  
  # small pools for !has_referer && is_browser - designed to slow down anyone
  # using no-referer to bypass blocks due to abusive levels of use.
  <% (0..127).each do |i| -%>
  delay_access <%= i+1 %> allow pool_<%= sprintf("%03d", 2*i) %> !pool_unlimited is_fake_browser osmtile_sites
  delay_access <%= i+1 %> allow pool_<%= sprintf("%03d", 2*i) %> !pool_unlimited !has_referer is_browser osmtile_sites
  delay_access <%= i+1 %> deny all
  delay_parameters <%= i+1 %> -1/-1 <%= node[:tilecache][:net_bucket_refill] / 10 %>/<%= node[:tilecache][:net_bucket_size] / 10 %> <%= node[:tilecache][:ip_bucket_refill] / 10 %>/<%= node[:tilecache][:ip_bucket_size] / 10 %>
  <% end %>
  
  # bigger pools for users providing a referer (assuming it's not blocked)
  # or non-browser users.
  <% (0..127).each do |i| %>
  delay_access <%= i+129 %> allow pool_<%= sprintf("%03d", 2*i) %> !pool_unlimited osmtile_sites
  delay_access <%= i+129 %> deny all
  delay_parameters <%= i+129 %> -1/-1 <%= node[:tilecache][:net_bucket_refill] %>/<%= node[:tilecache][:net_bucket_size] %> <%= node[:tilecache][:ip_bucket_refill] %>/<%= node[:tilecache][:ip_bucket_size] %>
  <% end %>
  
  #----------------------------------
  
negative.code: acl osmtile_thishost dstdomain <%= node.name %>
  acl osmtile_sites dstdomain <%= node.name %> a.tile.openstreetmap.org b.tile.openstreetmap.org c.tile.openstreetmap.org tile.openstreetmap.org a.tile.osm.org b.tile.osm.org c.tile.osm.org tile.osm.org
  acl osmtiles_png urlpath_regex .png$
  
  acl whitelist_path urlpath_regex ^/cgi-bin/(export|debug)
  acl blacklist_path urlpath_regex ^/cgi-bin/
  