title: what is FB.Arbiter.inform?
body: <p>what exactly does <strong>FB.Arbiter</strong> object inside the <strong>"connect.facebook.net/en_US/all.js</strong>"?</p>
  
  <p>is it something for communication between iframes? there is a <strong>inform</strong> function inside <strong>FB.Arbiter</strong> which creates an invisible iframe inside iframe app.</p>
  
  <p>this is the source of inform function:</p>
  
  <pre><code>function (d, f, g, c, a) 
  {
      if (FB.Canvas.isTabIframe() || FB._inPlugin &amp;&amp; window.postMessage || !FB._inCanvas &amp;&amp; FB.UA.mobile() &amp;&amp; window.postMessage) 
      {
          var e = FB.JSON.stringify({
              method : d, params : f, behavior : a || FB.Arbiter.BEHAVIOR_PERSISTENT
          });
          if (window.postMessage) {
              FB.XD.resolveRelation(g || "parent").postMessage(e, "*");
              return;
          }
          else {
              try {
                  window.opener.postMessage(e);
                  return;
              }
              catch (b) { }
          }
      }
      var i = FB.getDomain((c ? "https_" : "") + "staticfb") + FB.Arbiter._canvasProxyUrl + "#" + FB.QS.encode(
      {
          method : d, params : FB.JSON.stringify(f || {}), behavior : a || FB.Arbiter.BEHAVIOR_PERSISTENT, 
          relation : g
      });
      var h = FB.Content.appendHidden("");
      FB.Content.insertIframe(
      {
          url : i, root : h, width : 1, height : 1,
          onload : function () 
          {
              setTimeout(function () 
              {
                  h.parentNode.removeChild(h);
              }, 10);
          }
      });
  }
  </code></pre>
  
  <p>can someone explain this function?</p>