code: function buildUnicodeScripts() {
    defineInstanceSimilar(sugarString, UNICODE_SCRIPTS, function(methods, script) {
      var is = RegExp('^['+ script.src +'\\s]+$');
      var has = RegExp('['+ script.src +']');
      forEach(spaceSplit(script.name), function(name) {
        methods['is' + name] = function(str) {
          return is.test(trim(str));
        };
        methods['has' + name] = function(str) {
          return has.test(trim(str));
        };
      });
    });
  }
docs: *
  @method has[Script]()
  @returns Boolean
  @short Returns true if the string contains any characters in that script.
  
  @set
  hasArabic
  hasCyrillic
  hasGreek
  hasHangul
  hasHan
  hasKanji
  hasHebrew
  hasHiragana
  hasKana
  hasKatakana
  hasLatin
  hasThai
  hasDevanagari
  
  @example
  
  'أتكلم'.hasArabic()          -> true
  'визит'.hasCyrillic()        -> true
  '잘 먹겠습니다!'.hasHangul() -> true
  'ミックスです'.hasKatakana() -> true
  "l'année".hasLatin()         -> true
  
  **
  @method is[Script]()
  @returns Boolean
  @short Returns true if the string contains only characters in that script.
  Whitespace is ignored.
  
  @set
  isArabic
  isCyrillic
  isGreek
  isHangul
  isHan
  isKanji
  isHebrew
  isHiragana
  isKana
  isKatakana
  isLatin
  isThai
  isDevanagari
  
  @example
  
  'أتكلم'.isArabic()          -> true
  'визит'.isCyrillic()        -> true
  '잘 먹겠습니다'.isHangul()  -> true
  'ミックスです'.isKatakana() -> false
  "l'année".isLatin()         -> true
  
  *