[Pkg-mozext-commits] [noscript] 01/09: New upstream version 5.1.3

David Prévot taffit at moszumanska.debian.org
Fri Oct 27 01:45:13 UTC 2017


This is an automated email from the git hooks/post-receive script.

taffit pushed a commit to branch master
in repository noscript.

commit 0c28dc7f767e229d6d466cd76db2b81941b11bec
Author: David Prévot <david at tilapin.org>
Date:   Thu Oct 26 15:03:47 2017 -1000

    New upstream version 5.1.3
---
 META-INF/manifest.mf                               | 268 ++++++++++-----------
 META-INF/mozilla.rsa                               | Bin 4196 -> 4196 bytes
 META-INF/mozilla.sf                                |   4 +-
 bootstrap.js                                       |   2 +-
 chrome/content/noscript/ABE.js                     |  23 +-
 chrome/content/noscript/FrameScript.jsm            |  42 +++-
 chrome/content/noscript/Main.js                    |  85 +++++--
 chrome/content/noscript/MainChild.js               |   6 +-
 chrome/content/noscript/MainParent.js              |  20 +-
 chrome/content/noscript/Restartless.jsm            |   9 +-
 chrome/content/noscript/SiteUtils.js               |   1 +
 chrome/content/noscript/Thread.js                  |  16 +-
 chrome/content/noscript/UISync.jsm                 |  34 ++-
 chrome/content/noscript/about.xul                  |   6 +-
 chrome/content/noscript/e10sChild.js               |  14 +-
 chrome/content/noscript/e10sIPC.js                 |   1 +
 chrome/content/noscript/e10sParent.js              |  30 ++-
 chrome/content/noscript/noscriptBM.js              |  97 ++------
 .../noscript/noscriptOverlay-noStatusBar.xul       |   1 +
 chrome/content/noscript/noscriptOverlay.xul        |   1 +
 chrome/locale/bg-BG/noscript/noscript.dtd          |   2 +-
 chrome/locale/ca-AD/noscript/noscript.dtd          |   2 +-
 chrome/locale/cs-CZ/noscript/noscript.dtd          |   2 +-
 chrome/locale/cy-GB/noscript/noscript.dtd          |   2 +-
 chrome/locale/da/noscript/noscript.dtd             |   2 +-
 chrome/locale/de/noscript/noscript.dtd             |   2 +-
 chrome/locale/el/noscript/noscript.dtd             |   2 +-
 chrome/locale/en-GB/noscript/noscript.dtd          |   2 +-
 chrome/locale/en-US/noscript/noscript.dtd          |   2 +-
 chrome/locale/eo/noscript/noscript.dtd             |   2 +-
 chrome/locale/es-AR/noscript/noscript.dtd          |   2 +-
 chrome/locale/es-CL/noscript/noscript.dtd          |   2 +-
 chrome/locale/es-ES/noscript/noscript.dtd          |   2 +-
 chrome/locale/et-EE/noscript/noscript.dtd          |   2 +-
 chrome/locale/eu/noscript/noscript.dtd             |   2 +-
 chrome/locale/fa-IR/noscript/noscript.dtd          |   2 +-
 chrome/locale/fi/noscript/noscript.dtd             |   2 +-
 chrome/locale/fr/noscript/noscript.dtd             |   2 +-
 chrome/locale/gl-ES/noscript/noscript.dtd          |   2 +-
 chrome/locale/he-IL/noscript/noscript.dtd          |   2 +-
 chrome/locale/hr-HR/noscript/noscript.dtd          |   2 +-
 chrome/locale/hsb/noscript/noscript.dtd            |   2 +-
 chrome/locale/hu-HU/noscript/noscript.dtd          |   2 +-
 chrome/locale/id-ID/noscript/noscript.dtd          |   2 +-
 chrome/locale/it/noscript/noscript.dtd             |   2 +-
 chrome/locale/ja-JP/noscript/noscript.dtd          |   2 +-
 chrome/locale/kk-KZ/noscript/noscript.dtd          |   2 +-
 chrome/locale/km-KH/noscript/noscript.dtd          |   2 +-
 chrome/locale/ko-KR/noscript/noscript.dtd          |   2 +-
 chrome/locale/lt/noscript/noscript.dtd             |   2 +-
 chrome/locale/mk-MK/noscript/noscript.dtd          |   2 +-
 chrome/locale/ms-MY/noscript/noscript.dtd          |   2 +-
 chrome/locale/nb-NO/noscript/noscript.dtd          |   2 +-
 chrome/locale/nl/noscript/noscript.dtd             |   2 +-
 chrome/locale/pl/noscript/noscript.dtd             |   2 +-
 chrome/locale/pt-BR/noscript/noscript.dtd          |   2 +-
 chrome/locale/pt-PT/noscript/noscript.dtd          |   2 +-
 chrome/locale/ro/noscript/noscript.dtd             |   2 +-
 chrome/locale/sk-SK/noscript/noscript.dtd          |   2 +-
 chrome/locale/sl-SI/noscript/noscript.dtd          |   2 +-
 chrome/locale/sr-RS/noscript/noscript.dtd          |   2 +-
 chrome/locale/sv-SE/noscript/noscript.dtd          |   2 +-
 chrome/locale/te-IN/noscript/noscript.dtd          |   2 +-
 chrome/locale/th/noscript/noscript.dtd             |   2 +-
 chrome/locale/tr/noscript/noscript.dtd             |   2 +-
 chrome/locale/vi/noscript/noscript.dtd             |   2 +-
 chrome/locale/zh-CN/noscript/noscript.dtd          |   2 +-
 chrome/locale/zh-TW/noscript/noscript.dtd          |   2 +-
 defaults/preferences/noscript.js                   |   4 +-
 install.rdf                                        |   2 +-
 70 files changed, 432 insertions(+), 330 deletions(-)

diff --git a/META-INF/manifest.mf b/META-INF/manifest.mf
index 7411bc3..a1b230c 100644
--- a/META-INF/manifest.mf
+++ b/META-INF/manifest.mf
@@ -2,8 +2,8 @@ Manifest-Version: 1.0
 
 Name: install.rdf
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: Et5nXnK49K0tY6bWJJ90lQ==
-SHA1-Digest: SZUkHoeDCpf2fzOT0JO8W5Zps84=
+MD5-Digest: 9R1OxUCbcMio+GSf4zLWaA==
+SHA1-Digest: sUHI/lVpyHaJ8/+IAYk/gyNwx8Y=
 
 Name: chrome.manifest
 Digest-Algorithms: MD5 SHA1
@@ -12,8 +12,8 @@ SHA1-Digest: z4/9Lia05sKUaZOm5aOQWjShvvw=
 
 Name: bootstrap.js
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: 59z9rOaR26C+Owf2n9FvPQ==
-SHA1-Digest: GG1CCxXDF3eapbD8yMl89+rdX6s=
+MD5-Digest: 3pgLD1uMWAX3IlZlD+WD2Q==
+SHA1-Digest: vQqATNf53pNBtiCtAJlq/5TtNmA=
 
 Name: GPL.txt
 Digest-Algorithms: MD5 SHA1
@@ -37,8 +37,8 @@ SHA1-Digest: YaQhyi7gw+UKy7h45EG/o3tjSm4=
 
 Name: chrome/content/noscript/ABE.js
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: 2QWM9X/06RGsHyXZqs5EdQ==
-SHA1-Digest: zsJtSKuyxD++cj4aOjnp/2BvXN0=
+MD5-Digest: 58ehs6vthUq65eJeAR7pQQ==
+SHA1-Digest: 8iH5dytbG/gRxajD8Tr4jYMc4p4=
 
 Name: chrome/content/noscript/ABELexer.js
 Digest-Algorithms: MD5 SHA1
@@ -52,8 +52,8 @@ SHA1-Digest: idl2qN6ruxPfDks9LUMR4uR/6sQ=
 
 Name: chrome/content/noscript/about.xul
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: 1Axl4nsVMWWADzlsVCKzYQ==
-SHA1-Digest: DxyHKXqwdjaMFwX34iRM9RbqW6U=
+MD5-Digest: 9wQYtdR4m/1nV90eFuehrw==
+SHA1-Digest: 97SKHZNBOc2RD79wA8xrsAE5Eb4=
 
 Name: chrome/content/noscript/AddressMatcher.js
 Digest-Algorithms: MD5 SHA1
@@ -122,18 +122,18 @@ SHA1-Digest: 04DnfzJd8zAGJIfPePc8FpT2wfE=
 
 Name: chrome/content/noscript/e10sChild.js
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: dNQv+NZpu1nupBdFe73/Dg==
-SHA1-Digest: SYnY0HVNKVTI4s0yc8tZqdOLNi4=
+MD5-Digest: 1biTtVock1DxrYFdBuXz4g==
+SHA1-Digest: gZOa5Bg3J+CJQOhqjRVa+1bkOKk=
 
 Name: chrome/content/noscript/e10sIPC.js
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: oY9dPIt4/v/IC08pkoGlxA==
-SHA1-Digest: qi6iQNIMhn0IOBB3P/R7mbH9pB4=
+MD5-Digest: f9ZrrMUEzsm1xA3xFjvW8A==
+SHA1-Digest: TMDaLQ0PRu8AdK/+A5smVereJM8=
 
 Name: chrome/content/noscript/e10sParent.js
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: QdtZ+Z7jQHz0MtVPcyoy3Q==
-SHA1-Digest: S06mfyBzT3yWdhIyw65raXORXbQ=
+MD5-Digest: W07jrcZx7lxv2Eqh+EYBww==
+SHA1-Digest: +1VY0T2Tokd66fr5kMhcdC+Hdug=
 
 Name: chrome/content/noscript/e10sProcessScript.js
 Digest-Algorithms: MD5 SHA1
@@ -167,8 +167,8 @@ SHA1-Digest: 1E9JvLF8RouOZDLjutanoVGkQJQ=
 
 Name: chrome/content/noscript/FrameScript.jsm
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: ncxTRwRv8h1ygdTofcQV7w==
-SHA1-Digest: AWJJI3lZ0o8IjtMMbimccXoBoso=
+MD5-Digest: s+VtD2rFHTMFe8unIGbtTg==
+SHA1-Digest: pHjAfDZXZyO177TatFYedmjj+JA=
 
 Name: chrome/content/noscript/HTTPS.js
 Digest-Algorithms: MD5 SHA1
@@ -217,18 +217,18 @@ SHA1-Digest: IP1FtRnULNQsRbu3E46+ynWOwGU=
 
 Name: chrome/content/noscript/Main.js
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: XoJxK6x8tfXA48tGF8GMYw==
-SHA1-Digest: t/erH/PGV5pcTSfBdMDpC5kNOMw=
+MD5-Digest: 5jTmd+hBJ48kGDaxXCHXMQ==
+SHA1-Digest: lzP5gQto1R38e4jnhCRZvR2PoJE=
 
 Name: chrome/content/noscript/MainChild.js
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: 6TSgDelom3K2mbeu0swhPQ==
-SHA1-Digest: y/RnLfMxmgCR4sOc9ouJaRQQwNU=
+MD5-Digest: 3bfb8YGAx2GoV+/6TovRYQ==
+SHA1-Digest: FYWVFpVbGN3tVMDVla/W6rS85NA=
 
 Name: chrome/content/noscript/MainParent.js
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: H5KX74iJI91KfBg7J2xWyQ==
-SHA1-Digest: bwfuZXewB11hh5r9yOEa1z4Vq/g=
+MD5-Digest: 1EOlEgtQt3uDKa7rR4VNyw==
+SHA1-Digest: xLkJ8csUe5f2cGf4QLQ4v9u+4NQ=
 
 Name: chrome/content/noscript/Membrane.js
 Digest-Algorithms: MD5 SHA1
@@ -267,8 +267,8 @@ SHA1-Digest: uqtHOuEANw0yaB8FG+uGsIK+NXg=
 
 Name: chrome/content/noscript/noscriptBM.js
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: yCrsoeWUPxtIxtuJLsxEvQ==
-SHA1-Digest: zWAChJ/LaLfit1fybZ9ElxjYisI=
+MD5-Digest: YD5BHkk30EBwe2ZkXUN+mA==
+SHA1-Digest: i36piDxSBi/Nh803KVl3YgGFfJ4=
 
 Name: chrome/content/noscript/noscriptBMOverlay.xul
 Digest-Algorithms: MD5 SHA1
@@ -287,8 +287,8 @@ SHA1-Digest: T4a9uqQZ91qFBGu9ZTSJVgC9dro=
 
 Name: chrome/content/noscript/noscriptOverlay-noStatusBar.xul
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: SqC2axa7K+oRAA6mO+Q+qw==
-SHA1-Digest: jWWCtJsmGeh7UhGy8ptRe5GSP14=
+MD5-Digest: jBh2s9fKFv3Pz07euE5NLA==
+SHA1-Digest: CgQ7ycaqTmegMZg4kRka3jT0AXM=
 
 Name: chrome/content/noscript/noscriptOverlay.js
 Digest-Algorithms: MD5 SHA1
@@ -297,8 +297,8 @@ SHA1-Digest: Nl0W7Y0K7/zxffC+3M8xmgsdWfE=
 
 Name: chrome/content/noscript/noscriptOverlay.xul
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: giWGrZcCCtlN82SQSU8CmA==
-SHA1-Digest: wagI/eCNsEv12PDTczIYFLZcsQU=
+MD5-Digest: W7W6mDVSmDxM+gBmd1n+OQ==
+SHA1-Digest: 9rJwJmGusy/Bg5cqKSJKvY1LaiI=
 
 Name: chrome/content/noscript/PasteHandler.jsm
 Digest-Algorithms: MD5 SHA1
@@ -332,8 +332,8 @@ SHA1-Digest: DZs9i9nhj38XO72GaUftxylBj3w=
 
 Name: chrome/content/noscript/Restartless.jsm
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: 3uO7A0cn9zv9xIIUQeQM0w==
-SHA1-Digest: NsFgkuqr6xqNSB50tJGQuvcymbE=
+MD5-Digest: xBq4rfGG3heGqdy2/PRrfQ==
+SHA1-Digest: XNcLmsk8gnXGgRwhZYNUSsEBSik=
 
 Name: chrome/content/noscript/ScriptlessBGThumbs.js
 Digest-Algorithms: MD5 SHA1
@@ -347,8 +347,8 @@ SHA1-Digest: 0vfeQ3I4VJDBpd2CHrpho/ZSsyw=
 
 Name: chrome/content/noscript/SiteUtils.js
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: mtidullG9M5wNaav6jUp9g==
-SHA1-Digest: vIf3dZ2AM/otsWVn+E76b2z+Hac=
+MD5-Digest: iObXa5XBF1OfopGIzP2G6w==
+SHA1-Digest: cB/3O1RLwCvJ9GAC5x57cp8hJPA=
 
 Name: chrome/content/noscript/Strings.js
 Digest-Algorithms: MD5 SHA1
@@ -362,8 +362,8 @@ SHA1-Digest: i8VN8gDpd1KonEnLoC4ysXnWbWU=
 
 Name: chrome/content/noscript/Thread.js
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: IGjiBcb31odzh1vXJRPDIg==
-SHA1-Digest: DCc/MQS5IZg5Ar0Jl5z5CJc54qg=
+MD5-Digest: /bV3WjuAKnu6QZcj86Dz4w==
+SHA1-Digest: q1qyz4vRDEKkQurdgEFqdG3FAl8=
 
 Name: chrome/content/noscript/tree-copy.js
 Digest-Algorithms: MD5 SHA1
@@ -372,8 +372,8 @@ SHA1-Digest: vrTKbl7kvlvqSFIRpUSyDDhFFVQ=
 
 Name: chrome/content/noscript/UISync.jsm
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: 07q1u4xEzcl+OfRPtrhhdg==
-SHA1-Digest: PTSDMMT0uucOIdbmOzezTxNMsUE=
+MD5-Digest: CMKoMsQO+Tuy52f2/B3M+g==
+SHA1-Digest: i0R9z60abnnnRmZMV4pAakmiNjw=
 
 Name: chrome/content/noscript/URIValidator.js
 Digest-Algorithms: MD5 SHA1
