(() => {
  const isURLAvailable = url => {
    const req = new Request(url, {
      method: "HEAD",
      redirect: "follow"
    });

    return fetch(req).then(resp => resp.ok).catch(() => false);
  };

  const getHostname = () => {
    const u = new URL(document.URL);
    return `${u.protocol}//${u.hostname}`;
  };

  const reportCouldNotConnect = url => {
    /* eslint-disable no-console */
    console.error(`livereloaded: could not find livereload script at ${url}`);
    console.error(`livereloaded: check that livereload server is running`);
    /* eslint-enable no-console */
  };

  const injectLivereload = port => {
    const host = getHostname();
    const url = `${host}:${port}/livereload.js`;

    return isURLAvailable(url).then(isAvailable => {
      if (!isAvailable) {
        reportCouldNotConnect(url);
        return false;
      }

      const script = document.createElement("script");
      script.setAttribute("src", url);
      document.head.appendChild(script);

      return true;
    });
  };

  browser.runtime.onMessage.addListener(msg => {
    switch (msg.command) {
      case "inject":
        return injectLivereload(msg.port);
      default:
        return false;
    }
  });
})();

@@ -1,15 +1,4 @@
-(() =%3E %7B%0A  
 cons
@@ -23,26 +23,24 @@
  url =%3E %7B%0A  
- 
- 
 const req = 
@@ -58,18 +58,16 @@
 (url, %7B%0A
-  
     meth
@@ -82,18 +82,16 @@
 D%22,%0A    
-  
 redirect
@@ -107,17 +107,13 @@
 %22%0A  
- 
- 
 %7D);%0A%0A
-  
   re
@@ -170,24 +170,20 @@
 false);%0A
-  
 %7D;%0A%0A
-  
 const ge
@@ -198,26 +198,24 @@
 e = () =%3E %7B%0A
-  
   const u = 
@@ -237,18 +237,16 @@
 t.URL);%0A
-  
   return
@@ -278,24 +278,20 @@
 name%7D%60;%0A
-  
 %7D;%0A%0A
-  
 const re
@@ -321,18 +321,16 @@
 rl =%3E %7B%0A
-  
   /* esl
@@ -357,18 +357,16 @@
 le */%0A  
- 
- 
 console.
@@ -432,18 +432,16 @@
 url%7D%60);%0A
-  
   consol
@@ -506,18 +506,16 @@
 ning%60);%0A
-  
   /* esl
@@ -539,24 +539,20 @@
 sole */%0A
-  
 %7D;%0A%0A
-  
 const in
@@ -578,18 +578,16 @@
 rt =%3E %7B%0A
-  
   const 
@@ -608,18 +608,16 @@
 name();%0A
-  
   const 
@@ -658,18 +658,16 @@
 js%60;%0A%0A  
- 
- 
 return i
@@ -707,18 +707,16 @@
 le =%3E %7B%0A
-  
     if (
@@ -737,18 +737,16 @@
 %7B%0A      
-  
 reportCo
@@ -767,26 +767,24 @@
 url);%0A      
-  
 return false
@@ -785,18 +785,16 @@
  false;%0A
-  
     %7D%0A%0A 
@@ -796,18 +796,16 @@
  %7D%0A%0A    
-  
 const sc
@@ -849,18 +849,16 @@
 %22);%0A    
-  
 script.s
@@ -878,26 +878,24 @@
 src%22, url);%0A
-  
     document
@@ -922,26 +922,24 @@
 ript);%0A%0A    
-  
 return true;
@@ -943,24 +943,18 @@
 ue;%0A
-  
   %7D);%0A
-  
 %7D;%0A%0A
-  
 brow
@@ -996,18 +996,16 @@
 sg =%3E %7B%0A
-  
   switch
@@ -1025,18 +1025,16 @@
 ) %7B%0A    
- 
- 
 case %22in
@@ -1040,18 +1040,16 @@
 nject%22:%0A
-  
       re
@@ -1085,18 +1085,16 @@
 t);%0A    
-  
 default:
@@ -1096,26 +1096,24 @@
 ault:%0A      
- 
- 
 return false
@@ -1120,20 +1120,10 @@
 ;%0A  
-  %7D%0A  %7D);%0A%7D)(
+%7D%0A%7D
 );%0A

Remove closure wrapping around script injector