package isdomain

// ExtendedTLDs is a set of additional "TLDs", allowing decentralized name
// systems, like TOR and Namecoin.
var ExtendedTLDs = map[string]bool{
	"BIT":   true,
	"ONION": true,
	"ETH":   true,
	"BBS":   true,
	"CHAN":  true,
	"CYB":   true,
	"DYN":   true,
	"EPIC":  true,
	"GEEK":  true,
	"GOPHER":true,
	"INDY":  true,
	"LIBRE": true,
	"NEO":   true,
	"NULL":  true,
	"O":     true,
	"OSS":   true,
	"OZ":    true,
	"PARODY":true,
	"PIRATE":true,
}

package isdomain

// ExtendedTLDs is a set of additional "TLDs", allowing decentralized name
// systems, like TOR and Namecoin.
var ExtendedTLDs = map[string]bool{
	"BIT":   true,
	"ONION": true,
	"ETH":   true,
}

--- 
+++ 
@@ -6,4 +6,20 @@
 	"BIT":   true,
 	"ONION": true,
 	"ETH":   true,
+	"BBS":   true,
+	"CHAN":  true,
+	"CYB":   true,
+	"DYN":   true,
+	"EPIC":  true,
+	"GEEK":  true,
+	"GOPHER":true,
+	"INDY":  true,
+	"LIBRE": true,
+	"NEO":   true,
+	"NULL":  true,
+	"O":     true,
+	"OSS":   true,
+	"OZ":    true,
+	"PARODY":true,
+	"PIRATE":true,
 }
Add OpenNIC domains to extended TLDs.

OpenNIC domain list is from:
https://en.wikipedia.org/wiki/OpenNIC
OpenNIC domains are non-ICANN TLDs and large free DNS project.