code: function setDeep(obj, sample, value){
    for (var key in obj)
    {
      if (hasOwnProperty.call(obj, key))
      {
        if (obj[key] === sample)
        {
          obj[key] = value;
          return;
        }
        else if (typeof obj[key] === 'object')
          return setDeep(obj[key], sample, value);
      }
    }
  }
docs: Search for the first key in `obj` (`obj` can be a nested object)
  and replaces a value of the finded key with `value`
  private except for tests
  @param {Object} obj any object
  @param {string} sample some stub like '*'
  @param {string} value a dynamic value
  @return