@@ -432,8 +432,8 @@ SHA1-Digest: sNaAoiFjfluUFYT3NJO8pa0cBr4=
 
 Name: chrome/locale/bg-BG/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: LC7/S7xvgyTo9nfZnTEAqg==
-SHA1-Digest: YwLdwqlLNg3yuxwWFsmeoas7MQs=
+MD5-Digest: Jlf2FezaSlEKt7NNigyjAQ==
+SHA1-Digest: twZmYTbebgMeofb0zdPq79TqPl0=
 
 Name: chrome/locale/bg-BG/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -462,8 +462,8 @@ SHA1-Digest: kflYT0pG5PkXqcxExu1I32CKtmU=
 
 Name: chrome/locale/ca-AD/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: MZtpNGvxw+k6lFiM+hqLlw==
-SHA1-Digest: iH1jHecnfARqLivIKbRCDTz+txo=
+MD5-Digest: wA6hTRSV6AH5ihtDYMtl0Q==
+SHA1-Digest: avdd5URqnsPfz2jmecIQ+P5xwEE=
 
 Name: chrome/locale/ca-AD/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -477,8 +477,8 @@ SHA1-Digest: uvHG2IX5kUIz3oj8KZ9WeopZNvk=
 
 Name: chrome/locale/cs-CZ/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: CKZj23ASI/haIqnkGrjxjg==
-SHA1-Digest: ozv7s9moLpNAxaUCV+ObmJnQalU=
+MD5-Digest: vQkvgtl34V65fgaAzvMCiA==
+SHA1-Digest: eFldAaktDgmLaBtbP0oLzZ6+07E=
 
 Name: chrome/locale/cs-CZ/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -492,8 +492,8 @@ SHA1-Digest: QJMBA6MQxw4D8NcGjgbaRU5RMn8=
 
 Name: chrome/locale/cy-GB/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: 0mFgmgkC1nSruKElJUefuw==
-SHA1-Digest: 6uC5mi2mPVxtfr+1QbVa5YNodDU=
+MD5-Digest: 3y7MS4ENmz/0C0zlTNlCiA==
+SHA1-Digest: ohy9qQNcWVnkcD4rXTzc6DW/8HI=
 
 Name: chrome/locale/cy-GB/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -507,8 +507,8 @@ SHA1-Digest: pbxJdqyMQHZfqpXhtN51RN56DUM=
 
 Name: chrome/locale/da/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: /miVSAttX5gEzO87ZUlZ6g==
-SHA1-Digest: S16li6KhxHoyX7Wr6vZIuubh19A=
+MD5-Digest: 83BGz9SWRiicfi9Q+y/feg==
+SHA1-Digest: QLGmcVSJEwuWdXWXMS7PPw78fPQ=
 
 Name: chrome/locale/da/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -522,8 +522,8 @@ SHA1-Digest: UvqiVC7ZhZNpetUZ3sD5OmBHshI=
 
 Name: chrome/locale/de/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: xspNKu842XisMxA4PRtadg==
-SHA1-Digest: PY15rnisVYBz88d5N2ceY/9PspM=
+MD5-Digest: pcEPwb4r2QA6bwhaavYP5g==
+SHA1-Digest: jAjLurpSIFfOC/6BRJMkQLhWTmc=
 
 Name: chrome/locale/de/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -537,8 +537,8 @@ SHA1-Digest: FzzY/kDgk9oB/yfhbthUH+3K+p0=
 
 Name: chrome/locale/el/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: p9AzRbVF0AUwOTQ230LV7w==
-SHA1-Digest: axCmzUKnEKTrL4wDNTunKKfyIvE=
+MD5-Digest: icUQ6Pv8tl2kTVv3HXu94A==
+SHA1-Digest: M7aojLXbg9c740qPs3ZO+e46T1A=
 
 Name: chrome/locale/el/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -552,8 +552,8 @@ SHA1-Digest: HUexKIcNtXuADoCrQga0QJQJMlw=
 
 Name: chrome/locale/en-GB/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: ZBgcnvWGVQscPBiqFLPPDQ==
-SHA1-Digest: 5fJMNokGx80/wPKbBPINq6p7BbE=
+MD5-Digest: IF+bX8qbZuOXcCIN9gAmBw==
+SHA1-Digest: CEj3rI/+kxPU/ViMeMsTQZVu16g=
 
 Name: chrome/locale/en-GB/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -567,8 +567,8 @@ SHA1-Digest: wPgAT8TTe+fOk2o/kzl27p7hiEA=
 
 Name: chrome/locale/en-US/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: 4JM/6GJtMvchpp+lGUazgg==
-SHA1-Digest: fets0wQm5tmgV0trwqyIKZu4Mk0=
+MD5-Digest: LOaAoCe/3OShq0oPVeZESA==
+SHA1-Digest: ZZ/2vUiafYoArzRcgN6JOBdUwVM=
 
 Name: chrome/locale/en-US/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -582,8 +582,8 @@ SHA1-Digest: wImWq9Q0F9cVLKYccfgHDGULZUw=
 
 Name: chrome/locale/eo/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: A+UuahE+LtMnZRz4+5yY2w==
-SHA1-Digest: FalnjsZJ2YZEVTC0W2wv5oU7HSA=
+MD5-Digest: 4B/SoqzILILbxQ0PbNd4jQ==
+SHA1-Digest: zCLpTrqaLdu50k2oQne2VXxP8d0=
 
 Name: chrome/locale/eo/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -597,8 +597,8 @@ SHA1-Digest: OdCbf6/mUi60G84lQxF9xvdj2i4=
 
 Name: chrome/locale/es-AR/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: JJg2sErfjFo1wi5xTO8RaQ==
-SHA1-Digest: wYgwH8dptY9wYfHmthFGhtu2pXw=
+MD5-Digest: iN9wfbqh6TVJ3sY8QanmMw==
+SHA1-Digest: 6pichMTalqL9N4N2gFAlNVThuQc=
 
 Name: chrome/locale/es-AR/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -612,8 +612,8 @@ SHA1-Digest: bANkMTYDxZWaaM8hLQZ3kFpkazo=
 
 Name: chrome/locale/es-CL/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: fJSRRuYyOY+bjeJ1iz913w==
-SHA1-Digest: wp9nX3EP3ZFF039vgvcPyKLq1rA=
+MD5-Digest: RG2udguSf2LrINEtuLbwGA==
+SHA1-Digest: b8H3Okx6x//R1vmAc9CDslhbJMo=
 
 Name: chrome/locale/es-CL/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -627,8 +627,8 @@ SHA1-Digest: VfTz8hfRFURHfliKGnVqXQxXFks=
 
 Name: chrome/locale/es-ES/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: NcNIwQND+4t4Fg++m4g+4w==
-SHA1-Digest: zqafG3qwWFCPvFsPEIxFZ+C2+vY=
+MD5-Digest: z1esE6Vo6AwmaIiJC2odXQ==
+SHA1-Digest: adbd19VVvH6v6LrhkuRaXNfvKsI=
 
 Name: chrome/locale/es-ES/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -642,8 +642,8 @@ SHA1-Digest: tLipgYuD6A9JdnK6tunUWzslLaM=
 
 Name: chrome/locale/et-EE/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: XuXok0Lxf2ONtiKrBCINIw==
-SHA1-Digest: dJTVh4C+TFSTw1pAQ1vY3CKKL7Q=
+MD5-Digest: TfybFyqgio7qdhndXHDXZg==
+SHA1-Digest: 8/HQEm4LCr7H7rq5LGbrrCuB34E=
 
 Name: chrome/locale/et-EE/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -657,8 +657,8 @@ SHA1-Digest: f2/STGGGc0EN5ASWPXXelE41f0g=
 
 Name: chrome/locale/eu/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: Tp2otKLYRfhQ32kM9+GZhA==
-SHA1-Digest: RxOj/+ju1ehyI6po7I54bIce6a4=
+MD5-Digest: mfA0WAvms/cyAbMZI3EN+w==
+SHA1-Digest: CGhXQ/vZPpjcG0RABTy4FdEI3oo=
 
 Name: chrome/locale/eu/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -672,8 +672,8 @@ SHA1-Digest: azpjHw2wj68uxic90eEifEP6hdk=
 
 Name: chrome/locale/fa-IR/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: NeC4VmhyfXsdZVPPuPV1Xg==
-SHA1-Digest: EnKIFcA8zyepq4U9ouID7VeZKBY=
+MD5-Digest: pMFSPyqEh6hMbTYI3p8HsA==
+SHA1-Digest: rI4kuvXTATFpDhUVEqeByZlOvdk=
 
 Name: chrome/locale/fa-IR/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -687,8 +687,8 @@ SHA1-Digest: zn4bfaSGlqZv6201f53lOwwUGig=
 
 Name: chrome/locale/fi/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: t6k2ZB8njHgfFA4BkdkMqA==
-SHA1-Digest: IaGDygiPiIYVqusW8tOrtm7IiBs=
+MD5-Digest: UfNWQCxshhllJ7gnDCOe7A==
+SHA1-Digest: IYbAHHeR1jo7Y/Gks9tfT1O8nXw=
 
 Name: chrome/locale/fi/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -702,8 +702,8 @@ SHA1-Digest: /jz7SZgj4l8NBAXZxNUV6YvNmq0=
 
 Name: chrome/locale/fr/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: GMcQHUAAWfJQcfIP57FUGA==
-SHA1-Digest: xB8PBKkb26Nk9hyqklMZJMN2rQQ=
+MD5-Digest: QSa/HioVL2abnlVxfE7/rA==
+SHA1-Digest: khYfg/diRvXSMyV7GReNRyBhiMA=
 
 Name: chrome/locale/fr/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -717,8 +717,8 @@ SHA1-Digest: LU8wXSphmmd7qv/nXZxsmy5/VZ8=
 
 Name: chrome/locale/gl-ES/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: lc+dXzMfFc4tTHJkOJwbng==
-SHA1-Digest: G45zjXxt40ZyJhPgaYoGyMuZH1Q=
+MD5-Digest: Pes8RGh7ShAfGA7POEZ9gg==
+SHA1-Digest: t/YSZpThwQtO4IDuhbPNsRizyJg=
 
 Name: chrome/locale/gl-ES/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -732,8 +732,8 @@ SHA1-Digest: s6RAVGXfmmTceVFCjTgg1rFDnr8=
 
 Name: chrome/locale/he-IL/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: jhpwo3zvND3nk4dbfTnQQw==
-SHA1-Digest: vZPRovX7rUkDcNSi8QeZgMTE3cU=
+MD5-Digest: 6iwk0Wye71Pa2bLLnFtzOw==
+SHA1-Digest: YGv1GSAEyWFqGVO6c2iSRx0h28Y=
 
 Name: chrome/locale/he-IL/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -747,8 +747,8 @@ SHA1-Digest: wV5mzFilGjLReuYFadHBNBuVZ4k=
 
 Name: chrome/locale/hr-HR/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: oexK9yieNQ6vLUD/ibYiTw==
-SHA1-Digest: m9FRnbBYJ2ivGBKovDdcUwLEo2I=
+MD5-Digest: Oo1MplJB+EWm0do17EP1YA==
+SHA1-Digest: 0npimz1J4Ju2AouzHs73xFjCA+Y=
 
 Name: chrome/locale/hr-HR/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -762,8 +762,8 @@ SHA1-Digest: t5wMEPVua4wuGwBHf97L7FLdbwo=
 
 Name: chrome/locale/hsb/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: jQ2CyB09ayxbbpDkosZTkg==
-SHA1-Digest: vrOEhktvBI4D+hpdg/Dmc6oqvDk=
+MD5-Digest: WAsBtEP5siIsZNn7lBCZTg==
+SHA1-Digest: VOcheAFSfnXqXUFzcfg0Yov59+E=
 
 Name: chrome/locale/hsb/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -777,8 +777,8 @@ SHA1-Digest: vZzf9pMQ/01ovCpCdaHSAOBoH/o=
 
 Name: chrome/locale/hu-HU/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: Czb3QdXw4vcC2x7yec8Taw==
-SHA1-Digest: Y8nEHb/9yOQnIzqq6VW5jYltH70=
+MD5-Digest: I9+CD6nut42ny5yms5clSg==
+SHA1-Digest: bnpGsWnoJc64lDtkI6tIethRkII=
 
 Name: chrome/locale/hu-HU/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -792,8 +792,8 @@ SHA1-Digest: f98lOBm8U6bwxWqz/51Ntq5SNxw=
 
 Name: chrome/locale/id-ID/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: G3Y5VRdfEu2YFFfS73etyw==
-SHA1-Digest: SjsdCtwc+TI+pQnDiBHThriyUYs=
+MD5-Digest: LyogM9TokSbUfxoP95bvhw==
+SHA1-Digest: qgBBDIIyStkAU1WWhB5Yggm+TCg=
 
 Name: chrome/locale/id-ID/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -807,8 +807,8 @@ SHA1-Digest: AXC2nbKZGSkqbC8aIXiPvcMJImc=
 
 Name: chrome/locale/it/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: 76mTgEfAx9fXnm/VpRyzfQ==
-SHA1-Digest: ekWV1uRFBFNYptiEtUH9O8GwmsM=
+MD5-Digest: +DjOBqozqDbOxL9b8uUjAQ==
+SHA1-Digest: PA76UPJPDjnG2rTRYYV4OntDSiE=
 
 Name: chrome/locale/it/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -822,8 +822,8 @@ SHA1-Digest: sta5MoQ0XEGJhUl65YPJ5hdtt1A=
 
 Name: chrome/locale/ja-JP/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: dQgH3tcUogM8bfMPoh6Dpg==
-SHA1-Digest: jY5YFz1tQlIZR3k1EQKE+ncScuU=
+MD5-Digest: OeorLpL8BoxzPyyYBs0a8g==
+SHA1-Digest: GrBWf8yCrUT6x5EaJwqV/qRxf48=
 
 Name: chrome/locale/ja-JP/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -837,8 +837,8 @@ SHA1-Digest: BmojPYZwczyr7siGSTqMj6PRlG8=
 
 Name: chrome/locale/kk-KZ/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: 24J9jbN9ExNsRwR0vfTtiQ==
-SHA1-Digest: Gtkq/GECgbpCq+V8q1YIN3AfOXo=
+MD5-Digest: 8RVmHMouxTxfsZ+hr4ec5g==
+SHA1-Digest: VYDe7VTb7EM1wNwZ2VukdL4oN5c=
 
 Name: chrome/locale/kk-KZ/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -852,8 +852,8 @@ SHA1-Digest: mWY8HPNe6NqhGrPI3JdngLbbah4=
 
 Name: chrome/locale/km-KH/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: r5pQ4i6wySxHnbGF+b2M1g==
-SHA1-Digest: fMvtlbq3c0jroReWeYRECRSSZzQ=
+MD5-Digest: tTMLfLo4QsCKP1wF9ox2JQ==
+SHA1-Digest: 07C7+3Z1fHPTlkjoVCmWhoU6saw=
 
 Name: chrome/locale/km-KH/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -867,8 +867,8 @@ SHA1-Digest: 44MXu+9gzxhh8ayl4eczJepe1W4=
 
 Name: chrome/locale/ko-KR/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: w8N5KpG1yusFfA3IApaN0w==
-SHA1-Digest: MdcjP4803rSRaq00Vp7ArZCPC4U=
+MD5-Digest: r3X3GXORODjibeSprXcooQ==
+SHA1-Digest: kOGU2l34UYoOtCbZEroRA+OUt+M=
 
 Name: chrome/locale/ko-KR/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -882,8 +882,8 @@ SHA1-Digest: OXJotNTKa+qW3KH2xglglsfyXps=
 
 Name: chrome/locale/lt/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: zBV1eC924L4a2h8tSMAWNA==
