Tanner Hildebrand's License

TabWorld by Tanner Hildebrand is free to use for any purpose, commercial or
otherwise. The user of the script may modify, distribute, sell, use, or
publish this script at their discretion. The uses are unrestricted and may
only be restricted if the user is found to be guilty (by a U.S. court only)
of a criminal act that involves this script.

Please enjoy and use this script as you wish to its fullest potential.