anchor.diff:      return null;
     };
   
  +  function modStr(uri, modifiers){
  +    var modArr = [];
  +    if (modifiers){
  +      modArr = buildModArr(modifiers);
  +    }
  +    if (uri && urlDomain(uri.hostname) === 'facebook'){
  +      modArr.push('efacebook');
  +    }
  +    return modArr.length > 0 ? '/' + modArr.join('-') : '';
  +  };
  +
  +  function buildModArr(modifiers){
  +    var modArr, k, v, mSet, src;
  +
  +    modArr = [];
  +    for (k in IR.modifiers){
  +      v = IR.modifiers[k];
  +      mSet = modSet(k);
  +      src = sourceOption(k);
  +      if (mSet){
  +        if (mSet.values){
  +          if mSet.values[v]){
  +            modArr.push(k + v);
  +          }
  +        } else {
  +          modArr.push(k + v);
  +        }
  +      } else if (src) {
  +        modArr.push('e' + src[0]);
  +      }
  +    }
  +
  +    return modArr;
  +  };
  +
  +  function buildPath(uri, modifiers){
  +
  +  };
  +
     function urlDomain(host){
       var domain = 'other';
       if (/s3.amazonaws.com/i.test(host)){
  
positive.code:   };
  
    function generateEndpoint(source, modifiers){
  
    };
  
    function sourceOption(key){
  
negative.code:       domain = 'facebook';
      }
      return domain;
    };
  
    function s3Object(uri){
      if (url.hostname === 's3.amazonaws.com'){
        return '/' + uri.pathname.split('/').slice(2).join('/');
      } else {
        return uri.pathname;
      }
    };
  
    function URI(url){
  