-SHA1-Digest: wQ1E9VI0om+fuysXRWc8+EP+qjI=
+MD5-Digest: N49ZXoRPNKd8E16MTUpa4A==
+SHA1-Digest: QTCA9pgFPVbLm/IKy79b74pYJ+4=
 
 Name: chrome/locale/lt/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -897,8 +897,8 @@ SHA1-Digest: FK2I4LKVCMG61glufAEd4Xu3AHo=
 
 Name: chrome/locale/mk-MK/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: q3AcHlVYVDS3BbZHsvZdJg==
-SHA1-Digest: 9brp0EwSUJucDChju1oKLreoWbE=
+MD5-Digest: KGJX3SFm4v/1u+loLtdRCw==
+SHA1-Digest: Auv94HN7gXc47alI3hHGAMj8Iv4=
 
 Name: chrome/locale/mk-MK/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -912,8 +912,8 @@ SHA1-Digest: cfSmI7vUD8EMK3m2vZPKZpYFDPU=
 
 Name: chrome/locale/ms-MY/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: /wuUAHrsJhwx7+Zz2dD+Bg==
-SHA1-Digest: FiuSxwEnVQbCaeNt57yFA4q8vX8=
+MD5-Digest: cWls6xTSdv+D10IqRR+5pQ==
+SHA1-Digest: 32/VpZc8m51PtFqJtqXOAzT05L4=
 
 Name: chrome/locale/ms-MY/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -927,8 +927,8 @@ SHA1-Digest: wVO4Zccxj/r0+ZVVvg8Y4t2tE90=
 
 Name: chrome/locale/nb-NO/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: uX4kSiZND+Pp5BIIYXEtGA==
-SHA1-Digest: 9O8iDItOI+fgJ0Ur69wINdSrtS8=
+MD5-Digest: wi63Mrg/dVoLF0APjXYlxw==
+SHA1-Digest: MgJ6rbmkM6xlSJdGiRK6oykPa8k=
 
 Name: chrome/locale/nb-NO/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -942,8 +942,8 @@ SHA1-Digest: ocnQh9+4tavoFD6kFCm1NX/oBRY=
 
 Name: chrome/locale/nl/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: qnPCQhD2irSmx/1OuZKcGw==
-SHA1-Digest: uNaXI3130dfEbX8o2MKiWVT9whw=
+MD5-Digest: CLScl/rdpS8k/spW12lhGQ==
+SHA1-Digest: aNd8Z3HPFhNQSC5Dy4S5iHY35Xc=
 
 Name: chrome/locale/nl/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -957,8 +957,8 @@ SHA1-Digest: I1Att5q7dUDdAIbhroTZi1FZ0os=
 
 Name: chrome/locale/pl/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: S69iHvac0VhzE9Q4T1LPgw==
-SHA1-Digest: 6wN6m7y2VZAA6LYXdsgCx1DhRWU=
+MD5-Digest: wC92BkQUGOr9bOrihpXouw==
+SHA1-Digest: 64hglz26nVXOl3CnHKjFYWh4xYk=
 
 Name: chrome/locale/pl/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -972,8 +972,8 @@ SHA1-Digest: P9ocXE7IK6wNPXiIr51c2D+MoXs=
 
 Name: chrome/locale/pt-BR/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: sY1vkgk3rJe4MFYMrpvC8g==
-SHA1-Digest: mhLn+BAG+pH035Ntmn+iKgV0oto=
+MD5-Digest: CCtDUFZAWW6UfykuYGrWIQ==
+SHA1-Digest: hc5FzEoeaFDpM2lgR/SeDqnDCcg=
 
 Name: chrome/locale/pt-BR/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -987,8 +987,8 @@ SHA1-Digest: F5Gzudwcvj9tdqcBsxGr0efxB6Y=
 
 Name: chrome/locale/pt-PT/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: 9SXQvUN0YKaHCBd7b8T1vQ==
-SHA1-Digest: A/dxtLOBVmmbPjq/mqOSCeqICNo=
+MD5-Digest: tjGRqj3XNEcwcSkEMVHZwQ==
+SHA1-Digest: U/0cPuiCNbwb5S9gfSRJ6aPC14o=
 
 Name: chrome/locale/pt-PT/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -1002,8 +1002,8 @@ SHA1-Digest: 2lcDUg+dqYSX7FOY4prf39S61Uk=
 
 Name: chrome/locale/ro/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: 7JpJ3uNdnTDbz1bKgTD09A==
-SHA1-Digest: tYsSBgGWT9IDdogirhyesbPbSXU=
+MD5-Digest: J51ks5iIP4GMPJSP4oaPKg==
+SHA1-Digest: YpsnJa1X6tjbrLV3fnHmt5OMZmM=
 
 Name: chrome/locale/ro/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -1032,8 +1032,8 @@ SHA1-Digest: l4ysX3tnwlN4hCoasmYaODXXcoA=
 
 Name: chrome/locale/sk-SK/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: hl9pryNqLsyasCT3eilM0Q==
-SHA1-Digest: sEU7v+SHtSWm1fV0CRXjsshVRUI=
+MD5-Digest: QnhhMUZduplobDh/r7b/Qw==
+SHA1-Digest: 1mgJjjdQ1EUlniaBqlSUbpOcG/c=
 
 Name: chrome/locale/sk-SK/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -1047,8 +1047,8 @@ SHA1-Digest: vyVw61FTz5MIKLbhdN0RhokcOFQ=
 
 Name: chrome/locale/sl-SI/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: CaQpOr0/g5aFWl4lxK1ZlQ==
-SHA1-Digest: 9KKWh+zxTJZeo+AwZ1CmuHuR94Y=
+MD5-Digest: EBENlKuugBAHiCvMXu889Q==
+SHA1-Digest: bvCofDU7lPZlc2jTqskMgjukVbw=
 
 Name: chrome/locale/sl-SI/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -1062,8 +1062,8 @@ SHA1-Digest: pzRQpOrfox3yFbjBJA7q9RxkUCI=
 
 Name: chrome/locale/sr-RS/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: Qy6C7WXcVasGY8VD9njasQ==
-SHA1-Digest: PsVxc3pZBsa9SpWSFF/Oj3gfa4s=
+MD5-Digest: 1fZwYt/poh4jzFxVKCJx0g==
+SHA1-Digest: E9WvDRweoUyDkNnUfqsDwZmfXgE=
 
 Name: chrome/locale/sr-RS/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -1092,8 +1092,8 @@ SHA1-Digest: DZdGzRyvtAVDdd+ieOShWPb/K/w=
 
 Name: chrome/locale/sv-SE/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: xdM0MHI3waIGGSbGUdsU4A==
-SHA1-Digest: YIHhSBeOJzAI3MPsBfmK1/ndSzo=
+MD5-Digest: l2VJjDWSdcKs/vhHERmLDw==
+SHA1-Digest: ukkn72SlX5NOEBfnUAdjej/YHQY=
 
 Name: chrome/locale/sv-SE/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -1107,8 +1107,8 @@ SHA1-Digest: wPgAT8TTe+fOk2o/kzl27p7hiEA=
 
 Name: chrome/locale/te-IN/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: GeA8Zj+k0q/3AQ14U5jxSg==
-SHA1-Digest: zJj4UI8wXkzSZ3mh7DdlyFlH/Rg=
+MD5-Digest: Lq7uJEUOzbarpDWbkliLYQ==
+SHA1-Digest: yi3I2ywbc4LNMcrxCbYgR0GwWBM=
 
 Name: chrome/locale/te-IN/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -1122,8 +1122,8 @@ SHA1-Digest: E9iNrmms3GPVPG83auLwHZhc3Yk=
 
 Name: chrome/locale/th/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: FrqSqRiQ3Wu1ywZjhxyjBw==
-SHA1-Digest: MWKbbZBhMDCbOmaZLHVxrz+iApA=
+MD5-Digest: fpnbn1Ut2nlJKrqe/gKFcg==
+SHA1-Digest: 2lQqv4OH1UIvKJ85BqlEkgqv3t4=
 
 Name: chrome/locale/th/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -1137,8 +1137,8 @@ SHA1-Digest: fyquCmWmcvO+XAQZEpRKesve1qE=
 
 Name: chrome/locale/tr/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: 9XGECTGUbVogljlirAd4zw==
-SHA1-Digest: 7DHj2R6843w50fv06R3xv2IuPgQ=
+MD5-Digest: HooBbyIIg1Q4bCYGwvbVmQ==
+SHA1-Digest: /EqJESFbm4qDRPB7YDb6ot79n1o=
 
 Name: chrome/locale/tr/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -1167,8 +1167,8 @@ SHA1-Digest: jJ2uCXM0ppagHEC8Zga3rBAHiKY=
 
 Name: chrome/locale/vi/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: ajK3mGaJBezAt38AH/sb2Q==
-SHA1-Digest: FC8T0sjRs3Vu1HtdxGofHfHUcgk=
+MD5-Digest: JeM76StWFSaXI4OX62y5sg==
+SHA1-Digest: 937ylL2Io8eF/SZSJAZXxNfECHw=
 
 Name: chrome/locale/vi/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -1182,8 +1182,8 @@ SHA1-Digest: sjSFXUWhoyS0AL/uEOcWbEWXZiA=
 
 Name: chrome/locale/zh-CN/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: M9LefNxSLylY52bXSE/04A==
-SHA1-Digest: USBU0MCVOlUP1NDAa6Hva4Cy6wA=
+MD5-Digest: Lk/jnJbVLV0piDMSjQ63Xw==
+SHA1-Digest: DvjcvMKcGfuQ+NKaCW5bsPMORxs=
 
 Name: chrome/locale/zh-CN/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -1197,8 +1197,8 @@ SHA1-Digest: 0ezRfaXTFlZHSTxEUFVH9gh3mvU=
 
 Name: chrome/locale/zh-TW/noscript/noscript.dtd
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: wgfFjek96XoVKdqEbnjBig==
-SHA1-Digest: QUhWxyTZItK/HgOwSTFFgabe2WY=
+MD5-Digest: rFwnYE/BoDQklbRY3lXugg==
+SHA1-Digest: KzNHxtGcVCYtApwIiY3qCeja2EQ=
 
 Name: chrome/locale/zh-TW/noscript/noscript.properties
 Digest-Algorithms: MD5 SHA1
@@ -1502,8 +1502,8 @@ SHA1-Digest: CST2HsndXBM/v2zddWR+BmatjQc=
 
 Name: defaults/preferences/noscript.js
 Digest-Algorithms: MD5 SHA1
-MD5-Digest: 6wFpU3hQ3zKmAGCUKfZfHQ==
-SHA1-Digest: kHfJ59mp7zcgBqi1OXmIHj0+6Dc=
+MD5-Digest: 8SSJMT09enBBkVofRsGmNA==
+SHA1-Digest: XFkBenfJx+pBTOgYSMpCvT2NGh4=
 
 Name: webextension/background.html
 Digest-Algorithms: MD5 SHA1
diff --git a/META-INF/mozilla.rsa b/META-INF/mozilla.rsa
index 256e96b..49659b2 100644
Binary files a/META-INF/mozilla.rsa and b/META-INF/mozilla.rsa differ
diff --git a/META-INF/mozilla.sf b/META-INF/mozilla.sf
index b55fd18..ecd193b 100644
--- a/META-INF/mozilla.sf
+++ b/META-INF/mozilla.sf
@@ -1,4 +1,4 @@
 Signature-Version: 1.0
-MD5-Digest-Manifest: L1nPDINfg9gY34M1mdKsbA==
-SHA1-Digest-Manifest: TCnjeZ/3hlqmTK7bGuUddznhL/s=
+MD5-Digest-Manifest: tT9ks8lbtU7Tc/axnxWPug==
+SHA1-Digest-Manifest: O2p6KuGq4Psfk+ICvTx5dVQ8RbQ=
 
