Implemented geoip lookups for the snowflake broker. This heavily based off of how tor maps IP addresses to country codes, and relies on the provided ipv4 and ipv6 files.

This commit is contained in:
Cecylia Bocovich 2019-03-13 13:51:38 -04:00
parent bf82ef5192
commit 171c55a9b1
6 changed files with 2429 additions and 4 deletions

View file

@ -12,8 +12,12 @@ import (
"fmt" "fmt"
"io/ioutil" "io/ioutil"
"log" "log"
"net"
"net/http" "net/http"
"os"
"os/signal"
"strings" "strings"
"syscall"
"time" "time"
"golang.org/x/crypto/acme/autocert" "golang.org/x/crypto/acme/autocert"
@ -36,11 +40,21 @@ type BrokerContext struct {
func NewBrokerContext() *BrokerContext { func NewBrokerContext() *BrokerContext {
snowflakes := new(SnowflakeHeap) snowflakes := new(SnowflakeHeap)
heap.Init(snowflakes) heap.Init(snowflakes)
metrics, err := NewMetrics()
if err != nil {
panic(err.Error())
}
if metrics == nil {
panic("Failed to create metrics")
}
return &BrokerContext{ return &BrokerContext{
snowflakes: snowflakes, snowflakes: snowflakes,
idToSnowflake: make(map[string]*Snowflake), idToSnowflake: make(map[string]*Snowflake),
proxyPolls: make(chan *ProxyPoll), proxyPolls: make(chan *ProxyPoll),
metrics: new(Metrics), metrics: metrics,
} }
} }
@ -203,6 +217,16 @@ func proxyAnswers(ctx *BrokerContext, w http.ResponseWriter, r *http.Request) {
w.WriteHeader(http.StatusBadRequest) w.WriteHeader(http.StatusBadRequest)
return return
} }
// Get proxy country stats
remoteIP, _, err := net.SplitHostPort(r.RemoteAddr)
if err != nil {
log.Println("Error processing proxy IP: ", err.Error())
} else {
ctx.metrics.UpdateCountryStats(remoteIP)
}
log.Println("Received answer: ", body) log.Println("Received answer: ", body)
snowflake.answerChannel <- body snowflake.answerChannel <- body
} }
@ -213,6 +237,7 @@ func debugHandler(ctx *BrokerContext, w http.ResponseWriter, r *http.Request) {
s += fmt.Sprintf("\nsnowflake %d: %s", snowflake.index, snowflake.id) s += fmt.Sprintf("\nsnowflake %d: %s", snowflake.index, snowflake.id)
} }
s += fmt.Sprintf("\n\nroundtrip avg: %d", ctx.metrics.clientRoundtripEstimate) s += fmt.Sprintf("\n\nroundtrip avg: %d", ctx.metrics.clientRoundtripEstimate)
s += fmt.Sprintf("\n\nsnowflake country stats: %s", ctx.metrics.countryStats.Display())
w.Write([]byte(s)) w.Write([]byte(s))
} }
@ -225,18 +250,31 @@ func main() {
var acmeEmail string var acmeEmail string
var acmeHostnamesCommas string var acmeHostnamesCommas string
var addr string var addr string
var geoipDatabase string
var geoip6Database string
var disableTLS bool var disableTLS bool
var disableGeoip bool
flag.StringVar(&acmeEmail, "acme-email", "", "optional contact email for Let's Encrypt notifications") flag.StringVar(&acmeEmail, "acme-email", "", "optional contact email for Let's Encrypt notifications")
flag.StringVar(&acmeHostnamesCommas, "acme-hostnames", "", "comma-separated hostnames for TLS certificate") flag.StringVar(&acmeHostnamesCommas, "acme-hostnames", "", "comma-separated hostnames for TLS certificate")
flag.StringVar(&addr, "addr", ":443", "address to listen on") flag.StringVar(&addr, "addr", ":443", "address to listen on")
flag.StringVar(&geoipDatabase, "geoipdb", "/usr/share/tor/geoip", "path to correctly formatted geoip database mapping IPv4 address ranges to country codes")
flag.StringVar(&geoip6Database, "geoip6db", "/usr/share/tor/geoip6", "path to correctly formatted geoip database mapping IPv6 address ranges to country codes")
flag.BoolVar(&disableTLS, "disable-tls", false, "don't use HTTPS") flag.BoolVar(&disableTLS, "disable-tls", false, "don't use HTTPS")
flag.BoolVar(&disableGeoip, "disable-geoip", false, "don't use geoip for stats collection")
flag.Parse() flag.Parse()
log.SetFlags(log.LstdFlags | log.LUTC) log.SetFlags(log.LstdFlags | log.LUTC)
ctx := NewBrokerContext() ctx := NewBrokerContext()
if !disableGeoip {
err := ctx.metrics.LoadGeoipDatabases(geoipDatabase, geoip6Database)
if err != nil {
log.Fatal(err.Error())
}
}
go ctx.Broker() go ctx.Broker()
http.HandleFunc("/robots.txt", robotsTxtHandler) http.HandleFunc("/robots.txt", robotsTxtHandler)
@ -251,6 +289,20 @@ func main() {
Addr: addr, Addr: addr,
} }
sigChan := make(chan os.Signal, 1)
signal.Notify(sigChan, syscall.SIGHUP)
// go routine to handle a SIGHUP signal to allow the broker operator to send
// a SIGHUP signal when the geoip database files are updated, without requiring
// a restart of the broker
go func() {
for {
signal := <-sigChan
log.Println("Received signal:", signal, ". Reloading geoip databases.")
ctx.metrics.LoadGeoipDatabases(geoipDatabase, geoip6Database)
}
}()
if acmeHostnamesCommas != "" { if acmeHostnamesCommas != "" {
acmeHostnames := strings.Split(acmeHostnamesCommas, ",") acmeHostnames := strings.Split(acmeHostnamesCommas, ",")
log.Printf("ACME hostnames: %q", acmeHostnames) log.Printf("ACME hostnames: %q", acmeHostnames)

239
broker/geoip.go Normal file
View file

@ -0,0 +1,239 @@
/*
This code is for loading database data that maps ip addresses to countries
for collecting and presenting statistics on snowflake use that might alert us
to censorship events.
The functions here are heavily based off of how tor maintains and searches their
geoip database
The tables used for geoip data must be structured as follows:
Recognized line format for IPv4 is:
INTIPLOW,INTIPHIGH,CC
where INTIPLOW and INTIPHIGH are IPv4 addresses encoded as big-endian 4-byte unsigned
integers, and CC is a country code.
Note that the IPv4 line format
"INTIPLOW","INTIPHIGH","CC","CC3","COUNTRY NAME"
is not currently supported.
Recognized line format for IPv6 is:
IPV6LOW,IPV6HIGH,CC
where IPV6LOW and IPV6HIGH are IPv6 addresses and CC is a country code.
It also recognizes, and skips over, blank lines and lines that start
with '#' (comments).
*/
package main
import (
"bufio"
"bytes"
"crypto/sha1"
"encoding/hex"
"fmt"
"io"
"log"
"net"
"os"
"sort"
"strconv"
"strings"
"sync"
)
type GeoIPTable interface {
parseEntry(string) (*GeoIPEntry, error)
Len() int
Append(GeoIPEntry)
ElementAt(int) GeoIPEntry
Lock()
Unlock()
}
type GeoIPEntry struct {
ipLow net.IP
ipHigh net.IP
country string
}
type GeoIPv4Table struct {
table []GeoIPEntry
lock sync.Mutex // synchronization for geoip table accesses and reloads
}
type GeoIPv6Table struct {
table []GeoIPEntry
lock sync.Mutex // synchronization for geoip table accesses and reloads
}
func (table GeoIPv4Table) Len() int { return len(table.table) }
func (table GeoIPv6Table) Len() int { return len(table.table) }
func (table *GeoIPv4Table) Append(entry GeoIPEntry) {
(*table).table = append(table.table, entry)
}
func (table *GeoIPv6Table) Append(entry GeoIPEntry) {
(*table).table = append(table.table, entry)
}
func (table GeoIPv4Table) ElementAt(i int) GeoIPEntry { return table.table[i] }
func (table GeoIPv6Table) ElementAt(i int) GeoIPEntry { return table.table[i] }
func (table *GeoIPv4Table) Lock() { (*table).lock.Lock() }
func (table *GeoIPv6Table) Lock() { (*table).lock.Lock() }
func (table *GeoIPv4Table) Unlock() { (*table).lock.Unlock() }
func (table *GeoIPv6Table) Unlock() { (*table).lock.Unlock() }
// Convert a geoip IP address represented as a big-endian unsigned integer to net.IP
func geoipStringToIP(ipStr string) (net.IP, error) {
ip, err := strconv.ParseUint(ipStr, 10, 32)
if err != nil {
return net.IPv4(0, 0, 0, 0), fmt.Errorf("Error parsing IP %s", ipStr)
}
var bytes [4]byte
bytes[0] = byte(ip & 0xFF)
bytes[1] = byte((ip >> 8) & 0xFF)
bytes[2] = byte((ip >> 16) & 0xFF)
bytes[3] = byte((ip >> 24) & 0xFF)
return net.IPv4(bytes[3], bytes[2], bytes[1], bytes[0]), nil
}
//Parses a line in the provided geoip file that corresponds
//to an address range and a two character country code
func (table *GeoIPv4Table) parseEntry(candidate string) (*GeoIPEntry, error) {
if candidate[0] == '#' {
return nil, nil
}
parsedCandidate := strings.Split(candidate, ",")
if len(parsedCandidate) != 3 {
return nil, fmt.Errorf("Provided geoip file is incorrectly formatted. Could not parse line:\n%s", parsedCandidate)
}
low, err := geoipStringToIP(parsedCandidate[0])
if err != nil {
return nil, err
}
high, err := geoipStringToIP(parsedCandidate[1])
if err != nil {
return nil, err
}
geoipEntry := &GeoIPEntry{
ipLow: low,
ipHigh: high,
country: parsedCandidate[2],
}
return geoipEntry, nil
}
//Parses a line in the provided geoip file that corresponds
//to an address range and a two character country code
func (table *GeoIPv6Table) parseEntry(candidate string) (*GeoIPEntry, error) {
if candidate[0] == '#' {
return nil, nil
}
parsedCandidate := strings.Split(candidate, ",")
if len(parsedCandidate) != 3 {
return nil, fmt.Errorf("")
}
low := net.ParseIP(parsedCandidate[0])
if low == nil {
return nil, fmt.Errorf("")
}
high := net.ParseIP(parsedCandidate[1])
if high == nil {
return nil, fmt.Errorf("")
}
geoipEntry := &GeoIPEntry{
ipLow: low,
ipHigh: high,
country: parsedCandidate[2],
}
return geoipEntry, nil
}
//Loads provided geoip file into our tables
//Entries are stored in a table
func GeoIPLoadFile(table GeoIPTable, pathname string) error {
//open file
geoipFile, err := os.Open(pathname)
if err != nil {
return err
}
defer geoipFile.Close()
hash := sha1.New()
table.Lock()
defer table.Unlock()
hashedFile := io.TeeReader(geoipFile, hash)
//read in strings and call parse function
scanner := bufio.NewScanner(hashedFile)
for scanner.Scan() {
entry, err := table.parseEntry(scanner.Text())
if err != nil {
return fmt.Errorf("Provided geoip file is incorrectly formatted. Line is: %+q", scanner.Text())
}
if entry != nil {
table.Append(*entry)
}
}
if err := scanner.Err(); err != nil {
return err
}
sha1Hash := hex.EncodeToString(hash.Sum(nil))
log.Println("Using geoip file ", pathname, " with checksum", sha1Hash)
log.Println("Loaded ", table.Len(), " entries into table")
return nil
}
//Returns the country location of an IPv4 or IPv6 address.
func GetCountryByAddr(table GeoIPTable, ip net.IP) (string, bool) {
table.Lock()
defer table.Unlock()
//look IP up in database
index := sort.Search(table.Len(), func(i int) bool {
entry := table.ElementAt(i)
return (bytes.Compare(ip.To16(), entry.ipHigh.To16()) <= 0)
})
if index == table.Len() {
return "", false
}
// check to see if addr is in the range specified by the returned index
// search on IPs in invalid ranges (e.g., 127.0.0.0/8) will return the
//country code of the next highest range
entry := table.ElementAt(index)
if !(bytes.Compare(ip.To16(), entry.ipLow.To16()) >= 0 &&
bytes.Compare(ip.To16(), entry.ipHigh.To16()) <= 0) {
return "", false
}
return table.ElementAt(index).country, true
}

View file

@ -2,16 +2,118 @@ package main
import ( import (
// "golang.org/x/net/internal/timeseries" // "golang.org/x/net/internal/timeseries"
"fmt"
"log"
"net"
"os"
"sync"
"time" "time"
) )
var (
once sync.Once
)
type CountryStats struct {
counts map[string]int
}
// Implements Observable // Implements Observable
type Metrics struct { type Metrics struct {
tablev4 *GeoIPv4Table
tablev6 *GeoIPv6Table
countryStats CountryStats
// snowflakes timeseries.Float // snowflakes timeseries.Float
clientRoundtripEstimate time.Duration clientRoundtripEstimate time.Duration
} }
func NewMetrics() *Metrics { func (s CountryStats) Display() string {
m := new(Metrics) return fmt.Sprintln(s.counts)
return m }
func (m *Metrics) UpdateCountryStats(addr string) {
var country string
var ok bool
ip := net.ParseIP(addr)
if ip.To4() != nil {
//This is an IPv4 address
if m.tablev4 == nil {
return
}
country, ok = GetCountryByAddr(m.tablev4, ip)
} else {
if m.tablev6 == nil {
return
}
country, ok = GetCountryByAddr(m.tablev6, ip)
}
if !ok {
country = "??"
log.Println("Unknown geoip")
}
//update map of countries and counts
if country != "" {
m.countryStats.counts[country]++
}
return
}
func (m *Metrics) LoadGeoipDatabases(geoipDB string, geoip6DB string) error {
// Load geoip databases
log.Println("Loading geoip databases")
tablev4 := new(GeoIPv4Table)
err := GeoIPLoadFile(tablev4, geoipDB)
if err != nil {
m.tablev4 = nil
return err
} else {
m.tablev4 = tablev4
}
tablev6 := new(GeoIPv6Table)
err = GeoIPLoadFile(tablev6, geoip6DB)
if err != nil {
m.tablev6 = nil
return err
} else {
m.tablev6 = tablev6
}
return nil
}
func NewMetrics() (*Metrics, error) {
m := new(Metrics)
f, err := os.OpenFile("metrics.log", os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644)
if err != nil {
return nil, err
}
metricsLogger := log.New(f, "", log.LstdFlags|log.LUTC)
m.countryStats = CountryStats{
counts: make(map[string]int),
}
// Write to log file every hour with updated metrics
go once.Do(func() {
heartbeat := time.Tick(time.Hour)
for range heartbeat {
metricsLogger.Println("Country stats: ", m.countryStats.Display())
//restore all metrics to original values
m.countryStats.counts = make(map[string]int)
}
})
return m, nil
} }

View file

@ -4,6 +4,7 @@ import (
"bytes" "bytes"
"container/heap" "container/heap"
. "github.com/smartystreets/goconvey/convey" . "github.com/smartystreets/goconvey/convey"
"net"
"net/http" "net/http"
"net/http/httptest" "net/http/httptest"
"testing" "testing"
@ -268,3 +269,105 @@ func TestSnowflakeHeap(t *testing.T) {
So(r.index, ShouldEqual, -1) So(r.index, ShouldEqual, -1)
}) })
} }
func TestGeoip(t *testing.T) {
Convey("Geoip", t, func() {
tv4 := new(GeoIPv4Table)
err := GeoIPLoadFile(tv4, "test_geoip")
So(err, ShouldEqual, nil)
tv6 := new(GeoIPv6Table)
err = GeoIPLoadFile(tv6, "test_geoip6")
So(err, ShouldEqual, nil)
Convey("IPv4 Country Mapping Tests", func() {
for _, test := range []struct {
addr, cc string
ok bool
}{
{
"129.97.208.23", //uwaterloo
"CA",
true,
},
{
"127.0.0.1",
"",
false,
},
{
"255.255.255.255",
"",
false,
},
{
"0.0.0.0",
"",
false,
},
{
"223.252.127.255", //test high end of range
"JP",
true,
},
{
"223.252.127.255", //test low end of range
"JP",
true,
},
} {
country, ok := GetCountryByAddr(tv4, net.ParseIP(test.addr))
So(country, ShouldEqual, test.cc)
So(ok, ShouldResemble, test.ok)
}
})
Convey("IPv6 Country Mapping Tests", func() {
for _, test := range []struct {
addr, cc string
ok bool
}{
{
"2620:101:f000:0:250:56ff:fe80:168e", //uwaterloo
"CA",
true,
},
{
"fd00:0:0:0:0:0:0:1",
"",
false,
},
{
"0:0:0:0:0:0:0:0",
"",
false,
},
{
"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff",
"",
false,
},
{
"2a07:2e47:ffff:ffff:ffff:ffff:ffff:ffff", //test high end of range
"FR",
true,
},
{
"2a07:2e40::", //test low end of range
"FR",
true,
},
} {
country, ok := GetCountryByAddr(tv6, net.ParseIP(test.addr))
So(country, ShouldEqual, test.cc)
So(ok, ShouldResemble, test.ok)
}
})
// Make sure things behave properly if geoip file fails to load
ctx := NewBrokerContext()
ctx.metrics.LoadGeoipDatabases("invalid_filename", "invalid_filename6")
ctx.metrics.UpdateCountryStats("127.0.0.1")
So(ctx.metrics.tablev4, ShouldEqual, nil)
})
}

