<commit_before>// Convert any %-encoded FGHI URL string to a real string:
// 1) replace '+' to a space
// 2) find %-encoded fragments, run them through decodeURIComponent()
function decodeFGHIURL(encodedString){
   var spaceDecodedString = encodedString.replace(/\+/g, ' ');
   var SourceArray =
      spaceDecodedString.split(/((%[0-9ABCDEFabcdef][0-9ABCDEFabcdef])+)/);
   if (SourceArray.length == 1) {
      // No encoded content detected :-)
      return spaceDecodedString;
   } else {
      // Converting all URLencoded fragments
      for (var ijk = 1; ijk < SourceArray.length; ijk += 3){
         SourceArray[ijk] = decodeURIComponent(SourceArray[ijk]);
         SourceArray[ijk+1] = '';
      }
      return SourceArray.join('');
   }
}

// The FGHI URL object's constructor
// takes a string
function FidonetURL(initialString){
   // a fair number of helper functions is used in object's context (this)!
   // _END_OF_HELPER_FUNCTIONS_ below is thereal constructor code's start

   var parseStation = function(){
      // takes this.station and makes slices:
      // this.stationZone, this.stationNet,
      // this.stationNode, this.stationPoint, this.stationDomain
      var Parsed = this.station.match(
          /^(([0-9]+):)?([0-9]+)\/([0-9]+)(\.([0-9]+))?(@(.+))?$/
      );
      if (Parsed === null){
         throw new Error(this.errors.INVALID_STATION);
      } else {
         this.stationZone = Parsed[2];
         if (this.stationZone === undefined) this.stationZone = '';

         this.stationNet  = Parsed[3];
         this.stationNode = Parsed[4];<commit_msg>erased a non-ASCII character, made jshint (default mode) very happy<commit_after>// Convert any %-encoded FGHI URL string to a real string:
// 1) replace '+' to a space
// 2) find %-encoded fragments, run them through decodeURIComponent()
function decodeFGHIURL(encodedString){
   var spaceDecodedString = encodedString.replace(/\+/g, ' ');
   var SourceArray =
      spaceDecodedString.split(/((%[0-9ABCDEFabcdef][0-9ABCDEFabcdef])+)/);
   if (SourceArray.length == 1) {
      // No encoded content detected :-)
      return spaceDecodedString;
   } else {
      // Converting all URLencoded fragments
      for (var ijk = 1; ijk < SourceArray.length; ijk += 3){
         SourceArray[ijk] = decodeURIComponent(SourceArray[ijk]);
         SourceArray[ijk+1] = '';
      }
      return SourceArray.join('');
   }
}

// The FGHI URL object's constructor
// takes a string
function FidonetURL(initialString){
   // a fair number of helper functions is used in object's context (this)!
   // _END_OF_HELPER_FUNCTIONS_ below is the real constructor code's start

   var parseStation = function(){
      // takes this.station and makes slices:
      // this.stationZone, this.stationNet,
      // this.stationNode, this.stationPoint, this.stationDomain
      var Parsed = this.station.match(
          /^(([0-9]+):)?([0-9]+)\/([0-9]+)(\.([0-9]+))?(@(.+))?$/
      );
      if (Parsed === null){
         throw new Error(this.errors.INVALID_STATION);
      } else {
         this.stationZone = Parsed[2];
         if (this.stationZone === undefined) this.stationZone = '';

         this.stationNet  = Parsed[3];
         this.stationNode = Parsed[4];
{'fraction_non_alphanumeric': 0.1472316733683885, 'fraction_numerical': 0.012991030003093103, 'mean_word_length': 2.8591885441527447, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1574946', 'n_tokens_mistral': 1025, 'n_tokens_neox': 986, 'n_words': 253}