diff --git a/bootstrap.js b/bootstrap.js
index 43f3a08..9f1235e 100644
--- a/bootstrap.js
+++ b/bootstrap.js
@@ -17,7 +17,7 @@ function startup(data, reason) {
 }
 
 function shutdown(data, reason) {
-    if (reason == APP_SHUTDOWN)
+    if (reason === APP_SHUTDOWN)
         return;
 
     Services.wm.removeListener(WindowListener);
diff --git a/chrome/content/noscript/ABE.js b/chrome/content/noscript/ABE.js
index 95d7146..7e46e6d 100644
--- a/chrome/content/noscript/ABE.js
+++ b/chrome/content/noscript/ABE.js
@@ -30,6 +30,11 @@ var ABE = {
     DoNotTrack.init(ps.getBranch(prefParent+ "doNotTrack."));
   },
 
+  dispose() {
+    ABEStorage.dispose();
+    WAN.enabled = false;
+  },
+
   siteMap: Object.create(null),
 
   get disabledRulesetNames() {
@@ -1179,6 +1184,12 @@ var ABEStorage = {
     for (let k  of prefs.getChildList("", {})) this.observe(prefs, null, k);
     prefs.addObserver("", this, true);
   },
+  dispose() {
+    try {
+      this.prefs.removeObserver("", this, true);
+    } catch (e) {
+    }
+  },
   QueryInterface: XPCOMUtils.generateQI([Ci.nsIObserver, Ci.nsISupportsWeakReference]),
   observe: function(prefs, topic, name) {
     if (typeof ABE === "undefined") {
@@ -1345,16 +1356,18 @@ var WAN = {
       }
     } else {
       this._timer = this.ip = this.ipMatcher = null;
+      if (this._observing) {
+        this._observing = false;
+        OS.removeObserver(this, "network:offline-status-changed");
+        OS.removeObserver(this, "wake_notification");
+      }
     }
-    return this._enabled = b;
+    return (this._enabled = b);
   },
   _observingHTTP: false,
 
   observe: function(subject, topic, data) {
-    if (typeof WAN === "undefined") {
-      OS.removeObserver(this, topic);
-      return;
-    }
+    
     if (!this.enabled) return;
 
     switch(topic) {
diff --git a/chrome/content/noscript/FrameScript.jsm b/chrome/content/noscript/FrameScript.jsm
index 9ab821d..4a896e7 100644
--- a/chrome/content/noscript/FrameScript.jsm
+++ b/chrome/content/noscript/FrameScript.jsm
@@ -7,7 +7,8 @@ const { utils: Cu, interfaces: Ci, classes: Cc } = Components;
 Cu.import("resource://gre/modules/Services.jsm");
 Cu.import("resource://gre/modules/XPCOMUtils.jsm");
 
-const SERVICE_READY = "NoScript:ServiceReady";
+const SERVICE_READY = "NoScript.ServiceReady";
+const SERVICE_DISPOSE = "NoScript.Dispose";
 
 Cu.import("chrome://noscript/content/importer.jsm");
 let IMPORT = IMPORT_FOR(this);
@@ -40,20 +41,47 @@ function FrameScript(ctx) {
   } else {
     Services.obs.addObserver(this, SERVICE_READY, true);
   }
+
 }
 
 FrameScript.prototype = {
   QueryInterface: XPCOMUtils.generateQI(
     [Ci.nsIObserver, Ci.nsISupportsWeakReference]),
   init() {
+    if (this.uiSync) return;
+   
     let ctx = this.ctx;
-    let pasteHandler = new PasteHandler(ctx);
-    ctx.ns.onDisposal(() => pasteHandler.dispose());
-    ctx.uiSync = new UISync(ctx);
-    ctx.ns.dump(`Framescript initialized in ${ctx.content.location.href}`);
+    this.pasteHandler = new PasteHandler(ctx);
+    this.uiSync = new UISync(ctx);
+    ctx.addMessageListener("NoScript:unload", this);
+    Services.obs.addObserver(this, SERVICE_DISPOSE, true);
+    let ns = ctx.ns;
+    if (ns.consoleDump && ctx.content && ctx.content.location)
+      ns.dump(`Framescript initialized in ${ctx.content.location.href}`);
   },
   observe(subj, topic, data) {
-    this.init();
-    Services.obs.removeObserver(this, SERVICE_READY);
+    switch(topic) {
+      case SERVICE_READY:
+        this.init();
+        break;
+      case SERVICE_DISPOSE:
+        this.dispose();
+        break;
+    }
+  },
+  receiveMessage(m) {
+    if (m.name === "NoScript:unload") {
+      this.dispose();
+    }
+  },
+  dispose() {
+    if (!this.uiSync) return;
+    this.pasteHandler.dispose();
+    this.uiSync.unwire();
+    this.uiSync = this.pasteHandler = null;
+    let ctx = this.ctx;
+    let ns = ctx.ns;
+    if (ns.consoleDump && ctx.content && ctx.content.location)
+      this.ctx.ns.dump(`Framescript disposed in ${this.ctx.content.location.href}`);
   }
 };
diff --git a/chrome/content/noscript/Main.js b/chrome/content/noscript/Main.js
index 2132e3d..d5b94aa 100644
--- a/chrome/content/noscript/Main.js
+++ b/chrome/content/noscript/Main.js
@@ -103,12 +103,13 @@ this.__defineGetter__("ABE", function() {
   INCLUDE("ABE");
   ABE.consoleDump = !!(ns.consoleDump & LOG_ABE);
   ABE.init("noscript.");
+  ns.onDisposal(() => ABE.dispose());
   DNS.logEnabled = ns.getPref("logDNS");
   return ABE;
 });
 
 const ns = {
-  VERSION: "5.1.2",
+  VERSION: "5.1.3",
   classDescription: CLASS_NAME,
 	classID: Components.ID(SERVICE_ID),
 	contractID: SERVICE_CTRID,
@@ -179,6 +180,8 @@ const ns = {
     }
   },
 
+
+  IPC: IPC,
   bootstrap: function() {
     this.childProcess = (Services.appinfo.processType === Services.appinfo.PROCESS_TYPE_CONTENT);
 
@@ -213,6 +216,15 @@ const ns = {
     if (!this._started) return;
     this._started = false;
     this.dump("NoScript shutting down");
+
+    if (!this.childProcess) {
+      try {
+        this.prefService.getDefaultBranch("noscript.").setCharPref("snapshot", JSON.stringify(this.getSnapshot()));
+      } catch (e) {
+        Cu.reportError(e);
+      }
+    }
+
     this.dispose();
     for (let topic of this.OBSERVED_TOPICS) {
       try {
@@ -860,7 +872,7 @@ const ns = {
     try {
       if(!this._inited) return;
       this._inited = false;
-
+      OS.notifyObservers(this, "NoScript.Dispose", null);
       for (let t of this._disposalTasks) try {
         ns.dump(`Executing disposal task ${t}`);
         t();
@@ -881,13 +893,15 @@ const ns = {
         try {
           catMan.deleteCategoryEntry("net-channel-event-sinks", this.contractID, false);
         } catch (e) {}
-        Cc['@mozilla.org/docloaderservice;1'].getService(nsIWebProgress).removeProgressListener(this);
+
       }
+      try {
+        Cc['@mozilla.org/docloaderservice;1'].getService(nsIWebProgress).removeProgressListener(this);
+      } catch (e) {}
 
       this.prefs.removeObserver("", this);
       this.mozJSPref.removeObserver("enabled", this);
       this.resetJSCaps();
-      this.eraseTemp();
 
       this.savePrefs();
       this.disposeStyleSheets();
@@ -1246,11 +1260,14 @@ const ns = {
     if (key in map || site in map) return true;
     var keys = site.split(".");
     if (keys.length > 1) {
-      let prefix = keys[0].match(/^(?:ht|f)tps?:\/\//i)[0] + "*.";
-      while (keys.length > 2) {
-        keys.shift();
-        key = prefix + keys.join(".");
-        if (key in map || hasPort && key.replace(portRx, ":0") in map) return true;
+      let prefixMatch = keys[0].match(/^(?:ht|f)tps?:\/\//i);
+      if (prefixMatch) {
+        let prefix = prefixMatch[0] + "*.";
+        while (keys.length > 2) {
+          keys.shift();
+          key = prefix + keys.join(".");
+          if (key in map || hasPort && key.replace(portRx, ":0") in map) return true;
+        }
       }
     }
 
@@ -1396,6 +1413,23 @@ const ns = {
      }, 0);
   },
 
+  getSnapshot() {
+    return {
+      trusted: this.jsPolicySites.sitesString,
+      untrusted: this.untrustedSites.sitesString,
+      manual: this.manualSites.sitesString,
+      temp: this.tempSites.sitesString,
+      objectWhitelist: this.objectWhitelist,
+    };
+  },
+  setSnapshot(snapshot) {
+    this.jsPolicySites.sitesString = snapshot.trusted;
+    this.untrustedSites.sitesString = snapshot.untrusted;
+    this.manualSites.sitesString = snapshot.manual;
+    this.tempSites.sitesString = snapshot.temp;
+    this.objectWhitelist = snapshot.objectWhitelist;
+    this.objectWhitelistLen = Object.keys(this.objectWhitelist).length;
+  },
 
   getPermanentSites: function(whitelist, templist) {
     whitelist = (whitelist || this.jsPolicySites).clone();
@@ -2090,13 +2124,23 @@ const ns = {
     if(!browser) return false;
 
     var window = browser.contentWindow;
-    if(!window) return false;
+    if(!window) {
+      let callbackId = IPC.parent.callback(openCallback);
+      browser.messageManager.sendAsyncMessage("NoScript:executeJSURL", {
+        url, callbackId, fromURLBar
+      });
+      return true;
+    }
+    return this.executeJSURLInContent(browser, window, url, openCallback, fromURLBar);
+  },
+
+  executeJSURLInContent(browser, window, url, openCallback, fromURLBar = false) {
+    var site = this.getDocSite(window.document) || this.getExpando(browser, "jsSite");
 
-    var site = this.getSite(window.document.documentURI) || this.getExpando(browser, "jsSite");
     if (this.mozJSEnabled && (!this.jsEnabled || this.isUntrusted(site))) {
       if(this.consoleDump) this.dump("Executing JS URL " + url + " on site " + site);
 
-      let docShell = DOM.getDocShellForWindow(window);
+      let docShell = browser.docShell;
 
       let snapshots = {
         globalJS: this.globalJS,
@@ -2116,14 +2160,15 @@ const ns = {
         docShell.allowJavascript = true;
         if (!(this.jsEnabled = doc.documentURI === "about:blank" || ns.getPref(fromURLBar ? "allowURLBarImports" : "allowBookmarkletImports"))) {
           if (site && !siteJSEnabled) {
-            this.setJSEnabled(site, true);
+            this.jsPolicySites.add(site);
+            this.untrustedSites.remove(site, false, true);
           }
         } else {
           focusListener = function(ev) {
-            ns.jsEnabled = DOM.mostRecentBrowserWindow.content == window;
+            ns.jsEnabled = docShell.isActive;
           };
           for (let et  of ["focus", "blur"])
-            browserWindow.addEventListener(et, focusListener, true);
+            browser.addEventListener(et, focusListener, true);
         }
 
         try {
@@ -2133,12 +2178,10 @@ const ns = {
             this._patchTimeouts(window, true);
           }
 
-          let gecko24 = this.geckoVersionCheck("24") >= 0;
-          if ((fromURLBar || noJS) && /^javascript:/i.test(url) && gecko24) {
+          if (noJS && /^javascript:/i.test(url)) {
             JSURL.load(url, doc);
           } else {
-            if (gecko24) openCallback();
-            else window.location.href = url;
+            window.location.href = url;
           }
           Thread.yieldAll();
           if (noJS) {
@@ -2172,7 +2215,7 @@ const ns = {
 
           if (focusListener)
             for (let et  of ["focus", "blur"])
-              browserWindow.removeEventListener(et, focusListener, true);
+              browser.removeEventListener(et, focusListener, true);
 
           if (this.jsEnabled != snapshots.globalJS)
             this.jsEnabled = snapshots.globalJS;
@@ -4029,7 +4072,7 @@ const ns = {
   onLocationChange2(wp, req, location, flags) {},
 
   onStatusChange: function(wp, req, status, msg) {
-    if (status == 0x804b0003 && (req instanceof Ci.nsIChannel) && !ABE.isDeferred(req)) { // DNS resolving, check if we need to clear the cache
+    if (status == 0x804b0003 && (req instanceof Ci.nsIChannel) && typeof ns === "object" && !ABE.isDeferred(req)) { // DNS resolving, check if we need to clear the cache
       try {
         var host = req.URI.host;
         if (host) {
diff --git a/chrome/content/noscript/MainChild.js b/chrome/content/noscript/MainChild.js
index 5f9ab54..f8b99f7 100644
--- a/chrome/content/noscript/MainChild.js
+++ b/chrome/content/noscript/MainChild.js
@@ -14,11 +14,7 @@ var MainChild = {
   },
   afterInit: function() {
     let snapshot = Services.cpmm.sendSyncMessage(IPC_P_MSG.GET_SNAPSHOT)[0];
-    this.jsPolicySites.sitesString = snapshot.trusted;
-    this.untrustedSites.sitesString = snapshot.untrusted;
-    this.manualSites.sitesString = snapshot.manual;
-    this.objectWhitelist = snapshot.objectWhitelist;
-    this.objectWhitelistLen = Object.keys(this.objectWhitelist).length;
+    this.setSnapshot(snapshot);
     this.initContentPolicy(true);
   },
 
diff --git a/chrome/content/noscript/MainParent.js b/chrome/content/noscript/MainParent.js
index 9a13d94..7e22d67 100644
--- a/chrome/content/noscript/MainParent.js
+++ b/chrome/content/noscript/MainParent.js
@@ -6,6 +6,7 @@ var MainParent = {
     this._initE10s();
   },
   afterInit: function() {
+
     if ((this.locked = this.prefs.prefIsLocked("default"))) {
       try {
         const psKey = this.POLICY_NAME + ".sites";
@@ -24,18 +25,31 @@ var MainParent = {
       }
     }
     
-    this.eraseTemp();
-
     Thread.delay(this.checkSubscriptions, 10000, this);
 
     this._updateSync();
 
+    try {
+      let dp = this.prefService.getDefaultBranch("noscript.");
+      let snapshot = dp.getCharPref("snapshot");
+      this._afterInitSnapshot = snapshot;
+      this.setSnapshot(JSON.parse(snapshot));
+      this._afterInitTemp = this.tempSites.sitesString;
+      this._afterInitTrusted = this.jsPolicySites.sitesString;
+      dp.setCharPref("snapshot", "");
+    } catch (e) {
+      this._afterInitSnapshot = e;
+    }
+
     this.reloadWhereNeeded(this.RELOAD_NO); // init snapshots
 
+
+
     if (this.getPref("webext.enabled")) {
       INCLUDE("WebExt");
       this.webExt = WebExt;
     }
+    this._afterInited = true;
    },
 
    _initE10s: function() {
@@ -269,7 +283,7 @@ var MainParent = {
 
        try {
         let cui = window.CustomizableUI;
-        if (cui) cui.addWidgetToArea(tbbId, cui.AREA_NAVBAR);
+        cui.addWidgetToArea(tbbId, cui.AREA_NAVBAR);
       } catch (e) { // super-legacy
         let addonBar = document.getElementById("addon-bar");
         if (!addonBar) return false;
diff --git a/chrome/content/noscript/Restartless.jsm b/chrome/content/noscript/Restartless.jsm
index cd23fb3..70c00a8 100644
--- a/chrome/content/noscript/Restartless.jsm
+++ b/chrome/content/noscript/Restartless.jsm
@@ -84,7 +84,10 @@ function startup(addonData, browserStartup) {
 
 function shutdown(addonData) {
   if (CustomizableUI && widgetTemplate) {
-    CustomizableUI.destroyWidget(widgetTemplate.id);
+    try {
+        CustomizableUI.destroyWidget(widgetTemplate.id);
+    } catch (e) {
+    }
   }
   Main.shutdown();
   UNLOAD_ALL();
@@ -97,7 +100,7 @@ try {
   var CustomizableUI = null;
 }
 var widgetTemplate = null;
-var overlayURL  = NO_CACHE(`noscriptOverlay-noStatusBar.xul`);
+var overlayURL = NO_CACHE(`noscriptOverlay-noStatusBar.xul`);
 
 function createWidgetTemplate(window, callback) {
   let xhr = new window.XMLHttpRequest();
@@ -183,7 +186,7 @@ function overlayNext() {
   }
 }
 function loadIntoWindow(w, early = false) {
-  if (w.noscriptOverlay) return;
+  if (w.noscriptOverlay || typeof overlayQueue === "undefined") return;
 
   if (overlayLoading) {
     overlayQueue.push(w);
diff --git a/chrome/content/noscript/SiteUtils.js b/chrome/content/noscript/SiteUtils.js
index 2aad8fe..8d75a09 100644
--- a/chrome/content/noscript/SiteUtils.js
+++ b/chrome/content/noscript/SiteUtils.js
@@ -158,6 +158,7 @@ PolicySites.prototype = {
   },
   set sitesString(s) {
     if (s !== this._siteString) {
+
       s = SiteUtils.sanitizeString(s);
       if (s != this._sitesString) {
         this._sitesString = s;
diff --git a/chrome/content/noscript/Thread.js b/chrome/content/noscript/Thread.js
index 46b5203..371cfa5 100644
--- a/chrome/content/noscript/Thread.js
+++ b/chrome/content/noscript/Thread.js
@@ -2,7 +2,6 @@ var Thread = {
 
   hostRunning: true,
   activeLoops: 0,
-  _timers: [],
 
   spin: function(ctrl) {
     ctrl.startTime = ctrl.startTime || Date.now();
@@ -62,23 +61,22 @@ var Thread = {
     return this.currentQueue;
   },
 
-  delay: function(callback, time, self, args) {
+  delay: function(callback, time = 0, self = null, args = DUMMY_ARRAY) {
     var timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer);
-    this._timers.push(timer);
     timer.initWithCallback({
       notify: this._delayRunner,
-      context: { callback: callback, args: args || DUMMY_ARRAY, self: self || null }
-    }, time || 1, 0);
+      context: { callback, args, self }
+    }, time, 0);
   },
 
   dispatch: function(runnable) {
     this.current.dispatch(runnable, Ci.nsIEventTarget.DISPATCH_NORMAL);
   },
 
-  asap: function(callback, self, args) {
+  asap: function(callback, self, args = DUMMY_ARRAY) {
     this.current.dispatch({
       run: function() {
-        callback.apply(self, args || DUMMY_ARRAY);
+        callback.apply(self, args);
       }
     }, Ci.nsIEventTarget.DISPATCH_NORMAL);
   },
@@ -86,12 +84,10 @@ var Thread = {
   _delayRunner: function(timer) {
     var ctx = this.context;
     try {
+      if (typeof Thread === "undefined") return;
       ctx.callback.apply(ctx.self, ctx.args);
     } finally {
       this.context = null;
-      var tt = Thread._timers;
-      var pos = tt.indexOf(timer);
-      if (pos > -1) tt.splice(pos, 1);
       timer.cancel();
     }
   }
diff --git a/chrome/content/noscript/UISync.jsm b/chrome/content/noscript/UISync.jsm
index 439e58a..683c801 100644
--- a/chrome/content/noscript/UISync.jsm
+++ b/chrome/content/noscript/UISync.jsm
@@ -5,6 +5,7 @@ var EXPORTED_SYMBOLS = ["UISync"];
 let { interfaces: Ci, classes: Cc, utils: Cu, results: Cr } = Components;
 
 const messages = ["NoScript:reload", "NoScript:reloadAllowedObjects",
+                  "NoScript:executeJSURL",
                   "NoScript:purgeRecent", "NoScript:forceSync",
                   "NoScript:unload"];
 
@@ -34,8 +35,11 @@ UISync.prototype = {
     }
   },
 
+  _wired: false,
   wire() {
+    this._wired = true;
     let ctx = this.ctx;
+    let ns = ctx.ns;
     let eraser = this.eraser;
 
     this.addListener("DOMWindowCreated", () => this.sync());
@@ -59,7 +63,7 @@ UISync.prototype = {
     this.addListener("keyup", ev => {
       let el = eraser.tapped;
       if (el && ev.keyCode === 46 &&
-          ctx.ns.getPref("eraseFloatingElements")
+          ns.getPref("eraseFloatingElements")
         ) {
         eraser.tapped = null;
         eraser.delKey = true;
@@ -95,7 +99,6 @@ UISync.prototype = {
     }, true);
 
     let fixLinksHandler = ev => {
-      let ns = ctx.ns;
       if (!ns.getPref("fixLinks")) return;
       let doc = ev.target.ownerDocument;
       if (ns.isJSEnabled(ns.getDocSite(doc), doc.defaultView)) return;
@@ -108,27 +111,36 @@ UISync.prototype = {
           break;
       }
     };
-    this.addListener("click",fixLinksHandler, true);
+    this.addListener("click", fixLinksHandler, true);
     this.addListener("change", fixLinksHandler, true);
-    if (ctx.ns.implementToStaticHTML) {
+    if (ns.implementToStaticHTML) {
       this.addListener("NoScript:toStaticHTML", ctx.ns.toStaticHTMLHandler, false, true);
     }
     for (let m of messages) {
       ctx.addMessageListener(m, this);
     }
     this.messages = messages;
-    ctx.ns.clearClickHandler.install(ctx);
+    ns.clearClickHandler.install(ctx);
+    if (ns.consoleDump && ctx.content && ctx.content.location)
+      ns.dump(`Wired frame script at ${ctx.content.location.href}`);
   },
 
   unwire() {
+    if (!this._wired) return;
+    this._wired = false;
     let ctx = this.ctx;
     let ns = ctx.ns;
-    ns.dump("Unwiring frame script");
+
     ns.clearClickHandler.uninstall(ctx);
     for (let m of this.messages) {
-      ctx.removeMessageListener(m, this);
+      try {
+        ctx.removeMessageListener(m, this);
+      } catch (e) {
+      }
     }
     this.removeListeners();
+    if (ns.consoleDump && ctx.content && ctx.content.location)
+      ns.dump(`Unwired frame script at ${ctx.content.location.href}`);
   },
 
   receiveMessage: function(msg) {
@@ -145,6 +157,14 @@ UISync.prototype = {
       case "NoScript:reloadAllowedObjects":
         ns.reloadAllowedObjectsChild(msg.target, msg.data.mime);
       break;
+      case "NoScript:executeJSURL":
+        {
+          let browser = msg.target;
+          let {url, callbackId, fromURLBar} = msg.data;
+          let openCallback = ns.IPC.child.callback(callbackId);
+          ns.executeJSURLInContent(browser, browser.content, url, openCallback, fromURLBar);
+        }
+        break;
       case "NoScript:resetClearClickTimeout":
         ns.clearClickHandler.rapidFire.ts = 0;
       break;
diff --git a/chrome/content/noscript/about.xul b/chrome/content/noscript/about.xul
index bf4f3d1..70c7017 100644
--- a/chrome/content/noscript/about.xul
+++ b/chrome/content/noscript/about.xul
@@ -48,7 +48,7 @@ function about_onload() {
   
   var str = getString("aboutTitle",["NoScript"]);
   if(str) document.title = str;
-  str = getString("version", ["5.1.2"]);
+  str = getString("version", ["5.1.3"]);
   if(str) document.getElementById("extensionVersion").setAttribute("value", str);
   
   setString("extensionDescription",null,"extensions.{73a6fe31-595d-460b-a920-fcc0f8843232}.description");
@@ -86,7 +86,7 @@ function about_open(url, features) {
 <hbox id="headBox" align="end">
 <vbox flex="1">
 <label value="NoScript" id="extensionName" crop="right"/>
-<label value="Version 5.1.2" id="extensionVersion" crop="right"/>
+<label value="Version 5.1.3" id="extensionVersion" crop="right"/>
 </vbox>
 <vbox flex="1" align="end">
 <hbox align="end">
@@ -164,7 +164,7 @@ function about_open(url, features) {
 <hbox>
 <label id="license" class="text-link" tooltiptext="Read end-user license" onclick="about_open('chrome://noscript/content/NoScript_License.txt')">License</label>
 <spacer flex="1"/>
-<label id="changelog" class="text-link" align="center" tooltiptext="See Changelog" onclick="about_open('https://noscript.net/changelog#5.1.2')">Changelog</label>
+<label id="changelog" class="text-link" align="center" tooltiptext="See Changelog" onclick="about_open('https://noscript.net/changelog#5.1.3')">Changelog</label>
 <spacer flex="1"/>
 <label id="extensionHomepage" class="text-link" tooltiptext="Visit Extension Home Page" onclick="about_open('https://noscript.net')">https://noscript.net</label>
 </hbox>
diff --git a/chrome/content/noscript/e10sChild.js b/chrome/content/noscript/e10sChild.js
index 4012ba6..e94700d 100644
--- a/chrome/content/noscript/e10sChild.js
+++ b/chrome/content/noscript/e10sChild.js
@@ -38,9 +38,21 @@ Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
 
     remote(objName, method, args) {
       Services.cpmm.sendAsyncMessage(IPC_P_MSG.CALL, {objName, method, args});
-    }
+    },
+
+    callback(id, autoRemote = true) {
+      let cb = () => {
+        cb._executed = true;
+      };
+      cb._executed = false;
+      cb.remote = () => {
+        Services.cpmm.sendAsyncMessage(IPC_P_MSG.CALLBACK, {id, execute: cb._executed });
+      };
+      if (autoRemote) Thread.asap(cb.remote);
+    },
 
   };
+
   try {
     Main.bootstrap();
     IPC.child.init();
diff --git a/chrome/content/noscript/e10sIPC.js b/chrome/content/noscript/e10sIPC.js
index 3651517..a2716c6 100644
--- a/chrome/content/noscript/e10sIPC.js
+++ b/chrome/content/noscript/e10sIPC.js
@@ -10,6 +10,7 @@ IPC_P_MSG = {
   RESUME: "NoScript:resume",
   GET_PREF: "NoScript:getPref",
   GET_SNAPSHOT: "NoScript:getSnapshot",
+  CALLBACK: "NoScript:callback",
 }
 
 var IPC = {
diff --git a/chrome/content/noscript/e10sParent.js b/chrome/content/noscript/e10sParent.js
index 29ed9e3..a3d92aa 100644
--- a/chrome/content/noscript/e10sParent.js
+++ b/chrome/content/noscript/e10sParent.js
@@ -26,6 +26,7 @@ IPC.parent = {
     globalMM.removeDelayedFrameScript(this.FRAME_SCRIPT);
     globalMM.broadcastAsyncMessage("NoScript:unload");
     processMM.removeDelayedProcessScript(this.PROCESS_SCRIPT);
+    processMM.broadcastAsyncMessage("NoScript:unload");
   },
   
 
@@ -50,6 +51,10 @@ IPC.parent = {
         return;
       case IPC_MSG.CLEARCLICK_WARNING:
         return ClearClickHandler.prototype.showWarningParent(m.target.ownerDocument.defaultView, m.data).locked;
+      case IPC_P_MSG.CALLBACK:
+        let {id, execute} = m.data;
+        this._handleCallback(id, execute);
+        return;
       case IPC_P_MSG.LOAD_SURROGATE:
         return ScriptSurrogate.loadReplacementFile(ScriptSurrogate.getReplacement(m.data));
       case IPC_P_MSG.RESUME:
@@ -65,18 +70,31 @@ IPC.parent = {
         }
         return null;
       case IPC_P_MSG.GET_SNAPSHOT:
-        return {
-          trusted: ns.jsPolicySites.sitesString,
-          untrusted: ns.untrustedSites.sitesString,
-          manual: ns.manualSites.sitesString,
-          objectWhitelist: ns.objectWhitelist,
-        };
+        return ns.getSnapshot();
     }
   },
 
   remote(objName, method, args) {
     Services.ppmm.broadcastAsyncMessage(IPC_P_MSG.CALL, {objName, method, args});
   },
+  
+  _callbacks: new Map(),
+  _callbackId: 0,
+  callback(f) {
+    this._callbacks.set(++this._callbackId, f);
+    return this._callbackId;
+  },
+  _handleCallback(id, execute) {
+    let callback = this._callbacks.get(id);
+    if (callback) this._callbacks.delete(id);
+    if (execute) {
+      try {
+        callback();
+      } catch (e) {
+        Cu.reportError(e);
+      }
+    }
+  },
 };
 
 IPC.parent.init();
diff --git a/chrome/content/noscript/noscriptBM.js b/chrome/content/noscript/noscriptBM.js
index 16d2cab..cb4ab53 100644
--- a/chrome/content/noscript/noscriptBM.js
+++ b/chrome/content/noscript/noscriptBM.js
@@ -1,37 +1,21 @@
 window.noscriptBM = {
-  openOneBookmarkOriginal: null,
-  openOneBookmark: function (aURI, aTargetBrowser, aDS) {
-    var ncNS = typeof(gNC_NS) == "undefined" ? ( typeof(NC_NS) == "undefined" ?
-      "http://home.netscape.com/NC-rdf#" : NC_NS ) : gNC_NS;
-    const url = BookmarksUtils.getProperty(aURI, ncNS+"URL", aDS);
+
+  openUILinkIn: function(url, ...args) {
+    var callback = () => openUILinkIn._noscriptBMSaved(url, ...args);
     
-    var openCallback = function(url) {
-      noscriptBM.openOneBookmarkOriginal.apply(BookmarksCommand, [aURI, aTargetBrowser, aDS]);
-    };
-  
-    if(!noscriptBM.handleBookmark(url, openCallback)) {
-      openCallback();
-    }
-  },
-  
-  handleURLBarCommandOriginal: null,
-  handleURLBarCommand: function() { // Fx 3.0 command bar interception
     if(!(window.gURLBar && gURLBar.value))
-      return;
+      return callback();
    
-    var originalArguments = arguments;
-    var callback = function() { noscriptBM.handleURLBarCommandOriginal(originalArguments) };
-    
     var shortcut = gURLBar.value;
     var jsrx = /^\s*(?:data|javascript):/i;
-    var isJS = jsrx.test(shortcut);
+    var isJS = jsrx.test(url);
     var ns = noscriptUtil.service;
     
     
     if (isJS) {
       let allowJS = ns.getPref("allowURLBarJS", true);
       let isShortcut = ("originalShortcut" in gURLBar) && gURLBar.originalShortcut !== shortcut;
-      if (allowJS || isShortcut) {
+      if (allowJS || isShortcut || !/\bhandleCommand@/.test(new Error().stack)) {
         window.setTimeout(function() { // if we don't defer, errors are not logged in the console...
           if (!ns.executeJSURL(shortcut, callback, !isShortcut))
             callback();
@@ -41,28 +25,11 @@ window.noscriptBM = {
             "javascript: and data: URIs typed or pasted in the address bar are disabled to prevent social engineering attacks.\nDevelopers can enable them for testing purposes by toggling the \"noscript.allowURLBarJS\" preference.");
       }
       return;
-    } else if (("getShortcutOrURI" in window) && (shortcut.indexOf(" ") > 0  && !isJS || shortcut.indexOf(":") < 0)) {
-      let url = getShortcutOrURI(shortcut, {});
-      if(jsrx.test(url) && noscriptBM.handleBookmark(url, callback))
-        return;
     }
-    callback(); 
-  },
-  
-  loadURIWithFlags: function(url, flags) { // Fx 3.5 and above command bar interception
-    try {
-      if ("gURLBar" in window && /\nhandleCommand\b.*@chrome:\/\//.test(new Error().stack)) {
-        if (/^(?:javascript|data):/i.test(url)) arguments[1] |= Ci.nsIWebNavigation.LOAD_FLAGS_ALLOW_POPUPS;
-        return noscriptBM.handleURLBarCommand.apply(window, arguments);
-      }
-    } catch(e) {}
-    return noscriptBM.handleURLBarCommandOriginal(arguments);
-  },
 
-  handleBookmark: function(url, openCallback) {
-    return noscriptUtil.service.handleBookmark(url, openCallback);
+    return callback();
   },
-  
+
   patchPlacesMethods: function(pu) {
     let ns = noscriptUtil.service;
     if (pu.__ns === ns) return; // already patched
@@ -88,46 +55,40 @@ window.noscriptBM = {
     window.addEventListener("unload", noscriptBM.dispose, false);
     noscriptBM.init();
   },
+  
+  _inited: false,
   init: function() {
     // patch URLBar for keyword-triggered bookmarklets:
     // we do it early, in case user has a bookmarklet startup page
-    if (!noscriptBM.handleURLBarCommandOriginal) {
-      let patch = null;
-      if("handleURLBarCommand" in window) { // Fx 3.0
-        patch = { obj: window, func: window.handleURLBarCommand };
-        window.handleURLBarCommand = noscriptBM.handleURLBarCommand;
-        noscriptBM.onDisposal(() => {
-          window.handleURLBarCommand = patch.func;
-        });
-      } else if ("gBrowser" in window) { // Fx >= 3.5
-        patch = { obj: gBrowser, func: gBrowser.loadURIWithFlags };
-        gBrowser.loadURIWithFlags = noscriptBM.loadURIWithFlags;
-        noscriptBM.onDisposal(() => {
-          gBrowser.loadURIWithFlags = patch.func;
-        });
-      }
-      if (patch) {
-        noscriptBM.handleURLBarCommandOriginal = args => patch.func.apply(patch.obj, args);
-      }
-    }
-    
+    if (noscriptBM._inited) return;
+    noscriptBM._inited = true;
+    if (!window.openUILinkIn) return;
+    let original = window.openUILinkIn._noscriptBMSaved;
+    this.openUILinkIn._noscriptBMSaved = original || window.openUILinkIn;
+    window.openUILinkIn = this.openUILinkIn;
+    noscriptBM.onDisposal(() => {
+      window.openUILinkIn = window.openUILinkIn._noscriptBMSaved;
+    });
+
     // delay bookmark stuff
     window.setTimeout(noscriptBM.delayedInit, 50);
   },
+
   delayedInit: function() {
     for (let f  of ["getShortcutOrURIAndPostData" /* Fx >= 25 */, "getShortcutOrURI"]) {
       if (f in window) {
         let getShortcut = window[f];
+        if (getShortcut._noscriptBM) return;
+
         let replacement = function(aURL) {
           if ("gURLBar" in window && window.gURLBar) {
             window.gURLBar.originalShortcut = aURL;
           }
           return getShortcut.apply(window, arguments);
         };
-        window[f] = getShortcut.length === 2
-          ? function(aURL, callback) { return replacement.apply(window, arguments); }
-          : function(aURL) { return replacement.apply(window, arguments); }
-          ;
+        replacement._noscriptBM = true;
+
+        window[f] = replacement;
         noscriptBM.onDisposal(() => {
           window[f] = getShortcut;
         });
@@ -135,12 +96,6 @@ window.noscriptBM = {
       }
     }
     
-    // Legacy (non-Places), patch bookmark clicks
-    if("BookmarksCommand" in window && noscriptBM.openOneBookmarkOriginal === null) { 
-      noscriptBM.openOneBookmarkOriginal = BookmarksCommand.openOneBookmark;
-      BookmarksCommand.openOneBookmark = noscriptBM.openOneBookmark;
-    }
-    
     // Places stuff, from most recent to oldest
     var pu = window.PlacesUIUtils || window.PlacesUtils || false;
     if (typeof(pu) == "object") {
diff --git a/chrome/content/noscript/noscriptOverlay-noStatusBar.xul b/chrome/content/noscript/noscriptOverlay-noStatusBar.xul
index 50ffd5c..a2b7df6 100644
--- a/chrome/content/noscript/noscriptOverlay-noStatusBar.xul
+++ b/chrome/content/noscript/noscriptOverlay-noStatusBar.xul
@@ -15,6 +15,7 @@
       class="toolbarbutton-1 noscript-no"
       label="NoScript"
       type="menu-button"
+      removable="true"
       oncommand="noscriptOverlay.onUICommand(event)"
       oncontextmenu="noscriptOverlay.onContextMenu(event);"
       onmouseover="noscriptOverlay.onUIOver(event)"
diff --git a/chrome/content/noscript/noscriptOverlay.xul b/chrome/content/noscript/noscriptOverlay.xul
index 108b3ad..ab5541e 100644
--- a/chrome/content/noscript/noscriptOverlay.xul
+++ b/chrome/content/noscript/noscriptOverlay.xul
@@ -15,6 +15,7 @@
       class="toolbarbutton-1 noscript-no"
       label="NoScript"
       type="menu-button"
+      removable="true"
       oncommand="noscriptOverlay.onUICommand(event)"
       oncontextmenu="noscriptOverlay.onContextMenu(event);"
       onmouseover="noscriptOverlay.onUIOver(event)"
diff --git a/chrome/locale/bg-BG/noscript/noscript.dtd b/chrome/locale/bg-BG/noscript/noscript.dtd
index dd6a3e0..2fe0a34 100644
--- a/chrome/locale/bg-BG/noscript/noscript.dtd
+++ b/chrome/locale/bg-BG/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Настройки…">
 <!ENTITY noscriptOptions.accesskey "Н">
 <!ENTITY noscriptOptionsLong "Настройки на NoScript">
-<!ENTITY noscriptAbout "За NoScript 5.1.2">
+<!ENTITY noscriptAbout "За NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Можете да зададете в кои уеб-сайтове е позволено да се използват скриптовете. Напишете адреса или домейна (например "http://www.site.com" или "site.com") на сайта, който искате да разрешите и натиснете Разреши.">
 <!ENTITY noscriptWebAddress "Адрес на уеб-сайта:">
 <!ENTITY noscriptAllow "Разреши">
diff --git a/chrome/locale/ca-AD/noscript/noscript.dtd b/chrome/locale/ca-AD/noscript/noscript.dtd
index 84b77ea..31100fd 100644
--- a/chrome/locale/ca-AD/noscript/noscript.dtd
+++ b/chrome/locale/ca-AD/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opcions...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opcions de NoScript">
-<!ENTITY noscriptAbout "Quant a NoScript 5.1.2">
+<!ENTITY noscriptAbout "Quant a NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Podeu especificar quins llocs web poden executar seqüències. El tipus d'adreça o el domini (p.ex. "http://www.site.com" o "site.com") del lloc al qual voleu donar permissos i feu clic a Permet.">
 <!ENTITY noscriptWebAddress "Adreça del lloc web:">
 <!ENTITY noscriptAllow "Permet">
diff --git a/chrome/locale/cs-CZ/noscript/noscript.dtd b/chrome/locale/cs-CZ/noscript/noscript.dtd
index a8e5cbf..83b1789 100644
--- a/chrome/locale/cs-CZ/noscript/noscript.dtd
+++ b/chrome/locale/cs-CZ/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Nastavení...">
 <!ENTITY noscriptOptions.accesskey "N">
 <!ENTITY noscriptOptionsLong "Nastavení NoScript">
-<!ENTITY noscriptAbout "O rozšíření NoScript 5.1.2">
+<!ENTITY noscriptAbout "O rozšíření NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Můžete si zvolit, které webové stránky mají povoleno spouštět skripty. Zadejte adresu (např. http://www.site.com nebo site.com) na které se nachází stránka, pro kterou chcete skripty povolit a klepněte na Povolit.">
 <!ENTITY noscriptWebAddress "Adresa webové stránky:">
 <!ENTITY noscriptAllow "Povolit">
diff --git a/chrome/locale/cy-GB/noscript/noscript.dtd b/chrome/locale/cy-GB/noscript/noscript.dtd
index 22c8091..df639b7 100644
--- a/chrome/locale/cy-GB/noscript/noscript.dtd
+++ b/chrome/locale/cy-GB/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opsiynau">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opsiynau NoScript">
-<!ENTITY noscriptAbout "Yngylch NoScript 5.1.2">
+<!ENTITY noscriptAbout "Yngylch NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Cewch enwi pa wefannau sy'n cael rhedeg sgriptiau. Teipiwch gyfeiriad neu barth (e.e. "http://www.site.com" neu "site.com") y safle rydych eisiau ei ganiatau ac wedyn cliciwch Caniatau.">
 <!ENTITY noscriptWebAddress "Cyfeiriad wefan">
 <!ENTITY noscriptAllow "Caniatau">
diff --git a/chrome/locale/da/noscript/noscript.dtd b/chrome/locale/da/noscript/noscript.dtd
index 22a3efa..43f7e28 100644
--- a/chrome/locale/da/noscript/noscript.dtd
+++ b/chrome/locale/da/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Indstillinger…">
 <!ENTITY noscriptOptions.accesskey "I">
 <!ENTITY noscriptOptionsLong "NoScript Indstillinger">
-<!ENTITY noscriptAbout "Om NoScript 5.1.2">
+<!ENTITY noscriptAbout "Om NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Du kan angive hvilke websteder der må udføre scripts. Indtast adresse eller domæne (f.eks. "http://www.site.com" eller "site.com") på det websted du ønsker at tillade og klik på Tillad.">
 <!ENTITY noscriptWebAddress "Webstedets adresse:">
 <!ENTITY noscriptAllow "Tillad">
diff --git a/chrome/locale/de/noscript/noscript.dtd b/chrome/locale/de/noscript/noscript.dtd
index 28f6093..646f484 100644
--- a/chrome/locale/de/noscript/noscript.dtd
+++ b/chrome/locale/de/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Einstellungen…">
 <!ENTITY noscriptOptions.accesskey "E">
 <!ENTITY noscriptOptionsLong "NoScript - Einstellungen">
-<!ENTITY noscriptAbout "Über NoScript 5.1.2…">
+<!ENTITY noscriptAbout "Über NoScript 5.1.3…">
 <!ENTITY noscriptPermissionsText "Sie können festlegen, welchen Websites Sie das Ausführen von Skripten erlauben möchten. Geben Sie bitte die exakte Adresse oder die Domain der Website ein (z.B. "http://www.site.com" oder "site.com"), für die Sie dies zulassen möchten, und klicken Sie dann auf "Erlauben".">
 <!ENTITY noscriptWebAddress "Adresse der Website:">
 <!ENTITY noscriptAllow "Erlauben">
diff --git a/chrome/locale/el/noscript/noscript.dtd b/chrome/locale/el/noscript/noscript.dtd
index 6d7708c..bb9ff69 100644
--- a/chrome/locale/el/noscript/noscript.dtd
+++ b/chrome/locale/el/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Επιλογές">
 <!ENTITY noscriptOptions.accesskey "Ε">
 <!ENTITY noscriptOptionsLong "Επιλογές NoScript">
-<!ENTITY noscriptAbout "Περί NoScript 5.1.2">
+<!ENTITY noscriptAbout "Περί NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Μπορείτε να καθορίσετε για ποιους ιστότοπους θα επιτρέπεται η εκτέλεση σεναρίων εντολών. Πληκτρολογήστε τη διεύθυνση τομέα (πχ. "http://www.site.com" or "site.com") του ιστότοπου που θέλετε και μετά κάντε κλικ στο «Να επιτρέπεται»">
 <!ENTITY noscriptWebAddress "Διεύθυνση ιστότοπου">
 <!ENTITY noscriptAllow "Να επιτρέπεται">
diff --git a/chrome/locale/en-GB/noscript/noscript.dtd b/chrome/locale/en-GB/noscript/noscript.dtd
index d57a794..5c0d4ad 100644
--- a/chrome/locale/en-GB/noscript/noscript.dtd
+++ b/chrome/locale/en-GB/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Options…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript Options">
-<!ENTITY noscriptAbout "About NoScript 5.1.2…">
+<!ENTITY noscriptAbout "About NoScript 5.1.3…">
 <!ENTITY noscriptPermissionsText "You can specify which web sites are allowed to execute scripts. Type the address or the domain (e.g. "http://www.site.com" or "site.com") of the site you want to allow and then click Allow.">
 <!ENTITY noscriptWebAddress "Address of web site:">
 <!ENTITY noscriptAllow "Allow">
diff --git a/chrome/locale/en-US/noscript/noscript.dtd b/chrome/locale/en-US/noscript/noscript.dtd
index d9b29a6..be700be 100644
--- a/chrome/locale/en-US/noscript/noscript.dtd
+++ b/chrome/locale/en-US/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Options…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript Options">
-<!ENTITY noscriptAbout "About NoScript 5.1.2…">
+<!ENTITY noscriptAbout "About NoScript 5.1.3…">
 <!ENTITY noscriptPermissionsText "You can specify which web sites are allowed to execute scripts. Type the address or the domain (e.g. "http://www.site.com" or "site.com") of the site you want to allow and then click Allow.">
 <!ENTITY noscriptWebAddress "Address of web site:">
 <!ENTITY noscriptAllow "Allow">
diff --git a/chrome/locale/eo/noscript/noscript.dtd b/chrome/locale/eo/noscript/noscript.dtd
index 5bb77fe..45fdb8e 100644
--- a/chrome/locale/eo/noscript/noscript.dtd
+++ b/chrome/locale/eo/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opcioj…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opcioj de NoScript">
-<!ENTITY noscriptAbout "Pri NoScript 5.1.2…">
+<!ENTITY noscriptAbout "Pri NoScript 5.1.3…">
 <!ENTITY noscriptPermissionsText "Vi povas specifi, kiuj ttt-ejoj rajtu plenumigi skriptojn. Entajpu la adreson aŭ la domajnonomon (ekz. “http://www.retejo.org” aŭ “retejo.org”) de la ttt-ejo, kiun vi volas rajtigi, kaj poste alklaku “Rajtigi”.">
 <!ENTITY noscriptWebAddress "Adreso de retpaĝaro:">
 <!ENTITY noscriptAllow "Rajtigi">
diff --git a/chrome/locale/es-AR/noscript/noscript.dtd b/chrome/locale/es-AR/noscript/noscript.dtd
index ca1f6fc..9a7ae22 100644
--- a/chrome/locale/es-AR/noscript/noscript.dtd
+++ b/chrome/locale/es-AR/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opciones…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opciones de NoScript">
-<!ENTITY noscriptAbout "Acerca de NoScript 5.1.2">
+<!ENTITY noscriptAbout "Acerca de NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Puede especificar a cuáles sitios web le permitirá ejecutar scripts. Escriba la dirección o el dominio (por ejemplo, "http://www.sitio.com" o "sitio.com") del sitio y luego haga clic en Permitir.">
 <!ENTITY noscriptWebAddress "Dirección del sitio web:">
 <!ENTITY noscriptAllow "Permitir">
diff --git a/chrome/locale/es-CL/noscript/noscript.dtd b/chrome/locale/es-CL/noscript/noscript.dtd
index 3df0605..1613019 100644
--- a/chrome/locale/es-CL/noscript/noscript.dtd
+++ b/chrome/locale/es-CL/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Options…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opciones de NoScript">
-<!ENTITY noscriptAbout "About NoScript 5.1.2…">
+<!ENTITY noscriptAbout "About NoScript 5.1.3…">
 <!ENTITY noscriptPermissionsText "You can specify which web sites are allowed to execute scripts. Type the address or the domain (e.g. "http://www.site.com" or "site.com") of the site you want to allow and then click Allow.">
 <!ENTITY noscriptWebAddress "Address of web site:">
 <!ENTITY noscriptAllow "Allow">
diff --git a/chrome/locale/es-ES/noscript/noscript.dtd b/chrome/locale/es-ES/noscript/noscript.dtd
index e1fef6a..39ddf65 100644
--- a/chrome/locale/es-ES/noscript/noscript.dtd
+++ b/chrome/locale/es-ES/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opciones…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Configuración de NoScript">
-<!ENTITY noscriptAbout "Acerca de NoScript 5.1.2">
+<!ENTITY noscriptAbout "Acerca de NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Aquí puede especificar las páginas web a las que va a permitir ejecutar código JavaScript. Escriba la dirección de la web que quiera incluir (ej. "http://www.paginaweb.com" o "paginaweb.com") y después pulse "Permitir".">
 <!ENTITY noscriptWebAddress "Dirección de la página web:">
 <!ENTITY noscriptAllow "Permitir">
diff --git a/chrome/locale/et-EE/noscript/noscript.dtd b/chrome/locale/et-EE/noscript/noscript.dtd
index 738e251..5ced195 100644
--- a/chrome/locale/et-EE/noscript/noscript.dtd
+++ b/chrome/locale/et-EE/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Sätted…">
 <!ENTITY noscriptOptions.accesskey "S">
 <!ENTITY noscriptOptionsLong "NoScripti sätted">
-<!ENTITY noscriptAbout "Täpsemalt lisast NoScript 5.1.2…">
+<!ENTITY noscriptAbout "Täpsemalt lisast NoScript 5.1.3…">
 <!ENTITY noscriptPermissionsText "Sa saad määrata, millistel veebilehtedel lubatakse skripte käivitada. Kirjuta veebilehe aadress või domeeni, mida soovid lubada (nt "http://www.site.com" või "site.com") ja klõpsa Luba nuppu">
 <!ENTITY noscriptWebAddress "Veebilehe aadress:">
 <!ENTITY noscriptAllow "Luba">
diff --git a/chrome/locale/eu/noscript/noscript.dtd b/chrome/locale/eu/noscript/noscript.dtd
index 4bee17d..f7508ae 100644
--- a/chrome/locale/eu/noscript/noscript.dtd
+++ b/chrome/locale/eu/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Aukerak:">
 <!ENTITY noscriptOptions.accesskey "A">
 <!ENTITY noscriptOptionsLong "NoScript aukerak">
-<!ENTITY noscriptAbout "NoScript 5.1.2-eri buruz:">
+<!ENTITY noscriptAbout "NoScript 5.1.3-eri buruz:">
 <!ENTITY noscriptPermissionsText "Zein webgunek script-ak exekuta ditzakeen zehaztu dezakezu. Idatzi script-ak erabiltzea onartzea nahi duzun domeinuaren izena (adib. "http://www.gunea.org" or "gunea.org") eta Onartu sakatu.">
 <!ENTITY noscriptWebAddress "Webgunearen helbidea:">
 <!ENTITY noscriptAllow "Onartu">
diff --git a/chrome/locale/fa-IR/noscript/noscript.dtd b/chrome/locale/fa-IR/noscript/noscript.dtd
index be99ead..a591e69 100644
--- a/chrome/locale/fa-IR/noscript/noscript.dtd
+++ b/chrome/locale/fa-IR/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "تنظیمات...">
 <!ENTITY noscriptOptions.accesskey "ت">
 <!ENTITY noscriptOptionsLong "تنظیمات NoScript">
-<!ENTITY noscriptAbout "درباره NoScript 5.1.2">
+<!ENTITY noscriptAbout "درباره NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "شما می توانید سایت هایی را که اجازه اجرای اسکریپت دارند را مشخص کنید.آدرس سایت یا نام دامنه را وارد کنید.(به عنوان مثال "http://www.site.com" یا "site.com")">
 <!ENTITY noscriptWebAddress "آدرس وب سایت :">
 <!ENTITY noscriptAllow "اجازه دادن">
diff --git a/chrome/locale/fi/noscript/noscript.dtd b/chrome/locale/fi/noscript/noscript.dtd
index 7ab1083..47c569a 100644
--- a/chrome/locale/fi/noscript/noscript.dtd
+++ b/chrome/locale/fi/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Asetukset…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript asetukset">
-<!ENTITY noscriptAbout "Tietoja NoScript 5.1.2istä…">
+<!ENTITY noscriptAbout "Tietoja NoScript 5.1.3istä…">
 <!ENTITY noscriptPermissionsText "Voit määrittää verkkosivut joiden sallitaan suorittaa scriptejä. Kirjoita verkko-osoite tai verkkonimi (esim. "http://www.site.com" tai "site.com") jonka haluat sallia ja paina Salli.">
 <!ENTITY noscriptWebAddress "Verkkosivun osoite:">
 <!ENTITY noscriptAllow "Salli">
diff --git a/chrome/locale/fr/noscript/noscript.dtd b/chrome/locale/fr/noscript/noscript.dtd
index ad04f28..b34eb93 100644
--- a/chrome/locale/fr/noscript/noscript.dtd
+++ b/chrome/locale/fr/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Options">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Options de NoScript">
-<!ENTITY noscriptAbout "À propos de NoScript 5.1.2…">
+<!ENTITY noscriptAbout "À propos de NoScript 5.1.3…">
 <!ENTITY noscriptPermissionsText "Il est possible de spécifier quels sites Web sont autorisés à exécuter des scripts. Saisissez l'adresse exacte du site que vous désirez autoriser puis cliquez sur Autoriser.">
 <!ENTITY noscriptWebAddress "Adresse du site Web :">
 <!ENTITY noscriptAllow "Autoriser">
diff --git a/chrome/locale/gl-ES/noscript/noscript.dtd b/chrome/locale/gl-ES/noscript/noscript.dtd
index 428d7fd..434868b 100644
--- a/chrome/locale/gl-ES/noscript/noscript.dtd
+++ b/chrome/locale/gl-ES/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opcións...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opcións de NoScript">
-<!ENTITY noscriptAbout "Acerca de NoScript 5.1.2">
+<!ENTITY noscriptAbout "Acerca de NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Podes especificar que páxinas web poden executar scripts. Teclea o enderezo ou o dominio (por exemplo "http://www.paxina.com" ou "paxina.com") do sitio que queres autorizar e despois preme en "Permitir".">
 <!ENTITY noscriptWebAddress "Enderezo web:">
 <!ENTITY noscriptAllow "Permitir">
diff --git a/chrome/locale/he-IL/noscript/noscript.dtd b/chrome/locale/he-IL/noscript/noscript.dtd
index c806652..1708053 100644
--- a/chrome/locale/he-IL/noscript/noscript.dtd
+++ b/chrome/locale/he-IL/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "הגדרות...">
 <!ENTITY noscriptOptions.accesskey "">
 <!ENTITY noscriptOptionsLong "NoScript הגדרות של">
-<!ENTITY noscriptAbout "אודות NoScript 5.1.2">
+<!ENTITY noscriptAbout "אודות NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "ציין אילו אתרים יכולים לקבל היתר להפעלת קבצי Script. הקלד את כתובת האתר או את שם התחום (כגון: "http://www.site.com" או "site.com") ולאחר מכן לחץ על התר.">
 <!ENTITY noscriptWebAddress "כתובת/תחום:">
 <!ENTITY noscriptAllow "התר">
diff --git a/chrome/locale/hr-HR/noscript/noscript.dtd b/chrome/locale/hr-HR/noscript/noscript.dtd
index 09c864f..910c5d3 100644
--- a/chrome/locale/hr-HR/noscript/noscript.dtd
+++ b/chrome/locale/hr-HR/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opcije...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript Opcije">
-<!ENTITY noscriptAbout "O NoScript 5.1.2">
+<!ENTITY noscriptAbout "O NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Možete odrediti koje web stranice imaju dopuštenje za izvođenje skripti. Upišite adresu ili domenu (npr. "http://www.stranica.hr" ili "stranica.hr") stranice kojoj želite dopustiti i kliknite na Dopusti.">
 <!ENTITY noscriptWebAddress "Adresa web stranice:">
 <!ENTITY noscriptAllow "Dopusti">
diff --git a/chrome/locale/hsb/noscript/noscript.dtd b/chrome/locale/hsb/noscript/noscript.dtd
index f5c9e84..2703a6a 100644
--- a/chrome/locale/hsb/noscript/noscript.dtd
+++ b/chrome/locale/hsb/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opcije…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opcije NoScript">
-<!ENTITY noscriptAbout "Wo NoScript 5.1.2…">
+<!ENTITY noscriptAbout "Wo NoScript 5.1.3…">
 <!ENTITY noscriptPermissionsText "Móžeće podać, kotre websydła smědźa skripty wuwjesć. Zapisajće adresu abo domenu  (na př. "http://www.site.com" abo "site.com") websydła, kotremuž chceće to dowolić a klikńće potom na "Dowolić".">
 <!ENTITY noscriptWebAddress "Adresa websydła:">
 <!ENTITY noscriptAllow "Dowolić">
diff --git a/chrome/locale/hu-HU/noscript/noscript.dtd b/chrome/locale/hu-HU/noscript/noscript.dtd
index 52aa7a1..8e73127 100644
--- a/chrome/locale/hu-HU/noscript/noscript.dtd
+++ b/chrome/locale/hu-HU/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Beállítások…">
 <!ENTITY noscriptOptions.accesskey "B">
 <!ENTITY noscriptOptionsLong "A NoScript beállításai">
-<!ENTITY noscriptAbout "A NoScript 5.1.2 névjegye">
+<!ENTITY noscriptAbout "A NoScript 5.1.3 névjegye">
 <!ENTITY noscriptPermissionsText "Megadhatja, hogy mely webhelyek számára engedélyezi a parancsfájlok futtatását. Írja be az engedélyezni kívánt webhely címét vagy tartomány nevét (pl. "http://www.webhely.hu" vagy "webhely.hu"), majd kattintson az Engedélyezés gombra.">
 <!ENTITY noscriptWebAddress "A webhely címe:">
 <!ENTITY noscriptAllow "Engedélyezés">
diff --git a/chrome/locale/id-ID/noscript/noscript.dtd b/chrome/locale/id-ID/noscript/noscript.dtd
index 5df303c..29e0e8d 100644
--- a/chrome/locale/id-ID/noscript/noscript.dtd
+++ b/chrome/locale/id-ID/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Pilihan...">
 <!ENTITY noscriptOptions.accesskey "P">
 <!ENTITY noscriptOptionsLong "Pilihan NoScript">
-<!ENTITY noscriptAbout "Tentang NoScript 5.1.2">
+<!ENTITY noscriptAbout "Tentang NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Anda dapat menentukan situs web mana yang diijinkan menjalankan naskah. Masukkan alamat atau domain (contoh: "http://www.site.com" atau "site.com") yang akan diberi ijin kemudian klik Ijinkan.">
 <!ENTITY noscriptWebAddress "Alamat situs web:">
 <!ENTITY noscriptAllow "Ijinkan">
diff --git a/chrome/locale/it/noscript/noscript.dtd b/chrome/locale/it/noscript/noscript.dtd
index c0549d6..9635139 100644
--- a/chrome/locale/it/noscript/noscript.dtd
+++ b/chrome/locale/it/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opzioni…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opzioni NoScript">
-<!ENTITY noscriptAbout "Informazioni su NoScript 5.1.2…">
+<!ENTITY noscriptAbout "Informazioni su NoScript 5.1.3…">
 <!ENTITY noscriptPermissionsText "Qui si possono indicare i siti per i quali l'esecuzione degli script è consentita. Digitare l'indirizzo o il dominio (es. "http://www.sito.com" oppure "sito.com")  e fare clic su Permetti.">
 <!ENTITY noscriptWebAddress "Indirizzo del sito:">
 <!ENTITY noscriptAllow "Permetti">
diff --git a/chrome/locale/ja-JP/noscript/noscript.dtd b/chrome/locale/ja-JP/noscript/noscript.dtd
index 360b8d5..97cfe81 100644
--- a/chrome/locale/ja-JP/noscript/noscript.dtd
+++ b/chrome/locale/ja-JP/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "オプション...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript オプション">
-<!ENTITY noscriptAbout "NoScript 5.1.2について...">
+<!ENTITY noscriptAbout "NoScript 5.1.3について...">
 <!ENTITY noscriptPermissionsText "JavaScriptを許可するサイトを指定する事ができます。許可したいサイトのアドレスかドメインを入力して、ボタンを押してください。(例: "http://www.site.com" または "site.com")">
 <!ENTITY noscriptWebAddress "ウェブサイトのアドレス:">
 <!ENTITY noscriptAllow "許可する">
diff --git a/chrome/locale/kk-KZ/noscript/noscript.dtd b/chrome/locale/kk-KZ/noscript/noscript.dtd
index b3e17af..6ed17d6 100644
--- a/chrome/locale/kk-KZ/noscript/noscript.dtd
+++ b/chrome/locale/kk-KZ/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Баптаулары">
 <!ENTITY noscriptOptions.accesskey "Б">
 <!ENTITY noscriptOptionsLong "NoScript баптаулары">
-<!ENTITY noscriptAbout "NoScript 5.1.2 туралы...">
+<!ENTITY noscriptAbout "NoScript 5.1.3 туралы...">
 <!ENTITY noscriptPermissionsText "Қай сайттарға JavaScript орындауға рұқсат екенін көрсете аласыз. Рұқсат етілетін сайттың домен адресін енгізіңіз (мысалы, "http://www.site.com" немесе "site.com"), содан кейін Рұқсат ету басыңыз.">
 <!ENTITY noscriptWebAddress "Веб-сайт адресі:">
 <!ENTITY noscriptAllow "Рұқсат ету">
diff --git a/chrome/locale/km-KH/noscript/noscript.dtd b/chrome/locale/km-KH/noscript/noscript.dtd
index c954ce2..dab78a3 100644
--- a/chrome/locale/km-KH/noscript/noscript.dtd
+++ b/chrome/locale/km-KH/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Options...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript Options">
-<!ENTITY noscriptAbout "About NoScript 5.1.2">
+<!ENTITY noscriptAbout "About NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "You can specify which web sites are allowed to execute scripts. Type the address or the domain (e.g. "http://www.site.com" or "site.com") of the site you want to allow and then click Allow.">
 <!ENTITY noscriptWebAddress "Address of web site:">
 <!ENTITY noscriptAllow "Allow">
diff --git a/chrome/locale/ko-KR/noscript/noscript.dtd b/chrome/locale/ko-KR/noscript/noscript.dtd
index 67d8c03..9456312 100644
--- a/chrome/locale/ko-KR/noscript/noscript.dtd
+++ b/chrome/locale/ko-KR/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "옵션...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript 옵션">
-<!ENTITY noscriptAbout "NoScript 5.1.2 정보...">
+<!ENTITY noscriptAbout "NoScript 5.1.3 정보...">
 <!ENTITY noscriptPermissionsText "스크립트 실행을 허용할 웹 사이트를 지정할 수 있습니다. 스크립트를 허용할 사이트의 주소나 도메인 (예를 들면, "http://www.site.com" 또는 "site.com")을 입력한 후 [허용] 버튼을 클릭합니다.">
 <!ENTITY noscriptWebAddress "웹 사이트 주소">
 <!ENTITY noscriptAllow "허용">
diff --git a/chrome/locale/lt/noscript/noscript.dtd b/chrome/locale/lt/noscript/noscript.dtd
index b182b50..db8ce80 100644
--- a/chrome/locale/lt/noscript/noscript.dtd
+++ b/chrome/locale/lt/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Nuostatos...">
 <!ENTITY noscriptOptions.accesskey "N">
 <!ENTITY noscriptOptionsLong "NoScript nuostatos">
-<!ENTITY noscriptAbout "Apie NoScript 5.1.2">
+<!ENTITY noscriptAbout "Apie NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Jūs galite nurodyti, kurioms interneto svetainėms suteikiamas leidimas vykdyti programinius kodus. Įveskite adresą arba domeną (pvz., "http://www.svetaine.lt" arba "svetaine.lt") svetainės, kuriai norite suteikti leidimą ir spauskite Leisti.">
 <!ENTITY noscriptWebAddress "Interneto svetainės adresas:">
 <!ENTITY noscriptAllow "Leisti">
diff --git a/chrome/locale/mk-MK/noscript/noscript.dtd b/chrome/locale/mk-MK/noscript/noscript.dtd
index 6ba7cfe..c9770f9 100644
--- a/chrome/locale/mk-MK/noscript/noscript.dtd
+++ b/chrome/locale/mk-MK/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Опции...">
 <!ENTITY noscriptOptions.accesskey "О">
 <!ENTITY noscriptOptionsLong "NoScript Опции">
-<!ENTITY noscriptAbout "За NoScript 5.1.2">
+<!ENTITY noscriptAbout "За NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Можете да ги назначите страните, на кои што скриптите ќе бидат дозволени. Напишете ја дозволената адреса (на пример http://www.site.com или site.com) и кликнете „Дозволи“">
 <!ENTITY noscriptWebAddress "Адреса на дозволената веб страна:">
 <!ENTITY noscriptAllow "Дозволи">
diff --git a/chrome/locale/ms-MY/noscript/noscript.dtd b/chrome/locale/ms-MY/noscript/noscript.dtd
index b5dc32e..7fbf830 100644
--- a/chrome/locale/ms-MY/noscript/noscript.dtd
+++ b/chrome/locale/ms-MY/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Tetapan...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Tetapan NoScript">
-<!ENTITY noscriptAbout "Tentang NoScript 5.1.2">
+<!ENTITY noscriptAbout "Tentang NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Anda boleh menentukan laman web yang anda benarkan skripnya diproses. Taipkan alamat atau domain(contoh:"http://www.tapak.com" atau "tapak.com") laman web yang diingini dan klik Benarkan">
 <!ENTITY noscriptWebAddress "Alamat laman web:">
 <!ENTITY noscriptAllow "Benarkan">
diff --git a/chrome/locale/nb-NO/noscript/noscript.dtd b/chrome/locale/nb-NO/noscript/noscript.dtd
index 902c7be..9f9831c 100644
--- a/chrome/locale/nb-NO/noscript/noscript.dtd
+++ b/chrome/locale/nb-NO/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Innstillinger">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript Innstillinger">
-<!ENTITY noscriptAbout "Om NoScript 5.1.2">
+<!ENTITY noscriptAbout "Om NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Du kan spesifisere hvilke websider som har tillatelse til å kjøre scritper. Skriv inn adresse, eller domene (F.eks: "http://www.side.no", eller &quotside.no") du ønsker å gi tillatelse til, og klikk Tillat.">
 <!ENTITY noscriptWebAddress "Webadresse:">
 <!ENTITY noscriptAllow "Tillat">
diff --git a/chrome/locale/nl/noscript/noscript.dtd b/chrome/locale/nl/noscript/noscript.dtd
index d696011..ba5ade5 100644
--- a/chrome/locale/nl/noscript/noscript.dtd
+++ b/chrome/locale/nl/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opties…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript-opties">
-<!ENTITY noscriptAbout "Over NoScript 5.1.2">
+<!ENTITY noscriptAbout "Over NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "U kunt opgeven welke websites scripts mogen gebruiken. Typ het adres of domein (bv. ‘http://www.website.com’ of ‘website.com’) van de website die u wilt toestaan, en klik daarna op Toestaan.">
 <!ENTITY noscriptWebAddress "Adres van website:">
 <!ENTITY noscriptAllow "Toestaan">
diff --git a/chrome/locale/pl/noscript/noscript.dtd b/chrome/locale/pl/noscript/noscript.dtd
index 3c35200..cd4f49c 100644
--- a/chrome/locale/pl/noscript/noscript.dtd
+++ b/chrome/locale/pl/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Ustawienia">
 <!ENTITY noscriptOptions.accesskey "U">
 <!ENTITY noscriptOptionsLong "NoScript – ustawienia">
-<!ENTITY noscriptAbout "NoScript 5.1.2 – informacje">
+<!ENTITY noscriptAbout "NoScript 5.1.3 – informacje">
 <!ENTITY noscriptPermissionsText "Tutaj można określić witryny internetowe, które będą mogły uruchamiać skrypty. Proszę wprowadzić adres lub domenę witryny (np: „http://www.witryna.pl” lub „witryna.pl”) i nacisnąć przycisk Pozwól.">
 <!ENTITY noscriptWebAddress "Adres witryny:">
 <!ENTITY noscriptAllow "Pozwól">
diff --git a/chrome/locale/pt-BR/noscript/noscript.dtd b/chrome/locale/pt-BR/noscript/noscript.dtd
index 3c84e01..e7364d5 100644
--- a/chrome/locale/pt-BR/noscript/noscript.dtd
+++ b/chrome/locale/pt-BR/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opções">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opções do NoScript">
-<!ENTITY noscriptAbout "Sobre o NoScript 5.1.2…">
+<!ENTITY noscriptAbout "Sobre o NoScript 5.1.3…">
 <!ENTITY noscriptPermissionsText "Você pode especificar os sites que podem executar JavaScripts. Escreva o endereço ou o domínio (ex "http://www.site.com" ou "site.com") do site que deseja permitir e depois clique em Permitir.">
 <!ENTITY noscriptWebAddress "Endereço:">
 <!ENTITY noscriptAllow "Permitir">
diff --git a/chrome/locale/pt-PT/noscript/noscript.dtd b/chrome/locale/pt-PT/noscript/noscript.dtd
index 38c8c44..4f78e94 100644
--- a/chrome/locale/pt-PT/noscript/noscript.dtd
+++ b/chrome/locale/pt-PT/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opções">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opções do NoScript">
-<!ENTITY noscriptAbout "Sobre o NoScript 5.1.2">
+<!ENTITY noscriptAbout "Sobre o NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Pode especificar os sítios que podem executar scripts. Escreva o endereço ou o domínio (ex: "http://www.sitio.com" ou "sitio.com") do sítio que deseja permitir e depois pressione em Permitir.">
 <!ENTITY noscriptWebAddress "Endereço:">
 <!ENTITY noscriptAllow "Permitir">
diff --git a/chrome/locale/ro/noscript/noscript.dtd b/chrome/locale/ro/noscript/noscript.dtd
index 982e66d..316a184 100644
--- a/chrome/locale/ro/noscript/noscript.dtd
+++ b/chrome/locale/ro/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opțiuni...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opțiuni NoScript">
-<!ENTITY noscriptAbout "Despre NoScript 5.1.2">
+<!ENTITY noscriptAbout "Despre NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Puteți specifica saiturile cărora li se permite să execute scripturi. Scrieți adresa sau domeniul paginii (exemplu: „http://www.sait.ro“ sau „sait.ro“), apoi apăsați pe butonul „Permite“.">
 <!ENTITY noscriptWebAddress "Adresă sait:">
 <!ENTITY noscriptAllow "Permite">
diff --git a/chrome/locale/sk-SK/noscript/noscript.dtd b/chrome/locale/sk-SK/noscript/noscript.dtd
index 0c17ac5..e31c2b7 100644
--- a/chrome/locale/sk-SK/noscript/noscript.dtd
+++ b/chrome/locale/sk-SK/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Možnosti...">
 <!ENTITY noscriptOptions.accesskey "M">
 <!ENTITY noscriptOptionsLong "NoScript – Možnosti">
-<!ENTITY noscriptAbout "O rozšírení NoScript 5.1.2">
+<!ENTITY noscriptAbout "O rozšírení NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Môžete určiť, ktoré webové stránky majú povolené spúšťať JavaScript. Zadajte adresu alebo doménu (napríklad "http://www.site.com" alebo "site.com") stránky, ktorú chcete povoliť, a potom kliknite na tlačidlo Povoliť.">
 <!ENTITY noscriptWebAddress "Adresa webovej stránky:">
 <!ENTITY noscriptAllow "Povoliť">
diff --git a/chrome/locale/sl-SI/noscript/noscript.dtd b/chrome/locale/sl-SI/noscript/noscript.dtd
index a67459d..b6cb07c 100644
--- a/chrome/locale/sl-SI/noscript/noscript.dtd
+++ b/chrome/locale/sl-SI/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Možnosti...">
 <!ENTITY noscriptOptions.accesskey "M">
 <!ENTITY noscriptOptionsLong "NoScript Možnosti">
-<!ENTITY noscriptAbout "O NoScript 5.1.2 programu...">
+<!ENTITY noscriptAbout "O NoScript 5.1.3 programu...">
 <!ENTITY noscriptPermissionsText "Določite lahko na katerih straneh bo izvajanje skript dovoljeno. Vnesite naslov ali domeno (pr. "http://www.domena.com" or "domena.com") strani, na kateri želite omogočiti izvajanje skript in kliknite Dovoli.">
 <!ENTITY noscriptWebAddress "Naslov strani:">
 <!ENTITY noscriptAllow "Dovoli">
diff --git a/chrome/locale/sr-RS/noscript/noscript.dtd b/chrome/locale/sr-RS/noscript/noscript.dtd
index ee61007..8e44479 100644
--- a/chrome/locale/sr-RS/noscript/noscript.dtd
+++ b/chrome/locale/sr-RS/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Подешавања...">
 <!ENTITY noscriptOptions.accesskey "П">
 <!ENTITY noscriptOptionsLong "NoScript подешавања">
-<!ENTITY noscriptAbout "О NoScript 5.1.2-у">
+<!ENTITY noscriptAbout "О NoScript 5.1.3-у">
 <!ENTITY noscriptPermissionsText "Можете да наведете којим веб странама је дозвољено да извршавају скриптове. Унесите адресу или домен (нпр. "http://www.site.com" или "site.com") стране којој желите да дате дозволу и онда кликните Дозволи.">
 <!ENTITY noscriptWebAddress "Адреса веб стране:">
 <!ENTITY noscriptAllow "Дозволи">
diff --git a/chrome/locale/sv-SE/noscript/noscript.dtd b/chrome/locale/sv-SE/noscript/noscript.dtd
index 55616b6..ba7f324 100644
--- a/chrome/locale/sv-SE/noscript/noscript.dtd
+++ b/chrome/locale/sv-SE/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Alternativ...">
 <!ENTITY noscriptOptions.accesskey "A">
 <!ENTITY noscriptOptionsLong "NoScript-alternativ">
-<!ENTITY noscriptAbout "Om NoScript 5.1.2">
+<!ENTITY noscriptAbout "Om NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Ange vilka webbplatser som får köra skript. Skriv webbadressen eller domänen (t ex. "http://www.webbplats.se" eller "webbplats.se") för den webbplats där skript ska tillåtas. Klicka sedan på "Tillåt".">
 <!ENTITY noscriptWebAddress "Sidans adress:">
 <!ENTITY noscriptAllow "Tillåt">
diff --git a/chrome/locale/te-IN/noscript/noscript.dtd b/chrome/locale/te-IN/noscript/noscript.dtd
index 7e0f42d..b6d3f96 100644
--- a/chrome/locale/te-IN/noscript/noscript.dtd
+++ b/chrome/locale/te-IN/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Options…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript Options">
-<!ENTITY noscriptAbout "About NoScript 5.1.2…">
+<!ENTITY noscriptAbout "About NoScript 5.1.3…">
 <!ENTITY noscriptPermissionsText "You can specify which web sites are allowed to execute scripts. Type the address or the domain (e.g. "http://www.site.com" or "site.com") of the site you want to allow and then click Allow.">
 <!ENTITY noscriptWebAddress "Address of web site:">
 <!ENTITY noscriptAllow "Allow">
diff --git a/chrome/locale/th/noscript/noscript.dtd b/chrome/locale/th/noscript/noscript.dtd
index ac52e3f..a21457a 100644
--- a/chrome/locale/th/noscript/noscript.dtd
+++ b/chrome/locale/th/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "ตัวเลือก...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "ตัวเลือก NoScript">
-<!ENTITY noscriptAbout "เกี่ยวกับ NoScript 5.1.2">
+<!ENTITY noscriptAbout "เกี่ยวกับ NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "คุณสามารถกำหนดเว็บไซต์ที่จะอนุญาตดำเนินการสคริปต์ พิมพ์ที่อยู่หรือโดเมน (เช่น "http://www.site.com" หรือ "site.com") ของไซต์ที่คุณต้องการอนุญาตและคลิกอนุญาต">
 <!ENTITY noscriptWebAddress "ที่อยู่เว็บไซต์:">
 <!ENTITY noscriptAllow "อนุญาต">
diff --git a/chrome/locale/tr/noscript/noscript.dtd b/chrome/locale/tr/noscript/noscript.dtd
index 12df6c1..47a4a2e 100644
--- a/chrome/locale/tr/noscript/noscript.dtd
+++ b/chrome/locale/tr/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Seçenekler">
 <!ENTITY noscriptOptions.accesskey "S">
 <!ENTITY noscriptOptionsLong "NoScript Seçenekleri">
-<!ENTITY noscriptAbout "NoScript 5.1.2 @VERSION@ Hakkında">
+<!ENTITY noscriptAbout "NoScript 5.1.3 @VERSION@ Hakkında">
 <!ENTITY noscriptPermissionsText "Hangi web sayfalarında JavaScript'e izni vereceğinizi kolayca seçebilirsiniz. Lütfen adresi tam olarak girin (örn. "http://www.site.com" veya "site.com") ve 'İzin ver' düğmesine tıklayarak sayfanın JavaScript kullanmasına izin verin.">
 <!ENTITY noscriptWebAddress "Site adresi:">
 <!ENTITY noscriptAllow "İzin ver">
diff --git a/chrome/locale/vi/noscript/noscript.dtd b/chrome/locale/vi/noscript/noscript.dtd
index aec0392..469e178 100644
--- a/chrome/locale/vi/noscript/noscript.dtd
+++ b/chrome/locale/vi/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Tùy chọn">
 <!ENTITY noscriptOptions.accesskey "y">
 <!ENTITY noscriptOptionsLong "Tùy chọn cho NoScript">
-<!ENTITY noscriptAbout "Thông tin về NoScript 5.1.2">
+<!ENTITY noscriptAbout "Thông tin về NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "Bạn có thể chỉ định trang web nào được phép chạy script. Gõ địa chỉ hay tên miền (v.d. "http://www.nhaccodien.com" hay "nhaccodien.com") của trang mà bạn muốn cho phép, rồi nhấn Cho phép.">
 <!ENTITY noscriptWebAddress "Địa chỉ của trang web:">
 <!ENTITY noscriptAllow "Cho phép">
diff --git a/chrome/locale/zh-CN/noscript/noscript.dtd b/chrome/locale/zh-CN/noscript/noscript.dtd
index cc6fc89..04fa9a9 100644
--- a/chrome/locale/zh-CN/noscript/noscript.dtd
+++ b/chrome/locale/zh-CN/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "选项...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript 选项">
-<!ENTITY noscriptAbout "关于 NoScript 5.1.2">
+<!ENTITY noscriptAbout "关于 NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "您可以指定允许执行脚本的网站。请输入您想要允许的网站地址或域名(例如: “http://www.site.com”或者“site.com”)然后单击“允许”。">
 <!ENTITY noscriptWebAddress "网站地址:">
 <!ENTITY noscriptAllow "允许">
diff --git a/chrome/locale/zh-TW/noscript/noscript.dtd b/chrome/locale/zh-TW/noscript/noscript.dtd
index c67f89b..b784d28 100644
--- a/chrome/locale/zh-TW/noscript/noscript.dtd
+++ b/chrome/locale/zh-TW/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "選項…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript 選項">
-<!ENTITY noscriptAbout "關於 NoScript 5.1.2">
+<!ENTITY noscriptAbout "關於 NoScript 5.1.3">
 <!ENTITY noscriptPermissionsText "您可以指定允許執行 JavaScript 的網站。輸入您要允許的網址或網域(例如 "http://www.site.com" 或 "site.com"),然後按下允許.">
 <!ENTITY noscriptWebAddress "網址:">
 <!ENTITY noscriptAllow "允許">
diff --git a/defaults/preferences/noscript.js b/defaults/preferences/noscript.js
index 43cd1f0..69ca5cc 100644
--- a/defaults/preferences/noscript.js
+++ b/defaults/preferences/noscript.js
@@ -29,8 +29,8 @@ pref("noscript.showBlockedObjects", true);
 pref("noscript.showExternalFilters", true);
 pref("noscript.showTempAllowPage", true);
 pref("noscript.showAllowPage", true);
-pref("noscript.mandatory", "[System+Principal] chrome: blob: mediasource: moz-extension: moz-safe-about: about: about:addons about:blocked about:crashes about:feeds about:home about:config about:neterror about:certerror about:memory about:plugins about:preferences about:privatebrowsing about:sessionrestore about:support resource: about:srcdoc");
-pref("noscript.default", "about:blank about:pocket-signup about:pocket-saved about:tabcrashed addons.mozilla.org mozilla.net google.com gstatic.com ajax.googleapis.com  maps.googleapis.com paypal.com paypalobjects.com securecode.com securesuite.net firstdata.com firstdata.lv yahoo.com yimg.com yahooapis.com youtube.com ytimg.com googlevideo.com netflix.com nflxext.com nflximg.com nflxvideo.net noscript.net hotmail.com passport.com passport.net passportimages.com live.com live.net outlook [...]
+pref("noscript.mandatory", "[System+Principal] about: about:addons about:blocked about:certerror about:config about:crashes about:feeds about:home about:memory about:neterror about:plugins about:preferences about:privatebrowsing about:sessionrestore about:srcdoc about:support about:tabcrashed blob: chrome: mediasource: moz-extension: moz-safe-about: resource:");
+pref("noscript.default", "about:blank about:pocket-saved about:pocket-signup addons.mozilla.org afx.ms ajax.aspnetcdn.com ajax.googleapis.com bootstrapcdn.com code.jquery.com firstdata.com firstdata.lv gfx.ms google.com googlevideo.com gstatic.com hotmail.com live.com live.net maps.googleapis.com mozilla.net netflix.com nflxext.com nflximg.com nflxvideo.net noscript.net outlook.com passport.com passport.net passportimages.com paypal.com paypalobjects.com securecode.com securesuite.net sf [...]
 pref("noscript.allowWhitelistUpdates", true);
 pref("noscript.volatilePrivatePermissions", false);
 pref("noscript.showVolatilePrivatePermissionsToggle", true);
diff --git a/install.rdf b/install.rdf
index f1d54d1..6ac85b0 100644
--- a/install.rdf
+++ b/install.rdf
@@ -5,7 +5,7 @@
 
    <em:id>{73a6fe31-595d-460b-a920-fcc0f8843232}</em:id>
    <em:name>NoScript</em:name>
-   <em:version>5.1.2</em:version>
+   <em:version>5.1.3</em:version>
    <em:description>Extra protection for your Firefox: NoScript allows JavaScript, Java (and other plugins) only for trusted domains of your choice (e.g. your home-banking web site). This whitelist based pre-emptive blocking approach  prevents exploitation of security vulnerabilities (known and even unknown!) with no loss of functionality... Experts will agree: Firefox is really safer with NoScript :-)</em:description>
    <em:creator>Giorgio Maone</em:creator>
    <em:type>2</em:type>

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-mozext/noscript.git



More information about the Pkg-mozext-commits mailing list