1236
broker/test_geoip Normal file

File diff suppressed because it is too large Load diff

693
broker/test_geoip6 Normal file
View file

@ -0,0 +1,693 @@
# Last updated based on February 7 2018 Maxmind GeoLite2 Country
# wget https://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.mmdb.gz
# gunzip GeoLite2-Country.mmdb.gz
# python mmdb-convert.py GeoLite2-Country.mmdb
600:8801:9400:5a1:948b:ab15:dde3:61a3,600:8801:9400:5a1:948b:ab15:dde3:61a3,US
2001:200::,2001:200:ffff:ffff:ffff:ffff:ffff:ffff,JP
2001:208::,2001:208:ffff:ffff:ffff:ffff:ffff:ffff,SG
2001:218::,2001:218:ffff:ffff:ffff:ffff:ffff:ffff,JP
2001:220::,2001:220:ffff:ffff:ffff:ffff:ffff:ffff,KR
2001:230::,2001:230:ffff:ffff:ffff:ffff:ffff:ffff,KR
2001:238::,2001:238:ffff:ffff:ffff:ffff:ffff:ffff,TW
2001:240::,2001:240:ffff:ffff:ffff:ffff:ffff:ffff,JP
2620:21:2000::,2620:21:2000:ffff:ffff:ffff:ffff:ffff,US
2620:21:4000::,2620:21:4000:ffff:ffff:ffff:ffff:ffff,US
2620:21:6000::,2620:21:600f:ffff:ffff:ffff:ffff:ffff,US
2620:21:8000::,2620:21:8000:ffff:ffff:ffff:ffff:ffff,US
2620:21:a000::,2620:21:a000:ffff:ffff:ffff:ffff:ffff,US
2620:21:c000::,2620:21:c000:ffff:ffff:ffff:ffff:ffff,CA
2620:21:e000::,2620:21:e000:ffff:ffff:ffff:ffff:ffff,US
2620:22::,2620:22::ffff:ffff:ffff:ffff:ffff,US
2620:22:2000::,2620:22:2000:ffff:ffff:ffff:ffff:ffff,US
2620:22:4000::,2620:22:4000:ffff:ffff:ffff:ffff:ffff,CA
2620:22:6000::,2620:22:6000:ffff:ffff:ffff:ffff:ffff,US
2620:c2:8000::,2620:c2:8000:ffff:ffff:ffff:ffff:ffff,US
2620:c2:c000::,2620:c2:c000:ffff:ffff:ffff:ffff:ffff,US
2620:c3::,2620:c3::ffff:ffff:ffff:ffff:ffff,US
2620:c3:4000::,2620:c3:4000:ffff:ffff:ffff:ffff:ffff,US
2620:c3:8000::,2620:c3:8000:ffff:ffff:ffff:ffff:ffff,US
2620:c3:c000::,2620:c3:c00f:ffff:ffff:ffff:ffff:ffff,US
2620:c4::,2620:c4::ffff:ffff:ffff:ffff:ffff,US
2620:c4:4000::,2620:c4:4000:ffff:ffff:ffff:ffff:ffff,US
2620:c4:8000::,2620:c4:8000:ffff:ffff:ffff:ffff:ffff,US
2620:c4:c000::,2620:c4:c000:ffff:ffff:ffff:ffff:ffff,CA
2620:c5::,2620:c5::ffff:ffff:ffff:ffff:ffff,US
2620:c5:4000::,2620:c5:4000:ffff:ffff:ffff:ffff:ffff,US
2620:c5:c000::,2620:c5:c000:ffff:ffff:ffff:ffff:ffff,US
2620:c6::,2620:c6::ffff:ffff:ffff:ffff:ffff,US
2620:c6:4000::,2620:c6:4000:ffff:ffff:ffff:ffff:ffff,US
2620:c6:8000::,2620:c6:8000:ffff:ffff:ffff:ffff:ffff,US
2620:c6:c000::,2620:c6:c000:ffff:ffff:ffff:ffff:ffff,US
2620:c7::,2620:c7::ffff:ffff:ffff:ffff:ffff,US
2620:c7:4000::,2620:c7:4000:ffff:ffff:ffff:ffff:ffff,US
2620:c7:8000::,2620:c7:8000:ffff:ffff:ffff:ffff:ffff,US
2620:c7:c000::,2620:c7:c000:ffff:ffff:ffff:ffff:ffff,US
2620:c8::,2620:c8::ffff:ffff:ffff:ffff:ffff,US
2620:c8:4000::,2620:c8:4000:ffff:ffff:ffff:ffff:ffff,US
2620:c8:c000::,2620:c8:c00f:ffff:ffff:ffff:ffff:ffff,US
2620:c9::,2620:c9::ffff:ffff:ffff:ffff:ffff,US
2620:c9:4000::,2620:c9:4000:ffff:ffff:ffff:ffff:ffff,US
2620:c9:8000::,2620:c9:8000:ffff:ffff:ffff:ffff:ffff,US
2620:c9:c000::,2620:c9:c000:ffff:ffff:ffff:ffff:ffff,US
2620:ca::,2620:ca::ffff:ffff:ffff:ffff:ffff,US
2620:ca:4000::,2620:ca:4000:ffff:ffff:ffff:ffff:ffff,US
2620:ca:8000::,2620:ca:8000:ffff:ffff:ffff:ffff:ffff,US
2620:ca:c000::,2620:ca:c000:ffff:ffff:ffff:ffff:ffff,US
2620:cb::,2620:cb:f:ffff:ffff:ffff:ffff:ffff,US
2620:cb:4000::,2620:cb:4000:ffff:ffff:ffff:ffff:ffff,US
2620:cb:8000::,2620:cb:8000:ffff:ffff:ffff:ffff:ffff,US
2620:cb:c000::,2620:cb:c000:ffff:ffff:ffff:ffff:ffff,US
2620:cc::,2620:cc::ffff:ffff:ffff:ffff:ffff,US
2620:cc:4000::,2620:cc:4000:ffff:ffff:ffff:ffff:ffff,US
2620:cc:8000::,2620:cc:8000:ffff:ffff:ffff:ffff:ffff,US
2620:cc:c000::,2620:cc:c000:ffff:ffff:ffff:ffff:ffff,US
2620:cd::,2620:cd::ffff:ffff:ffff:ffff:ffff,US
2620:cd:4000::,2620:cd:4000:ffff:ffff:ffff:ffff:ffff,US
2620:cd:8000::,2620:cd:8000:ffff:ffff:ffff:ffff:ffff,US
2620:cd:c000::,2620:cd:c000:ffff:ffff:ffff:ffff:ffff,US
2620:ce::,2620:ce::ffff:ffff:ffff:ffff:ffff,US
2620:ce:4000::,2620:ce:4000:ffff:ffff:ffff:ffff:ffff,US
2620:ce:8000::,2620:ce:8000:ffff:ffff:ffff:ffff:ffff,US
2620:ce:c000::,2620:ce:c000:ffff:ffff:ffff:ffff:ffff,US
2620:cf:4000::,2620:cf:4000:ffff:ffff:ffff:ffff:ffff,US
2620:cf:8000::,2620:cf:8000:ffff:ffff:ffff:ffff:ffff,US
2620:cf:c000::,2620:cf:c00f:ffff:ffff:ffff:ffff:ffff,US
2620:d0::,2620:d0::ffff:ffff:ffff:ffff:ffff,US
2620:d0:4000::,2620:d0:4000:ffff:ffff:ffff:ffff:ffff,US
2620:d0:8000::,2620:d0:8000:ffff:ffff:ffff:ffff:ffff,US
2620:d0:c000::,2620:d0:c000:ffff:ffff:ffff:ffff:ffff,US
2620:d1::,2620:d1::ffff:ffff:ffff:ffff:ffff,US
2620:d1:4000::,2620:d1:4000:ffff:ffff:ffff:ffff:ffff,US
2620:d1:8000::,2620:d1:8000:ffff:ffff:ffff:ffff:ffff,US
2620:d1:c000::,2620:d1:c000:ffff:ffff:ffff:ffff:ffff,US
2620:d2::,2620:d2::ffff:ffff:ffff:ffff:ffff,US
2620:d2:4000::,2620:d2:4000:ffff:ffff:ffff:ffff:ffff,US
2620:d2:8000::,2620:d2:8000:ffff:ffff:ffff:ffff:ffff,US
2620:d2:c000::,2620:d2:c000:ffff:ffff:ffff:ffff:ffff,CA
2620:d3:4000::,2620:d3:4000:ffff:ffff:ffff:ffff:ffff,US
2620:d3:8000::,2620:d3:8000:ffff:ffff:ffff:ffff:ffff,US
2620:d3:c000::,2620:d3:c000:ffff:ffff:ffff:ffff:ffff,US
2620:d4::,2620:d4::ffff:ffff:ffff:ffff:ffff,US
2620:d4:4000::,2620:d4:4000:ffff:ffff:ffff:ffff:ffff,US
2620:d4:8000::,2620:d4:8000:ffff:ffff:ffff:ffff:ffff,US
2620:d5::,2620:d5::ffff:ffff:ffff:ffff:ffff,US
2620:d5:4000::,2620:d5:4000:ffff:ffff:ffff:ffff:ffff,US
2620:d5:8000::,2620:d5:8000:ffff:ffff:ffff:ffff:ffff,US
2620:d5:c000::,2620:d5:c000:ffff:ffff:ffff:ffff:ffff,US
2620:d6::,2620:d6::ffff:ffff:ffff:ffff:ffff,US
2620:d6:4000::,2620:d6:4000:ffff:ffff:ffff:ffff:ffff,US
2620:d6:8000::,2620:d6:8000:ffff:ffff:ffff:ffff:ffff,US
2620:d6:c000::,2620:d6:c000:ffff:ffff:ffff:ffff:ffff,US
2620:d7::,2620:d7::ffff:ffff:ffff:ffff:ffff,US
2620:d7:4000::,2620:d7:4000:ffff:ffff:ffff:ffff:ffff,CA
2620:d7:8000::,2620:d7:8000:ffff:ffff:ffff:ffff:ffff,US
2620:d7:c000::,2620:d7:c000:ffff:ffff:ffff:ffff:ffff,US
2620:d8::,2620:d8::ffff:ffff:ffff:ffff:ffff,US
2620:d8:4000::,2620:d8:4000:ffff:ffff:ffff:ffff:ffff,US
2620:d8:8000::,2620:d8:8000:ffff:ffff:ffff:ffff:ffff,US
2620:d8:c000::,2620:d8:c000:ffff:ffff:ffff:ffff:ffff,US
2620:d9::,2620:d9::ffff:ffff:ffff:ffff:ffff,US
2620:d9:4000::,2620:d9:4000:ffff:ffff:ffff:ffff:ffff,US
2620:d9:8000::,2620:d9:8000:ffff:ffff:ffff:ffff:ffff,US
2620:d9:c000::,2620:d9:c000:ffff:ffff:ffff:ffff:ffff,US
2620:da::,2620:da::ffff:ffff:ffff:ffff:ffff,US
2620:da:4000::,2620:da:4000:ffff:ffff:ffff:ffff:ffff,US
2620:da:c000::,2620:da:c000:ffff:ffff:ffff:ffff:ffff,US
2620:db::,2620:db::ffff:ffff:ffff:ffff:ffff,US
2620:db:4000::,2620:db:4000:ffff:ffff:ffff:ffff:ffff,CA
2620:db:8000::,2620:db:8000:ffff:ffff:ffff:ffff:ffff,US
2620:db:c000::,2620:db:c000:ffff:ffff:ffff:ffff:ffff,US
2620:dc::,2620:dc::ffff:ffff:ffff:ffff:ffff,US
2620:dc:8::,2620:dc:8:ffff:ffff:ffff:ffff:ffff,US
2620:dc:4000::,2620:dc:40ff:ffff:ffff:ffff:ffff:ffff,US
2620:dc:8000::,2620:dc:8000:ffff:ffff:ffff:ffff:ffff,CA
2620:dc:c000::,2620:dc:c000:ffff:ffff:ffff:ffff:ffff,US
2620:dd::,2620:dd::ffff:ffff:ffff:ffff:ffff,CA
2620:dd:4000::,2620:dd:4000:ffff:ffff:ffff:ffff:ffff,US
2620:dd:8000::,2620:dd:8000:ffff:ffff:ffff:ffff:ffff,US
2620:dd:c000::,2620:dd:c000:ffff:ffff:ffff:ffff:ffff,US
2620:de::,2620:de::ffff:ffff:ffff:ffff:ffff,US
2620:de:4000::,2620:de:4000:ffff:ffff:ffff:ffff:ffff,US
2620:de:8000::,2620:de:8000:ffff:ffff:ffff:ffff:ffff,US
2620:de:c000::,2620:de:c000:ffff:ffff:ffff:ffff:ffff,US
2620:df::,2620:df::ffff:ffff:ffff:ffff:ffff,US
2620:df:4000::,2620:df:400f:ffff:ffff:ffff:ffff:ffff,US
2620:df:8000::,2620:df:8000:ffff:ffff:ffff:ffff:ffff,US
2620:df:c000::,2620:df:c000:ffff:ffff:ffff:ffff:ffff,US
2620:e0::,2620:e0::ffff:ffff:ffff:ffff:ffff,US
2620:e0:4000::,2620:e0:4000:ffff:ffff:ffff:ffff:ffff,US
2620:e0:8000::,2620:e0:8000:ffff:ffff:ffff:ffff:ffff,US
2620:e0:c000::,2620:e0:c000:ffff:ffff:ffff:ffff:ffff,US
2620:e1::,2620:e1::ffff:ffff:ffff:ffff:ffff,US
2620:e1:4000::,2620:e1:4000:ffff:ffff:ffff:ffff:ffff,US
2620:e1:8000::,2620:e1:8000:ffff:ffff:ffff:ffff:ffff,US
2620:e1:c000::,2620:e1:c000:ffff:ffff:ffff:ffff:ffff,VG
2620:e2::,2620:e2::ffff:ffff:ffff:ffff:ffff,US
2620:e2:4000::,2620:e2:4000:ffff:ffff:ffff:ffff:ffff,US
2620:e2:8000::,2620:e2:8000:ffff:ffff:ffff:ffff:ffff,US
2620:e2:c000::,2620:e2:c000:ffff:ffff:ffff:ffff:ffff,US
2620:e3::,2620:e3::ffff:ffff:ffff:ffff:ffff,US
2620:e3:4000::,2620:e3:4000:ffff:ffff:ffff:ffff:ffff,US
2620:e3:8000::,2620:e3:8000:ffff:ffff:ffff:ffff:ffff,US
2620:e3:c000::,2620:e3:c000:ffff:ffff:ffff:ffff:ffff,US
2620:e4::,2620:e4::ffff:ffff:ffff:ffff:ffff,US
2620:e4:4000::,2620:e4:4000:ffff:ffff:ffff:ffff:ffff,US
2620:e4:8000::,2620:e4:8000:ffff:ffff:ffff:ffff:ffff,US
2620:e4:c000::,2620:e4:c000:ffff:ffff:ffff:ffff:ffff,US
2620:e5::,2620:e5::ffff:ffff:ffff:ffff:ffff,US
2620:e5:4000::,2620:e5:4000:ffff:ffff:ffff:ffff:ffff,US
2620:e5:8000::,2620:e5:8000:ffff:ffff:ffff:ffff:ffff,US
2620:e5:c000::,2620:e5:c000:ffff:ffff:ffff:ffff:ffff,US
2620:e6::,2620:e6::ffff:ffff:ffff:ffff:ffff,US
2620:e6:4000::,2620:e6:4000:ffff:ffff:ffff:ffff:ffff,US
2620:e6:8000::,2620:e6:8000:ffff:ffff:ffff:ffff:ffff,US
2620:e6:c000::,2620:e6:c000:ffff:ffff:ffff:ffff:ffff,US
2620:e7::,2620:e7::ffff:ffff:ffff:ffff:ffff,US
2620:e7:4000::,2620:e7:4000:ffff:ffff:ffff:ffff:ffff,US
2620:e7:8000::,2620:e7:8000:ffff:ffff:ffff:ffff:ffff,CA
2620:e7:c000::,2620:e7:c000:ffff:ffff:ffff:ffff:ffff,US
2620:e8::,2620:e8::ffff:ffff:ffff:ffff:ffff,US
2620:e8:4000::,2620:e8:4000:ffff:ffff:ffff:ffff:ffff,US
2620:e8:8000::,2620:e8:8000:ffff:ffff:ffff:ffff:ffff,US
2620:e8:c000::,2620:e8:c000:ffff:ffff:ffff:ffff:ffff,US
2620:e9::,2620:e9::ffff:ffff:ffff:ffff:ffff,US
2620:e9:4000::,2620:e9:4000:ffff:ffff:ffff:ffff:ffff,US
2620:e9:8000::,2620:e9:8000:ffff:ffff:ffff:ffff:ffff,US
2620:e9:c000::,2620:e9:c000:ffff:ffff:ffff:ffff:ffff,US
2620:ea::,2620:ea:f:ffff:ffff:ffff:ffff:ffff,US
2620:ea:4000::,2620:ea:4000:ffff:ffff:ffff:ffff:ffff,US
2620:ea:8000::,2620:ea:8000:ffff:ffff:ffff:ffff:ffff,US
2620:eb::,2620:eb::ffff:ffff:ffff:ffff:ffff,US
2620:eb:4000::,2620:eb:4000:ffff:ffff:ffff:ffff:ffff,US
2620:eb:8000::,2620:eb:8000:ffff:ffff:ffff:ffff:ffff,US
2620:eb:c000::,2620:eb:c000:ffff:ffff:ffff:ffff:ffff,US
2620:ec::,2620:ec::ffff:ffff:ffff:ffff:ffff,US
2620:ec:4000::,2620:ec:4000:ffff:ffff:ffff:ffff:ffff,US
2620:ec:8000::,2620:ec:8000:ffff:ffff:ffff:ffff:ffff,US
2620:ec:c000::,2620:ec:c000:ffff:ffff:ffff:ffff:ffff,US
2620:ed::,2620:ed::ffff:ffff:ffff:ffff:ffff,US
2620:ed:4000::,2620:ed:4000:ffff:ffff:ffff:ffff:ffff,CA
2620:ed:8000::,2620:ed:8000:ffff:ffff:ffff:ffff:ffff,US
2620:ed:c000::,2620:ed:c000:ffff:ffff:ffff:ffff:ffff,US
2620:ee::,2620:ee::ffff:ffff:ffff:ffff:ffff,US
2620:ee:4000::,2620:ee:4000:ffff:ffff:ffff:ffff:ffff,US
2620:ee:8000::,2620:ee:8000:ffff:ffff:ffff:ffff:ffff,US
2620:ee:c000::,2620:ee:c00f:ffff:ffff:ffff:ffff:ffff,US
2620:ef:4000::,2620:ef:4000:ffff:ffff:ffff:ffff:ffff,US
2620:ef:8000::,2620:ef:8000:ffff:ffff:ffff:ffff:ffff,US
2620:ef:c000::,2620:ef:c000:ffff:ffff:ffff:ffff:ffff,US
2620:f0::,2620:f0::ffff:ffff:ffff:ffff:ffff,US
2620:f0:4000::,2620:f0:400f:ffff:ffff:ffff:ffff:ffff,US
2620:f0:8000::,2620:f0:8000:ffff:ffff:ffff:ffff:ffff,US
2620:f0:c000::,2620:f0:c002:ffff:ffff:ffff:ffff:ffff,US
2620:f0:c003::,2620:f0:c003:ffff:ffff:ffff:ffff:ffff,NL
2620:f0:c004::,2620:f0:c004:ffff:ffff:ffff:ffff:ffff,US
2620:f0:c005::,2620:f0:c005:ffff:ffff:ffff:ffff:ffff,SG
2620:f0:c006::,2620:f0:c009:ffff:ffff:ffff:ffff:ffff,US
2620:f0:c00a::,2620:f0:c00a:ffff:ffff:ffff:ffff:ffff,CA
2620:f0:c00b::,2620:f0:c00f:ffff:ffff:ffff:ffff:ffff,US
2620:f1:4000::,2620:f1:4000:ffff:ffff:ffff:ffff:ffff,CA
2620:f1:8000::,2620:f1:8000:ffff:ffff:ffff:ffff:ffff,US
2620:f1:c000::,2620:f1:c000:ffff:ffff:ffff:ffff:ffff,US
2620:f2::,2620:f2::ffff:ffff:ffff:ffff:ffff,CA
2620:f2:4000::,2620:f2:4000:ffff:ffff:ffff:ffff:ffff,US
2620:f2:8000::,2620:f2:8000:ffff:ffff:ffff:ffff:ffff,US
2620:f2:c000::,2620:f2:c000:ffff:ffff:ffff:ffff:ffff,US
2620:f3::,2620:f3::ffff:ffff:ffff:ffff:ffff,US
2620:f3:4000::,2620:f3:4000:ffff:ffff:ffff:ffff:ffff,US
2620:f3:8000::,2620:f3:8000:ffff:ffff:ffff:ffff:ffff,US
2620:f3:c000::,2620:f3:c000:ffff:ffff:ffff:ffff:ffff,US
2620:f4::,2620:f4::ffff:ffff:ffff:ffff:ffff,US
2620:f4:4000::,2620:f4:40ff:ffff:ffff:ffff:ffff:ffff,US
2620:f4:8000::,2620:f4:8000:ffff:ffff:ffff:ffff:ffff,CA
2620:f4:c000::,2620:f4:c000:ffff:ffff:ffff:ffff:ffff,US
2620:f5::,2620:f5::ffff:ffff:ffff:ffff:ffff,US
2620:f5:4000::,2620:f5:4000:ffff:ffff:ffff:ffff:ffff,US
2620:f5:8000::,2620:f5:8000:ffff:ffff:ffff:ffff:ffff,US
2620:f5:c000::,2620:f5:c000:ffff:ffff:ffff:ffff:ffff,US
2620:f6::,2620:f6::ffff:ffff:ffff:ffff:ffff,CA
2620:f6:4000::,2620:f6:400f:ffff:ffff:ffff:ffff:ffff,US
2620:f6:8000::,2620:f6:8000:ffff:ffff:ffff:ffff:ffff,US
2620:f6:c000::,2620:f6:c000:ffff:ffff:ffff:ffff:ffff,CA
2620:f7::,2620:f7::ffff:ffff:ffff:ffff:ffff,US
2620:f7:4000::,2620:f7:4000:ffff:ffff:ffff:ffff:ffff,US
2620:f7:8000::,2620:f7:8000:ffff:ffff:ffff:ffff:ffff,US
2620:f7:c000::,2620:f7:c000:ffff:ffff:ffff:ffff:ffff,US
2620:f8::,2620:f8::ffff:ffff:ffff:ffff:ffff,US
2620:f8:4000::,2620:f8:4000:ffff:ffff:ffff:ffff:ffff,US
2620:f8:8000::,2620:f8:8000:ffff:ffff:ffff:ffff:ffff,US
2620:f8:c000::,2620:f8:c000:ffff:ffff:ffff:ffff:ffff,US
2620:f9::,2620:f9:f:ffff:ffff:ffff:ffff:ffff,US
2620:f9:4000::,2620:f9:4000:ffff:ffff:ffff:ffff:ffff,US
2620:f9:8000::,2620:f9:8000:ffff:ffff:ffff:ffff:ffff,US
2620:f9:c000::,2620:f9:c000:ffff:ffff:ffff:ffff:ffff,US
2620:fa::,2620:fa::ffff:ffff:ffff:ffff:ffff,US
2620:fa:4000::,2620:fa:4000:ffff:ffff:ffff:ffff:ffff,US
2620:fa:8000::,2620:fa:8000:ffff:ffff:ffff:ffff:ffff,CA
2620:fa:c000::,2620:fa:c000:ffff:ffff:ffff:ffff:ffff,US
2620:fb::,2620:fb::ffff:ffff:ffff:ffff:ffff,US
2620:fb:4000::,2620:fb:4000:ffff:ffff:ffff:ffff:ffff,US
2620:fb:8000::,2620:fb:8000:ffff:ffff:ffff:ffff:ffff,US
2620:fc::,2620:fc::ffff:ffff:ffff:ffff:ffff,CA
2620:fc:4000::,2620:fc:4000:ffff:ffff:ffff:ffff:ffff,CA
2620:fc:8000::,2620:fc:8000:ffff:ffff:ffff:ffff:ffff,US
2620:fc:c000::,2620:fc:c000:ffff:ffff:ffff:ffff:ffff,US
2620:fd::,2620:fd::ffff:ffff:ffff:ffff:ffff,CA
2620:fd:4000::,2620:fd:4000:ffff:ffff:ffff:ffff:ffff,US
2620:fd:8000::,2620:fd:8000:ffff:ffff:ffff:ffff:ffff,US
2620:fd:c000::,2620:fd:c000:ffff:ffff:ffff:ffff:ffff,CA
2620:fe::,2620:fe::ffff:ffff:ffff:ffff:ffff,US
2620:fe:2040::,2620:fe:2040:ffff:ffff:ffff:ffff:ffff,US
2620:fe:8000::,2620:fe:8000:ffff:ffff:ffff:ffff:ffff,US
2620:fe:c000::,2620:fe:c000:ffff:ffff:ffff:ffff:ffff,US
2620:ff::,2620:ff::ffff:ffff:ffff:ffff:ffff,US
2620:ff:4000::,2620:ff:4000:ffff:ffff:ffff:ffff:ffff,US
2620:ff:8000::,2620:ff:8000:ffff:ffff:ffff:ffff:ffff,US
2620:ff:c000::,2620:ff:c000:ffff:ffff:ffff:ffff:ffff,US
2620:100::,2620:100:f:ffff:ffff:ffff:ffff:ffff,US
2620:100:3000::,2620:100:3007:ffff:ffff:ffff:ffff:ffff,US
2620:100:4000::,2620:100:403f:ffff:ffff:ffff:ffff:ffff,US
2620:100:5000::,2620:100:5007:ffff:ffff:ffff:ffff:ffff,US
2620:100:6000::,2620:100:60ff:ffff:ffff:ffff:ffff:ffff,US
2620:100:7000::,2620:100:700f:ffff:ffff:ffff:ffff:ffff,US
2620:100:8000::,2620:100:8003:ffff:ffff:ffff:ffff:ffff,US
2620:100:9000::,2620:100:900f:ffff:ffff:ffff:ffff:ffff,US
2620:100:a000::,2620:100:a00f:ffff:ffff:ffff:ffff:ffff,US
2620:100:c000::,2620:100:c03f:ffff:ffff:ffff:ffff:ffff,US
2620:100:d000::,2620:100:d00f:ffff:ffff:ffff:ffff:ffff,US
2620:100:e000::,2620:100:e00f:ffff:ffff:ffff:ffff:ffff,US
2620:100:f000::,2620:100:f00f:ffff:ffff:ffff:ffff:ffff,US
2620:101::,2620:101:3:ffff:ffff:ffff:ffff:ffff,US
2620:101:1000::,2620:101:103f:ffff:ffff:ffff:ffff:ffff,US
2620:101:2000::,2620:101:201f:ffff:ffff:ffff:ffff:ffff,US
2620:101:3000::,2620:101:303f:ffff:ffff:ffff:ffff:ffff,US
2620:101:4000::,2620:101:403f:ffff:ffff:ffff:ffff:ffff,US
2620:101:5000::,2620:101:503f:ffff:ffff:ffff:ffff:ffff,US
2620:101:6000::,2620:101:6001:ffff:ffff:ffff:ffff:ffff,US
2620:101:7000::,2620:101:7001:ffff:ffff:ffff:ffff:ffff,US
2620:101:8000::,2620:101:80f1:ffff:ffff:ffff:ffff:ffff,US
2620:101:80f2::,2620:101:80f2:7fff:ffff:ffff:ffff:ffff,CA
2620:101:80f2:8000::,2620:101:80ff:ffff:ffff:ffff:ffff:ffff,US
2620:101:9000::,2620:101:900f:ffff:ffff:ffff:ffff:ffff,US
2620:101:b000::,2620:101:b07f:ffff:ffff:ffff:ffff:ffff,US
2620:101:c000::,2620:101:c0ff:ffff:ffff:ffff:ffff:ffff,CA
2620:101:d000::,2620:101:d007:ffff:ffff:ffff:ffff:ffff,US
2620:101:e000::,2620:101:e00f:ffff:ffff:ffff:ffff:ffff,US
2620:101:f000::,2620:101:f001:ffff:ffff:ffff:ffff:ffff,CA
2620:102::,2620:102:f:ffff:ffff:ffff:ffff:ffff,US
2620:102:2000::,2620:102:200f:ffff:ffff:ffff:ffff:ffff,US
2620:102:3000::,2620:102:300f:ffff:ffff:ffff:ffff:ffff,US
2620:102:4000::,2620:102:403f:ffff:ffff:ffff:ffff:ffff,US
2a07:14c0::,2a07:14c7:ffff:ffff:ffff:ffff:ffff:ffff,RU
2a07:1500::,2a07:1507:ffff:ffff:ffff:ffff:ffff:ffff,GB
2a07:1540::,2a07:1547:ffff:ffff:ffff:ffff:ffff:ffff,NO
2a07:1580::,2a07:1587:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:15c0::,2a07:15c7:ffff:ffff:ffff:ffff:ffff:ffff,TR
2a07:1600::,2a07:1607:ffff:ffff:ffff:ffff:ffff:ffff,NO
2a07:1640::,2a07:1647:ffff:ffff:ffff:ffff:ffff:ffff,NO
2a07:1680::,2a07:1687:ffff:ffff:ffff:ffff:ffff:ffff,NO
2a07:16c0::,2a07:16c7:ffff:ffff:ffff:ffff:ffff:ffff,ES
2a07:1700::,2a07:1707:ffff:ffff:ffff:ffff:ffff:ffff,NO
2a07:1740::,2a07:1747:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:1780::,2a07:1787:ffff:ffff:ffff:ffff:ffff:ffff,RU
2a07:17c0::,2a07:17c7:ffff:ffff:ffff:ffff:ffff:ffff,UA
2a07:1800::,2a07:1807:ffff:ffff:ffff:ffff:ffff:ffff,AT
2a07:1840::,2a07:1847:ffff:ffff:ffff:ffff:ffff:ffff,RU
2a07:1880::,2a07:1887:ffff:ffff:ffff:ffff:ffff:ffff,IT
2a07:18c0::,2a07:18c7:ffff:ffff:ffff:ffff:ffff:ffff,FR
2a07:1900::,2a07:1907:ffff:ffff:ffff:ffff:ffff:ffff,FR
2a07:1940::,2a07:1947:ffff:ffff:ffff:ffff:ffff:ffff,IT
2a07:1980::,2a07:1987:ffff:ffff:ffff:ffff:ffff:ffff,IL
2a07:19c0::,2a07:19c7:ffff:ffff:ffff:ffff:ffff:ffff,FR
2a07:1a00::,2a07:1a07:ffff:ffff:ffff:ffff:ffff:ffff,ES
2a07:1a40::,2a07:1a47:ffff:ffff:ffff:ffff:ffff:ffff,PL
2a07:1a80::,2a07:1a80:6fff:ffff:ffff:ffff:ffff:ffff,SE
2a07:1a80:7000::,2a07:1a80:70ff:ffff:ffff:ffff:ffff:ffff,AT
2a07:1a80:7100::,2a07:1a87:ffff:ffff:ffff:ffff:ffff:ffff,SE
2a07:1ac0::,2a07:1ac7:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:1b00::,2a07:1b07:ffff:ffff:ffff:ffff:ffff:ffff,GB
2a07:1b40::,2a07:1b47:ffff:ffff:ffff:ffff:ffff:ffff,GB
2a07:1b80::,2a07:1b87:ffff:ffff:ffff:ffff:ffff:ffff,AT
2a07:1bc0::,2a07:1bc7:ffff:ffff:ffff:ffff:ffff:ffff,PL
2a07:1c00::,2a07:1c07:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:1c40::,2a07:1c44:3ff:ffff:ffff:ffff:ffff:ffff,AT
2a07:1c44:400::,2a07:1c44:4ff:ffff:ffff:ffff:ffff:ffff,DE
2a07:1c44:500::,2a07:1c44:609:ffff:ffff:ffff:ffff:ffff,AT
2a07:1c44:60a::,2a07:1c44:60a:ffff:ffff:ffff:ffff:ffff,DE
2a07:1c44:60b::,2a07:1c44:619:ffff:ffff:ffff:ffff:ffff,AT
2a07:1c44:61a::,2a07:1c44:61a:ffff:ffff:ffff:ffff:ffff,KR
2a07:1c44:61b::,2a07:1c44:67f:ffff:ffff:ffff:ffff:ffff,AT
2a07:1c44:680::,2a07:1c44:6bf:ffff:ffff:ffff:ffff:ffff,KR
2a07:1c44:6c0::,2a07:1c44:6ff:ffff:ffff:ffff:ffff:ffff,DE
2a07:1c44:700::,2a07:1c44:70f:ffff:ffff:ffff:ffff:ffff,US
2a07:1c44:710::,2a07:1c44:1800:ffff:ffff:ffff:ffff:ffff,AT
2a07:1c44:1801::,2a07:1c44:1802:ffff:ffff:ffff:ffff:ffff,US
2a07:1c44:1803::,2a07:1c44:35ff:ffff:ffff:ffff:ffff:ffff,AT
2a07:1c44:3600::,2a07:1c44:36ff:ffff:ffff:ffff:ffff:ffff,GB
2a07:1c44:3700::,2a07:1c44:3fff:ffff:ffff:ffff:ffff:ffff,AT
2a07:1c44:4000::,2a07:1c44:40ff:ffff:ffff:ffff:ffff:ffff,US
2a07:1c44:4100::,2a07:1c44:42ff:ffff:ffff:ffff:ffff:ffff,AT
2a07:1c44:4300::,2a07:1c44:43ff:ffff:ffff:ffff:ffff:ffff,HR
2a07:1c44:4400::,2a07:1c44:4fff:ffff:ffff:ffff:ffff:ffff,AT
2a07:1c44:5000::,2a07:1c44:51ff:ffff:ffff:ffff:ffff:ffff,US
2a07:1c44:5200::,2a07:1c47:ffff:ffff:ffff:ffff:ffff:ffff,AT
2a07:1c80::,2a07:1c87:ffff:ffff:ffff:ffff:ffff:ffff,SE
2a07:1cc0::,2a07:1cc7:ffff:ffff:ffff:ffff:ffff:ffff,PL
2a07:1d00::,2a07:1d07:ffff:ffff:ffff:ffff:ffff:ffff,IR
2a07:1d40::,2a07:1d47:ffff:ffff:ffff:ffff:ffff:ffff,RU
2a07:1d80::,2a07:1d87:ffff:ffff:ffff:ffff:ffff:ffff,FR
2a07:1dc0::,2a07:1dc7:ffff:ffff:ffff:ffff:ffff:ffff,PL
2a07:1e00::,2a07:1e07:ffff:ffff:ffff:ffff:ffff:ffff,KZ
2a07:1e40::,2a07:1e47:ffff:ffff:ffff:ffff:ffff:ffff,RU
2a07:1e80::,2a07:1e87:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:1ec0::,2a07:1ec7:ffff:ffff:ffff:ffff:ffff:ffff,IT
2a07:1f00::,2a07:1f07:ffff:ffff:ffff:ffff:ffff:ffff,CH
2a07:1f40::,2a07:1f47:ffff:ffff:ffff:ffff:ffff:ffff,CZ
2a07:1f80::,2a07:1f87:ffff:ffff:ffff:ffff:ffff:ffff,US
2a07:1fc0::,2a07:1fc7:ffff:ffff:ffff:ffff:ffff:ffff,FR
2a07:2000::,2a07:2007:ffff:ffff:ffff:ffff:ffff:ffff,IQ
2a07:2040::,2a07:2047:ffff:ffff:ffff:ffff:ffff:ffff,ES
2a07:2080::,2a07:2087:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:20c0::,2a07:20c7:ffff:ffff:ffff:ffff:ffff:ffff,CZ
2a07:2100::,2a07:2107:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:2140::,2a07:2147:ffff:ffff:ffff:ffff:ffff:ffff,CH
2a07:2180::,2a07:2187:ffff:ffff:ffff:ffff:ffff:ffff,SE
2a07:21c0::,2a07:21c7:ffff:ffff:ffff:ffff:ffff:ffff,TR
2a07:2200::,2a07:2207:ffff:ffff:ffff:ffff:ffff:ffff,IR
2a07:2240::,2a07:2247:ffff:ffff:ffff:ffff:ffff:ffff,NO
2a07:2280::,2a07:2287:ffff:ffff:ffff:ffff:ffff:ffff,RU
2a07:2300::,2a07:2307:ffff:ffff:ffff:ffff:ffff:ffff,NO
2a07:2340::,2a07:2347:ffff:ffff:ffff:ffff:ffff:ffff,SE
2a07:2380::,2a07:2387:ffff:ffff:ffff:ffff:ffff:ffff,ES
2a07:23c0::,2a07:23c7:ffff:ffff:ffff:ffff:ffff:ffff,GB
2a07:2400::,2a07:2407:ffff:ffff:ffff:ffff:ffff:ffff,FR
2a07:2440::,2a07:2447:ffff:ffff:ffff:ffff:ffff:ffff,SE
2a07:2480::,2a07:2487:ffff:ffff:ffff:ffff:ffff:ffff,IR
2a07:24c0::,2a07:24c7:ffff:ffff:ffff:ffff:ffff:ffff,GB
2a07:2500::,2a07:2507:ffff:ffff:ffff:ffff:ffff:ffff,DK
2a07:2540::,2a07:2547:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:2580::,2a07:2587:ffff:ffff:ffff:ffff:ffff:ffff,IT
2a07:25c0::,2a07:25c7:ffff:ffff:ffff:ffff:ffff:ffff,GB
2a07:2600::,2a07:2607:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:2640::,2a07:2647:ffff:ffff:ffff:ffff:ffff:ffff,GB
2a07:2680::,2a07:2687:ffff:ffff:ffff:ffff:ffff:ffff,DK
2a07:26c0::,2a07:26c7:ffff:ffff:ffff:ffff:ffff:ffff,BE
2a07:2700::,2a07:2707:ffff:ffff:ffff:ffff:ffff:ffff,TR
2a07:2740::,2a07:2747:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:2780::,2a07:2787:ffff:ffff:ffff:ffff:ffff:ffff,GB
2a07:27c0::,2a07:27c7:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:2800::,2a07:2807:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:2840::,2a07:2847:ffff:ffff:ffff:ffff:ffff:ffff,IT
2a07:2880::,2a07:2887:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:28c0::,2a07:28c7:ffff:ffff:ffff:ffff:ffff:ffff,FR
2a07:2900::,2a07:291f:ffff:ffff:ffff:ffff:ffff:ffff,CH
2a07:2a00::,2a07:2a07:ffff:ffff:ffff:ffff:ffff:ffff,ES
2a07:2a40::,2a07:2a47:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:2a80::,2a07:2a87:ffff:ffff:ffff:ffff:ffff:ffff,SE
2a07:2ac0::,2a07:2ac7:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:2b00::,2a07:2b07:ffff:ffff:ffff:ffff:ffff:ffff,FR
2a07:2b40::,2a07:2b47:ffff:ffff:ffff:ffff:ffff:ffff,NO
2a07:2b80::,2a07:2b87:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:2bc0::,2a07:2bc7:ffff:ffff:ffff:ffff:ffff:ffff,ES
2a07:2c00::,2a07:2c07:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:2c40::,2a07:2c47:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:2c80::,2a07:2c87:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:2cc0::,2a07:2cc7:ffff:ffff:ffff:ffff:ffff:ffff,IT
2a07:2d00::,2a07:2d07:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:2d40::,2a07:2d47:ffff:ffff:ffff:ffff:ffff:ffff,CH
2a07:2d80::,2a07:2d87:ffff:ffff:ffff:ffff:ffff:ffff,FR
2a07:2dc0::,2a07:2dc7:ffff:ffff:ffff:ffff:ffff:ffff,FI
2a07:2e00::,2a07:2e07:ffff:ffff:ffff:ffff:ffff:ffff,CH
2a07:2e40::,2a07:2e47:ffff:ffff:ffff:ffff:ffff:ffff,FR
2a07:2e80::,2a07:2e87:ffff:ffff:ffff:ffff:ffff:ffff,IT
2a07:2ec0::,2a07:2ec7:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:2f00::,2a07:2f07:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:2f40::,2a07:2f47:ffff:ffff:ffff:ffff:ffff:ffff,UA
2a07:2f80::,2a07:2f87:ffff:ffff:ffff:ffff:ffff:ffff,NO
2a07:2fc0::,2a07:2fc7:ffff:ffff:ffff:ffff:ffff:ffff,RU
2a07:3000::,2a07:3007:ffff:ffff:ffff:ffff:ffff:ffff,ES
2a07:3040::,2a07:3047:ffff:ffff:ffff:ffff:ffff:ffff,PL
2a07:3080::,2a07:3087:ffff:ffff:ffff:ffff:ffff:ffff,RU
2a07:30c0::,2a07:30c7:ffff:ffff:ffff:ffff:ffff:ffff,CZ
2a07:3100::,2a07:3107:ffff:ffff:ffff:ffff:ffff:ffff,RO
2a07:3140::,2a07:3147:ffff:ffff:ffff:ffff:ffff:ffff,BE
2a07:3180::,2a07:3187:ffff:ffff:ffff:ffff:ffff:ffff,NO
2a07:31c0::,2a07:31c7:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:3200::,2a07:3207:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:3240::,2a07:3247:ffff:ffff:ffff:ffff:ffff:ffff,NO
2a07:3280::,2a07:3287:ffff:ffff:ffff:ffff:ffff:ffff,NO
2a07:32c0::,2a07:32c7:ffff:ffff:ffff:ffff:ffff:ffff,NO
2a07:3300::,2a07:3307:ffff:ffff:ffff:ffff:ffff:ffff,TR
2a07:3340::,2a07:3347:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:3380::,2a07:3387:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:33c0::,2a07:33c7:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:3400::,2a07:3407:ffff:ffff:ffff:ffff:ffff:ffff,UA
2a07:3440::,2a07:3447:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:3480::,2a07:3487:ffff:ffff:ffff:ffff:ffff:ffff,RU
2a07:3500::,2a07:3507:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:3540::,2a07:3547:ffff:ffff:ffff:ffff:ffff:ffff,IT
2a07:3580::,2a07:3587:ffff:ffff:ffff:ffff:ffff:ffff,ES
2a07:35c0::,2a07:35c7:ffff:ffff:ffff:ffff:ffff:ffff,UA
2a07:3600::,2a07:3607:ffff:ffff:ffff:ffff:ffff:ffff,GB
2a07:3640::,2a07:3647:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:3680::,2a07:3687:ffff:ffff:ffff:ffff:ffff:ffff,LB
2a07:36c0::,2a07:36c7:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:3700::,2a07:3707:ffff:ffff:ffff:ffff:ffff:ffff,RU
2a07:3740::,2a07:3747:ffff:ffff:ffff:ffff:ffff:ffff,AT
2a07:3780::,2a07:3787:ffff:ffff:ffff:ffff:ffff:ffff,IS
2a07:37c0::,2a07:37c7:ffff:ffff:ffff:ffff:ffff:ffff,BE
2a07:3800::,2a07:3807:ffff:ffff:ffff:ffff:ffff:ffff,FR
2a07:3840::,2a07:3847:ffff:ffff:ffff:ffff:ffff:ffff,HR
2a07:3880::,2a07:3887:ffff:ffff:ffff:ffff:ffff:ffff,NO
2a07:38c0::,2a07:38c7:ffff:ffff:ffff:ffff:ffff:ffff,GB
2a07:3900::,2a07:3907:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:3940::,2a07:3947:ffff:ffff:ffff:ffff:ffff:ffff,FR
2a07:3980::,2a07:3987:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:39c0::,2a07:39c7:ffff:ffff:ffff:ffff:ffff:ffff,DK
2a07:3a00::,2a07:3a07:ffff:ffff:ffff:ffff:ffff:ffff,ES
2a07:3a80::,2a07:3a87:ffff:ffff:ffff:ffff:ffff:ffff,FR
2a07:3ac0::,2a07:3ac7:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:3b00::,2a07:3b07:ffff:ffff:ffff:ffff:ffff:ffff,FR
2a07:3b40::,2a07:3b47:ffff:ffff:ffff:ffff:ffff:ffff,RU
2a07:3b80::,2a07:3b87:ffff:ffff:ffff:ffff:ffff:ffff,GI
2a07:3bc0::,2a07:3bc7:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:3c00::,2a07:3c07:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:3c40::,2a07:3c47:ffff:ffff:ffff:ffff:ffff:ffff,DE
2a07:3c80::,2a07:3c87:ffff:ffff:ffff:ffff:ffff:ffff,RU
2a07:3d00::,2a07:3d07:ffff:ffff:ffff:ffff:ffff:ffff,IT
2a07:3d80::,2a07:3d87:ffff:ffff:ffff:ffff:ffff:ffff,CZ
2a07:3dc0::,2a07:3dc7:ffff:ffff:ffff:ffff:ffff:ffff,DK
2a07:3e00::,2a07:3e07:ffff:ffff:ffff:ffff:ffff:ffff,CH
2a07:3e40::,2a07:3e47:ffff:ffff:ffff:ffff:ffff:ffff,RU
2a07:3e80::,2a07:3e87:ffff:ffff:ffff:ffff:ffff:ffff,NL
2a07:3ec0::,2a07:3ec7:ffff:ffff:ffff:ffff:ffff:ffff,GB
2a07:3f00::,2a07:3f07:ffff:ffff:ffff:ffff:ffff:ffff,FR
2a07:3f40::,2a07:3f47:ffff:ffff:ffff:ffff:ffff:ffff,IE
2a07:3f80::,2a07:3f87:ffff:ffff:ffff:ffff:ffff:ffff,SK
2a07:3fc0::,2a07:3fc7:ffff:ffff:ffff:ffff:ffff:ffff,SE
2a07:4000::,2a07:4007:ffff:ffff:ffff:ffff:ffff:ffff,NO
2a07:4040::,2a07:4047:ffff:ffff:ffff:ffff:ffff:ffff,SE
2a07:4080::,2a07:4087:ffff:ffff:ffff:ffff:ffff:ffff,AT
2a07:40c0::,2a07:40c7:ffff:ffff:ffff:ffff:ffff:ffff,IL
2a07:4100::,2a07:4107:ffff:ffff:ffff:ffff:ffff:ffff,FR
2a07:4140::,2a07:4147:ffff:ffff:ffff:ffff:ffff:ffff,MD
2a07:4180::,2a07:4187:ffff:ffff:ffff:ffff:ffff:ffff,GB
2a07:41c0::,2a07:41c7:ffff:ffff:ffff:ffff:ffff:ffff,RU
2a07:4200::,2a07:4207:ffff:ffff:ffff:ffff:ffff:ffff,FR
2a07:4240::,2a07:4247:ffff:ffff:ffff:ffff:ffff:ffff,RU
2a07:4280::,2a07:4287:ffff:ffff:ffff:ffff:ffff:ffff,GB
2a07:42c0::,2a07:42c7:ffff:ffff:ffff:ffff:ffff:ffff,DK
2a07:4340::,2a07:4347:ffff:ffff:ffff:ffff:ffff:ffff,AE
2a0c:af80::,2a0c:af87:ffff:ffff:ffff:ffff:ffff:ffff,GB
2c0f:f950::,2c0f:f950:ffff:ffff:ffff:ffff:ffff:ffff,SS
2c0f:f958::,2c0f:f958:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:f960::,2c0f:f960:ffff:ffff:ffff:ffff:ffff:ffff,TZ
2c0f:f968::,2c0f:f968:ffff:ffff:ffff:ffff:ffff:ffff,MZ
2c0f:f970::,2c0f:f970:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:f978::,2c0f:f978:ffff:ffff:ffff:ffff:ffff:ffff,CD
2c0f:f980::,2c0f:f980:ffff:ffff:ffff:ffff:ffff:ffff,NA
2c0f:f988::,2c0f:f988:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:f990::,2c0f:f990:ffff:ffff:ffff:ffff:ffff:ffff,GN
2c0f:f998::,2c0f:f998:ffff:ffff:ffff:ffff:ffff:ffff,MR
2c0f:f9a0::,2c0f:f9a0:ffff:ffff:ffff:ffff:ffff:ffff,MW
2c0f:f9a8::,2c0f:f9a8:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:f9b0::,2c0f:f9b0:ffff:ffff:ffff:ffff:ffff:ffff,GA
2c0f:f9b8::,2c0f:f9b8:1:ffff:ffff:ffff:ffff:ffff,MU
2c0f:f9b8:2::,2c0f:f9b8:2:ffff:ffff:ffff:ffff:ffff,US
2c0f:f9b8:3::,2c0f:f9b8:ffff:ffff:ffff:ffff:ffff:ffff,MU
2c0f:f9c0::,2c0f:f9c0:ffff:ffff:ffff:ffff:ffff:ffff,BW
2c0f:f9c8::,2c0f:f9c8:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:f9d0::,2c0f:f9d0:ffff:ffff:ffff:ffff:ffff:ffff,TZ
2c0f:f9d8::,2c0f:f9d8:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:f9e0::,2c0f:f9e0:ffff:ffff:ffff:ffff:ffff:ffff,NG
2c0f:f9e8::,2c0f:f9e8:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:f9f0::,2c0f:f9f0:ffff:ffff:ffff:ffff:ffff:ffff,MG
2c0f:f9f8::,2c0f:f9f8:ffff:ffff:ffff:ffff:ffff:ffff,BJ
2c0f:fa00::,2c0f:fa00:ffff:ffff:ffff:ffff:ffff:ffff,GH
2c0f:fa08::,2c0f:fa08:ffff:ffff:ffff:ffff:ffff:ffff,CD
2c0f:fa10::,2c0f:fa10:fffc:ffff:ffff:ffff:ffff:ffff,MU
2c0f:fa10:fffd::,2c0f:fa10:fffd:7fff:ffff:ffff:ffff:ffff,ZM
2c0f:fa10:fffd:8000::,2c0f:fa10:ffff:ffff:ffff:ffff:ffff:ffff,MU
2c0f:fa18::,2c0f:fa18:ffff:ffff:ffff:ffff:ffff:ffff,MA
2c0f:fa20::,2c0f:fa20:ffff:ffff:ffff:ffff:ffff:ffff,SS
2c0f:fa28::,2c0f:fa28:ffff:ffff:ffff:ffff:ffff:ffff,MG
2c0f:fa38::,2c0f:fa38:ffff:ffff:ffff:ffff:ffff:ffff,AO
2c0f:fa40::,2c0f:fa40:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fa48::,2c0f:fa48:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fa58::,2c0f:fa58:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fa60::,2c0f:fa60:ffff:ffff:ffff:ffff:ffff:ffff,AO
2c0f:fa68::,2c0f:fa68:ffff:ffff:ffff:ffff:ffff:ffff,GH
2c0f:fa70::,2c0f:fa70:ffff:ffff:ffff:ffff:ffff:ffff,AO
2c0f:fa78::,2c0f:fa78:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fa80::,2c0f:fa80:ffff:ffff:ffff:ffff:ffff:ffff,AO
2c0f:fa88::,2c0f:fa88:ffff:ffff:ffff:ffff:ffff:ffff,ST
2c0f:fa90::,2c0f:fa90:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fa98::,2c0f:fa98:ffff:ffff:ffff:ffff:ffff:ffff,ZW
2c0f:faa0::,2c0f:faa7:ffff:ffff:ffff:ffff:ffff:ffff,SD
2c0f:fab0::,2c0f:fabf:ffff:ffff:ffff:ffff:ffff:ffff,TN
2c0f:fac0::,2c0f:fac0:ffff:ffff:ffff:ffff:ffff:ffff,MW
2c0f:fac8::,2c0f:fac8:ffff:ffff:ffff:ffff:ffff:ffff,BW
2c0f:fad8::,2c0f:fad8:ffff:ffff:ffff:ffff:ffff:ffff,CM
2c0f:fae0::,2c0f:fae0:ffff:ffff:ffff:ffff:ffff:ffff,CM
2c0f:fae8::,2c0f:fae8:ffff:ffff:ffff:ffff:ffff:ffff,KE
2c0f:faf0::,2c0f:faf0:ffff:ffff:ffff:ffff:ffff:ffff,AO
2c0f:faf8::,2c0f:faf8:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fb00::,2c0f:fb00:ffff:ffff:ffff:ffff:ffff:ffff,UG
2c0f:fb08::,2c0f:fb08:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fb10::,2c0f:fb10:ffff:ffff:ffff:ffff:ffff:ffff,LY
2c0f:fb18::,2c0f:fb18:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fb20::,2c0f:fb20:ffff:ffff:ffff:ffff:ffff:ffff,MA
2c0f:fb30::,2c0f:fb30:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fb38::,2c0f:fb38:ffff:ffff:ffff:ffff:ffff:ffff,SO
2c0f:fb40::,2c0f:fb40:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fb48::,2c0f:fb48:ffff:ffff:ffff:ffff:ffff:ffff,MZ
2c0f:fb50::,2c0f:fb50:ffff:ffff:ffff:ffff:ffff:ffff,KE
2c0f:fb58::,2c0f:fb58:ffff:ffff:ffff:ffff:ffff:ffff,AO
2c0f:fb60::,2c0f:fb60:ffff:ffff:ffff:ffff:ffff:ffff,KE
2c0f:fb68::,2c0f:fb68:ffff:ffff:ffff:ffff:ffff:ffff,LS
2c0f:fb70::,2c0f:fb70:ffff:ffff:ffff:ffff:ffff:ffff,AO
2c0f:fb78::,2c0f:fb78:ffff:ffff:ffff:ffff:ffff:ffff,TZ
2c0f:fb80::,2c0f:fb80:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fb88::,2c0f:fb88:ffff:ffff:ffff:ffff:ffff:ffff,TZ
2c0f:fb90::,2c0f:fb90:ffff:ffff:ffff:ffff:ffff:ffff,MZ
2c0f:fb98::,2c0f:fb98:ffff:ffff:ffff:ffff:ffff:ffff,NG
2c0f:fba0::,2c0f:fba0:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fba8::,2c0f:fba8:ffff:ffff:ffff:ffff:ffff:ffff,NG
2c0f:fbb0::,2c0f:fbb0:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fbb8::,2c0f:fbb8:ffff:ffff:ffff:ffff:ffff:ffff,TZ
2c0f:fbc0::,2c0f:fbc0:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fbc8::,2c0f:fbc8:ffff:ffff:ffff:ffff:ffff:ffff,UG
2c0f:fbd0::,2c0f:fbd0:ffff:ffff:ffff:ffff:ffff:ffff,GN
2c0f:fbd8::,2c0f:fbd8:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fbe0::,2c0f:fc1f:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fc40::,2c0f:fc40:ffff:ffff:ffff:ffff:ffff:ffff,EG
2c0f:fc48::,2c0f:fc48:ffff:ffff:ffff:ffff:ffff:ffff,MW
2c0f:fc58::,2c0f:fc58:ffff:ffff:ffff:ffff:ffff:ffff,MW
2c0f:fc60::,2c0f:fc61:ffff:ffff:ffff:ffff:ffff:ffff,NG
2c0f:fc68::,2c0f:fc68:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fc70::,2c0f:fc70:ffff:ffff:ffff:ffff:ffff:ffff,KE
2c0f:fc80::,2c0f:fc80:ffff:ffff:ffff:ffff:ffff:ffff,KE
2c0f:fc88::,2c0f:fc89:ffff:ffff:ffff:ffff:ffff:ffff,EG
2c0f:fc90::,2c0f:fc90:ffff:ffff:ffff:ffff:ffff:ffff,NG
2c0f:fc98::,2c0f:fc98:ffff:ffff:ffff:ffff:ffff:ffff,NG
2c0f:fca0::,2c0f:fca0:ffff:ffff:ffff:ffff:ffff:ffff,GH
2c0f:fca8::,2c0f:fca8:ffff:ffff:ffff:ffff:ffff:ffff,GH
2c0f:fcb0::,2c0f:fcb0:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fcb8::,2c0f:fcb8:ffff:ffff:ffff:ffff:ffff:ffff,GM
2c0f:fcc8::,2c0f:fcc8:ffff:ffff:ffff:ffff:ffff:ffff,ZM
2c0f:fcd0::,2c0f:fcd0:ffff:ffff:ffff:ffff:ffff:ffff,ZM
2c0f:fcd8::,2c0f:fcd8:ffff:ffff:ffff:ffff:ffff:ffff,SO
2c0f:fce0::,2c0f:fce0:ffff:ffff:ffff:ffff:ffff:ffff,KE
2c0f:fce8::,2c0f:fce8:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fcf0::,2c0f:fcf0:ffff:ffff:ffff:ffff:ffff:ffff,TZ
2c0f:fcf8::,2c0f:fcf8:ffff:ffff:ffff:ffff:ffff:ffff,GH
2c0f:fd00::,2c0f:fd00:ffff:ffff:ffff:ffff:ffff:ffff,LS
2c0f:fd08::,2c0f:fd08:ffff:ffff:ffff:ffff:ffff:ffff,GM
2c0f:fd10::,2c0f:fd10:ffff:ffff:ffff:ffff:ffff:ffff,TZ
2c0f:fd18::,2c0f:fd18:ffff:ffff:ffff:ffff:ffff:ffff,SC
2c0f:fd20::,2c0f:fd20:ffff:ffff:ffff:ffff:ffff:ffff,TZ
2c0f:fd28::,2c0f:fd28:ffff:ffff:ffff:ffff:ffff:ffff,NG
2c0f:fd30::,2c0f:fd30:ffff:ffff:ffff:ffff:ffff:ffff,TZ
2c0f:fd38::,2c0f:fd38:ffff:ffff:ffff:ffff:ffff:ffff,NG
2c0f:fd40::,2c0f:fd40:ffff:ffff:ffff:ffff:ffff:ffff,ZM
2c0f:fd48::,2c0f:fd48:ffff:ffff:ffff:ffff:ffff:ffff,ZW
2c0f:fd50::,2c0f:fd50:ffff:ffff:ffff:ffff:ffff:ffff,MW
2c0f:fd58::,2c0f:fd58:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fd60::,2c0f:fd60:ffff:ffff:ffff:ffff:ffff:ffff,UG
2c0f:fd68::,2c0f:fd68:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fd78::,2c0f:fd78:ffff:ffff:ffff:ffff:ffff:ffff,BI
2c0f:fd80::,2c0f:fd80:ffff:ffff:ffff:ffff:ffff:ffff,BF
2c0f:fd88::,2c0f:fd88:ffff:ffff:ffff:ffff:ffff:ffff,GH
2c0f:fd90::,2c0f:fd90:ffff:ffff:ffff:ffff:ffff:ffff,ZM
2c0f:fd98::,2c0f:fd98:ffff:ffff:ffff:ffff:ffff:ffff,ZM
2c0f:fda0::,2c0f:fda0:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fda8::,2c0f:fda8:ffff:ffff:ffff:ffff:ffff:ffff,TZ
2c0f:fdb0::,2c0f:fdb0:ffff:ffff:ffff:ffff:ffff:ffff,TZ
2c0f:fdb8::,2c0f:fdb8:ffff:ffff:ffff:ffff:ffff:ffff,UG
2c0f:fdc0::,2c0f:fdc0:ffff:ffff:ffff:ffff:ffff:ffff,TZ
2c0f:fdc8::,2c0f:fdc8:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fdd0::,2c0f:fdd0:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fdd8::,2c0f:fdd8:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fde8::,2c0f:fde8:ffff:ffff:ffff:ffff:ffff:ffff,MW
2c0f:fdf0::,2c0f:fdf0:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fdf8::,2c0f:fdf8:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fe08::,2c0f:fe08:ffff:ffff:ffff:ffff:ffff:ffff,KE
2c0f:fe10::,2c0f:fe10:ffff:ffff:ffff:ffff:ffff:ffff,UG
2c0f:fe18::,2c0f:fe18:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fe20::,2c0f:fe20:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fe28::,2c0f:fe28:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fe30::,2c0f:fe30:ffff:ffff:ffff:ffff:ffff:ffff,MU
2c0f:fe38::,2c0f:fe38:ffff:ffff:ffff:ffff:ffff:ffff,KE
2c0f:fe40::,2c0f:fe40:8001:f:ffff:ffff:ffff:ffff,MU
2c0f:fe40:8001:10::,2c0f:fe40:8001:10:ffff:ffff:ffff:ffff,KE
2c0f:fe40:8001:11::,2c0f:fe40:80fe:ffff:ffff:ffff:ffff:ffff,MU
2c0f:fe40:80ff::,2c0f:fe40:80ff:7fff:ffff:ffff:ffff:ffff,KE
2c0f:fe40:80ff:8000::,2c0f:fe40:ffff:ffff:ffff:ffff:ffff:ffff,MU
2c0f:fe50::,2c0f:fe50:ffff:ffff:ffff:ffff:ffff:ffff,DZ
2c0f:fe58::,2c0f:fe58:ffff:ffff:ffff:ffff:ffff:ffff,LS
2c0f:fe60::,2c0f:fe60:ffff:ffff:ffff:ffff:ffff:ffff,RW
2c0f:fe68::,2c0f:fe68:ffff:ffff:ffff:ffff:ffff:ffff,MU
2c0f:fe70::,2c0f:fe70:ffff:ffff:ffff:ffff:ffff:ffff,UG
2c0f:fe78::,2c0f:fe78:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fe88::,2c0f:fe88:ffff:ffff:ffff:ffff:ffff:ffff,KE
2c0f:fe90::,2c0f:fe90:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fe98::,2c0f:fe98:ffff:ffff:ffff:ffff:ffff:ffff,TZ
2c0f:fea0::,2c0f:fea0:ffff:ffff:ffff:ffff:ffff:ffff,NG
2c0f:fea8::,2c0f:fea8:ffff:ffff:ffff:ffff:ffff:ffff,NG
2c0f:feb0::,2c0f:feb0:16:ffff:ffff:ffff:ffff:ffff,MU
2c0f:feb0:17::,2c0f:feb0:17:7fff:ffff:ffff:ffff:ffff,KE
2c0f:feb0:17:8000::,2c0f:feb0:1e:ffff:ffff:ffff:ffff:ffff,MU
2c0f:feb0:1f::,2c0f:feb0:1f:7fff:ffff:ffff:ffff:ffff,ZA
2c0f:feb0:1f:8000::,2c0f:feb0:1f:ffff:ffff:ffff:ffff:ffff,MU
2c0f:feb0:20::,2c0f:feb0:20:7fff:ffff:ffff:ffff:ffff,ZA
2c0f:feb0:20:8000::,2c0f:feb0:2f:7fff:ffff:ffff:ffff:ffff,MU
2c0f:feb0:2f:8000::,2c0f:feb0:2f:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:feb0:30::,2c0f:feb1:ffff:ffff:ffff:ffff:ffff:ffff,MU
2c0f:feb8::,2c0f:feb8:ffff:ffff:ffff:ffff:ffff:ffff,ZM
2c0f:fec0::,2c0f:fec0:ffff:ffff:ffff:ffff:ffff:ffff,UG
2c0f:fec8::,2c0f:fec8:ffff:ffff:ffff:ffff:ffff:ffff,SD
2c0f:fed8::,2c0f:fed8:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:fee0::,2c0f:fee0:ffff:ffff:ffff:ffff:ffff:ffff,EG
2c0f:fef0::,2c0f:fef0:ffff:ffff:ffff:ffff:ffff:ffff,SC
2c0f:fef8::,2c0f:fef8:ffff:ffff:ffff:ffff:ffff:ffff,KE
2c0f:ff00::,2c0f:ff00:ffff:ffff:ffff:ffff:ffff:ffff,BW
2c0f:ff08::,2c0f:ff08:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:ff10::,2c0f:ff10:ffff:ffff:ffff:ffff:ffff:ffff,CD
2c0f:ff18::,2c0f:ff18:ffff:ffff:ffff:ffff:ffff:ffff,KE
2c0f:ff20::,2c0f:ff20:ffff:ffff:ffff:ffff:ffff:ffff,NG
2c0f:ff28::,2c0f:ff28:ffff:ffff:ffff:ffff:ffff:ffff,SD
2c0f:ff30::,2c0f:ff30:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:ff40::,2c0f:ff80:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:ff88::,2c0f:ff88:ffff:ffff:ffff:ffff:ffff:ffff,NG
2c0f:ff90::,2c0f:ff90:ffff:ffff:ffff:ffff:ffff:ffff,KE
2c0f:ff98::,2c0f:ff98:ffff:ffff:ffff:ffff:ffff:ffff,UG
2c0f:ffa0::,2c0f:ffa0:ffff:ffff:ffff:ffff:ffff:ffff,UG
2c0f:ffa8::,2c0f:ffa8:ffff:ffff:ffff:ffff:ffff:ffff,LS
2c0f:ffb0::,2c0f:ffb0:ffff:ffff:ffff:ffff:ffff:ffff,NG
2c0f:ffb8::,2c0f:ffb8:ffff:ffff:ffff:ffff:ffff:ffff,SD
2c0f:ffc0::,2c0f:ffc0:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:ffc8::,2c0f:ffc8:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:ffd0::,2c0f:ffd0:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:ffd8::,2c0f:ffd8:ffff:ffff:ffff:ffff:ffff:ffff,ZA
2c0f:ffe8::,2c0f:ffe8:ffff:ffff:ffff:ffff:ffff:ffff,NG
2c0f:fff0::,2c0f:fff0:ffff:ffff:ffff:ffff:ffff:ffff,NG