(function(){var h=Array.prototype.every,b=Object.prototype.toString,f=Object.prototype.hasOwnProperty,d={isFunction:function(a){return"function"===typeof a},isString:function(a){return"string"===typeof a},isNumber:function(a){return"number"===typeof a},isUndefined:function(a){return"undefined"===typeof a},isEmail:function(a){return/^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!\.)){0,61}[a-zA-Z0-9]?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!$)){0,61}[a-zA-Z0-9]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/.test(a)}, isUrl:function(a){return/^(?:(?:ht|f)tp(?:s?)\:\/\/|~\/|\/)?(?:\w+:\w+@)?((?:(?:[-\w\d{1-3}]+\.)+(?:com|org|cat|coop|int|pro|tel|xxx|net|gov|mil|biz|info|mobi|name|aero|jobs|edu|co\.uk|ac\.uk|it|fr|tv|museum|asia|local|travel|[a-z]{2})?)|((\b25[0-5]\b|\b[2][0-4][0-9]\b|\b[0-1]?[0-9]?[0-9]\b)(\.(\b25[0-5]\b|\b[2][0-4][0-9]\b|\b[0-1]?[0-9]?[0-9]\b)){3}))(?::[\d]{1,5})?(?:(?:(?:\/(?:[-\w~!$+|.,=]|%[a-f\d]{2})+)+|\/)+|\?|#)?(?:(?:\?(?:[-\w~!$+|.,*:]|%[a-f\d{2}])+=?(?:[-\w~!$+|.,*:=]|%[a-f\d]{2})*)(?:&(?:[-\w~!$+|.,*:]|%[a-f\d{2}])+=?(?:[-\w~!$+|.,*:=]|%[a-f\d]{2})*)*)*(?:#(?:[-\w~!$ |\/.,*:;=]|%[a-f\d]{2})*)?$/.test(a)}, isAlpha:function(a){return this.isString(a)&&/^[a-zA-Z]+$/.test(a)},isAlphanumeric:function(a){return this.isString(a)&&/^[a-zA-Z0-9]+$/.test(a)||this.isNumber(a)},isIpv4:function(a){return/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test(a)},isIpv6:function(a){return/(?:(?:[a-f\d]{1,4}:)*(?:[a-f\d]{1,4}|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})|(?:(?:[a-f\d]{1,4}:)*[a-f\d]{1,4})?::(?:(?:[a-f\d]{1,4}:)*(?:[a-f\d]{1,4}|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}))?)/.test(a)}, isIp:function(a){return this.isIpv4(a)||this.isIpv6(a)},isLowercase:function(a){return this.isString(a)&&/^[a-z0-9]+$/.test(a)},isUppercase:function(a){return this.isString(a)&&/^[A-Z0-9]+$/.test(a)},isDecimal:function(a){return/^[0-9]+(\.[0-9]{1,2})?$/.test(a)},isUnsignedInt:function(a){return/^[0-9]+$/.test(a)},isInt:function(a){return/^-?[0-9]+$/.test(a)},isPercentage:function(a){return/^-?[0-9]{0,2}(\.[0-9]{1,2})?$|^-?(100)(\.[0]{1,2})?$/.test(a)},isPositive:function(a){return this.isNumber(a)&& /^\d+$/.test(a)},isPort:function(a){return/\:\d+/.test(a)},isArray:function(a){return"[object Array]"===b.call(a)},isDefined:function(a){return"undefined"!==typeof a},isNull:function(a){return null===a},isDate:function(a){return"[object Date]"===b.call(a)},isElement:function(a){return a&&a.tagName&&a.nodeType},isObject:function(a){return!this.isElement(a)&&"[object Object]"===b.call(a)},isBoolean:function(a){return!0===a||!1===a},isRegExp:function(a){return a&&a.test&&a.exec},isArguments:function(a){return a&& f.call(a,"callee")},isEmpty:function(a){if(this.isArray(a)||this.isString(a))return 0===a.length;if(this.isElement(a))return!a.firstChild;if(this.isObject(a))for(var c in a)if(f.call(a,c))return!1;return!0},isEven:function(a){return this.isNumber(a)&&0===(a&1)},isOdd:function(a){return!this.isEven(a)},isPrime:function(a){if(!this.isNumber(a)||!this.isUnsignedInt(a)||1>=a)return!1;if(2===a)return!0;if(this.isEven(a))return!1;for(var c=3,b=Math.sqrt(a);c<=b;c+=2)if(0===a%c)return!1;return!0},isNegative:function(a){return this.isNumber(a)&& !/^\d+$/.test(a)},isWindow:function(a){return"[object global]"===b.call(a)&&"setInterval"in a&&"setTimeout"in a},isNaN:function(a){return window.isNAN(a)},isFinite:function(a){return window.isFinite(a)}},e={},i=function(a){e[a]=function(){return 0===arguments.length?!1:h.apply(arguments,[d[a],d])}},g;for(g in d)f.call(d,g)&&i(g);"undefined"!==typeof module&&module.exports?module.exports=e:"undefined"!==typeof define?define(function(){return e}):this.robb=e})();